@charset "UTF-8";
/* ---------------------------------------------
    SETTINGS
    ------------------------------------------- */
/* ---------------------------------------------
    UTILITIES
    ------------------------------------------- */
/* ---------------------------------------------
 MIXINS
 Commonly used mixins
 --------------------------------------------- */
/* debugging */
@font-face {
  font-family: 'ucebniceVanicek';
  src: url("../../fonts/ucebniceVanicek.eot?cy4ts1");
  src: url("../../fonts/ucebniceVanicek.eot?cy4ts1#iefix") format("embedded-opentype"), url("../../fonts/ucebniceVanicek.ttf?cy4ts1") format("truetype"), url("../../fonts/ucebniceVanicek.woff?cy4ts1") format("woff"), url("../../fonts/ucebniceVanicek.svg?cy4ts1#ucebniceVanicek") format("svg");
  font-weight: normal;
  font-style: normal;
}

.icon, .alert .close, .search-close, .item__list li.item--show-all a:after, .basket__back-link:before, .basket__next-button:after, .button--submit:after, .nav.breadcrumbs li:after, .bullet-list li:before, #filterForm .chosen-container-single .chosen-single div b, .order-process__item .icon:after, .selectboxit-default-arrow:after {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'ucebniceVanicek' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-envelope:before {
  content: "";
}

.icon-phone:before {
  content: "";
}

.icon-printer:before {
  content: "";
}

.icon-bag:before {
  content: "";
}

.icon-pickup:before {
  content: "";
}

.icon-plus:before {
  content: "";
}

.icon-minus:before {
  content: "";
}

.icon-close:before, .alert .close:before, .search-close:before {
  content: "";
}

.icon-search:before {
  content: "";
}

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

.icon-arrow-up:before {
  content: "";
}

.icon-arrow-right:before {
  content: "";
}

.icon-arrow-down:before {
  content: "";
}

.icon-menu:before {
  content: "";
}

.icon-person:before {
  content: "";
}

.icon-paper-bag:before {
  content: "";
}

.icon-box:before {
  content: "";
}

.icon-invoice:before {
  content: "";
}

.icon-document:before {
  content: "";
}

.icon-arrow-left-2:before {
  content: "";
}

.icon-arrow-up-2:before {
  content: "";
}

.icon-arrow-right-2:before {
  content: "";
}

.icon-arrow-down-2:before {
  content: "";
}

.icon-eye:before {
  content: "";
}

/* ---------------------------------------------
    BASE, GLOBALS
    ------------------------------------------- */
/*! normalize.css v3.0.0 | MIT License | git.io/normalize */
html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
  overflow-x: hidden;
}

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

audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline;
}

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

[hidden],
template {
  display: none;
}

a {
  background: transparent;
}

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

abbr[title] {
  border-bottom: 1px dotted;
}

b,
strong {
  font-weight: bold;
}

dfn {
  font-style: italic;
}

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

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

small {
  font-size: 80%;
}

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

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

img {
  border: 0;
}

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

figure {
  margin: 1em 40px;
}

hr {
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  height: 0;
}

pre {
  overflow: auto;
}

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

button,
input,
optgroup,
select,
textarea {
  color: inherit;
  font: inherit;
  margin: 0;
}

button {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

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

button[disabled],
html input[disabled] {
  cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

input {
  line-height: normal;
}

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

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

input[type="search"] {
  -webkit-appearance: textfield;
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
}

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

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

legend {
  border: 0;
  padding: 0;
}

textarea {
  overflow: auto;
}

optgroup {
  font-weight: bold;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

figure {
  margin: 0;
}

figcaption {
  margin: 1.6875rem 0;
}

*, *:after, *:before {
  -webkit-box-sizing: border-box;
  /* Safari/Chrome, other WebKit */
  -moz-box-sizing: border-box;
  /* Firefox, other Gecko */
  box-sizing: border-box;
}

html {
  font-size: 16px;
  line-height: 1.5;
  font-family: "museo-sans", Helvetica, Arial, sans-serif;
}

h1, h2, h3, h4, h5, h6,
ul, ol, dl,
fieldset,
p,
table,
pre,
.baseline,
svg text {
  margin-bottom: 24px;
  margin-top: 0;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -moz-font-feature-settings: "liga" on;
}

h1, h2, h3, h4, h5, h6 {
  font-family: "museo-sans", Helvetica, Arial, sans-serif;
}

h1,
.heading--alpha {
  font-size: 30px;
  line-height: 1.2;
}

@media (min-width: 49em) {
  h1,
  .heading--alpha {
    font-size: 48px;
    line-height: 1.125;
    margin-bottom: 0;
  }
}

h2,
.heading--beta {
  font-size: 24px;
  line-height: 1.5;
  margin-top: 24px;
}

@media (min-width: 49em) {
  h2,
  .heading--beta {
    font-size: 30px;
    line-height: 1.2;
  }
}

h3,
.heading--gamma {
  font-size: 24px;
  line-height: 1.5;
}

h4,
.heading--delta {
  font-size: 21px;
  line-height: 1.71429;
}

/*------------------------------*Grid System
\*------------------------------*/
.wrapper {
  max-width: 1220px;
  margin: 0 auto;
  position: relative;
  padding: 0 15px;
}

.wrapper:after {
  content: '';
  display: table;
  clear: both;
}

@media (min-width: 49em) {
  .wrapper {
    padding: 0 24px;
  }
}

@media (min-width: 65em) {
  .wrapper {
    padding: 0 24px;
  }
}

.order--bgr {
  background: -moz-linear-gradient(top, #f3f3f3 0%, rgba(255, 255, 255, 0) 100%);
  background: -webkit-linear-gradient(top, #f3f3f3 0%, rgba(255, 255, 255, 0) 100%);
  background: linear-gradient(to bottom, #f3f3f3 0%, rgba(255, 255, 255, 0) 100%);
  width: 100%;
  height: 10px;
}

@media (min-width: 49em) {
  .wrapper-narrow {
    margin: 0 auto;
    width: 61.57635%;
  }
}

.row:after {
  content: '';
  display: table;
  clear: both;
}

.row:last-child {
  margin-bottom: 0;
}

[class^="column-"],
[class*=" column-"] {
  position: relative;
  display: block;
  width: auto;
  margin-bottom: 10px;
}

[class^="column-"]:last-child,
[class*=" column-"]:last-child {
  margin-bottom: 0;
}

[class^="form-column-"],
[class*=" form-column-"] {
  position: relative;
  display: block;
  margin-bottom: 0;
  float: left;
}

[class^="form-column-"]:last-child,
[class*=" form-column-"]:last-child {
  margin-bottom: 0;
}

[class^="form-column-"] input,
[class*=" form-column-"] input {
  border-radius: 0;
}

@media (min-width: 49em) {
  .row {
    margin-bottom: 10px;
  }
  .row:last-child {
    margin-bottom: 0;
  }
  [class^="column-"],
  [class*=" column-"] {
    float: left;
    margin-bottom: 0;
  }
  [class^="column-"] + [class^="column-"],
  [class^="column-"] + [class*=" column-"],
  [class*=" column-"] + [class*=" column-"] {
    margin-left: 2.463054187%;
  }
  .column-1-of-12 {
    width: 5.8011%;
  }
  .column-2-of-12 {
    width: 14.36464%;
  }
  .column-3-of-12 {
    width: 22.92818%;
  }
  .column-4-of-12 {
    width: 31.49171%;
  }
  .column-5-of-12 {
    width: 40.05525%;
  }
  .column-6-of-12 {
    width: 48.61878%;
  }
  .column-7-of-12 {
    width: 57.18232%;
  }
  .column-8-of-12 {
    width: 65.74586%;
  }
  .column-9-of-12 {
    width: 74.30939%;
  }
  .column-10-of-12 {
    width: 82.87293%;
  }
  .column-11-of-12 {
    width: 91.43646%;
  }
  .column-12-of-12 {
    width: 100.0%;
  }
}

@media (min-width: 65em) {
  .column-1-of-16 {
    width: 3.94089%;
  }
  .column-2-of-16 {
    width: 10.34483%;
  }
  .column-3-of-16 {
    width: 16.74877%;
  }
  .column-4-of-16, .contact-info__side-column {
    width: 23.15271%;
  }
  .column-5-of-16 {
    width: 29.55665%;
  }
  .column-6-of-16 {
    width: 35.96059%;
  }
  .column-7-of-16 {
    width: 42.36453%;
  }
  .column-8-of-16 {
    width: 48.76847%;
  }
  .column-9-of-16 {
    width: 55.17241%;
  }
  .column-10-of-16 {
    width: 61.57635%;
  }
  .column-11-of-16 {
    width: 67.9803%;
  }
  .column-12-of-16 {
    width: 74.38424%;
  }
  .column-13-of-16 {
    width: 80.78818%;
  }
  .column-14-of-16 {
    width: 87.19212%;
  }
  .column-15-of-16 {
    width: 93.59606%;
  }
  .column-16-of-16 {
    width: 100.0%;
  }
}

.form-column-1-of-12 {
  width: 8.33333%;
}

.form-column-2-of-12 {
  width: 16.66667%;
}

.form-column-3-of-12 {
  width: 25.0%;
}

.form-column-4-of-12 {
  width: 33.33333%;
}

.form-column-5-of-12 {
  width: 41.66667%;
}

.form-column-6-of-12 {
  width: 50.0%;
}

.form-column-7-of-12 {
  width: 58.33333%;
}

.form-column-8-of-12 {
  width: 66.66667%;
}

.form-column-9-of-12 {
  width: 75.0%;
}

.form-column-10-of-12 {
  width: 83.33333%;
}

.form-column-11-of-12 {
  width: 91.66667%;
}

.form-column-12-of-12 {
  width: 100.0%;
}

@media (min-width: 65em) {
  .offset-1-of-16 {
    margin-left: 6.403944187%;
  }
}

body {
  background: #fff;
  overflow-x: hidden;
}

a {
  color: #0075ae;
  text-decoration: underline;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -moz-font-feature-settings: "liga" on;
}

a:hover {
  color: #00537b;
}

a:focus {
  color: #003048;
}

ul {
  list-style-type: disc;
  margin-top: 0;
}

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

input,
textarea {
  font-size: 15px;
  line-height: 2.4;
  padding: 0 12px;
  border: 1px solid #e5e5e5;
  border-radius: 3px;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  margin: 0;
}

blockquote {
  margin: 0;
}

::selection {
  background: #0075ae;
  color: #fff;
}

@media print {
  * {
    background: none !important;
    color: black !important;
    box-shadow: none !important;
    text-shadow: none !important;
    /* Images, vectors and such */
    filter: gray();
    filter: grayscale(100%);
  }
  a {
    text-decoration: underline;
  }
  a[href]:after {
    content: " (" attr(href) ")";
  }
  a[href="#"],
  a[href="javascript:"] {
    content: '';
  }
}

/* ---------------------------------------------
    MODULES
    ------------------------------------------- */
.about-us__heading {
  margin-bottom: 30px;
}

.account {
  float: right;
  padding: 7.5px 0;
  font-size: 15px;
  line-height: 2.4;
}

.account input {
  display: none;
  margin-right: 10px;
  height: 38px;
}

@media (min-width: 65em) {
  .account input {
    display: inline-block;
    max-width: 180px;
  }
}

@media (max-width: 65em) {
  .account .button--invisible {
    margin: 0;
  }
  .account .button--primary, .account .button--primary:hover {
    text-decoration: underline;
    padding: 2px 6px;
    margin-left: -6px;
    font-weight: bold;
    color: #0075ae;
    background: none;
    border: none;
  }
  .account .button--primary:hover, .account .button--primary:hover:hover {
    color: #00537b;
  }
}

.account__form form {
  display: none;
}

@media (min-width: 75.5em) {
  .account__form form {
    display: inline-block;
  }
}

.account__form + .button {
  line-height: 40;
  height: 40px;
}

.account__login-link {
  display: inline-block;
  font-weight: bold;
}

@media (min-width: 75.5em) {
  .account__login-link {
    display: none;
  }
}

.account__login-link + .button {
  margin-left: 10px;
}

@media (min-width: 75.5em) {
  .account__login-link + .button {
    margin-left: 0;
  }
}

.ajax-loader__wrapper {
  text-align: center;
  display: none;
  margin: 24px 0;
}

.ajax-loader__wrapper img {
  width: 32px;
  height: 32px;
}

.alert {
  position: fixed;
  z-index: 99999999;
  background: #fff;
  box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.3);
  margin: 0 auto;
  text-align: center;
  width: 90%;
  max-width: none;
  top: 24px;
  left: 0;
  right: 0;
}

@media (min-width: 49em) {
  .alert {
    right: 24px;
    left: 24px;
    max-width: 1220px;
    top: auto;
  }
}

.alert .close {
  -webkit-appearance: none;
  appearance: none;
  float: right;
  border: 0;
  background: #fff;
  position: relative;
  z-index: 1;
  top: 8px;
  right: 8px;
  color: #0075ae;
  transition: color 0.3s;
}

.alert .close:hover, .alert .close:focus {
  color: #0e6088;
}

.alert .close:before {
  font-size: 23px;
}

.alert .section--horizontal {
  padding-left: 15px;
  padding-right: 15px;
}

.alert__back-link.alert__back-link {
  margin-right: 0;
  margin-top: 0;
  margin-bottom: 24px;
}

@media (min-width: 49em) {
  .alert__back-link.alert__back-link {
    margin-right: 24px;
  }
}

.alert__add-covers {
  border-top: 1px solid #ebebeb;
}

.alert__add-covers .product-item__form {
  margin: 0 30px;
  float: none;
  display: inline-block;
}

.alert__add-covers .product-item__form label[for="amount"] {
  margin-right: 12px;
}

.alert__add-covers .product-item__form .submitButton {
  border: 2px solid #0075ae;
  color: #0075ae;
  background: transparent;
}

.alert__add-covers .product-item__form .submitButton:hover, .alert__add-covers .product-item__form .submitButton:focus {
  background: #0075ae;
  color: white;
}

.alert__add-covers .product-item__form .submitButton i {
  display: none;
}

.alert__add-covers .basket__unit-price {
  display: inline-block;
}

.alert__add-covers .basket__unit-price:before {
  display: inline-block;
}

.alert__add-more {
  margin-top: 24px;
}

.alert__close {
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  opacity: 0.8;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
  filter: alpha(opacity=80);
  background-color: #323741;
  z-index: 99999998;
}

.autocomplete__wrapper--inner {
  display: none;
  position: absolute;
  top: 100%;
  width: 100%;
  background: #fff;
  border: 1px solid #e5e5e5;
  z-index: 100;
  text-align: left;
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
}

.autocomplete__wrapper--inner:after {
  content: '';
  display: table;
  clear: both;
}

.autocomplete__wrapper--outer {
  float: left;
  width: 100%;
  position: relative;
}

@media (min-width: 49em) {
  .autocomplete__wrapper--outer {
    width: 100%;
    padding: 0;
    position: relative;
    max-width: 500px;
  }
}

.site-top-nav__wrapper--autocomplete {
  display: none;
  position: absolute;
  z-index: 99;
  width: 100%;
  float: left;
}

@media (min-width: 49em) {
  .site-top-nav__wrapper--autocomplete {
    display: none !important;
  }
}

.site-search__wrapper {
  position: relative;
  width: 100%;
  float: left;
  padding: 24px 70px 24px 24px;
  background: #fff;
}

@media (min-width: 49em) {
  .site-search__wrapper {
    padding: 0;
    width: 100%;
    float: left;
    border: 0;
  }
}

.site-search__wrapper .site-search {
  box-sizing: border-box;
  width: 100%;
  height: 50px;
  padding-right: 50px;
}

.site-search__form {
  position: relative;
}

.site-search__submit {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 46px;
  height: 50px;
  z-index: 0;
}

.site-search__submit:before {
  content: "";
  font-family: 'ucebniceVanicek' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  font-size: 1.5em;
  font-size: 24px /9 !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  position: absolute;
  z-index: 2000;
  right: 15px;
  top: 0.5em;
  color: #0075ae;
  z-index: -1;
}

.site-search__submit-input {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  width: 100%;
  opacity: 0;
}

.search-close {
  display: none;
  content: "";
  font-family: 'ucebniceVanicek' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  font-size: 30px;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  position: absolute;
  z-index: 2000;
  right: 15px;
  top: 33px;
  color: #999;
}

@media screen and (max-width: 49em) {
  .search-close {
    display: block;
    text-decoration: none;
  }
}

.autocomplete__wrapper {
  position: absolute;
  left: 0;
  width: 100%;
  border-top: 1px solid #ebebeb;
  display: none;
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
  z-index: 99;
}

@media (min-width: 49em) {
  .autocomplete__wrapper {
    vertical-align: middle;
    display: table-cell !important;
    position: relative;
    border: 0;
  }
}

.autocomplete__wrapper ul:last-of-type li:last-of-type {
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
}

.autocomplete__wrapper.autocomplete--show {
  display: none;
}

.item--show-all {
  font-weight: bold;
}

.item__list {
  list-style-type: none;
  padding: 0;
  margin: 0;
  width: 100%;
  display: table;
}

.item__list li {
  display: block;
  float: left;
  width: 100%;
  padding-left: 15px;
  padding-right: 15px;
}

.item__list li:after {
  content: '';
  display: table;
  clear: both;
}

.item__list li.item--header {
  font-size: 21px;
  line-height: 1.71429;
  font-weight: bold;
  padding: 12px 15px;
  padding-bottom: 0;
  text-align: left;
}

.item__list li.item--product {
  display: table;
  padding-bottom: 12px;
  padding-top: 12px;
  border-bottom: 1px solid #e5e5e5;
  vertical-align: top;
}

.item__list li.item--product:after {
  content: '';
  display: table;
  clear: both;
}

.item__list li.item--product:last-of-type {
  border-bottom: 0;
}

.item__list li.item--product .meta {
  display: table-cell;
}

.item__list li.item--product .flag {
  display: table-row;
}

.item__list li.item--product .flag__body, .item__list li.item--product .flag__image {
  display: table-cell;
}

.item__list li.item--product .flag__body a, .item__list li.item--product .flag__image a {
  font-size: 21px;
  line-height: 1.71429;
  line-height: 1em;
}

.item__list li.item--product .flag__body span, .item__list li.item--product .flag__image span {
  font-weight: bold;
}

.item__list li.item--product .flag__image {
  max-width: none;
}

.item__list li.item--product .flag__body {
  padding-left: 12px;
}

.item__list li.item--product .flag__body > div {
  display: block;
  width: 100%;
  float: left;
}

.item__list li.item--product .price__wrapper {
  line-height: 1em;
  display: table-cell;
  margin: 0;
  text-align: right;
  vertical-align: top;
  min-width: 120px;
  max-width: 100%;
}

.item__list li.item--product .price__wrapper .price {
  width: 100%;
  float: right;
  clear: right;
  line-height: 1.25em;
}

.item__list li.item--product .price__wrapper .price--original {
  font-size: 16px;
  line-height: 1.5;
}

.item__list li.item--show-all {
  border-top: 2px solid #e5e5e5;
  background: #f6f6f6;
  padding-top: 12px;
  padding-bottom: 12px;
  margin-top: 12px;
  position: relative;
}

.item__list li.item--show-all a:after {
  position: absolute;
  margin: 0 4px 0 0;
  top: 17px;
  content: "";
  text-decoration: none;
  padding-left: 4px;
}

.back-to-top {
  position: absolute;
  cursor: pointer;
  right: 0;
  top: 0;
  margin-right: 24px;
}

.back-to-top .icon, .back-to-top .alert .close, .alert .back-to-top .close, .back-to-top .search-close, .back-to-top .item__list li.item--show-all a:after, .item__list li.item--show-all .back-to-top a:after, .back-to-top .basket__back-link:before, .back-to-top .basket__next-button:after, .back-to-top .button--submit:after, .back-to-top .nav.breadcrumbs li:after, .nav.breadcrumbs .back-to-top li:after, .back-to-top .bullet-list li:before, .bullet-list .back-to-top li:before, .back-to-top #filterForm .chosen-container-single .chosen-single div b, #filterForm .chosen-container-single .chosen-single div .back-to-top b, .back-to-top .order-process__item .icon:after, .order-process__item .back-to-top .icon:after, .back-to-top .selectboxit-default-arrow:after {
  margin-left: 8px;
  position: relative;
  top: 5px;
  font-size: 150%;
}

.back-to-top--fixed {
  display: none;
}

.back-to-top--fixed a {
  position: fixed;
  display: table;
  width: 60px;
  height: 60px;
  margin-left: -60px;
  bottom: 24px;
  font-size: 24px;
  line-height: 1.5;
  border: 1px solid #bbb;
  background: #fff;
  text-decoration: none;
  color: #999;
  z-index: 999;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  border-radius: 3px;
  transition: background 0.3s, border 0.3s, color 0.3s, opacity 0.3s;
}

.back-to-top--fixed a:hover, .back-to-top--fixed a:focus, .back-to-top--fixed a:active {
  border: 1px solid #999;
  color: #0075ae;
}

.back-to-top--fixed .icon, .back-to-top--fixed .alert .close, .alert .back-to-top--fixed .close, .back-to-top--fixed .search-close, .back-to-top--fixed .item__list li.item--show-all a:after, .item__list li.item--show-all .back-to-top--fixed a:after, .back-to-top--fixed .basket__back-link:before, .back-to-top--fixed .basket__next-button:after, .back-to-top--fixed .button--submit:after, .back-to-top--fixed .nav.breadcrumbs li:after, .nav.breadcrumbs .back-to-top--fixed li:after, .back-to-top--fixed .bullet-list li:before, .bullet-list .back-to-top--fixed li:before, .back-to-top--fixed #filterForm .chosen-container-single .chosen-single div b, #filterForm .chosen-container-single .chosen-single div .back-to-top--fixed b, .back-to-top--fixed .order-process__item .icon:after, .order-process__item .back-to-top--fixed .icon:after, .back-to-top--fixed .selectboxit-default-arrow:after {
  top: 1px;
  display: table-cell;
  vertical-align: middle;
  text-align: center;
  margin: 0;
}

.banner {
  position: relative;
  padding: 40px 24px 0;
  margin-left: calc(-50vw + 50%);
  margin-right: calc(-50vw + 50%);
}

.banner:after {
  content: '';
  display: table;
  clear: both;
}

.banner:before {
  content: '';
  background-image: url("../../img/intro--home2.jpg");
  position: absolute;
  width: 100%;
  top: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
  overflow: hidden;
  background-position: 0% 0%;
  background-size: cover;
  border-bottom: 2px solid #e5e5e5;
}

.banner--onas {
  min-height: 200px;
  margin-left: 0;
  margin-right: 0;
}

@media (min-width: 49em) {
  .banner--onas {
    min-height: 316px;
  }
}

.banner--onas:before {
  border-bottom: 0;
  background-image: url("../../img/onas-1-mobile.png");
  background-position: center center;
  background-size: cover;
  right: 0;
  left: 0;
  width: 100%;
}

@media (min-width: 49em) {
  .banner--onas:before {
    right: 0;
    background-image: url("../../img/onas-1.png");
    background-position: 42% center;
  }
}

@media (min-width: 65em) {
  .banner--onas:before {
    width: 100%;
    margin-left: 0;
    left: 0;
  }
}

.banner--photo h2 {
  font-size: 30px;
  line-height: 1.2;
}

@media (min-width: 49em) {
  .banner--photo h2 {
    font-size: 48px;
    line-height: 1.125;
  }
}

@media (min-width: 49em) {
  .banner--photo {
    padding: 24px 24px 0;
  }
}

.banner--large {
  padding: 120px 12px;
  text-align: center;
}

.banner--large h1 {
  font-size: 48px;
  line-height: 1.125;
  margin-bottom: 0;
}

.banner--basket {
  padding-top: 15px;
  padding-bottom: 15px;
  padding-left: 0;
  padding-right: 0;
}

@media (min-width: 49em) {
  .banner--basket {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}

.banner--basket:before {
  background-image: url("../../img/breadcrumbs-shop-bg.jpg");
}

.banner--basket > .section--horizontal {
  margin-top: 20px;
}

@media (min-width: 65em) {
  .banner--extend {
    margin-left: calc(-50vw + 33%);
    margin-right: calc(-50vw + 67%);
  }
}

.banner__inner {
  max-width: 1220px;
  margin: 0 auto;
}

@media (min-width: 65em) {
  .banner__inner--column {
    max-width: 1220px;
    padding: 0 24px;
  }
  .banner__inner--column .banner__inner-hack {
    width: 74.125%;
    margin-left: auto;
    margin-right: 0;
  }
}

.basket-button {
  float: right;
}

.basket-button.not-empty {
  color: #cf1708;
  border-color: #cf1708;
}

.basket-button.not-empty:hover, .basket-button.not-empty:focus, .basket-button.not-empty:active {
  color: #9e1206;
}

.basket-button .icon, .basket-button .alert .close, .alert .basket-button .close, .basket-button .search-close, .basket-button .item__list li.item--show-all a:after, .item__list li.item--show-all .basket-button a:after, .basket-button .basket__back-link:before, .basket-button .basket__next-button:after, .basket-button .button--submit:after, .basket-button .nav.breadcrumbs li:after, .nav.breadcrumbs .basket-button li:after, .basket-button .bullet-list li:before, .bullet-list .basket-button li:before, .basket-button #filterForm .chosen-container-single .chosen-single div b, #filterForm .chosen-container-single .chosen-single div .basket-button b, .basket-button .order-process__item .icon:after, .order-process__item .basket-button .icon:after, .basket-button .selectboxit-default-arrow:after {
  margin-right: 8px;
  font-size: 130%;
  position: relative;
  top: 3px;
}

.basket-header {
  float: right;
  display: none;
}

@media (min-width: 49em) {
  .basket-header {
    display: block;
  }
}

.basket-header__inner {
  display: inline-block;
}

.basket-header__heading {
  font-size: 24px;
  line-height: 1.5;
  margin-bottom: 0;
}

.basket-header__note {
  font-size: 15px;
  line-height: 2.4;
  color: #555;
  margin: 0;
  line-height: 1.2;
}

.basket-header__phone {
  font-size: 24px;
  line-height: 1.5;
  display: inline-block;
  line-height: 54px;
  vertical-align: top;
  margin-bottom: 0;
  margin-left: 24px;
  font-weight: bold;
  color: #0075ae;
}

.basket-header__phone .icon, .basket-header__phone .alert .close, .alert .basket-header__phone .close, .basket-header__phone .search-close, .basket-header__phone .item__list li.item--show-all a:after, .item__list li.item--show-all .basket-header__phone a:after, .basket-header__phone .basket__back-link:before, .basket-header__phone .basket__next-button:after, .basket-header__phone .button--submit:after, .basket-header__phone .nav.breadcrumbs li:after, .nav.breadcrumbs .basket-header__phone li:after, .basket-header__phone .bullet-list li:before, .bullet-list .basket-header__phone li:before, .basket-header__phone #filterForm .chosen-container-single .chosen-single div b, #filterForm .chosen-container-single .chosen-single div .basket-header__phone b, .basket-header__phone .order-process__item .icon:after, .order-process__item .basket-header__phone .icon:after, .basket-header__phone .selectboxit-default-arrow:after {
  font-weight: normal;
  margin-right: 12px;
}

.basket__wrapper {
  width: 100%;
}

.basket-item {
  border-bottom: 1px solid #ebebeb;
  width: 100%;
  display: block;
  position: relative;
}

@media (min-width: 51.25em) {
  .basket-item {
    display: table-row;
  }
}

.basket-item:first-child {
  border-top: 1px solid #ebebeb;
}

.basket-item__meta {
  vertical-align: top;
  position: relative;
  padding: 15px 0;
  width: 100%;
  display: block;
}

@media (min-width: 51.25em) {
  .basket-item__meta {
    max-width: 500px;
    width: auto;
    display: table-cell;
  }
}

.basket-item__meta .flag {
  display: table;
  width: 100%;
}

.basket-item__meta .flag span {
  font-weight: bold;
}

.basket-item__meta .flag .flag__image {
  display: table-cell;
  vertical-align: middle;
  padding-right: 15px;
}

.basket-item__meta .flag .flag__image > img {
  display: block;
  max-width: none;
}

.basket-item__meta .flag .flag__body {
  display: table-cell;
  vertical-align: middle;
  width: 100%;
  padding-right: 40px;
}

@media (min-width: 51.25em) {
  .basket-item__meta .flag .flag__body {
    padding-right: 0;
  }
}

.basket-item__meta .flag .flag__body a {
  font-size: 21px;
  line-height: 1.71429;
  line-height: 0;
}

.basket-item__action {
  text-align: right;
  vertical-align: middle;
  padding-left: 20px;
}

.basket-item__button .icon, .basket-item__button .alert .close, .alert .basket-item__button .close, .basket-item__button .search-close, .basket-item__button .item__list li.item--show-all a:after, .item__list li.item--show-all .basket-item__button a:after, .basket-item__button .basket__back-link:before, .basket-item__button .basket__next-button:after, .basket-item__button .button--submit:after, .basket-item__button .nav.breadcrumbs li:after, .nav.breadcrumbs .basket-item__button li:after, .basket-item__button .bullet-list li:before, .bullet-list .basket-item__button li:before, .basket-item__button #filterForm .chosen-container-single .chosen-single div b, #filterForm .chosen-container-single .chosen-single div .basket-item__button b, .basket-item__button .order-process__item .icon:after, .order-process__item .basket-item__button .icon:after, .basket-item__button .selectboxit-default-arrow:after {
  margin-right: 8px;
  font-size: 130%;
  position: relative;
  top: 3px;
}

.basket-item__form {
  display: inline-block;
  padding-bottom: 16px;
}

@media (min-width: 51.25em) {
  .basket-item__form {
    display: table-cell;
    padding-bottom: 0;
  }
}

.basket-item__form input {
  width: 50px;
  padding: 7px 10px 5px;
  text-align: center;
}

.basket-item__form label {
  margin: 0 6px;
}

.basket-item__form .product-item__form {
  float: none;
}

@media (min-width: 51.25em) {
  .basket-item__form .product-item__form {
    float: right;
  }
}

@media (min-width: 51.25em) {
  .basket-item__form--left {
    padding-left: 10px;
  }
}

.basket__unit-price {
  display: none;
  margin-right: 24px;
  text-align: right;
  color: #555;
}

@media (min-width: 62.5em) {
  .basket__unit-price {
    display: table-cell;
  }
}

.basket__unit-price-small {
  display: block;
  font-size: 16px;
  line-height: 1.5;
  font-weight: 400;
  color: #555;
}

@media (min-width: 62.5em) {
  .basket__unit-price-small {
    display: none;
  }
}

.basket__price {
  font-weight: bold;
  font-size: 21px;
  line-height: 1.71429;
  line-height: 24px;
  margin-right: 12px;
  padding: 0 0 10px 24px;
  display: inline-block;
  text-align: right;
  float: right;
}

@media (min-width: 51.25em) {
  .basket__price {
    display: table-cell;
    float: none;
    text-align: left;
    padding-bottom: 0;
    padding-right: 34px;
  }
}

@media (min-width: 62.5em) {
  .basket__price {
    line-height: 50px;
    text-align: right;
  }
}

.basket-item__remove-wrapper {
  vertical-align: top;
  position: absolute;
  top: 0;
  right: 0;
}

@media (min-width: 51.25em) {
  .basket-item__remove-wrapper {
    position: relative;
    top: auto;
    right: auto;
    vertical-align: middle;
  }
}

.basket-item__remove {
  text-decoration: none;
  color: #cf1708;
  font-size: 150%;
  -webkit-appearance: none;
  appearance: none;
  background: none;
  border: 0;
  padding: 10px;
}

.basket-steps {
  text-align: center;
}

.basket-steps__item {
  width: 24%;
  position: relative;
  vertical-align: middle;
  padding-left: 7.5px;
  padding-right: 7.5px;
}

@media (min-width: 49em) {
  .basket-steps__item {
    width: auto;
    padding-left: 45px;
    padding-right: 45px;
  }
}

@media (min-width: 65em) {
  .basket-steps__item {
    padding-left: 75px;
    padding-right: 75px;
  }
}

.basket-steps__item:first-child {
  padding-left: 0;
}

.basket-steps__item:last-child {
  padding-right: 0;
}

.basket-steps__item:after {
  display: none;
}

@media (min-width: 49em) {
  .basket-steps__item:after {
    content: '';
    position: absolute;
    top: 50%;
    left: 100%;
    height: 1px;
    background: #e5e5e5;
    display: block;
    margin-left: -25px;
    width: 50px;
  }
}

@media (min-width: 65em) {
  .basket-steps__item:after {
    margin-left: -37.5px;
    width: 75px;
  }
}

.basket-steps__item:last-of-type:after {
  display: none;
}

.basket-steps__link {
  font-size: 18px;
  line-height: 1.5;
  text-decoration: none;
  margin-bottom: 0;
  color: #999;
}

.basket-steps__link:hover, .basket-steps__link:focus, .basket-steps__link:active {
  color: #999;
}

@media (min-width: 49em) {
  .basket-steps__link {
    font-size: 24px;
    line-height: 1.5;
  }
}

.basket-steps__link--active a {
  font-weight: bold;
  color: #333;
}

.basket-steps__link--active a:hover, .basket-steps__link--active a:focus, .basket-steps__link--active a:active {
  color: #333;
}

.basket-steps__link--inactive a {
  color: #333;
}

.basket-steps__link--inactive a:hover, .basket-steps__link--inactive a:focus, .basket-steps__link--inactive a:active {
  color: #333;
}

.basket-steps__link--prev:after {
  background: #0075ae;
  opacity: 0.3;
}

.basket-steps__link--prev a {
  color: #0075ae;
  text-decoration: underline;
}

.basket-steps__link--prev a:hover {
  color: #00537b;
}

.basket__add-more {
  font-size: 15px;
  line-height: 2.4;
  font-weight: bold;
  display: block;
}

.basket__back-link {
  text-decoration: none;
  text-align: center;
  margin-top: 24px;
  display: block;
}

@media (min-width: 49em) {
  .basket__back-link {
    text-align: left;
    margin-top: 90px;
    display: inline-block;
  }
}

.basket__back-link:before {
  content: "";
  position: relative;
  top: 2px;
  margin-right: 4px;
}

.basket__back-link span {
  text-decoration: underline;
}

.basket__total-price {
  font-size: 30px;
  line-height: 1.2;
  font-weight: bold;
  margin-bottom: 12px;
}

.basket__total {
  width: 100%;
  text-align: center;
}

@media (min-width: 49em) {
  .basket__total {
    padding-right: 48px;
    text-align: left;
    float: right;
    width: auto;
  }
}

.basket__price-note {
  position: relative;
  top: -12px;
}

.basket__next-button.basket__next-button {
  font-size: 21px;
  line-height: 1.71429;
  padding: 5px 17px 7px;
  margin-bottom: 17px;
}

.basket__next-button.basket__next-button:after {
  content: "";
  position: relative;
  top: 5px;
  margin-left: 4px;
  font-size: 150%;
}

.button--submit:after {
  content: "";
  position: relative;
  top: 5px;
  margin-left: 4px;
  font-size: 150%;
}

.nav.breadcrumbs {
  padding: 12px 0 12px;
  padding-top: 0;
}

@media (min-width: 65em) {
  .nav.breadcrumbs {
    padding-top: 20px;
  }
}

.nav.breadcrumbs li:after {
  margin: 0 4px;
  position: relative;
  top: 2px;
  color: #0075ae;
  content: "";
}

.nav.breadcrumbs li:last-child:after {
  content: '';
  display: none;
}

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

.bullet-list li {
  line-height: 1.8;
  position: relative;
  padding-left: 24px;
}

.bullet-list li:before {
  content: "";
  color: #333;
  position: absolute;
  top: 5px;
  left: 0;
}

.button {
  font-size: 15px;
  line-height: 2.4;
  display: inline-block;
  padding: 0 12px;
  border-radius: 3px;
  text-decoration: none;
  transition: background 0.3s, border 0.3s;
}

.button--primary {
  font-weight: bold;
  color: #fff;
  background-color: #0075ae;
  border: 1px solid #0e6088;
}

.button--primary:hover {
  color: #fff;
  background: #cf1708;
  border: 1px solid #9e1206;
}

.button--secondary {
  border: 1px solid #cf1708;
  font-weight: bold;
  color: #cf1708;
}

.button--muted {
  border: 1px solid #bbb;
  color: #999;
}

.button--invisible {
  text-decoration: underline;
  padding: 0;
  margin-left: 12px;
}

.button--large {
  padding: 6px 17px;
}

.icon--large {
  font-size: 1500%;
}

.button--cta {
  font-size: 21px;
  padding: 12px 30px;
}

.button--submit {
  font-size: 21px;
  padding: 7px 30px;
  margin-bottom: 0;
}

.button--submit-inline {
  font-size: 16px;
  line-height: 1.5;
  padding: 6px 15px;
}

.category-actions {
  margin-top: 45px;
}

.category-filter__form {
  margin-bottom: 24px;
  float: left;
}

@media (min-width: 49em) {
  .category-filter__form {
    float: right;
    margin-top: 7.5px;
  }
}

.category__wrapper h1 {
  font-size: 30px;
  line-height: 1.2;
  margin-bottom: 0;
}

.chance {
  margin: 30px auto 0;
}

.chance__image {
  border-radius: 50%;
  margin-bottom: 24px;
}

.flag-object__image .chance__image {
  max-width: 270px;
}

.chance__body {
  font-size: 18px;
  line-height: 1.5;
  margin-bottom: 0;
  margin-top: 30px;
  text-align: center;
}

@media (min-width: 49em) {
  .chance__body {
    text-align: left;
    margin-top: 0;
  }
}

.contact-box-header {
  float: right;
  display: none;
}

@media (min-width: 65em) {
  .contact-box-header {
    display: table;
    padding: 12px 24px;
    margin-bottom: 30px;
    width: 100%;
    border: 1px solid #ebebeb;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    border-radius: 3px;
  }
}

.contact-box-header__inner {
  display: table-cell;
  width: 400px;
  vertical-align: middle;
}

.contact-box-header__heading {
  font-size: 24px;
  line-height: 1.5;
  margin-bottom: 0;
}

.contact-box-header__note {
  font-size: 18px;
  line-height: 1.5;
  color: #555;
  margin: 0;
  line-height: 1.2;
}

.contact-box-header__right {
  font-size: 24px;
  line-height: 1.5;
  display: inline-block;
  float: right;
  vertical-align: top;
  margin-bottom: 0;
  margin-left: 24px;
  font-weight: bold;
  color: #0075ae;
}

.contact-box-header__right .element {
  float: left;
  clear: left;
}

.contact-box-header__right .element--email {
  color: #333;
  font-size: 18px;
  line-height: 1.5;
}

.contact-box-header__right .icon, .contact-box-header__right .alert .close, .alert .contact-box-header__right .close, .contact-box-header__right .search-close, .contact-box-header__right .item__list li.item--show-all a:after, .item__list li.item--show-all .contact-box-header__right a:after, .contact-box-header__right .basket__back-link:before, .contact-box-header__right .basket__next-button:after, .contact-box-header__right .button--submit:after, .contact-box-header__right .nav.breadcrumbs li:after, .nav.breadcrumbs .contact-box-header__right li:after, .contact-box-header__right .bullet-list li:before, .bullet-list .contact-box-header__right li:before, .contact-box-header__right #filterForm .chosen-container-single .chosen-single div b, #filterForm .chosen-container-single .chosen-single div .contact-box-header__right b, .contact-box-header__right .order-process__item .icon:after, .order-process__item .contact-box-header__right .icon:after, .contact-box-header__right .selectboxit-default-arrow:after {
  font-weight: normal;
  margin-right: 12px;
}

.contact-info {
  padding: 19px 0;
}

@media (min-width: 49em) {
  .contact-info {
    padding: 38px 0;
    border-bottom: 1px solid #ebebeb;
  }
}

@media (min-width: 65em) {
  .contact-info:first-child {
    padding-bottom: 0;
  }
}

.contact-info:last-child {
  border-bottom: 0;
}

@media (min-width: 65em) {
  .contact-info:last-child {
    padding-bottom: 24px;
  }
}

.contact-info .row {
  max-width: 1000px;
  margin: 0 auto;
}

.contact-info .row.contact-info__map {
  margin-top: 24px;
}

.contact-info__side-column {
  display: none;
}

@media (min-width: 65em) {
  .contact-info__side-column {
    position: relative;
    display: block;
    float: left;
  }
  .contact-info__side-column:last-child {
    margin-bottom: 0;
  }
}

.contact-info__box {
  padding-top: 24px;
}

@media (min-width: 49em) {
  .contact-info__box {
    padding-top: 0;
  }
}

.contact-info__image {
  display: block;
  margin: 0 auto;
}

.contact-info__heading {
  font-size: 30px;
  line-height: 1.2;
  margin: 12px 0;
}

@media (min-width: 49em) {
  .contact-info__heading {
    padding-top: 0;
  }
}

.contact-info__heading--small {
  font-size: 18px;
  margin-bottom: 6px;
}

.contact-info__text {
  font-size: 18px;
  line-height: 1.5;
  line-height: 24px;
}

.contact-info__text--last {
  margin-bottom: 0;
}

.contact-info__secondary {
  font-size: 21px;
  line-height: 1.71429;
  color: #555;
  margin-bottom: 0;
}

.contact-info__secondary span {
  display: block;
  float: left;
  width: 70px;
}

.contact-info__table tr td {
  padding: 5px 5px 5px 0;
}

.contact-info__table tr td:first-child {
  width: 110px;
}

.contact-info__hotline-available {
  margin-bottom: 24px;
}

.customer {
  max-width: 500px;
  margin-top: 10px;
}

.customer .bullet-list {
  margin-left: 80px;
}

.customer .bullet-list li {
  line-height: 1.5em;
  padding-top: 2px;
  margin: 6px 0 0 0;
  font-size: 18px;
}

.customer__icon {
  font-size: 60px;
  color: #999;
  position: relative;
  line-height: 1em;
  position: absolute;
  top: 15px;
}

.customer__icon.icon-person {
  top: 18px;
}

.customer__heading {
  margin: 0 0 24px 80px;
  font-size: 36px;
}

.detail {
  padding: 48px 0 24px;
  padding-right: 0 !important;
  width: 100%;
  border-bottom: 2px solid #ebebeb;
}

@media (min-width: 49em) {
  .detail {
    padding: 60px 30px;
  }
}

.detail__side {
  margin-right: 30px !important;
  text-align: center;
  width: 100%;
  padding: 0 0 30px;
}

.detail__side .detail__image {
  display: inline-block;
  width: 200px;
}

@media (min-width: 49em) {
  .detail__side {
    width: auto;
    padding: 0;
  }
}

.detail__body {
  width: 100%;
}

@media (min-width: 49em) {
  .detail__body {
    width: auto;
    display: block;
    max-width: 700px;
  }
}

@media (min-width: 65em) {
  .detail__body {
    padding-left: 40px;
  }
}

.detail__body .detail__text {
  border-bottom: 1px solid #ebebeb;
  padding-bottom: 0;
  margin-bottom: 24px;
  width: 100%;
  line-height: 26px;
}

.detail__heading {
  text-align: center;
  margin-bottom: 12px;
}

@media (min-width: 49em) {
  .detail__heading {
    text-align: left;
  }
}

.detail__publisher {
  text-align: center;
  font-weight: bold;
  margin-bottom: 0;
  font-size: 15px;
}

@media (min-width: 49em) {
  .detail__publisher {
    text-align: left;
  }
}

.detail__code {
  text-align: center;
  color: #555;
  font-size: 15px;
}

@media (min-width: 49em) {
  .detail__code {
    text-align: left;
  }
}

.detail__text--wrapper {
  font-size: 15px;
  padding: 24px 0;
  width: 100%;
  display: table-footer-group;
  padding-bottom: 48px;
}

@media (min-width: 49em) {
  .detail__text--wrapper {
    padding: 0;
    display: block;
    width: 100%;
    margin-bottom: 24px;
    border-bottom: 1px solid #ebebeb;
  }
}

.detail__text--wrapper .detail__text {
  border-bottom: 1px solid #ebebeb;
  padding-bottom: 24px;
  width: 100%;
}

@media (min-width: 49em) {
  .detail__text--wrapper .detail__text {
    max-width: 480px;
  }
}

.detail__form {
  text-align: center;
  display: block;
  border: 0;
  padding-bottom: 36px;
}

@media (min-width: 49em) {
  .detail__form {
    margin-top: 24px;
    text-align: left;
    display: table-row;
  }
}

.detail__form .button {
  font-size: 21px;
  line-height: 1.71429;
}

#filterForm {
  float: none;
  clear: both;
  margin-bottom: 24px;
}

@media (min-width: 49em) {
  #filterForm {
    float: right;
    clear: none;
  }
}

#filterForm > div {
  position: relative;
  margin-bottom: 10px;
}

#filterForm label {
  display: none;
}

#filterForm .chosen-container-single, #filterForm .chosen-select {
  width: 290px !important;
  box-shadow: 0 0 3px white inset, 0 1px 1px rgba(0, 0, 0, 0.1);
  cursor: pointer;
  font-weight: 700;
  color: #444;
  font-family: "museo-sans", Helvetica, Arial, sans-serif;
  font-size: 15px;
  line-height: 24px;
}

#filterForm .chosen-container-single[disabled], #filterForm .chosen-select[disabled] {
  opacity: 0.5;
  cursor: default;
}

#filterForm .chosen-default,
#filterForm .chosen-single,
#filterForm .chosen-select {
  background: #fff;
  border-radius: 3px;
  border: 1px solid #ebebeb;
  padding: 14px 12px 13px;
  height: auto;
}

#filterForm .chosen-default span,
#filterForm .chosen-single span,
#filterForm .chosen-select span {
  color: #333;
  font-weight: 700;
  font-size: 15px;
}

#filterForm .chosen-container-single .chosen-single div {
  width: 30px;
}

#filterForm .chosen-container-single .chosen-single div b {
  background: none;
  position: relative;
}

@media only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (min-resolution: 144dpi), only screen and (min-resolution: 1.5dppx) {
  #filterForm .chosen-container-single .chosen-single div b {
    background: none !important;
  }
}

#filterForm .chosen-container-single .chosen-single div b:before {
  content: "";
  position: absolute;
  top: 50%;
  margin-top: -11px;
  font-size: 22px;
}

#filterForm .chosen-drop {
  border-color: #ebebeb;
  border-radius: 0 0 3px 3px;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}

#filterForm .chosen-container .chosen-results li.highlighted {
  background: #0e6088;
}

.filter-form__heading {
  float: left;
  margin-bottom: 24px;
  font-size: 36px;
  line-height: 1.2;
}

@media (min-width: 65em) {
  .filter-form__heading {
    font-size: 48px;
    line-height: 1.125;
  }
}

@media (min-width: 49em) {
  .flag-object {
    display: table;
    width: 100%;
  }
}

@media (min-width: 49em) {
  .flag-object__image,
  .flag-object__body {
    display: table-cell;
    vertical-align: middle;
  }
  .flag-object--bottom .flag-object__image, .flag-object--bottom
  .flag-object__body {
    vertical-align: bottom;
  }
}

.flag-object__image {
  position: relative;
  text-align: center;
  margin-top: 24px;
}

.flag-object__image > img {
  display: block;
  margin: 0 auto;
}

@media (min-width: 49em) {
  .flag-object__image {
    padding-right: 24px;
    white-space: nowrap;
    margin-top: 0;
  }
  .flag-object__image > img {
    display: inline-block;
    max-width: none;
  }
  .flag-object--rev .flag-object__image {
    padding-right: 0;
    padding-left: 24px;
  }
}

@media (min-width: 49em) {
  .flag-object__body {
    width: 100%;
  }
}

.flag {
  display: block;
  width: 100%;
}

.flag__image,
.flag__body {
  vertical-align: middle;
}

.flag__image a,
.flag__body a {
  font-size: 21px;
  line-height: 1.71429;
}

.flag__image {
  text-align: center;
  white-space: nowrap;
}

.flag__image > img {
  display: inline-block;
  max-width: none;
}

.flag__body--full {
  width: 100%;
}

.login__wrapper .section--right {
  width: 390px;
  max-width: 100%;
  float: right;
  margin-top: 30px;
  margin-left: 24px;
}

.login__wrapper .section--right p {
  padding-top: 24px;
}

@media (max-width: 860px) {
  .login__wrapper .section--right {
    margin-left: 0;
    margin-top: 60px;
    float: left;
    clear: left;
  }
}

.login__wrapper .login__form {
  position: relative;
  width: 320px;
  text-align: left;
  margin: 0;
  float: left;
  max-width: 100%;
}

.login__wrapper .login__form .login__button--forgotten-password {
  position: absolute;
  right: 0;
}

.login__wrapper .login__form .section--left {
  padding-top: 30px;
}

.login__wrapper .login__form .section--left:after {
  content: '';
  display: table;
  clear: both;
}

.login__wrapper .login__form .section--left label, .login__wrapper .login__form .section--left input {
  vertical-align: top;
}

.login__wrapper .login__form .section--left label {
  float: left;
}

.login__wrapper .login__form .section--left input {
  margin: 0 12px 24px 0;
  display: inline-block;
  border-radius: 0;
  clear: both;
}

.login__wrapper .login__form .section--left ul {
  padding: 0;
  list-style: none;
}

.login__wrapper .login__form .section--left ul li {
  color: #9e1206;
}

.password__wrapper .section--right {
  width: 390px;
  max-width: 100%;
  float: right;
  margin-top: 30px;
  margin-left: 24px;
}

.password__wrapper .section--right p {
  padding-top: 24px;
}

@media (max-width: 860px) {
  .password__wrapper .section--right {
    margin-left: 0;
    margin-top: 60px;
    float: left;
    clear: left;
  }
}

.password__wrapper .password__form {
  width: 320px;
  text-align: left;
  margin: 0;
  float: left;
  max-width: 100%;
}

.password__wrapper .password__form .section--center {
  padding-top: 30px;
}

.password__wrapper .password__form .section--center input, .password__wrapper .password__form .section--center label, .password__wrapper .password__form .section--center textarea {
  width: 100%;
}

.password__wrapper .password__form input {
  margin-bottom: 15px;
}

.password__wrapper .password__form .section--left {
  padding-top: 30px;
}

.password__wrapper .password__form .section--left:after {
  content: '';
  display: table;
  clear: both;
}

.password__wrapper .password__form .section--left input {
  margin: 0 12px 24px 0;
}

.register__wrapper {
  position: relative;
  padding: 0;
}

.register__wrapper h1 {
  text-align: left;
}

.register__wrapper h2 {
  font-size: 21px;
  line-height: 1.71429;
  margin-top: 0;
}

.register__wrapper .section--center {
  padding-top: 30px;
}

.register__wrapper .section--center input, .register__wrapper .section--center label, .register__wrapper .section--center textarea {
  width: 100%;
}

.register__wrapper .register__form {
  float: none;
  margin: 0 auto;
  text-align: left;
  position: relative;
  max-width: 100%;
  width: 390px;
  text-align: left;
  margin: 0;
}

.register__wrapper .register__form input[type=checkbox]:checked + label:before {
  text-align: center;
}

.register__wrapper .register__form input[type=checkbox], .register__wrapper .register__form input[type=radio] {
  display: none;
}

.register__wrapper .register__form .checkbox {
  margin-top: 24px;
}

.form-heading {
  font-size: 24px;
  line-height: 1.5;
  text-align: center;
}

.form input {
  margin-bottom: 15px;
}

.form input[type=radio] + label:before {
  cursor: pointer;
  content: "";
  width: 20.1px;
  height: 20.1px;
  position: absolute;
  left: 5px;
  border-radius: 50%;
}

.form input[type=radio] + label:after {
  border-radius: 50%;
  border: 1px solid #e5e5e5;
  content: "";
  position: absolute;
  left: 5px;
  margin-top: 0.20em;
  width: 20.1px;
  height: 20.1px;
  top: 0;
}

.form input[type=radio]:checked + label {
  font-weight: bold;
}

.form input[type=radio]:checked + label:before {
  color: #333;
  margin-top: 0.20em;
  border-radius: 50%;
  border: 6px solid white;
  background: #333;
  line-height: 30px;
}

.form input[type=checkbox]:checked + label:before {
  color: #333;
  margin-top: 0.25em;
  border-radius: 7px;
  border: 6px solid white;
  background: #333;
  line-height: 30px;
}

.form input[type=checkbox] + label:after {
  border-radius: 3px;
  border: 1px solid #e5e5e5;
  content: "";
  position: absolute;
  left: 5px;
  margin-top: 0.25em;
  width: 20.1px;
  height: 20.1px;
  top: 0;
}

.form input[type=checkbox] + label, .form input[type=radio] + label {
  cursor: pointer;
  display: block;
  padding-left: 37.5px;
  font-size: 16px;
  line-height: 1.5;
  font-size: 1.15em;
  line-height: 30px;
  float: left;
  clear: left;
  position: relative;
}

.form input[type=checkbox] + label:before {
  cursor: pointer;
  content: "";
  width: 20.1px;
  height: 20.1px;
  position: absolute;
  left: 5px;
}

.form .checkbox {
  position: relative;
  margin-bottom: 15px;
}

.form .checkbox:after {
  content: '';
  display: table;
  clear: both;
}

.form .password__change--toggle {
  position: absolute;
  right: 0.25em;
  top: 0.25em;
  color: #bbb;
  padding: 0.5em;
  cursor: pointer;
  font-size: 1.5em;
  height: auto;
  width: auto;
}

.form .password__change--toggle:hover {
  color: #333;
}

.form .password__change--toggle:active {
  color: #0075ae;
}

.form .form__group .form__row:last-of-type input {
  margin-bottom: 15px;
}

.form .form__group > .form__row:first-child input:first-of-type {
  border-top-left-radius: 3px;
  border-bottom-left-radius: 0;
}

.form .form__group > .form__row:first-child input:last-of-type {
  border-top-right-radius: 3px;
  border-bottom-right-radius: 0;
}

.form .form__group > .form__row:last-child > :first-child input {
  border-bottom-left-radius: 3px;
  border-top-left-radius: 0;
}

.form .form__group > .form__row:last-child > :last-child input {
  border-bottom-right-radius: 3px;
  border-top-right-radius: 0;
}

.form .form__group input {
  margin-bottom: 0;
}

.form .form__group + input {
  margin: 15px;
}

.inline-label__wrapper:after {
  content: '';
  display: table;
  clear: both;
}

.inline-label {
  position: relative;
}

.no-js .inline-label {
  position: relative;
}

.inline-label label {
  cursor: text;
  margin-bottom: 12px;
}

.inline-label__input,
.inline-label__textarea {
  font-size: 16px;
  line-height: 1.5;
  line-height: 1.25;
  width: 100%;
  padding: 26px 10px 13px;
  border: 1px solid #ebebeb;
  border-radius: 3px;
}

.inline-label__input--error {
  border-color: #cf1708;
}

.inline-label--half {
  width: 50%;
  float: left;
}

.inline-label__label {
  position: absolute;
  text-transform: uppercase;
  top: 20px;
  padding: 0 10px;
  text-align: left;
  box-sizing: padding-box;
  color: #bbb;
  transition: all 0.2s;
  line-height: 1.2em;
}

.no-js .inline-label__label {
  position: relative;
  top: 0;
  left: 0;
  color: #333;
}

.inline-label__label--select,
.inline-label__label.js-filled-input {
  font-size: 12px;
  line-height: 1;
  color: #555;
  top: 8px;
}

.inline-label__flash-message {
  font-size: 15px;
  line-height: 2.4;
  color: #cf1708;
  line-height: 1.2;
  margin: 5px 0 10px;
}

.inline-label__label--right {
  float: right;
  text-transform: lowercase;
  font-style: italic;
}

.inline-label__input ~ .inline-label__label--note {
  margin-bottom: 15px;
  position: relative;
  top: -7.5px;
  display: block;
  text-align: left;
  color: #555;
  padding-left: 15px;
}

.input--large {
  padding: 6px 17px;
}

.label {
  border: 1px solid #e5e5e5;
  background: #eee;
  text-transform: uppercase;
  font-size: 13px;
  line-height: 1.615384615;
  font-weight: 700;
  padding: 4px 10px;
  display: inline-block;
}

.label--news {
  color: #0075ae;
}

.label--action {
  color: #cf1708;
}

.layout--main {
  width: 100%;
}

@media (min-width: 65em) {
  .layout--main {
    float: right;
    width: 74.625%;
  }
}

.layout--sidebar {
  display: none;
}

@media (min-width: 65em) {
  .layout--sidebar {
    display: block !important;
    float: left;
    width: 22.875%;
    top: 43px;
    margin-bottom: 24px;
    position: relative;
    opacity: 1 !important;
  }
}

.legal-print {
  font-size: 15px;
  line-height: 2.4;
  color: #999;
  line-height: 1;
}

.link-right {
  position: absolute;
  top: 0;
  right: 0;
  line-height: 36px;
}

.main-news {
  border: 1px solid #ebebeb;
  margin-bottom: 30px;
}

.main-news:after {
  content: '';
  display: table;
  clear: both;
}

.main-news__content {
  padding: 24px;
  padding-top: 20px;
}

@media (min-width: 49em) {
  .main-news__content {
    padding: 30px;
  }
}

.main-news__image-container {
  position: relative;
}

.main-news__image-container .label {
  position: absolute;
  top: 15px;
  left: 15px;
}

.main-news__image-container img {
  min-width: 100%;
  display: block;
}

.main-news__heading {
  font-size: 24px;
  line-height: 1.5;
}

.main-news__text {
  font-size: 15px;
  line-height: 1.4;
}

.map {
  background-image: url("../../img/temp-map.jpg");
  background-size: cover;
  background-position: center;
  width: 100%;
  height: 300px;
}

.media-object, .detail {
  overflow: hidden;
  _overflow: visible;
  zoom: 1;
}

.media-object__body, .detail__body {
  overflow: hidden;
  _overflow: visible;
  zoom: 1;
}

.media-object__side, .detail__side {
  float: left;
  margin-right: 16px;
}

.media-object__side img, .detail__side img {
  display: block;
}

.media-object__right-side {
  float: right;
  margin-left: 16px;
}

.media-object__right-side img {
  display: block;
}

.nav {
  list-style-type: none;
  padding-left: 0;
  margin-bottom: 0;
}

.nav:after {
  content: '';
  display: table;
  clear: both;
}

.nav > li,
.nav > li > a {
  display: inline-block;
}

.nav > li {
  display: inline-block;
  margin-right: -4px;
}

.news__image-container {
  border: 1px solid #ebebeb;
  position: relative;
}

.news__image-container:hover + .main-news__heading, .news__image-container:focus + .main-news__heading, .news__image-container:active + .main-news__heading {
  color: #0e6088;
}

.news__image-container .label {
  position: absolute;
  top: 15px;
  left: 15px;
}

.news__image-container img {
  display: block;
  min-width: 100%;
}

.news__heading {
  font-size: 21px;
  line-height: 1.71429;
  display: block;
  margin-top: 12px;
  max-width: 300px;
  line-height: 1.25em;
}

.news__meta {
  font-size: 15px;
  line-height: 2.4;
  color: #555;
}

.order-details--main .order__heading h1 {
  margin-bottom: 12px;
}

.order-details--main .order__heading .order__heading--details {
  float: left;
  margin-bottom: 0;
}

@media (min-width: 49em) {
  .order-details--main .order__heading .order__heading--details {
    margin-bottom: 24px;
  }
}

.order-details--main .order__heading .order__heading--id, .order-details--main .order__heading .order__heading--details {
  font-weight: normal;
}

.order-details--main .order__heading .order__heading--id .order__heading--date, .order-details--main .order__heading .order__heading--details .order__heading--date {
  font-weight: bold;
}

.order-details--main .order__heading .heading--payment-status {
  text-align: left;
  float: left;
  clear: left;
}

@media (min-width: 49em) {
  .order-details--main .order__heading .heading--payment-status {
    text-align: right;
    float: right;
    clear: none;
  }
}

.order-details--main .order__heading .heading--payment-status .payment-status--success {
  color: #00a651;
  font-weight: bold;
}

.order-details--main .order__items--wrapper {
  width: 100%;
  float: left;
  border-bottom: 2px solid #ebebeb;
}

.order-details--main .order__items--wrapper:after {
  content: '';
  display: table;
  clear: both;
}

.order-details--main .order__items--wrapper .item--heading {
  display: none;
  background: #ebebeb;
  border-bottom: 2px solid #bbb !important;
  font-weight: bold;
  color: #555;
}

.order-details--main .order__items--wrapper .item--heading + .item {
  border-top: 1px solid #ebebeb !important;
}

@media (min-width: 49em) {
  .order-details--main .order__items--wrapper .item--heading {
    display: block;
  }
}

.order-details--main .order__items--wrapper .item {
  width: 100%;
  position: relative;
  float: left;
  border-bottom: 1px solid #eee;
}

.order-details--main .order__items--wrapper .item > div {
  float: left;
}

.order-details--main .order__items--wrapper .item:last-of-type {
  border: 0;
}

.order-details--main .order__items--wrapper .item .item__box {
  padding: 12px 12px;
  padding-left: 0;
  font-size: 15px;
}

.order-details--main .order__items--wrapper .item .item__box:nth-of-type(1) {
  width: 14%;
  padding-left: 24px;
}

.order-details--main .order__items--wrapper .item:not(.item--summary) .item__box:nth-of-type(2) {
  width: 100%;
}

@media (min-width: 49em) {
  .order-details--main .order__items--wrapper .item:not(.item--summary) .item__box:nth-of-type(2) {
    width: 44%;
    padding-bottom: 9.6px;
  }
}

.order-details--main .order__items--wrapper .item:not(.item--summary) .item__box:nth-of-type(1) {
  position: absolute;
  bottom: 2.0em;
  padding-left: 0;
  padding-bottom: 0;
  color: #555;
}

@media (min-width: 49em) {
  .order-details--main .order__items--wrapper .item:not(.item--summary) .item__box:nth-of-type(1) {
    color: #555;
    position: relative;
    bottom: 0;
    padding-left: 12px;
  }
  .order-details--main .order__items--wrapper .item:not(.item--summary) .item__box:nth-of-type(1):before {
    display: none;
    left: 0;
    position: relative;
  }
}

.order-details--main .order__items--wrapper .item .item__box:nth-of-type(3) {
  float: left;
  clear: both;
  color: #555;
}

.order-details--main .order__items--wrapper .item .item__box:nth-of-type(3):after {
  content: "x";
  padding-left: 0.5em;
}

@media (min-width: 49em) {
  .order-details--main .order__items--wrapper .item .item__box:nth-of-type(3) {
    clear: none;
    color: #555;
    width: 10%;
  }
  .order-details--main .order__items--wrapper .item .item__box:nth-of-type(3):after {
    display: none;
  }
}

.order-details--main .order__items--wrapper .item .item__box:nth-of-type(4) {
  text-align: left;
  float: left;
  padding-left: 0em;
}

.order-details--main .order__items--wrapper .item:not(.item--heading) .item__box:nth-of-type(4) {
  color: #555;
}

.order-details--main .order__items--wrapper .item .item__box:nth-of-type(5) {
  padding-right: 0;
  font-weight: bold;
  text-align: right;
  position: absolute;
  right: 0;
  bottom: 0;
  float: right;
}

@media (min-width: 49em) {
  .order-details--main .order__items--wrapper .item .item__box:nth-of-type(5) {
    padding-right: 24px;
  }
}

@media (min-width: 49em) {
  .order-details--main .order__items--wrapper .item {
    font-size: 16px;
    line-height: 1.5;
  }
  .order-details--main .order__items--wrapper .item .item__box:nth-of-type(1) {
    width: 12%;
    padding-left: 24px;
  }
  .order-details--main .order__items--wrapper .item .item__box:nth-of-type(4) {
    text-align: right;
    width: 16%;
  }
  .order-details--main .order__items--wrapper .item:not(.item--heading) .item__box:nth-of-type(4) {
    color: #555;
  }
  .order-details--main .order__items--wrapper .item .item__box:nth-of-type(5) {
    font-weight: bold;
    text-align: right;
    top: 0;
    padding-right: 24px;
  }
}

.order-details--main .order__items--wrapper .item--summary .item__box {
  float: right;
  width: 100% !important;
  text-align: right;
  font-size: 30px;
  line-height: 1.2;
  font-weight: bold;
  padding: 12px 0 24px;
  border-bottom: 0;
}

.order-details--main .contact-info__wrapper {
  border-bottom: 2px solid #ebebeb;
  padding-bottom: 22px;
}

.order-details--main .contact-info__wrapper:after {
  content: '';
  display: table;
  clear: both;
}

.order-details--main .contact-info__wrapper .contact-info__wrapper--inner {
  margin-top: 0;
  float: left;
  width: 100%;
  font-size: 110%;
}

.order-details--main .contact-info__wrapper .contact-info__wrapper--inner:last-of-type .contact-info__box:last-of-type {
  padding-bottom: 30px;
}

.order-details--main .contact-info__wrapper .contact-info__wrapper--inner address {
  font-style: normal;
}

.order-details--main .contact-info__wrapper .contact-info__wrapper--inner h2 {
  margin: 7.5px 0;
  margin-top: 15px;
}

@media (min-width: 49em) {
  .order-details--main .contact-info__wrapper .contact-info__wrapper--inner {
    width: 42%;
    margin-top: 24px;
  }
}

.order-details--main .contact-info__wrapper .contact-info__wrapper--inner .contact-info__box {
  float: left;
  clear: left;
  padding-top: 12px;
}

.order-details--main .contact-info__wrapper .contact-info__wrapper--inner .contact-info__box .box__body {
  line-height: 140%;
}

@media (min-width: 49em) {
  .order-details--main .contact-info__wrapper .contact-info__wrapper--inner .contact-info__box .box__body {
    padding-bottom: 12px;
  }
}

.order-details--main .order__action {
  margin-top: 30px;
  color: #0075ae;
}

.order-details--main .order__action:after {
  content: '';
  display: table;
  clear: both;
}

.order-details--main .order__action .action__item {
  float: left;
  clear: both;
  margin-bottom: 7.5px;
}

@media (min-width: 49em) {
  .order-details--main .order__action .action__item {
    clear: none;
  }
}

.order-details--main .order__action i {
  font-size: 1.5em;
  top: 0.15em;
  position: relative;
}

.order-details--main .order__action a {
  margin-right: 30px;
  padding-left: 6px;
  font-size: 21px;
  line-height: 1.71429;
}

.order-left-nav {
  border: 2px solid #cfe1e7;
  list-style-type: none;
  padding-left: 0;
  border-radius: 3px;
}

.order-left-nav__item {
  border-bottom: 1px solid #cfe1e7;
  background: #f0f7fa;
  padding: 2px 0;
}

.order-left-nav__item a {
  text-decoration: none;
  display: block;
  padding: 12px 12px 8px;
}

.order-process {
  border-top: solid #ebebeb;
  border-width: 1px 0;
  text-align: center;
}

.order-process__item {
  margin-top: 90px;
  margin-left: 2.463054187%;
  padding-left: 3.9408867%;
}

.order-process__item:first-of-type {
  margin-top: 0;
}

.order-process__item:after {
  content: '';
  display: table;
  clear: both;
}

@media (min-width: 49em) {
  .order-process__item {
    margin-top: 0;
    margin-left: 0;
    padding-left: 0;
  }
}

.order-process__item .icon, .order-process__item .alert .close, .alert .order-process__item .close, .order-process__item .search-close, .order-process__item .item__list li.item--show-all a:after, .item__list li.item--show-all .order-process__item a:after, .order-process__item .basket__back-link:before, .order-process__item .basket__next-button:after, .order-process__item .button--submit:after, .order-process__item .nav.breadcrumbs li:after, .nav.breadcrumbs .order-process__item li:after, .order-process__item .bullet-list li:before, .bullet-list .order-process__item li:before, .order-process__item #filterForm .chosen-container-single .chosen-single div b, #filterForm .chosen-container-single .chosen-single div .order-process__item b, .order-process__item .icon:after, .order-process__item .selectboxit-default-arrow:after {
  font-size: 48px;
  line-height: 1.125;
  display: block;
  color: #0075ae;
  text-align: center;
  float: left;
  padding-right: 24px;
}

.order-process__item .icon:before, .order-process__item .alert .close:before, .alert .order-process__item .close:before, .order-process__item .search-close:before, .order-process__item .basket__back-link:before, .order-process__item .bullet-list li:before, .bullet-list .order-process__item li:before, .order-process__item #filterForm .chosen-container-single .chosen-single div b:before, #filterForm .chosen-container-single .chosen-single div .order-process__item b:before {
  font-size: 64px;
}

.order-process__item .alert .close:after, .alert .order-process__item .close:after, .order-process__item .search-close:after, .order-process__item .item__list li.item--show-all a:after, .item__list li.item--show-all .order-process__item a:after, .order-process__item .basket__next-button:after, .order-process__item .button--submit:after, .order-process__item .nav.breadcrumbs li:after, .nav.breadcrumbs .order-process__item li:after, .order-process__item #filterForm .chosen-container-single .chosen-single div b:after, #filterForm .chosen-container-single .chosen-single div .order-process__item b:after, .order-process__item .icon:after, .order-process__item .selectboxit-default-arrow:after {
  content: "";
  color: #e5e5e5;
  position: absolute;
  top: 75px;
}

@media (min-width: 49em) {
  .order-process__item .icon, .order-process__item .alert .close, .alert .order-process__item .close, .order-process__item .search-close, .order-process__item .item__list li.item--show-all a:after, .item__list li.item--show-all .order-process__item a:after, .order-process__item .basket__back-link:before, .order-process__item .basket__next-button:after, .order-process__item .button--submit:after, .order-process__item .nav.breadcrumbs li:after, .nav.breadcrumbs .order-process__item li:after, .order-process__item .bullet-list li:before, .bullet-list .order-process__item li:before, .order-process__item #filterForm .chosen-container-single .chosen-single div b, #filterForm .chosen-container-single .chosen-single div .order-process__item b, .order-process__item .icon:after, .order-process__item .selectboxit-default-arrow:after {
    float: none;
    padding: 0;
  }
  .order-process__item .alert .close:after, .alert .order-process__item .close:after, .order-process__item .search-close:after, .order-process__item .item__list li.item--show-all a:after, .item__list li.item--show-all .order-process__item a:after, .order-process__item .basket__next-button:after, .order-process__item .button--submit:after, .order-process__item .nav.breadcrumbs li:after, .nav.breadcrumbs .order-process__item li:after, .order-process__item #filterForm .chosen-container-single .chosen-single div b:after, #filterForm .chosen-container-single .chosen-single div .order-process__item b:after, .order-process__item .icon:after, .order-process__item .selectboxit-default-arrow:after {
    content: "";
    color: #e5e5e5;
    position: absolute;
    top: 0;
    right: -35px;
  }
}

.order-process__item:last-child .alert .close:after, .alert .order-process__item:last-child .close:after, .order-process__item:last-child .search-close:after, .order-process__item:last-child .item__list li.item--show-all a:after, .item__list li.item--show-all .order-process__item:last-child a:after, .order-process__item:last-child .basket__next-button:after, .order-process__item:last-child .button--submit:after, .order-process__item:last-child .nav.breadcrumbs li:after, .nav.breadcrumbs .order-process__item:last-child li:after, .order-process__item:last-child #filterForm .chosen-container-single .chosen-single div b:after, #filterForm .chosen-container-single .chosen-single div .order-process__item:last-child b:after, .order-process__item:last-child .icon:after, .order-process__item:last-child .selectboxit-default-arrow:after {
  display: none;
}

.order-process__note {
  text-align: left;
  float: left;
  top: 25px;
  position: relative;
  font-size: 21px;
  line-height: 1.71429;
}

@media (min-width: 49em) {
  .order-process__note {
    text-align: center;
    display: block;
    float: none;
    top: 0;
  }
}

.order-step {
  padding: 30px 0;
  width: 100%;
  border-bottom: 2px solid #ebebeb;
}

.order-step:after {
  content: '';
  display: table;
  clear: both;
}

.order-step h1 {
  text-align: center;
}

.order-step h4 {
  font-size: 48px;
  line-height: 1.125;
  font-size: 2em;
  text-align: center;
}

@media (min-width: 49em) {
  .order-step {
    padding: 48px;
  }
  .order-step h4 {
    font-size: 21px;
    line-height: 1.71429;
  }
}

.order-step:last-child {
  border: 0;
  margin-bottom: 0;
  padding-bottom: 0;
}

.order-step .nav-tab__content {
  width: 100%;
  clear: both;
  text-align: center;
}

.section--horizontal + .order-step {
  padding-top: 0;
}

.order-step-2__section {
  width: 100%;
  padding: 24px;
}

.nav-tab__content .u-center {
  font-size: 15px;
}

.order-step__form {
  float: none;
  margin: 0 auto;
  text-align: left;
  position: relative;
  clear: both;
}

.order-step__form .section--center {
  padding-top: 30px;
}

.order-step__form .section--center:first-child {
  padding-top: 0;
}

.order-step__form .section--center:nth-child(2) {
  padding-top: 0;
}

.order-step__form .section--center input, .order-step__form .section--center label, .order-step__form .section--center textarea {
  width: 100%;
}

.order-step__form .section--left {
  padding-top: 30px;
}

.order-step__form .section--left:after {
  content: '';
  display: table;
  clear: both;
}

.order-step__form .section--left label, .order-step__form .section--left input {
  vertical-align: top;
}

.order-step__form .section--left label {
  float: left;
}

.order-step__form .section--left input {
  margin: 0 12px 24px 0;
  display: inline-block;
  border-radius: 0;
  clear: both;
}

.order-step__form .section--left ul {
  clear: both;
  list-style-type: none;
  color: #cf1708;
  padding-left: 0;
}

.order-step__form .section--left .form__row:not(:last-of-type) input {
  margin-bottom: 0;
}

.order-step__form .section--left .form__row:not(:last-of-type) input + ul {
  margin-top: 12px;
}

.form__note {
  color: #555;
  text-align: center;
}

.form__row ul.form-errors {
  list-style-type: none;
  color: #cf1708;
  padding-left: 0;
}

.form__row:after {
  content: '';
  display: table;
  clear: both;
}

.form__group .form__row:not(:last-of-type) input:required + ul {
  margin-top: 15px;
}

#delivery__details--wrapper, #vat__id--wrapper {
  display: none;
}

.form__group--border {
  border-bottom: 1px solid #ebebeb;
  padding: 15px 0;
  text-align: left;
}

.form__group--border:after {
  content: '';
  display: table;
  clear: both;
}

.form__group--border:last-child {
  border-bottom: 2px solid #ebebeb;
}

.form__group--border .inline-label *:last-of-type {
  margin-bottom: 0;
}

.form__group--border label + .inline-label__label--note {
  position: relative;
  top: -6px;
}

.order-step__form input[type=checkbox], .order-step__form input[type=radio] {
  display: none;
}

.order-step__form .form__group--heading {
  font-size: 1.15em;
  padding-left: 37.5px;
}

.order-step__form .form__group--body {
  color: #333;
  float: left;
  clear: both;
  padding-left: 37.5px;
}

.order-step__form .login__button--forgotten-password {
  float: right;
}

.order-step__form p {
  margin-bottom: 0;
}

.order-step__form .section--left:first-of-type {
  padding-top: 0;
}

.basket--review {
  margin: 0 auto;
  float: none;
}

.basket--review h2 {
  margin-top: 0;
  text-align: center;
}

.basket--review .product-item {
  border-bottom: 1px solid #ebebeb !important;
}

.basket--review .product-item:first-child {
  border-top: 1px solid #ebebeb;
}

.basket--review .product-item > div {
  display: block;
  float: left;
}

.basket--review .basket__total-price {
  text-align: right;
  width: 100%;
  font-size: 21px;
  line-height: 1.71429;
  margin-top: 7.5px;
}

.basket--review .item__body--price {
  font-size: 16px;
  line-height: 1.5;
  width: 15%;
  text-align: right;
  font-weight: bold;
}

.basket--review .item__body--publisher {
  width: 15%;
  font-weight: bold;
}

.basket--review .item__body--pcs {
  width: 15%;
}

.basket--review .item__body--title {
  width: 55%;
}

.basket--review .product-item {
  padding: 7.5px 0;
}

.order-step--half {
  padding: 45px;
  border-bottom: 2px solid #ebebeb;
  margin-bottom: 0;
}

.order-step--half:last-of-type {
  border: 0;
}

.order-step--half .section--center {
  padding-top: 0;
  text-align: center;
}

.order-step--half p:last-of-type {
  margin-bottom: 0;
}

.order-step--half .order-step__body {
  margin-top: 12px;
  line-height: 24px;
}

.order-step--half .order-step__form--inline {
  margin-top: 30px;
  position: relative;
}

.order-step--half > .section--center {
  margin-top: 20px;
}

.order-step--no-border {
  border: 0;
}

.order-step__banner {
  font-size: 36px;
  text-align: center;
  color: #fff;
  font-weight: bold;
  margin-top: 30px;
  background-size: cover;
  background-position: center;
  position: relative;
  background-image: url("../../img/kosik-hotovo-mobile.png");
}

@media (min-width: 49em) {
  .order-step__banner {
    background-image: url("../../img/kosik-hotovo.png");
  }
}

.order-step__banner .order-step__body {
  z-index: 2000;
  position: relative;
  margin: 0;
}

.order-step__banner .section--center {
  padding: 55px;
}

.order-step__banner + .site-footer {
  margin-top: 0;
}

.orders-list--main .orders__heading h1 {
  margin-bottom: 24px;
}

.orders-list--main .orders__items--wrapper {
  width: 100%;
  float: left;
  border-bottom: 2px solid #ebebeb;
}

.orders-list--main .orders__items--wrapper:after {
  content: '';
  display: table;
  clear: both;
}

.orders-list--main .orders__items--wrapper .item--heading {
  display: none;
  background: #ebebeb;
  border-bottom: 2px solid #bbb !important;
  font-weight: bold;
  color: #555;
}

.orders-list--main .orders__items--wrapper .item--heading + .item {
  border-top: 1px solid #ebebeb !important;
}

@media (min-width: 49em) {
  .orders-list--main .orders__items--wrapper .item--heading {
    display: block;
  }
}

.orders-list--main .orders__items--wrapper .item {
  width: 100%;
  position: relative;
  float: left;
  border-bottom: 1px solid #eee;
}

.orders-list--main .orders__items--wrapper .item > div {
  float: left;
}

.orders-list--main .orders__items--wrapper .item:last-of-type {
  border: 0;
}

.orders-list--main .orders__items--wrapper .item .item__box {
  padding: 12px 12px;
  padding-left: 0;
}

.orders-list--main .orders__items--wrapper .item .item__box:nth-of-type(1) {
  width: 20%;
  padding-left: 24px;
}

.orders-list--main .orders__items--wrapper .item:not(.item--summary) .item__box:nth-of-type(2) {
  width: 100%;
  text-align: right;
  padding-right: 0;
  position: absolute;
  color: #555;
  padding-bottom: 0;
}

@media (min-width: 49em) {
  .orders-list--main .orders__items--wrapper .item:not(.item--summary) .item__box:nth-of-type(2) {
    width: 20%;
    font-size: 16px;
    line-height: 1.5;
    position: relative;
    padding-bottom: 9.6px;
  }
}

.orders-list--main .orders__items--wrapper .item:not(.item--summary) .item__box:nth-of-type(1) {
  bottom: 2.0em;
  padding-left: 0;
  padding-bottom: 0;
  color: #555;
}

@media (min-width: 49em) {
  .orders-list--main .orders__items--wrapper .item:not(.item--summary) .item__box:nth-of-type(1) {
    color: #555;
    position: relative;
    bottom: 0;
    padding-left: 12px;
  }
  .orders-list--main .orders__items--wrapper .item:not(.item--summary) .item__box:nth-of-type(1):before {
    display: none;
    left: 0;
    position: relative;
  }
}

.orders-list--main .orders__items--wrapper .item .item__box:nth-of-type(3) {
  float: left;
  clear: both;
  color: #555;
  text-align: right;
}

@media (min-width: 49em) {
  .orders-list--main .orders__items--wrapper .item .item__box:nth-of-type(3) {
    clear: none;
    color: #555;
    width: 20%;
  }
  .orders-list--main .orders__items--wrapper .item .item__box:nth-of-type(3):after {
    display: none;
  }
}

.orders-list--main .orders__items--wrapper .item .item__box:nth-of-type(4) {
  text-align: right;
  float: left;
  padding-left: 0em;
  visibility: hidden;
}

.orders-list--main .orders__items--wrapper .item:not(.item--heading) .item__box:nth-of-type(4) {
  color: #555;
}

.orders-list--main .orders__items--wrapper .item .item__box:nth-of-type(5) {
  padding-right: 0;
  text-align: right;
  position: absolute;
  right: 0;
  bottom: 0;
  float: right;
}

@media (min-width: 49em) {
  .orders-list--main .orders__items--wrapper .item .item__box:nth-of-type(5) {
    padding-right: 24px;
  }
}

@media (min-width: 49em) {
  .orders-list--main .orders__items--wrapper .item {
    font-size: 16px;
    line-height: 1.5;
  }
  .orders-list--main .orders__items--wrapper .item .item__box:nth-of-type(1) {
    width: 20%;
    padding-left: 24px;
  }
  .orders-list--main .orders__items--wrapper .item .item__box:nth-of-type(4) {
    text-align: right;
    width: 20%;
    visibility: visible;
  }
  .orders-list--main .orders__items--wrapper .item:not(.item--heading) .item__box:nth-of-type(4) {
    color: #555;
  }
  .orders-list--main .orders__items--wrapper .item .item__box:nth-of-type(5) {
    text-align: right;
    top: 0;
    padding-right: 24px;
  }
}

.orders-list--main .orders__items--wrapper .item--summary .item__box {
  float: right;
  width: 100% !important;
  text-align: right;
  font-size: 21px;
  line-height: 1.71429;
  font-weight: bold;
  padding: 12px 0 24px;
  border-bottom: 0;
}

.orders-list--main .contact-info__wrapper {
  border-bottom: 2px solid #ebebeb;
  padding-bottom: 12px;
}

.orders-list--main .contact-info__wrapper:after {
  content: '';
  display: table;
  clear: both;
}

.orders-list--main .contact-info__wrapper .contact-info__wrapper--inner {
  margin-top: 0;
  float: left;
  width: 100%;
  font-size: 110%;
}

.orders-list--main .contact-info__wrapper .contact-info__wrapper--inner:last-of-type .contact-info__box:last-of-type {
  padding-bottom: 30px;
}

.orders-list--main .contact-info__wrapper .contact-info__wrapper--inner address {
  font-style: normal;
}

.orders-list--main .contact-info__wrapper .contact-info__wrapper--inner h2 {
  margin: 7.5px 0;
  margin-top: 15px;
}

@media (min-width: 49em) {
  .orders-list--main .contact-info__wrapper .contact-info__wrapper--inner {
    width: 42%;
    margin-top: 24px;
  }
}

.orders-list--main .contact-info__wrapper .contact-info__wrapper--inner .contact-info__box {
  float: left;
  clear: left;
  padding-top: 12px;
}

.orders-list--main .contact-info__wrapper .contact-info__wrapper--inner .contact-info__box .box__body {
  line-height: 140%;
}

@media (min-width: 49em) {
  .orders-list--main .contact-info__wrapper .contact-info__wrapper--inner .contact-info__box .box__body {
    padding-bottom: 12px;
  }
}

.orders-list--main .orders__action {
  margin-top: 30px;
  color: #0075ae;
}

.orders-list--main .orders__action:after {
  content: '';
  display: table;
  clear: both;
}

.orders-list--main .orders__action .action__item {
  float: left;
  clear: both;
  margin-bottom: 7.5px;
}

@media (min-width: 49em) {
  .orders-list--main .orders__action .action__item {
    clear: none;
  }
}

.orders-list--main .orders__action i {
  font-size: 1.5em;
  top: 0.15em;
  position: relative;
}

.orders-list--main .orders__action a {
  margin-right: 30px;
  padding-left: 6px;
  font-size: 21px;
  line-height: 1.71429;
}

.price {
  font-weight: bold;
  font-size: 21px;
  line-height: 1.71429;
  line-height: 50px;
  display: inline-block;
  margin-right: 12px;
}

.price--original {
  font-weight: normal;
  text-decoration: line-through;
}

.price--original + .price {
  color: #cf1708;
}

.products__list .edition-wrapper {
  padding-top: 30px;
}

.products__list .edition-wrapper:first-of-type {
  padding-top: 0;
}

.products__list .product-item {
  min-height: 64px;
}

.products__list > .products__heading {
  margin-top: 45px;
  border-top: 1px solid #ebebeb;
  padding-top: 45px;
  padding-bottom: 10px;
}

.products__list:first-child > .products__heading {
  margin-top: 45px;
  border-top: 0;
  padding-top: 0;
  padding-bottom: 10px;
}

.product-item {
  padding: 20px 0 15px;
  border-bottom: 1px solid #ebebeb;
  box-sizing: content-box;
  display: table;
  width: 100%;
}

@media (min-width: 58em) {
  .flexbox .product-item {
    display: flex;
    justify-content: space-between;
  }
  .flexbox .product-item .flag__image {
    float: left;
    margin-right: 15px;
  }
}

.product-item:last-child {
  border-bottom: 0;
}

.product-item__meta {
  display: block;
  vertical-align: top;
  position: relative;
  width: 100%;
  float: left;
}

@media (min-width: 58em) {
  .product-item__meta {
    width: auto;
    max-width: 460px;
  }
}

@media (min-width: 58em) {
  .flexbox .product-item__meta {
    flex: 1;
    max-width: none;
  }
}

.product-item__thumbnail img {
  position: absolute;
  top: 0;
}

.product-item__info {
  display: inline-block;
  padding-left: 60px;
}

.product-item__info a {
  font-size: 21px;
  line-height: 1.71429;
  line-height: 0;
}

.product-item__action {
  text-align: left;
  display: block;
  vertical-align: middle;
  padding-left: 60px;
  float: left;
}

@media (min-width: 30em) {
  .product-item__action {
    float: right;
  }
}

.product-item__action .price {
  line-height: 1.75;
  float: left;
}

@media (min-width: 30em) {
  .product-item__action .price {
    line-height: 50px;
  }
}

@media (min-width: 58em) {
  .product-item__action .price {
    float: none;
  }
}

.product-item__button .icon, .product-item__button .alert .close, .alert .product-item__button .close, .product-item__button .search-close, .product-item__button .item__list li.item--show-all a:after, .item__list li.item--show-all .product-item__button a:after, .product-item__button .basket__back-link:before, .product-item__button .basket__next-button:after, .product-item__button .button--submit:after, .product-item__button .nav.breadcrumbs li:after, .nav.breadcrumbs .product-item__button li:after, .product-item__button .bullet-list li:before, .bullet-list .product-item__button li:before, .product-item__button #filterForm .chosen-container-single .chosen-single div b, #filterForm .chosen-container-single .chosen-single div .product-item__button b, .product-item__button .order-process__item .icon:after, .order-process__item .product-item__button .icon:after, .product-item__button .selectboxit-default-arrow:after {
  margin-right: 8px;
  font-size: 130%;
  position: relative;
  top: 3px;
}

.product-item__form {
  float: right;
  width: 100%;
  clear: left;
}

@media (min-width: 30em) {
  .product-item__form {
    width: auto;
    float: right;
    clear: none;
  }
}

@media (min-width: 58em) {
  .product-item__form {
    float: right;
  }
}

.product-item__form input {
  width: 70px;
  padding: 7px 10px 5px;
  text-align: center;
  height: 50px;
  font-size: 21px;
}

.product-item__form label {
  margin: 0 6px;
}

@media (min-width: 65em) {
  .product-item__form label {
    margin-right: 12px;
  }
}

.product-item__form--left {
  float: none;
  display: inline-block;
}

.product__unit-price {
  display: inline-block;
  margin-right: 24px;
}

.product-item__remove {
  text-decoration: none;
  color: #cf1708;
  font-size: 150%;
  -webkit-appearance: none;
  appearance: none;
  background: none;
  border: 0;
  padding: 10px;
}

.products {
  padding-bottom: 30px;
  border-bottom: 2px solid #ebebeb;
}

.products:last-child {
  border-bottom: 0;
}

.products .products__list:after {
  content: '';
  display: table;
  clear: both;
}

.products__heading {
  margin-bottom: 0;
}

.products__info {
  margin-bottom: 12px;
}

.quick-contact__heading {
  margin-bottom: 8px;
}

.quick-contact__link {
  font-size: 18px;
  line-height: 1.5;
}

.quick-contact__item {
  margin-bottom: 6px;
}

@media all and (max-width: 65em) {
  .quick-contact {
    display: none !important;
  }
}

.quick-contact .icon, .quick-contact .alert .close, .alert .quick-contact .close, .quick-contact .search-close, .quick-contact .item__list li.item--show-all a:after, .item__list li.item--show-all .quick-contact a:after, .quick-contact .basket__back-link:before, .quick-contact .basket__next-button:after, .quick-contact .button--submit:after, .quick-contact .nav.breadcrumbs li:after, .nav.breadcrumbs .quick-contact li:after, .quick-contact .bullet-list li:before, .bullet-list .quick-contact li:before, .quick-contact #filterForm .chosen-container-single .chosen-single div b, #filterForm .chosen-container-single .chosen-single div .quick-contact b, .quick-contact .order-process__item .icon:after, .order-process__item .quick-contact .icon:after, .quick-contact .selectboxit-default-arrow:after {
  margin-right: 14px;
  width: 18px;
  display: inline-block;
  font-size: 120%;
  color: #0075ae;
  position: relative;
  top: 3px;
}

.quick-contact .icon-envelope {
  font-size: 140%;
  position: relative;
  top: 5px;
}

.quick-contact--big .quick-contact__link {
  font-size: 21px;
  line-height: 1.71429;
}

.quick-contact--big .icon, .quick-contact--big .alert .close, .alert .quick-contact--big .close, .quick-contact--big .search-close, .quick-contact--big .item__list li.item--show-all a:after, .item__list li.item--show-all .quick-contact--big a:after, .quick-contact--big .basket__back-link:before, .quick-contact--big .basket__next-button:after, .quick-contact--big .button--submit:after, .quick-contact--big .nav.breadcrumbs li:after, .nav.breadcrumbs .quick-contact--big li:after, .quick-contact--big .bullet-list li:before, .bullet-list .quick-contact--big li:before, .quick-contact--big #filterForm .chosen-container-single .chosen-single div b, #filterForm .chosen-container-single .chosen-single div .quick-contact--big b, .quick-contact--big .order-process__item .icon:after, .order-process__item .quick-contact--big .icon:after, .quick-contact--big .selectboxit-default-arrow:after {
  margin-right: 24px;
}

.quick-contact--big .icon-envelope {
  font-size: 180%;
  top: 7px;
}

.search__wrapper .item__list {
  margin-top: 30px;
  padding-bottom: 30px;
  border-bottom: 1px solid #ebebeb;
}

.search__wrapper .item__list:after {
  content: '';
  display: table;
  clear: both;
}

.search__wrapper .item__list li {
  padding-left: 0;
  padding-right: 0;
}

.search__wrapper .item__list .products {
  padding-bottom: 0;
}

.search__wrapper .item__list .item--header {
  border-top: 0;
  padding-top: 0;
  padding-bottom: 12px;
  font-size: 30px;
  line-height: 1.2;
}

.search__autocomplete {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

.search__autocomplete .search-close {
  display: none;
}

.search__autocomplete .site-search__wrapper {
  padding: 0;
}

.search__autocomplete .site-search__wrapper::before {
  top: 13px;
  right: 15px;
}

.search__autocomplete .search__autocomplete-title {
  margin-bottom: 12px;
}

@media (min-width: 30em) {
  .search__autocomplete {
    flex-wrap: nowrap;
  }
  .search__autocomplete .search__autocomplete-title {
    margin-bottom: 0;
  }
}

.search__autocomplete-input {
  flex: 1 0 0;
}

@media (min-width: 30em) {
  .search__autocomplete-input {
    padding-left: 30px;
    max-width: 460px;
  }
}

.search__autocomplete-title {
  flex: 0 0 100%;
}

@media (min-width: 30em) {
  .search__autocomplete-title {
    flex: 0 0 auto;
  }
}

.section--horizontal {
  padding: 30px 0;
}

.section--highlight {
  border: 1px solid #f2f0ea;
  background-color: #fffdf8;
  padding: 0 30px 30px;
}

@media (min-width: 49em) {
  .section--highlight {
    padding: 30px 0 60px;
    margin-top: 30px;
  }
}

@media (min-width: 49em) {
  .section--highlight__heading {
    text-align: center;
  }
}

.section--testimonial {
  padding-top: 30px;
  border-bottom: 1px solid #ebebeb;
}

.section--cta {
  padding: 30px 0;
  text-align: center;
  border-top: 1px solid #ebebeb;
}

/*
 * jquery.selectBoxIt.css 3.8.1
 * Author: @gregfranko
 */
/*
  Common CSS Properties
  ---------------------
  These properties will be applied to any themes that you use
*/
/* SelectBoxIt container */
.selectboxit-container {
  position: relative;
  display: inline-block;
  vertical-align: top;
  float: left;
  margin-top: 12px;
  margin-left: 12px;
}

/* Styles that apply to all SelectBoxIt elements */
.selectboxit-container * {
  font: 14px Helvetica, Arial;
  /* Prevents text selection */
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: -moz-none;
  -ms-user-select: none;
  -o-user-select: none;
  user-select: none;
  outline: none;
  white-space: nowrap;
}

/* Button */
.selectboxit-container .selectboxit {
  cursor: pointer;
  margin: 0;
  padding: 0;
  border-radius: 3px;
  overflow: hidden;
  display: block;
  position: relative;
}

/* Height and Vertical Alignment of Text */
.selectboxit-container span, .selectboxit-container .selectboxit-options a {
  height: 48px;
  /* Height of the drop down */
  line-height: 48px;
  /* Vertically positions the drop down text */
  display: block;
}

/* Focus pseudo selector */
.selectboxit-container .selectboxit:focus {
  outline: 0;
}

/* Disabled Mouse Interaction */
.selectboxit.selectboxit-disabled, .selectboxit-options .selectboxit-disabled {
  opacity: 0.65;
  filter: alpha(opacity=65);
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
  cursor: default;
}

/* Button Text */
.selectboxit-text {
  text-indent: 5px;
  overflow: hidden;
  text-overflow: ellipsis;
  font-weight: bold;
  float: left;
}

.selectboxit .selectboxit-option-icon-container {
  margin-left: 5px;
}

/* Options List */
.selectboxit-container .selectboxit-options {
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  min-width: 100%;
  /* Minimum Width of the dropdown list box options */
  *width: 100%;
  margin: 0;
  padding: 0;
  list-style: none;
  position: absolute;
  overflow-x: hidden;
  overflow-y: auto;
  cursor: pointer;
  display: none;
  z-index: 9999999999999;
  border-radius: 3px;
  text-align: left;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
}

/* Individual options */
.selectboxit-option .selectboxit-option-anchor {
  padding: 0 2px;
}

/* Individual Option Hover Action */
.selectboxit-option .selectboxit-option-anchor:hover {
  text-decoration: none;
}

/* Individual Option Optgroup Header */
.selectboxit-option, .selectboxit-optgroup-header {
  text-indent: 5px;
  /* Horizontal Positioning of the select box option text */
  margin: 0;
  list-style-type: none;
}

/* The first Drop Down option */
.selectboxit-option-first {
  border-top-right-radius: 3px;
  border-top-left-radius: 3px;
}

/* The first Drop Down option optgroup */
.selectboxit-optgroup-header + .selectboxit-option-first {
  border-top-right-radius: 0px;
  border-top-left-radius: 0px;
}

/* The last Drop Down option */
.selectboxit-option-last {
  border-bottom-right-radius: 3px;
  border-bottom-left-radius: 3px;
}

/* Drop Down optgroup headers */
.selectboxit-optgroup-header {
  font-weight: bold;
}

/* Drop Down optgroup header hover psuedo class */
.selectboxit-optgroup-header:hover {
  cursor: default;
}

/* Drop Down down arrow container */
.selectboxit-arrow-container {
  /* Positions the down arrow */
  width: 30px;
  position: absolute;
  right: 0;
}

/* Drop Down down arrow */
.selectboxit .selectboxit-arrow-container .selectboxit-arrow {
  /* Horizontally centers the down arrow */
  margin: 0 auto;
  position: absolute;
  top: 50%;
  right: 0;
  left: 0;
}

/* Drop Down down arrow for jQueryUI and jQuery Mobile */
.selectboxit .selectboxit-arrow-container .selectboxit-arrow.ui-icon {
  top: 30%;
}

/* Drop Down individual option icon positioning */
.selectboxit-option-icon-container {
  float: left;
}

.selectboxit-container .selectboxit-option-icon {
  margin: 0;
  padding: 0;
  vertical-align: middle;
}

/* Drop Down individual option icon positioning */
.selectboxit-option-icon-url {
  width: 18px;
  background-size: 18px 18px;
  background-repeat: no-repeat;
  height: 100%;
  background-position: center;
  float: left;
}

.selectboxit-rendering {
  display: inline-block !important;
  *display: inline !important;
  zoom: 1 !important;
  visibility: visible !important;
  position: absolute !important;
  top: -9999px !important;
  left: -9999px !important;
}

/* jQueryUI and jQuery Mobile compatability fix - Feel free to remove this style if you are not using jQuery Mobile */
.jqueryui .ui-icon {
  background-color: inherit;
}

/* Another jQueryUI and jQuery Mobile compatability fix - Feel free to remove this style if you are not using jQuery Mobile */
.jqueryui .ui-icon-triangle-1-s {
  background-position: -64px -16px;
}

/*
  Default Theme
  -------------
  Note: Feel free to remove all of the CSS underneath this line if you are not using the default theme
*/
.selectboxit-btn {
  transition: background 0.3s, border 0.3s;
  min-width: 160px;
  font-weight: bold;
  background-color: #fff;
  border: 1px solid #e5e5e5;
}

.selectboxit-btn.selectboxit-enabled:hover,
.selectboxit-btn.selectboxit-enabled:focus,
.selectboxit-btn.selectboxit-enabled:active {
  color: #333333;
  background-color: #e6e6e6;
  transition: background 0.3s, border 0.3s;
}

.selectboxit-btn.selectboxit-enabled:hover,
.selectboxit-btn.selectboxit-enabled:focus {
  color: #333333;
  text-decoration: none;
  background-position: 0 -15px;
}

.selectboxit-default-arrow {
  width: 0;
  height: 0;
}

.selectboxit-default-arrow:after {
  bottom: 0.5em;
  right: 12px;
  font-size: 1.25em;
  position: relative;
  font-weight: normal;
  color: #555;
  content: "";
}

.selectboxit-list {
  background-color: #ffffff;
  border: 1px solid #ccc;
  border: 1px solid rgba(0, 0, 0, 0.2);
}

.selectboxit-list .selectboxit-option-anchor {
  text-decoration: none;
  color: #333333;
}

.selectboxit-list > .selectboxit-focus > .selectboxit-option-anchor {
  color: #ffffff;
  background-color: #0075ae;
}

.selectboxit-list > .selectboxit-disabled > .selectboxit-option-anchor {
  color: #999999;
}

.selectboxit-container .selectboxit-options {
  /* Set's the drop down options width to the same width as the drop down button */
  /* Set's the max-height property to only show a subset of the drop down items.
       If you do not set a max-height property, SelectBoxIt will dynamically
       position the dropdown (when opened) to make sure the drop down items are not
       displayed outside of the current window viewport.
    */
  width: auto;
}

.site-footer {
  font-size: 15px;
  line-height: 2.4;
  margin-top: 48px;
  background: #333;
  color: #fff;
  padding: 30px 0 30px;
}

.site-footer a {
  color: #fff;
}

.site-footer .nav {
  margin-bottom: 15px;
}

@media (min-width: 49em) {
  .site-footer .nav + .footer-menu--contact {
    margin-bottom: 0;
  }
}

@media (min-width: 49em) {
  .site-footer .footer-menu {
    display: none;
  }
}

.site-footer .footer-menu .footer-menu__item {
  float: left;
  clear: left;
}

@media (min-width: 49em) {
  .site-footer .footer-menu--contact {
    position: absolute;
    left: 100px;
  }
  .site-footer .footer-menu--contact .site-footer__item {
    float: left;
    clear: none;
  }
}

.site-footer .footer-menu--contact .site-footer__item:last-child {
  display: none;
}

@media (min-width: 49em) {
  .site-footer .footer-menu--contact .site-footer__item:last-child {
    display: inherit;
  }
}

.site-footer__item {
  font-size: 15px;
  line-height: 2.4;
  padding: 2px 24px;
  margin-left: -24px;
  float: left;
  clear: left;
}

@media (min-width: 49em) {
  .site-footer__item .site-footer__logo + span {
    display: none;
  }
}

@media (min-width: 65em) {
  .site-footer__item:first-child {
    display: inline-block;
  }
}

.site-footer__item .icon, .site-footer__item .alert .close, .alert .site-footer__item .close, .site-footer__item .search-close, .site-footer__item .item__list li.item--show-all a:after, .item__list li.item--show-all .site-footer__item a:after, .site-footer__item .basket__back-link:before, .site-footer__item .basket__next-button:after, .site-footer__item .button--submit:after, .site-footer__item .nav.breadcrumbs li:after, .nav.breadcrumbs .site-footer__item li:after, .site-footer__item .bullet-list li:before, .bullet-list .site-footer__item li:before, .site-footer__item #filterForm .chosen-container-single .chosen-single div b, #filterForm .chosen-container-single .chosen-single div .site-footer__item b, .site-footer__item .order-process__item .icon:after, .order-process__item .site-footer__item .icon:after, .site-footer__item .selectboxit-default-arrow:after {
  margin-right: 8px;
}

.site-footer__logo {
  margin-right: 24px;
  float: left;
  position: relative;
  top: -4px;
  max-height: 40px;
}

@media (min-width: 65em) {
  .site-footer__logo {
    margin-right: 0;
  }
}

.site-left-nav {
  list-style-type: none;
  width: 100%;
  position: absolute;
  left: 0;
  z-index: 80;
  top: -2px;
  border: 2px solid #cfe1e7;
  background: #f0f7fa;
  padding-left: 12px;
  transition: background 0.4s ease-in-out;
  margin-bottom: 20px;
}

.site-left-nav.no-icons {
  padding-left: 0;
}

.site-left-nav.no-icons .site-left-nav__item a {
  margin-left: 12px;
}

.site-left-nav.no-icons .site-left-nav__item a::before {
  display: none;
}

@media (min-width: 49em) {
  .site-left-nav {
    border-radius: 3px;
    border-top-left-radius: 0;
  }
}

@media (min-width: 65em) {
  .site-left-nav {
    position: relative;
    border-top-left-radius: 3px;
  }
}

.site-left-nav > li:first-child {
  border-top: 0;
}

.site-left-nav ul {
  list-style-type: none;
  margin-bottom: 0;
  padding-left: 32px;
}

.site-left-nav ul ul ul li.site-left-nav__item {
  border: 0;
}

.site-left-nav ul ul ul li.site-left-nav__item:last-of-type {
  padding-bottom: 11px;
}

.site-left-nav ul ul ul li.site-left-nav__item a {
  padding: 2px 0;
  position: relative;
  margin-left: 0;
}

.site-left-nav ul ul ul li.site-left-nav__item a:before {
  display: none;
}

.site-left-nav ul ul ul li.site-left-nav__item.current a {
  color: #333;
}

.site-left-nav li {
  border-top: 1px solid #cfe1e7;
}

.site-left-nav li.site-left-nav__item a {
  text-decoration: none;
  display: block;
  padding: 11px 12px 11px 0;
  position: relative;
  margin-left: 32px;
}

.site-left-nav li.site-left-nav__item a:hover, .site-left-nav li.site-left-nav__item a:focus, .site-left-nav li.site-left-nav__item a:active {
  color: #cf1708;
}

.site-left-nav li.site-left-nav__item a:before {
  font-family: 'ucebniceVanicek' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "";
  width: 32px;
  height: 32px;
  font-size: 1.25em;
  top: 6px;
  position: absolute;
  margin-left: -32px;
}

.site-left-nav li.site-left-nav__item--no-child a:before {
  display: none;
}

.site-left-nav li.current > a {
  font-weight: bold;
}

.site-left-nav li.current > a:before {
  content: "";
}

.site-logo {
  float: left;
  margin-right: 24px;
  position: relative;
  top: -4px;
  padding: 5px 0;
}

.site-logo--compact {
  padding: 0;
  max-height: 67px;
}

@media (min-width: 65em) {
  .site-logo--compact {
    padding-left: 15px;
  }
}

.site-nav-tab {
  text-align: center;
  border-bottom: 2px solid #ebebeb;
  margin-bottom: 30px;
}

.site-nav-tab__item {
  font-size: 18px;
  line-height: 1.5;
  width: 49%;
  box-sizing: border-box;
  padding: 20px 15px;
  border: 2px solid #ebebeb;
  border-bottom: 0;
  background-color: #f6f6f6;
  font-weight: normal;
  cursor: pointer;
}

.site-nav-tab__item .site-nav-tab__link {
  color: #333;
  font-weight: bold;
  text-decoration: none;
}

@media (min-width: 49em) {
  .site-nav-tab__item {
    font-size: 24px;
    line-height: 1.5;
    width: auto;
    padding: 24px 30px;
  }
  .site-nav-tab__item .site-nav-tab__link {
    color: #0075ae;
    font-weight: normal;
    text-decoration: underline;
  }
}

@media (min-width: 65em) {
  .site-nav-tab__item {
    font-size: 30px;
    line-height: 1.2;
  }
}

.site-nav-tab__item--active {
  background-color: white;
  border: 0;
}

.site-nav-tab__item--active .site-nav-tab__link {
  color: #333;
  text-decoration: none;
}

.nav-tab__content--hide {
  display: none;
}

.site-search {
  font-size: 15px;
  line-height: 2.4;
  padding: 6px 17px;
  float: left;
  width: 40%;
}

.site-top-nav--row1 {
  border-bottom: 1px solid #ebebeb;
  padding: 0;
}

.site-top-nav--row1 .top-menu__item {
  padding: 7.5px 4px;
}

.site-top-nav--row1 .top-menu__item:first-of-type {
  padding-left: 0;
}

.site-top-nav--row1 .top-menu__item.hidden {
  display: none;
}

@media (min-width: 49em) {
  .site-top-nav--row1 .top-menu__item.hidden {
    display: inline-block;
  }
}

.site-top-nav--row1 .top-menu__item .top-menu__link {
  text-decoration: none;
}

.site-top-nav--row1 .top-menu__item .top-menu__link .hidden {
  display: none;
}

@media (min-width: 49em) {
  .site-top-nav--row1 .top-menu__item .top-menu__link .hidden {
    display: inline-block;
    text-decoration: inherit;
  }
}

@media (min-width: 49em) {
  .site-top-nav--row1 .top-menu__item .top-menu__link {
    text-decoration: underline;
  }
}

@media (min-width: 49em) {
  .site-top-nav--row1 .account {
    display: block;
  }
}

.site-top-nav--row1 + .site-top-nav--row2 {
  padding: 0;
}

.site-top-nav--row2 {
  text-align: center;
  display: table;
  width: 100%;
  border-bottom: 2px solid #ebebeb;
  padding: 24px 0 12px;
}

.site-top-nav--row2 .wrapper {
  display: table-row;
}

@media (min-width: 65em) {
  .site-top-nav--row2 .wrapper {
    display: table;
    width: 100%;
  }
}

.site-top-nav--row2 .basket-button__wrapper {
  width: 0;
  white-space: nowrap;
  vertical-align: middle;
  padding-right: 30px;
  padding-left: 24px;
  display: none;
}

@media (min-width: 49em) {
  .site-top-nav--row2 .basket-button__wrapper {
    display: table-cell;
  }
}

@media (min-width: 65em) {
  .site-top-nav--row2 .basket-button__wrapper {
    padding-right: 0;
  }
}

.site-top-nav--row2 .button__mobile {
  vertical-align: middle;
  display: table-cell;
  text-decoration: none;
  border-right: 1px solid #ebebeb;
}

.site-top-nav--row2 .button__mobile.button__mobile--search, .site-top-nav--row2 .button__mobile.button__mobile--basket {
  padding: 0 15px;
  font-size: 24px;
  line-height: 1.5;
  border-right: 1px solid #ebebeb;
}

@media (min-width: 49em) {
  .site-top-nav--row2 .button__mobile.button__mobile--search, .site-top-nav--row2 .button__mobile.button__mobile--basket {
    display: none;
  }
}

.site-top-nav--row2 .button__mobile.button__mobile-menu--active {
  background: #f0f7fa;
}

.site-top-nav--row2 .button__mobile.button__mobile-menu--active i:before {
  content: "";
}

.site-top-nav--row2 .button__mobile.button__mobile--basket {
  color: #cf1708;
}

.site-top-nav--row2 .button__mobile.button__mobile--basket:active, .site-top-nav--row2 .button__mobile.button__mobile--basket:hover, .site-top-nav--row2 .button__mobile.button__mobile--basket:focus {
  color: #0075ae;
}

.site-top-nav--row2 .button__mobile.button__mobile--menu {
  padding: 12px 24px;
  width: 0;
  font-weight: bold;
}

.site-top-nav--row2 .button__mobile.button__mobile--menu .icon, .site-top-nav--row2 .button__mobile.button__mobile--menu .alert .close, .alert .site-top-nav--row2 .button__mobile.button__mobile--menu .close, .site-top-nav--row2 .button__mobile.button__mobile--menu .search-close, .site-top-nav--row2 .button__mobile.button__mobile--menu .item__list li.item--show-all a:after, .item__list li.item--show-all .site-top-nav--row2 .button__mobile.button__mobile--menu a:after, .site-top-nav--row2 .button__mobile.button__mobile--menu .basket__back-link:before, .site-top-nav--row2 .button__mobile.button__mobile--menu .basket__next-button:after, .site-top-nav--row2 .button__mobile.button__mobile--menu .button--submit:after, .site-top-nav--row2 .button__mobile.button__mobile--menu .nav.breadcrumbs li:after, .nav.breadcrumbs .site-top-nav--row2 .button__mobile.button__mobile--menu li:after, .site-top-nav--row2 .button__mobile.button__mobile--menu .bullet-list li:before, .bullet-list .site-top-nav--row2 .button__mobile.button__mobile--menu li:before, .site-top-nav--row2 .button__mobile.button__mobile--menu #filterForm .chosen-container-single .chosen-single div b, #filterForm .chosen-container-single .chosen-single div .site-top-nav--row2 .button__mobile.button__mobile--menu b, .site-top-nav--row2 .button__mobile.button__mobile--menu .order-process__item .icon:after, .order-process__item .site-top-nav--row2 .button__mobile.button__mobile--menu .icon:after, .site-top-nav--row2 .button__mobile.button__mobile--menu .selectboxit-default-arrow:after {
  font-size: 21px;
  line-height: 1.71429;
  margin-right: 5px;
  top: 2px;
  position: relative;
  line-height: 0;
}

@media (min-width: 65em) {
  .site-top-nav--row2 .button__mobile.button__mobile--menu {
    display: none;
  }
}

.site-top-nav--row2 .basket-button {
  display: none;
}

@media (min-width: 49em) {
  .site-top-nav--row2 .basket-button {
    display: block;
  }
}

.site-top-nav--row2 .site-logo__wrapper {
  display: table-cell;
  border-right: 1px solid #ebebeb;
  width: 100%;
}

.site-top-nav--row2 .site-logo__wrapper .site-logo {
  float: none;
  display: block;
  position: relative;
  top: 0;
  max-height: 30px;
  margin: 12px auto;
}

@media (min-width: 49em) {
  .site-top-nav--row2 .site-logo__wrapper {
    border-right: 0;
    width: 0;
  }
  .site-top-nav--row2 .site-logo__wrapper .site-logo {
    max-width: none;
    max-height: 48px;
    margin: 14px 24px;
  }
}

@media (min-width: 49em) and (min-width: 65em) {
  .site-top-nav--row2 .site-logo__wrapper .site-logo {
    margin-left: 0;
    max-height: 66px;
  }
}

.terms {
  margin: 0 auto;
  max-width: 720px;
}

.terms ul {
  padding-left: 1em;
}

.testimonial {
  font-size: 15px;
  line-height: 1.2;
}

@media (min-width: 49em) {
  .testimonial {
    position: relative;
  }
}

.testimonial--border {
  border-bottom: 1px solid #ebebeb;
  margin-top: 24px;
}

.testimonial--border > .section--testimonial {
  border-bottom: 0;
}

.testimonial__wrapper {
  padding: 0 !important;
  vertical-align: bottom;
}

.testimonial__wrapper .media-object__body, .testimonial__wrapper .detail__body {
  display: table-cell;
  padding-bottom: 24px;
}

@media (min-width: 49em) {
  .testimonial__wrapper .media-object__body, .testimonial__wrapper .detail__body {
    padding-bottom: 0;
  }
}

.testimonial__wrapper .testimonial__photo--wrapper {
  display: table-cell;
  vertical-align: bottom;
  width: 100px;
  padding-left: 12px;
}

@media (min-width: 49em) {
  .testimonial__wrapper .testimonial__photo--wrapper {
    width: 200px;
    position: absolute;
    bottom: 0;
    right: 0;
    padding-left: 0;
  }
}

@media (min-width: 65em) {
  .testimonial__wrapper .testimonial__photo--wrapper {
    width: 300px;
    padding-right: 0;
  }
}

.testimonial--center {
  float: none;
  width: 100%;
}

.testimonial--center .flag-object__body {
  vertical-align: top;
}

.testimonial--center .testimonial__heading {
  font-size: 30px;
  line-height: 1.2;
}

@media (min-width: 49em) {
  .testimonial--center .testimonial__photo {
    margin-left: 24px;
    margin-right: 0;
  }
}

.testimonial-column {
  width: 100%;
  margin-bottom: 30px;
}

@media (min-width: 49em) {
  .testimonial-column {
    float: left;
    width: 38.36453%;
    margin: 0 5.222735%;
  }
}

.testimonial-column:last-child {
  margin-bottom: 0;
}

.testimonial__heading {
  margin-bottom: 10px;
}

.testimonial__text {
  margin-bottom: 30px;
}

.testimonial__photo {
  margin-right: 0;
  max-width: 100%;
  padding-right: 65px;
}

@media (min-width: 49em) {
  .testimonial__photo {
    float: right;
  }
}

.testimonial__body {
  font-size: 18px;
  line-height: 1.5;
  font-style: italic;
  display: block;
  margin-bottom: 12px;
}

.section--highlight .testimonial__body {
  margin-bottom: 0;
}

@media (min-width: 49em) {
  .section--highlight .testimonial__body {
    margin-bottom: 12px;
  }
}

.testimonial__body:before {
  content: '\201C';
}

.testimonial__body:after {
  content: '\201D';
}

.testimonial__author {
  display: block;
  font-size: 15px;
}

.cena-hejtmana__img {
  position: absolute;
  top: 0;
  right: 0;
}

.top-menu {
  float: left;
}

.top-menu li {
  padding-left: 6px;
  padding-right: 6px;
}

.top-menu__link {
  font-size: 15px;
  line-height: 2.4;
  padding: 0px 3px;
  margin-left: -6px;
}

.user.breadcrumbs {
  margin-bottom: 0;
  width: 100%;
  border-bottom: 2px solid #ebebeb;
  padding: 15px 0;
}

.user.breadcrumbs:after {
  content: '';
  display: table;
  clear: both;
}

@media (min-width: 65em) {
  .user.breadcrumbs {
    display: none;
  }
}

.user.breadcrumbs .breadcrumbs__item {
  display: block;
  list-style-type: none;
  float: left;
  padding: 0 15px;
}

.user.breadcrumbs .breadcrumbs__item:first-of-type {
  padding-left: 0;
}

.usp__item {
  text-align: center;
  float: left;
  width: 100%;
  margin-bottom: 30px;
}

@media (min-width: 49em) {
  .usp__item {
    width: 31.49171%;
    margin-left: 2.463054187%;
    margin-bottom: 0;
  }
  .usp__item:first-of-type {
    margin-left: 0;
  }
}

.usp__number {
  font-size: 24px;
  line-height: 1.5;
  font-weight: bold;
  display: block;
}

@media (min-width: 49em) {
  .usp__number {
    font-size: 30px;
    line-height: 1.2;
  }
}

@media (min-width: 65em) {
  .usp__number {
    font-size: 48px;
    line-height: 1.125;
  }
}

.usp__note {
  font-size: 30px;
  line-height: 1.2;
  display: block;
  font-size: 18px;
  line-height: 1.5;
  line-height: 1em;
}

@media (min-width: 49em) {
  .usp__note {
    font-size: 16px;
    line-height: 1.5;
  }
}

/* ---------------------------------------------
    SHAME, OVERRIDES
    ------------------------------------------- */
/* ---------------------------------------------
1.0 BROWSER HELPERS
Specific, simple & agnostic classes useful for kickstart any project.
Add class to html where needed.
------------------------------------------- */
.screen-reader-text,
.vishid {
  width: 1px;
  height: 1px;
  overflow: hidden;
  position: absolute;
  padding: 0;
  margin: -1px;
  border: 0;
  clip: rect(0 0 0 0);
}

.u-relative-container {
  position: relative;
}

.u-relative-container:after {
  content: '';
  display: table;
  clear: both;
}

.u-group:after {
  content: '';
  display: table;
  clear: both;
}

.u-center {
  text-align: center;
}

.u-medium-up {
  display: none;
}

@media (min-width: 49em) {
  .u-medium-up {
    display: block;
  }
}

.hidden--mobile {
  display: none;
}

@media (min-width: 49em) {
  .hidden--mobile {
    display: inherit;
  }
}

@media (min-width: 49em) {
  .hidden--tablet {
    display: none;
  }
}

@media (min-width: 65em) {
  .hide--desktop {
    display: none !important;
  }
}

/* ---------------------------------------------
  Shame
  - this is place for code we're not very proud of. The code which feels dirty but you don't know/don't have time to deal with it at the moment.
  - it should be refactored someday later
  - it lives here so it won't get forgotten
  - if there is nothing in this file, well done champs! :)
  ------------------------------------------- */
.basket .product-item__meta {
  display: table-cell;
  vertical-align: middle;
  width: 100%;
}

.basket .product-item__meta .flag {
  display: table;
  width: 100%;
}

.basket .product-item__meta .flag span {
  font-weight: bold;
}

.basket .product-item__meta .flag .flag__image {
  padding-right: 10px;
}

.basket .product-item__meta .flag .flag__image > img {
  display: block;
  min-width: none;
}

.basket .product-item__meta .flag .flag__body {
  display: table-cell;
}

.basket .product-item__meta .flag .flag__body a {
  font-size: 21px;
  line-height: 1.71429;
  line-height: 0;
}

.basket .product-item__meta > .flag .flag__body {
  width: 100%;
}

.basket .product-item__action {
  white-space: nowrap;
}

.basket .product-item__remove {
  text-decoration: none;
  color: #cf1708;
  font-size: 150%;
  -webkit-appearance: none;
  appearance: none;
  background: none;
  border: 0;
}

.section--horizontal.onas-header {
  padding-bottom: 0;
}

@media (min-width: 49em) {
  .section--horizontal.onas-header {
    padding-bottom: 30px;
  }
}

.section--horizontal.onas-header h1 {
  margin-bottom: 0;
}

.section--cta .heading--beta {
  margin-top: 0;
}

@media (min-width: 49em) {
  .section--cta .heading--beta {
    margin-top: 24px;
  }
}

/* ---------------------------------------------
  X.X @Dev
  This file is for developing only
  ------------------------------------------- */
.dev-nav {
  position: absolute;
  bottom: -30px;
  left: 0;
  right: 0;
  top: -30px;
  padding: 30px 0;
  background: #333;
  opacity: 0;
  width: 50%;
}

.dev-nav:hover {
  opacity: 1;
}

.dev-nav li:after {
  content: '/';
  margin-right: 1em;
}

.dev-nav a {
  text-decoration: none;
}

.dev-nav a:hover {
  text-decoration: underline;
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUuY3NzIiwic291cmNlcyI6WyJzdHlsZS5zY3NzIiwidXRpbHMvX2NvbmZpZy5zY3NzIiwidXRpbHMvX21peGlucy5zY3NzIiwidXRpbHMvX2ljb25mb250LnNjc3MiLCJ1dGlscy9faWNvbi12YXJpYWJsZXMuc2NzcyIsImJhc2UvX25vcm1hbGl6ZS5zY3NzIiwiYmFzZS9fdHlwb2dyYXBoeS5zY3NzIiwiYmFzZS9fZ3JpZC5zY3NzIiwiYmFzZS9fYmFzZS5zY3NzIiwibW9kdWxlcy9fYWJvdXQtdXMuc2NzcyIsIm1vZHVsZXMvX2FjY291bnQuc2NzcyIsIm1vZHVsZXMvX2FqYXgtY29tcG9uZW50cy5zY3NzIiwibW9kdWxlcy9fYWxlcnQuc2NzcyIsIm1vZHVsZXMvX2F1dG9jb21wbGV0ZS5zY3NzIiwibW9kdWxlcy9fYmFjay10by10b3Auc2NzcyIsIm1vZHVsZXMvX2Jhbm5lci5zY3NzIiwibW9kdWxlcy9fYmFza2V0LWJ1dHRvbi5zY3NzIiwibW9kdWxlcy9fYmFza2V0LWhlYWRlci5zY3NzIiwibW9kdWxlcy9fYmFza2V0LWl0ZW0uc2NzcyIsIm1vZHVsZXMvX2Jhc2tldC1zdGVwcy5zY3NzIiwibW9kdWxlcy9fYmFza2V0LnNjc3MiLCJtb2R1bGVzL19icmVhZGNydW1icy5zY3NzIiwibW9kdWxlcy9fYnVsbGV0LWxpc3Quc2NzcyIsIm1vZHVsZXMvX2J1dHRvbi5zY3NzIiwibW9kdWxlcy9fY2F0ZWdvcnktYWN0aW9ucy5zY3NzIiwibW9kdWxlcy9fY2F0ZWdvcnktZmlsdGVyLnNjc3MiLCJtb2R1bGVzL19jaGFuY2Uuc2NzcyIsIm1vZHVsZXMvX2NvbnRhY3QtYm94LnNjc3MiLCJtb2R1bGVzL19jb250YWN0LWluZm8uc2NzcyIsIm1vZHVsZXMvX2N1c3RvbWVyLnNjc3MiLCJtb2R1bGVzL19kZXRhaWwuc2NzcyIsIm1vZHVsZXMvX2ZpbHRlci1mb3JtLnNjc3MiLCJtb2R1bGVzL19mbGFnLW9iamVjdC5zY3NzIiwibW9kdWxlcy9fZmxhZy5zY3NzIiwibW9kdWxlcy9fZm9ybS0tbG9naW4uc2NzcyIsIm1vZHVsZXMvX2Zvcm0tLXBhc3N3b3JkLnNjc3MiLCJtb2R1bGVzL19mb3JtLS1yZWdpc3Rlci5zY3NzIiwibW9kdWxlcy9fZm9ybS1oZWFkaW5nLnNjc3MiLCJtb2R1bGVzL19mb3JtLnNjc3MiLCJtb2R1bGVzL19pbmxpbmUtbGFiZWwuc2NzcyIsIm1vZHVsZXMvX2lucHV0LnNjc3MiLCJtb2R1bGVzL19sYWJlbC5zY3NzIiwibW9kdWxlcy9fbGF5b3V0LnNjc3MiLCJtb2R1bGVzL19sZWdhbC1wcmludC5zY3NzIiwibW9kdWxlcy9fbGluay1yaWdodC5zY3NzIiwibW9kdWxlcy9fbWFpbi1uZXdzLnNjc3MiLCJtb2R1bGVzL19tYXAuc2NzcyIsIm1vZHVsZXMvX21lZGlhLW9iamVjdC5zY3NzIiwibW9kdWxlcy9fbmF2LnNjc3MiLCJtb2R1bGVzL19uZXdzLnNjc3MiLCJtb2R1bGVzL19vcmRlci1kZXRhaWxzLnNjc3MiLCJtb2R1bGVzL19vcmRlci1sZWZ0LW5hdi5zY3NzIiwibW9kdWxlcy9fb3JkZXItcHJvY2Nlcy5zY3NzIiwibW9kdWxlcy9fb3JkZXItc3RlcC0yLnNjc3MiLCJtb2R1bGVzL19vcmRlci1zdGVwLTMuc2NzcyIsIm1vZHVsZXMvX29yZGVyLXN0ZXAtNC5zY3NzIiwibW9kdWxlcy9fb3JkZXJzLWxpc3Quc2NzcyIsIm1vZHVsZXMvX3ByaWNlLnNjc3MiLCJtb2R1bGVzL19wcm9kdWN0LWl0ZW0uc2NzcyIsIm1vZHVsZXMvX3Byb2R1Y3RzLnNjc3MiLCJtb2R1bGVzL19xdWljay1jb250YWN0LnNjc3MiLCJtb2R1bGVzL19zZWFyY2gtcmVzdWx0cy5zY3NzIiwibW9kdWxlcy9fc2VjdGlvbi5zY3NzIiwibW9kdWxlcy9fU2VsZWN0Qm94SXQuc2NzcyIsIm1vZHVsZXMvX3NpdGUtZm9vdGVyLnNjc3MiLCJtb2R1bGVzL19zaXRlLWxlZnQtbmF2LnNjc3MiLCJtb2R1bGVzL19zaXRlLWxvZ28uc2NzcyIsIm1vZHVsZXMvX3NpdGUtbmF2LXRhYi5zY3NzIiwibW9kdWxlcy9fc2l0ZS1zZWFyY2guc2NzcyIsIm1vZHVsZXMvX3NpdGUtdG9wLW5hdi5zY3NzIiwibW9kdWxlcy9fdGVybXMuc2NzcyIsIm1vZHVsZXMvX3Rlc3RpbW9uaWFsLnNjc3MiLCJtb2R1bGVzL190b3AtbWVudS5zY3NzIiwibW9kdWxlcy9fdXNlci1icmVhZGNydW1iLnNjc3MiLCJtb2R1bGVzL191c3Auc2NzcyIsInV0aWxzL191dGlsaXRpZXMuc2NzcyIsInV0aWxzL19zaGFtZS5zY3NzIiwidXRpbHMvX2Rldi5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIkBjaGFyc2V0ICdVVEYtOCc7XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFNFVFRJTkdTXG4gICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQGltcG9ydCAndXRpbHMvY29uZmlnJztcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFVUSUxJVElFU1xuICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBpbXBvcnQgJ3V0aWxzL21peGlucyc7XG5AaW1wb3J0ICd1dGlscy9pY29uZm9udCc7XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEJBU0UsIEdMT0JBTFNcbiAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AaW1wb3J0ICdiYXNlL25vcm1hbGl6ZSc7XG5AaW1wb3J0ICdiYXNlL3R5cG9ncmFwaHknO1xuQGltcG9ydCAnYmFzZS9ncmlkJztcbkBpbXBvcnQgJ2Jhc2UvYmFzZSc7XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIE1PRFVMRVNcbiAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vLyBjc3NHbG9iYmluZ0JlZ2luXG5AaW1wb3J0ICdtb2R1bGVzL2Fib3V0LXVzJztcbkBpbXBvcnQgJ21vZHVsZXMvYWNjb3VudCc7XG5AaW1wb3J0ICdtb2R1bGVzL2FqYXgtY29tcG9uZW50cyc7XG5AaW1wb3J0ICdtb2R1bGVzL2FsZXJ0JztcbkBpbXBvcnQgJ21vZHVsZXMvYXV0b2NvbXBsZXRlJztcbkBpbXBvcnQgJ21vZHVsZXMvYmFjay10by10b3AnO1xuQGltcG9ydCAnbW9kdWxlcy9iYW5uZXInO1xuQGltcG9ydCAnbW9kdWxlcy9iYXNrZXQtYnV0dG9uJztcbkBpbXBvcnQgJ21vZHVsZXMvYmFza2V0LWhlYWRlcic7XG5AaW1wb3J0ICdtb2R1bGVzL2Jhc2tldC1pdGVtJztcbkBpbXBvcnQgJ21vZHVsZXMvYmFza2V0LXN0ZXBzJztcbkBpbXBvcnQgJ21vZHVsZXMvYmFza2V0JztcbkBpbXBvcnQgJ21vZHVsZXMvYnJlYWRjcnVtYnMnO1xuQGltcG9ydCAnbW9kdWxlcy9idWxsZXQtbGlzdCc7XG5AaW1wb3J0ICdtb2R1bGVzL2J1dHRvbic7XG5AaW1wb3J0ICdtb2R1bGVzL2NhdGVnb3J5LWFjdGlvbnMnO1xuQGltcG9ydCAnbW9kdWxlcy9jYXRlZ29yeS1maWx0ZXInO1xuQGltcG9ydCAnbW9kdWxlcy9jaGFuY2UnO1xuQGltcG9ydCAnbW9kdWxlcy9jb250YWN0LWJveCc7XG5AaW1wb3J0ICdtb2R1bGVzL2NvbnRhY3QtaW5mbyc7XG5AaW1wb3J0ICdtb2R1bGVzL2N1c3RvbWVyJztcbkBpbXBvcnQgJ21vZHVsZXMvZGV0YWlsJztcbkBpbXBvcnQgJ21vZHVsZXMvZmlsdGVyLWZvcm0nO1xuQGltcG9ydCAnbW9kdWxlcy9mbGFnLW9iamVjdCc7XG5AaW1wb3J0ICdtb2R1bGVzL2ZsYWcnO1xuQGltcG9ydCAnbW9kdWxlcy9mb3JtLS1sb2dpbic7XG5AaW1wb3J0ICdtb2R1bGVzL2Zvcm0tLXBhc3N3b3JkJztcbkBpbXBvcnQgJ21vZHVsZXMvZm9ybS0tcmVnaXN0ZXInO1xuQGltcG9ydCAnbW9kdWxlcy9mb3JtLWhlYWRpbmcnO1xuQGltcG9ydCAnbW9kdWxlcy9mb3JtJztcbkBpbXBvcnQgJ21vZHVsZXMvaW5saW5lLWxhYmVsJztcbkBpbXBvcnQgJ21vZHVsZXMvaW5wdXQnO1xuQGltcG9ydCAnbW9kdWxlcy9sYWJlbCc7XG5AaW1wb3J0ICdtb2R1bGVzL2xheW91dCc7XG5AaW1wb3J0ICdtb2R1bGVzL2xlZ2FsLXByaW50JztcbkBpbXBvcnQgJ21vZHVsZXMvbGluay1yaWdodCc7XG5AaW1wb3J0ICdtb2R1bGVzL21haW4tbmV3cyc7XG5AaW1wb3J0ICdtb2R1bGVzL21hcCc7XG5AaW1wb3J0ICdtb2R1bGVzL21lZGlhLW9iamVjdCc7XG5AaW1wb3J0ICdtb2R1bGVzL25hdic7XG5AaW1wb3J0ICdtb2R1bGVzL25ld3MnO1xuQGltcG9ydCAnbW9kdWxlcy9vcmRlci1kZXRhaWxzJztcbkBpbXBvcnQgJ21vZHVsZXMvb3JkZXItbGVmdC1uYXYnO1xuQGltcG9ydCAnbW9kdWxlcy9vcmRlci1wcm9jY2VzJztcbkBpbXBvcnQgJ21vZHVsZXMvb3JkZXItc3RlcC0yJztcbkBpbXBvcnQgJ21vZHVsZXMvb3JkZXItc3RlcC0zJztcbkBpbXBvcnQgJ21vZHVsZXMvb3JkZXItc3RlcC00JztcbkBpbXBvcnQgJ21vZHVsZXMvb3JkZXJzLWxpc3QnO1xuQGltcG9ydCAnbW9kdWxlcy9wcmljZSc7XG5AaW1wb3J0ICdtb2R1bGVzL3Byb2R1Y3QtaXRlbSc7XG5AaW1wb3J0ICdtb2R1bGVzL3Byb2R1Y3RzJztcbkBpbXBvcnQgJ21vZHVsZXMvcXVpY2stY29udGFjdCc7XG5AaW1wb3J0ICdtb2R1bGVzL3NlYXJjaC1yZXN1bHRzJztcbkBpbXBvcnQgJ21vZHVsZXMvc2VjdGlvbic7XG5AaW1wb3J0ICdtb2R1bGVzL1NlbGVjdEJveEl0JztcbkBpbXBvcnQgJ21vZHVsZXMvc2l0ZS1mb290ZXInO1xuQGltcG9ydCAnbW9kdWxlcy9zaXRlLWxlZnQtbmF2JztcbkBpbXBvcnQgJ21vZHVsZXMvc2l0ZS1sb2dvJztcbkBpbXBvcnQgJ21vZHVsZXMvc2l0ZS1uYXYtdGFiJztcbkBpbXBvcnQgJ21vZHVsZXMvc2l0ZS1zZWFyY2gnO1xuQGltcG9ydCAnbW9kdWxlcy9zaXRlLXRvcC1uYXYnO1xuQGltcG9ydCAnbW9kdWxlcy90ZXJtcyc7XG5AaW1wb3J0ICdtb2R1bGVzL3Rlc3RpbW9uaWFsJztcbkBpbXBvcnQgJ21vZHVsZXMvdG9wLW1lbnUnO1xuQGltcG9ydCAnbW9kdWxlcy91c2VyLWJyZWFkY3J1bWInO1xuQGltcG9ydCAnbW9kdWxlcy91c3AnO1xuXG4vLyBjc3NHbG9iYmluZ0VuZFxuXG4vLyBAaW1wb3J0ICdzcHJpdGUnO1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTSEFNRSwgT1ZFUlJJREVTXG4gICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQGltcG9ydCAndXRpbHMvdXRpbGl0aWVzJztcbkBpbXBvcnQgJ3V0aWxzL3NoYW1lJztcbkBpbXBvcnQgJ3V0aWxzL2Rldic7IC8vIFRPRE8gLSBiZWZvcmUgZGVwbG95bWVudCB1bmxpbmsgZnJvbSBtYWluIHN0eWxlXG4vLyBAaW1wb3J0ICd1dGlscy9kZWJ1Zyc7XG4iLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gQ29uZmlnXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQnJlYWtwb2ludHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4kYnJlYWtwb2ludHM6IChcbiAgICAnc21hbGwnICA6IDMwZW0sXG4gICAgJ21lZGl1bScgOiA0OWVtLFxuICAgICdwcm9kdWN0JzogNThlbSxcbiAgICAnbGFyZ2UnICA6IDY1ZW0sXG4gICAgJ21lbnUtbGFyZ2UnOiA3NS41ZW0sXG4pICFkZWZhdWx0O1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gVHdlYWtwb2ludHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBsb2NhbCBicmVha3BvaW50cyBmb3IgZmluZXIgY29udHJvbCBvdmVyIGluZGl2aWR1YWwgY29tcG9uZW50c1xuLy8gZm9yIHNldHRpbmcgdmFyaWFibGVzIHVzZSBtaXhpbiBgY29tcG9uZW50YFxuLy8gbW9yZSBpbmZvOiBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vYnJlYWtwb2ludHMtdHdlYWtwb2ludHMtc2Fzcy9cbiR0d2Vha3BvaW50czogKCk7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBNYWluIGNvbG9yc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiRicmFuZC1jb2xvci0tcHJpbWFyeTogIzAwNzVhZTtcbiRicmFuZC1jb2xvci0tcHJpbWFyeS1kYXJrOiAjMGU2MDg4O1xuJGJyYW5kLWNvbG9yLS1zZWNvbmRhcnk6ICNjZjE3MDg7XG4kYnJhbmQtY29sb3ItLXNlY29uZGFyeS1kYXJrOiBkYXJrZW4oI2NmMTcwOCwgMTApO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gSGVscGVyIGNvbG9yc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiRsaWdodC1ibHVlOiAjZjBmN2ZhO1xuJGxpZ2h0LWJsdWUtLWRhcmtlcjogI2U1ZWZmNDtcblxuJGFjY2VudC1jb2xvci0tZGFyazogI2YyZjBlYTtcbiRhY2NlbnQtY29sb3ItLWxpZ2h0OiAjZmZmZGY4O1xuXG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBOZXV0cmFsIHNoYWRlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiR3aGl0ZTogI2ZmZjtcbiRncmF5LS05NjogI2Y2ZjZmNjtcbiRncmF5LS05MzogI2VlZTtcbiRncmF5LS05MjogI2ViZWJlYjtcbiRncmF5LS05MDogI2U1ZTVlNTtcbiRncmF5LS03MzogI2JiYjtcbiRncmF5LS02MDogIzk5OTtcbiRncmF5LS00MDogIzU1NTtcbiRncmF5LS1saWdodGVzdDogJGdyYXktLTkzO1xuJGdyYXktLWxpZ2h0ZXI6ICRncmF5LS05MjtcbiRncmF5LS1saWdodDogJGdyYXktLTkwO1xuJGdyYXk6ICRncmF5LS03MztcbiRncmF5LS1kYXJrOiAkZ3JheS0tNjA7XG4kZ3JheS0tZGFya2VyOiAkZ3JheS0tNDA7XG4kYmxhY2s6ICMzMzM7XG5cbiRsaWdodC1ncmVlbjogIzAwYTY1MTtcblxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQm9yZGVyIGNvbG9yc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiRib3JkZXItY29sb3I6ICRncmF5LS05MjtcbiRib3JkZXItY29sb3ItLWJsdWU6ICNjZmUxZTc7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBUeXBvZ3JhcGh5IGNvbG9yc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiR0eXBlLWNvbG9yLS1ib2R5OiAkYmxhY2s7XG4kdHlwZS1jb2xvci0taGVhZGluZzogJGJsYWNrO1xuJHR5cGUtY29sb3ItLW11dGVkOiAkZ3JheS0tZGFya2VyO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gTGluayBjb2xvcnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4kbGluay1jb2xvcjogJGJyYW5kLWNvbG9yLS1wcmltYXJ5O1xuJGxpbmstY29sb3ItLWhvdmVyOiBkYXJrZW4oJGxpbmstY29sb3IsIDEwKTtcbiRsaW5rLWNvbG9yLS12aXNpdGVkOiAkbGluay1jb2xvci0taG92ZXI7XG4kbGluay1jb2xvci0tZm9jdXM6IGRhcmtlbigkbGluay1jb2xvci0taG92ZXIsIDEwKTtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEhlbHBlcnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4kYm9yZGVyLXJhZGl1czogM3B4O1xuJHdhcm5pbmc6ICRicmFuZC1jb2xvci0tc2Vjb25kYXJ5O1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gU3BhY2luZ1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiRjb25zdGFudDogMjRweDtcbiRzcGFjaW5nOiAzMHB4O1xuJGZvcm0tcGFkZGluZy0tbGFyZ2U6IDZweCAxN3B4O1xuJG1heC13aWR0aDogMTIyMHB4O1xuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gTUlYSU5TXG4gQ29tbW9ubHkgdXNlZCBtaXhpbnNcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8vIGNvbW1vbiB0cmVhdG1lbnQgZm9yIGxlZnQtYWxpZ25lZCBpY29ucyBpbiBidXR0b25zXG5AbWl4aW4gYnV0dG9uLWljb24ge1xuICAgIG1hcmdpbi1yaWdodDogOHB4O1xuICAgIGZvbnQtc2l6ZTogMTMwJTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAzcHg7XG59XG5cbiAvKiBkZWJ1Z2dpbmcgKi9cbkBtaXhpbiBkZWJ1ZyB7XG4gICAgYmFja2dyb3VuZDogdmlvbGV0ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiAxMHB4IHNvbGlkIHRlYWwgIWltcG9ydGFudDtcbn1cblxuQG1peGluIGJvcmRlci1yYWRpdXMoJHJhZGl1cykge1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG4gICAgIC1tb3otYm9yZGVyLXJhZGl1czogJHJhZGl1cztcbiAgICAgIC1tcy1ib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG59XG5cbkBtaXhpbiB0cmFuc2l0aW9uIHtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuNHMgZWFzZS1pbi1vdXQ7XG59XG5cbkBtaXhpbiB0cmFuc2l0aW9uLS1oYWxmIHtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMnMgZWFzZS1pbi1vdXQ7XG59XG5cbi8vLyBCcmVha3BvaW50cy90d2Vha3BvaW50cyBtYW5hZ2VyXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRwb2ludCAtIEJyZWFrcG9pbnQvdHdlYWtwb2ludCBuYW1lXG4vLyBtb3JlIGluZm86IGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9icmVha3BvaW50cy10d2Vha3BvaW50cy1zYXNzL1xuQG1peGluIHJlc3BvbmQtdG8oJHBvaW50KSB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCR0d2Vha3BvaW50cywgJHBvaW50KSB7XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiBtYXAtZ2V0KCR0d2Vha3BvaW50cywgJHBvaW50KSkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJHBvaW50KSB7XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJHBvaW50KSkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9IEBlbHNlIHtcbiAgICAgICAgQHdhcm4gXCJDb3VsZCBub3QgZmluZCBgI3skYnJlYWtwb2ludH1gIGluIGJvdGggbG9jYWwgKCR0d2Vha3BvaW50cykgYW5kIGdsb2JhbCAoJGJyZWFrcG9pbnRzKSBjb250ZXh0cy4gTWVkaWEgYmxvY2sgb21pdHRlZC5cIjtcbiAgICB9XG59XG5cbi8vLyBDb21wb25lbnQgd3JhcHBlclxuLy8vIEBwYXJhbSB7TWFwfSAkY29tcG9uZW50LXR3ZWFrcG9pbnRzIFsoKV0gLSBDb21wb25lbnQgdHdlYWtwb2ludHNcbi8vIEV4YW1wbGU6XG4vLyBAaW5jbHVkZSBjb21wb25lbnQoKFxuLy8gICAnY3VzdG9tJzogNTAwcHgsXG4vLyAgICdtZWRpdW0nOiAxMTcwcHgsXG4vLyApKSB7XG4gICAgLy8gQSBsb3Qgb2YgU2FzcyBydWxlcyBoZXJlLCBidXQgbm8gYCR0d2Vha3BvaW50czogKCk7YCBhdCB0aGUgZW5kIG9mIGZpbGVcbi8vIH1cbkBtaXhpbiBjb21wb25lbnQoJGNvbXBvbmVudC10d2Vha3BvaW50czogKCkpIHtcbiAgICAkdHdlYWtwb2ludHM6ICRjb21wb25lbnQtdHdlYWtwb2ludHMgIWdsb2JhbDtcbiAgICBAY29udGVudDtcbiAgICAkdHdlYWtwb2ludHM6ICgpICFnbG9iYWw7XG59XG5cblxuLy8vIENsZWFyZml4XG4vLy8ganVzdCB1c2UgQGluY2x1ZGVcbkBtaXhpbiBjbGVhcmZpeCgpIHtcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICB9XG59XG5cblxuLy8vIEJhc2UgcGF0aCBmb3IgYXNzZXRzIChmb250cywgaW1hZ2VzLi4uKSxcbi8vLyBzaG91bGQgbm90IGluY2x1ZGUgdHJhaWxpbmcgc2xhc2hcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEB0eXBlIFN0cmluZ1xuLy8gIGh0dHBzOi8vY3NzLXRyaWNrcy5jb20vc25pcHBldHMvc2Fzcy9zaW1wbGUtYXNzZXQtaGVscGVyLWZ1bmN0aW9ucy9cbi8vICB0aGlzIGZ1bmN0aW9ucyBkZWFsIHdpdGggcGF0aHMgdG8gZmlsZXMuIFVzZSB0aGlzIGZ1bmN0aW9uIGZvciBtb3JlIGNvbnZlbmllbmNlIGFuZCBmb3IgZnV0dXJlLiBZb3UgbWlnaHQgbmVlZCB0byBjaGFuZ2UgdGhlIGZvbGRlciBzdHJ1Y3R1cmUuXG4kYXNzZXQtYmFzZS1wYXRoOiAnLi4vLi4nICFkZWZhdWx0O1xuXG4vLy8gQXNzZXQgVVJMIGJ1aWxkZXJcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHR5cGUgLSBBc3NldCB0eXBlLCBtYXRjaGluZyBmb2xkZXIgbmFtZVxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZmlsZSAtIEFzc2V0IGZpbGUgbmFtZSwgaW5jbHVkaW5nIGV4dGVuc2lvblxuLy8vIEByZXR1cm4ge1VSTH0gLSBBIGB1cmwoKWAgZnVuY3Rpb24gbGVhZGluZyB0byB0aGUgYXNzZXRcbkBmdW5jdGlvbiBhc3NldCgkdHlwZSwgJGZpbGUpIHtcbiAgICBAcmV0dXJuIHVybCgkYXNzZXQtYmFzZS1wYXRoICsgJy8nICsgJHR5cGUgKyAnLycgKyAkZmlsZSk7XG59XG5cbi8vLyBJbWFnZSBhc3NldCBoZWxwZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZmlsZSAtIEFzc2V0IGZpbGUgbmFtZSwgaW5jbHVkaW5nIGV4dGVuc2lvblxuLy8vIEByZXR1cm4ge1VSTH0gLSBBIGB1cmwoKWAgZnVuY3Rpb24gbGVhZGluZyB0byB0aGUgaW1hZ2Vcbi8vLyBAcmVxdWlyZSB7ZnVuY3Rpb259IGFzc2V0XG5AZnVuY3Rpb24gaW1hZ2UoJGZpbGUpIHtcbiAgICBAcmV0dXJuIGFzc2V0KCdpbWcnLCAkZmlsZSk7XG59XG4vLyB1c2FnZTogYmFja2dyb3VuZC1pbWFnZTogaW1hZ2UoJ2tpdHRlbnMuanBnJyk7XG5cbi8vLyBGb250IGFzc2V0IGhlbHBlclxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRmaWxlIC0gQXNzZXQgZmlsZSBuYW1lLCBpbmNsdWRpbmcgZXh0ZW5zaW9uXG4vLy8gQHJldHVybiB7VVJMfSAtIEEgYHVybCgpYCBmdW5jdGlvbiBsZWFkaW5nIHRvIHRoZSBmb250XG4vLy8gQHJlcXVpcmUge2Z1bmN0aW9ufSBhc3NldFxuQGZ1bmN0aW9uIGZvbnQoJGZpbGUpIHtcbiAgICBAcmV0dXJuIGFzc2V0KCdmb250cycsICRmaWxlKTtcbn1cblxuIiwiQGltcG9ydCBcImljb24tdmFyaWFibGVzXCI7XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAndWNlYm5pY2VWYW5pY2VrJztcbiAgICBzcmM6IGZvbnQoJ3VjZWJuaWNlVmFuaWNlay5lb3Q/Y3k0dHMxJyk7XG4gICAgc3JjOiBmb250KCd1Y2VibmljZVZhbmljZWsuZW90P2N5NHRzMSNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgICBmb250KCd1Y2VibmljZVZhbmljZWsudHRmP2N5NHRzMScpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcbiAgICBmb250KCd1Y2VibmljZVZhbmljZWsud29mZj9jeTR0czEnKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICBmb250KCd1Y2VibmljZVZhbmljZWsuc3ZnP2N5NHRzMSN1Y2VibmljZVZhbmljZWsnKSBmb3JtYXQoJ3N2ZycpO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5cbi5pY29uIHtcbiAgICAvKiB1c2UgIWltcG9ydGFudCB0byBwcmV2ZW50IGlzc3VlcyB3aXRoIGJyb3dzZXIgZXh0ZW5zaW9ucyB0aGF0IGNoYW5nZSBmb250cyAqL1xuICAgIGZvbnQtZmFtaWx5OiAndWNlYm5pY2VWYW5pY2VrJyAhaW1wb3J0YW50O1xuICAgIHNwZWFrOiBub25lO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuXG4gICAgLyogQmV0dGVyIEZvbnQgUmVuZGVyaW5nID09PT09PT09PT09ICovXG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cblxuLmljb24tZW52ZWxvcGUge1xuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJGljb24tZW52ZWxvcGU7XG4gICAgfVxufVxuLmljb24tcGhvbmUge1xuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJGljb24tcGhvbmU7XG4gICAgfVxufVxuLmljb24tcHJpbnRlciB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAkaWNvbi1wcmludGVyO1xuICAgIH1cbn1cbi5pY29uLWJhZyB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAkaWNvbi1iYWc7XG4gICAgfVxufVxuLmljb24tcGlja3VwIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICRpY29uLXBpY2t1cDtcbiAgICB9XG59XG4uaWNvbi1wbHVzIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICRpY29uLXBsdXM7XG4gICAgfVxufVxuLmljb24tbWludXMge1xuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJGljb24tbWludXM7XG4gICAgfVxufVxuLmljb24tY2xvc2Uge1xuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJGljb24tY2xvc2U7XG4gICAgfVxufVxuLmljb24tc2VhcmNoIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICRpY29uLXNlYXJjaDtcbiAgICB9XG59XG4uaWNvbi1hcnJvdy1sZWZ0IHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICRpY29uLWFycm93LWxlZnQ7XG4gICAgfVxufVxuLmljb24tYXJyb3ctdXAge1xuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJGljb24tYXJyb3ctdXA7XG4gICAgfVxufVxuLmljb24tYXJyb3ctcmlnaHQge1xuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJGljb24tYXJyb3ctcmlnaHQ7XG4gICAgfVxufVxuLmljb24tYXJyb3ctZG93biB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAkaWNvbi1hcnJvdy1kb3duO1xuICAgIH1cbn1cbi5pY29uLW1lbnUge1xuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJGljb24tbWVudTtcbiAgICB9XG59XG4uaWNvbi1wZXJzb24ge1xuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJGljb24tcGVyc29uO1xuICAgIH1cbn1cbi5pY29uLXBhcGVyLWJhZyB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAkaWNvbi1wYXBlci1iYWc7XG4gICAgfVxufVxuLmljb24tYm94IHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICRpY29uLWJveDtcbiAgICB9XG59XG4uaWNvbi1pbnZvaWNlIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICRpY29uLWludm9pY2U7XG4gICAgfVxufVxuLmljb24tZG9jdW1lbnQge1xuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJGljb24tZG9jdW1lbnQ7XG4gICAgfVxufVxuLmljb24tYXJyb3ctbGVmdC0yIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICRpY29uLWFycm93LWxlZnQtMjtcbiAgICB9XG59XG4uaWNvbi1hcnJvdy11cC0yIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICRpY29uLWFycm93LXVwLTI7XG4gICAgfVxufVxuLmljb24tYXJyb3ctcmlnaHQtMiB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAkaWNvbi1hcnJvdy1yaWdodC0yO1xuICAgIH1cbn1cbi5pY29uLWFycm93LWRvd24tMiB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAkaWNvbi1hcnJvdy1kb3duLTI7XG4gICAgfVxufVxuLmljb24tZXllIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICRpY29uLWV5ZTtcbiAgICB9XG59XG5cblxuXG4iLCIkaWNvbi1lbnZlbG9wZTogXCJcXGU5MWZcIjtcbiRpY29uLXBob25lOiBcIlxcZTkyMFwiO1xuJGljb24tcHJpbnRlcjogXCJcXGU4ZTNcIjtcbiRpY29uLWJhZzogXCJcXGU4YWFcIjtcbiRpY29uLXBpY2t1cDogXCJcXGU4MmZcIjtcbiRpY29uLXBsdXM6IFwiXFxlN2Y3XCI7XG4kaWNvbi1taW51czogXCJcXGU3ZjZcIjtcbiRpY29uLWNsb3NlOiBcIlxcZTdmNVwiO1xuJGljb24tc2VhcmNoOiBcIlxcZTdlOVwiO1xuJGljb24tYXJyb3ctbGVmdDogXCJcXGU3Y2ZcIjtcbiRpY29uLWFycm93LXVwOiBcIlxcZTdjZVwiO1xuJGljb24tYXJyb3ctcmlnaHQ6IFwiXFxlN2NkXCI7XG4kaWNvbi1hcnJvdy1kb3duOiBcIlxcZTdjY1wiO1xuJGljb24tbWVudTogXCJcXGU3YTlcIjtcbiRpY29uLXBlcnNvbjogXCJcXGU3M2JcIjtcbiRpY29uLXBhcGVyLWJhZzogXCJcXGU2N2RcIjtcbiRpY29uLWJveDogXCJcXGU2NzhcIjtcbiRpY29uLWludm9pY2U6IFwiXFxlNjQ4XCI7XG4kaWNvbi1kb2N1bWVudDogXCJcXGU4YjRcIjtcbiRpY29uLWFycm93LWxlZnQtMjogXCJcXGU4MDlcIjtcbiRpY29uLWFycm93LXVwLTI6IFwiXFxlODA4XCI7XG4kaWNvbi1hcnJvdy1yaWdodC0yOiBcIlxcZTgwN1wiO1xuJGljb24tYXJyb3ctZG93bi0yOiBcIlxcZTgwNlwiO1xuJGljb24tZXllOiBcIlxcZTkwMFwiO1xuIiwiLyohIG5vcm1hbGl6ZS5jc3MgdjMuMC4wIHwgTUlUIExpY2Vuc2UgfCBnaXQuaW8vbm9ybWFsaXplICovXG5cbi8vXG4vLyAxLiBTZXQgZGVmYXVsdCBmb250IGZhbWlseSB0byBzYW5zLXNlcmlmLlxuLy8gMi4gUHJldmVudCBpT1MgdGV4dCBzaXplIGFkanVzdCBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2UsIHdpdGhvdXQgZGlzYWJsaW5nXG4vLyAgICB1c2VyIHpvb20uXG4vL1xuXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7IC8vIDFcbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8vIDJcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyAyXG59XG5cbi8vXG4vLyBSZW1vdmUgZGVmYXVsdCBtYXJnaW4uXG4vL1xuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbn1cblxuLy8gSFRNTDUgZGlzcGxheSBkZWZpbml0aW9uc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGluIElFIDgvOS5cbi8vXG5cbmFydGljbGUsXG5hc2lkZSxcbmRldGFpbHMsXG5maWdjYXB0aW9uLFxuZmlndXJlLFxuZm9vdGVyLFxuaGVhZGVyLFxuaGdyb3VwLFxubWFpbixcbm5hdixcbnNlY3Rpb24sXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vXG4vLyAxLiBDb3JyZWN0IGBpbmxpbmUtYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgaW4gSUUgOC85LlxuLy8gMi4gTm9ybWFsaXplIHZlcnRpY2FsIGFsaWdubWVudCBvZiBgcHJvZ3Jlc3NgIGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuLy9cblxuYXVkaW8sXG5jYW52YXMsXG5wcm9ncmVzcyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvLyAxXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLy8gMlxufVxuXG4vL1xuLy8gUHJldmVudCBtb2Rlcm4gYnJvd3NlcnMgZnJvbSBkaXNwbGF5aW5nIGBhdWRpb2Agd2l0aG91dCBjb250cm9scy5cbi8vIFJlbW92ZSBleGNlc3MgaGVpZ2h0IGluIGlPUyA1IGRldmljZXMuXG4vL1xuXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDA7XG59XG5cbi8vXG4vLyBBZGRyZXNzIGBbaGlkZGVuXWAgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkuXG4vLyBIaWRlIHRoZSBgdGVtcGxhdGVgIGVsZW1lbnQgaW4gSUUsIFNhZmFyaSwgYW5kIEZpcmVmb3ggPCAyMi5cbi8vXG5cbltoaWRkZW5dLFxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vLyBMaW5rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIGNvbG9yIGZyb20gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuLy9cblxuYSB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuXG4vL1xuLy8gSW1wcm92ZSByZWFkYWJpbGl0eSB3aGVuIGZvY3VzZWQgYW5kIGFsc28gbW91c2UgaG92ZXJlZCBpbiBhbGwgYnJvd3NlcnMuXG4vL1xuXG5hOmFjdGl2ZSxcbmE6aG92ZXIge1xuICBvdXRsaW5lOiAwO1xufVxuXG4vLyBUZXh0LWxldmVsIHNlbWFudGljc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzksIFNhZmFyaSA1LCBhbmQgQ2hyb21lLlxuLy9cblxuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkO1xufVxuXG4vL1xuLy8gQWRkcmVzcyBzdHlsZSBzZXQgdG8gYGJvbGRlcmAgaW4gRmlyZWZveCA0KywgU2FmYXJpIDUsIGFuZCBDaHJvbWUuXG4vL1xuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi8vXG4vLyBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gU2FmYXJpIDUgYW5kIENocm9tZS5cbi8vXG5cbmRmbiB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLy9cbi8vIEFkZHJlc3MgdmFyaWFibGUgYGgxYCBmb250LXNpemUgYW5kIG1hcmdpbiB3aXRoaW4gYHNlY3Rpb25gIGFuZCBgYXJ0aWNsZWBcbi8vIGNvbnRleHRzIGluIEZpcmVmb3ggNCssIFNhZmFyaSA1LCBhbmQgQ2hyb21lLlxuLy9cblxuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLy9cbi8vIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkuXG4vL1xuXG5tYXJrIHtcbiAgYmFja2dyb3VuZDogI2ZmMDtcbiAgY29sb3I6ICMwMDA7XG59XG5cbi8vXG4vLyBBZGRyZXNzIGluY29uc2lzdGVudCBhbmQgdmFyaWFibGUgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbi8vXG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG59XG5cbi8vXG4vLyBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBhZmZlY3RpbmcgYGxpbmUtaGVpZ2h0YCBpbiBhbGwgYnJvd3NlcnMuXG4vL1xuXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG4vLyBFbWJlZGRlZCBjb250ZW50XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gUmVtb3ZlIGJvcmRlciB3aGVuIGluc2lkZSBgYWAgZWxlbWVudCBpbiBJRSA4LzkuXG4vL1xuXG5pbWcge1xuICBib3JkZXI6IDA7XG59XG5cbi8vXG4vLyBDb3JyZWN0IG92ZXJmbG93IGRpc3BsYXllZCBvZGRseSBpbiBJRSA5LlxuLy9cblxuc3ZnOm5vdCg6cm9vdCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vLyBHcm91cGluZyBjb250ZW50XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gQWRkcmVzcyBtYXJnaW4gbm90IHByZXNlbnQgaW4gSUUgOC85IGFuZCBTYWZhcmkgNS5cbi8vXG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMWVtIDQwcHg7XG59XG5cbi8vXG4vLyBBZGRyZXNzIGRpZmZlcmVuY2VzIGJldHdlZW4gRmlyZWZveCBhbmQgb3RoZXIgYnJvd3NlcnMuXG4vL1xuXG5ociB7XG4gIC1tb3otYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBoZWlnaHQ6IDA7XG59XG5cbi8vXG4vLyBDb250YWluIG92ZXJmbG93IGluIGFsbCBicm93c2Vycy5cbi8vXG5cbnByZSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vL1xuLy8gQWRkcmVzcyBvZGQgYGVtYC11bml0IGZvbnQgc2l6ZSByZW5kZXJpbmcgaW4gYWxsIGJyb3dzZXJzLlxuLy9cblxuY29kZSxcbmtiZCxcbnByZSxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG4vLyBGb3Jtc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIEtub3duIGxpbWl0YXRpb246IGJ5IGRlZmF1bHQsIENocm9tZSBhbmQgU2FmYXJpIG9uIE9TIFggYWxsb3cgdmVyeSBsaW1pdGVkXG4vLyBzdHlsaW5nIG9mIGBzZWxlY3RgLCB1bmxlc3MgYSBgYm9yZGVyYCBwcm9wZXJ0eSBpcyBzZXQuXG4vL1xuXG4vL1xuLy8gMS4gQ29ycmVjdCBjb2xvciBub3QgYmVpbmcgaW5oZXJpdGVkLlxuLy8gICAgS25vd24gaXNzdWU6IGFmZmVjdHMgY29sb3Igb2YgZGlzYWJsZWQgZWxlbWVudHMuXG4vLyAyLiBDb3JyZWN0IGZvbnQgcHJvcGVydGllcyBub3QgYmVpbmcgaW5oZXJpdGVkLlxuLy8gMy4gQWRkcmVzcyBtYXJnaW5zIHNldCBkaWZmZXJlbnRseSBpbiBGaXJlZm94IDQrLCBTYWZhcmkgNSwgYW5kIENocm9tZS5cbi8vXG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGNvbG9yOiBpbmhlcml0OyAvLyAxXG4gIGZvbnQ6IGluaGVyaXQ7IC8vIDJcbiAgbWFyZ2luOiAwOyAvLyAzXG59XG5cbi8vXG4vLyBBZGRyZXNzIGBvdmVyZmxvd2Agc2V0IHRvIGBoaWRkZW5gIGluIElFIDgvOS8xMC5cbi8vXG5cbmJ1dHRvbiB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vL1xuLy8gQWRkcmVzcyBpbmNvbnNpc3RlbnQgYHRleHQtdHJhbnNmb3JtYCBpbmhlcml0YW5jZSBmb3IgYGJ1dHRvbmAgYW5kIGBzZWxlY3RgLlxuLy8gQWxsIG90aGVyIGZvcm0gY29udHJvbCBlbGVtZW50cyBkbyBub3QgaW5oZXJpdCBgdGV4dC10cmFuc2Zvcm1gIHZhbHVlcy5cbi8vIENvcnJlY3QgYGJ1dHRvbmAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveCwgSUUgOCssIGFuZCBPcGVyYVxuLy8gQ29ycmVjdCBgc2VsZWN0YCBzdHlsZSBpbmhlcml0YW5jZSBpbiBGaXJlZm94LlxuLy9cblxuYnV0dG9uLFxuc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8vXG4vLyAxLiBBdm9pZCB0aGUgV2ViS2l0IGJ1ZyBpbiBBbmRyb2lkIDQuMC4qIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYFxuLy8gICAgYW5kIGB2aWRlb2AgY29udHJvbHMuXG4vLyAyLiBDb3JyZWN0IGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgYGlucHV0YCB0eXBlcyBpbiBpT1MuXG4vLyAzLiBJbXByb3ZlIHVzYWJpbGl0eSBhbmQgY29uc2lzdGVuY3kgb2YgY3Vyc29yIHN0eWxlIGJldHdlZW4gaW1hZ2UtdHlwZVxuLy8gICAgYGlucHV0YCBhbmQgb3RoZXJzLlxuLy9cblxuYnV0dG9uLFxuaHRtbCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLCAvLyAxXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDJcbiAgY3Vyc29yOiBwb2ludGVyOyAvLyAzXG59XG5cbi8vXG4vLyBSZS1zZXQgZGVmYXVsdCBjdXJzb3IgZm9yIGRpc2FibGVkIGVsZW1lbnRzLlxuLy9cblxuYnV0dG9uW2Rpc2FibGVkXSxcbmh0bWwgaW5wdXRbZGlzYWJsZWRdIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4vL1xuLy8gUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIGJvcmRlciBpbiBGaXJlZm94IDQrLlxuLy9cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuaW5wdXQ6Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8vXG4vLyBBZGRyZXNzIEZpcmVmb3ggNCsgc2V0dGluZyBgbGluZS1oZWlnaHRgIG9uIGBpbnB1dGAgdXNpbmcgYCFpbXBvcnRhbnRgIGluXG4vLyB0aGUgVUEgc3R5bGVzaGVldC5cbi8vXG5cbmlucHV0IHtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbn1cblxuLy9cbi8vIEl0J3MgcmVjb21tZW5kZWQgdGhhdCB5b3UgZG9uJ3QgYXR0ZW1wdCB0byBzdHlsZSB0aGVzZSBlbGVtZW50cy5cbi8vIEZpcmVmb3gncyBpbXBsZW1lbnRhdGlvbiBkb2Vzbid0IHJlc3BlY3QgYm94LXNpemluZywgcGFkZGluZywgb3Igd2lkdGguXG4vL1xuLy8gMS4gQWRkcmVzcyBib3ggc2l6aW5nIHNldCB0byBgY29udGVudC1ib3hgIGluIElFIDgvOS8xMC5cbi8vIDIuIFJlbW92ZSBleGNlc3MgcGFkZGluZyBpbiBJRSA4LzkvMTAuXG4vL1xuXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxXG4gIHBhZGRpbmc6IDA7IC8vIDJcbn1cblxuLy9cbi8vIEZpeCB0aGUgY3Vyc29yIHN0eWxlIGZvciBDaHJvbWUncyBpbmNyZW1lbnQvZGVjcmVtZW50IGJ1dHRvbnMuIEZvciBjZXJ0YWluXG4vLyBgZm9udC1zaXplYCB2YWx1ZXMgb2YgdGhlIGBpbnB1dGAsIGl0IGNhdXNlcyB0aGUgY3Vyc29yIHN0eWxlIG9mIHRoZVxuLy8gZGVjcmVtZW50IGJ1dHRvbiB0byBjaGFuZ2UgZnJvbSBgZGVmYXVsdGAgdG8gYHRleHRgLlxuLy9cblxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8vXG4vLyAxLiBBZGRyZXNzIGBhcHBlYXJhbmNlYCBzZXQgdG8gYHNlYXJjaGZpZWxkYCBpbiBTYWZhcmkgNSBhbmQgQ2hyb21lLlxuLy8gMi4gQWRkcmVzcyBgYm94LXNpemluZ2Agc2V0IHRvIGBib3JkZXItYm94YCBpbiBTYWZhcmkgNSBhbmQgQ2hyb21lXG4vLyAgICAoaW5jbHVkZSBgLW1vemAgdG8gZnV0dXJlLXByb29mKS5cbi8vXG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLy8gMVxuICAtbW96LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAtd2Via2l0LWJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvLyAyXG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xufVxuXG4vL1xuLy8gUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIHNlYXJjaCBjYW5jZWwgYnV0dG9uIGluIFNhZmFyaSBhbmQgQ2hyb21lIG9uIE9TIFguXG4vLyBTYWZhcmkgKGJ1dCBub3QgQ2hyb21lKSBjbGlwcyB0aGUgY2FuY2VsIGJ1dHRvbiB3aGVuIHRoZSBzZWFyY2ggaW5wdXQgaGFzXG4vLyBwYWRkaW5nIChhbmQgYHRleHRmaWVsZGAgYXBwZWFyYW5jZSkuXG4vL1xuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLy9cbi8vIERlZmluZSBjb25zaXN0ZW50IGJvcmRlciwgbWFyZ2luLCBhbmQgcGFkZGluZy5cbi8vXG5cbmZpZWxkc2V0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcbiAgbWFyZ2luOiAwIDJweDtcbiAgcGFkZGluZzogMC4zNWVtIDAuNjI1ZW0gMC43NWVtO1xufVxuXG4vL1xuLy8gMS4gQ29ycmVjdCBgY29sb3JgIG5vdCBiZWluZyBpbmhlcml0ZWQgaW4gSUUgOC85LlxuLy8gMi4gUmVtb3ZlIHBhZGRpbmcgc28gcGVvcGxlIGFyZW4ndCBjYXVnaHQgb3V0IGlmIHRoZXkgemVybyBvdXQgZmllbGRzZXRzLlxuLy9cblxubGVnZW5kIHtcbiAgYm9yZGVyOiAwOyAvLyAxXG4gIHBhZGRpbmc6IDA7IC8vIDJcbn1cblxuLy9cbi8vIFJlbW92ZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSA4LzkuXG4vL1xuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vL1xuLy8gRG9uJ3QgaW5oZXJpdCB0aGUgYGZvbnQtd2VpZ2h0YCAoYXBwbGllZCBieSBhIHJ1bGUgYWJvdmUpLlxuLy8gTk9URTogdGhlIGRlZmF1bHQgY2Fubm90IHNhZmVseSBiZSBjaGFuZ2VkIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIE9TIFguXG4vL1xuXG5vcHRncm91cCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4vLyBUYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBSZW1vdmUgbW9zdCBzcGFjaW5nIGJldHdlZW4gdGFibGUgY2VsbHMuXG4vL1xuXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xufVxuXG50ZCxcbnRoIHtcbiAgcGFkZGluZzogMDtcbn1cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAwO1xufVxuXG5maWdjYXB0aW9uIHtcbiAgbWFyZ2luOiAxLjY4NzVyZW0gMDtcbn1cblxuKiwgKjphZnRlciwgKjpiZWZvcmUge1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIFNhZmFyaS9DaHJvbWUsIG90aGVyIFdlYktpdCAqL1xuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7ICAgIC8qIEZpcmVmb3gsIG90aGVyIEdlY2tvICovXG4gIGJveC1zaXppbmc6Ym9yZGVyLWJveDtcbn0iLCIkYm9keS1mZjogJ211c2VvLXNhbnMnLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuJGhlYWRpbmctZmY6ICdtdXNlby1zYW5zJywgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFRZUE9HUkFQSFkgU0NBTEVcbi8vXG4vLyBUbyBtYWludGFpbiB2ZXJ0aWNhbCByaHl0aG0gd2UgbmVlZCB0d28ga2V5IGluZ3JlZGllbnRzOlxuLy8gICAgICAxLiBjb25zaXN0ZW50IGxpbmUgaGVpZ2h0c1xuLy8gICAgICAyLiBjb25zaXN0ZW50IGJvdHRvbSBtYXJnaW5zXG4vL1xuLy8gVXNlIHRoZXNlIG1peGlucyB3aGlsZSBzZXR0aW5nIHR5cGUgaW4gb3RoZXIgYmxvY2tzL2VsZW1lbnRzIGJlY2F1c2Ugb2YgdGhlXG4vLyB2ZXJ0aWNhbCByaHl0aG0uXG4vL1xuLy8gRG9uJ3QgdGFrZSBpdCBhcyBhIGRvZ21hLCB0aG91Z2guIEJyZWFraW5nIHRoZSBydWxlcyBpcyBzb21ldGltZXMgdGhlIGJlc3Rcbi8vIHRoaW5nIHlvdSBjYW4gZG8uIEp1c3QgYmUgc3VyZSBpdCBpcyByZWFsbHkgdGhhdCBjYXNlLlxuLy9cbi8vIEJhc2VkIG9uOlxuLy8gaHR0cDovL2Nzc3dpemFyZHJ5LmNvbS8yMDEyLzAyL3ByYWdtYXRpYy1wcmFjdGljYWwtZm9udC1zaXppbmctaW4tY3NzL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGdpZ2Ege1xuLy8gICAgIGZvbnQtc2l6ZTogODBweDtcbi8vICAgICBsaW5lLWhlaWdodDogMS4yOyAvLyA5NnB4XG4vLyAgICAgbGV0dGVyLXNwYWNpbmc6IC0xcHg7XG4vLyB9XG5cbi8vIEBtaXhpbiBtZWdhIHtcbi8vICAgICBmb250LXNpemU6IDYwcHg7XG4vLyAgICAgbGluZS1oZWlnaHQ6IDEuMjsgLy8gNzJweFxuLy8gfVxuXG4vLyBAbWl4aW4ga2lsbyB7XG4vLyAgICAgZm9udC1zaXplOiA0OHB4O1xuLy8gICAgIGxpbmUtaGVpZ2h0OiAxOyAvLyA0OHB4XG4vLyB9XG5cbi8vIGgxIHNpemVcbkBtaXhpbiBhbHBoYSB7XG4gICAgZm9udC1zaXplOiA0OHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAoNzIgLyA2NCk7IC8vIDEuMTI1XG59XG5cbi8vIGgyIHNpemVcbkBtaXhpbiBiZXRhIHtcbiAgICBmb250LXNpemU6IDMwcHg7XG4gICAgbGluZS1oZWlnaHQ6ICgzNiAvIDMwKTsgLy8gMS4yXG59XG5cbi8vIGgzIHNpemVcbkBtaXhpbiBnYW1tYSB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAoMzYgLyAyNCk7IC8vIDEuNVxufVxuXG4vLyBoNCBzaXplXG5AbWl4aW4gZGVsdGEge1xuICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgICBsaW5lLWhlaWdodDogKDM2IC8gMjEpOyAvLyAxLjcxNFxufVxuXG4vLyBoNSBzaXplXG5AbWl4aW4gZXBzaWxvbiB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAoMjcgLyAxOCk7IC8vIDEuNVxufVxuXG4vLyBoNiBzaXplXG5AbWl4aW4gemV0YSB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7IC8vIDI0cHhcbn1cblxuQG1peGluIGJhc2Uge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBsaW5lLWhlaWdodDogKDI0IC8gMTYpOyAvLyAxLjVcbn1cblxuLy8gU21hbGxlci10aGFuLWJvZHktY29weSBzaXplcyBoZXJlLlxuQG1peGluIG1pbGxpIHtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgbGluZS1oZWlnaHQ6ICgzNiAvIDE1KTsgLy8gMi40XG59XG5cbkBtaXhpbiBtaWNybyB7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIGxpbmUtaGVpZ2h0OiAoMjEgLyAxMyk7IC8vIDEuNjE1XG59XG5cblxuLy8gRGVmaW5lIHlvdXIgYmFzZSBmb250LXNpemUgaGVyZTsgbW9zdCBlbGVtZW50cyB3aWxsIGluaGVyaXQgdGhpcy5cbmh0bWwge1xuICAgIEBpbmNsdWRlIGJhc2U7XG4gICAgZm9udC1mYW1pbHk6ICRib2R5LWZmO1xufVxuXG4vLyBDb21tb24gbWFyZ2luLWJvdHRvbSBmb3IgdmVydGljYWwgcmh5dGhtLlxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNixcbnVsLCBvbCwgZGwsXG5maWVsZHNldCxcbnAsXG50YWJsZSxcbnByZSxcbi5iYXNlbGluZSxcbnN2ZyB0ZXh0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAyNHB4O1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgIC1tb3otZm9udC1mZWF0dXJlLXNldHRpbmdzOiBcImxpZ2FcIiBvbjtcbn1cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gICAgZm9udC1mYW1pbHk6ICRoZWFkaW5nLWZmO1xufVxuXG5oMSxcbi5oZWFkaW5nLS1hbHBoYSB7XG5cbiAgICBAaW5jbHVkZSBiZXRhO1xuXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0pe1xuICAgICAgICBAaW5jbHVkZSBhbHBoYSgpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxufVxuXG5oMixcbi5oZWFkaW5nLS1iZXRhIHtcblxuICAgIEBpbmNsdWRlIGdhbW1hO1xuICAgIG1hcmdpbi10b3A6ICRjb25zdGFudDtcblxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtKXtcbiAgICAgICAgQGluY2x1ZGUgYmV0YSgpO1xuXG4gICAgfVxuXG5cblxufVxuXG5oMyxcbi5oZWFkaW5nLS1nYW1tYSB7XG4gICAgQGluY2x1ZGUgZ2FtbWEoKTtcbn1cblxuaDQsXG4uaGVhZGluZy0tZGVsdGEge1xuICAgIEBpbmNsdWRlIGRlbHRhKCk7XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuR3JpZCBTeXN0ZW1cblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vLyAtIG1vYmlsZSBmaXJzdCAoc3RhcnQgc21hbGwgYW5kIHRoZW4gYWRkIGNvbXBsZXhpdHkpXG4vLyAtIDE2IGNvbHVtbnNcbi8vIC0gZ3V0dGVycyBhcmUgbWFkZSB3aXRoIG1hcmdpbi1sZWZ0IGFuZCBwZXJjZW50YWdlcywgc28gaXQgaXMgbmljZWx5IGZsdWlkIGFuZCBlbmFibGVzIHlvdSB0byB1c2UgcGFkZGluZyBpbiBjb2x1bW5zXG4vLyAtIGNhbiBiZSBuZXN0ZWRcbi8vIGJhc2VkIG9uIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS91bmRlcnN0YW5kaW5nLWNzcy1ncmlkLXN5c3RlbXMvXG4ud3JhcHBlciB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcbiAgICBtYXgtd2lkdGg6ICRtYXgtd2lkdGg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDAgJHNwYWNpbmcvMjtcblxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmc6IDAgJGNvbnN0YW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzogMCAkY29uc3RhbnQ7XG4gICAgfVxufVxuXG4ub3JkZXItLWJnciB7XG4gICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDI0MywyNDMsMjQzLDEpIDAlLCByZ2JhKDI1NSwyNTUsMjU1LDApIDEwMCUpO1xuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNDMsMjQzLDI0MywxKSAwJSxyZ2JhKDI1NSwyNTUsMjU1LDApIDEwMCUpO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMjQzLDI0MywyNDMsMSkgMCUscmdiYSgyNTUsMjU1LDI1NSwwKSAxMDAlKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwcHg7XG59XG5cbi53cmFwcGVyLW5hcnJvdyB7XG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIHdpZHRoOiA2MS41NzYzNSU7XG4gICAgfVxufVxuXG4ucm93IHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xufVxuXG4ucm93Omxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi8vIDEgLSBtYWtlIGNvbHVtbnMgcmVsYXRpdmUsIHNvIHRoZSBjb250ZW50cyBjYW4gYmUgcG9zaXRpb24gYWJzb2x1dGVseSB3aXRoaW4gaXRcbltjbGFzc149XCJjb2x1bW4tXCJdLFxuW2NsYXNzKj1cIiBjb2x1bW4tXCJdIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IC8vIDFcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyAvLyB0b2RvXG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbn1cblxuXG5bY2xhc3NePVwiZm9ybS1jb2x1bW4tXCJdLFxuW2NsYXNzKj1cIiBmb3JtLWNvbHVtbi1cIl0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgLy8gMVxuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgbWFyZ2luLWJvdHRvbTogMDsgLy8gdG9kb1xuICAgIGZsb2F0OiBsZWZ0O1xuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICBpbnB1dCB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgfVxuXG5cbn1cblxuXG4vLyB0aGUgY29sdW1ucyB3aWxsIGNoYW5nZSBmcm9tIDEgY29sdW1uIGxheW91dCB0byAxMiBvbiBtZWRpdW0gYnJlYWtwb2ludFxuLy8gaWYgeW91IG5lZWQgZGlmZmVyZW50IGNvbHVtbnMgb24gbWVkaXVtIGFuZCBsYXJnZSBzY3JlZW5zLCB5b3UgY2FuIGRvIGl0IHdpdGggZGVkaWNhdGVkIGNsYXNzZXNzLiBVc2UgbW9kaWZpZXIgLS1tZCB0byBzcGVjaWZ5IGFtb3VudCBvZiBjb2x1bW5zIG9uIG1lZGl1bSBzY3JlZW4sIHRoZW4gLS1sZyBvbiBsYXJnZSBzY3JlZW4uXG5AaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bSkge1xuICAgIC5yb3cge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyAvLyB0b2RvXG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBbY2xhc3NePVwiY29sdW1uLVwiXSxcbiAgICBbY2xhc3MqPVwiIGNvbHVtbi1cIl0ge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAvLyAuY29sdW1uICsgLmNvbHVtbixcbiAgICBbY2xhc3NePVwiY29sdW1uLVwiXSArIFtjbGFzc149XCJjb2x1bW4tXCJdLFxuICAgIFtjbGFzc149XCJjb2x1bW4tXCJdICsgW2NsYXNzKj1cIiBjb2x1bW4tXCJdLFxuICAgIFtjbGFzcyo9XCIgY29sdW1uLVwiXSArIFtjbGFzcyo9XCIgY29sdW1uLVwiXSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAyLjQ2MzA1NDE4NyU7XG4gICAgfVxuXG4gICAgLy8gT24gdGhpcyBwcm9qZWN0IHdlIHVzZSBvbiB0YWJsZXQgMTIgY29sdW1uIGdyaWQgdGFrZW4gZnJvbSBwc2QgY29tcFxuICAgIC8vXG4gICAgLy8gV2l0aCAyLjc2MjQzMDkzOSUgbWFyZ2luLCB3aWR0aCBvZiBvbmUgY29sdW1uIGlzIDUuODAxMTA0OTczJVxuICAgIC8vIGNhbGN1bGF0aW9uIGV4cGxhbmF0aW9uOlxuICAgIC8vIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS91bmRlcnN0YW5kaW5nLWNzcy1ncmlkLXN5c3RlbXMvXG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAxMiB7XG4gICAgICAgIC8vIC5jb2x1bW4tI3skaX0ge1xuICAgICAgICAvLyAgICAgd2lkdGg6ICgoMy45NDA4ODY3JSAqICRpKSArICgyLjQ2MzA1NDE4NyAqICgkaSAtIDEpKSk7XG4gICAgICAgIC8vIH1cblxuICAgICAgICAvLyBzcGVjaWZpYyBjbGFzc2VzIGZvciBtZWRpdW0gc2NyZWVuIC0tbWRcbiAgICAgICAgLmNvbHVtbi0jeyRpfS1vZi0xMiB7XG4gICAgICAgICAgICB3aWR0aDogKCg1LjgwMTEwNDk3MyUgKiAkaSkgKyAoMi43NjI0MzA5MzkgKiAoJGkgLSAxKSkpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5AaW5jbHVkZSByZXNwb25kLXRvKGxhcmdlKSB7XG4gICAgLy8gc3BlY2lmaWMgY2xhc3NlcyBmb3IgbGFyZ2Ugc2NyZWVuIC0tbGdcbiAgICAvLyBXaXRoIDIuNDYzMDU0MTg3JSBtYXJnaW4sIHdpZHRoIG9mIG9uZSBjb2x1bW4gaXMgMy45NDA4ODY3JVxuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggMTYge1xuICAgICAgICAuY29sdW1uLSN7JGl9LW9mLTE2IHtcbiAgICAgICAgICAgIHdpZHRoOiAoKDMuOTQwODg2NyUgKiAkaSkgKyAoMi40NjMwNTQxODcgKiAoJGkgLSAxKSkpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi8vIGZvcm0gY29sdW1uc1xuQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAxMiB7XG4gICAgLy8gLmNvbHVtbi0jeyRpfSB7XG4gICAgLy8gICAgIHdpZHRoOiAoKDMuOTQwODg2NyUgKiAkaSkgKyAoMi40NjMwNTQxODcgKiAoJGkgLSAxKSkpO1xuICAgIC8vIH1cblxuICAgIC8vIHNwZWNpZmljIGNsYXNzZXMgZm9yIG1lZGl1bSBzY3JlZW4gLS1tZFxuICAgIC5mb3JtLWNvbHVtbi0jeyRpfS1vZi0xMiB7XG4gICAgICAgIHdpZHRoOiAoOC4zMzMzMzMzJSAqICRpKTtcbiAgICB9XG59XG5cbi8vIGJlY2F1c2Ugb2YgdGVzdGltb25pYWwgYm94IGluIG8tbmFzIHRlbXBsYXRlLlxuLm9mZnNldC0xLW9mLTE2IHtcblxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDYuNDAzOTQ0MTg3JTtcbiAgICB9XG59XG4iLCIvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vICBCQVNFXG4vLyAgQmFzaWMgc3R5bGVzIGZvciBwcmV0dHkgbXVjaCBhbGwgdGhlIHNpdGUuXG4vLyAgU2VsZWN0b3JzIHNob3VsZCBiZSB0YWdzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbmJvZHkge1xuICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG59XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBMaW5rc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbmEge1xuICAgIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgLW1vei1mb250LWZlYXR1cmUtc2V0dGluZ3M6IFwibGlnYVwiIG9uO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkbGluay1jb2xvci0taG92ZXI7XG4gICAgfVxuXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbGluay1jb2xvci0tZm9jdXM7XG4gICAgfVxufVxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gTGlzdHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG51bCB7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgLy8gcGFkZGluZy1sZWZ0OiAwO1xufVxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gSW1hZ2Vcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5pbWcge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG59XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBGb3Jtc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbmlucHV0LFxudGV4dGFyZWEge1xuICAgIEBpbmNsdWRlIG1pbGxpO1xuICAgIHBhZGRpbmc6IDAgMTJweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3JheS0tbGlnaHQ7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG59XG5cbmlucHV0W3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbmlucHV0W3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbn1cblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFNlbGVjdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbmJsb2NrcXVvdGUge1xuICAgIG1hcmdpbjogMDtcbn1cblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFNlbGVjdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjo6c2VsZWN0aW9uIHtcbiAgICBiYWNrZ3JvdW5kOiAkYnJhbmQtY29sb3ItLXByaW1hcnk7XG4gICAgY29sb3I6ICR3aGl0ZTtcbn1cblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFByaW50IHN0eWxlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkBtZWRpYSBwcmludCB7XG4gICAgKiB7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcblxuICAgICAgICAvKiBJbWFnZXMsIHZlY3RvcnMgYW5kIHN1Y2ggKi9cbiAgICAgICAgZmlsdGVyOiBncmF5KCk7XG4gICAgICAgIGZpbHRlcjogZ3JheXNjYWxlKDEwMCUpO1xuICAgIH1cblxuICAgIGEge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG5cbiAgICBhW2hyZWZdOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyAoJyBhdHRyKGhyZWYpICcpJztcbiAgICB9XG5cbiAgICBhW2hyZWY9XCIjXCJdLFxuICAgIGFbaHJlZj1cImphdmFzY3JpcHQ6XCJdIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgfVxufVxuIiwiLmFib3V0LXVzX19oZWFkaW5nIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2luZztcbn1cbiIsIi5hY2NvdW50IHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgLy8gaGVpZ2h0OiA0MHB4O1xuICAgIHBhZGRpbmc6ICgkc3BhY2luZyAvIDQpIDA7XG4gICAgQGluY2x1ZGUgbWlsbGk7XG5cbiAgICBpbnB1dCB7XG4gICAgXHRkaXNwbGF5OiBub25lO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgIGhlaWdodDogMzhweDtcbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC10byhsYXJnZSkge1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxODBweDtcbiAgICBcdH1cblx0fVxuXG5cblx0QG1lZGlhIChtYXgtd2lkdGg6IDY1ZW0pe1xuXG5cdFx0LmJ1dHRvbi0taW52aXNpYmxlIHtcblx0XHRcdG1hcmdpbjogMDtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXG5cdFx0LmJ1dHRvbi0tcHJpbWFyeSwgLmJ1dHRvbi0tcHJpbWFyeTpob3ZlciB7XG5cdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0Y29sb3I6ICRsaW5rLWNvbG9yLS1ob3Zlcjtcblx0XHRcdH1cblxuXHRcdCAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblx0XHRcdHBhZGRpbmc6IDJweCA2cHg7XG5cdFx0XHRtYXJnaW4tbGVmdDogLTZweDsgLy8gYXNzdW1pbmcgdGhlcmUgd2lsbCBiZSBDVEEgb24gdGhlIGxlZnQgc2lkZVxuXHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdCAgICBcdGNvbG9yOiAkbGluay1jb2xvcjtcblx0ICAgIFx0YmFja2dyb3VuZDogbm9uZTtcblx0ICAgIFx0Ym9yZGVyOiBub25lO1xuXHRcdH1cblxuXHR9XG5cbn1cblxuLmFjY291bnRfX2Zvcm0ge1xuICAgIGZvcm0ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obWVudS1sYXJnZSkge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgKyAuYnV0dG9uIHsgLy8gcmVnaXN0cmFjZSBsaW5rXG4gICAgICAgIGxpbmUtaGVpZ2h0OiA0MDtcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgIH1cbn1cblxuLmFjY291bnRfX2xvZ2luLWxpbmsge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXdlaWdodDogYm9sZDtcblxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obWVudS1sYXJnZSkge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICsgLmJ1dHRvbiB7IC8vIHJlZ2lzdHJhY2UgbGlua1xuICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcblxuICAgICAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lbnUtbGFyZ2UpIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLmFqYXgge1xuXG5cdCYtbG9hZGVyX193cmFwcGVyIHtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0XHRtYXJnaW46ICRjb25zdGFudCAwO1xuXG5cdFx0aW1nIHtcblx0XHRcdHdpZHRoOiAzMnB4O1xuXHRcdFx0aGVpZ2h0OiAzMnB4O1xuXHRcdH1cblx0fVxuXG59XG4iLCIuYWxlcnQge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB6LWluZGV4OiA5OTk5OTk5OTtcbiAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgYm94LXNoYWRvdzogMHB4IDJweCA1cHggcmdiYSgwLCAwLCAwLCAwLjMpO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aWR0aDogOTAlO1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICB0b3A6ICgkY29uc3RhbnQpO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG5cbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bSkge1xuICAgICAgICByaWdodDogKCRjb25zdGFudCk7XG4gICAgICAgIGxlZnQ6ICgkY29uc3RhbnQpO1xuICAgICAgICBtYXgtd2lkdGg6ICRtYXgtd2lkdGg7IFxuICAgICAgICB0b3A6IGF1dG87XG4gICAgfVxuXG4gICAgLmNsb3NlIHtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIHRvcDogOHB4O1xuICAgICAgICByaWdodDogOHB4O1xuICAgICAgICBjb2xvcjogJGJyYW5kLWNvbG9yLS1wcmltYXJ5OyAvLyBUT0RPOiBjaGFuZ2UgJ3ByaW1hcnknIHRvICdzZWNvbmRhcnknXG4gICAgICAgIEBleHRlbmQgLmljb247XG4gICAgICAgIEBleHRlbmQgLmljb24tY2xvc2U7XG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yIDAuM3M7XG5cbiAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogJGJyYW5kLWNvbG9yLS1wcmltYXJ5LWRhcms7IC8vIFRPRE86IGNoYW5nZSAncHJpbWFyeScgdG8gJ3NlY29uZGFyeSdcbiAgICAgICAgfVxuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjNweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zZWN0aW9uLS1ob3Jpem9udGFsIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgIH1cbn1cblxuLmFsZXJ0X19iYWNrLWxpbmsuYWxlcnRfX2JhY2stbGluayB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNvbnN0YW50O1xuXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkY29uc3RhbnQ7XG4gICAgfVxufVxuXG5cbi5hbGVydF9fYWRkLWNvdmVycyB7XG5cbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcblxuICAgIC5wcm9kdWN0LWl0ZW1fX2Zvcm0ge1xuICAgICAgICBtYXJnaW46IDAgMzBweDtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgICBsYWJlbFtmb3I9XCJhbW91bnRcIl0ge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnN1Ym1pdEJ1dHRvbiB7XG5cbiAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRicmFuZC1jb2xvci0tcHJpbWFyeTtcbiAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtY29sb3ItLXByaW1hcnk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblxuICAgICAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGJyYW5kLWNvbG9yLS1wcmltYXJ5O1xuICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5iYXNrZXRfX3VuaXQtcHJpY2Uge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG5cbiAgICB9XG5cbn1cblxuLmFsZXJ0X19hZGQtbW9yZSB7XG4gICAgbWFyZ2luLXRvcDogJGNvbnN0YW50O1xufVxuXG4uYWxlcnRfX2Nsb3NlIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIG9wYWNpdHk6IDAuODtcbiAgICAtbXMtZmlsdGVyOiBcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5BbHBoYShPcGFjaXR5PTgwKVwiO1xuICAgIGZpbHRlcjogYWxwaGEob3BhY2l0eT04MCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMyMzc0MTtcbiAgICB6LWluZGV4OiA5OTk5OTk5ODsgLy8gcmlnaHQgYmVsb3cgLmFsZXJ0XG59XG4iLCIuYXV0b2NvbXBsZXRlX193cmFwcGVyLS1pbm5lciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3JheS0tOTA7XG4gICAgei1pbmRleDogMTAwO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xufVxuXG5cbi5hdXRvY29tcGxldGVfX3dyYXBwZXItLW91dGVyIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bSl7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1heC13aWR0aDogNTAwcHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhsYXJnZSl7XG4gICAgICAgIC8vd2lkdGg6IDUwJTtcbiAgICB9XG59XG5cblxuLnNpdGUtdG9wLW5hdl9fd3JhcHBlci0tYXV0b2NvbXBsZXRlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiA5OTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bSl7XG4gICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG5cbi5zaXRlLXNlYXJjaF9fd3JhcHBlciB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZzogJGNvbnN0YW50IDcwcHggJGNvbnN0YW50ICRjb25zdGFudDtcbiAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG5cbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bSl7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgIH1cblxuICAgIC5zaXRlLXNlYXJjaCB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDUwcHg7XG4gICAgfVxufVxuXG4uc2l0ZS1zZWFyY2hfX2Zvcm0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnNpdGUtc2VhcmNoX19zdWJtaXQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHdpZHRoOiA0NnB4O1xuICAgIGhlaWdodDogNTBweDtcbiAgICB6LWluZGV4OiAwO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAkaWNvbi1zZWFyY2g7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAndWNlYm5pY2VWYW5pY2VrJyAhaW1wb3J0YW50O1xuICAgICAgICBzcGVhazogbm9uZTtcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICBmb250LXNpemU6IDEuNWVtO1xuICAgICAgICBmb250LXNpemU6IDI0cHggLzkgIWltcG9ydGFudDtcbiAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogMjAwMDtcbiAgICAgICAgcmlnaHQ6ICRzcGFjaW5nLzI7XG4gICAgICAgIHRvcDogMC41ZW07XG4gICAgICAgIGNvbG9yOiAkYnJhbmQtY29sb3ItLXByaW1hcnk7XG4gICAgICAgIHotaW5kZXg6IC0xO1xuICAgIH1cbn1cblxuLnNpdGUtc2VhcmNoX19zdWJtaXQtaW5wdXQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogMDtcbiAgICBib3R0b206IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3BhY2l0eTogMDtcbn1cblxuLnNlYXJjaC1jbG9zZSB7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiBtYXAtZ2V0KCRicmVha3BvaW50cywgbWVkaXVtKSkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cblxuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgY29udGVudDogJGljb24tY2xvc2U7XG4gICAgZm9udC1mYW1pbHk6ICd1Y2VibmljZVZhbmljZWsnICFpbXBvcnRhbnQ7XG4gICAgc3BlYWs6IG5vbmU7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgZm9udC1zaXplOiAzMHB4O1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDIwMDA7XG4gICAgcmlnaHQ6ICRzcGFjaW5nLzI7XG4gICAgdG9wOiAzM3B4O1xuICAgIGNvbG9yOiAkZ3JheS0tNjA7XG4gICAgQGV4dGVuZCAuaWNvbjtcbiAgICBAZXh0ZW5kIC5pY29uLWNsb3NlO1xufVxuXG4uYXV0b2NvbXBsZXRlX193cmFwcGVyIHtcblxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bSl7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgfVxuXG5cblx0Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG5cdGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcblxuXHR1bDpsYXN0LW9mLXR5cGUgbGk6bGFzdC1vZi10eXBlIHtcblx0XHRib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcblx0XHRib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG5cdH1cblxuXHQmLmF1dG9jb21wbGV0ZS0tc2hvdyB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuXG5cdHotaW5kZXg6IDk5O1xufVxuXG5cblxuLml0ZW0tLXNob3ctYWxsIHtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5pdGVtX19saXN0IHtcblx0bGlzdC1zdHlsZS10eXBlOiBub25lO1xuXHRwYWRkaW5nOiAwO1xuXHRtYXJnaW46IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogdGFibGU7XG5cblx0bGkge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdGZsb2F0OiBsZWZ0O1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdHBhZGRpbmctbGVmdDogJHNwYWNpbmcvMjtcblx0XHRwYWRkaW5nLXJpZ2h0OiAkc3BhY2luZy8yO1xuXHRcdEBpbmNsdWRlIGNsZWFyZml4O1xuXHR9XG5cblx0bGkuaXRlbS0taGVhZGVyIHtcblx0XHQvLyBib3JkZXItdG9wOiAycHggc29saWQgJGdyYXktLTkwO1xuXHRcdEBpbmNsdWRlIGRlbHRhO1xuXHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRcdHBhZGRpbmc6ICRjb25zdGFudC8yICRzcGFjaW5nLzI7XG5cdFx0cGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cdH1cblxuXHRsaS5pdGVtLS1wcm9kdWN0IHtcblx0XHRAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG5cdFx0cGFkZGluZy1ib3R0b206ICRjb25zdGFudC8yO1xuXHRcdHBhZGRpbmctdG9wOiAkY29uc3RhbnQvMjtcblx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyYXktLTkwO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuXG5cblx0XHQmOmxhc3Qtb2YtdHlwZSB7XG5cdFx0XHRib3JkZXItYm90dG9tOiAwO1xuXHRcdH1cblxuXG5cdFx0Lm1ldGEge1xuICAgICAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcblx0XHR9XG5cbiAgICAgICAgLmZsYWcge1xuICAgICAgICAgICAgZGlzcGxheTogdGFibGUtcm93O1xuICAgICAgICB9XG5cblx0XHQuZmxhZ19fYm9keSwgLmZsYWdfX2ltYWdlIHtcblx0XHRcdC8vIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcblx0XHRcdGEge1xuXHRcdFx0XHRAaW5jbHVkZSBkZWx0YTtcblx0XHRcdFx0bGluZS1oZWlnaHQ6IDFlbTtcblxuXHRcdFx0fVxuXG5cdFx0XHRzcGFuIHtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdFx0XHR9XG5cdFx0fVxuXG4gICAgLmZsYWdfX2ltYWdlIHtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgIH1cblxuICAgIC5mbGFnX19ib2R5IHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkY29uc3RhbnQvMjtcbiAgICB9XG5cbiAgICAuZmxhZ19fYm9keSA+IGRpdiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgfVxuXG5cdFx0LnByaWNlX193cmFwcGVyIHtcblx0XHRcdGxpbmUtaGVpZ2h0OiAxZW07XG4gICAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuXHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0dGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICAgICAgbWluLXdpZHRoOiAxMjBweDtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcblx0XHRcdCAgICAgICAgICAgIFxuICAgICAgICAgICAgLnByaWNlIHtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICYtLW9yaWdpbmFsIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgemV0YTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgICAgIGNsZWFyOiByaWdodDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yNWVtO1xuICAgICAgICAgICAgfVxuXHRcdH1cblx0fVxuXG5cdGxpLml0ZW0tLXNob3ctYWxsIHtcblx0XHRib3JkZXItdG9wOiAycHggc29saWQgJGdyYXktLTkwO1xuXHRcdGJhY2tncm91bmQ6ICRncmF5LS05Njtcblx0XHRwYWRkaW5nLXRvcDogJGNvbnN0YW50LzI7XG5cdFx0cGFkZGluZy1ib3R0b206ICRjb25zdGFudC8yO1xuXHRcdG1hcmdpbi10b3A6ICRjb25zdGFudC8yO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgYTphZnRlciB7XG4gICAgICAgICAgICBAZXh0ZW5kIC5pY29uO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDRweCAwIDA7XG4gICAgICAgICAgICB0b3A6ICRjb25zdGFudC8yICsgNTtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICRpY29uLWFycm93LXJpZ2h0O1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA0cHg7XG4gICAgICAgIH1cblx0fVxufVxuIiwiLmJhY2stdG8tdG9wIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHJpZ2h0OiAwO1xuXHR0b3A6IDA7XG5cdG1hcmdpbi1yaWdodDogJGNvbnN0YW50O1xuXG5cdC5pY29uIHtcblx0XHRtYXJnaW4tbGVmdDogOHB4O1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHR0b3A6IDVweDtcblx0XHRmb250LXNpemU6IDE1MCU7XG5cdH1cblxuXHQmLS1maXhlZCB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblxuXHRcdGEge1xuXHRcdFx0cG9zaXRpb246IGZpeGVkO1xuXHRcdFx0ZGlzcGxheTogdGFibGU7XG5cdFx0XHR3aWR0aDogMiokc3BhY2luZztcblx0XHRcdGhlaWdodDogMiokc3BhY2luZztcblx0XHRcdG1hcmdpbi1sZWZ0OiAtMiokc3BhY2luZztcblx0XHRcdGJvdHRvbTogJGNvbnN0YW50O1xuXHRcdFx0QGluY2x1ZGUgZ2FtbWE7XG5cdFx0XHRib3JkZXI6IDFweCBzb2xpZCAkZ3JheTtcblx0XHRcdGJhY2tncm91bmQ6ICR3aGl0ZTtcblx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRcdGNvbG9yOiAkZ3JheS0tZGFyaztcblx0XHRcdHotaW5kZXg6IDk5OTtcblx0XHRcdEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuXHRcdFx0dHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjNzLCBib3JkZXIgMC4zcywgY29sb3IgMC4zcywgb3BhY2l0eSAwLjNzO1xuXG5cdFx0XHQmOmhvdmVyLCAmOmZvY3VzLCAmOmFjdGl2ZSB7XG5cdFx0XHRcdGJvcmRlcjogMXB4IHNvbGlkICRncmF5LS1kYXJrO1xuXHRcdFx0XHRjb2xvcjogJGxpbmstY29sb3I7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Lmljb24ge1xuXHRcdFx0dG9wOiAxcHg7XG5cdFx0XHRkaXNwbGF5OiB0YWJsZS1jZWxsO1xuXHRcdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdG1hcmdpbjogMDtcblx0XHR9XG5cdH1cbn1cbiIsIi5iYW5uZXIge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4KCk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDQwcHggJGNvbnN0YW50IDA7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoLTUwdncgKyA1MCUpO1xuICAgIG1hcmdpbi1yaWdodDogY2FsYygtNTB2dyArIDUwJSk7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBpbWFnZSgnaW50cm8tLWhvbWUyLmpwZycpO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAlIDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJGdyYXktLTkwO1xuXG4gICAgICAgIFxuICAgICAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bSkge1xuICAgICAgICAgICAgLy8gcmlnaHQ6IC0zMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC10byhsYXJnZSkge1xuICAgICAgICAgICAgLy8gd2lkdGg6IDMwMDBweDtcbiAgICAgICAgICAgIC8vIG1hcmdpbi1sZWZ0OiAtMTUwMHB4O1xuICAgICAgICAgICAgLy8gbGVmdDogNTAlO1xuICAgICAgICB9XG5cbiAgICB9XG59XG5cbi5iYW5uZXItLW9uYXMge1xuICAgIG1pbi1oZWlnaHQ6IDIwMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcblxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtKSB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDMxNnB4O1xuICAgIH1cblxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogaW1hZ2UoJ29uYXMtMS1tb2JpbGUucG5nJyk7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bSkge1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBpbWFnZSgnb25hcy0xLnBuZycpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNDIlIGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obGFyZ2UpIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB9XG5cbiAgICB9XG59XG5cbi5iYW5uZXItLXBob3RvIHtcblxuICAgIGgyIHtcbiAgICAgICAgQGluY2x1ZGUgYmV0YTtcblxuICAgICAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bSkge1xuICAgICAgICAgICAgQGluY2x1ZGUgYWxwaGE7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nOiAkY29uc3RhbnQgJGNvbnN0YW50IDA7XG4gICAgfVxuXG59XG5cbi5iYW5uZXItLWxhcmdlIHtcbiAgICBwYWRkaW5nOiAoJGNvbnN0YW50ICogNSkgKCRjb25zdGFudCAvIDIpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIGgxIHtcbiAgICAgICAgQGluY2x1ZGUgYWxwaGE7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxufVxuXG4uYmFubmVyLS1iYXNrZXQge1xuICAgIHBhZGRpbmctdG9wOiAkc3BhY2luZy8yO1xuICAgIHBhZGRpbmctYm90dG9tOiAkc3BhY2luZy8yO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0pe1xuICAgICAgICBwYWRkaW5nLXRvcDogJHNwYWNpbmc7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAkc3BhY2luZztcbiAgICB9XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGltYWdlKCdicmVhZGNydW1icy1zaG9wLWJnLmpwZycpO1xuICAgIH1cblxuICAgID4gLnNlY3Rpb24tLWhvcml6b250YWwge1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIH1cbn1cblxuXG5cbi5iYW5uZXItLWV4dGVuZCB7XG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhsYXJnZSkge1xuICAgICAgICBtYXJnaW4tbGVmdDogY2FsYygtNTB2dyArIDMzJSk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogY2FsYygtNTB2dyArIDY3JSk7XG4gICAgfVxufVxuXG5cbi8vIHdyYXBwZXIgcHJvIHZuaXRyZWsgYmFubmVydSB1IGR2b3VzbG91cGNvdmVobyBsYXlvdXR1XG4uYmFubmVyX19pbm5lciB7XG4gICAgbWF4LXdpZHRoOiAxMjIwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgLy8gd2lkdGg6IDc1JTtcbiAgICAvLyBwYWRkaW5nLWxlZnQ6IDE3LjM3NSU7XG4gICAgLy8gcGFkZGluZy1yaWdodDogJHNwYWNpbmc7XG59XG5cbi5iYW5uZXJfX2lubmVyLS1jb2x1bW4ge1xuICAgIC8vIHBhZGRpbmctcmlnaHQ6ICgkc3BhY2luZyAqIDMpO1xuICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obGFyZ2UpIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMjIwcHg7XG4gICAgICAgIHBhZGRpbmc6IDAgMjRweDtcblxuICAgICAgICAuYmFubmVyX19pbm5lci1oYWNrIHtcbiAgICAgICAgICAgIC8vd2lkdGg6IDc0LjYyNSU7XG4gICAgICAgICAgICB3aWR0aDogNzQuMTI1JTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO21hcmdpbi1yaWdodDogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5iYXNrZXQtYnV0dG9uIHtcbiAgICBmbG9hdDogcmlnaHQ7XG5cbiAgICAmLm5vdC1lbXB0eSB7XG4gICAgICAgIGNvbG9yOiAkYnJhbmQtY29sb3ItLXNlY29uZGFyeTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYnJhbmQtY29sb3ItLXNlY29uZGFyeTtcbiAgICAgICAgJjpob3ZlciwgJjpmb2N1cywgJjphY3RpdmUge1xuICAgICAgICAgICAgY29sb3I6ICRicmFuZC1jb2xvci0tc2Vjb25kYXJ5LWRhcms7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaWNvbiB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1pY29uO1xuICAgIH1cbn1cbiIsIi5iYXNrZXQtaGVhZGVyIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgZGlzcGxheTogbm9uZTtcblxuXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0pe1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuXG4gICAgfVxufVxuXG4uYmFza2V0LWhlYWRlcl9faW5uZXIge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmJhc2tldC1oZWFkZXJfX2hlYWRpbmcge1xuICAgIEBpbmNsdWRlIGdhbW1hO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5iYXNrZXQtaGVhZGVyX19ub3RlIHtcbiAgICBAaW5jbHVkZSBtaWxsaTtcbiAgICBjb2xvcjogJGdyYXktLWRhcmtlcjtcbiAgICBtYXJnaW46IDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbn1cblxuLmJhc2tldC1oZWFkZXJfX3Bob25lIHtcbiAgICBAaW5jbHVkZSBnYW1tYTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbGluZS1oZWlnaHQ6IDU0cHg7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAkY29uc3RhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgY29sb3I6ICRicmFuZC1jb2xvci0tcHJpbWFyeTtcblxuICAgIC5pY29uIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICAgIH1cbn1cbiIsIkBpbmNsdWRlIGNvbXBvbmVudCgoXG4gICAgJ2Jhc2tldC1tZWRpdW0nOiA1MS4yNWVtLFxuICAgICdiYXNrZXQtbGFyZ2UnOiA2Mi41ZW1cbikpIHtcblxuICAgIC5iYXNrZXRfX3dyYXBwZXIge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAuYmFza2V0LWl0ZW0ge1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICAgICAgLy8gZmxhZ1xuICAgICAgICAvLyBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC10byhiYXNrZXQtbWVkaXVtKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1yb3c7XG4gICAgICAgIH1cblxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmJhc2tldC1pdGVtX19tZXRhIHtcbiAgICAgICAgLy8gZmxhZ1xuICAgICAgICAvLyBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAvLyB3aWR0aDogMTAwJTtcbiAgICAgICAgLy8gZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8oYmFza2V0LW1lZGl1bSkge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA1MDBweDtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgICAgfVxuXG5cbiAgICAgICAgLmZsYWcge1xuICAgICAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5mbGFnX19pbWFnZSB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG5cbiAgICAgICAgPiBpbWcge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmZsYWdfX2JvZHkge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogNDBweDtcblxuICAgICAgICBAaW5jbHVkZSByZXNwb25kLXRvKGJhc2tldC1tZWRpdW0pIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZGVsdGE7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5iYXNrZXQtaXRlbV9fYWN0aW9uIHtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIC8vIGZsYWdcbiAgICAgICAgLy8gZGlzcGxheTogYmxvY2s7XG4gICAgICAgIC8vIHdpZHRoOiAxMDAlO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgIC8vIGZsb2F0OiByaWdodDtcbiAgICB9XG5cbiAgICAuYmFza2V0LWl0ZW1fX2J1dHRvbiB7XG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1pY29uO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmJhc2tldC1pdGVtX19mb3JtIHtcbiAgICAgICAgLy8gZmxvYXQ6IHJpZ2h0O1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxNnB4O1xuXG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8oYmFza2V0LW1lZGl1bSkge1xuICAgICAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC10byhiYXNrZXQtbGFyZ2UpIHtcbiAgICAgICAgICAgIC8vXG4gICAgICAgIH1cblxuICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDdweCAxMHB4IDVweDsgLy9pbnB1dCBoYXMgc29tZSBicm93c2VyIHN0eWxpbmdcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCA2cHg7XG4gICAgICAgIH1cblxuICAgICAgICAucHJvZHVjdC1pdGVtX19mb3JtIHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuXG5cbiAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8oYmFza2V0LW1lZGl1bSkge1xuICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5iYXNrZXQtaXRlbV9fZm9ybS0tbGVmdCB7XG4gICAgICAgIC8vcGFkZGluZy1sZWZ0OiA3MHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8oYmFza2V0LW1lZGl1bSkge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC10byhzbWFsbCkge1xuICAgICAgICAgICAgLy8gcGFkZGluZy1sZWZ0OiA3MHB4O1xuICAgICAgICB9XG4gICAgICAgIC8vIGZsb2F0OiBub25lO1xuICAgICAgICAvLyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgLmJhc2tldF9fdW5pdC1wcmljZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIC8vIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkY29uc3RhbnQ7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICBjb2xvcjogJHR5cGUtY29sb3ItLW11dGVkO1xuXG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8oYmFza2V0LWxhcmdlKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmJhc2tldF9fdW5pdC1wcmljZS1zbWFsbCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAvLyBtYXJnaW4tcmlnaHQ6ICRjb25zdGFudDtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBjb2xvcjogJHR5cGUtY29sb3ItLW11dGVkO1xuXG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8oYmFza2V0LWxhcmdlKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmJhc2tldF9fcHJpY2Uge1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgQGluY2x1ZGUgZGVsdGE7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEycHg7XG4gICAgICAgIHBhZGRpbmc6IDAgMCAxMHB4ICRjb25zdGFudDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuXG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8oYmFza2V0LW1lZGl1bSkge1xuICAgICAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMzRweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8oYmFza2V0LWxhcmdlKSB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogNTBweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmJhc2tldC1pdGVtX19yZW1vdmUtd3JhcHBlciB7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICByaWdodDogMDtcblxuICAgICAgICBAaW5jbHVkZSByZXNwb25kLXRvKGJhc2tldC1tZWRpdW0pIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5iYXNrZXQtaXRlbV9fcmVtb3ZlIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBjb2xvcjogJHdhcm5pbmc7XG4gICAgICAgIGZvbnQtc2l6ZTogMTUwJTtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgfVxufVxuIiwiLmJhc2tldC1zdGVwcyB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uYmFza2V0LXN0ZXBzX19pdGVtIHtcbiAgICB3aWR0aDogMjQlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIHBhZGRpbmctbGVmdDogJHNwYWNpbmcvNDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkc3BhY2luZy80O1xuXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0pe1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxLjUqJHNwYWNpbmc7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEuNSokc3BhY2luZztcbiAgICB9XG5cbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKGxhcmdlKXtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyLjUqJHNwYWNpbmc7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDIuNSokc3BhY2luZztcbiAgICB9XG5cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0pe1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbGVmdDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICRncmF5LS05MDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMjVweDtcbiAgICAgICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC10byhsYXJnZSl7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTM3LjVweDtcbiAgICAgICAgICAgIHdpZHRoOiA3NXB4O1xuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmJhc2tldC1zdGVwc19fbGluayB7XG4gICAgQGluY2x1ZGUgZXBzaWxvbjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBjb2xvcjogJGdyYXktLTYwO1xuICAgICY6aG92ZXIsICY6Zm9jdXMsICY6YWN0aXZlIHtcbiAgICAgICAgY29sb3I6ICRncmF5LS02MDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bSl7XG4gICAgICAgIEBpbmNsdWRlIGdhbW1hO1xuICAgIH1cbn1cblxuLmJhc2tldC1zdGVwc19fbGluay0tYWN0aXZlIGEge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgJjpob3ZlciwgJjpmb2N1cywgJjphY3RpdmUge1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgIH1cbn1cblxuLmJhc2tldC1zdGVwc19fbGluay0taW5hY3RpdmUgYSB7XG4gICAgY29sb3I6ICRibGFjaztcbiAgICAmOmhvdmVyLCAmOmZvY3VzLCAmOmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgfVxufVxuXG4uYmFza2V0LXN0ZXBzX19saW5rLS1wcmV2ICB7XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGxpbmstY29sb3I7XG4gICAgICAgIG9wYWNpdHk6IDAuMztcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbGluay1jb2xvci0taG92ZXI7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIuYmFza2V0X19hZGQtbW9yZSB7XG4gICAgQGluY2x1ZGUgbWlsbGk7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgLy8gYm9yZGVyLXRvcDogMXB4IHNvbGlkICRib3JkZXItY29sb3I7IC8vIGh0dHBzOi8vd3d3LnVjZWJuaWNldmFuaWNlay5jei9rb3Npay8gemR2b2pvdmFsbyB0byBva3JhaiB2IGtvc2lrdVxufVxuXG4uYmFza2V0X19iYWNrLWxpbmsge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLXRvcDogJGNvbnN0YW50O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0pIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgbWFyZ2luLXRvcDogOTBweDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgQGV4dGVuZCAuaWNvbjtcbiAgICAgICAgY29udGVudDogJGljb24tYXJyb3ctbGVmdDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IDJweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7XG4gICAgfVxuXG4gICAgc3BhbiB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbn1cblxuLmJhc2tldF9fdG90YWwtcHJpY2Uge1xuICAgIEBpbmNsdWRlIGJldGE7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbWFyZ2luLWJvdHRvbTogKCRjb25zdGFudCAvIDIpO1xufVxuXG4uYmFza2V0X190b3RhbCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0pIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogKCRjb25zdGFudCAqIDIpO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbn1cblxuLmJhc2tldF9fcHJpY2Utbm90ZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogKCRjb25zdGFudCAvIC0yKTtcbn1cblxuLmJhc2tldF9fbmV4dC1idXR0b24uYmFza2V0X19uZXh0LWJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgZGVsdGE7XG4gICAgcGFkZGluZzogNXB4IDE3cHggN3B4O1xuICAgIG1hcmdpbi1ib3R0b206IDE3cHg7XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgQGV4dGVuZCAuaWNvbjtcbiAgICAgICAgY29udGVudDogJGljb24tYXJyb3ctcmlnaHQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiA1cHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTUwJTtcbiAgICB9XG59XG5cblxuLmJ1dHRvbi0tc3VibWl0IHtcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgQGV4dGVuZCAuaWNvbjtcbiAgICAgICAgY29udGVudDogJGljb24tYXJyb3ctcmlnaHQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiA1cHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTUwJTtcbiAgICB9XG59XG4iLCIubmF2LmJyZWFkY3J1bWJzIHtcbiAgICBwYWRkaW5nOiAkY29uc3RhbnQvMiAwICgkY29uc3RhbnQgLyAyKTtcbiAgICBwYWRkaW5nLXRvcDogMDtcblxuXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhsYXJnZSl7XG4gICAgICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgIH1cblxuICAgIGxpOmFmdGVyIHtcbiAgICAgICAgQGV4dGVuZCAuaWNvbjtcbiAgICAgICAgbWFyZ2luOiAwIDRweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IDJweDtcbiAgICAgICAgY29sb3I6ICRicmFuZC1jb2xvci0tcHJpbWFyeTtcbiAgICAgICAgY29udGVudDogJGljb24tYXJyb3ctcmlnaHQ7XG4gICAgfVxuXG4gICAgbGk6bGFzdC1jaGlsZDphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cblxuIiwiLmJ1bGxldC1saXN0IHtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuXG4gICAgbGkge1xuICAgICAgICBsaW5lLWhlaWdodDogMS44O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmctbGVmdDogJGNvbnN0YW50O1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIEBleHRlbmQgLmljb247XG4gICAgICAgICAgICBjb250ZW50OiAkaWNvbi1hcnJvdy1yaWdodDtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDVweDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAvLyBwYWRkaW5nLXJpZ2h0OiAyMnB4O1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLmJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgbWlsbGk7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IDAgMTJweDtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAvLyBtYXJnaW4tYm90dG9tOiAkY29uc3RhbnQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4zcywgYm9yZGVyIDAuM3M7XG59XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBDb2xvciBzdHlsZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uYnV0dG9uLS1wcmltYXJ5IHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1jb2xvci0tcHJpbWFyeTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkYnJhbmQtY29sb3ItLXByaW1hcnktZGFyaztcblxuICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYnJhbmQtY29sb3ItLXNlY29uZGFyeTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgZGFya2VuKCRicmFuZC1jb2xvci0tc2Vjb25kYXJ5LCAxMCUpO1xuICAgIH1cbn1cblxuLmJ1dHRvbi0tc2Vjb25kYXJ5IHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkYnJhbmQtY29sb3ItLXNlY29uZGFyeTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBjb2xvcjogJGJyYW5kLWNvbG9yLS1zZWNvbmRhcnk7XG59XG5cbi5idXR0b24tLW11dGVkIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3JheTtcbiAgICBjb2xvcjogJGdyYXktLWRhcms7XG59XG5cbi5idXR0b24tLWludmlzaWJsZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW4tbGVmdDogMTJweDsgLy8gYXNzdW1pbmcgdGhlcmUgd2lsbCBiZSBDVEEgb24gdGhlIGxlZnQgc2lkZVxufVxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gU2l6aW5nXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmJ1dHRvbi0tbGFyZ2Uge1xuICAgIHBhZGRpbmc6ICRmb3JtLXBhZGRpbmctLWxhcmdlO1xufVxuXG4uaWNvbi0tbGFyZ2Uge1xuICAgIGZvbnQtc2l6ZTogMTUwMCU7XG59XG5cbi5idXR0b24tLWN0YSB7XG4gICAgZm9udC1zaXplOiAyMXB4O1xuICAgIHBhZGRpbmc6ICgkY29uc3RhbnQgLyAyKSAkc3BhY2luZztcbn1cblxuLmJ1dHRvbi0tc3VibWl0IHtcbiAgICBmb250LXNpemU6IDIxcHg7XG4gICAgcGFkZGluZzogN3B4ICRzcGFjaW5nO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5idXR0b24tLXN1Ym1pdC1pbmxpbmUge1xuICAgIEBpbmNsdWRlIGJhc2U7XG4gICAgcGFkZGluZzogKCRjb25zdGFudCAvIDQpICgkc3BhY2luZyAvIDIpO1xufVxuIiwiLmNhdGVnb3J5LWFjdGlvbnMge1xuXHRtYXJnaW4tdG9wOiA0NXB4O1xufSIsIi5jYXRlZ29yeS1maWx0ZXJfX2Zvcm0ge1xuXG4gICAgbWFyZ2luLWJvdHRvbTogJGNvbnN0YW50O1xuICAgIGZsb2F0OiBsZWZ0O1xuXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0pe1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIG1hcmdpbi10b3A6ICRzcGFjaW5nLzQ7XG4gICAgfVxufVxuXG5cbi5jYXRlZ29yeV9fd3JhcHBlciB7XG4gICAgaDEge1xuICAgICAgICBAaW5jbHVkZSBiZXRhO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbn0iLCIuY2hhbmNlIHtcbiAgICAvLyB3aWR0aDogNjEuNTc2MzUlICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAkc3BhY2luZyBhdXRvIDA7XG59XG5cbi5jaGFuY2VfX2ltYWdlIHtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNvbnN0YW50O1xuXG4gICAgLmZsYWctb2JqZWN0X19pbWFnZSAmIHtcbiAgICAgICAgbWF4LXdpZHRoOiAyNzBweDtcbiAgICB9XG59XG5cbi5jaGFuY2VfX2JvZHkge1xuICAgIEBpbmNsdWRlIGVwc2lsb247XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBtYXJnaW4tdG9wOiAkc3BhY2luZztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bSkge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbn1cbiIsIi5jb250YWN0LWJveC1oZWFkZXIge1xuICBmbG9hdDogcmlnaHQ7XG4gIGRpc3BsYXk6IG5vbmU7XG5cblxuICBAaW5jbHVkZSByZXNwb25kLXRvKGxhcmdlKXtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBwYWRkaW5nOiAkY29uc3RhbnQvMiAkY29uc3RhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogJHNwYWNpbmc7XG4gICAgLy9iYWNrZ3JvdW5kOiAjZmYwMDg0O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG5cblxuICB9XG59XG5cbi5jb250YWN0LWJveC1oZWFkZXJfX2lubmVyIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgd2lkdGg6IDQwMHB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4uY29udGFjdC1ib3gtaGVhZGVyX19oZWFkaW5nIHtcbiAgQGluY2x1ZGUgZ2FtbWE7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jb250YWN0LWJveC1oZWFkZXJfX25vdGUge1xuICBAaW5jbHVkZSBlcHNpbG9uO1xuICBjb2xvcjogJGdyYXktLWRhcmtlcjtcbiAgbWFyZ2luOiAwO1xuICBsaW5lLWhlaWdodDogMS4yO1xufVxuXG4uY29udGFjdC1ib3gtaGVhZGVyX19yaWdodCB7XG4gIEBpbmNsdWRlIGdhbW1hO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZsb2F0OiByaWdodDtcbiAgLy9saW5lLWhlaWdodDogMTRweDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbWFyZ2luLWxlZnQ6ICRjb25zdGFudDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAkYnJhbmQtY29sb3ItLXByaW1hcnk7XG5cblxuLmVsZW1lbnQge1xuICBmbG9hdDogbGVmdDtcbiAgY2xlYXI6IGxlZnQ7XG5cbiAgJi0tZW1haWwge1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgQGluY2x1ZGUgZXBzaWxvbjtcblxuICB9XG5cblxufVxuXG5cbiAgLmljb24ge1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICB9XG59XG4iLCIuY29udGFjdC1pbmZvIHtcbiAgICBwYWRkaW5nOiAxOXB4IDA7XG5cbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nOiAzOHB4IDA7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICAgIH1cblxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBAaW5jbHVkZSByZXNwb25kLXRvKGxhcmdlKSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obGFyZ2UpIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAkY29uc3RhbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucm93IHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAwcHg7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIH1cblxuICAgIC5yb3cuY29udGFjdC1pbmZvX19tYXAge1xuICAgICAgICBtYXJnaW4tdG9wOiAkY29uc3RhbnQ7XG4gICAgfVxufVxuXG4uY29udGFjdC1pbmZvX19zaWRlLWNvbHVtbiB7XG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obGFyZ2UpIHtcbiAgICAgICAgQGV4dGVuZCAuY29sdW1uLTQtb2YtMTY7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgLy8gMVxuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jb250YWN0LWluZm9fX2JveCB7XG4gICAgcGFkZGluZy10b3A6ICRjb25zdGFudDtcblxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIH1cbn1cblxuLmNvbnRhY3QtaW5mb19faW1hZ2Uge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCBhdXRvO1xufVxuXG4uY29udGFjdC1pbmZvX19oZWFkaW5nIHtcbiAgICBAaW5jbHVkZSBiZXRhO1xuICAgIG1hcmdpbjogKCRjb25zdGFudCAvIDIpIDA7XG5cbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICB9XG5cbiAgICAmLS1zbWFsbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogKCRjb25zdGFudCAvIDQpO1xuICAgIH1cbn1cblxuLmNvbnRhY3QtaW5mb19fdGV4dCB7XG4gICAgQGluY2x1ZGUgZXBzaWxvbjtcbiAgICBsaW5lLWhlaWdodDogMjRweDtcbn1cblxuLmNvbnRhY3QtaW5mb19fdGV4dC0tbGFzdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNvbnRhY3QtaW5mb19fc2Vjb25kYXJ5IHtcbiAgICBAaW5jbHVkZSBkZWx0YTtcbiAgICBjb2xvcjogJGdyYXktLWRhcmtlcjtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDcwcHg7XG4gICAgfVxufVxuXG4uY29udGFjdC1pbmZvX190YWJsZSB7XG4gICAgdHIge1xuICAgICAgICB0ZCB7XG4gICAgICAgICAgICBwYWRkaW5nOiA1cHggNXB4IDVweCAwO1xuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDExMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uY29udGFjdC1pbmZvX19ob3RsaW5lLWF2YWlsYWJsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNvbnN0YW50O1xufVxuIiwiLmN1c3RvbWVyIHtcblxuICAgIG1heC13aWR0aDogNTAwcHg7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcblxuICAgIC5idWxsZXQtbGlzdCB7XG5cbiAgICAgICAgbWFyZ2luLWxlZnQ6IDgwcHg7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDJweDtcbiAgICAgICAgICAgIG1hcmdpbjogJGNvbnN0YW50LzQgMCAwIDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgfVxufVxuXG4uY3VzdG9tZXJfX2ljb24ge1xuICAgIGZvbnQtc2l6ZTogNjBweDtcbiAgICBjb2xvcjogJGdyYXktLWRhcms7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxpbmUtaGVpZ2h0OiAxZW07XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTVweDtcblxuICAgICYuaWNvbi1wZXJzb24ge1xuICAgICAgICB0b3A6IDE4cHg7XG4gICAgfVxufVxuXG4uY3VzdG9tZXJfX2hlYWRpbmcge1xuICAgIFxuICAgIG1hcmdpbjogMCAwICRjb25zdGFudCA4MHB4O1xuICAgIGZvbnQtc2l6ZTogMzZweDtcbn1cbiIsIi5kZXRhaWwge1xuICAgIEBleHRlbmQgLm1lZGlhLW9iamVjdDtcbiAgICBwYWRkaW5nOiAyKiRjb25zdGFudCAwICRjb25zdGFudDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRib3JkZXItY29sb3I7XG5cbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bSl7XG4gICAgICAgIHBhZGRpbmc6IDIqJHNwYWNpbmcgJHNwYWNpbmc7XG4gICAgfVxufVxuXG4uZGV0YWlsX19zaWRlIHtcblxuICAgIEBleHRlbmQgLm1lZGlhLW9iamVjdF9fc2lkZTtcbiAgICBtYXJnaW4tcmlnaHQ6ICRzcGFjaW5nICFpbXBvcnRhbnQ7XG5cbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMCAwICRzcGFjaW5nO1xuICAgIC5kZXRhaWxfX2ltYWdlIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB3aWR0aDogMjAwcHg7XG4gICAgfVxuXG5cbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bSl7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxufVxuXG4uZGV0YWlsX19ib2R5IHtcbiAgICBAZXh0ZW5kIC5tZWRpYS1vYmplY3RfX2JvZHk7XG4gICAgd2lkdGg6IDEwMCU7XG5cblxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtKXtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXgtd2lkdGg6IDcwMHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obGFyZ2Upe1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG4gICAgfVxuXG4gICAgLmRldGFpbF9fdGV4dCB7XG5cbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkY29uc3RhbnQ7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBsaW5lLWhlaWdodDogMjZweDtcbiAgICB9XG5cbn1cblxuLmRldGFpbF9faGVhZGluZyB7XG5cbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNvbnN0YW50LzI7XG5cbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bSl7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxufVxuXG4uZGV0YWlsX19wdWJsaXNoZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGZvbnQtc2l6ZTogMTVweDtcblxuICAgICAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bSl7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxufVxuXG4uZGV0YWlsX19jb2RlIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY29sb3I6ICRncmF5LS1kYXJrZXI7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtKXtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG59XG5cblxuLmRldGFpbF9fdGV4dC0td3JhcHBlciB7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIHBhZGRpbmc6ICRjb25zdGFudCAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IHRhYmxlLWZvb3Rlci1ncm91cDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMiokY29uc3RhbnQ7XG5cbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bSl7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJGNvbnN0YW50O1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAuZGV0YWlsX190ZXh0IHtcbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0pe1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA0ODBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogJGNvbnN0YW50O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG59XG5cblxuLmRldGFpbF9fZm9ybSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJvcmRlcjogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogJGNvbnN0YW50ICogMS41O1xuXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLXRvcDogJGNvbnN0YW50O1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1yb3c7XG4gICAgfVxuXG4gICAgLmJ1dHRvbiB7XG4gICAgICAgIEBpbmNsdWRlIGRlbHRhO1xuICAgIH1cblxufVxuIiwiLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIHVwcmF2dWp1IHBvIGRlbHNpIHBhdXplLiBVcGxuZSBzZSB2IGtvZHUgbmVvcmllbnR1anUgYSB0YWsgdm9saW0gc3R5bG92YW5pIHByZXMgSUQuXG4vLyBuZW5pIHRvIGlkZWFsbmksIGFsZSBtZWxvIGJ5IHRvIHZ5cmVzaXQgYWt0dWFsbmkgcHJvYmxlbVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuI2ZpbHRlckZvcm0ge1xuICAgIGZsb2F0OiBub25lO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIG1hcmdpbi1ib3R0b206ICRjb25zdGFudDtcblxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgY2xlYXI6IG5vbmU7XG4gICAgfVxuXG4gICAgPiBkaXYge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgfVxuXG4gICAgbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5jaG9zZW4tY29udGFpbmVyLXNpbmdsZSwgLmNob3Nlbi1zZWxlY3Qge1xuICAgICAgICB3aWR0aDogMjkwcHggIWltcG9ydGFudDtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDNweCB3aGl0ZSBpbnNldCwgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBjb2xvcjogIzQ0NDtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwibXVzZW8tc2Fuc1wiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuXG4gICAgICAgICZbZGlzYWJsZWRdIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgICAgICAgIGN1cnNvcjogZGVmYXVsdDtcblxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNob3Nlbi1kZWZhdWx0LFxuICAgIC5jaG9zZW4tc2luZ2xlLFxuICAgIC5jaG9zZW4tc2VsZWN0IHtcbiAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICAgICAgcGFkZGluZzogMTRweCAxMnB4IDEzcHg7XG4gICAgICAgIGhlaWdodDogYXV0bztcblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAuY2hvc2VuLWNvbnRhaW5lci1zaW5nbGUgLmNob3Nlbi1zaW5nbGUgZGl2IHtcbiAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgfVxuXG4gICAgLmNob3Nlbi1jb250YWluZXItc2luZ2xlIC5jaG9zZW4tc2luZ2xlIGRpdiBiIHtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBAZXh0ZW5kIC5pY29uO1xuXG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMS41KSwgb25seSBzY3JlZW4gYW5kIChtaW4tcmVzb2x1dGlvbjogMTQ0ZHBpKSwgb25seSBzY3JlZW4gYW5kIChtaW4tcmVzb2x1dGlvbjogMS41ZHBweCkge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJGljb24tYXJyb3ctZG93bjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTExcHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY2hvc2VuLWRyb3Age1xuICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCAkYm9yZGVyLXJhZGl1cyAkYm9yZGVyLXJhZGl1cztcbiAgICAgICAgYm94LXNoYWRvdzogMCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICB9XG5cbiAgICAuY2hvc2VuLWNvbnRhaW5lciAuY2hvc2VuLXJlc3VsdHMgbGkuaGlnaGxpZ2h0ZWQge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYnJhbmQtY29sb3ItLXByaW1hcnktZGFyaztcbiAgICB9XG59XG5cbi5maWx0ZXItZm9ybV9faGVhZGluZyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMjRweDtcbiAgICBmb250LXNpemU6IDM2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKGxhcmdlKXtcbiAgICAgICAgQGluY2x1ZGUgYWxwaGE7XG4gICAgfVxuXG59XG4iLCIvLyBodHRwOi8vY3Nzd2l6YXJkcnkuY29tLzIwMTMvMDUvdGhlLWZsYWctb2JqZWN0L1xuXG4uZmxhZy1vYmplY3Qge1xuXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0pIHtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn1cblxuLmZsYWctb2JqZWN0X19pbWFnZSxcbi5mbGFnLW9iamVjdF9fYm9keSB7XG5cbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bSkge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgICAgIC8vIC5mbGFnLW9iamVjdC0tdG9wICYge1xuICAgICAgICAvLyAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgLy8gfVxuXG4gICAgICAgIC5mbGFnLW9iamVjdC0tYm90dG9tICYge1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIGEge1xuICAgICAgICAvLyBAaW5jbHVkZSBkZWx0YTsgLy8gcm96YmlqaSB0byB0ZXh0IG9rb2xvXG4gICAgLy8gfVxuXG59XG5cbi5mbGFnLW9iamVjdF9faW1hZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLXRvcDogJGNvbnN0YW50O1xuXG4gICAgPiBpbWcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0pIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGNvbnN0YW50O1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuXG4gICAgICAgID4gaW1nIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5mbGFnLW9iamVjdC0tcmV2ICYge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogJGNvbnN0YW50O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZmxhZy1vYmplY3RfX2JvZHkge1xuXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0pIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxufVxuIiwiLy8gaHR0cDovL2Nzc3dpemFyZHJ5LmNvbS8yMDEzLzA1L3RoZS1mbGFnLW9iamVjdC9cblxuLmZsYWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG4uZmxhZ19faW1hZ2UsXG4uZmxhZ19fYm9keSB7XG4gICAgLy8gZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgLy8gLmZsYWctLXRvcCAmIHtcbiAgICAvLyAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAvLyB9XG5cbiAgICAvLyAuZmxhZy0tYm90dG9tICYge1xuICAgIC8vICAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgIC8vIH1cblxuICAgIGEge1xuICAgICAgICBAaW5jbHVkZSBkZWx0YTtcbiAgICB9XG5cbn1cblxuLmZsYWdfX2ltYWdlIHtcblxuXG4gICAgLy8gbWFyZ2luOiAkY29uc3RhbnQ7XG5cblxuXG4gICAgLy8gcGFkZGluZy1yaWdodDogJGNvbnN0YW50LzI7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICA+IGltZyB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgIH1cblxuICAgIC8vIC5mbGFnLS1yZXYgJiB7XG4gICAgLy8gICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgLy8gICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICAvLyB9XG59XG5cbi5mbGFnX19ib2R5LS1mdWxsIHtcbiAgICB3aWR0aDogMTAwJTtcbn1cbiIsIi5sb2dpbl9fd3JhcHBlciB7ICAgIFxuXG4gICAgLnNlY3Rpb24tLXJpZ2h0IHtcbiAgICAgICAgd2lkdGg6IDM5MHB4O1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgbWFyZ2luLXRvcDogJHNwYWNpbmc7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAkY29uc3RhbnQ7XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogJGNvbnN0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDg2MHB4KXtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgJiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMiokc3BhY2luZztcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICBjbGVhcjogbGVmdDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5sb2dpbl9fZm9ybSB7XG5cbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogMzIwcHg7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcblxuICAgICAgICAubG9naW5fX2J1dHRvbi0tZm9yZ290dGVuLXBhc3N3b3JkIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLnNlY3Rpb24tLWxlZnQge1xuICAgICAgICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogJHNwYWNpbmc7XG5cbiAgICAgICAgICAgIGxhYmVsLCBpbnB1dCB7XG4gICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwICRjb25zdGFudC8yICRjb25zdGFudCAwO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuXG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJyYW5kLWNvbG9yLS1zZWNvbmRhcnktZGFyaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLnBhc3N3b3JkX193cmFwcGVyIHtcblxuICAgIC5zZWN0aW9uLS1yaWdodCB7XG4gICAgICAgIHdpZHRoOiAzOTBweDtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIG1hcmdpbi10b3A6ICRzcGFjaW5nO1xuICAgICAgICBtYXJnaW4tbGVmdDogJGNvbnN0YW50O1xuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6ICRjb25zdGFudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA4NjBweCl7XG4gICAgICAgIC5zZWN0aW9uLS1yaWdodCB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIqJHNwYWNpbmc7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIGNsZWFyOiBsZWZ0O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnBhc3N3b3JkX19mb3JtIHtcblxuICAgICAgICB3aWR0aDogMzIwcHg7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcblxuICAgICAgICAuc2VjdGlvbi0tY2VudGVyIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAkc3BhY2luZztcblxuICAgICAgICAgICAgaW5wdXQsIGxhYmVsLCB0ZXh0YXJlYSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjUqJHNwYWNpbmc7XG4gICAgICAgIH1cblxuXG4gICAgICAgIC5zZWN0aW9uLS1sZWZ0IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgICAgICAgICAgcGFkZGluZy10b3A6ICRzcGFjaW5nO1xuICAgICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICAgICAgbWFyZ2luOiAwICRjb25zdGFudC8yICRjb25zdGFudCAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cbiAgICB9XG59IiwiLnJlZ2lzdGVyX193cmFwcGVyIHtcblxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgaDEge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cblxuICAgIGgyIHtcbiAgICAgICAgQGluY2x1ZGUgZGVsdGE7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuXG4gICAgLnNlY3Rpb24tLWNlbnRlciB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAkc3BhY2luZztcblxuICAgICAgICBpbnB1dCwgbGFiZWwsIHRleHRhcmVhIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnJlZ2lzdGVyX19mb3JtIHtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7ICAgICAgICBcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICB3aWR0aDogMzkwcHg7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICBpbnB1dFt0eXBlPWNoZWNrYm94XTpjaGVja2VkICsgbGFiZWw6YmVmb3JlIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlucHV0W3R5cGU9Y2hlY2tib3hdLCBpbnB1dFt0eXBlPXJhZGlvXSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNoZWNrYm94IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6ICRjb25zdGFudDtcbiAgICAgICAgfVxuICAgIH1cbn0iLCIvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gdmFzZSB1ZGFqZSAtIDIuIGtyb2sgb2JqZWRuYXZreVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmZvcm0taGVhZGluZyB7XG4gICAgQGluY2x1ZGUgZ2FtbWE7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuIiwiLmZvcm0ge1xuICAgIFxuICAgIGlucHV0IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC41KiRzcGFjaW5nO1xuICAgIH1cblxuICAgIGlucHV0W3R5cGU9cmFkaW9dICsgbGFiZWw6YmVmb3JlIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICB3aWR0aDogJHNwYWNpbmcqMC42NztcbiAgICAgICAgaGVpZ2h0OiAkc3BhY2luZyowLjY3O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDVweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIH1cblxuICAgIGlucHV0W3R5cGU9cmFkaW9dICsgbGFiZWw6YWZ0ZXIge1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmF5LS05MDtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiA1cHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDAuMjBlbTtcbiAgICAgICAgd2lkdGg6ICRzcGFjaW5nKjAuNjc7XG4gICAgICAgIGhlaWdodDogJHNwYWNpbmcqMC42NztcbiAgICAgICAgdG9wOiAwO1xuICAgIH1cblxuICAgIGlucHV0W3R5cGU9cmFkaW9dOmNoZWNrZWQgKyBsYWJlbCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cblxuICAgIGlucHV0W3R5cGU9cmFkaW9dOmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUge1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICBtYXJnaW4tdG9wOiAwLjIwZW07XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgYm9yZGVyOiA2cHggc29saWQgd2hpdGU7XG4gICAgICAgIGJhY2tncm91bmQ6ICRibGFjaztcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRzcGFjaW5nO1xuICAgIH1cblxuICAgIGlucHV0W3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUge1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICBtYXJnaW4tdG9wOiAwLjI1ZW07XG4gICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzICsgNHB4O1xuICAgICAgICBib3JkZXI6IDZweCBzb2xpZCB3aGl0ZTtcbiAgICAgICAgYmFja2dyb3VuZDogJGJsYWNrO1xuICAgICAgICBsaW5lLWhlaWdodDogJHNwYWNpbmc7XG5cbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPWNoZWNrYm94XSArIGxhYmVsOmFmdGVyIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmF5LS05MDtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiA1cHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDAuMjVlbTtcbiAgICAgICAgd2lkdGg6ICRzcGFjaW5nKjAuNjc7XG4gICAgICAgIGhlaWdodDogJHNwYWNpbmcqMC42NztcbiAgICAgICAgdG9wOiAwO1xuICAgIH1cblxuXG4gICAgaW5wdXRbdHlwZT1jaGVja2JveF0gKyBsYWJlbCwgaW5wdXRbdHlwZT1yYWRpb10gKyBsYWJlbCB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMS4yNSokc3BhY2luZztcbiAgICAgICAgLy9oZWlnaHQ6ICRzcGFjaW5nO1xuICAgICAgICBAaW5jbHVkZSBiYXNlO1xuICAgICAgICBmb250LXNpemU6IDEuMTVlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRzcGFjaW5nO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgY2xlYXI6IGxlZnQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPWNoZWNrYm94XSArIGxhYmVsOmJlZm9yZSB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgd2lkdGg6ICRzcGFjaW5nKjAuNjc7XG4gICAgICAgIGhlaWdodDogJHNwYWNpbmcqMC42NztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiA1cHg7XG4gICAgfVxuXG4gICAgLmNoZWNrYm94IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjUqJHNwYWNpbmc7XG4gICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgIH1cblxuICAgIC5wYXNzd29yZF9fY2hhbmdlLS10b2dnbGUge1xuICAgIFxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAwLjI1ZW07XG4gICAgICAgIHRvcDogMC4yNWVtO1xuICAgICAgICBjb2xvcjogJGdyYXk7XG4gICAgICAgIHBhZGRpbmc6IDAuNWVtO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgd2lkdGg6IGF1dG87XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICB9XG5cbiAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgICAgY29sb3I6ICRicmFuZC1jb2xvci0tcHJpbWFyeTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5mb3JtX19ncm91cCB7XG5cbiAgICAgICAgLmZvcm1fX3JvdzpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNSokc3BhY2luZztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYgPiAuZm9ybV9fcm93OmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgJiBpbnB1dDpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmIGlucHV0Omxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJiA+IC5mb3JtX19yb3c6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgICYgPiA6Zmlyc3QtY2hpbGQgaW5wdXQge1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYgPiA6bGFzdC1jaGlsZCBpbnB1dCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICYgKyBpbnB1dCB7XG4gICAgICAgICAgICBtYXJnaW46IDAuNSokc3BhY2luZztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG5cblxuIiwiLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyAgSW5saW5lIGxhYmVsXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uaW5saW5lLWxhYmVsX193cmFwcGVyIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbn1cblxuLmlubGluZS1sYWJlbCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG5cbiAgICAubm8tanMgJiB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG5cbiAgICBsYWJlbCB7XG4gICAgICAgIGN1cnNvcjogdGV4dDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJGNvbnN0YW50LzI7XG4gICAgfVxuXG59XG5cbi5pbmxpbmUtbGFiZWxfX2lucHV0LFxuLmlubGluZS1sYWJlbF9fdGV4dGFyZWEge1xuICAgIEBpbmNsdWRlIHpldGE7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMjZweCAxMHB4IDEzcHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbn1cblxuLmlubGluZS1sYWJlbF9faW5wdXQtLWVycm9yIHtcbiAgICBib3JkZXItY29sb3I6ICR3YXJuaW5nO1xufVxuXG4uaW5saW5lLWxhYmVsLS1oYWxmIHtcbiAgICB3aWR0aDogNTAlO1xuICAgIGZsb2F0OiBsZWZ0O1xufVxuXG4uaW5saW5lLWxhYmVsX19sYWJlbCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgdG9wOiAyMHB4O1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIGJveC1zaXppbmc6IHBhZGRpbmctYm94O1xuICAgIGNvbG9yOiAkZ3JheTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycztcbiAgICBsaW5lLWhlaWdodDogMS4yZW07XG5cbiAgICAubm8tanMgJiB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgIH1cbn1cblxuLmlubGluZS1sYWJlbF9fbGFiZWwtLXNlbGVjdCxcbi5pbmxpbmUtbGFiZWxfX2xhYmVsLmpzLWZpbGxlZC1pbnB1dCB7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGNvbG9yOiAkZ3JheS0tZGFya2VyO1xuICAgIHRvcDogOHB4O1xufVxuXG4uaW5saW5lLWxhYmVsX19mbGFzaC1tZXNzYWdlIHtcbiAgICBAaW5jbHVkZSBtaWxsaTtcbiAgICBjb2xvcjogJHdhcm5pbmc7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICBtYXJnaW46IDVweCAwIDEwcHg7XG59XG5cbi5pbmxpbmUtbGFiZWxfX2xhYmVsLS1yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4gXG4uaW5saW5lLWxhYmVsX19sYWJlbC0tbm90ZSB7XG4gLmlubGluZS1sYWJlbF9faW5wdXQgfiAmIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC41KiRzcGFjaW5nO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRvcDogLTAuMjUqJHNwYWNpbmc7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBjb2xvcjogJGdyYXktLWRhcmtlcjtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkc3BhY2luZy8yO1xuICAgIH1cbn1cbiIsIi5pbnB1dC0tbGFyZ2Uge1xuICAgIHBhZGRpbmc6ICRmb3JtLXBhZGRpbmctLWxhcmdlO1xufVxuIiwiLmxhYmVsIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3JheS0tbGlnaHQ7XG4gICAgYmFja2dyb3VuZDogJGdyYXktLWxpZ2h0ZXN0O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjYxNTM4NDYxNTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIHBhZGRpbmc6IDRweCAxMHB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmxhYmVsLS1uZXdzIHtcbiAgICBjb2xvcjogJGJyYW5kLWNvbG9yLS1wcmltYXJ5O1xufVxuXG4ubGFiZWwtLWFjdGlvbiB7XG4gICAgY29sb3I6ICRicmFuZC1jb2xvci0tc2Vjb25kYXJ5O1xufVxuIiwiLmxheW91dC0tbWFpbiB7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKGxhcmdlKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgd2lkdGg6IDc0LjYyNSU7XG4gICAgfVxufVxuXG4ubGF5b3V0LS1zaWRlYmFyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhsYXJnZSkge1xuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDIyLjg3NSU7XG4gICAgICAgIHRvcDogNDNweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJGNvbnN0YW50O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbiAgICB9XG59XG4iLCIubGVnYWwtcHJpbnQge1xuICAgIEBpbmNsdWRlIG1pbGxpO1xuICAgIGNvbG9yOiAkZ3JheS0tZGFyaztcbiAgICBsaW5lLWhlaWdodDogMTtcbn1cbiIsIi5saW5rLXJpZ2h0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxpbmUtaGVpZ2h0OiAzNnB4O1xufVxuIiwiLm1haW4tbmV3cyB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3JheS0tbGlnaHRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2luZztcbn1cblxuLm1haW4tbmV3c19fY29udGVudCB7XG4gICAgcGFkZGluZzogJGNvbnN0YW50O1xuICAgIHBhZGRpbmctdG9wOiAoJHNwYWNpbmcgLSAxMHB4KTsgLy8gdmlzdWFsIHR3ZWFrXG5cbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bSl7XG4gICAgICAgIHBhZGRpbmc6ICRzcGFjaW5nO1xuICAgIH1cbiAgICAvLyB3aWR0aDogNTAlO1xuICAgIC8vIGZsb2F0OiBsZWZ0O1xufVxuXG4ubWFpbi1uZXdzX19pbWFnZS1jb250YWluZXIge1xuICAgIC8vIHdpZHRoOiA1MCU7XG4gICAgLy8gZmxvYXQ6IGxlZnQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgLmxhYmVsIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDE1cHg7XG4gICAgICAgIGxlZnQ6IDE1cHg7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG59XG5cbi5tYWluLW5ld3NfX2hlYWRpbmcge1xuICAgIEBpbmNsdWRlIGdhbW1hO1xufVxuXG4ubWFpbi1uZXdzX190ZXh0IHtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbn1cbiIsIi5tYXAge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGltYWdlKCd0ZW1wLW1hcC5qcGcnKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDMwMHB4O1xufVxuIiwiLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEhUTUwgc25pcHBldFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIDxkaXYgY2xhc3M9XCJwci1tZWRpYS1vYmplY3RcIj5cbi8vICAgICA8ZGl2IGNsYXNzPVwicHItbWVkaWEtb2JqZWN0X19zaWRlXCI+XG4vLyAgICAgICAgaWtvbmEvb2JyYXplay9jaXNsb1xuLy8gICAgIDwvZGl2PlxuLy8gICAgIDxkaXYgY2xhc3M9XCJwci1tZWRpYS1vYmplY3RfX2JvZHlcIj5cbi8vICAgICAgICAgwqBvYnNhaFxuLy8gICAgIDwvZGl2PlxuLy8gPC9kaXY+XG5cbi8vIGh0dHA6Ly93d3cuc3R1YmJvcm5lbGxhLm9yZy9jb250ZW50LzIwMTAvMDYvMjUvdGhlLW1lZGlhLW9iamVjdC1zYXZlcy1odW5kcmVkcy1vZi1saW5lcy1vZi1jb2RlL1xuXG4ubWVkaWEtb2JqZWN0IHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIF9vdmVyZmxvdzogdmlzaWJsZTtcbiAgICB6b29tOiAxO1xufVxuXG4ubWVkaWEtb2JqZWN0X19ib2R5IHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIF9vdmVyZmxvdzogdmlzaWJsZTtcbiAgICB6b29tOiAxO1xufVxuXG4ubWVkaWEtb2JqZWN0X19zaWRlIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tcmlnaHQ6IDE2cHg7XG5cbiAgICBpbWcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG59XG5cbi5tZWRpYS1vYmplY3RfX3JpZ2h0LXNpZGUge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tbGVmdDogMTZweDtcblxuICAgIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbn1cbiIsIi5uYXYge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4KCk7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgPiBsaSxcbiAgICA+IGxpID4gYSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICA+IGxpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC00cHg7IC8vIGZpeCBpbmxpbmUtYmxvY2sgZ2FwIGJ1Z1xuICAgIH1cbn1cbiIsIi5uZXdzX19pbWFnZS1jb250YWluZXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmF5LS1saWdodGVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXG4gICAgICAgICY6aG92ZXIsICY6Zm9jdXMsICY6YWN0aXZlIHtcblxuICAgICAgICAgICAgJiArIC5tYWluLW5ld3NfX2hlYWRpbmcge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtY29sb3ItLXByaW1hcnktZGFyaztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAvLyBtYXliZSBhZGQgc29tZSB0cmFuc2l0aW9uIGVmZmVjdD9cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG5cbiAgICAubGFiZWwge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMTVweDtcbiAgICAgICAgbGVmdDogMTVweDtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xuICAgIH1cbn1cblxuLm5ld3NfX2hlYWRpbmcge1xuICAgIEBpbmNsdWRlIGRlbHRhO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi10b3A6IDEycHg7XG4gICAgbWF4LXdpZHRoOiAzMDBweDtcbiAgICBsaW5lLWhlaWdodDogMS4yNWVtO1xufVxuXG4ubmV3c19fbWV0YSB7XG4gICAgQGluY2x1ZGUgbWlsbGk7XG4gICAgY29sb3I6ICRncmF5LS1kYXJrZXI7XG59XG4iLCIub3JkZXItZGV0YWlscy0tbWFpbiB7XG5cblx0Lm9yZGVyX19oZWFkaW5nIHtcblx0XG5cdFx0XG4gICAgICAgIGgxIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRjb25zdGFudC8yO1xuXG4gICAgICAgIH1cblxuXG5cdFx0Lm9yZGVyX19oZWFkaW5nLS1kZXRhaWxzIHtcblx0XHRcdGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtKXtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkY29uc3RhbnQ7XG4gICAgICAgICAgICB9XG5cdFx0fVxuXG5cdFx0Lm9yZGVyX19oZWFkaW5nLS1pZCwgLm9yZGVyX19oZWFkaW5nLS1kZXRhaWxzIHtcblx0XHRcdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cdFx0XHQub3JkZXJfX2hlYWRpbmctLWRhdGUge1xuXHRcdFx0XHRmb250LXdlaWdodDogYm9sZDtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQuaGVhZGluZy0tcGF5bWVudC1zdGF0dXMge1xuXHRcdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHRcdGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgY2xlYXI6IGxlZnQ7XG4gICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bSl7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgICAgIGNsZWFyOiBub25lO1xuICAgICAgICAgICAgfVxuXG5cdFx0XHQucGF5bWVudC1zdGF0dXMtLXN1Y2Nlc3Mge1xuXHRcdFx0XHRjb2xvcjogJGxpZ2h0LWdyZWVuO1xuXHRcdFx0XHRmb250LXdlaWdodDogYm9sZDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQub3JkZXJfX2l0ZW1zLS13cmFwcGVyIHtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRmbG9hdDogbGVmdDtcblx0XHRAaW5jbHVkZSBjbGVhcmZpeDtcblx0XHRib3JkZXItYm90dG9tOiAycHggc29saWQgJGdyYXktLWxpZ2h0ZXI7XG4gICAgICAgIFxuXG5cdFx0Lml0ZW0tLWhlYWRpbmcge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcblx0XHRcdGJhY2tncm91bmQ6ICRncmF5LS1saWdodGVyO1xuXHRcdFx0Ym9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRncmF5ICFpbXBvcnRhbnQ7XG5cdFx0XHRmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIGNvbG9yOiAkZ3JheS0tNDA7XG5cbiAgICAgICAgICAgICYgKyAuaXRlbSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0pe1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuXHRcdH1cblxuXHRcdC5pdGVtIHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyYXktLWxpZ2h0ZXN0O1xuICAgICAgICAgICAgLy8gQGluY2x1ZGUgZGVsdGE7XG5cblx0XHRcdCYgPiBkaXYge1xuXHRcdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdH1cblxuXHRcdFx0JjpsYXN0LW9mLXR5cGUge1xuXHRcdFx0XHRib3JkZXI6IDA7XG5cdFx0XHR9XG5cblx0XHRcdC5pdGVtX19ib3gge1xuXHRcdFx0XHRwYWRkaW5nOiAkY29uc3RhbnQvMiAkY29uc3RhbnQvMjtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuXHRcdFx0fVxuXG5cdFx0XHQuaXRlbV9fYm94Om50aC1vZi10eXBlKDEpe1xuXHRcdFx0XHR3aWR0aDogMTQlO1xuXHRcdFx0XHRwYWRkaW5nLWxlZnQ6ICRjb25zdGFudDtcblx0XHRcdH1cblxuICAgICAgICAgICAgJjpub3QoLml0ZW0tLXN1bW1hcnkpIC5pdGVtX19ib3g6bnRoLW9mLXR5cGUoMil7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0pe1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDQlO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogJGNvbnN0YW50LzIuNTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bm90KC5pdGVtLS1zdW1tYXJ5KSAuaXRlbV9fYm94Om50aC1vZi10eXBlKDEpe1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBib3R0b206IDIuMGVtO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGdyYXktLWRhcmtlcjtcblxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gY29udGVudDogXCJLw7NkOlwiO1xuICAgICAgICAgICAgICAgICAgICAvLyBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIC8vIGxlZnQ6ICRjb25zdGFudC8yO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtKXtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRncmF5LS00MDtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogJGNvbnN0YW50LzI7XG5cbiAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cblx0XHRcdC5pdGVtX19ib3g6bnRoLW9mLXR5cGUoMyl7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRncmF5LS00MDtcblxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcInhcIjtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjVlbTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bSl7XG4gICAgICAgICAgICAgICAgICAgIGNsZWFyOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGdyYXktLTQwO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAlO1xuICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdC5pdGVtX19ib3g6bnRoLW9mLXR5cGUoNCl7XG5cdFx0XHRcdHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG5cdFx0XHRcdHBhZGRpbmctbGVmdDogMGVtO1xuICAgICAgICAgICAgfVxuXG5cdFx0XHQmOm5vdCguaXRlbS0taGVhZGluZykgLml0ZW1fX2JveDpudGgtb2YtdHlwZSg0KSB7XG5cdFx0XHRcdGNvbG9yOiAkZ3JheS0tNDA7XG5cdFx0XHR9XG5cblx0XHRcdC5pdGVtX19ib3g6bnRoLW9mLXR5cGUoNSl7XG5cdFx0XHRcdFxuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG5cbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcblx0XHRcdFx0dGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bSl7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICRjb25zdGFudDtcbiAgICAgICAgICAgICAgICB9XG5cblxuXHRcdFx0fVxuXG4gICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bSl7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBiYXNlO1xuXG4gICAgICAgICAgICAgICAgLml0ZW1fX2JveDpudGgtb2YtdHlwZSgxKXtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEyJTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAkY29uc3RhbnQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLml0ZW1fX2JveDpudGgtb2YtdHlwZSg0KXtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxNiU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpub3QoLml0ZW0tLWhlYWRpbmcpIC5pdGVtX19ib3g6bnRoLW9mLXR5cGUoNCkge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGdyYXktLWRhcmtlcjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuaXRlbV9fYm94Om50aC1vZi10eXBlKDUpe1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJGNvbnN0YW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblx0XHR9XG5cblx0XHQuaXRlbS0tc3VtbWFyeSB7XG5cdFx0XG5cdFx0XHQuaXRlbV9fYm94IHtcblx0XHRcdFx0ZmxvYXQ6IHJpZ2h0O1xuXHRcdFx0XHR3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuXHRcdFx0XHR0ZXh0LWFsaWduOiByaWdodDtcblx0XHRcdFx0QGluY2x1ZGUgYmV0YSA7XG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRcdFx0XHRwYWRkaW5nOiAkY29uc3RhbnQvMiAwICRjb25zdGFudDtcblx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogMDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHRcblx0LmNvbnRhY3QtaW5mb19fd3JhcHBlciB7XG5cdFx0XG5cdFx0Ym9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRncmF5LS1saWdodGVyO1xuXHRcdEBpbmNsdWRlIGNsZWFyZml4O1xuXHRcdHBhZGRpbmctYm90dG9tOiAyMnB4O1xuXG5cdFx0LmNvbnRhY3QtaW5mb19fd3JhcHBlci0taW5uZXIge1xuXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuXHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGZvbnQtc2l6ZTogMTEwJTtcbiAgICBcbiAgICAgICAgICAgICY6bGFzdC1vZi10eXBlIC5jb250YWN0LWluZm9fX2JveDpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAkc3BhY2luZztcbiAgICAgICAgICAgIH1cblxuXHRcdFx0YWRkcmVzcyB7XG5cdFx0XHRcdGZvbnQtc3R5bGU6IG5vcm1hbDtcblx0XHRcdH1cblxuXHRcdFx0aDIge1xuXHRcdFx0XHRtYXJnaW46ICRzcGFjaW5nLzQgMDtcblx0XHRcdFx0bWFyZ2luLXRvcDogJHNwYWNpbmcvMjtcblx0XHRcdH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0pe1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0MiU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogJGNvbnN0YW50O1xuICAgICAgICAgICAgfVxuXG5cdFx0XHQuY29udGFjdC1pbmZvX19ib3gge1xuXHRcdFx0XHRcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcblx0XHRcdFx0Y2xlYXI6IGxlZnQ7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6ICRjb25zdGFudC8yO1xuXG5cdFx0XHRcdC5ib3hfX2JvZHkge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bSl7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogJGNvbnN0YW50LzI7ICAgIFxuICAgICAgICAgICAgICAgICAgICB9XG5cblx0XHRcdFx0XHRsaW5lLWhlaWdodDogMTQwJTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5vcmRlcl9fYWN0aW9uIHtcblx0XHRtYXJnaW4tdG9wOiAkc3BhY2luZztcblx0XHRjb2xvcjogJGxpbmstY29sb3I7XG4gICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgIFxuICAgICAgICAuYWN0aW9uX19pdGVtIHtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2luZy80O1xuICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0pe1xuICAgICAgICAgICAgICAgIGNsZWFyOiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cblx0XHRpIHtcblx0XHRcdGZvbnQtc2l6ZTogMS41ZW07XG5cdFx0XHR0b3A6IDAuMTVlbTtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHR9XG5cblx0XHRhIHtcblx0XHRcdG1hcmdpbi1yaWdodDogJHNwYWNpbmc7XG5cdFx0XHRwYWRkaW5nLWxlZnQ6ICRjb25zdGFudC80O1xuXHRcdFx0QGluY2x1ZGUgZGVsdGE7XG5cdFx0fVxuXHR9XG5cdFxufSIsIi5vcmRlci1sZWZ0LW5hdiB7XG4gICAgYm9yZGVyOiAycHggc29saWQgJGJvcmRlci1jb2xvci0tYmx1ZTtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xufVxuXG4ub3JkZXItbGVmdC1uYXZfX2l0ZW0ge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yLS1ibHVlO1xuICAgIGJhY2tncm91bmQ6ICRsaWdodC1ibHVlO1xuICAgIHBhZGRpbmc6IDJweCAwO1xuXG4gICAgYSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IDEycHggMTJweCA4cHg7XG4gICAgfVxuXG59XG4iLCIub3JkZXItcHJvY2VzcyB7XG4gICAgYm9yZGVyLXRvcDogc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICBib3JkZXItd2lkdGg6IDFweCAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuXG4ub3JkZXItcHJvY2Vzc19faXRlbSB7XG4gICAgbWFyZ2luLXRvcDogMyokc3BhY2luZztcbiAgICBtYXJnaW4tbGVmdDogMi40NjMwNTQxODclOyAvLyBUT0RPXG4gICAgcGFkZGluZy1sZWZ0OiAzLjk0MDg4NjclO1xuXG4gICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG5cblxuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtKXtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG5cbiAgICAuaWNvbiB7XG4gICAgICAgIEBpbmNsdWRlIGFscGhhO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY29sb3I6ICRicmFuZC1jb2xvci0tcHJpbWFyeTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGNvbnN0YW50O1xuXG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgZm9udC1zaXplOiA2NHB4O1xuICAgICAgICB9XG5cblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIEBleHRlbmQgLmljb247XG4gICAgICAgICAgICBjb250ZW50OiAkaWNvbi1hcnJvdy1kb3duLTI7XG4gICAgICAgICAgICBjb2xvcjogJGdyYXktLWxpZ2h0O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAyLjUqJHNwYWNpbmc7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bSl7XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICRpY29uLWFycm93LXJpZ2h0LTI7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRncmF5LS1saWdodDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAtMzVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCAuaWNvbjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG4ub3JkZXItcHJvY2Vzc19fbm90ZSB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB0b3A6IDI1cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIEBpbmNsdWRlIGRlbHRhO1xuXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0pe1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgdG9wOiAwO1xuICAgIH1cbn1cbiIsIi5vcmRlci1zdGVwIHsgXG5cblx0cGFkZGluZzogJHNwYWNpbmcgMDtcblx0d2lkdGg6IDEwMCU7XG5cdEBpbmNsdWRlIGNsZWFyZml4O1xuXG5cblx0aDEge1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0fVxuXG5cdGg0IHtcblx0XHRAaW5jbHVkZSBhbHBoYTtcblx0XHRmb250LXNpemU6IDJlbTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXHR9XG5cblx0QGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0pe1xuXHRcdHBhZGRpbmc6IDIqJGNvbnN0YW50O1xuXHRcdGg0IHtcblx0XHRcdEBpbmNsdWRlIGRlbHRhO1x0XG5cdFx0fVxuXHR9XG5cdFxuXHRib3JkZXItYm90dG9tOiAycHggc29saWQgJGJvcmRlci1jb2xvcjtcblxuXHQmOmxhc3QtY2hpbGQge1xuXHRcdGJvcmRlcjogMDtcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdHBhZGRpbmctYm90dG9tOiAwO1xuXHR9XG5cblx0Lm5hdi10YWJfX2NvbnRlbnQge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGNsZWFyOiBib3RoO1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0fVxuXG59XG5cbi5zZWN0aW9uLS1ob3Jpem9udGFsICsgLm9yZGVyLXN0ZXAge1xuICAgIHBhZGRpbmctdG9wOiAwO1xufVxuXG4ub3JkZXItc3RlcC0yX19zZWN0aW9uIHtcblx0d2lkdGg6IDEwMCU7XG5cdHBhZGRpbmc6ICRjb25zdGFudDtcdFxufVxuXG4ubmF2LXRhYl9fY29udGVudCB7XG5cdC51LWNlbnRlciB7XG5cdFx0Zm9udC1zaXplOiAxNXB4O1xuXHR9XG59XG5cblxuXG4ub3JkZXItc3RlcF9fZm9ybSB7XG5cdGZsb2F0OiBub25lO1xuXHRtYXJnaW46IDAgYXV0bztcblx0dGV4dC1hbGlnbjogbGVmdDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgY2xlYXI6IGJvdGg7XG5cblx0LnNlY3Rpb24tLWNlbnRlciB7XG5cdFx0cGFkZGluZy10b3A6ICRzcGFjaW5nO1xuXG5cdFx0JjpmaXJzdC1jaGlsZCB7XG5cdFx0XHRwYWRkaW5nLXRvcDogMDtcblx0XHR9XG5cblx0XHQmOm50aC1jaGlsZCgyKSB7XG5cdFx0XHRwYWRkaW5nLXRvcDogMDtcblx0XHR9XG5cblx0XHRpbnB1dCwgbGFiZWwsIHRleHRhcmVhIHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdH1cblx0fVxuXG5cdC5zZWN0aW9uLS1sZWZ0IHtcblx0XHRAaW5jbHVkZSBjbGVhcmZpeDtcblx0XHRwYWRkaW5nLXRvcDogJHNwYWNpbmc7XG5cblx0XHRsYWJlbCwgaW5wdXQge1xuXHRcdFx0dmVydGljYWwtYWxpZ246IHRvcDtcblx0XHR9XG5cblx0XHRsYWJlbCB7XG5cdFx0XHRmbG9hdDogbGVmdDtcblx0XHR9XG5cdFx0XG5cdFx0aW5wdXQge1xuXHRcdFx0bWFyZ2luOiAwICRjb25zdGFudC8yICRjb25zdGFudCAwO1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogMDtcblx0XHRcdGNsZWFyOiBib3RoO1xuXHRcdH1cblxuICAgICAgICB1bCB7XG5cdFx0XHRjbGVhcjogYm90aDtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtY29sb3ItLXNlY29uZGFyeTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgfVxuXG5cbiAgICAgICAgLmZvcm1fX3Jvdzpub3QoOmxhc3Qtb2YtdHlwZSkge1xuICAgICAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgICAgICAgICAmICsgdWwge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAkY29uc3RhbnQvMjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuXHR9XG59XG5cbi5mb3JtX19ub3RlIHtcblx0Y29sb3I6ICRncmF5LS1kYXJrZXI7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uZm9ybV9fcm93IHtcblxuXHR1bC5mb3JtLWVycm9ycyB7XG5cdFx0bGlzdC1zdHlsZS10eXBlOiBub25lO1xuXHRcdGNvbG9yOiAkYnJhbmQtY29sb3ItLXNlY29uZGFyeTtcblx0XHRwYWRkaW5nLWxlZnQ6IDA7XG5cdH1cblxuXHRAaW5jbHVkZSBjbGVhcmZpeDtcblxufVxuXG4uZm9ybV9fZ3JvdXAge1xuXG4gICAgLmZvcm1fX3Jvdzpub3QoOmxhc3Qtb2YtdHlwZSl7XG4gICAgICAgIFxuICAgICAgICBpbnB1dDpyZXF1aXJlZCArIHVsIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDAuNSokc3BhY2luZztcbiAgICAgICAgfVxuXG4gICAgfVxuXG5cbn1cblxuI2RlbGl2ZXJ5X19kZXRhaWxzLS13cmFwcGVyLCAjdmF0X19pZC0td3JhcHBlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cbiIsIi5mb3JtX19ncm91cC0tYm9yZGVyIHtcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG5cdHBhZGRpbmc6ICRzcGFjaW5nLzIgMDtcblx0dGV4dC1hbGlnbjogbGVmdDtcblx0QGluY2x1ZGUgY2xlYXJmaXg7XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmIC5pbmxpbmUtbGFiZWwgKjpsYXN0LW9mLXR5cGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIGxhYmVsICsgLmlubGluZS1sYWJlbF9fbGFiZWwtLW5vdGUge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRvcDogLSRjb25zdGFudC80O1xuICAgIH1cbn1cblxuLm9yZGVyLXN0ZXBfX2Zvcm0ge1xuXG5cdGlucHV0W3R5cGU9Y2hlY2tib3hdLCBpbnB1dFt0eXBlPXJhZGlvXSB7XG5cdCAgICBkaXNwbGF5OiBub25lO1xuXHR9XG5cblx0LmZvcm1fX2dyb3VwLS1oZWFkaW5nIHtcblx0XHRmb250LXNpemU6IDEuMTVlbTtcblx0XHRwYWRkaW5nLWxlZnQ6IDEuMjUqJHNwYWNpbmc7XG5cdH1cblxuXHQuZm9ybV9fZ3JvdXAtLWJvZHkge1xuXHRcdGNvbG9yOiAkYmxhY2s7XG5cdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0Y2xlYXI6IGJvdGg7XG5cdFx0cGFkZGluZy1sZWZ0OiAxLjI1KiRzcGFjaW5nO1xuXHR9XG5cbiAgICAubG9naW5fX2J1dHRvbi0tZm9yZ290dGVuLXBhc3N3b3JkIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cblxuICAgIHAge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC5zZWN0aW9uLS1sZWZ0OmZpcnN0LW9mLXR5cGUge1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICB9XG59XG5cbi5iYXNrZXQtLXJldmlldyB7XG5cdG1hcmdpbjogMCBhdXRvO1xuXHRmbG9hdDogbm9uZTtcblxuXHRoMiB7XG5cdFx0bWFyZ2luLXRvcDogMDtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdH1cblxuXHQucHJvZHVjdC1pdGVtIHtcblx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50O1xuXHRcdCY6Zmlyc3QtY2hpbGQge1xuXHRcdFx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG5cdFx0fVxuXHRcdCYgPiBkaXYge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRmbG9hdDogbGVmdDtcblx0XHR9XG5cdH1cblxuXHQuYmFza2V0X190b3RhbC1wcmljZSB7XG5cdFx0dGV4dC1hbGlnbjogcmlnaHQ7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0QGluY2x1ZGUgZGVsdGE7XG5cdFx0bWFyZ2luLXRvcDogJHNwYWNpbmcqMC4yNTtcblx0fVxuXG5cdC5pdGVtX19ib2R5LS1wcmljZSB7XG5cdFx0QGluY2x1ZGUgYmFzZTtcblx0XHR3aWR0aDogMTUlO1xuXHRcdHRleHQtYWxpZ246IHJpZ2h0O1xuXHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHR9XG5cblx0Lml0ZW1fX2JvZHktLXB1Ymxpc2hlciB7XG5cdFx0XHR3aWR0aDogMTUlO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdH1cblxuXHQuaXRlbV9fYm9keS0tcGNzIHtcblx0XHR3aWR0aDogMTUlO1x0XHRcblx0fVxuXG5cblx0Lml0ZW1fX2JvZHktLXRpdGxlIHtcblx0XHR3aWR0aDogNTUlO1xuXHRcdFxuXHR9XG5cblx0LnByb2R1Y3QtaXRlbSB7XG5cdFx0cGFkZGluZzogJHNwYWNpbmcqMC4yNSAwO1xuXHR9XG5cbn1cblxuIiwiLm9yZGVyLXN0ZXAtLWhhbGYge1xuXHRwYWRkaW5nOiAxLjUqJHNwYWNpbmc7XG5cdGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuXHRtYXJnaW4tYm90dG9tOiAwO1xuXG5cdCY6bGFzdC1vZi10eXBlIHtcblx0XHRib3JkZXI6IDA7XG5cdH1cblxuXHQuc2VjdGlvbi0tY2VudGVyIHtcblx0XHRwYWRkaW5nLXRvcDogMDtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdH1cblxuXHRwIHtcblx0XHQmOmxhc3Qtb2YtdHlwZSB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdH1cblx0fVxuXG5cdC5vcmRlci1zdGVwX19ib2R5IHtcblx0XHRtYXJnaW4tdG9wOiAwLjUqJGNvbnN0YW50O1xuXHRcdGxpbmUtaGVpZ2h0OiAyNHB4O1xuXHR9XG5cblx0Lm9yZGVyLXN0ZXBfX2Zvcm0tLWlubGluZSB7XG5cdFx0bWFyZ2luLXRvcDogMSokc3BhY2luZztcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXHR9XG5cblx0PiAuc2VjdGlvbi0tY2VudGVyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICB9XG5cbn1cblxuLm9yZGVyLXN0ZXAtLW5vLWJvcmRlciB7XG5cdGJvcmRlcjogMDtcbn1cblxuLm9yZGVyLXN0ZXBfX2Jhbm5lciB7XG5cdGZvbnQtc2l6ZTogMzZweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY29sb3I6ICR3aGl0ZTtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdG1hcmdpbi10b3A6ICRzcGFjaW5nO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0YmFja2dyb3VuZC1pbWFnZTogaW1hZ2UoJ2tvc2lrLWhvdG92by1tb2JpbGUucG5nJyk7XG5cbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bSkge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBpbWFnZSgna29zaWstaG90b3ZvLnBuZycpO1xuICAgIH1cblxuXHQub3JkZXItc3RlcF9fYm9keSB7XG5cdFx0ei1pbmRleDogMjAwMDtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0bWFyZ2luOiAwO1xuXHR9XG5cblx0LnNlY3Rpb24tLWNlbnRlciB7XG5cdFx0cGFkZGluZzogNTVweDtcblx0fVxuXG5cdCYgKyAuc2l0ZS1mb290ZXIge1xuXHRcdG1hcmdpbi10b3A6IDA7XG5cdH1cblxuXHQvLyAmOmJlZm9yZSB7XG5cdC8vIFx0Y29udGVudDogXCJcIjtcblx0Ly8gXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdC8vIFx0bGVmdDogMDtcblx0Ly8gXHR3aWR0aDogMTAwJTtcblx0Ly8gXHRoZWlnaHQ6IDEwMCU7XG5cdC8vIFx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSg1MSw1MSw1MSwwLjg1KTtcblx0Ly8gXHR6LWluZGV4OiAxMDAwO1xuXHQvLyB9XG5cbn1cbiIsIi5vcmRlcnMtbGlzdC0tbWFpbiB7XG5cbiAgLm9yZGVyc19faGVhZGluZyB7XG5cbiAgICBoMSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkY29uc3RhbnQ7XG4gICAgfVxuICB9XG5cbiAgLm9yZGVyc19faXRlbXMtLXdyYXBwZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkZ3JheS0tbGlnaHRlcjtcblxuICAgIC5pdGVtLS1oZWFkaW5nIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kOiAkZ3JheS0tbGlnaHRlcjtcbiAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkZ3JheSAhaW1wb3J0YW50O1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBjb2xvcjogJGdyYXktLTQwO1xuXG4gICAgICAmICsgLml0ZW0ge1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bSl7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5pdGVtIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyYXktLWxpZ2h0ZXN0O1xuICAgICAgLy8gQGluY2x1ZGUgZGVsdGE7XG5cbiAgICAgICYgPiBkaXYge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICB9XG5cbiAgICAgIC5pdGVtX19ib3gge1xuICAgICAgICBwYWRkaW5nOiAkY29uc3RhbnQvMiAkY29uc3RhbnQvMjtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgfVxuXG4gICAgICAuaXRlbV9fYm94Om50aC1vZi10eXBlKDEpe1xuICAgICAgICB3aWR0aDogMjAlO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6ICRjb25zdGFudDtcbiAgICAgIH1cblxuICAgICAgJjpub3QoLml0ZW0tLXN1bW1hcnkpIC5pdGVtX19ib3g6bnRoLW9mLXR5cGUoMil7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBjb2xvcjogJGdyYXktLTQwO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0pe1xuXG4gICAgICAgICAgd2lkdGg6IDIwJTtcbiAgICAgICAgICBAaW5jbHVkZSBiYXNlO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogJGNvbnN0YW50LzIuNTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOm5vdCguaXRlbS0tc3VtbWFyeSkgLml0ZW1fX2JveDpudGgtb2YtdHlwZSgxKXtcbiAgICAgICAgLy9wb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMi4wZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgIGNvbG9yOiAkZ3JheS0tZGFya2VyO1xuXG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtKXtcbiAgICAgICAgICBjb2xvcjogJGdyYXktLTQwO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAkY29uc3RhbnQvMjtcblxuICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuaXRlbV9fYm94Om50aC1vZi10eXBlKDMpe1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgIGNvbG9yOiAkZ3JheS0tNDA7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuXG5cbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0pe1xuICAgICAgICAgIGNsZWFyOiBub25lO1xuICAgICAgICAgIGNvbG9yOiAkZ3JheS0tNDA7XG4gICAgICAgICAgd2lkdGg6IDIwJTtcbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5pdGVtX19ib3g6bnRoLW9mLXR5cGUoNCl7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwZW07XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgIH1cblxuICAgICAgJjpub3QoLml0ZW0tLWhlYWRpbmcpIC5pdGVtX19ib3g6bnRoLW9mLXR5cGUoNCkge1xuICAgICAgICBjb2xvcjogJGdyYXktLTQwO1xuXG4gICAgICB9XG5cbiAgICAgIC5pdGVtX19ib3g6bnRoLW9mLXR5cGUoNSl7XG5cbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcblxuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG5cbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0pe1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICRjb25zdGFudDtcbiAgICAgICAgfVxuXG5cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0pe1xuXG4gICAgICAgIEBpbmNsdWRlIGJhc2U7XG5cbiAgICAgICAgLml0ZW1fX2JveDpudGgtb2YtdHlwZSgxKXtcbiAgICAgICAgICB3aWR0aDogMjAlO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogJGNvbnN0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgLml0ZW1fX2JveDpudGgtb2YtdHlwZSg0KXtcbiAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICB3aWR0aDogMjAlO1xuICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgIH1cblxuICAgICAgICAmOm5vdCguaXRlbS0taGVhZGluZykgLml0ZW1fX2JveDpudGgtb2YtdHlwZSg0KSB7XG4gICAgICAgICAgY29sb3I6ICRncmF5LS1kYXJrZXI7XG4gICAgICAgIH1cblxuICAgICAgICAuaXRlbV9fYm94Om50aC1vZi10eXBlKDUpe1xuICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkY29uc3RhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuaXRlbS0tc3VtbWFyeSB7XG5cbiAgICAgIC5pdGVtX19ib3gge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICBAaW5jbHVkZSBkZWx0YTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIHBhZGRpbmc6ICRjb25zdGFudC8yIDAgJGNvbnN0YW50O1xuICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG5cbiAgLmNvbnRhY3QtaW5mb19fd3JhcHBlciB7XG5cbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJGdyYXktLWxpZ2h0ZXI7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgcGFkZGluZy1ib3R0b206ICRjb25zdGFudC8yO1xuXG4gICAgLmNvbnRhY3QtaW5mb19fd3JhcHBlci0taW5uZXIge1xuXG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZvbnQtc2l6ZTogMTEwJTtcblxuICAgICAgJjpsYXN0LW9mLXR5cGUgLmNvbnRhY3QtaW5mb19fYm94Omxhc3Qtb2YtdHlwZSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAkc3BhY2luZztcbiAgICAgIH1cblxuICAgICAgYWRkcmVzcyB7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgIH1cblxuICAgICAgaDIge1xuICAgICAgICBtYXJnaW46ICRzcGFjaW5nLzQgMDtcbiAgICAgICAgbWFyZ2luLXRvcDogJHNwYWNpbmcvMjtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0pe1xuICAgICAgICB3aWR0aDogNDIlO1xuICAgICAgICBtYXJnaW4tdG9wOiAkY29uc3RhbnQ7XG4gICAgICB9XG5cbiAgICAgIC5jb250YWN0LWluZm9fX2JveCB7XG5cbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGNsZWFyOiBsZWZ0O1xuICAgICAgICBwYWRkaW5nLXRvcDogJGNvbnN0YW50LzI7XG5cbiAgICAgICAgLmJveF9fYm9keSB7XG4gICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0pe1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206ICRjb25zdGFudC8yO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNDAlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm9yZGVyc19fYWN0aW9uIHtcbiAgICBtYXJnaW4tdG9wOiAkc3BhY2luZztcbiAgICBjb2xvcjogJGxpbmstY29sb3I7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG5cbiAgICAuYWN0aW9uX19pdGVtIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2luZy80O1xuICAgICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0pe1xuICAgICAgICBjbGVhcjogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpIHtcbiAgICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgICB0b3A6IDAuMTVlbTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgIG1hcmdpbi1yaWdodDogJHNwYWNpbmc7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICRjb25zdGFudC80O1xuICAgICAgQGluY2x1ZGUgZGVsdGE7XG4gICAgfVxuICB9XG5cbn0iLCIucHJpY2Uge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIEBpbmNsdWRlIGRlbHRhO1xuICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IDEycHg7XG59XG5cbi5wcmljZS0tb3JpZ2luYWwge1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG5cbiAgICAmICsgLnByaWNlIHtcbiAgICAgICAgY29sb3I6ICR3YXJuaW5nO1xuICAgIH1cblxufVxuIiwiLnByb2R1Y3RzX19saXN0IHtcblxuICAgIC5lZGl0aW9uLXdyYXBwZXIge1xuICAgICAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgIH1cblxuICAgICAgICBwYWRkaW5nLXRvcDogJHNwYWNpbmc7XG4gICAgfVxuXG4gICAgLnByb2R1Y3QtaXRlbSB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDY0cHg7XG4gICAgfVxufVxuXG5cbi5wcm9kdWN0c19fbGlzdCA+IC5wcm9kdWN0c19faGVhZGluZyB7XG4gICAgbWFyZ2luLXRvcDogKCRzcGFjaW5nICogMS41KTtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICBwYWRkaW5nLXRvcDogKCRzcGFjaW5nICogMS41KTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbn1cblxuLnByb2R1Y3RzX19saXN0OmZpcnN0LWNoaWxkID4gLnByb2R1Y3RzX19oZWFkaW5nIHtcbiAgICBtYXJnaW4tdG9wOiAoJHNwYWNpbmcgKiAxLjUpO1xuICAgIGJvcmRlci10b3A6IDA7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG59XG5cbi5wcm9kdWN0LWl0ZW0ge1xuICAgIHBhZGRpbmc6IDIwcHggMCAxNXB4O1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICAgIC8vIGZsYWdcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIC5mbGV4Ym94ICYge1xuXG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8ocHJvZHVjdCkge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgIC5mbGFnX19pbWFnZSB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAkc3BhY2luZy8yO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgLy9ib3JkZXItdG9wOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICB9XG59XG5cbi5wcm9kdWN0LWl0ZW1fX21ldGEge1xuICAgIC8vIGZsYWdcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcblxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8ocHJvZHVjdCkge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgbWF4LXdpZHRoOiA0NjBweDtcbiAgICB9XG5cbiAgICAuZmxleGJveCAmIHtcblxuICAgICAgICBAaW5jbHVkZSByZXNwb25kLXRvKHByb2R1Y3QpIHtcbiAgICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIC8vIC5mbGFnIHtcbiAgICAvLyAgICAgc3BhbiB7XG4gICAgLy8gICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAvLyAgICAgfVxuXG4gICAgLy8gICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgIC8vICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgLy8gICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgLy8gICAgIC5mbGFnX19pbWFnZSBpbWcge1xuICAgIC8vICAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgLy8gICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgLy8gICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAvLyAgICAgfVxuXG4gICAgLy8gICAgIC5mbGFnX19ib2R5IHtcbiAgICAvLyAgICAgICAgIGEge1xuICAgIC8vICAgICAgICAgfVxuICAgIC8vICAgICB9XG4gICAgLy8gfVxufVxuXG4ucHJvZHVjdC1pdGVtX190aHVtYm5haWwge1xuICAgIC8vIHdpZHRoOiA1MHB4O1xuICAgIC8vIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAvLyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICBpbWcge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICB9XG59XG5cbi5wcm9kdWN0LWl0ZW1fX2luZm8ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nLWxlZnQ6IDYwcHg7XG5cbiAgICBhIHtcbiAgICAgICBAaW5jbHVkZSBkZWx0YTtcbiAgICAgICBsaW5lLWhlaWdodDogMDtcbiAgICB9XG59XG5cbi5wcm9kdWN0LWl0ZW1fX2FjdGlvbiB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAvLyBmbGFnXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgLy8gd2lkdGg6IDEwMCU7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDYwcHg7XG4gICAgZmxvYXQ6IGxlZnQ7XG5cbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKHNtYWxsKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG5cbiAgICAucHJpY2Uge1xuICAgICAgICBsaW5lLWhlaWdodDogMS43NTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG5cbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC10byhzbWFsbCkge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC10byhwcm9kdWN0KSB7XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnByb2R1Y3QtaXRlbV9fYnV0dG9uIHtcbiAgICAuaWNvbiB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1pY29uO1xuICAgIH1cbn1cblxuLnByb2R1Y3QtaXRlbV9fZm9ybSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGNsZWFyOiBsZWZ0O1xuXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhzbWFsbCkge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICBjbGVhcjogbm9uZTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKHByb2R1Y3QpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cblxuICAgIGlucHV0IHtcbiAgICAgICAgd2lkdGg6IDcwcHg7XG4gICAgICAgIHBhZGRpbmc6IDdweCAxMHB4IDVweDsgLy9pbnB1dCBoYXMgc29tZSBicm93c2VyIHN0eWxpbmdcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgICB9XG5cbiAgICBsYWJlbCB7XG4gICAgICAgIG1hcmdpbjogMCA2cHg7XG5cbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC10byhsYXJnZSl7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEycHg7XG4gICAgICAgIH1cblxuICAgIH1cblxufVxuXG4ucHJvZHVjdC1pdGVtX19mb3JtLS1sZWZ0IHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5wcm9kdWN0X191bml0LXByaWNlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAkY29uc3RhbnQ7XG59XG5cbi5wcm9kdWN0LWl0ZW1fX3JlbW92ZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiAkd2FybmluZztcbiAgICBmb250LXNpemU6IDE1MCU7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBib3JkZXI6IDA7XG4gICAgcGFkZGluZzogMTBweDtcbn1cbiIsIi5wcm9kdWN0cyB7XG4gICAgcGFkZGluZy1ib3R0b206ICRzcGFjaW5nO1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAucHJvZHVjdHNfX2xpc3Qge1xuICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICB9XG5cblxufVxuLy9cbi8vLmhpZGRlbiB7XG4vLyAgICBkaXNwbGF5OiBub25lO1xuLy99XG5cbi5wcm9kdWN0c19faGVhZGluZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLnByb2R1Y3RzX19pbmZvIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkY29uc3RhbnQvMjtcbn1cbiIsIi5xdWljay1jb250YWN0X19oZWFkaW5nIHtcbiAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG59XG5cbi5xdWljay1jb250YWN0X19saW5rIHtcbiAgICBAaW5jbHVkZSBlcHNpbG9uKCk7XG59XG5cbi5xdWljay1jb250YWN0X19pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiA2cHg7XG59XG5cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogbWFwLWdldCgkYnJlYWtwb2ludHMsIFwibGFyZ2VcIikpe1xuICAgIC5xdWljay1jb250YWN0IHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLnF1aWNrLWNvbnRhY3Qge1xuXG4gICAgLmljb24ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDE0cHg7XG4gICAgICAgIHdpZHRoOiAxOHB4O1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogMTIwJTtcbiAgICAgICAgY29sb3I6ICRicmFuZC1jb2xvci0tcHJpbWFyeTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IDNweDtcbiAgICB9XG5cbiAgICAuaWNvbi1lbnZlbG9wZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTQwJTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IDVweDtcbiAgICB9XG5cbn1cblxuLnF1aWNrLWNvbnRhY3QtLWJpZyB7XG4gICAgLnF1aWNrLWNvbnRhY3RfX2xpbmsge1xuICAgICAgICBAaW5jbHVkZSBkZWx0YTtcbiAgICB9XG5cbiAgICAuaWNvbiB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogJGNvbnN0YW50O1xuICAgIH1cblxuICAgIC5pY29uLWVudmVsb3BlIHtcbiAgICAgICAgZm9udC1zaXplOiAxODAlO1xuICAgICAgICB0b3A6IDdweDtcbiAgICB9XG59XG4iLCIuc2VhcmNoX193cmFwcGVyIHtcbiAgICBcbiAgICAuaXRlbV9fbGlzdCB7XG4gICAgICAgIFxuICAgICAgICBtYXJnaW4tdG9wOiAkc3BhY2luZztcbiAgICAgICAgcGFkZGluZy1ib3R0b206ICRzcGFjaW5nO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wcm9kdWN0cyB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5pdGVtLS1oZWFkZXIge1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206ICRjb25zdGFudC8yO1xuICAgICAgICAgICAgQGluY2x1ZGUgYmV0YTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNlYXJjaF9fYXV0b2NvbXBsZXRlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgLnNlYXJjaC1jbG9zZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLnNpdGUtc2VhcmNoX193cmFwcGVyIHtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgdG9wOiAxM3B4O1xuICAgICAgICAgICAgcmlnaHQ6IDE1cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2VhcmNoX19hdXRvY29tcGxldGUtdGl0bGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAoJGNvbnN0YW50IC8gMik7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhzbWFsbCkge1xuICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcblxuICAgICAgICAuc2VhcmNoX19hdXRvY29tcGxldGUtdGl0bGUge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNlYXJjaF9fYXV0b2NvbXBsZXRlLWlucHV0IHtcbiAgICBmbGV4OiAxIDAgMDtcbiAgICBcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKHNtYWxsKSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogJHNwYWNpbmc7XG4gICAgICAgIG1heC13aWR0aDogNDYwcHg7XG4gICAgfVxufVxuXG4uc2VhcmNoX19hdXRvY29tcGxldGUtdGl0bGUge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhzbWFsbCkge1xuICAgICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB9XG59XG4iLCIvLyBUT0RPXG4vLyB2eXR2b3JpdCBzaSBsb2thbG5pIHByb21lbm5lIHMgYmV6bnltaSBwYXR0ZXJueSAocGFkZGluZ3ksIGJvcmRlcnksIGFsaWdubWVudClcbi8vIHZ5dm9yaXQgc2kgdHJpZHkgYWxhICdzZWN0aW9uLXRlc3RpbW9uaWFsJywgJ3NlY3Rpb24tdXNwJyBhcG9kLlxuLy8gbmFrb21iaW5vdmF0IHNwcmF2bnkgbWl4IHYgY3NzLCBuZSBwcmVzIHRyaWR5LCB0byBieSBieWxvIHpieXRlY25lIGtvbXBsaWtvdmFuZSBhIHN0ZWpuZSB0YWtvdmEgcHJ1em5vc3QgbmVuaSBwb3RyZWJhXG5cbi5zZWN0aW9uLS1ob3Jpem9udGFsIHtcbiAgICBwYWRkaW5nOiAkc3BhY2luZyAwO1xufVxuXG4uc2VjdGlvbi0taGlnaGxpZ2h0IHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkYWNjZW50LWNvbG9yLS1kYXJrO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY2NlbnQtY29sb3ItLWxpZ2h0O1xuICAgIHBhZGRpbmc6IDAgJHNwYWNpbmcgJHNwYWNpbmc7XG5cblxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmc6ICRzcGFjaW5nIDAgKCRzcGFjaW5nICogMik7XG4gICAgICAgIG1hcmdpbi10b3A6ICRzcGFjaW5nOyAvLyBib3ggb24gby1uYXMgcGFnZVxuICAgIH1cbn1cblxuLnNlY3Rpb24tLWhpZ2hsaWdodF9faGVhZGluZyB7XG5cbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bSkge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxufVxuXG4uc2VjdGlvbi0tdGVzdGltb25pYWwge1xuICAgIHBhZGRpbmctdG9wOiAkc3BhY2luZztcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbn1cblxuLnNlY3Rpb24tLWN0YSB7XG4gICAgcGFkZGluZzogJHNwYWNpbmcgMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG59XG4iLCIvKlxuICoganF1ZXJ5LnNlbGVjdEJveEl0LmNzcyAzLjguMVxuICogQXV0aG9yOiBAZ3JlZ2ZyYW5rb1xuICovXG5cbi8qXG4gIENvbW1vbiBDU1MgUHJvcGVydGllc1xuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgVGhlc2UgcHJvcGVydGllcyB3aWxsIGJlIGFwcGxpZWQgdG8gYW55IHRoZW1lcyB0aGF0IHlvdSB1c2VcbiovXG5cbi8qIFNlbGVjdEJveEl0IGNvbnRhaW5lciAqL1xuLnNlbGVjdGJveGl0LWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLXRvcDogJGNvbnN0YW50LzI7XG4gIG1hcmdpbi1sZWZ0OiAkY29uc3RhbnQvMjtcbn1cblxuLyogU3R5bGVzIHRoYXQgYXBwbHkgdG8gYWxsIFNlbGVjdEJveEl0IGVsZW1lbnRzICovXG4uc2VsZWN0Ym94aXQtY29udGFpbmVyICoge1xuICBmb250OiAxNHB4IEhlbHZldGljYSwgQXJpYWw7XG4gIC8qIFByZXZlbnRzIHRleHQgc2VsZWN0aW9uICovXG4gIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiAtbW96LW5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW8tdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBvdXRsaW5lOiBub25lO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4vKiBCdXR0b24gKi9cbi5zZWxlY3Rib3hpdC1jb250YWluZXIgLnNlbGVjdGJveGl0IHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4vKiBIZWlnaHQgYW5kIFZlcnRpY2FsIEFsaWdubWVudCBvZiBUZXh0ICovXG4uc2VsZWN0Ym94aXQtY29udGFpbmVyIHNwYW4sIC5zZWxlY3Rib3hpdC1jb250YWluZXIgLnNlbGVjdGJveGl0LW9wdGlvbnMgYSB7XG4gIGhlaWdodDogNDhweDsgLyogSGVpZ2h0IG9mIHRoZSBkcm9wIGRvd24gKi9cbiAgbGluZS1oZWlnaHQ6IDQ4cHg7IC8qIFZlcnRpY2FsbHkgcG9zaXRpb25zIHRoZSBkcm9wIGRvd24gdGV4dCAqL1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyogRm9jdXMgcHNldWRvIHNlbGVjdG9yICovXG4uc2VsZWN0Ym94aXQtY29udGFpbmVyIC5zZWxlY3Rib3hpdDpmb2N1cyB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi8qIERpc2FibGVkIE1vdXNlIEludGVyYWN0aW9uICovXG4uc2VsZWN0Ym94aXQuc2VsZWN0Ym94aXQtZGlzYWJsZWQsIC5zZWxlY3Rib3hpdC1vcHRpb25zIC5zZWxlY3Rib3hpdC1kaXNhYmxlZCB7XG4gIG9wYWNpdHk6IDAuNjU7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT02NSk7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgLW1vei1ib3gtc2hhZG93OiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi8qIEJ1dHRvbiBUZXh0ICovXG4uc2VsZWN0Ym94aXQtdGV4dCB7XG4gIHRleHQtaW5kZW50OiA1cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5zZWxlY3Rib3hpdCAuc2VsZWN0Ym94aXQtb3B0aW9uLWljb24tY29udGFpbmVyIHtcbiAgbWFyZ2luLWxlZnQ6IDVweDtcbn1cblxuLyogT3B0aW9ucyBMaXN0ICovXG4uc2VsZWN0Ym94aXQtY29udGFpbmVyIC5zZWxlY3Rib3hpdC1vcHRpb25zIHtcbiAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBtaW4td2lkdGg6IDEwMCU7ICAvKiBNaW5pbXVtIFdpZHRoIG9mIHRoZSBkcm9wZG93biBsaXN0IGJveCBvcHRpb25zICovXG4gICp3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBub25lO1xuICB6LWluZGV4OiA5OTk5OTk5OTk5OTk5O1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICAtbW96LWJveC1zaGFkb3c6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qIEluZGl2aWR1YWwgb3B0aW9ucyAqL1xuIC5zZWxlY3Rib3hpdC1vcHRpb24gLnNlbGVjdGJveGl0LW9wdGlvbi1hbmNob3J7XG4gIHBhZGRpbmc6IDAgMnB4O1xufVxuXG4vKiBJbmRpdmlkdWFsIE9wdGlvbiBIb3ZlciBBY3Rpb24gKi9cbi5zZWxlY3Rib3hpdC1vcHRpb24gLnNlbGVjdGJveGl0LW9wdGlvbi1hbmNob3I6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi8qIEluZGl2aWR1YWwgT3B0aW9uIE9wdGdyb3VwIEhlYWRlciAqL1xuLnNlbGVjdGJveGl0LW9wdGlvbiwgLnNlbGVjdGJveGl0LW9wdGdyb3VwLWhlYWRlciB7XG4gIHRleHQtaW5kZW50OiA1cHg7IC8qIEhvcml6b250YWwgUG9zaXRpb25pbmcgb2YgdGhlIHNlbGVjdCBib3ggb3B0aW9uIHRleHQgKi9cbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG5cbi8qIFRoZSBmaXJzdCBEcm9wIERvd24gb3B0aW9uICovXG4uc2VsZWN0Ym94aXQtb3B0aW9uLWZpcnN0IHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbn1cblxuLyogVGhlIGZpcnN0IERyb3AgRG93biBvcHRpb24gb3B0Z3JvdXAgKi9cbi5zZWxlY3Rib3hpdC1vcHRncm91cC1oZWFkZXIgKyAuc2VsZWN0Ym94aXQtb3B0aW9uLWZpcnN0IHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDBweDtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMHB4O1xufVxuXG4vKiBUaGUgbGFzdCBEcm9wIERvd24gb3B0aW9uICovXG4uc2VsZWN0Ym94aXQtb3B0aW9uLWxhc3Qge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xufVxuXG4vKiBEcm9wIERvd24gb3B0Z3JvdXAgaGVhZGVycyAqL1xuLnNlbGVjdGJveGl0LW9wdGdyb3VwLWhlYWRlciB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4vKiBEcm9wIERvd24gb3B0Z3JvdXAgaGVhZGVyIGhvdmVyIHBzdWVkbyBjbGFzcyAqL1xuLnNlbGVjdGJveGl0LW9wdGdyb3VwLWhlYWRlcjpob3ZlciB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLyogRHJvcCBEb3duIGRvd24gYXJyb3cgY29udGFpbmVyICovXG4uc2VsZWN0Ym94aXQtYXJyb3ctY29udGFpbmVyIHtcbiAgLyogUG9zaXRpb25zIHRoZSBkb3duIGFycm93ICovXG4gIHdpZHRoOiAzMHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xufVxuXG4vKiBEcm9wIERvd24gZG93biBhcnJvdyAqL1xuLnNlbGVjdGJveGl0IC5zZWxlY3Rib3hpdC1hcnJvdy1jb250YWluZXIgLnNlbGVjdGJveGl0LWFycm93IHtcbiAgLyogSG9yaXpvbnRhbGx5IGNlbnRlcnMgdGhlIGRvd24gYXJyb3cgKi9cbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xufVxuXG4vKiBEcm9wIERvd24gZG93biBhcnJvdyBmb3IgalF1ZXJ5VUkgYW5kIGpRdWVyeSBNb2JpbGUgKi9cbi5zZWxlY3Rib3hpdCAuc2VsZWN0Ym94aXQtYXJyb3ctY29udGFpbmVyIC5zZWxlY3Rib3hpdC1hcnJvdy51aS1pY29uIHtcbiAgdG9wOiAzMCU7XG59XG5cbi8qIERyb3AgRG93biBpbmRpdmlkdWFsIG9wdGlvbiBpY29uIHBvc2l0aW9uaW5nICovXG4uc2VsZWN0Ym94aXQtb3B0aW9uLWljb24tY29udGFpbmVyIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5zZWxlY3Rib3hpdC1jb250YWluZXIgLnNlbGVjdGJveGl0LW9wdGlvbi1pY29uIHtcbiAgbWFyZ2luOiAwO1xuXG4gIHBhZGRpbmc6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi8qIERyb3AgRG93biBpbmRpdmlkdWFsIG9wdGlvbiBpY29uIHBvc2l0aW9uaW5nICovXG4uc2VsZWN0Ym94aXQtb3B0aW9uLWljb24tdXJsIHtcbiAgd2lkdGg6IDE4cHg7XG4gIGJhY2tncm91bmQtc2l6ZTogMThweCAxOHB4O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5zZWxlY3Rib3hpdC1yZW5kZXJpbmcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgKmRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuICB6b29tOiAxICFpbXBvcnRhbnQ7XG4gIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHRvcDogLTk5OTlweCAhaW1wb3J0YW50O1xuICBsZWZ0OiAtOTk5OXB4ICFpbXBvcnRhbnQ7XG59XG5cbi8qIGpRdWVyeVVJIGFuZCBqUXVlcnkgTW9iaWxlIGNvbXBhdGFiaWxpdHkgZml4IC0gRmVlbCBmcmVlIHRvIHJlbW92ZSB0aGlzIHN0eWxlIGlmIHlvdSBhcmUgbm90IHVzaW5nIGpRdWVyeSBNb2JpbGUgKi9cbi5qcXVlcnl1aSAudWktaWNvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG59XG5cbi8qIEFub3RoZXIgalF1ZXJ5VUkgYW5kIGpRdWVyeSBNb2JpbGUgY29tcGF0YWJpbGl0eSBmaXggLSBGZWVsIGZyZWUgdG8gcmVtb3ZlIHRoaXMgc3R5bGUgaWYgeW91IGFyZSBub3QgdXNpbmcgalF1ZXJ5IE1vYmlsZSAqL1xuLmpxdWVyeXVpIC51aS1pY29uLXRyaWFuZ2xlLTEtcyB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC02NHB4IC0xNnB4O1xufVxuXG4vKlxuICBEZWZhdWx0IFRoZW1lXG4gIC0tLS0tLS0tLS0tLS1cbiAgTm90ZTogRmVlbCBmcmVlIHRvIHJlbW92ZSBhbGwgb2YgdGhlIENTUyB1bmRlcm5lYXRoIHRoaXMgbGluZSBpZiB5b3UgYXJlIG5vdCB1c2luZyB0aGUgZGVmYXVsdCB0aGVtZVxuKi9cblxuLnNlbGVjdGJveGl0LWJ0biB7XG4gIFxuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuM3MsIGJvcmRlciAwLjNzO1xuICBtaW4td2lkdGg6IDE2MHB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICBib3JkZXI6IDFweCBzb2xpZCAkZ3JheS0tOTA7XG59XG5cbi5zZWxlY3Rib3hpdC1idG4uc2VsZWN0Ym94aXQtZW5hYmxlZDpob3Zlcixcbi5zZWxlY3Rib3hpdC1idG4uc2VsZWN0Ym94aXQtZW5hYmxlZDpmb2N1cyxcbi5zZWxlY3Rib3hpdC1idG4uc2VsZWN0Ym94aXQtZW5hYmxlZDphY3RpdmUge1xuICBjb2xvcjogIzMzMzMzMztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjNzLCBib3JkZXIgMC4zcztcbn1cblxuLnNlbGVjdGJveGl0LWJ0bi5zZWxlY3Rib3hpdC1lbmFibGVkOmhvdmVyLFxuLnNlbGVjdGJveGl0LWJ0bi5zZWxlY3Rib3hpdC1lbmFibGVkOmZvY3VzIHtcbiAgY29sb3I6ICMzMzMzMzM7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTVweDtcbn1cblxuLnNlbGVjdGJveGl0LWRlZmF1bHQtYXJyb3cge1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgICBAZXh0ZW5kIC5pY29uO1xuICAgICAgICBib3R0b206IDAuNWVtO1xuICAgICAgICByaWdodDogJGNvbnN0YW50LzI7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4yNWVtO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIGNvbG9yOiAkZ3JheS0tZGFya2VyO1xuICAgICAgICBjb250ZW50OiAkaWNvbi1hcnJvdy1kb3duO1xuICAgIH0gIFxufVxuXG4uc2VsZWN0Ym94aXQtbGlzdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4yKTtcbn1cblxuLnNlbGVjdGJveGl0LWxpc3QgLnNlbGVjdGJveGl0LW9wdGlvbi1hbmNob3Ige1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiAjMzMzMzMzO1xufVxuXG4uc2VsZWN0Ym94aXQtbGlzdCA+IC5zZWxlY3Rib3hpdC1mb2N1cyA+IC5zZWxlY3Rib3hpdC1vcHRpb24tYW5jaG9yIHtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1jb2xvci0tcHJpbWFyeTtcbn1cblxuLnNlbGVjdGJveGl0LWxpc3QgPiAuc2VsZWN0Ym94aXQtZGlzYWJsZWQgPiAuc2VsZWN0Ym94aXQtb3B0aW9uLWFuY2hvciB7XG4gIGNvbG9yOiAjOTk5OTk5O1xufVxuXG4gLnNlbGVjdGJveGl0LWNvbnRhaW5lciAuc2VsZWN0Ym94aXQtb3B0aW9ucyB7XG5cbiAgICAvKiBTZXQncyB0aGUgZHJvcCBkb3duIG9wdGlvbnMgd2lkdGggdG8gdGhlIHNhbWUgd2lkdGggYXMgdGhlIGRyb3AgZG93biBidXR0b24gKi9cblxuICAgIC8qIFNldCdzIHRoZSBtYXgtaGVpZ2h0IHByb3BlcnR5IHRvIG9ubHkgc2hvdyBhIHN1YnNldCBvZiB0aGUgZHJvcCBkb3duIGl0ZW1zLlxuICAgICAgIElmIHlvdSBkbyBub3Qgc2V0IGEgbWF4LWhlaWdodCBwcm9wZXJ0eSwgU2VsZWN0Qm94SXQgd2lsbCBkeW5hbWljYWxseVxuICAgICAgIHBvc2l0aW9uIHRoZSBkcm9wZG93biAod2hlbiBvcGVuZWQpIHRvIG1ha2Ugc3VyZSB0aGUgZHJvcCBkb3duIGl0ZW1zIGFyZSBub3RcbiAgICAgICBkaXNwbGF5ZWQgb3V0c2lkZSBvZiB0aGUgY3VycmVudCB3aW5kb3cgdmlld3BvcnQuXG4gICAgKi9cblxuICAgIHdpZHRoOiBhdXRvO1xuICB9IiwiLnNpdGUtZm9vdGVyIHtcbiAgICBAaW5jbHVkZSBtaWxsaTtcbiAgICBtYXJnaW4tdG9wOiAoJGNvbnN0YW50ICogMik7XG4gICAgYmFja2dyb3VuZDogJGJsYWNrO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgcGFkZGluZzogMzBweCAwIDMwcHg7XG5cbiAgICBhIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG5cbiAgICAubmF2IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNpbmcvMjtcblxuICAgICAgICArLmZvb3Rlci1tZW51LS1jb250YWN0IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtKXtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmZvb3Rlci1tZW51IHtcblxuICAgICAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bSl7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLmZvb3Rlci1tZW51X19pdGVtIHtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgY2xlYXI6IGxlZnQ7XG4gICAgICAgIH1cblxuICAgICAgICAmLS1jb250YWN0IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtKXtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgbGVmdDogMTAwcHg7XG5cbiAgICAgICAgICAgICAgICAuc2l0ZS1mb290ZXJfX2l0ZW0ge1xuICAgICAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgY2xlYXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc2l0ZS1mb290ZXJfX2l0ZW0ge1xuXG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0pe1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNpdGUtZm9vdGVyX19pdGVtIHtcbiAgICBAaW5jbHVkZSBtaWxsaTtcbiAgICBwYWRkaW5nOiAycHggJGNvbnN0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiAoLTEgKiAkY29uc3RhbnQpO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGNsZWFyOiBsZWZ0O1xuXG4gICAgLnNpdGUtZm9vdGVyX19sb2dvIHtcbiAgICAgICAgKyBzcGFuIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtKXtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhsYXJnZSl7XG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmljb24ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgICB9XG59XG5cbi5zaXRlLWZvb3Rlcl9fbG9nbyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAkY29uc3RhbnQ7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTRweDtcbiAgICBtYXgtaGVpZ2h0OiA0MHB4O1xuXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhsYXJnZSkge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgfVxufVxuIiwiLnNpdGUtbGVmdC1uYXYge1xuXG4gICAgJHNpdGUtbGVmdC1uYXZfX29mZnNldDogMzJweDtcblxuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiA4MDtcbiAgICB0b3A6IC0ycHg7XG4gICAgYm9yZGVyOiAycHggc29saWQgJGJvcmRlci1jb2xvci0tYmx1ZTtcbiAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtYmx1ZTtcbiAgICBwYWRkaW5nLWxlZnQ6ICRjb25zdGFudC8yO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuXG4gICAgJi5uby1pY29ucyB7XG5cbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAuc2l0ZS1sZWZ0LW5hdl9faXRlbSB7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogJGNvbnN0YW50LzI7XG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtKXtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhsYXJnZSl7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgfVxuXG4gICAgJiA+IGxpOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMDsgIC8vIGdldCByaWQgb2YgdGhlIGZpcnN0IGl0ZW0ncyBib3JkZXIgLS1cbiAgICB9XG5cbiAgICB1bCB7XG5cbiAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6ICRzaXRlLWxlZnQtbmF2X19vZmZzZXQ7XG5cbiAgICAgICAgdWwgdWwgeyAgLy8gdGhpcyBpcyB0aGUgbGFzdCBsaXN0LCB3aWxsIG5vdCBiZSBleHBhbmRlZCBmdXJ0aGVyIC0tXG5cbiAgICAgICAgICAgIGxpLnNpdGUtbGVmdC1uYXZfX2l0ZW0ge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcblxuICAgICAgICAgICAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDExcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDJweCAwO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5jdXJyZW50IHtcbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgbGkge1xuXG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yLS1ibHVlO1xuXG4gICAgICAgICYuc2l0ZS1sZWZ0LW5hdl9faXRlbSB7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMXB4IDEycHggMTFweCAwO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogJHNpdGUtbGVmdC1uYXZfX29mZnNldDtcblxuICAgICAgICAgICAgICAgICY6aG92ZXIsICY6Zm9jdXMsICY6YWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRicmFuZC1jb2xvci0tc2Vjb25kYXJ5O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICd1Y2VibmljZVZhbmljZWsnICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIHNwZWFrOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcblxuICAgICAgICAgICAgICAgICAgICAvKiBCZXR0ZXIgRm9udCBSZW5kZXJpbmcgPT09PT09PT09PT0gKi9cbiAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAgICAgICAgICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG5cbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJGljb24tcGx1cztcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6ICRzaXRlLWxlZnQtbmF2X19vZmZzZXQ7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogJHNpdGUtbGVmdC1uYXZfX29mZnNldDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjI1ZW07XG4gICAgICAgICAgICAgICAgICAgIHRvcDogNnB4O1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtJHNpdGUtbGVmdC1uYXZfX29mZnNldDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLnNpdGUtbGVmdC1uYXZfX2l0ZW0tLW5vLWNoaWxkIHtcbiAgICAgICAgICAgIGF7XG4gICAgICAgICAgICAgICAgJjpiZWZvcmV7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5jdXJyZW50IHsgIC8vIGhpZ2hsaWdodCBhbGwgc2VsZWN0ZWQgcGFyZW50cyAtLVxuICAgICAgICAgICAgJiA+IGEge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJGljb24tbWludXM7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLnNpdGUtbG9nbyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAkY29uc3RhbnQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTRweDtcbiAgICBwYWRkaW5nOiA1cHggMDtcbn1cblxuLy8gdGhpcyBsb2dvIHZhcmlhbnQgaXMgYmVpbmcgdXNlZCBpbiBiYXNrZXQgdGVtcGxhdGVzXG4vLyBhcHAvUmVzb3VyY2VzL3ZpZXdzL3Nob3AvY2FydC9fY2FydC1uYXYuaHRtbC50d2lnXG4uc2l0ZS1sb2dvLS1jb21wYWN0IHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1heC1oZWlnaHQ6IDY3cHg7XG5cbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogKCRzcGFjaW5nIC8gMik7XG4gICAgfVxufVxuIiwiLnNpdGUtbmF2LXRhYiB7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0Ym9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRib3JkZXItY29sb3I7XG5cdG1hcmdpbi1ib3R0b206ICRzcGFjaW5nO1xufVxuXG4uc2l0ZS1uYXYtdGFiX19pdGVtIHtcblx0XG5cdEBpbmNsdWRlIGVwc2lsb247XG5cdHdpZHRoOiA0OSU7XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdHBhZGRpbmc6IDIwcHggJHNwYWNpbmcvMjtcblx0Ym9yZGVyOiAycHggc29saWQgJGJvcmRlci1jb2xvcjtcblx0Ym9yZGVyLWJvdHRvbTogMDtcblx0YmFja2dyb3VuZC1jb2xvcjogJGdyYXktLTk2O1xuXHRmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuXHQuc2l0ZS1uYXYtdGFiX19saW5rIHtcblx0XHRjb2xvcjogJGJsYWNrO1xuXHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0fVxuXG5cdEBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtKXtcblx0XHRAaW5jbHVkZSBnYW1tYTtcblx0XHR3aWR0aDogYXV0bztcblx0XHRwYWRkaW5nOiAkY29uc3RhbnQgJHNwYWNpbmc7XG5cblx0XHQuc2l0ZS1uYXYtdGFiX19saW5rIHtcblx0XHRcdGNvbG9yOiAkbGluay1jb2xvcjtcblx0XHRcdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cdFx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblx0XHR9XHRcblx0fVxuXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhsYXJnZSl7XG4gICAgICAgIEBpbmNsdWRlIGJldGE7XG4gICAgfVxufVxuXG4uc2l0ZS1uYXYtdGFiX19pdGVtLS1hY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgIGJvcmRlcjogMDtcblxuXHQuc2l0ZS1uYXYtdGFiX19saW5rIHtcblx0XHRjb2xvcjogJGJsYWNrO1xuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0fVxufVxuXG4ubmF2LXRhYl9fY29udGVudC0taGlkZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cbiIsIi5zaXRlLXNlYXJjaCB7XG4gICAgQGluY2x1ZGUgbWlsbGk7XG4gICAgcGFkZGluZzogJGZvcm0tcGFkZGluZy0tbGFyZ2U7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDQwJTtcbn1cbiIsIi5zaXRlLXRvcC1uYXYtLXJvdzEge1xuXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgcGFkZGluZzogMDtcblxuICAgIC50b3AtbWVudV9faXRlbSB7XG4gICAgICAgIHBhZGRpbmc6ICRzcGFjaW5nLzQgNHB4O1xuXG4gICAgICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmLmhpZGRlbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bSl7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnRvcC1tZW51X19saW5rIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAgICAgLmhpZGRlbiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtKXtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bSl7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYWNjb3VudCB7XG4gICAgICAgIC8vZGlzcGxheTogbm9uZTtcblxuICAgICAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bSkge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmKy5zaXRlLXRvcC1uYXYtLXJvdzIge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxufVxuXG4uc2l0ZS10b3AtbmF2LS1yb3cyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgcGFkZGluZzogJGNvbnN0YW50IDAgJGNvbnN0YW50LzI7XG5cbiAgICAud3JhcHBlciB7XG4gICAgICAgICBkaXNwbGF5OiB0YWJsZS1yb3c7XG5cblxuXG5cbiAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obGFyZ2Upe1xuICAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgfVxuICAgIH1cblxuICAgIC5iYXNrZXQtYnV0dG9uX193cmFwcGVyIHtcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRzcGFjaW5nO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6ICRjb25zdGFudDtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bSl7XG4gICAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC10byhsYXJnZSl7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAuYnV0dG9uX19tb2JpbGUge1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcblxuICAgICAgICAmLmJ1dHRvbl9fbW9iaWxlLS1zZWFyY2gsICYuYnV0dG9uX19tb2JpbGUtLWJhc2tldCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwICRzcGFjaW5nLzI7XG4gICAgICAgICAgICBAaW5jbHVkZSBnYW1tYTtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bSl7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgJi5idXR0b25fX21vYmlsZS1tZW51LS1hY3RpdmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGxpZ2h0LWJsdWU7XG5cbiAgICAgICAgICAgIGk6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAkaWNvbi1jbG9zZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuYnV0dG9uX19tb2JpbGUtLWJhc2tldCB7XG4gICAgICAgICAgICBjb2xvcjogJGJyYW5kLWNvbG9yLS1zZWNvbmRhcnk7XG5cbiAgICAgICAgICAgICY6YWN0aXZlLCAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJyYW5kLWNvbG9yLS1wcmltYXJ5O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5idXR0b25fX21vYmlsZS0tbWVudSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAkY29uc3RhbnQvMiAkY29uc3RhbnQ7XG4gICAgICAgICAgICB3aWR0aDogMDtcblxuICAgICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGRlbHRhO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICAgICAgICAgIHRvcDogMnB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC10byhsYXJnZSl7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYmFza2V0LWJ1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0pe1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2l0ZS1sb2dvX193cmFwcGVyIHtcbiAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgLnNpdGUtbG9nbyB7XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbWF4LWhlaWdodDogJGNvbnN0YW50KjEuMjU7XG4gICAgICAgICAgICBtYXJnaW46ICRjb25zdGFudC8yIGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bSl7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgICAgICAgICB3aWR0aDogMDtcblxuICAgICAgICAgICAgLnNpdGUtbG9nbyB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6ICRjb25zdGFudCoyO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMTRweCAkY29uc3RhbnQ7XG5cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obGFyZ2Upe1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDogNjZweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuXG4gICAgfVxufVxuIiwiLnRlcm1zIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBtYXgtd2lkdGg6IDcyMHB4O1xuXG4gICAgdWwge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDFlbTtcbiAgICB9XG5cbn1cbiIsIi50ZXN0aW1vbmlhbCB7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG5cblxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtKSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgLy8gcGFkZGluZy1yaWdodDogMjAwcHg7IC8vIHJlbW92ZSBiZWNhdXNlIG9mIHRlc3RpbW9uaWFsIG9uIGh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9vLW5hc1xuICAgIH1cblxuICAgICYtLWJvcmRlciB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICAgICAgICBtYXJnaW4tdG9wOiAkY29uc3RhbnQ7XG5cbiAgICAgICAgPiAuc2VjdGlvbi0tdGVzdGltb25pYWwge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnRlc3RpbW9uaWFsX193cmFwcGVyIHtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcblxuICAgIC5tZWRpYS1vYmplY3RfX2JvZHkge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogJGNvbnN0YW50O1xuXG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtKSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLnRlc3RpbW9uaWFsX19waG90by0td3JhcHBlciB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkY29uc3RhbnQvMjtcblxuICAgICAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bSkge1xuICAgICAgICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSByZXNwb25kLXRvKGxhcmdlKSB7XG4gICAgICAgICAgICB3aWR0aDogMzAwcHg7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4udGVzdGltb25pYWwtLWNlbnRlciB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICAuZmxhZy1vYmplY3RfX2JvZHkge1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIH1cblxuXG4gICAgLnRlc3RpbW9uaWFsX19oZWFkaW5nIHtcbiAgICAgICAgQGluY2x1ZGUgYmV0YTtcbiAgICB9XG5cblxuICAgIC50ZXN0aW1vbmlhbF9fcGhvdG8ge1xuICAgICAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bSkge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6ICRjb25zdGFudDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnRlc3RpbW9uaWFsLWNvbHVtbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogJHNwYWNpbmc7XG5cbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bSkge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDM4LjM2NDUzJTtcbiAgICAgICAgbWFyZ2luOiAwIDUuMjIyNzM1JTtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbn1cblxuLnRlc3RpbW9uaWFsX19oZWFkaW5nIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuXG4udGVzdGltb25pYWxfX3RleHQge1xuICAgIG1hcmdpbi1ib3R0b206ICRzcGFjaW5nO1xufVxuXG4udGVzdGltb25pYWxfX3Bob3RvIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDY1cHg7XG5cbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bSkge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxufVxuXG4udGVzdGltb25pYWxfX2JvZHkge1xuICAgIEBpbmNsdWRlIGVwc2lsb247XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206ICgkY29uc3RhbnQgLyAyKTtcblxuICAgIC5zZWN0aW9uLS1oaWdobGlnaHQgJiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0pIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICgkY29uc3RhbnQgLyAyKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJ1xcMjAxQyc7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICdcXDIwMUQnO1xuICAgIH1cbn1cblxuLnRlc3RpbW9uaWFsX19hdXRob3Ige1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbn1cblxuLmNlbmEtaGVqdG1hbmFfX2ltZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbn1cblxuLy8gdGVzdGltb25pYWxzIG9uIGFib3V0LXVzIHBhZ2Vcbi8vIC50ZXN0aW1vbmlhbF9fd3JhcHBlciB7XG4vLyAgICAgbWFyZ2luLWxlZnQ6IDIuNDYzMDU0MTg3JSAhaW1wb3J0YW50OyAvLyBUT0RPXG4vLyAgICAgcGFkZGluZy1sZWZ0OiAzLjk0MDg4NjclO1xuLy8gfVxuXG5cbiIsIi50b3AtbWVudSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG5cbiAgICBsaSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogJGNvbnN0YW50LzQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRjb25zdGFudC80O1xuICAgIH1cbn1cblxuLnRvcC1tZW51X19saW5rIHtcbiAgICBAaW5jbHVkZSBtaWxsaTtcbiAgICBwYWRkaW5nOiAwcHggM3B4O1xuICAgIG1hcmdpbi1sZWZ0OiAtNnB4O1xufVxuIiwiLnVzZXIuYnJlYWRjcnVtYnMge1xuXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICBwYWRkaW5nOiAkc3BhY2luZy8yIDA7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG5cbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKGxhcmdlKXtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAuYnJlYWRjcnVtYnNfX2l0ZW0ge1xuXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBwYWRkaW5nOiAwICRzcGFjaW5nLzI7XG5cbiAgICAgICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgfVxuICAgIFxuICAgICAgICAuYnJlYWRjcnVtYnNfX2xpbmsge31cbiAgICAgICAgLmJyZWFkY3J1bWJzX19saW5rLS1hY3RpdmUge31cbiAgICB9XG5cbn0iLCIudXNwX19pdGVtIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdGZsb2F0OiBsZWZ0O1xuXHR3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2luZztcblxuXHRAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bSkge1xuXHRcdHdpZHRoOiAzMS40OTE3MSU7XG5cdFx0bWFyZ2luLWxlZnQ6IDIuNDYzMDU0MTg3JTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblx0XHQmOmZpcnN0LW9mLXR5cGUge1xuXHRcdFx0bWFyZ2luLWxlZnQ6IDA7XG5cdFx0fVxuXHR9XG59XG5cbi51c3BfX251bWJlciB7XG5cdEBpbmNsdWRlIGdhbW1hO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuXHRAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bSl7XG5cdFx0QGluY2x1ZGUgYmV0YTtcblx0fVxuXHRAaW5jbHVkZSByZXNwb25kLXRvKGxhcmdlKXtcblx0XHRAaW5jbHVkZSBhbHBoYTtcblx0fVxuXG5cblxuXG59XG5cbi51c3BfX25vdGUge1xuXHRAaW5jbHVkZSBiZXRhO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG5cbiAgICBAaW5jbHVkZSBlcHNpbG9uO1xuICAgIGxpbmUtaGVpZ2h0OiAxZW07XG5cblx0QGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0pe1xuXHRcdEBpbmNsdWRlIGJhc2U7XG5cdH1cbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuMS4wIEJST1dTRVIgSEVMUEVSU1xuU3BlY2lmaWMsIHNpbXBsZSAmIGFnbm9zdGljIGNsYXNzZXMgdXNlZnVsIGZvciBraWNrc3RhcnQgYW55IHByb2plY3QuXG5BZGQgY2xhc3MgdG8gaHRtbCB3aGVyZSBuZWVkZWQuXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8vIFZpc3VhbGx5IGhpZGRlbiwgYnV0IHN0aWxsIGFjY2Vzc2libGUgZm9yIHNjcmVlbiByZWFkZXJzLlxuLnNjcmVlbi1yZWFkZXItdGV4dCxcbi52aXNoaWQge1xuICAgIHdpZHRoOiAxcHg7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IC0xcHg7XG4gICAgYm9yZGVyOiAwO1xuICAgIGNsaXA6IHJlY3QoMCAwIDAgMCk7XG59XG5cbi51LXJlbGF0aXZlLWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi51LWdyb3VwIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbn1cblxuLnUtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi51LW1lZGl1bS11cCB7XG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtKSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbn1cblxuLmhpZGRlbi0tbW9iaWxlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtKXtcbiAgICAgICAgZGlzcGxheTogaW5oZXJpdDtcbiAgICB9XG59XG5cbi5oaWRkZW4tLXRhYmxldCB7XG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0pe1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cblxuLmhpZGUtLWRlc2t0b3Age1xuICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obGFyZ2Upe1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIFNoYW1lXG4gIC0gdGhpcyBpcyBwbGFjZSBmb3IgY29kZSB3ZSdyZSBub3QgdmVyeSBwcm91ZCBvZi4gVGhlIGNvZGUgd2hpY2ggZmVlbHMgZGlydHkgYnV0IHlvdSBkb24ndCBrbm93L2Rvbid0IGhhdmUgdGltZSB0byBkZWFsIHdpdGggaXQgYXQgdGhlIG1vbWVudC5cbiAgLSBpdCBzaG91bGQgYmUgcmVmYWN0b3JlZCBzb21lZGF5IGxhdGVyXG4gIC0gaXQgbGl2ZXMgaGVyZSBzbyBpdCB3b24ndCBnZXQgZm9yZ290dGVuXG4gIC0gaWYgdGhlcmUgaXMgbm90aGluZyBpbiB0aGlzIGZpbGUsIHdlbGwgZG9uZSBjaGFtcHMhIDopXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5iYXNrZXQge1xuXG5cbiAgICAucHJvZHVjdC1pdGVtX19tZXRhIHtcbiAgICAgICAgLy8gZmxhZ19fYm9keVxuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgLy8gcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAuZmxhZyB7XG4gICAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmZsYWdfX2ltYWdlIHtcbiAgICAgICAgICAgICAgICAvLyBtaW4td2lkdGg6IDQ4cHg7XG4gICAgICAgICAgICAgICAgLy8gaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgIC8vIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgLy8gcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG5cbiAgICAgICAgICAgICAgICA+IGltZyB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZmxhZ19fYm9keSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcblxuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBkZWx0YTtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnByb2R1Y3QtaXRlbV9fbWV0YT4uZmxhZyAuZmxhZ19fYm9keSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC5wcm9kdWN0LWl0ZW1fX2FjdGlvbiB7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgfVxuXG4gICAgLnByb2R1Y3QtaXRlbV9fcmVtb3ZlIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBjb2xvcjogJHdhcm5pbmc7XG4gICAgICAgIGZvbnQtc2l6ZTogMTUwJTtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgfVxufVxuXG5cbi5zZWN0aW9uLS1ob3Jpem9udGFsLm9uYXMtaGVhZGVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcblxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAkc3BhY2luZztcbiAgICB9XG5cbiAgICBoMSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxufVxuXG4uc2VjdGlvbi0tY3RhIC5oZWFkaW5nLS1iZXRhIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLXRvcDogJGNvbnN0YW50O1xuICAgIH1cbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBYLlggQERldlxuICBUaGlzIGZpbGUgaXMgZm9yIGRldmVsb3Bpbmcgb25seVxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uZGV2LW5hdiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogLTMwcHg7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IC0zMHB4O1xuICAgIHBhZGRpbmc6IDMwcHggMDtcbiAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XG4gICAgb3BhY2l0eTogMDtcblxuICAgIHdpZHRoOiA1MCU7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG5cbiAgICBsaTphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcvJztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxZW07XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB9XG4gICAgfVxufVxuIl0sIm1hcHBpbmdzIjoiO0FBRUE7O2tEQUVrRDtBQUVsRDs7a0RBRWtEO0FFUmxEOzs7aURBR2lEO0FBU2hELGVBQWU7QUNWaEIsVUFBVTtFQUNOLFdBQVcsRUFBRSxpQkFBa0I7RUFDL0IsR0FBRyxFRHVGSyw2Q0FBRztFQ3RGWCxHQUFHLEVEc0ZLLG1EQUFHLENDdEZtQywyQkFBTSxFRHNGNUMsNkNBQUcsQ0NyRndCLGtCQUFNLEVEcUZqQyw4Q0FB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 */
