@charset "UTF-8";
/*! modern-normalize v1.1.0 | MIT License | https://github.com/sindresorhus/modern-normalize */
/*
Document
========
*/
/**
Use a better box model (opinionated).
*/
@import url("https://fonts.googleapis.com/css2?family=Onest:wght@100..900&family=Prata&display=swap");
*,
::before,
::after {
  box-sizing: border-box;
}

/**
Use a more readable tab size (opinionated).
*/
html {
  -moz-tab-size: 4;
  tab-size: 4;
}

/**
1. Correct the line height in all browsers.
2. Prevent adjustments of font size after orientation changes in iOS.
*/
html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/*
Sections
========
*/
/**
Remove the margin in all browsers.
*/
body {
  margin: 0;
}

/**
Improve consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3)
*/
body {
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji";
}

/*
Grouping content
================
*/
/**
1. Add the correct height in Firefox.
2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)
*/
hr {
  height: 0; /* 1 */
  color: inherit; /* 2 */
}

/*
Text-level semantics
====================
*/
/**
Add the correct text decoration in Chrome, Edge, and Safari.
*/
abbr[title] {
  text-decoration: underline dotted;
}

/**
Add the correct font weight in Edge and Safari.
*/
b,
strong {
  font-weight: bolder;
}

/**
1. Improve consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3)
2. Correct the odd 'em' font sizing in all browsers.
*/
code,
kbd,
samp,
pre {
  font-family: ui-monospace, SFMono-Regular, Consolas, "Liberation Mono", Menlo, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
Add the correct font size in all browsers.
*/
small {
  font-size: 80%;
}

/**
Prevent 'sub' and 'sup' elements from affecting the line height in all browsers.
*/
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/*
Tabular data
============
*/
/**
1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)
2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)
*/
table {
  text-indent: 0; /* 1 */
  border-color: inherit; /* 2 */
}

/*
Forms
=====
*/
/**
1. Change the font styles in all browsers.
2. Remove the margin in Firefox and Safari.
*/
button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
Remove the inheritance of text transform in Edge and Firefox.
1. Remove the inheritance of text transform in Firefox.
*/
button,
select { /* 1 */
  text-transform: none;
}

/**
Correct the inability to style clickable types in iOS and Safari.
*/
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

/**
Remove the inner border and padding in Firefox.
*/
::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
Restore the focus styles unset by the previous rule.
*/
:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
Remove the additional ':invalid' styles in Firefox.
See: https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737
*/
:-moz-ui-invalid {
  box-shadow: none;
}

/**
Remove the padding so developers are not caught out when they zero out 'fieldset' elements in all browsers.
*/
legend {
  padding: 0;
}

/**
Add the correct vertical alignment in Chrome and Firefox.
*/
progress {
  vertical-align: baseline;
}

/**
Correct the cursor style of increment and decrement buttons in Safari.
*/
::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}

/**
1. Correct the odd appearance in Chrome and Safari.
2. Correct the outline style in Safari.
*/
[type=search] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
Remove the inner padding in Chrome and Safari on macOS.
*/
::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
1. Correct the inability to style clickable types in iOS and Safari.
2. Change font properties to 'inherit' in Safari.
*/
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/*
Interactive
===========
*/
/*
Add the correct display in Chrome and Safari.
*/
summary {
  display: list-item;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  color: #000;
  font-family: "Prata", sans-serif;
  font-weight: 400;
  margin-top: 0;
}

h1 {
  font-size: 64px;
  line-height: 73px;
}
@media (max-width: 992px) {
  h1 {
    font-size: 48px;
    line-height: 50px;
  }
}
@media (max-width: 576px) {
  h1 {
    font-size: 40px;
    line-height: 42px;
  }
}

h2 {
  font-size: 48px;
  line-height: 50px;
}
@media (max-width: 992px) {
  h2 {
    font-size: 40px;
    line-height: 42px;
  }
}
@media (max-width: 576px) {
  h2 {
    font-size: 32px;
    line-height: 33px;
  }
}

h3 {
  font-size: 40px;
  line-height: 42px;
}
@media (max-width: 992px) {
  h3 {
    font-size: 32px;
    line-height: 33px;
  }
}
@media (max-width: 576px) {
  h3 {
    font-size: 24px;
    line-height: 24px;
  }
}

h4 {
  font-size: 32px;
  line-height: 33px;
  letter-spacing: -0.64px;
}
@media (max-width: 992px) {
  h4 {
    font-size: 24px;
    line-height: 24px;
  }
}
@media (max-width: 576px) {
  h4 {
    font-size: 20px;
    line-height: 20px;
  }
}

h5 {
  font-size: 24px;
  line-height: 24px;
  letter-spacing: -0.48px;
}
@media (max-width: 992px) {
  h5 {
    font-size: 20px;
    line-height: 20px;
  }
}
@media (max-width: 576px) {
  h5 {
    font-size: 16px;
    line-height: 16px;
  }
}

p {
  color: #787878;
  line-height: 24px;
  margin-top: 0;
}

.caption {
  font-size: 14px;
  line-height: 20px;
  letter-spacing: 1.68px;
  text-transform: uppercase;
  margin-bottom: 15px;
}

* {
  box-sizing: border-box;
}
*:focus {
  outline: none;
}

body {
  font-family: "Onest", sans-serif;
  animation: fadeIn ease 1s;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
  position: relative;
  height: auto;
  overflow-x: hidden;
}
body.blog {
  padding-top: 0;
}

button {
  border: none;
  background-color: transparent;
  padding: 0;
  cursor: pointer;
}

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

@media (min-width: 1200px) {
  .container {
    max-width: 90%;
  }
}
@media (min-width: 1921px) {
  .container {
    max-width: 1900px;
  }
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.woocommerce form .form-row {
  padding: 13px 0;
  margin: 0;
}
.woocommerce form .form-row label {
  line-height: 17px;
}
.woocommerce form .form-row#billing_country_field, .woocommerce form .form-row#shipping_country_field {
  position: absolute;
  opacity: 0;
  height: 1px;
  width: 1px;
}
.woocommerce form .form-row#privacy_policy_field, .woocommerce form .form-row#vop_field {
  padding: 5px 0;
}
.woocommerce .shipping_address {
  margin-top: 30px;
}

.woocommerce-message {
  border-top-color: #000;
}
.woocommerce-message:before {
  color: #000;
}

.woocommerce-info .button,
.woocommerce-message .button {
  background-color: #000 !important;
  color: #fff !important;
  font-size: 14px !important;
  font-weight: 600 !important;
}

button[name=update_cart] {
  display: none !important;
}

.wc-proceed-to-checkout {
  padding: 0 !important;
}

.woocommerce-checkout #payment {
  background-color: transparent !important;
  border-radius: 0 !important;
}

.woocommerce-privacy-policy-text a {
  color: #000;
}

body.woocommerce-account .woocommerce {
  max-width: 90%;
  margin-left: auto;
  margin-right: auto;
  padding: 60px 15px;
}
body.woocommerce-account .woocommerce-MyAccount-navigation ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
body.woocommerce-account .woocommerce-MyAccount-navigation ul li {
  margin-bottom: 10px;
}
body.woocommerce-account .woocommerce-MyAccount-navigation ul li:last-child {
  margin-bottom: 0;
}
body.woocommerce-account .woocommerce-MyAccount-navigation ul a {
  display: block;
  color: #000;
  text-decoration: none;
}
body.woocommerce-account .woocommerce-MyAccount-content a {
  color: #000;
}
body.woocommerce-account .woocommerce table.my_account_orders .button,
body.woocommerce-account button[name=save_account_details] {
  background-color: #000 !important;
  color: #fff !important;
  font-size: 14px !important;
  font-weight: 600 !important;
}

.woocommerce-form-login .form-actions {
  display: flex;
  align-items: center;
  gap: 10px;
}
.woocommerce-form-login .woocommerce-LostPassword {
  margin-bottom: 0;
  margin-top: 20px;
}
.woocommerce-form-login .woocommerce-LostPassword a {
  color: #000;
}

.c-button {
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
}
.c-button.is-primary {
  color: #fff;
  background-color: #000;
  border: 1px solid #000;
  padding: 20px 48px;
  will-change: color, background-color;
  transition: color 0.5s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.c-button.is-primary:hover, .c-button.is-primary:focus {
  color: #000;
  background-color: #fff;
  border-color: #000;
}
.c-button.is-primary:hover svg circle,
.c-button.is-primary:hover svg path, .c-button.is-primary:focus svg circle,
.c-button.is-primary:focus svg path {
  transition: stroke 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.c-button.is-primary:hover svg circle,
.c-button.is-primary:hover svg path, .c-button.is-primary:focus svg circle,
.c-button.is-primary:focus svg path {
  stroke: #000;
}
.c-button.is-secondary {
  color: #000;
  background-color: transparent;
  border: 1px solid #B7B7B7;
  padding: 14px 13px;
  will-change: color, background-color, border-color;
  transition: color 0.5s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0.5s cubic-bezier(0.645, 0.045, 0.355, 1), border-color 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.c-button.is-secondary:hover, .c-button.is-secondary:focus {
  color: #fff;
  background-color: #000;
  border-color: #000;
}
.c-button.is-black {
  color: #000;
}
.c-button.is-black svg circle {
  stroke: #000;
}
.c-button.is-black svg path {
  stroke: #000;
}

.c-separator {
  text-align: center;
}
.c-separator img {
  display: block;
  width: 100%;
  margin: 0 auto;
}

.c-price {
  color: #000;
  font-size: 18px;
  font-weight: 600;
  line-height: 27px;
}

.c-checkbox {
  position: relative;
  padding: 5px 0;
}
.c-checkbox label {
  display: inline-flex !important;
  align-items: center;
  justify-content: flex-start;
  position: relative;
  cursor: pointer;
  margin-bottom: 0;
}
.c-checkbox label input[type=checkbox],
.c-checkbox label input[type=radio] {
  opacity: 0;
  position: absolute;
  left: 0;
  top: 0;
  width: 1px;
  height: 1px;
}
.c-checkbox label span.check {
  color: #fff;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 17px;
  height: 17px;
  line-height: 1;
  flex-shrink: 0;
  margin-right: 10px;
  border: 1.5px solid #B7B7B7;
  transition: border-color 0.5s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.c-checkbox label span.check svg {
  opacity: 0;
}
.c-checkbox label span.label {
  color: #787878;
  font-size: 16px;
  line-height: 24px;
  font-weight: 400;
  position: relative;
}
.c-checkbox label span.label a {
  color: #000;
  text-decoration: underline;
}
.c-checkbox label span.label a:hover {
  text-decoration: none;
}
.c-checkbox label input[type=checkbox]:checked + span.check,
.c-checkbox label input[type=radio]:checked + span.check {
  background-color: #000;
  border-color: #000;
}
.c-checkbox label input[type=checkbox]:checked + span.check svg,
.c-checkbox label input[type=radio]:checked + span.check svg {
  opacity: 1;
}

.woocommerce-form__label-for-checkbox {
  display: inline-flex !important;
  align-items: center;
  justify-content: flex-start;
  position: relative;
  cursor: pointer;
  margin-bottom: 0;
}
.woocommerce-form__label-for-checkbox input[type=checkbox],
.woocommerce-form__label-for-checkbox input[type=radio] {
  opacity: 0;
  position: absolute;
  left: 0;
  top: 0;
  width: 1px;
  height: 1px;
}
.woocommerce-form__label-for-checkbox span.check {
  color: #fff;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 17px;
  height: 17px;
  line-height: 1;
  flex-shrink: 0;
  margin-right: 10px;
  border: 1.5px solid #B7B7B7;
  transition: border-color 0.5s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.woocommerce-form__label-for-checkbox span.check svg {
  opacity: 0;
}
.woocommerce-form__label-for-checkbox span.label {
  color: #787878;
  font-size: 16px;
  line-height: 24px;
  font-weight: 400;
  position: relative;
}
.woocommerce-form__label-for-checkbox span.label a {
  color: #000;
  text-decoration: underline;
}
.woocommerce-form__label-for-checkbox span.label a:hover {
  text-decoration: none;
}
.woocommerce-form__label-for-checkbox input[type=checkbox]:checked + span.check,
.woocommerce-form__label-for-checkbox input[type=radio]:checked + span.check {
  background-color: #000;
  border-color: #000;
}
.woocommerce-form__label-for-checkbox input[type=checkbox]:checked + span.check svg,
.woocommerce-form__label-for-checkbox input[type=radio]:checked + span.check svg {
  opacity: 1;
}

.c-page-title {
  position: relative;
  padding-top: 90px;
  padding-bottom: 70px;
}
.c-page-title .pattern {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
.c-page-title h1 {
  margin: 0;
}

.c-pagination {
  margin-top: 50px;
}
.c-pagination ul {
  width: max-content;
  display: flex;
  justify-content: center;
  margin: 0 auto;
  padding: 0;
  list-style: none;
  border: 1px solid #E9E9E9;
}
.c-pagination ul li {
  border-right: 1px solid #E9E9E9;
}
.c-pagination ul li:last-child {
  border-right: none;
}
.c-pagination ul a,
.c-pagination ul span {
  color: #000;
  background-color: #fff;
  font-size: 14px;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  width: 35px;
  height: 46px;
  will-change: background-color;
  transition: background-color 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.c-pagination ul a.active,
.c-pagination ul span.active {
  background-color: #E9E9E9;
  pointer-events: none;
}
.c-pagination ul a:hover, .c-pagination ul a:focus,
.c-pagination ul span:hover,
.c-pagination ul span:focus {
  background-color: #E9E9E9;
}

.c-accordion {
  margin: 0;
  padding: 0;
  list-style: none;
}
.c-accordion li {
  padding: 20px 0;
  border-top: 1px solid #E9E9E9;
}
.c-accordion li .title {
  display: flex;
  align-items: center;
  gap: 4px;
  cursor: pointer;
}
.c-accordion li .title p {
  color: #000;
  font-size: 24px;
  line-height: 30px;
  letter-spacing: -0.48px;
  margin: 0;
}
.c-accordion li .title.active img {
  rotate: 180deg;
}
.c-accordion li .content {
  display: none;
  padding-top: 20px;
}
.c-accordion li .content p {
  color: #787878;
  font-size: 14px;
  line-height: normal;
}
.c-accordion li:last-child {
  border-bottom: 1px solid #E9E9E9;
}
@media (max-width: 576px) {
  .c-accordion li {
    padding: 15px 0;
  }
  .c-accordion li .title p {
    font-size: 18px;
    line-height: 24px;
  }
}

.c-post {
  display: block;
  text-decoration: none;
}
.c-post picture img {
  width: 100%;
  height: 310px;
  object-fit: cover;
  margin-bottom: 30px;
}
.c-post h4 {
  font-size: 24px;
  line-height: 25px;
  margin-bottom: 15px;
}
.c-post p {
  color: #787878;
  font-size: 14px;
  line-height: normal;
  margin-bottom: 15px;
}
@media (max-width: 992px) {
  .c-post picture img {
    height: 270px;
  }
}
@media (max-width: 576px) {
  .c-post picture img {
    height: auto;
  }
}

.c-modal {
  background-color: #FAFAFA;
  max-width: 620px;
  padding: 53px;
}
.c-modal .f-button.is-close-btn {
  color: #8D8D8D;
  background-color: transparent;
  width: 50px !important;
  height: 50px;
  top: 40px !important;
  right: 53px !important;
  border: 1px solid #DADADA;
  border-radius: 0;
}
.c-modal__title {
  color: #161616;
  font-size: 24px;
  line-height: 25px;
  letter-spacing: -0.48px;
  margin-bottom: 30px;
}
.c-modal form button[type=submit] {
  width: 100%;
  margin-top: 12px;
}
@media (max-width: 768px) {
  .c-modal {
    max-width: 90%;
    padding: 25px 20px;
  }
  .c-modal .f-button.is-close-btn {
    width: 35px !important;
    height: 35px;
    right: 10px !important;
    top: 10px !important;
  }
}

.c-number {
  background-color: #fff;
  width: 188px;
  display: flex;
  align-items: center;
  padding: 4px;
  border: 1px solid #E9E9E9;
}
.c-number button {
  background-color: #F3F4F6;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 47px;
  height: 47px;
  flex-shrink: 0;
  transition: background-color 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.c-number button svg path {
  will-change: stroke;
  transition: stroke 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.c-number button:hover, .c-number button:focus {
  background-color: #000;
}
.c-number button:hover svg path, .c-number button:focus svg path {
  stroke: #fff;
}
.c-number input {
  color: #8D8D8D;
  width: 80%;
  text-align: center;
  border: none;
  outline: none;
  height: auto;
}
.c-number input::-webkit-outer-spin-button,
.c-number input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.c-number input[type=number] {
  -moz-appearance: textfield;
}
@media (max-width: 576px) {
  .c-number {
    width: 150px;
  }
  .c-number button {
    width: 37px;
    height: 37px;
  }
}

.hamburger .menu {
  background-color: transparent;
  border: none;
  cursor: pointer;
  display: flex;
  padding: 0;
}
.hamburger .line {
  fill: none;
  stroke: #000;
  stroke-width: 6;
  transition: stroke-dasharray 600ms cubic-bezier(0.4, 0, 0.2, 1), stroke-dashoffset 600ms cubic-bezier(0.4, 0, 0.2, 1);
}
.hamburger .line1 {
  stroke-dasharray: 60 207;
  stroke-width: 6;
}
.hamburger .line2 {
  stroke-dasharray: 60 60;
  stroke-width: 6;
}
.hamburger .line3 {
  stroke-dasharray: 60 207;
  stroke-width: 6;
}
.hamburger .opened .line1 {
  stroke-dasharray: 90 207;
  stroke-dashoffset: -134;
  stroke-width: 6;
}
.hamburger .opened .line2 {
  stroke-dasharray: 1 60;
  stroke-dashoffset: -30;
  stroke-width: 6;
}
.hamburger .opened .line3 {
  stroke-dasharray: 90 207;
  stroke-dashoffset: -134;
  stroke-width: 6;
}

.c-banner {
  position: relative;
}
.c-banner .pattern {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
}
.c-banner .inner {
  background-color: #F7F2EE;
  padding-top: 80px;
  padding-bottom: 80px;
  padding-left: 120px;
  position: relative;
}
.c-banner .inner .row {
  align-items: center;
}
.c-banner .inner h2 {
  margin-bottom: 35px;
}
.c-banner .inner picture img {
  display: block;
  margin-left: auto;
}
.c-banner .inner p:not(.caption) {
  color: #787878;
  line-height: 24px;
  margin-bottom: 20px;
}
.c-banner.alt {
  padding-top: 100px;
}
.c-banner.alt .inner {
  padding-top: 140px;
  padding-bottom: 100px;
  padding-right: 120px;
  background-size: cover;
  background-repeat: no-repeat;
  position: relative;
}
.c-banner.alt .inner .pattern {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 100%;
  height: 100%;
  transform: translate(-50%, -50%);
  object-fit: cover;
}
.c-banner.alt .inner:after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: radial-gradient(85.78% 27.47% at 50% 50%, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0) 100%), linear-gradient(0deg, rgba(0, 0, 0, 0.38) 0%, rgba(0, 0, 0, 0.38) 100%);
}
.c-banner.alt .inner > * {
  position: relative;
  z-index: 2;
}
.c-banner.alt .inner .caption {
  color: #fff;
}
.c-banner.alt .inner h2 {
  color: #fff;
  font-size: 64px;
  line-height: 66px;
  letter-spacing: -1.28px;
}
.c-banner.alt .inner p:not(.caption) {
  color: #fff;
  font-size: 18px;
  line-height: 25px;
  margin: 0;
}
@media (max-width: 1535px) {
  .c-banner .inner {
    padding-top: 50px;
    padding-bottom: 60px;
    padding-left: 60px;
  }
}
@media (max-width: 992px) {
  .c-banner .pattern {
    display: none;
  }
  .c-banner .inner {
    padding: 40px 40px 50px;
  }
  .c-banner.alt .inner p:not(.caption) {
    margin-bottom: 20px;
  }
}
@media (max-width: 768px) {
  .c-banner .pattern {
    display: none;
  }
  .c-banner.alt {
    padding-top: 60px;
  }
  .c-banner.alt .inner {
    padding: 60px 40px;
  }
  .c-banner.alt .inner h2 {
    font-size: 36px;
    line-height: 40px;
    letter-spacing: -0.72px;
  }
}
@media (max-width: 576px) {
  .c-banner .inner {
    padding: 40px 20px;
  }
  .c-banner.alt .inner {
    padding: 40px 20px;
  }
  .c-banner.alt .inner h2 {
    font-size: 24px;
    line-height: 30px;
    letter-spacing: -0.48px;
  }
}

section {
  padding: 60px 0;
}
section:has(.pattern) .container {
  position: relative;
  z-index: 2;
}

form br {
  display: none;
}
form fieldset {
  border: none;
  padding: 0;
  margin: 0;
  position: relative;
}
form fieldset legend {
  opacity: 0;
  position: absolute;
  left: 0;
  top: 0;
  width: 1px;
  height: 1px;
}
form .input-control {
  padding: 10px 0;
  position: relative;
  z-index: 2;
}
form .input-control p {
  margin: 0;
  line-height: 1;
}
form label {
  display: block;
  font-size: 14px;
  color: #000;
  line-height: normal;
  margin-bottom: 10px;
}
form input,
form select,
form textarea {
  color: #000;
  background-color: #fff;
  width: 100%;
  height: 63px;
  padding-left: 21px;
  border: 1px solid #B7B7B7;
  backdrop-filter: blur(12px);
  will-change: border-color;
  transition: border-color 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
}
form input::placeholder,
form select::placeholder,
form textarea::placeholder {
  color: #656565;
}
form input:hover, form input:focus,
form select:hover,
form select:focus,
form textarea:hover,
form textarea:focus {
  border-color: #000;
}
form input[type=checkbox] {
  height: auto;
}
form select {
  appearance: none;
  background: url("/app/themes/vizion/dist/img/select-arrow.svg") calc(100% - 20px) center no-repeat #fff;
}
form textarea {
  min-height: 136px;
  padding-top: 23px;
}
form .cta p {
  margin: 0;
  line-height: 1;
}

.main-header {
  padding: 40px 0;
  border-bottom: 1px solid #E9E9E9;
}
.main-header .inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.main-header nav.shop-inactive {
  margin-left: auto;
}
.main-header ul {
  display: flex;
  align-items: center;
  gap: 48px;
  padding: 0;
  margin: 0;
  list-style: none;
}
.main-header ul a {
  color: #000;
  font-size: 14px;
  font-weight: 300;
  text-transform: uppercase;
  text-decoration: none;
  position: relative;
}
.main-header ul a:after {
  background-color: #000;
  content: "";
  position: absolute;
  left: 50%;
  bottom: -5px;
  transform: translateX(-50%);
  width: 0;
  height: 2px;
  will-change: width;
  transition: width 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.main-header ul a:hover:after, .main-header ul a:focus:after, .main-header ul a.active:after {
  width: 100%;
}
.main-header .actions {
  display: flex;
  align-items: center;
  gap: 27px;
}
.main-header .actions a:has(.count) {
  position: relative;
}
.main-header .actions a:has(.count) .count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  background-image: url("../img/count-polygon.svg");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
  color: #fff;
  font-size: 10px;
  line-height: 1;
  position: absolute;
  right: -15px;
  top: -15px;
}
@media (max-width: 1200px) {
  .main-header ul {
    gap: 20px;
  }
}
@media (max-width: 992px) {
  .main-header {
    padding: 20px 0;
    position: relative;
  }
  .main-header nav {
    display: none;
    background-color: #fff;
    position: absolute;
    left: 0;
    top: 100%;
    width: 100%;
    z-index: 100;
    padding: 20px 0;
    border-top: 1px solid #E9E9E9;
    border-bottom: 1px solid #E9E9E9;
  }
  .main-header ul {
    flex-direction: column;
    align-items: center;
    justify-content: center;
  }
}
@media (max-width: 576px) {
  .main-header .logo img {
    max-width: 140px;
  }
  .main-header .actions {
    gap: 10px;
  }
}

.hero {
  padding: 0;
  position: relative;
  height: 670px;
}
.hero:after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(270deg, rgba(0, 0, 0, 0) 25.78%, rgba(0, 0, 0, 0.4) 76.25%);
}
.hero .badge {
  position: absolute;
  left: 50%;
  bottom: -41px;
  transform: translateX(-50%);
  z-index: 2;
}
.hero .cover {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.hero .inner {
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  z-index: 2;
}
.hero .inner h1 {
  color: #fff;
  margin-bottom: 8px;
}
.hero .inner p {
  color: #fff;
  font-size: 18px;
  line-height: 25px;
  margin-bottom: 0;
}
.hero .buttons {
  display: flex;
  align-items: center;
  gap: 24px;
  margin-top: 55px;
}
@media (max-width: 1535px) {
  .hero {
    height: 590px;
  }
}
@media (max-width: 992px) {
  .hero {
    height: auto;
  }
  .hero .cover {
    height: 500px;
  }
}
@media (max-width: 576px) {
  .hero .badge {
    max-width: 40px;
    bottom: -21px;
  }
  .hero .cover {
    height: 350px;
  }
}

.image-text {
  background-color: #FAFAFA;
  display: flex;
  align-items: center;
  padding: 0;
  position: relative;
}
.image-text .row {
  align-items: center;
}
.image-text .pattern {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
}
.image-text > * {
  position: relative;
  z-index: 2;
}
.image-text .image,
.image-text .text {
  flex-basis: 50%;
}
.image-text picture img {
  width: 100%;
  object-fit: cover;
}
.image-text .text {
  padding-left: 5%;
  padding-top: 50px;
  padding-bottom: 50px;
}
.image-text h2 {
  margin-bottom: 30px;
}
.image-text p:not(.caption) {
  color: #787878;
  line-height: 24px;
  margin-bottom: 30px;
}
.image-text h1 {
  margin-bottom: 25px;
}
.image-text:has(.image) {
  padding-top: 100px;
}
.image-text:not(:has(.image)) {
  background-color: #fff;
  padding-top: 75px;
  padding-bottom: 80px;
}
.image-text .signature {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 12px;
  margin-top: 40px;
}
.image-text .signature .caption {
  margin-bottom: 12px;
}
.image-text:has(.signature) {
  padding-bottom: 80px;
}
.image-text.contact {
  background-color: #fff;
  padding-top: 0;
  padding-bottom: 0;
}
.image-text.contact .image {
  position: relative;
}
.image-text.contact .image:after {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  width: 280px;
  height: 100%;
  background: linear-gradient(90deg, #FFF 35.43%, rgba(255, 255, 255, 0) 100%);
  rotate: 180deg;
}
.image-text.contact .item {
  margin-bottom: 30px;
}
.image-text.contact .item:first-child {
  margin-bottom: 60px;
}
.image-text.contact .item h2 {
  padding-bottom: 15px;
  margin-bottom: 30px;
  border-bottom: 1px solid #E9E9E9;
}
.image-text.contact .item .inner {
  display: flex;
  justify-content: space-between;
  gap: 10px;
}
.image-text.contact .item .inner p {
  color: #000;
  font-size: 14px;
  font-weight: 300;
  line-height: 15px;
  letter-spacing: 0.56px;
  text-transform: uppercase;
  margin-bottom: 8px;
}
.image-text.contact .item .inner p:has(a) {
  text-transform: none;
  margin-bottom: 0;
  letter-spacing: initial;
  line-height: 1;
}
.image-text.contact .item .inner p:has(a) br {
  display: none;
}
.image-text.contact .item .inner a {
  display: block;
  color: #787878;
  font-size: 14px;
  line-height: normal;
  text-decoration: none;
  margin-bottom: 3px;
  will-change: color;
  transition: color 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.image-text.contact .item .inner a:hover, .image-text.contact .item .inner a:focus {
  color: #000;
}
.image-text.contact .item .inner address {
  color: #787878;
  font-size: 14px;
  font-style: normal;
  line-height: normal;
}
@media (max-width: 992px) {
  .image-text:not(.contact):has(.image):has(.text) {
    padding-top: 50px;
    flex-direction: column-reverse;
  }
  .image-text:not(.contact):has(.image):has(.text) .image,
  .image-text:not(.contact):has(.image):has(.text) .text {
    width: 100%;
    flex-basis: 100%;
  }
  .image-text:not(.contact):has(.image):has(.text) .image {
    margin-top: 30px;
  }
  .image-text:not(:has(.image)) {
    padding-top: 50px;
    padding-bottom: 50px;
  }
  .image-text .column:has(img):has(.c-button) img {
    margin-bottom: 30px;
  }
  .image-text.contact {
    flex-direction: column;
  }
  .image-text.contact .image {
    width: 100%;
    flex-basis: 100%;
  }
  .image-text.contact .image:after {
    display: none;
  }
  .image-text.contact .text {
    width: 100%;
    flex-basis: 100%;
    padding-left: 15px;
    padding-right: 15px;
  }
}
@media (max-width: 440px) {
  .image-text.contact .item .inner {
    flex-direction: column;
  }
}

.articles {
  position: relative;
  padding-top: 140px;
}
.articles .pattern {
  position: absolute;
  left: 0;
  top: 0;
}
.articles .row {
  margin-left: -39px;
  margin-right: -39px;
}
.articles .row .column {
  padding: 0 39px;
}
.articles .item {
  display: block;
  text-decoration: none;
}
.articles .item figure {
  margin: 0;
  position: relative;
}
.articles .item figure img {
  width: 100%;
  object-fit: cover;
}
.articles .item figure .meta {
  background-color: #fff;
  position: absolute;
  left: 13px;
  bottom: 13px;
  padding: 24px 34px;
}
.articles .item figure .meta span {
  display: block;
  color: #000;
  font-size: 12px;
  line-height: 20px;
  letter-spacing: 1.68px;
  text-transform: uppercase;
  margin-bottom: 14px;
}
.articles .item figure .meta h3 {
  margin: 0;
}
@media (max-width: 992px) {
  .articles .item figure .meta {
    padding: 24px 20px;
  }
}
.articles .inner {
  padding: 35px 15px 0;
}
.articles .inner p {
  font-size: 20px;
  color: #787878;
  line-height: 28px;
  margin-bottom: 20px;
}
.articles .inner p strong {
  color: #161616;
}
.articles .cta {
  margin-top: 40px;
  text-align: center;
}
@media (max-width: 1535px) {
  .articles .inner p {
    font-size: 18px;
    line-height: 26px;
  }
}
@media (max-width: 992px) {
  .articles {
    padding-top: 70px;
  }
  .articles .pattern {
    display: none;
  }
  .articles .row {
    margin-left: -15px;
    margin-right: -15px;
  }
  .articles .row .column {
    padding: 0 15px;
  }
  .articles .inner p {
    font-size: 16px;
    line-height: 24px;
  }
}
@media (max-width: 768px) {
  .articles .item {
    margin-bottom: 30px;
  }
  .articles .cta {
    margin-top: 10px;
  }
}

.shop-products .row {
  margin-left: -3px;
  margin-right: -3px;
}
.shop-products .row .column {
  padding-left: 3px;
  padding-right: 3px;
  margin-bottom: 35px;
}
.shop-products .item {
  display: block;
  text-decoration: none;
}
.shop-products .item picture {
  display: block;
  margin: 0 0 30px 0;
  position: relative;
}
.shop-products .item picture img {
  width: 100%;
  height: 485px;
  object-fit: contain;
}
.shop-products .item picture:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.03);
}
.shop-products .item h4 {
  font-size: 24px;
  line-height: 25px;
  margin-bottom: 15px;
}
.shop-products .item p {
  color: #787878;
  font-size: 14px;
  line-height: normal;
  margin-bottom: 15px;
}
.shop-products h2 {
  text-align: center;
}
.shop-products h1 {
  margin-bottom: 70px;
}
.shop-products .cta {
  display: flex;
  align-items: center;
  gap: 18px;
}
.shop-products .cta .c-price {
  position: relative;
  padding-left: 18px;
}
.shop-products .cta .c-price:before {
  content: "";
  background-color: #E1E1E1;
  position: absolute;
  height: 17px;
  width: 1px;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
.shop-products .top-bar {
  margin-bottom: 15px;
}
.shop-products .top-bar p {
  color: #8D8D8D;
  font-size: 14px;
  font-weight: 300;
  line-height: 15px;
  letter-spacing: 0.56px;
  text-transform: uppercase;
  margin: 0;
}
.shop-products .cta {
  text-align: center;
}
.shop-products .cta a {
  margin: auto;
}
@media (max-width: 1535px) {
  .shop-products .item picture img {
    height: 300px;
  }
}

.post-carousel {
  padding-top: 50px;
  position: relative;
}
.post-carousel:has(.pattern) {
  padding-top: 105px;
}
.post-carousel .pattern {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
}
.post-carousel h2 {
  margin-bottom: 25px;
}
.post-carousel .swiper-wrapper {
  height: auto;
}
.post-carousel .swiper-slide {
  height: auto;
}
.post-carousel nav {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 55px;
}
.post-carousel .swiper-pagination {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  width: auto;
  position: static;
  transform: none;
}
.post-carousel .swiper-pagination .swiper-pagination-bullet {
  background-color: #DADADA;
  width: 8px;
  height: 8px;
  cursor: pointer;
  margin: 0;
  will-change: background-color;
  transition: background-color 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.post-carousel .swiper-pagination .swiper-pagination-bullet-active {
  background-color: #000;
}
.post-carousel .swiper-button-prev,
.post-carousel .swiper-button-next {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: static;
  transform: none;
  width: 65px;
  height: 65px;
  border: 1px solid #B7B7B7;
  will-change: border-color;
  transition: border-color 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.post-carousel .swiper-button-prev svg,
.post-carousel .swiper-button-next svg {
  width: auto;
  height: auto;
}
.post-carousel .swiper-button-prev svg path,
.post-carousel .swiper-button-next svg path {
  stroke: #B7B7B7;
  will-change: stroke;
  transition: stroke 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.post-carousel .swiper-button-prev:after,
.post-carousel .swiper-button-next:after {
  display: none;
}
.post-carousel .swiper-button-prev:hover, .post-carousel .swiper-button-prev:focus,
.post-carousel .swiper-button-next:hover,
.post-carousel .swiper-button-next:focus {
  border-color: #000;
}
.post-carousel .swiper-button-prev:hover svg path, .post-carousel .swiper-button-prev:focus svg path,
.post-carousel .swiper-button-next:hover svg path,
.post-carousel .swiper-button-next:focus svg path {
  stroke: #000;
}
.post-carousel .arrows {
  display: flex;
  align-items: center;
  gap: 12px;
}
@media (max-width: 768px) {
  .post-carousel:has(.pattern) {
    padding-top: 50px;
  }
  .post-carousel:has(.pattern) .pattern {
    display: none;
  }
  .post-carousel .swiper-button-prev,
  .post-carousel .swiper-button-next {
    width: 50px;
    height: 50px;
  }
  .post-carousel .swiper-pagination {
    gap: 7px;
  }
}

.events {
  background-color: #FAFAFA;
  padding-top: 60px;
  padding-bottom: 60px;
}
.events h2 {
  text-align: center;
}
.events .row {
  margin-left: -13px;
  margin-right: -13px;
}
.events .row .column {
  padding-left: 13px;
  padding-right: 13px;
}
.events .item {
  display: block;
  margin-bottom: 25px;
  text-decoration: none;
}
.events .item figure {
  margin: 0 0 20px 0;
  position: relative;
}
.events .item figure:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.35);
  opacity: 0;
  z-index: 2;
  transition: opacity 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.events .item figure img {
  width: 100%;
  height: 300px;
  object-fit: cover;
}
.events .item figure time {
  color: #000;
  background-color: #fff;
  font-size: 12px;
  line-height: 20px;
  text-transform: uppercase;
  position: absolute;
  left: 14px;
  bottom: 12px;
  padding: 5px 7px;
  letter-spacing: 1.68px;
  z-index: 2;
}
.events .item h5 {
  font-size: 18px;
  line-height: 24px;
  letter-spacing: -0.36px;
  margin-bottom: 0;
}
.events .item:hover figure:before, .events .item:focus figure:before {
  opacity: 1;
}
.events .item:has(p) h5 {
  margin-bottom: 16px;
}
.events .item:has(p) p {
  color: #787878;
  font-size: 14px;
  line-height: normal;
  margin-bottom: 16px;
}
.events .cta {
  text-align: center;
  margin-top: 20px;
}
@media (max-width: 1535px) {
  .events .item figure img {
    height: 250px;
  }
}

.newsletter {
  background-color: #FAFAFA;
}
.newsletter h3 {
  margin-bottom: 0;
}
.newsletter form .input-control {
  display: flex;
  align-items: stretch;
  gap: 10px;
}
.newsletter form .input-control input {
  background-color: transparent;
}
@media (max-width: 992px) {
  .newsletter {
    padding: 35px 0;
  }
}
@media (max-width: 576px) {
  .newsletter form .input-control {
    flex-direction: column;
  }
}

.instagram {
  padding-bottom: 0;
}
.instagram h2 {
  text-align: center;
  margin-bottom: 35px;
}
.instagram h2 a {
  color: inherit;
  text-decoration: none;
}
.instagram .items {
  display: flex;
  gap: 5px;
  padding-left: 5px;
  padding-right: 5px;
}
.instagram .items a {
  flex-basis: 20%;
}
.instagram .items a img {
  width: 100%;
  height: 300px;
  object-fit: cover;
}
@media (max-width: 1535px) {
  .instagram .items a img {
    height: 240px;
  }
}
@media (max-width: 992px) {
  .instagram .items a img {
    height: 180px;
  }
}
@media (max-width: 768px) {
  .instagram .items a img {
    height: 120px;
  }
}
@media (max-width: 576px) {
  .instagram .items a:nth-last-child(-n+2) {
    display: none;
  }
  .instagram .items a {
    flex-basis: 33.3333333333%;
  }
  .instagram .items a img {
    height: 120px;
  }
}

.words {
  background-color: #FAFAFA;
  padding-top: 60px;
  padding-bottom: 30px;
  border-top: 1px solid #E9E9E9;
  border-bottom: 1px solid #E9E9E9;
}
.words .inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 20px;
}
.words .inner a {
  color: #000;
  font-weight: 300;
  flex-basis: calc(33.3333333333% - 15px);
  text-decoration: none;
}
@media (max-width: 576px) {
  .words {
    padding-top: 30px;
  }
  .words .inner {
    gap: 10px;
  }
  .words .inner a {
    font-size: 14px;
  }
}
@media (max-width: 440px) {
  .words .inner a {
    flex-basis: calc(50% - 10px);
  }
}

.article-listing {
  padding-top: 70px;
  padding-bottom: 50px;
}
.article-listing .row {
  margin-left: -3px;
  margin-right: -3px;
}
.article-listing .row .column {
  padding-left: 3px;
  padding-right: 3px;
  margin-bottom: 6px;
}
.article-listing a figure {
  margin: 0;
  height: 400px;
  position: relative;
}
.article-listing a figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.article-listing a .meta {
  background-color: #fff;
  position: absolute;
  left: 13px;
  bottom: 13px;
  padding: 24px 34px;
  left: 50%;
  transform: translateX(-50%);
  bottom: 1px;
  transition: opacity 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.article-listing a .meta span {
  display: block;
  color: #000;
  font-size: 12px;
  line-height: 20px;
  letter-spacing: 1.68px;
  text-transform: uppercase;
  margin-bottom: 14px;
}
.article-listing a .meta h3 {
  margin: 0;
}
@media (max-width: 992px) {
  .article-listing a .meta {
    padding: 24px 20px;
  }
}
.article-listing a .hover {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  background-color: #fff;
  position: absolute;
  left: 50%;
  top: 50%;
  width: calc(100% - 12px);
  height: calc(100% - 12px);
  transform: translate(-50%, -50%);
  opacity: 0;
  will-change: opacity;
  transition: opacity 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.article-listing a .hover span {
  color: #000;
  display: block;
  font-size: 12px;
  line-height: 20px;
  letter-spacing: 1.68px;
  text-transform: uppercase;
  margin-bottom: 10px;
}
.article-listing a .hover h3 {
  margin-bottom: 10px;
}
.article-listing a:hover .meta, .article-listing a:focus .meta {
  opacity: 0;
}
.article-listing a:hover .hover, .article-listing a:focus .hover {
  opacity: 1;
}
@media (max-width: 1535px) {
  .article-listing a figure {
    height: 300px;
  }
}
@media (max-width: 576px) {
  .article-listing a figure {
    height: auto;
  }
  .article-listing a figure img {
    height: auto;
  }
}

.text .row {
  margin-left: -45px;
  margin-right: -45px;
}
.text .row .column {
  padding-left: 45px;
  padding-right: 45px;
}
.text .caption {
  margin-bottom: 15px;
}
.text h2 {
  margin-bottom: 25px;
}
.text p:not(.caption) {
  color: #787878;
  font-size: 20px;
  line-height: 28px;
}
@media (max-width: 1535px) {
  .text p:not(.caption) {
    font-size: 16px;
    line-height: 24px;
  }
}
@media (max-width: 992px) {
  .text {
    padding: 30px 0;
  }
  .text .row {
    margin-left: -15px;
    margin-right: -15px;
  }
  .text .row .column {
    padding-left: 15px;
    padding-right: 15px;
  }
}

.text-alt {
  padding-top: 100px;
  padding-bottom: 35px;
}
.text-alt h3 {
  margin-bottom: 28px;
}
@media (max-width: 992px) {
  .text-alt {
    padding-top: 50px;
    padding-bottom: 50px;
  }
}

.posts h4 {
  margin-bottom: 27px;
}
.posts .row {
  margin-left: -28px;
  margin-right: -28px;
}
.posts .row .column {
  padding-left: 28px;
  padding-right: 28px;
}
.posts article picture img {
  width: 100%;
  height: 200px;
  object-fit: cover;
  margin-bottom: 25px;
}
.posts article p {
  margin-bottom: 6px;
}
.posts article p strong {
  color: #161616;
}
@media (max-width: 992px) {
  .posts article {
    margin-bottom: 30px;
  }
  .posts article picture img {
    height: auto;
  }
}

.product-detail .gallery .swiper .swiper-wrapper {
  height: auto;
}
.product-detail .gallery .swiper .swiper-wrapper .swiper-slide {
  height: auto;
  position: relative;
}
.product-detail .gallery .swiper .swiper-wrapper .swiper-slide:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.03);
}
.product-detail .gallery__main {
  width: 100%;
  margin-bottom: 6px;
}
.product-detail .gallery__main .swiper-slide {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.product-detail .gallery__main .swiper-slide picture img {
  width: 100%;
  height: 450px;
  object-fit: contain;
}
.product-detail .gallery__thumbs .swiper-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  position: static;
  transform: none;
  margin-top: 30px;
}
.product-detail .gallery__thumbs .swiper-pagination .swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  margin: 0;
}
.product-detail .gallery__thumbs .swiper-pagination .swiper-pagination-bullet-active {
  background-color: #000;
}
.product-detail .caption {
  margin-bottom: 15px;
}
.product-detail h1 {
  font-size: 40px;
  line-height: 41px;
  margin-bottom: 25px;
  letter-spacing: -0.8px;
}
.product-detail .price {
  display: block;
  color: #000;
  font-size: 18px;
  font-weight: 600;
  line-height: 27px;
  margin-bottom: 18px;
}
.product-detail .actions {
  display: flex;
  gap: 10px;
  margin-bottom: 55px;
}
.product-detail .author {
  display: flex;
  align-items: center;
  gap: 32px;
  margin-bottom: 30px;
}
.product-detail .author picture {
  flex-shrink: 0;
}
.product-detail .author img {
  width: 114px;
  height: 114px;
}
.product-detail .author h3 {
  font-size: 24px;
  line-height: 30px;
  letter-spacing: -0.48px;
  margin-bottom: 5px;
}
.product-detail .author p {
  color: #787878;
  font-size: 14px;
  font-weight: 300;
  line-height: 15px;
  letter-spacing: 0.56px;
  text-transform: uppercase;
}
.product-detail .description {
  margin-bottom: 20px;
}
.product-detail .description p {
  color: #787878;
  font-size: 14px;
  line-height: normal;
}
.product-detail .description .more-content {
  display: none;
}
.product-detail .description .toggle-description {
  display: flex;
  align-items: center;
  gap: 2px;
  color: #000;
  font-size: 14px;
  font-weight: 300;
  letter-spacing: 0.56px;
  line-height: 15px;
  text-decoration: underline;
  text-transform: uppercase;
}
.product-detail .description .toggle-description .less {
  display: none;
}
.product-detail .description .toggle-description.active .more {
  display: none;
}
.product-detail .description .toggle-description.active .less {
  display: inline;
}
.product-detail .description .toggle-description.active img {
  rotate: 180deg;
}
@media (max-width: 992px) {
  .product-detail .gallery {
    margin-bottom: 30px;
  }
}
@media (max-width: 576px) {
  .product-detail {
    padding-top: 40px;
  }
  .product-detail h1 {
    font-size: 30px;
    line-height: 31px;
  }
  .product-detail .gallery__main .swiper-slide picture img {
    height: 300px;
  }
}

.images {
  padding-top: 0;
  padding-bottom: 50px;
}
.images .row {
  margin-left: -45px;
  margin-right: -45px;
}
.images .row .column {
  padding-left: 45px;
  padding-right: 45px;
}
.images article {
  margin-bottom: 70px;
}
.images article img {
  width: 100%;
  object-fit: cover;
}
.images article p {
  color: #787878;
  font-size: 14px;
  line-height: normal;
  margin-top: 12px;
  margin-bottom: 0;
}

.text-block h1,
.text-block h2,
.text-block h3,
.text-block h4,
.text-block h5 {
  margin-bottom: 15px;
}
.text-block ol {
  padding: 0;
  margin: 0;
  counter-reset: section;
  list-style-type: none;
}
.text-block ol li:not(ul li),
.text-block ol li:not(ol li) {
  color: #161616;
  margin-bottom: 30px;
}
.text-block ol li:not(ul li):last-child,
.text-block ol li:not(ol li):last-child {
  margin-bottom: 0;
}
.text-block ol li:not(ul li):before,
.text-block ol li:not(ol li):before {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #161616;
  background-color: #E9E9E9;
  width: 41px;
  height: 41px;
  counter-increment: section;
  content: counters(section, ".") ". ";
  margin-right: 14px;
}
.text-block ol li {
  font-size: 18px;
}
.text-block ol li ol {
  list-style: decimal;
  padding-left: 40px;
  padding-top: 20px;
}
.text-block ol li ol li {
  margin-bottom: 14px;
  line-height: 24px;
}
.text-block ol li ol li:last-child {
  margin-bottom: 0;
}
.text-block ol li ol li:before {
  display: none;
}
.text-block ol li ul {
  padding-left: 50px;
  padding-top: 14px;
  list-style: none;
  text-indent: -22px;
}
.text-block ol li ul li {
  margin-bottom: 14px;
  line-height: 24px;
}
.text-block ol li ul li:last-child {
  margin-bottom: 0;
}
.text-block ol li ul li:before {
  content: "•";
  color: #000;
  font-size: 20px;
  top: 0;
  margin-right: 15px;
}
@media (max-width: 576px) {
  .text-block ol li {
    font-size: 16px;
  }
}

.order-form {
  padding-top: 80px;
}
.order-form .product figure {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 410px;
  margin: 0 0 32px 0;
  position: relative;
}
.order-form .product figure:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.03);
}
.order-form .product figure img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.order-form .product h4 {
  margin-bottom: 16px;
}
.order-form .product p {
  color: #787878;
  font-size: 14px;
  line-height: normal;
  margin: 0;
}
.order-form .form-wrapper {
  background-color: #FAFAFA;
  padding: 54px;
}
.order-form .form-wrapper h4 {
  margin-bottom: 12px;
}
.order-form .form-wrapper p {
  color: #787878;
  font-size: 14px;
  line-height: normal;
  margin-bottom: 10px;
}
.order-form .form-wrapper button[type=submit] {
  width: 100%;
  margin-top: 12px;
}
.order-form .not-found {
  text-align: center;
}
@media (max-width: 992px) {
  .order-form .product {
    margin-bottom: 30px;
  }
  .order-form .form-wrapper {
    padding: 30px;
  }
}
@media (max-width: 576px) {
  .order-form {
    padding-top: 40px;
  }
  .order-form .form-wrapper {
    padding: 20px;
  }
}

.blog {
  position: relative;
  padding-top: 92px;
}
.blog .pattern {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
}
.blog h1 {
  margin-bottom: 60px;
}
.blog .c-post {
  margin-bottom: 60px;
}
.blog .c-pagination {
  margin-top: 30px;
}
.blog-detail time {
  color: #000;
  font-size: 14px;
  font-weight: 300;
  line-height: 15px;
  display: block;
  text-align: center;
  letter-spacing: 0.56px;
  text-transform: uppercase;
  margin-bottom: 20px;
}
.blog-detail h1 {
  text-align: center;
  margin-bottom: 35px;
}
.blog-detail img.featured {
  width: 100%;
  object-fit: cover;
  margin-bottom: 60px;
}
@media (max-width: 576px) {
  .blog {
    padding-top: 50px;
  }
}

.benefits {
  background-color: #FAFAFA;
  padding-top: 120px;
  padding-bottom: 100px;
}
.benefits h3 {
  margin-bottom: 60px;
}
.benefits .row {
  margin-left: -28px;
  margin-right: -28px;
}
.benefits .row .column {
  padding-left: 28px;
  padding-right: 28px;
}
.benefits article {
  display: flex;
  align-items: flex-start;
  gap: 17px;
}
.benefits article picture {
  flex-shrink: 0;
}
.benefits article p {
  color: #787878;
  margin-bottom: 6px;
  line-height: 24px;
}
.benefits article p strong {
  color: #161616;
}
@media (max-width: 992px) {
  .benefits {
    padding-top: 50px;
    padding-bottom: 30px;
  }
  .benefits .column {
    margin-bottom: 20px;
  }
}

.v-cart {
  position: relative;
  padding-top: 80px;
}
.v-cart .pattern {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
}
.v-cart h1 {
  font-size: 40px;
  line-height: 42px;
  text-align: center;
  margin-bottom: 25px;
  letter-spacing: -0.8px;
}
.v-cart h4 {
  color: #000;
  font-size: 24px;
  line-height: 25px;
  letter-spacing: -0.48px;
  margin-bottom: 15px;
}
.v-cart__nav ul {
  max-width: 800px;
  width: 100%;
  display: flex;
  justify-content: space-between;
  padding: 0;
  margin: 0 auto;
  list-style: none;
}
.v-cart__nav ul li {
  text-align: center;
}
.v-cart__nav ul a {
  text-decoration: none;
}
.v-cart__nav ul .number {
  color: #656565;
  background-color: #E9E9E9;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: normal;
  width: 44px;
  height: 44px;
  margin-bottom: 10px;
  position: relative;
}
.v-cart__nav ul .number::after {
  content: "";
  background: #E9E9E9;
  position: absolute;
  top: 50%;
  left: 100%;
  width: 330px;
  height: 1px;
}
.v-cart__nav ul span {
  display: block;
  color: #A2A2A2;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
}
.v-cart__nav ul li.active .number {
  color: #fff;
  background-color: #000;
}
.v-cart__nav ul li.active span {
  color: #000;
}
.v-cart__nav ul li:last-child .number:after {
  display: none;
}
.v-cart__products {
  margin-top: 20px;
}
.v-cart__products ul {
  padding-left: 0;
  margin: 0;
  list-style: none;
}
.v-cart__products ul li {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 30px 0;
  border-bottom: 1px solid #E9E9E9;
}
.v-cart__products ul li:last-child {
  border-bottom: none;
}
.v-cart__products ul .left,
.v-cart__products ul .right {
  display: flex;
  align-items: center;
}
.v-cart__products ul .thumb {
  background: rgba(243, 243, 243, 0.6);
  width: 164px;
  height: 163px;
  padding: 24px;
  margin-right: 34px;
  position: relative;
  flex-shrink: 0;
}
.v-cart__products ul .thumb:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.03);
}
.v-cart__products ul .thumb img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.v-cart__products ul .name {
  color: #000;
  font-family: "Prata", sans-serif;
  font-size: 18px;
  line-height: 19px;
  margin-bottom: 7px;
}
.v-cart__products ul .price {
  color: #000;
  font-size: 18px;
  font-weight: 600;
  line-height: 27px;
  margin: 0;
}
.v-cart__products ul .price-wrapper {
  margin-left: 80px;
}
.v-cart__products ul .price-wrapper span:not(.woocommerce-Price-currencySymbol) {
  display: block;
}
.v-cart__products ul .price-wrapper .current {
  color: #000;
  font-size: 18px;
  font-weight: 600;
  line-height: 27px;
}
.v-cart__products ul .price-wrapper .old {
  color: rgba(54, 65, 62, 0.2);
  font-size: 14px;
  line-height: normal;
  font-weight: 600;
  text-decoration: line-through;
}
.v-cart__products ul .remove-cart-item {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 33px;
  height: 33px;
  border: 1px solid #DADADA;
  margin-left: 50px;
  transition: border-color 0.5s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.v-cart__products ul .remove-cart-item svg path {
  will-change: fill;
  transition: fill 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.v-cart__products ul .remove-cart-item:hover, .v-cart__products ul .remove-cart-item:focus {
  background-color: #000;
  border-color: #000;
}
.v-cart__products ul .remove-cart-item:hover svg path, .v-cart__products ul .remove-cart-item:focus svg path {
  fill: #fff;
}
.v-cart__summary {
  width: 100%;
  max-width: 480px;
  margin-left: auto;
  margin-top: 32px;
}
.v-cart__summary table {
  width: 100%;
  background: #fff;
  border: 1px solid #e6e6e6;
  margin-bottom: 20px;
  padding: 18px 24px;
}
.v-cart__summary table td {
  color: #8D8D8D;
  font-size: 14px;
  font-weight: 400;
  line-height: normal;
}
.v-cart__summary table td strong {
  color: #161616;
  font-size: 18px;
  font-weight: 600;
}
.v-cart__summary table tr td:last-child {
  text-align: right;
}
.v-cart__summary .c-button {
  width: 100%;
}
.v-cart__form {
  margin-top: 60px;
}
.v-cart__form-inner {
  background-color: #FAFAFA;
  padding: 45px 60px;
}
.v-cart__form .c-checkbox {
  padding: 5px 0;
}
.v-cart__form button[type=submit] {
  margin-top: 40px;
}
.v-cart__form .delivery-wrapper {
  margin-bottom: 35px;
}
.v-cart__back {
  margin-top: 35px;
}
.v-cart__empty {
  text-align: center;
}
.v-cart .payment-wrapper,
.v-cart .delivery-wrapper {
  margin-top: 54px;
}
.v-cart .payment-wrapper .box,
.v-cart .delivery-wrapper .box {
  padding: 27px 20px;
  border: 1px solid #E9E9E9;
  position: relative;
}
.v-cart .payment-wrapper {
  margin-top: 33px;
  margin-bottom: 35px;
}
.v-cart button[type=submit] {
  width: 100%;
}
.v-cart__success {
  margin-top: 110px;
  padding-bottom: 30px;
}
.v-cart__success-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.v-cart__success-content h1 {
  font-size: 56px;
  line-height: 58px;
  margin-bottom: 27px;
  letter-spacing: -1.12px;
}
.v-cart__success-content p {
  margin-bottom: 32px;
}
@media (max-width: 1200px) {
  .v-cart__nav ul .number:after {
    width: 320px;
  }
}
@media (max-width: 992px) {
  .v-cart__nav ul .number:after {
    width: 270px;
  }
  .v-cart__products ul li {
    flex-direction: column;
    align-items: flex-start;
    gap: 15px;
    position: relative;
  }
  .v-cart__products ul .right {
    width: 100%;
    justify-content: space-between;
    flex-direction: row-reverse;
  }
  .v-cart__products ul .remove-cart-item {
    position: absolute;
    right: 10px;
    top: 30px;
  }
  .v-cart__products ul .price-wrapper {
    margin-left: 0;
  }
  .v-cart__form-inner {
    padding: 35px 40px;
  }
  .v-cart .payment-wrapper .box,
  .v-cart .delivery-wrapper .box {
    padding: 17px 20px;
  }
  .v-cart .delivery-wrapper {
    margin-top: 30px;
  }
  .v-cart__success {
    margin-top: 40px;
    padding-bottom: 0;
  }
  .v-cart__success-content h1 {
    font-size: 40px;
    line-height: 42px;
    margin-bottom: 20px;
  }
}
@media (max-width: 768px) {
  .v-cart__nav ul .number:after {
    width: 190px;
  }
}
@media (max-width: 576px) {
  .v-cart__nav ul {
    justify-content: center;
    gap: 10px;
  }
  .v-cart__nav ul .number:after {
    display: none;
  }
  .v-cart__nav ul span {
    display: none;
  }
  .v-cart__products ul li {
    padding: 15px 0;
  }
  .v-cart__products ul .left {
    align-items: flex-end;
  }
  .v-cart__products ul .thumb {
    width: 120px;
    height: 120px;
    margin-right: 15px;
    padding: 10px;
  }
  .v-cart__products ul .remove-cart-item {
    top: 15px;
    width: 20px;
    height: 20px;
  }
}

.error {
  padding: 100px 0;
}
.error .inner {
  text-align: center;
}
.error .inner h1 {
  margin-bottom: 20px;
}
.error .inner h2 {
  margin-bottom: 20px;
}
.error .inner p {
  margin-bottom: 30px;
}

.main-footer {
  position: relative;
}
.main-footer .pattern {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
.main-footer h6 {
  font-family: "Onest", sans-serif;
  color: #000;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 1.96px;
  text-transform: uppercase;
  margin-bottom: 14px;
}
.main-footer__inner {
  background-color: #fff;
  padding-top: 90px;
  padding-bottom: 60px;
  position: relative;
  z-index: 2;
}
.main-footer__inner ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.main-footer__inner ul li {
  margin-bottom: 18px;
}
.main-footer__inner ul li:last-child {
  margin-bottom: 0;
}
.main-footer__inner ul a {
  color: #000;
  display: block;
  font-size: 14px;
  font-weight: 300;
  line-height: 15px;
  letter-spacing: 0.56px;
  text-transform: uppercase;
  text-decoration: none;
}
.main-footer__inner ul a:hover, .main-footer__inner ul a:focus {
  text-decoration: underline;
}
.main-footer__inner .socials {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 35px;
}
.main-footer__inner a:has(.icon) {
  color: #39404B;
  font-weight: 600;
  display: flex;
  align-items: center;
  gap: 13px;
  margin-bottom: 9px;
  text-transform: initial;
}
.main-footer__inner a:has(.icon) .icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  border: 1px solid #E7EAEE;
  flex-shrink: 0;
}
.main-footer__locations {
  background-color: #FAFAFA;
  padding-top: 45px;
  padding-bottom: 105px;
  position: relative;
  overflow: hidden;
}
.main-footer__locations h6 {
  margin-bottom: 40px;
}
.main-footer__locations address {
  color: #787878;
  font-size: 14px;
  font-style: normal;
  line-height: 1.4;
}
.main-footer__locations address strong {
  display: inline-block;
  color: #000;
  font-size: 14px;
  font-weight: 300;
  text-transform: uppercase;
  letter-spacing: 0.56px;
  margin-bottom: 8px;
}
.main-footer__locations .map-wrapper {
  max-width: 50%;
  position: absolute;
  right: -150px;
  top: 50%;
  transform: translateY(-50%);
  height: 100%;
}
.main-footer__locations .map-wrapper img {
  height: 100%;
  object-fit: cover;
}
.main-footer__copyright {
  padding-top: 21px;
  padding-bottom: 21px;
}
.main-footer__copyright .inner {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
.main-footer__copyright .inner p {
  color: #B7B7B7;
  font-size: 14px;
  line-height: normal;
  text-transform: uppercase;
  margin: 0;
}
.main-footer__copyright .inner p a {
  color: inherit;
  text-decoration: none;
  will-change: color;
  transition: color 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.main-footer__copyright .inner p a:hover, .main-footer__copyright .inner p a:focus {
  color: #000;
}
@media (max-width: 992px) {
  .main-footer__inner {
    text-align: center;
    padding-top: 60px;
  }
  .main-footer__inner .socials {
    justify-content: center;
  }
  .main-footer__inner .column {
    margin-bottom: 40px;
  }
  .main-footer__inner a:has(.icon) {
    justify-content: center;
  }
  .main-footer__locations {
    padding-bottom: 45px;
  }
  .main-footer__locations .map-wrapper {
    display: none;
  }
}
@media (max-width: 768px) {
  .main-footer__inner {
    padding-top: 35px;
    padding-bottom: 0;
  }
}
@media (max-width: 576px) {
  .main-footer__locations {
    padding-top: 30px;
    padding-bottom: 0;
  }
  .main-footer__locations h6 {
    margin-bottom: 30px;
    text-align: center;
  }
  .main-footer__locations .column {
    text-align: center;
    margin-bottom: 30px;
  }
  .main-footer__copyright .inner {
    justify-content: center;
  }
}

@media (max-width: 1200px) {
  .hidden-lg-down {
    display: none !important;
  }
}
@media (min-width: 1200px) {
  .hidden-lg-up {
    display: none !important;
  }
}
@media (max-width: 992px) {
  .hidden-md-down {
    display: none !important;
  }
}
@media (min-width: 992px) {
  .hidden-md-up {
    display: none !important;
  }
}
@media (max-width: 768px) {
  .hidden-sm-down {
    display: none !important;
  }
}
@media (min-width: 768px) {
  .hidden-sm-up {
    display: none !important;
  }
}
@media (max-width: 576px) {
  .hidden-xs-down {
    display: none !important;
  }
}
@media (min-width: 576px) {
  .hidden-xs-up {
    display: none !important;
  }
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNldHRpbmdzL19ub3JtYWxpemUuc2NzcyIsInNldHRpbmdzL190eXBvZ3JhcGh5LnNjc3MiLCJzZXR0aW5ncy9fY29sb3Vycy5zY3NzIiwic2V0dGluZ3MvX2dlbmVyYWwuc2NzcyIsInV0aWxpdGllcy9fYW5pbWF0aW9ucy5zY3NzIiwib2JqZWN0cy9fd29vY29tbWVyY2Uuc2NzcyIsImNvbXBvbmVudHMvX2J1dHRvbi5zY3NzIiwiY29tcG9uZW50cy9fc2VwYXJhdG9yLnNjc3MiLCJjb21wb25lbnRzL19wcmljZS5zY3NzIiwiY29tcG9uZW50cy9fY2hlY2tib3guc2NzcyIsInV0aWxpdGllcy9fbWl4aW5zLnNjc3MiLCJjb21wb25lbnRzL19wYWdlLXRpdGxlLnNjc3MiLCJjb21wb25lbnRzL19wYWdpbmF0aW9uLnNjc3MiLCJjb21wb25lbnRzL19hY2NvcmRpb24uc2NzcyIsImNvbXBvbmVudHMvX3Bvc3Quc2NzcyIsImNvbXBvbmVudHMvX21vZGFsLnNjc3MiLCJjb21wb25lbnRzL19udW1iZXItaW5wdXQuc2NzcyIsImNvbXBvbmVudHMvX2hhbWJ1cmdlci5zY3NzIiwiY29tcG9uZW50cy9fYmFubmVyLnNjc3MiLCJlbGVtZW50cy9fc2VjdGlvbi5zY3NzIiwiZWxlbWVudHMvX2Zvcm0uc2NzcyIsInNlY3Rpb25zL19tYWluLWhlYWRlci5zY3NzIiwic2VjdGlvbnMvX2hlcm8uc2NzcyIsInNlY3Rpb25zL19pbWFnZS10ZXh0LnNjc3MiLCJzZWN0aW9ucy9fYXJ0aWNsZXMuc2NzcyIsInNlY3Rpb25zL19zaG9wLXByb2R1Y3RzLnNjc3MiLCJzZWN0aW9ucy9fcG9zdC1jYXJvdXNlbC5zY3NzIiwic2VjdGlvbnMvX2V2ZW50cy5zY3NzIiwic2VjdGlvbnMvX25ld3NsZXR0ZXIuc2NzcyIsInNlY3Rpb25zL19pbnN0YWdyYW0uc2NzcyIsInNlY3Rpb25zL193b3Jkcy5zY3NzIiwic2VjdGlvbnMvX2FydGljbGUtbGlzdGluZy5zY3NzIiwic2VjdGlvbnMvX3RleHQuc2NzcyIsInNlY3Rpb25zL190ZXh0LWFsdC5zY3NzIiwic2VjdGlvbnMvX3Bvc3RzLnNjc3MiLCJzZWN0aW9ucy9fcHJvZHVjdC1kZXRhaWwuc2NzcyIsInNlY3Rpb25zL19pbWFnZXMuc2NzcyIsInNlY3Rpb25zL190ZXh0LWJsb2NrLnNjc3MiLCJzZWN0aW9ucy9fb3JkZXItZm9ybS5zY3NzIiwic2VjdGlvbnMvX2Jsb2cuc2NzcyIsInNlY3Rpb25zL19iZW5lZml0cy5zY3NzIiwic2VjdGlvbnMvX2NhcnQuc2NzcyIsInNlY3Rpb25zL19lcnJvci5zY3NzIiwic2VjdGlvbnMvX21haW4tZm9vdGVyLnNjc3MiLCJ1dGlsaXRpZXMvX2hlbHBlcnMuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7QUFFQTtBQUFBO0FBQUE7QUFBQTtBQUtBO0FBQUE7QUFBQTtBQ1BRO0FEV1I7QUFBQTtBQUFBO0VBR0U7OztBQUdGO0FBQUE7QUFBQTtBQUlBO0VBQ0U7RUFDQTs7O0FBR0Y7QUFBQTtBQUFBO0FBQUE7QUFLQTtFQUNFO0VBQ0E7OztBQUdGO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtBQUFBO0FBSUE7RUFDRTs7O0FBR0Y7QUFBQTtBQUFBO0FBSUE7RUFDRSxhQUNROzs7QUFXVjtBQUFBO0FBQUE7QUFBQTtBQUtBO0FBQUE7QUFBQTtBQUFBO0FBS0E7RUFDRTtFQUNBOzs7QUFHRjtBQUFBO0FBQUE7QUFBQTtBQUtBO0FBQUE7QUFBQTtBQUlBO0VBQ0U7OztBQUdGO0FBQUE7QUFBQTtBQUlBO0FBQUE7RUFFRTs7O0FBR0Y7QUFBQTtBQUFBO0FBQUE7QUFLQTtBQUFBO0FBQUE7QUFBQTtFQUlFLGFBQ1EsNkVBS1c7RUFDbkI7OztBQUdGO0FBQUE7QUFBQTtBQUlBO0VBQ0U7OztBQUdGO0FBQUE7QUFBQTtBQUlBO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0Y7RUFDRTs7O0FBR0Y7RUFDRTs7O0FBR0Y7QUFBQTtBQUFBO0FBQUE7QUFLQTtBQUFBO0FBQUE7QUFB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O0VBRUUsT0p2REk7RUl3REosa0JKdkRJO0VJd0RKLGNKeERJOztBSTREUjtFQUNFLE9KN0RNOztBSWlFSjtFQUNFLFFKbEVFOztBSXFFSjtFQUNFLFFKdEVFOzs7QUtEVjtFQUNFOztBQUVBO0VBQ0U7RUFDQTtFQUNBOzs7QUNOSjtFQUNFO0VBQ0E7RUFDQSxhUElZO0VPSFo7OztBQ0pGO0VBQ0U7RUFDQTs7QUFFQTtFQ3VCQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7QUFBQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFLE9SN0NNO0VROENOLFlSOUNNO0VRK0NOO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdBO0VBQ0U7O0FBSUo7RUFDRSxPUnhEUztFUXlEVDtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNFLE9SdkVJO0VRd0VKOztBQUVBO0VBQ0U7O0FBS047QUFBQTtFQUVFLGtCUmxGTTtFUW1GTixjUm5GTTs7QVFxRk47QUFBQTtFQUNFOzs7QUQ5RU47RUNrQkU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRSxPUjdDTTtFUThDTixZUjlDTTtFUStDTjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHQTtFQUNFOztBQUlKO0VBQ0UsT1J4RFM7RVF5RFQ7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDRSxPUnZFSTtFUXdFSjs7QUFFQTtFQUNFOztBQUtOO0FBQUE7RUFFRSxrQlJsRk07RVFtRk4sY1JuRk07O0FRcUZOO0FBQUE7RUFDRTs7O0FDdkZOO0VBQ0U7RUFDQTtFQUNBOztBQUVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7O0FDYko7RUFDRTs7QUFFQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0U7O0FBRUE7RUFDRTs7QUFJ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RUFDQTs7QUFLTjtFQUNFO0VBQ0E7O0FBRUE7RUFDRTtFQUNBO0VBQ0E7O0FBRUE7RUFDRSxPekNySUs7RXlDc0lMO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFFRSxPekN4SkY7O0F5QytKUjtFQUVFO0lBQ0U7SUFDQTs7RUFFQTtJQUNFOztFQUdGO0lBQ0U7O0VBR0Y7SUFDRTs7RUFJSjtJQUNFOztFQUVBO0lBQ0U7OztBQUtOO0VBRUU7SUFDRTtJQUNBOzs7QUFJSjtFQUVFO0lBQ0U7SUFDQTs7RUFFQTtJQUNFO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBOztFQU1GO0lBQ0U7Ozs7QUN4TlI7RUFFSTtJQUNJOzs7QUFJUjtFQUVJO0lBQ0k7OztBQUlSO0VBRUk7SUFDSTs7O0FBSVI7RUFFSTtJQUNJOzs7QUFJUjtFQUVJO0lBQ0k7OztBQUlSO0VBRUk7SUFDSTs7O0FBSVI7RUFFSTtJQUNJOzs7QUFJUjtFQUVJO0lBQ0kiLCJmaWxlIjoiYnVuZGxlLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qISBtb2Rlcm4tbm9ybWFsaXplIHYxLjEuMCB8IE1JVCBMaWNlbnNlIHwgaHR0cHM6Ly9naXRodWIuY29tL3NpbmRyZXNvcmh1cy9tb2Rlcm4tbm9ybWFsaXplICovXG5cbi8qXG5Eb2N1bWVudFxuPT09PT09PT1cbiovXG5cbi8qKlxuVXNlIGEgYmV0dGVyIGJveCBtb2RlbCAob3BpbmlvbmF0ZWQpLlxuKi9cblxuKixcbjo6YmVmb3JlLFxuOjphZnRlciB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi8qKlxuVXNlIGEgbW9yZSByZWFkYWJsZSB0YWIgc2l6ZSAob3BpbmlvbmF0ZWQpLlxuKi9cblxuaHRtbCB7XG4gIC1tb3otdGFiLXNpemU6IDQ7XG4gIHRhYi1zaXplOiA0O1xufVxuXG4vKipcbjEuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbjIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuKi9cblxuaHRtbCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAxICovXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqL1xufVxuXG4vKlxuU2VjdGlvbnNcbj09PT09PT09XG4qL1xuXG4vKipcblJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cbiovXG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG59XG5cbi8qKlxuSW1wcm92ZSBjb25zaXN0ZW5jeSBvZiBkZWZhdWx0IGZvbnRzIGluIGFsbCBicm93c2Vycy4gKGh0dHBzOi8vZ2l0aHViLmNvbS9zaW5kcmVzb3JodXMvbW9kZXJuLW5vcm1hbGl6ZS9pc3N1ZXMvMylcbiovXG5cbmJvZHkge1xuICBmb250LWZhbWlseTpcbiAgICAgICAgICBzeXN0ZW0tdWksXG4gICAgICAgICAgLWFwcGxlLXN5c3RlbSwgLyogRmlyZWZveCBzdXBwb3J0cyB0aGlzIGJ1dCBub3QgeWV0IGBzeXN0ZW0tdWlgICovXG4gICAgICAgICAgJ1NlZ29lIFVJJyxcbiAgICAgICAgICBSb2JvdG8sXG4gICAgICAgICAgSGVsdmV0aWNhLFxuICAgICAgICAgIEFyaWFsLFxuICAgICAgICAgIHNhbnMtc2VyaWYsXG4gICAgICAgICAgJ0FwcGxlIENvbG9yIEVtb2ppJyxcbiAgICAgICAgICAnU2Vnb2UgVUkgRW1vamknO1xufVxuXG4vKlxuR3JvdXBpbmcgY29udGVudFxuPT09PT09PT09PT09PT09PVxuKi9cblxuLyoqXG4xLiBBZGQgdGhlIGNvcnJlY3QgaGVpZ2h0IGluIEZpcmVmb3guXG4yLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBvZiBib3JkZXIgY29sb3IgaW4gRmlyZWZveC4gKGh0dHBzOi8vYnVnemlsbGEubW96aWxsYS5vcmcvc2hvd19idWcuY2dpP2lkPTE5MDY1NSlcbiovXG5cbmhyIHtcbiAgaGVpZ2h0OiAwOyAvKiAxICovXG4gIGNvbG9yOiBpbmhlcml0OyAvKiAyICovXG59XG5cbi8qXG5UZXh0LWxldmVsIHNlbWFudGljc1xuPT09PT09PT09PT09PT09PT09PT1cbiovXG5cbi8qKlxuQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4qL1xuXG5hYmJyW3RpdGxlXSB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDtcbn1cblxuLyoqXG5BZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gRWRnZSBhbmQgU2FmYXJpLlxuKi9cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG59XG5cbi8qKlxuMS4gSW1wcm92ZSBjb25zaXN0ZW5jeSBvZiBkZWZhdWx0IGZvbnRzIGluIGFsbCBicm93c2Vycy4gKGh0dHBzOi8vZ2l0aHViLmNvbS9zaW5kcmVzb3JodXMvbW9kZXJuLW5vcm1hbGl6ZS9pc3N1ZXMvMylcbjIuIENvcnJlY3QgdGhlIG9kZCAnZW0nIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiovXG5cbmNvZGUsXG5rYmQsXG5zYW1wLFxucHJlIHtcbiAgZm9udC1mYW1pbHk6XG4gICAgICAgICAgdWktbW9ub3NwYWNlLFxuICAgICAgICAgIFNGTW9uby1SZWd1bGFyLFxuICAgICAgICAgIENvbnNvbGFzLFxuICAgICAgICAgICdMaWJlcmF0aW9uIE1vbm8nLFxuICAgICAgICAgIE1lbmxvLFxuICAgICAgICAgIG1vbm9zcGFjZTsgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xufVxuXG4vKipcbkFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuKi9cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbn1cblxuLyoqXG5QcmV2ZW50ICdzdWInIGFuZCAnc3VwJyBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuKi9cblxuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cblxuLypcblRhYnVsYXIgZGF0YVxuPT09PT09PT09PT09XG4qL1xuXG4vKipcbjEuIFJlbW92ZSB0ZXh0IGluZGVudGF0aW9uIGZyb20gdGFibGUgY29udGVudHMgaW4gQ2hyb21lIGFuZCBTYWZhcmkuIChodHRwczovL2J1Z3MuY2hyb21pdW0ub3JnL3AvY2hyb21pdW0vaXNzdWVzL2RldGFpbD9pZD05OTkwODgsIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDEyOTcpXG4yLiBDb3JyZWN0IHRhYmxlIGJvcmRlciBjb2xvciBpbmhlcml0YW5jZSBpbiBhbGwgQ2hyb21lIGFuZCBTYWZhcmkuIChodHRwczovL2J1Z3MuY2hyb21pdW0ub3JnL3AvY2hyb21pdW0vaXNzdWVzL2RldGFpbD9pZD05MzU3MjksIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTUwMTYpXG4qL1xuXG50YWJsZSB7XG4gIHRleHQtaW5kZW50OiAwOyAvKiAxICovXG4gIGJvcmRlci1jb2xvcjogaW5oZXJpdDsgLyogMiAqL1xufVxuXG4vKlxuRm9ybXNcbj09PT09XG4qL1xuXG4vKipcbjEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzLlxuMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuKi9cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxMDAlOyAvKiAxICovXG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAxICovXG4gIG1hcmdpbjogMDsgLyogMiAqL1xufVxuXG4vKipcblJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSBhbmQgRmlyZWZveC5cbjEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiovXG5cbmJ1dHRvbixcbnNlbGVjdCB7IC8qIDEgKi9cbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8qKlxuQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiovXG5cbmJ1dHRvbixcblt0eXBlPSdidXR0b24nXSxcblt0eXBlPSdyZXNldCddLFxuW3R5cGU9J3N1Ym1pdCddIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG59XG5cbi8qKlxuUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiovXG5cbjo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbn1cblxuLyoqXG5SZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4qL1xuXG46LW1vei1mb2N1c3Jpbmcge1xuICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG59XG5cbi8qKlxuUmVtb3ZlIHRoZSBhZGRpdGlvbmFsICc6aW52YWxpZCcgc3R5bGVzIGluIEZpcmVmb3guXG5TZWU6IGh0dHBzOi8vZ2l0aHViLmNvbS9tb3ppbGxhL2dlY2tvLWRldi9ibG9iLzJmOWVhY2Q5ZDNkOTk1YzkzN2I0MjUxYTU1NTdkOTVkNDk0YzliZTEvbGF5b3V0L3N0eWxlL3Jlcy9mb3Jtcy5jc3MjTDcyOC1MNzM3XG4qL1xuXG46LW1vei11aS1pbnZhbGlkIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLyoqXG5SZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0ICdmaWVsZHNldCcgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuKi9cblxubGVnZW5kIHtcbiAgcGFkZGluZzogMDtcbn1cblxuLyoqXG5BZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSBhbmQgRmlyZWZveC5cbiovXG5cbnByb2dyZXNzIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG4vKipcbkNvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIFNhZmFyaS5cbiovXG5cbjo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbjo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLyoqXG4xLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbjIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuKi9cblxuW3R5cGU9J3NlYXJjaCddIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8qIDEgKi9cbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8qIDIgKi9cbn1cblxuLyoqXG5SZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4qL1xuXG46Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8qKlxuMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbjIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gJ2luaGVyaXQnIGluIFNhZmFyaS5cbiovXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMSAqL1xuICBmb250OiBpbmhlcml0OyAvKiAyICovXG59XG5cbi8qXG5JbnRlcmFjdGl2ZVxuPT09PT09PT09PT1cbiovXG5cbi8qXG5BZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiovXG5cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07XG59IiwiQGltcG9ydCB1cmwoJ2h0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzMj9mYW1pbHk9T25lc3Q6d2dodEAxMDAuLjkwMCZmYW1pbHk9UHJhdGEmZGlzcGxheT1zd2FwJyk7XG5cbiRmZi10aXRsZTogJ1ByYXRhJywgc2Fucy1zZXJpZjtcbiRmZi1ib2R5OiAnT25lc3QnLCBzYW5zLXNlcmlmO1xuXG4kZnctbGlnaHQ6IDMwMDtcbiRmdy1yZWd1bGFyOiA0MDA7XG4kZnctc2VtaWJvbGQ6IDYwMDtcbiRmdy1ib2xkOiA3MDA7XG5cbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNiB7XG4gICAgY29sb3I6ICRjLWJsYWNrO1xuICAgIGZvbnQtZmFtaWx5OiAkZmYtdGl0bGU7XG4gICAgZm9udC13ZWlnaHQ6ICRmdy1yZWd1bGFyO1xuICAgIG1hcmdpbi10b3A6IDA7XG59XG5cbmgxIHtcbiAgICBmb250LXNpemU6IDY0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDczcHg7XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogJGJyLW1kKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogNDhweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgfVxuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRici14cykge1xuICAgICAgICBmb250LXNpemU6IDQwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA0MnB4O1xuICAgIH1cbn1cblxuaDIge1xuICAgIGZvbnQtc2l6ZTogNDhweDtcbiAgICBsaW5lLWhlaWdodDogNTBweDtcblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkYnItbWQpIHtcbiAgICAgICAgZm9udC1zaXplOiA0MHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogNDJweDtcbiAgICB9XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogJGJyLXhzKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMzJweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDMzcHg7XG4gICAgfVxufVxuXG5oMyB7XG4gICAgZm9udC1zaXplOiA0MHB4O1xuICAgIGxpbmUtaGVpZ2h0OiA0MnB4O1xuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRici1tZCkge1xuICAgICAgICBmb250LXNpemU6IDMycHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzM3B4O1xuICAgIH1cblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkYnIteHMpIHtcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICB9XG59XG5cbmg0IHtcbiAgICBmb250LXNpemU6IDMycHg7XG4gICAgbGluZS1oZWlnaHQ6IDMzcHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjY0cHg7XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogJGJyLW1kKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgfVxuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRici14cykge1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgIH1cbn1cblxuaDUge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuNDhweDtcblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkYnItbWQpIHtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICB9XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogJGJyLXhzKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gICAgfVxufVxuXG5oNiB7XG5cbn1cblxucCB7XG4gICAgY29sb3I6ICRjLXdoaXRlLTcwO1xuICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgIG1hcmdpbi10b3A6IDA7XG59XG5cbi5jYXB0aW9uIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDEuNjhweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG59IiwiJGMtd2hpdGU6ICNmZmY7XG4kYy1ibGFjazogIzAwMDtcblxuJGMtd2hpdGUtMTA6ICNGQUZBRkE7XG4kYy13aGl0ZS0yMDogI0U5RTlFOTtcbiRjLXdoaXRlLTMwOiAjREFEQURBO1xuJGMtd2hpdGUtNDA6ICNCN0I3Qjc7XG4kYy13aGl0ZS01MDogI0EyQTJBMjtcbiRjLXdoaXRlLTYwOiAjOEQ4RDhEO1xuJGMtd2hpdGUtNzA6ICM3ODc4Nzg7XG4kYy13aGl0ZS04MDogIzY1NjU2NTtcbiRjLXdoaXRlLTEwMDogIzE2MTYxNjsiLCIqIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxufVxuXG5cbmJvZHkge1xuICBmb250LWZhbWlseTogJGZmLWJvZHk7XG4gIGFuaW1hdGlvbjogZmFkZUluIGVhc2UgMXM7XG4gIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDE7XG4gIGFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogYXV0bztcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuXG4gIDo6c2VsZWN0aW9uIHtcbiAgICAgIC8vIGNvbG9yOiAkYy13aGl0ZTtcbiAgICAgIC8vIGJhY2tncm91bmQtY29sb3I6ICRjLXNlY29uZGFyeTtcbiAgfVxuXG4gICYuYmxvZyB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cbn1cblxuYnV0dG9uIHtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgcGFkZGluZzogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5pbWcge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuQG1lZGlhICggbWluLXdpZHRoOiAxMjAwcHggKSB7XG5cbiAgLmNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiA5MCU7XG4gIH1cbn1cbiAgXG4vL0BtZWRpYSAoIG1pbi13aWR0aDogJGJyLXhsICkge1xuLy9cbi8vICAuY29udGFpbmVyIHtcbi8vICAgIG1heC13aWR0aDogMTUyMHB4O1xuLy8gIH1cbi8vfVxuICBcbkBtZWRpYSAoIG1pbi13aWR0aDogJGJyLXh4bCApIHtcblxuICAuY29udGFpbmVyIHtcbiAgICBtYXgtd2lkdGg6IDE5MDBweDtcbiAgfVxufSIsIkBrZXlmcmFtZXMgZmFkZUluIHtcblxuICAgIDAlIHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICBcbiAgICAxMDAlIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9IiwiLndvb2NvbW1lcmNlIHtcblxuICBmb3JtIHtcblxuICAgIC5mb3JtLXJvdyB7XG4gICAgICBwYWRkaW5nOiAxM3B4IDA7XG4gICAgICBtYXJnaW46IDA7XG5cbiAgICAgIGxhYmVsIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE3cHg7XG4gICAgICB9XG5cbiAgICAgICYjYmlsbGluZ19jb3VudHJ5X2ZpZWxkLFxuICAgICAgJiNzaGlwcGluZ19jb3VudHJ5X2ZpZWxkIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgd2lkdGg6IDFweDtcbiAgICAgIH1cblxuICAgICAgJiNwcml2YWN5X3BvbGljeV9maWVsZCxcbiAgICAgICYjdm9wX2ZpZWxkIHtcbiAgICAgICAgcGFkZGluZzogNXB4IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnNoaXBwaW5nX2FkZHJlc3Mge1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gIH1cbn1cblxuLndvb2NvbW1lcmNlLW1lc3NhZ2Uge1xuICBib3JkZXItdG9wLWNvbG9yOiAkYy1ibGFjaztcblxuICAmOmJlZm9yZSB7XG4gICAgY29sb3I6ICRjLWJsYWNrO1xuICB9XG59XG5cbi53b29jb21tZXJjZS1pbmZvLFxuLndvb2NvbW1lcmNlLW1lc3NhZ2Uge1xuXG4gIC5idXR0b24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjLWJsYWNrICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICRjLXdoaXRlICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAxNHB4ICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6ICRmdy1zZW1pYm9sZCAhaW1wb3J0YW50O1xuICB9XG59XG5cbmJ1dHRvbltuYW1lPVwidXBkYXRlX2NhcnRcIl0ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi53Yy1wcm9jZWVkLXRvLWNoZWNrb3V0IHtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xufVxuXG4ud29vY29tbWVyY2UtY2hlY2tvdXQge1xuXG4gICNwYXltZW50IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgfVxufVxuXG4ud29vY29tbWVyY2UtcHJpdmFjeS1wb2xpY3ktdGV4dCB7XG5cbiAgYSB7XG4gICAgY29sb3I6ICRjLWJsYWNrO1xuICB9XG59XG5cblxuYm9keS53b29jb21tZXJjZS1hY2NvdW50IHtcblxuICAud29vY29tbWVyY2Uge1xuICAgIG1heC13aWR0aDogOTAlO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBwYWRkaW5nOiA2MHB4IDE1cHg7XG4gIH1cblxuICAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24ge1xuXG4gICAgdWwge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgYSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjb2xvcjogJGMtYmxhY2s7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAud29vY29tbWVyY2UtTXlBY2NvdW50LWNvbnRlbnQge1xuXG4gICAgYSB7XG4gICAgICBjb2xvcjogJGMtYmxhY2s7XG4gICAgfVxuICB9XG5cbiAgLndvb2NvbW1lcmNlIHRhYmxlLm15X2FjY291bnRfb3JkZXJzIC5idXR0b24sXG4gIGJ1dHRvbltuYW1lPVwic2F2ZV9hY2NvdW50X2RldGFpbHNcIl17XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGMtYmxhY2sgIWltcG9ydGFudDtcbiAgICBjb2xvcjogJGMtd2hpdGUgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDE0cHggIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogJGZ3LXNlbWlib2xkICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLndvb2NvbW1lcmNlLWZvcm0tbG9naW4ge1xuXG4gIC5mb3JtLWFjdGlvbnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDEwcHg7XG4gIH1cblxuICAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG5cbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkYy1ibGFjaztcbiAgICB9XG4gIH1cbn0iLCIuYy1idXR0b24ge1xuICBjb2xvcjogJGMtd2hpdGU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZ2FwOiA3cHg7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC13ZWlnaHQ6ICRmdy1zZW1pYm9sZDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICYuaXMtcHJpbWFyeSB7XG4gICAgY29sb3I6ICRjLXdoaXRlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjLWJsYWNrO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRjLWJsYWNrO1xuICAgIHBhZGRpbmc6IDIwcHggNDhweDtcbiAgICB3aWxsLWNoYW5nZTogY29sb3IsIGJhY2tncm91bmQtY29sb3I7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgJHQtZGVsYXkgJHQtZnVuY3Rpb24sXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAkdC1kZWxheSAkdC1mdW5jdGlvbjtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJGMtYmxhY2s7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy13aGl0ZTtcbiAgICAgIGJvcmRlci1jb2xvcjogJGMtYmxhY2s7XG5cbiAgICAgIHN2ZyB7XG5cbiAgICAgICAgY2lyY2xlLFxuICAgICAgICBwYXRoIHtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBzdHJva2UgJHQtZGVsYXkgJHQtZnVuY3Rpb247XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgc3ZnIHtcblxuICAgICAgICBjaXJjbGUsXG4gICAgICAgIHBhdGgge1xuICAgICAgICAgIHN0cm9rZTogJGMtYmxhY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmlzLXNlY29uZGFyeSB7XG4gICAgY29sb3I6ICRjLWJsYWNrO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRjLXdoaXRlLTQwO1xuICAgIHBhZGRpbmc6IDE0cHggMTNweDtcbiAgICB3aWxsLWNoYW5nZTogY29sb3IsIGJhY2tncm91bmQtY29sb3IsIGJvcmRlci1jb2xvcjtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAkdC1kZWxheSAkdC1mdW5jdGlvbixcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yICR0LWRlbGF5ICR0LWZ1bmN0aW9uLFxuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvciAkdC1kZWxheSAkdC1mdW5jdGlvbjtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJGMtd2hpdGU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1ibGFjaztcbiAgICAgIGJvcmRlci1jb2xvcjogJGMtYmxhY2s7XG4gICAgfVxuICB9XG5cbiAgJi5pcy1ibGFjayB7XG4gICAgY29sb3I6ICRjLWJsYWNrO1xuXG4gICAgc3ZnIHtcblxuICAgICAgY2lyY2xlIHtcbiAgICAgICAgc3Ryb2tlOiAkYy1ibGFjaztcbiAgICAgIH1cblxuICAgICAgcGF0aCB7XG4gICAgICAgIHN0cm9rZTogJGMtYmxhY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLmMtc2VwYXJhdG9yIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gIGltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbn0iLCIuYy1wcmljZSB7XG4gIGNvbG9yOiAkYy1ibGFjaztcbiAgZm9udC1zaXplOiAxOHB4O1xuICBmb250LXdlaWdodDogJGZ3LXNlbWlib2xkO1xuICBsaW5lLWhlaWdodDogMjdweDtcbn0iLCIuYy1jaGVja2JveCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogNXB4IDA7XG5cbiAgbGFiZWwge1xuICAgIEBpbmNsdWRlIGN1c3RvbUNoZWNrYm94KCk7XG4gIH1cbn1cblxuLndvb2NvbW1lcmNlLWZvcm1fX2xhYmVsLWZvci1jaGVja2JveCB7XG4gIEBpbmNsdWRlIGN1c3RvbUNoZWNrYm94KCk7XG59IiwiQG1peGluIGFydGljbGVNZXRhKCkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy13aGl0ZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAxM3B4O1xuICBib3R0b206IDEzcHg7XG4gIHBhZGRpbmc6IDI0cHggMzRweDtcblxuICBzcGFuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb2xvcjogJGMtYmxhY2s7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAxLjY4cHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBtYXJnaW4tYm90dG9tOiAxNHB4O1xuICB9XG5cbiAgaDMge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkYnItbWQpIHtcbiAgICBwYWRkaW5nOiAyNHB4IDIwcHg7XG4gIH1cbn1cblxuQG1peGluIGN1c3RvbUNoZWNrYm94KCkge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbiAgaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMXB4O1xuICAgIGhlaWdodDogMXB4O1xuICB9XG5cbiAgc3Bhbi5jaGVjayB7XG4gICAgY29sb3I6ICRjLXdoaXRlO1xuICAgIGJhY2tncm91bmQ6ICRjLXdoaXRlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB3aWR0aDogMTdweDtcbiAgICBoZWlnaHQ6IDE3cHg7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgIGJvcmRlcjogMS41cHggc29saWQgJGMtd2hpdGUtNDA7XG4gICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yICR0LWRlbGF5ICR0LWZ1bmN0aW9uLFxuICAgIGJhY2tncm91bmQtY29sb3IgJHQtZGVsYXkgJHQtZnVuY3Rpb247XG5cbiAgICBzdmcge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG4gIH1cblxuICBzcGFuLmxhYmVsIHtcbiAgICBjb2xvcjogJGMtd2hpdGUtNzA7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgYSB7XG4gICAgICBjb2xvcjogJGMtYmxhY2s7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIHNwYW4uY2hlY2ssXG4gIGlucHV0W3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkICsgc3Bhbi5jaGVjayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGMtYmxhY2s7XG4gICAgYm9yZGVyLWNvbG9yOiAkYy1ibGFjaztcblxuICAgIHN2ZyB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgfVxufSIsIi5jLXBhZ2UtdGl0bGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctdG9wOiA5MHB4O1xuICBwYWRkaW5nLWJvdHRvbTogNzBweDtcblxuICAucGF0dGVybiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgaDEge1xuICAgIG1hcmdpbjogMDtcbiAgfVxufSIsIi5jLXBhZ2luYXRpb24ge1xuICBtYXJnaW4tdG9wOiA1MHB4O1xuXG4gIHVsIHtcbiAgICB3aWR0aDogbWF4LWNvbnRlbnQ7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGMtd2hpdGUtMjA7XG5cbiAgICBsaSB7XG4gICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkYy13aGl0ZS0yMDtcblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgIGEsXG4gICAgc3BhbiB7XG4gICAgICBjb2xvcjogJGMtYmxhY2s7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy13aGl0ZTtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZnctc2VtaWJvbGQ7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIHdpZHRoOiAzNXB4O1xuICAgICAgaGVpZ2h0OiA0NnB4O1xuICAgICAgd2lsbC1jaGFuZ2U6IGJhY2tncm91bmQtY29sb3I7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yICR0LWRlbGF5ICR0LWZ1bmN0aW9uO1xuXG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjLXdoaXRlLTIwO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIH1cblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy13aGl0ZS0yMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIuYy1hY2NvcmRpb24ge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgbGkge1xuICAgIHBhZGRpbmc6IDIwcHggMDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGMtd2hpdGUtMjA7XG5cbiAgICAudGl0bGUge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBnYXA6IDRweDtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgcCB7XG4gICAgICAgIGNvbG9yOiAkYy1ibGFjaztcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjQ4cHg7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cblxuICAgICAgJi5hY3RpdmUge1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgcm90YXRlOiAxODBkZWc7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY29udGVudCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgcGFkZGluZy10b3A6IDIwcHg7XG5cbiAgICAgIHAge1xuICAgICAgICBjb2xvcjogJGMtd2hpdGUtNzA7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjLXdoaXRlLTIwO1xuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkYnIteHMpIHtcblxuICAgIGxpIHtcbiAgICAgIHBhZGRpbmc6IDE1cHggMDtcblxuICAgICAgLnRpdGxlIHtcblxuICAgICAgICBwIHtcbiAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIuYy1wb3N0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICBwaWN0dXJlIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAzMTBweDtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICB9XG5cbiAgaDQge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBsaW5lLWhlaWdodDogMjVweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICB9XG5cbiAgcCB7XG4gICAgY29sb3I6ICRjLXdoaXRlLTcwO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIH1cblxuICBAbWVkaWEgKG1heC13aWR0aDogJGJyLW1kKSB7XG5cbiAgICBwaWN0dXJlIGltZyB7XG4gICAgICBoZWlnaHQ6IDI3MHB4O1xuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkYnIteHMpIHtcblxuICAgIHBpY3R1cmUgaW1nIHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG4gIH1cbn0iLCIuYy1tb2RhbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjLXdoaXRlLTEwO1xuICBtYXgtd2lkdGg6IDYyMHB4O1xuICBwYWRkaW5nOiA1M3B4O1xuXG4uZi1idXR0b24uaXMtY2xvc2UtYnRuIHtcbiAgY29sb3I6ICM4RDhEOEQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB3aWR0aDogNTBweCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDUwcHg7XG4gIHRvcDogNDBweCAhaW1wb3J0YW50O1xuICByaWdodDogNTNweCAhaW1wb3J0YW50O1xuICBib3JkZXI6IDFweCBzb2xpZCAjREFEQURBO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4gICZfX3RpdGxlIHtcbiAgICBjb2xvcjogJGMtd2hpdGUtMTAwO1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBsaW5lLWhlaWdodDogMjVweDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuNDhweDtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICB9XG5cbiAgZm9ybSB7XG5cbiAgICBidXR0b25bdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbi10b3A6IDEycHg7XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRici1zbSkge1xuICAgIG1heC13aWR0aDogOTAlO1xuICAgIHBhZGRpbmc6IDI1cHggMjBweDtcblxuICAgIC5mLWJ1dHRvbi5pcy1jbG9zZS1idG4ge1xuICAgICAgd2lkdGg6IDM1cHggIWltcG9ydGFudDtcbiAgICAgIGhlaWdodDogMzVweDtcbiAgICAgIHJpZ2h0OiAxMHB4ICFpbXBvcnRhbnQ7XG4gICAgICB0b3A6IDEwcHggIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn0iLCIuYy1udW1iZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy13aGl0ZTtcbiAgd2lkdGg6IDE4OHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiA0cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRjLXdoaXRlLTIwO1xuXG4gIGJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0YzRjRGNjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiA0N3B4O1xuICAgIGhlaWdodDogNDdweDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yICR0LWRlbGF5ICR0LWZ1bmN0aW9uO1xuXG4gICAgc3ZnIHBhdGgge1xuICAgICAgd2lsbC1jaGFuZ2U6IHN0cm9rZTtcbiAgICAgIHRyYW5zaXRpb246IHN0cm9rZSAkdC1kZWxheSAkdC1mdW5jdGlvbjtcbiAgICB9XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGMtYmxhY2s7XG5cbiAgICAgIHN2ZyBwYXRoIHtcbiAgICAgICAgc3Ryb2tlOiAkYy13aGl0ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBpbnB1dCB7XG4gICAgY29sb3I6ICRjLXdoaXRlLTYwO1xuICAgIHdpZHRoOiA4MCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuXG4gIGlucHV0Ojotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uLFxuICBpbnB1dDo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIGlucHV0W3R5cGU9J251bWJlciddIHtcbiAgICAtbW96LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkYnIteHMpIHtcbiAgICB3aWR0aDogMTUwcHg7XG5cbiAgICBidXR0b24ge1xuICAgICAgd2lkdGg6IDM3cHg7XG4gICAgICBoZWlnaHQ6IDM3cHg7XG4gICAgfVxuICB9XG59XG4iLCIuaGFtYnVyZ2VyIHtcblxuICAubWVudSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAubGluZSB7XG4gICAgZmlsbDogbm9uZTtcbiAgICBzdHJva2U6ICRjLWJsYWNrO1xuICAgIHN0cm9rZS13aWR0aDogNjtcbiAgICB0cmFuc2l0aW9uOiBzdHJva2UtZGFzaGFycmF5IDYwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSksXG4gICAgc3Ryb2tlLWRhc2hvZmZzZXQgNjAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcbiAgfVxuXG4gIC5saW5lMSB7XG4gICAgc3Ryb2tlLWRhc2hhcnJheTogNjAgMjA3O1xuICAgIHN0cm9rZS13aWR0aDogNjtcbiAgfVxuXG4gIC5saW5lMiB7XG4gICAgc3Ryb2tlLWRhc2hhcnJheTogNjAgNjA7XG4gICAgc3Ryb2tlLXdpZHRoOiA2O1xuICB9XG5cbiAgLmxpbmUzIHtcbiAgICBzdHJva2UtZGFzaGFycmF5OiA2MCAyMDc7XG4gICAgc3Ryb2tlLXdpZHRoOiA2O1xuICB9XG5cbiAgLm9wZW5lZCAubGluZTEge1xuICAgIHN0cm9rZS1kYXNoYXJyYXk6IDkwIDIwNztcbiAgICBzdHJva2UtZGFzaG9mZnNldDogLTEzNDtcbiAgICBzdHJva2Utd2lkdGg6IDY7XG4gIH1cblxuICAub3BlbmVkIC5saW5lMiB7XG4gICAgc3Ryb2tlLWRhc2hhcnJheTogMSA2MDtcbiAgICBzdHJva2UtZGFzaG9mZnNldDogLTMwO1xuICAgIHN0cm9rZS13aWR0aDogNjtcbiAgfVxuXG4gIC5vcGVuZWQgLmxpbmUzIHtcbiAgICBzdHJva2UtZGFzaGFycmF5OiA5MCAyMDc7XG4gICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IC0xMzQ7XG4gICAgc3Ryb2tlLXdpZHRoOiA2O1xuICB9XG59XG4iLCIuYy1iYW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgLnBhdHRlcm4ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5pbm5lciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0Y3RjJFRTtcbiAgICBwYWRkaW5nLXRvcDogODBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogODBweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDEyMHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC5yb3cge1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG5cbiAgICBoMiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xuICAgIH1cblxuICAgIHBpY3R1cmUgaW1nIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgfVxuXG4gICAgcDpub3QoLmNhcHRpb24pIHtcbiAgICAgIGNvbG9yOiAkYy13aGl0ZS03MDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICB9XG4gIH1cblxuICAmLmFsdCB7XG4gICAgcGFkZGluZy10b3A6IDEwMHB4O1xuXG4gICAgLmlubmVyIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxNDBweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxMDBweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEyMHB4O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgIC5wYXR0ZXJuIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICB9XG5cbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudCg4NS43OCUgMjcuNDclIGF0IDUwJSA1MCUsIHJnYmEoMCwgMCwgMCwgMC40MCkgMCUsIHJnYmEoMCwgMCwgMCwgMC4wMCkgMTAwJSksIGxpbmVhci1ncmFkaWVudCgwZGVnLCByZ2JhKDAsIDAsIDAsIDAuMzgpIDAlLCByZ2JhKDAsIDAsIDAsIDAuMzgpIDEwMCUpO1xuICAgICAgfVxuXG4gICAgICAmID4gKiB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICAgIH1cblxuICAgICAgLmNhcHRpb24ge1xuICAgICAgICBjb2xvcjogJGMtd2hpdGU7XG4gICAgICB9XG5cbiAgICAgIGgyIHtcbiAgICAgICAgY29sb3I6ICRjLXdoaXRlO1xuICAgICAgICBmb250LXNpemU6IDY0cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA2NnB4O1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLTEuMjhweDtcbiAgICAgIH1cblxuICAgICAgcDpub3QoLmNhcHRpb24pIHtcbiAgICAgICAgY29sb3I6ICRjLXdoaXRlO1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyNXB4O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRici14bCkge1xuXG4gICAgLmlubmVyIHtcbiAgICAgIHBhZGRpbmctdG9wOiA1MHB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDYwcHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDYwcHg7XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRici1tZCkge1xuXG4gICAgLnBhdHRlcm4ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAuaW5uZXIge1xuICAgICAgcGFkZGluZzogNDBweCA0MHB4IDUwcHg7XG4gICAgfVxuXG4gICAgJi5hbHQge1xuXG4gICAgICAuaW5uZXIge1xuXG4gICAgICAgIHA6bm90KC5jYXB0aW9uKSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkYnItc20pIHtcblxuICAgIC5wYXR0ZXJuIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgJi5hbHQge1xuICAgICAgcGFkZGluZy10b3A6IDYwcHg7XG5cbiAgICAgIC5pbm5lciB7XG4gICAgICAgIHBhZGRpbmc6IDYwcHggNDBweDtcblxuICAgICAgICBoMiB7XG4gICAgICAgICAgZm9udC1zaXplOiAzNnB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC43MnB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRici14cykge1xuXG4gICAgLmlubmVyIHtcbiAgICAgIHBhZGRpbmc6IDQwcHggMjBweDtcbiAgICB9XG5cbiAgICAmLmFsdCB7XG5cbiAgICAgIC5pbm5lciB7XG4gICAgICAgIHBhZGRpbmc6IDQwcHggMjBweDtcblxuICAgICAgICBoMiB7XG4gICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC40OHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59Iiwic2VjdGlvbiB7XG4gICAgcGFkZGluZzogNjBweCAwO1xuXG4gICAgJjpoYXMoLnBhdHRlcm4pIHtcblxuICAgICAgICAuY29udGFpbmVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgIH1cbiAgICB9XG59IiwiZm9ybSB7XG5cbiAgYnIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICBmaWVsZHNldCB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIGxlZ2VuZCB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogMDtcbiAgICAgIHdpZHRoOiAxcHg7XG4gICAgICBoZWlnaHQ6IDFweDtcbiAgICB9XG4gIH1cblxuICAuaW5wdXQtY29udHJvbCB7XG4gICAgcGFkZGluZzogMTBweCAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xuICAgIFxuICAgIHAge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgfVxuICB9XG5cbiAgbGFiZWwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBjb2xvcjogJGMtYmxhY2s7XG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICB9XG5cbiAgaW5wdXQsXG4gIHNlbGVjdCxcbiAgdGV4dGFyZWEge1xuICAgIGNvbG9yOiAkYy1ibGFjaztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy13aGl0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDYzcHg7XG4gICAgcGFkZGluZy1sZWZ0OiAyMXB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRjLXdoaXRlLTQwO1xuICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMnB4KTtcbiAgICB3aWxsLWNoYW5nZTogYm9yZGVyLWNvbG9yO1xuICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAkdC1kZWxheSAkdC1mdW5jdGlvbjtcblxuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiAkYy13aGl0ZS04MDtcbiAgICB9XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkYy1ibGFjaztcbiAgICB9XG4gIH1cblxuICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuXG4gIHNlbGVjdCB7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJy9hcHAvdGhlbWVzL3Zpemlvbi9kaXN0L2ltZy9zZWxlY3QtYXJyb3cuc3ZnJylcbiAgICBjYWxjKDEwMCUgLSAyMHB4KSBjZW50ZXIgbm8tcmVwZWF0ICRjLXdoaXRlO1xuICB9XG5cbiAgdGV4dGFyZWEge1xuICAgIG1pbi1oZWlnaHQ6IDEzNnB4O1xuICAgIHBhZGRpbmctdG9wOiAyM3B4O1xuICB9XG5cbiAgLmN0YSB7XG5cbiAgICBwIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIH1cbiAgfVxufSIsIi5tYWluLWhlYWRlciB7XG4gIHBhZGRpbmc6IDQwcHggMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjLXdoaXRlLTIwO1xuXG4gIC5pbm5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxuXG4gIG5hdi5zaG9wLWluYWN0aXZlIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxuXG4gIHVsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiA0OHB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkYy1ibGFjaztcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZnctbGlnaHQ7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGMtYmxhY2s7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgYm90dG9tOiAtNXB4O1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgIHdpZHRoOiAwO1xuICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgd2lsbC1jaGFuZ2U6IHdpZHRoO1xuICAgICAgICB0cmFuc2l0aW9uOiB3aWR0aCAkdC1kZWxheSAkdC1mdW5jdGlvbjtcbiAgICAgIH1cblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMsXG4gICAgICAmLmFjdGl2ZSB7XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuYWN0aW9ucyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMjdweDtcblxuICAgIGEge1xuXG4gICAgICAmOmhhcyguY291bnQpIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgIC5jb3VudCB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvY291bnQtcG9seWdvbi5zdmcnKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgICAgICAgIGNvbG9yOiAkYy13aGl0ZTtcbiAgICAgICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHJpZ2h0OiAtMTVweDtcbiAgICAgICAgICB0b3A6IC0xNXB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRici1sZykge1xuXG4gICAgdWwge1xuICAgICAgZ2FwOiAyMHB4O1xuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkYnItbWQpIHtcbiAgICBwYWRkaW5nOiAyMHB4IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgbmF2IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy13aGl0ZTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0b3A6IDEwMCU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHotaW5kZXg6IDEwMDtcbiAgICAgIHBhZGRpbmc6IDIwcHggMDtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYy13aGl0ZS0yMDtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYy13aGl0ZS0yMDtcbiAgICB9XG5cbiAgICB1bCB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkYnIteHMpIHtcblxuICAgIC5sb2dvIHtcblxuICAgICAgaW1nIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxNDBweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYWN0aW9ucyB7XG4gICAgICBnYXA6IDEwcHg7XG4gICAgfVxuICB9XG59IiwiLmhlcm8ge1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogNjcwcHg7XG5cbiAgJjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMjcwZGVnLCByZ2JhKDAsIDAsIDAsIDAuMDApMjUuNzglLCByZ2JhKDAsIDAsIDAsIDAuNDApNzYuMjUlKTtcbiAgfVxuXG4gIC5iYWRnZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBib3R0b206IC00MXB4O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICB6LWluZGV4OiAyO1xuICB9XG5cbiAgLmNvdmVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gIH1cblxuICAuaW5uZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB6LWluZGV4OiAyO1xuXG4gICAgaDEge1xuICAgICAgY29sb3I6ICRjLXdoaXRlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICAgIH1cblxuICAgIHAge1xuICAgICAgY29sb3I6ICRjLXdoaXRlO1xuICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDI1cHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5idXR0b25zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiAyNHB4O1xuICAgIG1hcmdpbi10b3A6IDU1cHg7XG4gIH1cblxuICBAbWVkaWEgKG1heC13aWR0aDogJGJyLXhsKSB7XG4gICAgaGVpZ2h0OiA1OTBweDtcbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkYnItbWQpIHtcbiAgICBoZWlnaHQ6IGF1dG87XG5cbiAgICAuY292ZXIge1xuICAgICAgaGVpZ2h0OiA1MDBweDtcbiAgICB9XG4gIH1cblxuICBAbWVkaWEgKG1heC13aWR0aDogJGJyLXhzKSB7XG5cbiAgICAuYmFkZ2Uge1xuICAgICAgbWF4LXdpZHRoOiA0MHB4O1xuICAgICAgYm90dG9tOiAtMjFweDtcbiAgICB9XG5cbiAgICAuY292ZXIge1xuICAgICAgIGhlaWdodDogMzUwcHg7XG4gICAgfVxuICB9XG59IiwiLmltYWdlLXRleHQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy13aGl0ZS0xMDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC5yb3cge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cblxuICAucGF0dGVybiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgJiA+ICoge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xuICB9XG5cbiAgLmltYWdlLFxuICAudGV4dCB7XG4gICAgZmxleC1iYXNpczogNTAlO1xuICB9XG5cbiAgcGljdHVyZSBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICB9XG5cbiAgLnRleHQge1xuICAgIHBhZGRpbmctbGVmdDogNSU7XG4gICAgcGFkZGluZy10b3A6IDUwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDUwcHg7XG4gIH1cblxuICBoMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgfVxuXG4gIHA6bm90KC5jYXB0aW9uKSB7XG4gICAgY29sb3I6ICRjLXdoaXRlLTcwO1xuICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIH1cblxuICBoMSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgfVxuXG4gICY6aGFzKC5pbWFnZSkge1xuICAgIHBhZGRpbmctdG9wOiAxMDBweDtcbiAgfVxuXG4gICY6bm90KDpoYXMoLmltYWdlKSkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjLXdoaXRlO1xuICAgIHBhZGRpbmctdG9wOiA3NXB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA4MHB4O1xuICB9XG5cbiAgLnNpZ25hdHVyZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMTBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuICAgIG1hcmdpbi10b3A6IDQwcHg7XG5cbiAgICAuY2FwdGlvbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuICAgIH1cbiAgfVxuXG4gICY6aGFzKC5zaWduYXR1cmUpIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogODBweDtcbiAgfVxuXG4gICYuY29udGFjdCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGMtd2hpdGU7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG5cbiAgICAuaW1hZ2Uge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICB3aWR0aDogMjgwcHg7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCAjRkZGIDM1LjQzJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAwKSAxMDAlKTtcbiAgICAgICAgcm90YXRlOiAxODBkZWc7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLml0ZW0ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcblxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgICB9XG5cbiAgICAgIGgyIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYy13aGl0ZS0yMDtcbiAgICAgIH1cblxuICAgICAgLmlubmVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBnYXA6IDEwcHg7XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgY29sb3I6ICRjLWJsYWNrO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICBmb250LXdlaWdodDogJGZ3LWxpZ2h0O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNXB4O1xuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjU2cHg7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG5cbiAgICAgICAgICAmOmhhcyhhKSB7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogaW5pdGlhbDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuXG4gICAgICAgICAgICBiciB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgY29sb3I6ICRjLXdoaXRlLTcwO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzcHg7XG4gICAgICAgICAgd2lsbC1jaGFuZ2U6IGNvbG9yO1xuICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yICR0LWRlbGF5ICR0LWZ1bmN0aW9uO1xuXG4gICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgY29sb3I6ICRjLWJsYWNrO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGFkZHJlc3Mge1xuICAgICAgICAgIGNvbG9yOiAkYy13aGl0ZS03MDtcbiAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAbWVkaWEgKG1heC13aWR0aDogJGJyLW1kKSB7XG5cbiAgICAmOm5vdCguY29udGFjdCk6aGFzKC5pbWFnZSk6aGFzKC50ZXh0KSB7XG4gICAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcblxuICAgICAgLmltYWdlLFxuICAgICAgLnRleHQge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZmxleC1iYXNpczogMTAwJTtcbiAgICAgIH1cblxuICAgICAgLmltYWdlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOm5vdCg6aGFzKC5pbWFnZSkpIHtcbiAgICAgIHBhZGRpbmctdG9wOiA1MHB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDUwcHg7XG4gICAgfVxuXG4gICAgLmNvbHVtbjpoYXMoaW1nKTpoYXMoLmMtYnV0dG9uKSB7XG5cbiAgICAgIGltZyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5jb250YWN0IHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgIC5pbWFnZSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBmbGV4LWJhc2lzOiAxMDAlO1xuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnRleHQge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZmxleC1iYXNpczogMTAwJTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0NDBweCkge1xuXG4gICAgJi5jb250YWN0IHtcblxuICAgICAgLml0ZW0ge1xuXG4gICAgICAgIC5pbm5lciB7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi5hcnRpY2xlcyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy10b3A6IDE0MHB4O1xuXG4gIC5wYXR0ZXJuIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gIH1cblxuICAucm93IHtcbiAgICBtYXJnaW4tbGVmdDogLTM5cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMzlweDtcblxuICAgIC5jb2x1bW4ge1xuICAgICAgcGFkZGluZzogMCAzOXB4O1xuICAgIH1cbiAgfVxuXG4gIC5pdGVtIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICBmaWd1cmUge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICBpbWcge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICB9XG5cbiAgICAgIC5tZXRhIHtcbiAgICAgICAgQGluY2x1ZGUgYXJ0aWNsZU1ldGEoKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaW5uZXIge1xuICAgIHBhZGRpbmc6IDM1cHggMTVweCAwO1xuXG4gICAgcCB7XG4gICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICBjb2xvcjogJGMtd2hpdGUtNzA7XG4gICAgICBsaW5lLWhlaWdodDogMjhweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICAgIHN0cm9uZyB7XG4gICAgICAgIGNvbG9yOiAkYy13aGl0ZS0xMDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmN0YSB7XG4gICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICBAbWVkaWEgKG1heC13aWR0aDogJGJyLXhsKSB7XG5cbiAgICAuaW5uZXIge1xuXG4gICAgICBwIHtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjZweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAbWVkaWEgKG1heC13aWR0aDogJGJyLW1kKSB7XG4gICAgcGFkZGluZy10b3A6IDcwcHg7XG5cbiAgICAucGF0dGVybiB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5yb3cge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xNXB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMTVweDtcblxuICAgICAgLmNvbHVtbiB7XG4gICAgICAgICAgcGFkZGluZzogMCAxNXB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5pbm5lciB7XG5cbiAgICAgIHAge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkYnItc20pIHtcblxuICAgIC5pdGVtIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgfVxuXG4gICAgLmN0YSB7XG4gICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIH1cbiAgfVxufSIsIi5zaG9wLXByb2R1Y3RzIHtcblxuICAucm93IHtcbiAgICBtYXJnaW4tbGVmdDogLTNweDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0zcHg7XG5cbiAgICAuY29sdW1uIHtcbiAgICAgIHBhZGRpbmctbGVmdDogM3B4O1xuICAgICAgcGFkZGluZy1yaWdodDogM3B4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzVweDtcbiAgICB9XG4gIH1cblxuICAuaXRlbSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgcGljdHVyZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIC8vYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDBkZWcsIHJnYmEoMCwgMCwgMCwgMC4wMykgMCUsIHJnYmEoMCwgMCwgMCwgMC4wMykgMTAwJSk7XG4gICAgICBtYXJnaW46IDAgMCAzMHB4IDA7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDQ4NXB4O1xuICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgICAgfVxuXG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYy1ibGFjaywgMC4wMyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaDQge1xuICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDI1cHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgIH1cblxuICAgIHAge1xuICAgICAgY29sb3I6ICRjLXdoaXRlLTcwO1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgfVxuICB9XG5cbiAgaDIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIGgxIHtcbiAgICBtYXJnaW4tYm90dG9tOiA3MHB4O1xuICB9XG5cbiAgLmN0YSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMThweDtcblxuICAgIC5jLXByaWNlIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHBhZGRpbmctbGVmdDogMThweDtcblxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0UxRTFFMTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBoZWlnaHQ6IDE3cHg7XG4gICAgICAgIHdpZHRoOiAxcHg7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnRvcC1iYXIge1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG5cbiAgICBwIHtcbiAgICAgIGNvbG9yOiAkYy13aGl0ZS02MDtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZnctbGlnaHQ7XG4gICAgICBsaW5lLWhlaWdodDogMTVweDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjU2cHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5jdGEge1xuICAgIC8vbWFyZ2luLXRvcDogNDVweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBhIHtcbiAgICAgIG1hcmdpbjogYXV0bztcbiAgICB9XG4gIH1cblxuICBAbWVkaWEgKG1heC13aWR0aDogJGJyLXhsKSB7XG5cbiAgICAuaXRlbSB7XG5cbiAgICAgIHBpY3R1cmUgaW1nIHtcbiAgICAgICAgaGVpZ2h0OiAzMDBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIucG9zdC1jYXJvdXNlbCB7XG4gIHBhZGRpbmctdG9wOiA1MHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgJjpoYXMoLnBhdHRlcm4pIHtcbiAgICBwYWRkaW5nLXRvcDogMTA1cHg7XG4gIH1cblxuICAucGF0dGVybiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgaDIge1xuICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gIH1cblxuICAuc3dpcGVyIHtcblxuICAgICYtd3JhcHBlciB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuXG4gICAgJi1zbGlkZSB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG5cbiAgbmF2IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIG1hcmdpbi10b3A6IDU1cHg7XG4gIH1cblxuICAuc3dpcGVyLXBhZ2luYXRpb24ge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiAxNHB4O1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuXG4gICAgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy13aGl0ZS0zMDtcbiAgICAgIHdpZHRoOiA4cHg7XG4gICAgICBoZWlnaHQ6IDhweDtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHdpbGwtY2hhbmdlOiBiYWNrZ3JvdW5kLWNvbG9yO1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAkdC1kZWxheSAkdC1mdW5jdGlvbjtcblxuICAgICAgJi1hY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1ibGFjaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuc3dpcGVyLWJ1dHRvbi1wcmV2LFxuICAuc3dpcGVyLWJ1dHRvbi1uZXh0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHdpZHRoOiA2NXB4O1xuICAgIGhlaWdodDogNjVweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkYy13aGl0ZS00MDtcbiAgICB3aWxsLWNoYW5nZTogYm9yZGVyLWNvbG9yO1xuICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAkdC1kZWxheSAkdC1mdW5jdGlvbjtcblxuICAgIHN2ZyB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIGhlaWdodDogYXV0bztcblxuICAgICAgcGF0aCB7XG4gICAgICAgIHN0cm9rZTogJGMtd2hpdGUtNDA7XG4gICAgICAgIHdpbGwtY2hhbmdlOiBzdHJva2U7XG4gICAgICAgIHRyYW5zaXRpb246IHN0cm9rZSAkdC1kZWxheSAkdC1mdW5jdGlvbjtcbiAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgJjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6ICRjLWJsYWNrO1xuXG4gICAgICBzdmcgcGF0aCB7XG4gICAgICAgIHN0cm9rZTogJGMtYmxhY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmFycm93cyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMTJweDtcbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkYnItc20pIHtcblxuICAgICY6aGFzKC5wYXR0ZXJuKSB7XG4gICAgICBwYWRkaW5nLXRvcDogNTBweDtcblxuICAgICAgLnBhdHRlcm4ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5zd2lwZXItYnV0dG9uLXByZXYsXG4gICAgLnN3aXBlci1idXR0b24tbmV4dCB7XG4gICAgICB3aWR0aDogNTBweDtcbiAgICAgIGhlaWdodDogNTBweDtcbiAgICB9XG5cbiAgICAuc3dpcGVyLXBhZ2luYXRpb24ge1xuICAgICAgZ2FwOiA3cHg7XG4gICAgfVxuICB9XG59IiwiLmV2ZW50cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjLXdoaXRlLTEwO1xuICBwYWRkaW5nLXRvcDogNjBweDtcbiAgcGFkZGluZy1ib3R0b206IDYwcHg7XG4gIFxuICBoMiB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgLnJvdyB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xM3B4O1xuICAgIG1hcmdpbi1yaWdodDogLTEzcHg7XG5cbiAgICAuY29sdW1uIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMTNweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEzcHg7XG4gICAgfVxuICB9XG5cbiAgLml0ZW0ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgZmlndXJlIHtcbiAgICAgIG1hcmdpbjogMCAwIDIwcHggMDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zNSk7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgJHQtZGVsYXkgJHQtZnVuY3Rpb247XG4gICAgICB9XG5cbiAgICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDMwMHB4O1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIH1cblxuICAgICAgdGltZSB7XG4gICAgICAgIGNvbG9yOiAkYy1ibGFjaztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGMtd2hpdGU7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMTRweDtcbiAgICAgICAgYm90dG9tOiAxMnB4O1xuICAgICAgICBwYWRkaW5nOiA1cHggN3B4O1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMS42OHB4O1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgfVxuICAgIH1cblxuICAgIGg1IHtcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjM2cHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG5cbiAgICAgIGZpZ3VyZTpiZWZvcmUge1xuICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpoYXMocCkge1xuXG4gICAgICBoNSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gICAgICB9XG5cbiAgICAgIHAge1xuICAgICAgICBjb2xvcjogJGMtd2hpdGUtNzA7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY3RhIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkYnIteGwpIHtcblxuICAgIC5pdGVtIHtcblxuICAgICAgZmlndXJlIGltZyB7XG4gICAgICAgIGhlaWdodDogMjUwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy9AbWVkaWEgKG1heC13aWR0aDogJGJyLXNtKSB7XG4gIC8vXG4gIC8vICAuaXRlbSB7XG4gIC8vXG4gIC8vICAgIGZpZ3VyZSBpbWcge1xuICAvLyAgICAgIGhlaWdodDogYXV0bztcbiAgLy8gICAgfVxuICAvLyAgfVxuICAvL31cbn0iLCIubmV3c2xldHRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjLXdoaXRlLTEwO1xuXG4gIGgzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgZm9ybSB7XG5cbiAgICAuaW5wdXQtY29udHJvbCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgICBnYXA6IDEwcHg7XG5cbiAgICAgIGlucHV0IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRici1tZCkge1xuICAgIHBhZGRpbmc6IDM1cHggMDtcbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkYnIteHMpIHtcblxuICAgIGZvcm0ge1xuXG4gICAgICAuaW5wdXQtY29udHJvbCB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIuaW5zdGFncmFtIHtcbiAgcGFkZGluZy1ib3R0b206IDA7XG5cbiAgaDIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xuXG4gICAgYSB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cblxuICAuaXRlbXMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiA1cHg7XG4gICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gICAgcGFkZGluZy1yaWdodDogNXB4O1xuXG4gICAgYSB7XG4gICAgICBmbGV4LWJhc2lzOiBjYWxjKDEwMCUgLyA1KTtcblxuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMzAwcHg7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkYnIteGwpIHtcblxuICAgIC5pdGVtcyB7XG5cbiAgICAgIGEge1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgaGVpZ2h0OiAyNDBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkYnItbWQpIHtcblxuICAgIC5pdGVtcyB7XG5cbiAgICAgIGEge1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBoZWlnaHQ6IDE4MHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRici1zbSkge1xuXG4gICAgLml0ZW1zIHtcblxuICAgICAgYSB7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIGhlaWdodDogMTIwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAbWVkaWEgKG1heC13aWR0aDogJGJyLXhzKSB7XG5cbiAgICAuaXRlbXMge1xuXG4gICAgICBhOm50aC1sYXN0LWNoaWxkKC1uKzIpIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICBhIHtcbiAgICAgICAgZmxleC1iYXNpczogY2FsYygxMDAlIC8gMyk7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgaGVpZ2h0OiAxMjBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi53b3JkcyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjLXdoaXRlLTEwO1xuICBwYWRkaW5nLXRvcDogNjBweDtcbiAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYy13aGl0ZS0yMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjLXdoaXRlLTIwO1xuXG4gIC5pbm5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZ2FwOiAyMHB4O1xuXG4gICAgYSB7XG4gICAgICBjb2xvcjogJGMtYmxhY2s7XG4gICAgICBmb250LXdlaWdodDogJGZ3LWxpZ2h0O1xuICAgICAgZmxleC1iYXNpczogY2FsYygxMDAlIC8gMyAtIDE1cHgpO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkYnIteHMpIHtcbiAgICBwYWRkaW5nLXRvcDogMzBweDtcblxuICAgIC5pbm5lciB7XG4gICAgICBnYXA6IDEwcHg7XG5cbiAgICAgIGEge1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQ0MHB4KSB7XG5cbiAgICAuaW5uZXIge1xuXG4gICAgICBhIHtcbiAgICAgICAgZmxleC1iYXNpczogY2FsYygxMDAlIC8gMiAtIDEwcHgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi5hcnRpY2xlLWxpc3Rpbmcge1xuICBwYWRkaW5nLXRvcDogNzBweDtcbiAgcGFkZGluZy1ib3R0b206IDUwcHg7XG5cbiAgLnJvdyB7XG4gICAgbWFyZ2luLWxlZnQ6IC0zcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAtM3B4O1xuXG4gICAgLmNvbHVtbiB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDNweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDNweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDZweDtcbiAgICB9XG4gIH1cblxuICBhIHtcblxuICAgIGZpZ3VyZSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBoZWlnaHQ6IDQwMHB4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICBpbWcge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubWV0YSB7XG4gICAgICBAaW5jbHVkZSBhcnRpY2xlTWV0YSgpO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgYm90dG9tOiAxcHg7XG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5ICR0LWRlbGF5ICR0LWZ1bmN0aW9uO1xuICAgIH1cblxuICAgIC5ob3ZlciB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjLXdoaXRlO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTJweCk7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEycHgpO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgd2lsbC1jaGFuZ2U6IG9wYWNpdHk7XG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5ICR0LWRlbGF5ICR0LWZ1bmN0aW9uO1xuXG4gICAgICBzcGFuIHtcbiAgICAgICAgY29sb3I6ICRjLWJsYWNrO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDEuNjhweDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgIH1cblxuICAgICAgaDMge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG5cbiAgICAgIC5tZXRhIHtcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgfVxuXG4gICAgICAuaG92ZXIge1xuICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRici14bCkge1xuXG4gICAgYSB7XG5cbiAgICAgIGZpZ3VyZSB7XG4gICAgICAgIGhlaWdodDogMzAwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRici14cykge1xuXG4gICAgYSB7XG5cbiAgICAgIGZpZ3VyZSB7XG4gICAgICAgIGhlaWdodDogYXV0bztcblxuICAgICAgICBpbWcge1xuICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi50ZXh0IHtcblxuICAucm93IHtcbiAgICBtYXJnaW4tbGVmdDogLTQ1cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAtNDVweDtcblxuICAgIC5jb2x1bW4ge1xuICAgICAgcGFkZGluZy1sZWZ0OiA0NXB4O1xuICAgICAgcGFkZGluZy1yaWdodDogNDVweDtcbiAgICB9XG4gIH1cblxuICAuY2FwdGlvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgfVxuXG4gIGgyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICB9XG5cbiAgcDpub3QoLmNhcHRpb24pIHtcbiAgICBjb2xvcjogJGMtd2hpdGUtNzA7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICB9XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRici14bCkge1xuXG4gICAgcDpub3QoLmNhcHRpb24pIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkYnItbWQpIHtcbiAgICBwYWRkaW5nOiAzMHB4IDA7XG5cbiAgICAucm93IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0xNXB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xNXB4O1xuXG4gICAgICAuY29sdW1uIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi50ZXh0LWFsdCB7XG4gIHBhZGRpbmctdG9wOiAxMDBweDtcbiAgcGFkZGluZy1ib3R0b206IDM1cHg7XG5cbiAgaDMge1xuICAgIG1hcmdpbi1ib3R0b206IDI4cHg7XG4gIH1cblxuICBAbWVkaWEgKG1heC13aWR0aDogJGJyLW1kKSB7XG4gICAgcGFkZGluZy10b3A6IDUwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDUwcHg7XG4gIH1cbn0iLCIucG9zdHMge1xuXG4gIGg0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAyN3B4O1xuICB9XG5cbiAgLnJvdyB7XG4gICAgbWFyZ2luLWxlZnQ6IC0yOHB4O1xuICAgIG1hcmdpbi1yaWdodDogLTI4cHg7XG5cbiAgICAuY29sdW1uIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMjhweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDI4cHg7XG4gICAgfVxuICB9XG5cbiAgYXJ0aWNsZSB7XG5cbiAgICBwaWN0dXJlIHtcblxuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMjAwcHg7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIHAge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNnB4O1xuXG4gICAgICBzdHJvbmcge1xuICAgICAgICBjb2xvcjogJGMtd2hpdGUtMTAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkYnItbWQpIHtcblxuICAgIGFydGljbGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcblxuICAgICAgcGljdHVyZSB7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIucHJvZHVjdC1kZXRhaWwge1xuXG4gIC5nYWxsZXJ5IHtcblxuICAgIC5zd2lwZXIge1xuXG4gICAgICAuc3dpcGVyLXdyYXBwZXIge1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG5cbiAgICAgICAgLnN3aXBlci1zbGlkZSB7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYy1ibGFjaywgMC4wMyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJl9fbWFpbiB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDZweDtcblxuICAgICAgLnN3aXBlci1zbGlkZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgICBwaWN0dXJlIGltZyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiA0NTBweDtcbiAgICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJl9fdGh1bWJzIHtcblxuICAgICAgLnN3aXBlci1wYWdpbmF0aW9uIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGdhcDogMTRweDtcbiAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuXG4gICAgICAgIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICAgICAgICAgIHdpZHRoOiA4cHg7XG4gICAgICAgICAgaGVpZ2h0OiA4cHg7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgICAgJi1hY3RpdmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGMtYmxhY2s7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmNhcHRpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIH1cblxuICBoMSB7XG4gICAgZm9udC1zaXplOiA0MHB4O1xuICAgIGxpbmUtaGVpZ2h0OiA0MXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjhweDtcbiAgfVxuXG4gIC5wcmljZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29sb3I6ICRjLWJsYWNrO1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBmb250LXdlaWdodDogJGZ3LXNlbWlib2xkO1xuICAgIGxpbmUtaGVpZ2h0OiAyN3B4O1xuICAgIG1hcmdpbi1ib3R0b206IDE4cHg7XG4gIH1cblxuICAuYWN0aW9ucyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IDEwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNTVweDtcbiAgfVxuXG4gIC5hdXRob3Ige1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDMycHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcblxuICAgIHBpY3R1cmUge1xuICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiAxMTRweDtcbiAgICAgIGhlaWdodDogMTE0cHg7XG4gICAgfVxuXG4gICAgaDMge1xuICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgICBsZXR0ZXItc3BhY2luZzogLTAuNDhweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgIGNvbG9yOiAkYy13aGl0ZS03MDtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZnctbGlnaHQ7XG4gICAgICBsaW5lLWhlaWdodDogMTVweDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjU2cHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIH1cbiAgfVxuXG4gIC5kZXNjcmlwdGlvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgIHAge1xuICAgICAgY29sb3I6ICRjLXdoaXRlLTcwO1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICB9XG5cbiAgICAubW9yZS1jb250ZW50IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLnRvZ2dsZS1kZXNjcmlwdGlvbiB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGdhcDogMnB4O1xuICAgICAgY29sb3I6ICRjLWJsYWNrO1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgZm9udC13ZWlnaHQ6ICRmdy1saWdodDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjU2cHg7XG4gICAgICBsaW5lLWhlaWdodDogMTVweDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIC8vbWFyZ2luLXRvcDogMzJweDtcblxuICAgICAgLmxlc3Mge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICAmLmFjdGl2ZSB7XG5cbiAgICAgICAgLm1vcmUge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAubGVzcyB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICB9XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICByb3RhdGU6IDE4MGRlZztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkYnItbWQpIHtcblxuICAgIC5nYWxsZXJ5IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRici14cykge1xuICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuXG4gICAgaDEge1xuICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDMxcHg7XG4gICAgfVxuXG4gICAgLmdhbGxlcnkge1xuXG4gICAgICAmX19tYWluIHtcblxuICAgICAgICAuc3dpcGVyLXNsaWRlIHtcblxuICAgICAgICAgIHBpY3R1cmUgaW1nIHtcbiAgICAgICAgICAgIGhlaWdodDogMzAwcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLmltYWdlcyB7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogNTBweDtcblxuICAucm93IHtcbiAgICBtYXJnaW4tbGVmdDogLTQ1cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAtNDVweDtcblxuICAgIC5jb2x1bW4ge1xuICAgICAgcGFkZGluZy1sZWZ0OiA0NXB4O1xuICAgICAgcGFkZGluZy1yaWdodDogNDVweDtcbiAgICB9XG4gIH1cblxuICBhcnRpY2xlIHtcbiAgICBtYXJnaW4tYm90dG9tOiA3MHB4O1xuXG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBjb2xvcjogJGMtd2hpdGUtNzA7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgbWFyZ2luLXRvcDogMTJweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG59IiwiLnRleHQtYmxvY2sge1xuXG4gIGgxLFxuICBoMixcbiAgaDMsXG4gIGg0LFxuICBoNSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgfVxuXG4gIG9sIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBjb3VudGVyLXJlc2V0OiBzZWN0aW9uO1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblxuICAgIGxpOm5vdCh1bCBsaSksXG4gICAgbGk6bm90KG9sIGxpKSB7XG4gICAgICBjb2xvcjogJGMtd2hpdGUtMTAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cblxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiAkYy13aGl0ZS0xMDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjLXdoaXRlLTIwO1xuICAgICAgICB3aWR0aDogNDFweDtcbiAgICAgICAgaGVpZ2h0OiA0MXB4O1xuICAgICAgICBjb3VudGVyLWluY3JlbWVudDogc2VjdGlvbjtcbiAgICAgICAgY29udGVudDogY291bnRlcnMoc2VjdGlvbiwgXCIuXCIpIFwiLiBcIjtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIGxpIHtcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcblxuICAgICAgb2wge1xuICAgICAgICBsaXN0LXN0eWxlOiBkZWNpbWFsO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG4gICAgICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNHB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuXG4gICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgdWwge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDUwcHg7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxNHB4O1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICB0ZXh0LWluZGVudDogLTIycHg7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE0cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG5cbiAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAn4oCiJztcbiAgICAgICAgICAgIGNvbG9yOiAkYy1ibGFjaztcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAbWVkaWEgKG1heC13aWR0aDogJGJyLXhzKSB7XG5cbiAgICBvbCB7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi5vcmRlci1mb3JtIHtcbiAgcGFkZGluZy10b3A6IDgwcHg7XG5cbiAgLnByb2R1Y3Qge1xuXG4gICAgZmlndXJlIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDQxMHB4O1xuICAgICAgbWFyZ2luOiAwIDAgMzJweCAwO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYy1ibGFjaywgMC4wMyk7XG4gICAgICB9XG5cbiAgICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgICB9XG4gICAgfVxuXG4gICAgaDQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgIGNvbG9yOiAkYy13aGl0ZS03MDtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICB9XG5cbiAgLmZvcm0td3JhcHBlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGMtd2hpdGUtMTA7XG4gICAgcGFkZGluZzogNTRweDtcblxuICAgIGg0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEycHg7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBjb2xvcjogJGMtd2hpdGUtNzA7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICB9XG5cbiAgICBidXR0b25bdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbi10b3A6IDEycHg7XG4gICAgfVxuICB9XG5cbiAgLm5vdC1mb3VuZCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRici1tZCkge1xuXG4gICAgLnByb2R1Y3Qge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICB9XG5cbiAgICAuZm9ybS13cmFwcGVyIHtcbiAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRici14cykge1xuICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuXG4gICAgLmZvcm0td3JhcHBlciB7XG4gICAgICBwYWRkaW5nOiAyMHB4O1xuICAgIH1cbiAgfVxufSIsIi5ibG9nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLXRvcDogOTJweDtcblxuICAucGF0dGVybiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgaDEge1xuICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gIH1cblxuICAuYy1wb3N0IHtcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICB9XG5cbiAgLmMtcGFnaW5hdGlvbiB7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgfVxuXG4gICYtZGV0YWlsIHtcblxuICAgIHRpbWUge1xuICAgICAgY29sb3I6ICRjLWJsYWNrO1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgZm9udC13ZWlnaHQ6ICRmdy1saWdodDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxNXB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMC41NnB4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgfVxuXG4gICAgaDEge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzVweDtcbiAgICB9XG5cbiAgICBpbWcuZmVhdHVyZWQge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRici14cykge1xuICAgIHBhZGRpbmctdG9wOiA1MHB4O1xuICB9XG59IiwiLmJlbmVmaXRzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGMtd2hpdGUtMTA7XG4gIHBhZGRpbmctdG9wOiAxMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDEwMHB4O1xuXG4gIGgzIHtcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICB9XG5cbiAgLnJvdyB7XG4gICAgbWFyZ2luLWxlZnQ6IC0yOHB4O1xuICAgIG1hcmdpbi1yaWdodDogLTI4cHg7XG5cbiAgICAuY29sdW1uIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMjhweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDI4cHg7XG4gICAgfVxuICB9XG5cbiAgYXJ0aWNsZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBnYXA6IDE3cHg7XG5cbiAgICBwaWN0dXJlIHtcbiAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIH1cblxuICAgIHAge1xuICAgICAgY29sb3I6ICRjLXdoaXRlLTcwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogNnB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG5cbiAgICAgIHN0cm9uZyB7XG4gICAgICAgIGNvbG9yOiAkYy13aGl0ZS0xMDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRici1tZCkge1xuICAgIHBhZGRpbmctdG9wOiA1MHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuXG4gICAgLmNvbHVtbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIH1cbiAgfVxufSIsIi52LWNhcnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctdG9wOiA4MHB4O1xuXG4gIC5wYXR0ZXJuIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICBoMSB7XG4gICAgZm9udC1zaXplOiA0MHB4O1xuICAgIGxpbmUtaGVpZ2h0OiA0MnB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAtMC44cHg7XG4gIH1cblxuICBoNCB7XG4gICAgY29sb3I6ICRjLWJsYWNrO1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBsaW5lLWhlaWdodDogMjVweDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuNDhweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICB9XG5cbiAgJl9fbmF2IHtcblxuICAgIHVsIHtcbiAgICAgIG1heC13aWR0aDogODAwcHg7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuXG4gICAgICBsaSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cblxuICAgICAgYSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIH1cblxuICAgICAgLm51bWJlciB7XG4gICAgICAgIGNvbG9yOiAkYy13aGl0ZS04MDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGMtd2hpdGUtMjA7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZnctc2VtaWJvbGQ7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgd2lkdGg6IDQ0cHg7XG4gICAgICAgIGhlaWdodDogNDRweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjRTlFOUU5O1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICBsZWZ0OiAxMDAlO1xuICAgICAgICAgIHdpZHRoOiAzMzBweDtcbiAgICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBzcGFuIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNvbG9yOiAkYy13aGl0ZS01MDtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBmb250LXdlaWdodDogJGZ3LXJlZ3VsYXI7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgfVxuXG4gICAgICBsaS5hY3RpdmUge1xuXG4gICAgICAgIC5udW1iZXIge1xuICAgICAgICAgIGNvbG9yOiAkYy13aGl0ZTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1ibGFjaztcbiAgICAgICAgfVxuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIGNvbG9yOiAkYy1ibGFjaztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBsaTpsYXN0LWNoaWxkIHtcblxuICAgICAgICAubnVtYmVyIHtcblxuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX19wcm9kdWN0cyB7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcblxuICAgIHVsIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBwYWRkaW5nOiAzMHB4IDA7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRTlFOUU5O1xuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAubGVmdCxcbiAgICAgIC5yaWdodCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICB9XG5cbiAgICAgIC50aHVtYiB7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjQzLCAyNDMsIDI0MywgMC42KTtcbiAgICAgICAgd2lkdGg6IDE2NHB4O1xuICAgICAgICBoZWlnaHQ6IDE2M3B4O1xuICAgICAgICBwYWRkaW5nOiAyNHB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDM0cHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDMpO1xuICAgICAgICB9XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAubmFtZSB7XG4gICAgICAgIGNvbG9yOiAkYy1ibGFjaztcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmZi10aXRsZTtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMTlweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogN3B4O1xuICAgICAgfVxuXG4gICAgICAucHJpY2Uge1xuICAgICAgICBjb2xvcjogJGMtYmxhY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmdy1zZW1pYm9sZDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI3cHg7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cblxuICAgICAgLnByaWNlLXdyYXBwZXIge1xuICAgICAgICBtYXJnaW4tbGVmdDogODBweDtcblxuICAgICAgICBzcGFuOm5vdCgud29vY29tbWVyY2UtUHJpY2UtY3VycmVuY3lTeW1ib2wpIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgIC5jdXJyZW50IHtcbiAgICAgICAgICBjb2xvcjogJGMtYmxhY2s7XG4gICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZnctc2VtaWJvbGQ7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDI3cHg7XG4gICAgICAgIH1cblxuICAgICAgICAub2xkIHtcbiAgICAgICAgICBjb2xvcjogcmdiYSgjMzY0MTNlLCAwLjIpO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZnctc2VtaWJvbGQ7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnJlbW92ZS1jYXJ0LWl0ZW0ge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIHdpZHRoOiAzM3B4O1xuICAgICAgICBoZWlnaHQ6IDMzcHg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNEQURBREE7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA1MHB4O1xuICAgICAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgJHQtZGVsYXkgJHQtZnVuY3Rpb24sXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAkdC1kZWxheSAkdC1mdW5jdGlvbjtcblxuICAgICAgICBzdmcgcGF0aCB7XG4gICAgICAgICAgd2lsbC1jaGFuZ2U6IGZpbGw7XG4gICAgICAgICAgdHJhbnNpdGlvbjogZmlsbCAkdC1kZWxheSAkdC1mdW5jdGlvbjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjLWJsYWNrO1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGMtYmxhY2s7XG5cbiAgICAgICAgICBzdmcgcGF0aCB7XG4gICAgICAgICAgICBmaWxsOiAkYy13aGl0ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX19zdW1tYXJ5IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDQ4MHB4O1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi10b3A6IDMycHg7XG5cbiAgICB0YWJsZSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQ6ICRjLXdoaXRlO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2U2ZTZlNjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICBwYWRkaW5nOiAxOHB4IDI0cHg7XG5cbiAgICAgIHRkIHtcbiAgICAgICAgY29sb3I6ICRjLXdoaXRlLTYwO1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZnctcmVndWxhcjtcbiAgICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcblxuICAgICAgICBzdHJvbmcge1xuICAgICAgICAgIGNvbG9yOiAkYy13aGl0ZS0xMDA7XG4gICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZnctc2VtaWJvbGQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgdHIgdGQ6bGFzdC1jaGlsZCB7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5jLWJ1dHRvbiB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAmX19mb3JtIHtcbiAgICBtYXJnaW4tdG9wOjYwcHg7XG5cbiAgICAmLWlubmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjLXdoaXRlLTEwO1xuICAgICAgcGFkZGluZzogNDVweCA2MHB4O1xuICAgIH1cblxuICAgIC5jLWNoZWNrYm94IHtcbiAgICAgIHBhZGRpbmc6IDVweCAwO1xuICAgIH1cblxuICAgIGJ1dHRvblt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgfVxuXG4gICAgLmRlbGl2ZXJ5LXdyYXBwZXIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzVweDtcbiAgICB9XG4gIH1cblxuICAmX19iYWNrIHtcbiAgICBtYXJnaW4tdG9wOiAzNXB4O1xuICB9XG5cbiAgJl9fZW1wdHkge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIC5wYXltZW50LXdyYXBwZXIsXG4gIC5kZWxpdmVyeS13cmFwcGVyIHtcbiAgICBtYXJnaW4tdG9wOiA1NHB4O1xuXG4gICAgLmJveCB7XG4gICAgICBwYWRkaW5nOiAyN3B4IDIwcHg7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkYy13aGl0ZS0yMDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG4gIH1cblxuICAucGF5bWVudC13cmFwcGVyIHtcbiAgICBtYXJnaW4tdG9wOiAzM3B4O1xuICAgIG1hcmdpbi1ib3R0b206IDM1cHg7XG4gIH1cblxuICBidXR0b25bdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAmX19zdWNjZXNzIHtcbiAgICBtYXJnaW4tdG9wOiAxMTBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcblxuICAgICYtY29udGVudCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgaDEge1xuICAgICAgICBmb250LXNpemU6IDU2cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA1OHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyN3B4O1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLTEuMTJweDtcbiAgICAgIH1cblxuICAgICAgcCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMycHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRici1sZykge1xuXG4gICAgJl9fbmF2IHtcblxuICAgICAgdWwge1xuXG4gICAgICAgIC5udW1iZXI6YWZ0ZXIge1xuICAgICAgICAgIHdpZHRoOiAzMjBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkYnItbWQpIHtcblxuICAgICZfX25hdiB7XG5cbiAgICAgIHVsIHtcblxuICAgICAgICAubnVtYmVyOmFmdGVyIHtcbiAgICAgICAgICB3aWR0aDogMjcwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX19wcm9kdWN0cyB7XG5cbiAgICAgIHVsIHtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgICBnYXA6IDE1cHg7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB9XG5cbiAgICAgICAgLnJpZ2h0IHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAgICAgICB9XG5cbiAgICAgICAgLnJlbW92ZS1jYXJ0LWl0ZW0ge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICByaWdodDogMTBweDtcbiAgICAgICAgICB0b3A6IDMwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAucHJpY2Utd3JhcHBlciB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX19mb3JtIHtcblxuICAgICAgJi1pbm5lciB7XG4gICAgICAgIHBhZGRpbmc6IDM1cHggNDBweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAucGF5bWVudC13cmFwcGVyLFxuICAgIC5kZWxpdmVyeS13cmFwcGVyIHtcblxuICAgICAgLmJveCB7XG4gICAgICAgIHBhZGRpbmc6IDE3cHggMjBweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZGVsaXZlcnktd3JhcHBlciB7XG4gICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIH1cblxuICAgICZfX3N1Y2Nlc3Mge1xuICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuXG4gICAgICAmLWNvbnRlbnQge1xuXG4gICAgICAgIGgxIHtcbiAgICAgICAgICBmb250LXNpemU6IDQwcHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDQycHg7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkYnItc20pIHtcblxuICAgICZfX25hdiB7XG5cbiAgICAgIHVsIHtcblxuICAgICAgICAubnVtYmVyOmFmdGVyIHtcbiAgICAgICAgICB3aWR0aDogMTkwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAbWVkaWEgKG1heC13aWR0aDogJGJyLXhzKSB7XG5cbiAgICAmX19uYXYge1xuXG4gICAgICB1bCB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBnYXA6IDEwcHg7XG5cbiAgICAgICAgLm51bWJlcjphZnRlciB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX19wcm9kdWN0cyB7XG5cbiAgICAgIHVsIHtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgcGFkZGluZzogMTVweCAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLmxlZnQge1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAgICAgfVxuXG4gICAgICAgIC50aHVtYiB7XG4gICAgICAgICAgd2lkdGg6IDEyMHB4O1xuICAgICAgICAgIGhlaWdodDogMTIwcHg7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAucmVtb3ZlLWNhcnQtaXRlbSB7XG4gICAgICAgICAgdG9wOiAxNXB4O1xuICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi5lcnJvciB7XG4gIHBhZGRpbmc6IDEwMHB4IDA7XG5cbiAgLmlubmVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBoMSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIH1cblxuICAgIGgyIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIH1cbiAgfVxufSIsIi5tYWluLWZvb3RlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAucGF0dGVybiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgaDYge1xuICAgIGZvbnQtZmFtaWx5OiAkZmYtYm9keTtcbiAgICBjb2xvcjogJGMtYmxhY2s7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGZvbnQtd2VpZ2h0OiAkZnctYm9sZDtcbiAgICBsZXR0ZXItc3BhY2luZzogMS45NnB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbWFyZ2luLWJvdHRvbTogMTRweDtcbiAgfVxuXG4gICZfX2lubmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy13aGl0ZTtcbiAgICBwYWRkaW5nLXRvcDogOTBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNjBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcblxuICAgIHVsIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuXG4gICAgICBsaSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE4cHg7XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogJGMtYmxhY2s7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNXB4O1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC41NnB4O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc29jaWFscyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGdhcDogMTJweDtcbiAgICAgIG1hcmdpbi10b3A6IDM1cHg7XG4gICAgfVxuXG4gICAgYTpoYXMoLmljb24pIHtcbiAgICAgIGNvbG9yOiAjMzk0MDRCO1xuICAgICAgZm9udC13ZWlnaHQ6ICRmdy1zZW1pYm9sZDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgZ2FwOiAxM3B4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogOXB4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IGluaXRpYWw7XG5cbiAgICAgIC5pY29uIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB3aWR0aDogMzZweDtcbiAgICAgICAgaGVpZ2h0OiAzNnB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNFN0VBRUU7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZfX2xvY2F0aW9ucyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGMtd2hpdGUtMTA7XG4gICAgcGFkZGluZy10b3A6IDQ1cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDEwNXB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgaDYge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICB9XG5cbiAgICBhZGRyZXNzIHtcbiAgICAgIGNvbG9yOiAkYy13aGl0ZS03MDtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG5cbiAgICAgIHN0cm9uZyB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgY29sb3I6ICRjLWJsYWNrO1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZnctbGlnaHQ7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjU2cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDhweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubWFwLXdyYXBwZXIge1xuICAgICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogLTE1MHB4O1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgIGltZyB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJl9fY29weXJpZ2h0IHtcbiAgICBwYWRkaW5nLXRvcDogMjFweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjFweDtcblxuICAgIC5pbm5lciB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cbiAgICAgIHAge1xuICAgICAgICBjb2xvcjogJGMtd2hpdGUtNDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICB3aWxsLWNoYW5nZTogY29sb3I7XG4gICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgJHQtZGVsYXkgJHQtZnVuY3Rpb247XG5cbiAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgY29sb3I6ICRjLWJsYWNrO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkYnItbWQpIHtcblxuICAgICZfX2lubmVyIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHBhZGRpbmctdG9wOiA2MHB4O1xuXG4gICAgICAuc29jaWFscyB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgfVxuXG4gICAgICAuY29sdW1uIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAgIH1cblxuICAgICAgYTpoYXMoLmljb24pIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJl9fbG9jYXRpb25zIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA0NXB4O1xuXG4gICAgICAubWFwLXdyYXBwZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkYnItc20pIHtcblxuICAgICZfX2lubmVyIHtcbiAgICAgIHBhZGRpbmctdG9wOiAzNXB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRici14cykge1xuXG4gICAgJl9fbG9jYXRpb25zIHtcbiAgICAgIHBhZGRpbmctdG9wOiAzMHB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7XG5cbiAgICAgIGg2IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuXG4gICAgICAuY29sdW1uIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgICZfX2NvcHlyaWdodCB7XG5cbiAgICAgIC5pbm5lciB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIkBtZWRpYSAoIG1heC13aWR0aDogJGJyLWxnICkge1xuXG4gICAgLmhpZGRlbi1sZy1kb3duIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuQG1lZGlhICggbWluLXdpZHRoOiAkYnItbGcgKSB7XG5cbiAgICAuaGlkZGVuLWxnLXVwIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuQG1lZGlhICggbWF4LXdpZHRoOiAkYnItbWQgKSB7XG5cbiAgICAuaGlkZGVuLW1kLWRvd24ge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG5AbWVkaWEgKCBtaW4td2lkdGg6ICRici1tZCApIHtcblxuICAgIC5oaWRkZW4tbWQtdXAge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG5AbWVkaWEgKCBtYXgtd2lkdGg6ICRici1zbSApIHtcblxuICAgIC5oaWRkZW4tc20tZG93biB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbkBtZWRpYSAoIG1pbi13aWR0aDogJGJyLXNtICkge1xuXG4gICAgLmhpZGRlbi1zbS11cCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbkBtZWRpYSAoIG1heC13aWR0aDogJGJyLXhzICkge1xuXG4gICAgLmhpZGRlbi14cy1kb3duIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuQG1lZGlhICggbWluLXdpZHRoOiAkYnIteHMgKSB7XG5cbiAgICAuaGlkZGVuLXhzLXVwIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuIl19 */
