/*!************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??clonedRuleSet-2.use[1]!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-2.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-2.use[3]!./frontend/themes/white/assets/sass/single-page-checkout.scss ***!
  \************************************************************************************************************************************************************************************************************************************************************************/
.shipping-info-label a {
  color: var(--brand-color);
}

.premium-shipping-label-info {
  padding: 1rem 0 0 2.3rem;
  display: inline-block;
}

.premium-shipping-popup {
  background-color: #fff;
  color: #000;
  width: 56rem;
  max-width: 100%;
  max-height: 100%;
  overflow-x: auto;
  padding: 2rem;
  height: 34rem;
}
@media (min-width: 980px) {
  .premium-shipping-popup {
    height: 28rem;
  }
}
.premium-shipping-popup button.icon-close:before {
  font-size: 1.5rem;
}
.premium-shipping-popup .content {
  clear: both;
  text-align: center;
}
.premium-shipping-popup .content p {
  font-size: 1.7rem;
  line-height: 2.6rem;
}

@keyframes rotate {
  to {
    transform: rotateZ(360deg);
  }
}
.spc-container aside {
  background: #fff;
  line-height: 2;
  padding: 3.6rem;
}
@media (max-width: 760px) {
  .spc-container aside {
    order: -1;
    overflow: hidden;
    padding: 0 1rem;
  }
}
.spc-container aside > * {
  max-width: 45rem;
  margin: auto;
}
.spc-container aside count-down-checkout:not(:empty):not([hidden]) {
  background-color: black;
  text-align: center;
  display: block;
  color: white;
  text-transform: uppercase;
  line-height: 1.3;
  padding: 1rem;
  margin: 2rem auto 1rem;
}
@media (min-width: 760px) {
  .spc-container aside count-down-checkout:not(:empty):not([hidden]) {
    margin: 0 auto;
  }
}
.spc-container aside count-down-checkout:not(:empty):not([hidden]) time {
  font-family: "archivo-bold", "semibold-fallback", arial;
}
.spc-container aside .headline-medium-section {
  text-transform: uppercase;
  font-size: 1.6rem;
}
.spc-container aside .header, .spc-container aside .product-finishing {
  display: none;
}
.spc-container aside > .headline-medium-section {
  text-transform: uppercase;
  font-size: 1.6rem;
  margin-bottom: 2rem;
}
.spc-container aside .cart-image-container img {
  max-width: 100%;
}
.spc-container aside .cart-item {
  margin-bottom: 2rem;
  border-bottom: 0.1rem solid #ccc;
  padding-bottom: 2rem;
}
.spc-container aside .cart-item.deactivated {
  opacity: 0.6;
}
.spc-container aside .cart-item.deactivated:hover {
  opacity: 1;
}
.spc-container aside .cart-item.deactivated .product-remove {
  margin: 0;
}
.spc-container aside .article-description {
  font-size: 1.2rem;
}
.spc-container aside .product-name {
  font-family: "archivo-bold", "semibold-fallback", arial;
  text-transform: lowercase;
}
.spc-container aside .cart-artist {
  font-family: "archivo-black", "black-fallback", arial;
  text-transform: uppercase;
}
.spc-container aside div.mt-1 {
  margin: 0 0 1rem;
}
.spc-container aside button {
  border: 0;
  background: transparent;
}
.spc-container aside button:before {
  color: var(--brand-color);
}
.spc-container aside .fixed-article-amount {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.spc-container aside .fixed-article-amount span {
  font-size: 1.6rem;
}
.spc-container aside .article-amount {
  font-size: 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: flex-start;
}
.spc-container aside .article-amount .actions {
  display: grid;
  grid-template-columns: 9rem 3rem;
  align-items: center;
  gap: 1.5rem;
}
.spc-container aside .article-amount input {
  font-size: 1.6rem;
  border: 0.1rem solid #e7e7e6;
  width: 3ch;
  padding: 0.5rem 0.2rem;
  margin: 0 1rem;
  text-align: center;
}
.spc-container aside .cart-quantity-change {
  display: flex;
}
.spc-container aside .cart-quantity-change button {
  cursor: pointer;
}
.spc-container aside .cart-quantity-change.hidden .cart-increment, .spc-container aside .cart-quantity-change.hidden input {
  pointer-events: none;
}
.spc-container aside .cart-quantity-change.hidden .cart-increment:before, .spc-container aside .cart-quantity-change.hidden input:before {
  color: #7d7d7d;
}
.spc-container aside .product-remove {
  display: inline-block;
}
.spc-container aside .product-remove svg {
  color: var(--brand-color);
  width: 3rem;
  height: 3rem;
  display: inline-block;
}
.spc-container aside .product-remove a {
  color: var(--brand-color);
}
.spc-container aside .article-price {
  font-family: "archivo-bold", "semibold-fallback", arial;
  font-size: 1.6rem;
  justify-self: flex-end;
  white-space: nowrap;
  text-align: right;
  line-height: 1.5;
}
.spc-container aside .article-price s {
  display: inline-block;
  margin-right: 1rem;
  font-family: "archivo", "medium-fallback", arial;
}
.spc-container aside .article-price > div {
  font-size: 1.4rem;
  color: var(--brand-color);
}
.spc-container aside .coupon-form-container {
  padding-bottom: 2.7rem;
  margin-bottom: 2rem;
  border-bottom: 0.1rem solid #ccc;
}
.spc-container aside .coupon-form-container .headline-medium-section {
  font-size: 1.2rem;
}
.spc-container aside .coupon-form {
  display: grid;
  grid-template-columns: auto auto;
  gap: 1rem;
}
.spc-container aside .coupon-form input {
  padding: 1rem;
  border: 0.1rem solid #ccc;
}
.spc-container aside .coupon-form input::-moz-placeholder {
  opacity: 0;
}
.spc-container aside .coupon-form input::placeholder {
  opacity: 0;
}
.spc-container aside .coupon-form button {
  padding: 1rem;
  border: 0.1rem solid #000;
  font-family: "archivo-bold", "semibold-fallback", arial;
  cursor: pointer;
}
.spc-container aside .checkout-coupon {
  display: grid;
  grid-template-columns: 1fr 5rem;
}
.spc-container aside div.overview-sums {
  width: 100%;
  padding: 0;
  float: none;
}
.spc-container aside div.overview-sums .loading-indicator {
  text-align: center;
  display: none;
}
.spc-container aside div.overview-sums .loading-indicator > i {
  animation: rotate 0.5s linear infinite;
  transform-origin: center;
  display: block;
}
.spc-container aside div.overview-sums .loading .loading-indicator {
  display: block;
}
.spc-container aside div.overview-sums .loading table {
  display: none;
}
.spc-container aside div.overview-sums table {
  border-spacing: 0;
  width: 100%;
}
.spc-container aside div.overview-sums table td:first-child {
  text-transform: uppercase;
  font-size: 1.2rem;
}
.spc-container aside div.overview-sums table td:nth-child(2) {
  padding: 0 0.5rem;
}
.spc-container aside div.overview-sums table td:last-child {
  text-align: right;
  font-family: "archivo-bold", "semibold-fallback", arial;
  white-space: nowrap;
}
.spc-container aside div.overview-sums table .total td {
  font-family: "archivo-bold", "semibold-fallback", arial;
  border-top: 0.1rem solid #000;
  text-transform: uppercase;
  font-size: 1.5rem !important;
  padding-top: 1rem;
}
.spc-container aside div.overview-sums table .included-tax {
  opacity: 0.8;
  text-transform: initial;
}
.spc-container aside div.overview-sums table .coupon-remove {
  color: var(--brand-color);
  cursor: pointer;
}
.spc-container aside div.overview-sums table .discount {
  word-break: break-all;
}
.spc-container aside .checkout-shipment-estimation {
  margin-top: 1rem;
}

.spc-container summary {
  font-size: 1.6rem;
  font-family: "archivo-bold", "semibold-fallback", arial;
  line-height: 4.8rem;
  text-transform: uppercase;
}
.spc-container summary:after {
  content: "\e602";
  font-family: "icomoon";
  speak: none;
  font-style: normal;
  font-weight: 500;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  font-size: 2rem;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  display: inline-block;
  position: relative;
  top: 0.3rem;
  left: 1rem;
}
@media (min-width: 760px) {
  .spc-container summary:after {
    content: "";
  }
}
.spc-container summary::marker {
  content: "";
  display: none;
}
.spc-container [open] summary:after {
  transform: rotate(180deg);
}

.spc-payment form.payment-form label {
  color: #000;
}
.spc-payment .payment-method-container {
  overflow: hidden;
}
.spc-payment .payment-options {
  border-top: 0.1rem solid #e7e7e6;
}
.spc-payment div.payment-method-form {
  display: none;
  padding: 0;
}
.spc-payment div.payment-method-form.adyen-cc .input-mimic {
  width: 100%;
  height: 4rem;
  border: 0.1rem solid #7d7d7d;
  padding: 0.8rem 1rem 0.5rem;
  margin-top: 1rem;
  position: relative;
}
.spc-payment div.payment-method-form.adyen-cc .adyen-cse-container:after {
  content: " ";
  display: block;
  clear: both;
}
@media (max-width: 760px) {
  .spc-payment div.payment-method-form.adyen-cc .adyen-cse-container {
    display: flex;
    flex-direction: column;
  }
  .spc-payment div.payment-method-form.adyen-cc .adyen-cse-container .cvc {
    order: 1;
  }
}
.spc-payment div.payment-method-form.adyen-cc .adyen-cse-container input {
  padding: 0.8rem 1rem 0.5rem;
}
.spc-payment div.payment-method-form.adyen-cc label {
  margin: 0;
  display: block;
}
.spc-payment div.payment-method-form .cvc {
  clear: left;
}
.spc-payment div.payment-method-form .cvc input {
  width: 50%;
}
.spc-payment div.payment-method-form.sepa {
  padding: 0;
}
.spc-payment div.payment-method-form.sepa .first-column input {
  text-transform: uppercase;
}
.spc-payment div.payment-method-form a {
  color: var(--brand-color);
}
.spc-payment .payment-method-option {
  overflow: hidden;
  border-bottom: 0.1rem solid #e7e7e6;
  padding-bottom: 1rem;
}
.spc-payment .payment-method-option.selected + .payment-method-form {
  display: block;
}
.spc-payment .checkout-payment-input {
  padding-left: 0;
}
.spc-payment .checkout-payment-input input[type=radio]:checked ~ span {
  background-image: radial-gradient(circle at center, var(--brand-color) 0.4rem, transparent 0.4rem, transparent 0.73rem, var(--brand-color) 0.78rem);
}
.spc-payment .checkout-payment-icons svg {
  float: right;
  max-width: 75%;
  width: 6rem;
  height: 4rem;
}
.spc-payment .checkout-payment-icons img {
  float: right;
  max-width: 75%;
}
.spc-payment .btn.save-order {
  width: 100%;
  margin-top: 3rem;
}
.spc-payment .btn.save-order:not([disabled]) {
  background: var(--brand-color);
  border-color: var(--brand-color);
}
.spc-payment .btn.save-order:not([disabled]):hover {
  color: var(--brand-color);
  background-color: #fff;
}
.spc-payment .agb {
  margin: 2rem 0 0;
}
.spc-payment .agb a {
  color: var(--brand-color);
}

.spc-payment:has(#RatepayInvoicePayment:not(.hidden)) #AdyenKlarnaPayLater {
  display: none;
}

.spc-address.closed {
  pointer-events: none;
}
.spc-address.closed button {
  display: none;
}
.spc-address form {
  overflow: hidden;
}
.spc-address form [name="profileForm[fk_customer]"] + .form-group__full {
  display: none;
}
.spc-address .form-group__full {
  padding-left: 0.5rem;
}
.spc-address .form-group__full.type-radio {
  display: flex;
  align-items: center;
}
.spc-address .form-group__full.type-radio .col-xs-12 {
  display: none;
}
.spc-address .billing-same-as-shipping {
  display: flex;
  margin: 0 0 2rem;
}
.spc-address .billing-same-as-shipping input {
  width: 0 !important;
}
.spc-address .address-list {
  display: flex;
  padding: 3rem;
  gap: 1rem;
  background: #e7e7e6;
  overflow-x: scroll;
}
.spc-address .address-list li {
  border: 0.1rem solid #ccc;
  padding: 1rem;
  background: #fff;
  aspect-ratio: 8;
  cursor: pointer;
  color: #838383;
}
.spc-address .address-list li.active {
  color: #000;
  border-color: var(--brand-color);
}
.spc-address .address-list li.new {
  color: var(--brand-color);
  text-align: center;
  display: flex;
  align-items: center;
}
.spc-address details {
  padding: 1rem 0;
  margin-right: 1rem;
}
.spc-address .custom-address-toggle {
  margin: 2rem 0;
  cursor: pointer;
}
.spc-address .custom-address-toggle::marker {
  display: none;
  content: "";
}
.spc-address .custom-address-toggle:after {
  content: "\e602";
  font-family: "icomoon";
  speak: none;
  font-style: normal;
  font-weight: 500;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  font-size: 2rem;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  display: block;
  float: right;
  margin: 1rem;
  font-size: 1rem;
}
.spc-address .shipping-address {
  margin: 4rem 0;
}
.spc-address .payment-addresses {
  grid-template-rows: auto auto;
  grid-template-columns: none;
  gap: 1rem;
  display: grid;
  margin-bottom: 2rem;
}
.spc-address .payment-addresses .address p:first-child {
  font-family: "archivo-bold", "semibold-fallback", arial;
  text-transform: uppercase;
}
@media (min-width: 760px) {
  .spc-address .payment-addresses {
    grid-template-columns: 1fr 1fr;
  }
}

.spc-empty-cart, .spc-error {
  background: #fff;
  width: 90%;
  margin: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 5rem;
  min-height: 40rem;
  justify-content: space-between;
}
.spc-empty-cart .icon-cart:before, .spc-error .icon-cart:before {
  font-size: 10rem;
  color: #e7e7e6;
}
.spc-empty-cart button, .spc-error button {
  background: #000;
  color: #fff;
  padding: 0.5rem 1rem;
  display: inline-block;
}

.separator {
  border-top: 0.1rem solid #e7e7e6;
  text-align: center;
  margin: 1rem 0;
}
.separator legend {
  padding: 1rem;
  margin: auto;
  text-transform: uppercase;
  font-size: 1.2rem;
}

.spc-page label > input[type=checkbox] + span {
  all: revert;
  background: #e7e7e6;
  border-radius: 1rem;
  padding: 0.2rem 2rem 0.2rem 0.2rem;
  display: inline-block;
  margin-right: 1rem;
  align-self: start;
}
.spc-page label > input[type=checkbox] + span:before {
  all: revert;
  content: " ";
  display: block;
  border-radius: 50%;
  width: 2rem;
  height: 2rem;
  background: #fff;
}

.spc-page label > input[type=checkbox]:checked + span {
  all: revert;
  background: var(--brand-color);
  width: 4rem;
  border-radius: 1rem;
  padding: 0.2rem;
  display: inline-block;
  margin-right: 1rem;
  align-self: start;
}
.spc-page label > input[type=checkbox]:checked + span:before {
  all: revert;
  content: " ";
  display: block;
  border-radius: 50%;
  width: 2rem;
  height: 2rem;
  background: #fff;
  margin-left: 2rem;
}

.spc-container input[type=radio] ~ span {
  background-image: radial-gradient(circle at center, transparent 0.73rem, #000 0.78rem);
}
.spc-container input[type=radio]:checked ~ span {
  background-image: radial-gradient(circle at center, #000 0.4rem, transparent 0.4rem, transparent 0.73rem, #000 0.78rem);
}

main .custom-select select {
  color: #000;
}

.edit-link {
  color: var(--brand-color);
}
.edit-link:before {
  content: "\e916";
  font-family: "icomoon";
  speak: none;
  font-style: normal;
  font-weight: 500;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  font-size: 2rem;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 1.2rem;
  display: inline-block;
  margin-right: 0.5rem;
}

.spc-customer header {
  text-align: center;
}
.spc-customer a {
  color: var(--brand-color);
  margin-bottom: 1rem;
  display: inline-block;
}
.spc-customer .message {
  margin-bottom: 1rem;
}
.spc-customer span {
  color: var(--brand-color);
  cursor: pointer;
  float: right;
}

.spc-shipment.closed {
  display: none;
}
.spc-shipment .shipment {
  display: flex;
  justify-content: space-between;
}
.spc-shipment .name {
  font-family: "archivo-bold", "semibold-fallback", arial;
}
.spc-shipment .premium-shipping {
  display: grid;
  grid-template-columns: 6rem 1fr;
}
.spc-shipment .premium-shipping a {
  color: var(--brand-color);
}
.spc-shipment .premium-shipping .premium-shipping-label-info {
  padding: 0;
}
.spc-shipment label:first-child {
  margin: 0;
  display: flex;
  flex-direction: column;
}
.spc-shipment label:nth-child(2) {
  color: #000;
  line-height: inherit;
  margin: 0 0 1rem;
}
.spc-shipment .btn.continue {
  margin-top: 2rem;
}

footer .payment-methods .icons {
  margin: auto;
}
footer .col-teaser img {
  max-width: 100%;
}
footer .return-icon {
  width: 6rem;
  height: 6rem;
}

.non-discountable .tooltip-wrapper {
  display: inline-block;
}
.non-discountable svg {
  display: none;
  height: 1.25rem;
  color: var(--brand-color);
  margin-bottom: -0.1rem;
}
@media (hover: hover) and (pointer: fine) {
  .non-discountable svg {
    display: block;
  }
}

.spc-tooltip {
  position: absolute;
  background: var(--brand-color);
  color: #fff;
  padding: 0.2rem 0.4rem;
}

.spc-top-content {
  border-top: 1px solid rgba(0, 0, 0, 0.3);
  background-color: #fff;
  margin-bottom: 2rem;
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2hpdGUvc2luZ2xlLXBhZ2UtY2hlY2tvdXQuY3NzIiwibWFwcGluZ3MiOiI7OztBQUFBO0VBQ0U7QUNDRjs7QURFQTtFQUNFO0VBQ0E7QUNDRjs7QURFQTtFQUNFLHNCRVZNO0VGV04sV0VWTTtFRldOO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQ0NGO0FFWEU7RUhFRjtJQVVJO0VDR0Y7QUFDRjtBRERJO0VBQ0U7QUNHTjtBREFFO0VBQ0U7RUFDQTtBQ0VKO0FEREk7RUFDRTtFQUNBO0FDR047O0FHbENBO0VBQ0U7SUFDRTtFSHFDRjtBQUNGO0FHbENBO0VBQ0UsZ0JGUE07RUVRTjtFQUNBO0FIb0NGO0FFNUJFO0VDWEY7SUFLSTtJQUNBO0lBQ0E7RUhzQ0Y7QUFDRjtBR3JDRTtFQUNFO0VBQ0E7QUh1Q0o7QUdyQ0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FIdUNKO0FFM0RFO0VDWUE7SUFVSTtFSHlDSjtBQUNGO0FHeENJO0VBQ0UsdURDL0JNO0FKeUVaO0FHdkNFO0VBQ0U7RUFDQTtBSHlDSjtBR3ZDRTtFQUNFO0FIeUNKO0FHdkNFO0VBQ0U7RUFDQTtFQUNBO0FIeUNKO0FHdkNFO0VBQ0U7QUh5Q0o7QUd2Q0U7RUFDRTtFQUNBO0VBQ0E7QUh5Q0o7QUd2Q0U7RUFDRTtBSHlDSjtBR3hDSTtFQUNFO0FIMENOO0FHeENJO0VBQ0U7QUgwQ047QUd2Q0U7RUFDRTtBSHlDSjtBR3ZDRTtFQUNFLHVEQ25FUTtFRG9FUjtBSHlDSjtBR3ZDRTtFQUNFLHFEQ3RFYztFRHVFZDtBSHlDSjtBR3ZDRTtFQUNFO0FIeUNKO0FHdkNFO0VBQ0U7RUFDQTtBSHlDSjtBR3hDSTtFQUNFO0FIMENOO0FHdkNFO0VBQ0U7RUFDQTtFQUNBO0FIeUNKO0FHeENJO0VBQ0U7QUgwQ047QUd2Q0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBSHlDSjtBR3hDSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FIMENOO0FHeENJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FIMENOO0FHdkNFO0VBQ0U7QUh5Q0o7QUd4Q0k7RUFDRTtBSDBDTjtBR3RDTTtFQUNFO0FId0NSO0FHdkNRO0VBQ0UsY0Y1Rkg7QURxSVA7QUdwQ0U7RUFDRTtBSHNDSjtBR3JDSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FIdUNOO0FHckNJO0VBQ0U7QUh1Q047QUdwQ0U7RUFDRSx1REM1SVE7RUQ2SVI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBSHNDSjtBR3JDSTtFQUNFO0VBQ0E7RUFDQSxnREN0SlE7QUo2TGQ7QUdyQ0k7RUFDRTtFQUNBO0FIdUNOO0FHcENFO0VBQ0U7RUFDQTtFQUNBO0FIc0NKO0FHckNJO0VBQ0U7QUh1Q047QUdwQ0U7RUFDRTtFQUNBO0VBQ0E7QUhzQ0o7QUdyQ0k7RUFDRTtFQUNBO0FIdUNOO0FHdENNO0VBQ0U7QUh3Q1I7QUd6Q007RUFDRTtBSHdDUjtBR3JDSTtFQUNFO0VBQ0E7RUFDQSx1RENsTE07RURtTE47QUh1Q047QUdwQ0U7RUFDRTtFQUNBO0FIc0NKO0FHcENFO0VBQ0U7RUFDQTtFQUNBO0FIc0NKO0FHckNJO0VBQ0U7RUFDQTtBSHVDTjtBR3RDTTtFQUNFO0VBQ0E7RUFDQTtBSHdDUjtBR3BDTTtFQUNFO0FIc0NSO0FHcENNO0VBQ0U7QUhzQ1I7QUduQ0k7RUFDRTtFQUNBO0FIcUNOO0FHcENNO0VBQ0U7RUFDQTtBSHNDUjtBR3BDTTtFQUNFO0FIc0NSO0FHcENNO0VBQ0U7RUFDQSx1REMzTkk7RUQ0Tko7QUhzQ1I7QUdwQ007RUFDRSx1REMvTkk7RURnT0o7RUFDQTtFQUNBO0VBQ0E7QUhzQ1I7QUdwQ007RUFDRTtFQUNBO0FIc0NSO0FHcENNO0VBQ0U7RUFDQTtBSHNDUjtBR3BDTTtFQUNFO0FIc0NSO0FHbENFO0VBQ0U7QUhvQ0o7O0FHL0JFO0VBQ0U7RUFDQSx1REMxUFE7RUQyUFI7RUFDQTtBSGtDSjtBR2pDSTtFRW5LRjtFQUtBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VGdUpJO0VBQ0E7RUFDQTtFQUNBO0FINkNOO0FFelNFO0VDK1BJO0lBQ0U7RUg2Q047QUFDRjtBRzNDSTtFQUNFO0VBQ0E7QUg2Q047QUcxQ0U7RUFDRTtBSDRDSjs7QU0xVEk7RUFDRSxXTEZFO0FEK1RSO0FNMVRFO0VBQ0U7QU40VEo7QU0xVEU7RUFDRTtBTjRUSjtBTTFURTtFQUNFO0VBQ0E7QU40VEo7QU0xVE07RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QU40VFI7QU0xVE07RUFDRTtFQUNBO0VBQ0E7QU40VFI7QUV0VUU7RUlZSTtJQUVJO0lBQ0E7RU40VFI7RU0zVFE7SUFDRTtFTjZUVjtBQUNGO0FNMVRNO0VBQ0U7QU40VFI7QU0xVE07RUFDRTtFQUNBO0FONFRSO0FNelRJO0VBQ0U7QU4yVE47QU0xVE07RUFDRTtBTjRUUjtBTXpUSTtFQUNFO0FOMlROO0FNMVRNO0VBQ0U7QU40VFI7QU16VEk7RUFDRTtBTjJUTjtBTXhURTtFQUNFO0VBQ0E7RUFDQTtBTjBUSjtBTXpUSTtFQUNFO0FOMlROO0FNeFRFO0VBQ0U7QU4wVEo7QU14VEU7RU4zREE7QUFzWEY7QU14VEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBTjBUSjtBTXhURTtFQUNFO0VBQ0E7QU4wVEo7QU14VEU7RUFDRTtFQUNBO0FOMFRKO0FNelRJO0VBQ0U7RUFDQTtBTjJUTjtBTTFUTTtFQUNFO0VBQ0Esc0JMOUZBO0FEMFpSO0FNeFRFO0VBQ0U7QU4wVEo7QU16VEk7RUFDRTtBTjJUTjs7QU1yVEU7RUFDRTtBTndUSjs7QU9uYUU7RUFDRTtBUHNhSjtBT3BhSTtFQUNFO0FQc2FOO0FPbGFFO0VBQ0U7QVBvYUo7QU9sYUk7RUFDRTtBUG9hTjtBT2hhRTtFQUNFO0FQa2FKO0FPaGFJO0VBQ0U7RUFDQTtBUGthTjtBT2hhTTtFQUNFO0FQa2FSO0FPN1pFO0VBQ0U7RUFDQTtBUCtaSjtBTzdaSTtFQUNFO0FQK1pOO0FPM1pFO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsbUJOekNXO0VNMENYO0FQNlpKO0FPM1pJO0VBQ0U7RUFDQTtFQUNBLGdCTmpERTtFTWtERjtFQUNBO0VBQ0EsY050Q007QURtY1o7QU8zWk07RUFDRSxXTnREQTtFTXVEQTtBUDZaUjtBTzFaTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FQNFpSO0FPdlpFO0VBQ0U7RUFDQTtBUHlaSjtBT3RaRTtFQUNFO0VBQ0E7QVB3Wko7QU90Wkk7RUFDRTtFQUNBO0FQd1pOO0FPclpJO0VGU0Y7RUFLQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFRXJCSTtFQUNBO0VBQ0E7RUFDQTtBUGlhTjtBTzdaRTtFQUNFO0FQK1pKO0FPNVpFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBUDhaSjtBTzVaSTtFQUNFLHVESHRHTTtFR3VHTjtBUDhaTjtBRS9mRTtFS3dGQTtJQWFJO0VQOFpKO0FBQ0Y7O0FBdGZBO0VBQ0UsZ0JDdEJNO0VEdUJOO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUF5ZkY7QUF2ZkU7RUFDRTtFQUNBLGNDaENXO0FEeWhCZjtBQXRmRTtFQUNFLGdCQ3JDSTtFRHNDSixXQ3ZDSTtFRHdDSjtFQUNBO0FBd2ZKOztBQXBmQTtFQUNFO0VBQ0E7RUFDQTtBQXVmRjtBQXJmRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FBdWZKOztBQW5mQTtFQUNFO0VBQ0EsbUJDMURhO0VEMkRiO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFzZkY7QUFwZkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxnQkMxRUk7QURna0JSOztBQWxmQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFxZkY7QUFuZkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxnQkMvRkk7RURnR0o7QUFxZko7O0FBaGZFO0VBM0ZBO0FBK2tCRjtBQWhmRTtFQTNGQTtBQThrQkY7O0FBOWVBO0VBQ0UsV0M5R007QUQrbEJSOztBQTllQTtFQUNJO0FBaWZKO0FBaGZJO0VLekJGO0VBS0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUxhSTtFQUNBO0VBQ0E7QUE0Zk47O0FBdmZFO0VBQ0U7QUEwZko7QUF4ZkU7RUFDRTtFQUNBO0VBQ0E7QUEwZko7QUF4ZkU7RUFDRTtBQTBmSjtBQXhmRTtFQUNFO0VBQ0E7RUFDQTtBQTBmSjs7QUFyZkU7RUFDRTtBQXdmSjtBQXRmRTtFQUNFO0VBQ0E7QUF3Zko7QUF0ZkU7RUFDRSx1REl2SlE7QUorb0JaO0FBdGZFO0VBQ0U7RUFDQTtBQXdmSjtBQXZmSTtFQUNFO0FBeWZOO0FBdmZJO0VBQ0U7QUF5Zk47QUF0ZkU7RUFDRTtFQUNBO0VBQ0E7QUF3Zko7QUF0ZkU7RUFDRSxXQ3pLSTtFRDBLSjtFQUNBO0FBd2ZKO0FBdGZFO0VBQ0U7QUF3Zko7O0FBbmZFO0VBQ0U7QUFzZko7QUFwZkU7RUFDRTtBQXNmSjtBQXBmRTtFQUNFO0VBQ0E7QUFzZko7O0FBamZFO0VBQ0U7QUFvZko7QUFsZkU7RUFDRTtFQUlBO0VBQ0E7RUFDQTtBQWlmSjtBQXRmSTtFQUZGO0lBR0k7RUF5Zko7QUFDRjs7QUFuZkE7RUFDRTtFQUNBO0VBQ0EsV0NqTk07RURrTk47QUFzZkY7O0FBbmZBO0VBQ0U7RUFDQSxzQkN2Tk07RUR3Tk47QUFzZkYsQyIsInNvdXJjZXMiOlsid2VicGFjazovL3l2ZXNfemVkLy4vZnJvbnRlbmQvdGhlbWVzL3doaXRlL2Fzc2V0cy9zYXNzL3BhZ2VzL2NhcnQvX3ByZW1pdW0tc2hpcHBpbmctcG9wdXAuc2NzcyIsIndlYnBhY2s6Ly95dmVzX3plZC8uL2Zyb250ZW5kL3RoZW1lcy93aGl0ZS9hc3NldHMvc2Fzcy9zaW5nbGUtcGFnZS1jaGVja291dC5zY3NzIiwid2VicGFjazovL3l2ZXNfemVkLy4vZnJvbnRlbmQvdGhlbWVzL3doaXRlL2Fzc2V0cy9zYXNzL2NvbmZpZy9fY29sb3JzLnNjc3MiLCJ3ZWJwYWNrOi8veXZlc196ZWQvLi9mcm9udGVuZC90aGVtZXMvd2hpdGUvYXNzZXRzL3Nhc3MvdXRpbHMvX3Jlc3BvbnNpdmUuc2NzcyIsIndlYnBhY2s6Ly95dmVzX3plZC8uL2Zyb250ZW5kL3RoZW1lcy93aGl0ZS9hc3NldHMvc2Fzcy9wYWdlcy9zaW5nbGUtcGFnZS1jaGVja291dC9fYXNpZGUuc2NzcyIsIndlYnBhY2s6Ly95dmVzX3plZC8uL2Zyb250ZW5kL3RoZW1lcy93aGl0ZS9hc3NldHMvc2Fzcy9jb25maWcvX2ZvbnRzLnNjc3MiLCJ3ZWJwYWNrOi8veXZlc196ZWQvLi9mcm9udGVuZC90aGVtZXMvd2hpdGUvYXNzZXRzL3Nhc3MvdXRpbHMvX3Nob3J0aGFuZHMuc2NzcyIsIndlYnBhY2s6Ly95dmVzX3plZC8uL2Zyb250ZW5kL3RoZW1lcy93aGl0ZS9hc3NldHMvc2Fzcy9wYWdlcy9zaW5nbGUtcGFnZS1jaGVja291dC9fcGF5bWVudC5zY3NzIiwid2VicGFjazovL3l2ZXNfemVkLy4vZnJvbnRlbmQvdGhlbWVzL3doaXRlL2Fzc2V0cy9zYXNzL3BhZ2VzL3NpbmdsZS1wYWdlLWNoZWNrb3V0L19hZGRyZXNzLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiLnNoaXBwaW5nLWluZm8tbGFiZWwgYSB7XG4gIGNvbG9yOiB2YXIoLS1icmFuZC1jb2xvcik7XG59XG5cbi5wcmVtaXVtLXNoaXBwaW5nLWxhYmVsLWluZm8ge1xuICBwYWRkaW5nOiAxcmVtIDAgMCAyLjNyZW07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLnByZW1pdW0tc2hpcHBpbmctcG9wdXAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gIGNvbG9yOiAkYmxhY2s7XG4gIHdpZHRoOiA1NnJlbTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICBwYWRkaW5nOiAycmVtO1xuICBoZWlnaHQ6IDM0cmVtO1xuICBAaW5jbHVkZSBtaW4td2lkdGgodGFibGV0LWxhbmRzY2FwZSkge1xuICAgIGhlaWdodDogMjhyZW07XG4gIH1cbiAgYnV0dG9uLmljb24tY2xvc2Uge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIH1cbiAgfVxuICAuY29udGVudCB7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHAge1xuICAgICAgZm9udC1zaXplOiAxLjdyZW07XG4gICAgICBsaW5lLWhlaWdodDogMi42cmVtO1xuICAgIH1cbiAgfVxufSIsIiRmb250Rm9sZGVyOiAnL2Fzc2V0cy93aGl0ZS9mb250cy8nO1xuXG5AaW1wb3J0IFwiY29uZmlnL2NvbG9yc1wiO1xuQGltcG9ydCBcImNvbmZpZy9tYWluXCI7XG5AaW1wb3J0IFwiY29uZmlnL2ZvbnRzXCI7XG5AaW1wb3J0IFwidXRpbHMvc2hvcnRoYW5kc1wiO1xuQGltcG9ydCBcInV0aWxzL3Jlc3BvbnNpdmVcIjtcbkBpbXBvcnQgJ3BhZ2VzL2NhcnQvcHJlbWl1bS1zaGlwcGluZy1wb3B1cCc7XG5cbkBtaXhpbiByYWRpb0JvcmRlcigkYm9yZGVyLWNvbG9yLCAkcmFkaW8tYm9yZGVyLXNpemU6IC43OHJlbSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiByYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IGNlbnRlciwgdHJhbnNwYXJlbnQgKCRyYWRpby1ib3JkZXItc2l6ZSAtIC4wNXJlbSksICRib3JkZXItY29sb3IgJHJhZGlvLWJvcmRlci1zaXplKTtcbn1cblxuQG1peGluIHJhZGlvQm9yZGVyU2VsZWN0ZWQoJGJvcmRlci1jb2xvciwgJGRvdC1jb2xvciwgJHJhZGlvLWJvcmRlci1zaXplOiAuNzhyZW0sICRyYWRpby1kb3Q6IC40cmVtKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgY2VudGVyLCAkZG90LWNvbG9yICRyYWRpby1kb3QsIHRyYW5zcGFyZW50ICRyYWRpby1kb3QsIHRyYW5zcGFyZW50ICgkcmFkaW8tYm9yZGVyLXNpemUgLSAuMDVyZW0pLCAkYm9yZGVyLWNvbG9yICRyYWRpby1ib3JkZXItc2l6ZSk7XG59XG5cbkBpbXBvcnQgXCJwYWdlcy9zaW5nbGUtcGFnZS1jaGVja291dC9hc2lkZVwiO1xuQGltcG9ydCBcInBhZ2VzL3NpbmdsZS1wYWdlLWNoZWNrb3V0L3BheW1lbnRcIjtcbkBpbXBvcnQgXCJwYWdlcy9zaW5nbGUtcGFnZS1jaGVja291dC9hZGRyZXNzXCI7XG5cbi5zcGMtZW1wdHktY2FydCwgLnNwYy1lcnJvciB7XG4gIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgd2lkdGg6IDkwJTtcbiAgbWFyZ2luOiBhdXRvO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiA1cmVtO1xuICBtaW4taGVpZ2h0OiA0MHJlbTtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gIC5pY29uLWNhcnQ6YmVmb3JlIHtcbiAgICBmb250LXNpemU6IDEwcmVtO1xuICAgIGNvbG9yOiAkZ3JheS1iYWNrZ3JvdW5kO1xuICB9XG5cbiAgYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBwYWRkaW5nOiAuNXJlbSAxcmVtO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxufVxuXG4uc2VwYXJhdG9yIHtcbiAgYm9yZGVyLXRvcDogLjFyZW0gc29saWQgJGdyYXktYmFja2dyb3VuZDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW46IDFyZW0gMDtcblxuICBsZWdlbmQge1xuICAgIHBhZGRpbmc6IDFyZW07XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiAxLjJyZW07XG4gIH1cbn1cblxuLnNwYy1wYWdlIGxhYmVsID4gaW5wdXRbdHlwZT1jaGVja2JveF0gKyBzcGFuIHtcbiAgYWxsOiByZXZlcnQ7XG4gIGJhY2tncm91bmQ6ICRncmF5LWJhY2tncm91bmQ7XG4gIGJvcmRlci1yYWRpdXM6IDFyZW07XG4gIHBhZGRpbmc6IC4ycmVtIDJyZW0gLjJyZW0gLjJyZW07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICBhbGlnbi1zZWxmOiBzdGFydDtcblxuICAmOmJlZm9yZSB7XG4gICAgYWxsOiByZXZlcnQ7XG4gICAgY29udGVudDogJyAnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICB3aWR0aDogMnJlbTtcbiAgICBoZWlnaHQ6IDJyZW07XG4gICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICB9XG59XG5cbi5zcGMtcGFnZSBsYWJlbCA+IGlucHV0W3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQgKyBzcGFuIHtcbiAgYWxsOiByZXZlcnQ7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kLWNvbG9yKTtcbiAgd2lkdGg6IDRyZW07XG4gIGJvcmRlci1yYWRpdXM6IDFyZW07XG4gIHBhZGRpbmc6IC4ycmVtO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgYWxpZ24tc2VsZjogc3RhcnQ7XG5cbiAgJjpiZWZvcmUge1xuICAgIGFsbDogcmV2ZXJ0O1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgd2lkdGg6IDJyZW07XG4gICAgaGVpZ2h0OiAycmVtO1xuICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICBtYXJnaW4tbGVmdDogMnJlbTtcbiAgfVxufVxuXG4uc3BjLWNvbnRhaW5lciB7XG4gIGlucHV0W3R5cGU9cmFkaW9dIH4gc3BhbiB7XG4gICAgQGluY2x1ZGUgcmFkaW9Cb3JkZXIoJGJsYWNrKTtcbiAgfVxuXG4gIGlucHV0W3R5cGU9cmFkaW9dOmNoZWNrZWQgfiBzcGFuIHtcbiAgICBAaW5jbHVkZSByYWRpb0JvcmRlclNlbGVjdGVkKCRibGFjaywgJGJsYWNrKTtcbiAgfVxufVxuXG5tYWluIC5jdXN0b20tc2VsZWN0IHNlbGVjdCB7XG4gIGNvbG9yOiAkYmxhY2s7XG59XG5cbi5lZGl0LWxpbmsge1xuICAgIGNvbG9yOiB2YXIoLS1icmFuZC1jb2xvcik7XG4gICAgJjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgaWNvbihwZW5jaWwpO1xuICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC41cmVtO1xuICAgIH1cbn1cblxuLnNwYy1jdXN0b21lciB7XG4gIGhlYWRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIGEge1xuICAgIGNvbG9yOiB2YXIoLS1icmFuZC1jb2xvcik7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbiAgLm1lc3NhZ2Uge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIH1cbiAgc3BhbiB7XG4gICAgY29sb3I6IHZhcigtLWJyYW5kLWNvbG9yKTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG59XG5cbi5zcGMtc2hpcG1lbnQge1xuICAmLmNsb3NlZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuc2hpcG1lbnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG4gIC5uYW1lIHtcbiAgICBmb250LWZhbWlseTogJGZvbnQtY29udGVudC1ib2xkO1xuICB9XG4gIC5wcmVtaXVtLXNoaXBwaW5nIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogNnJlbSAxZnI7XG4gICAgYSB7XG4gICAgICBjb2xvcjogdmFyKC0tYnJhbmQtY29sb3IpO1xuICAgIH1cbiAgICAucHJlbWl1bS1zaGlwcGluZy1sYWJlbC1pbmZvIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuICB9XG4gIGxhYmVsOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW46IDA7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG4gIGxhYmVsOm50aC1jaGlsZCgyKSB7XG4gICAgY29sb3I6ICRibGFjaztcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICBtYXJnaW46IDAgMCAxcmVtO1xuICB9XG4gIC5idG4uY29udGludWUge1xuICAgIG1hcmdpbi10b3A6IDJyZW07XG4gIH1cbn1cblxuZm9vdGVyIHtcbiAgLnBheW1lbnQtbWV0aG9kcyAuaWNvbnMge1xuICAgIG1hcmdpbjogYXV0bztcbiAgfVxuICAuY29sLXRlYXNlciBpbWcge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICAucmV0dXJuLWljb24ge1xuICAgIHdpZHRoOiA2cmVtO1xuICAgIGhlaWdodDogNnJlbTtcbiAgfVxufVxuXG4ubm9uLWRpc2NvdW50YWJsZSB7XG4gIC50b29sdGlwLXdyYXBwZXIge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuICBzdmcge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgQG1lZGlhIChob3ZlcjogaG92ZXIpIGFuZCAocG9pbnRlcjogZmluZSkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICAgIGhlaWdodDogMS4yNXJlbTtcbiAgICBjb2xvcjogdmFyKC0tYnJhbmQtY29sb3IpO1xuICAgIG1hcmdpbi1ib3R0b206IC0uMXJlbTtcbiAgfVxufVxuLnNwYy10b29sdGlwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1icmFuZC1jb2xvcik7XG4gIGNvbG9yOiAkd2hpdGU7XG4gIHBhZGRpbmc6IC4ycmVtIC40cmVtO1xufVxuXG4uc3BjLXRvcC1jb250ZW50IHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRvcGFxdWUtZ3JheTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufSIsIiR3aGl0ZTogI2ZmZjtcbiRibGFjazogIzAwMDtcbiRicm9rZW4td2hpdGU6ICNlN2U3ZTY7XG4kYnJva2VuLXdoaXRlLWxpZ2h0OiAjZjVmNWYzO1xuJGJyb2tlbi13aGl0ZS1kYXJrOiAjZjNmM2YzO1xuXG4kbGF5b3V0LWJsb2NrOiAkYnJva2VuLXdoaXRlO1xuJHBhZ2UtYmFja2dyb3VuZDogJHdoaXRlO1xuJHBhZ2UtYmFja2dyb3VuZC1saWdodDogJHBhZ2UtYmFja2dyb3VuZDtcbiRkYXJrZXItZWxlbWVudHM6ICM0NDQ7XG4kZGFyay1lbGVtZW50czogIzU2NTY1NjtcbiRsaWdodC1ncmF5LWVsZW1lbnRzOiAjNjE2MTYxO1xuJGdyYXktZWxlbWVudHM6ICMyMjI7XG4kZGFya2VyLXRleHQ6ICMyMjIyMjI7XG4kZGFyay10ZXh0OiAjODM4MzgzO1xuJGdyYXktdGV4dDogIzlCOUI5QjtcbiRncmF5LWJhY2tncm91bmQ6ICRicm9rZW4td2hpdGU7XG4kZ3JheS1iYWNrZ3JvdW5kLWxpZ2h0OiAjZjJmMmYyO1xuJG9wYXF1ZS1ncmF5OiByZ2JhKDAsIDAsIDAsIC4zKTtcbiRwcm9kdWN0LWJhY2tncm91bmQ6ICRicm9rZW4td2hpdGU7XG4kaGVhZGVyLWJvdHRvbS1ib3JkZXI6ICM5Nzk3OTc7XG4kaGVhZGVyLWJvdHRvbS1ib3JkZXI6ICMyMjIyMjI7XG5cbiRibHVlOiAjMTM0NDliO1xuJHJlZDogI2NjMDAxMztcbiRncmVlbjogIzVkYWEzNTtcbiR5ZWxsb3c6ICNmZmMzNDM7XG4kb3JhbmdlOiAjZmQ4ODMxO1xuJHB1cnBsZTogIzg4MUFENTtcbiRza3k6ICNiYmRlZmI7XG4kYnJvd246ICM4QjQ1MTM7XG4kZ3JheTogIzdkN2Q3ZDtcbiRkYXJrLWdyYXk6ICM0NDQ7XG4kc2lsdmVyOiAjY2NjO1xuJG1hZ2VudGE6ICNmZjAwZmY7XG5cbiRoaWdobGlnaHQtY29sb3JzOiAoXG4gICAgICAgIGhpZ2hsaWdodC1wdXJwbGU6ICM1ODJjODMsXG4gICAgICAgIGhpZ2hsaWdodC1wdXJwbGUtbGlnaHQ6ICM5Njc4ZDMsXG4gICAgICAgIGhpZ2hsaWdodC1ibHVlOiAjMjVCMEU5LFxuICAgICAgICBoaWdobGlnaHQtcmVkOiAjRkYyRDQzLFxuICAgICAgICBoaWdobGlnaHQtbWFnZW50YTogIzliMDA0ZSxcbiAgICAgICAgaGlnaGxpZ2h0LWN5YW46ICMyMGI0YzUsXG4gICAgICAgIGhpZ2hsaWdodC15ZWxsb3c6ICNkYWQ0YmYsXG4pO1xuXG4kaGlnaGxpZ2h0LXB1cnBsZTogbWFwLWdldCgkaGlnaGxpZ2h0LWNvbG9ycywgaGlnaGxpZ2h0LXB1cnBsZSk7XG4kaGlnaGxpZ2h0LXB1cnBsZS1saWdodDogbWFwLWdldCgkaGlnaGxpZ2h0LWNvbG9ycywgaGlnaGxpZ2h0LXB1cnBsZS1saWdodCk7XG4kaGlnaGxpZ2h0LWJsdWU6IG1hcC1nZXQoJGhpZ2hsaWdodC1jb2xvcnMsIGhpZ2hsaWdodC1ibHVlKTtcbiRoaWdobGlnaHQtcmVkOiBtYXAtZ2V0KCRoaWdobGlnaHQtY29sb3JzLCBoaWdobGlnaHQtcmVkKTtcbiRoaWdobGlnaHQtbWFnZW50YTogbWFwLWdldCgkaGlnaGxpZ2h0LWNvbG9ycywgaGlnaGxpZ2h0LW1hZ2VudGEpO1xuJGhpZ2hsaWdodC1jeWFuOiBtYXAtZ2V0KCRoaWdobGlnaHQtY29sb3JzLCBoaWdobGlnaHQtY3lhbik7XG4kaGlnaGxpZ2h0LXllbGxvdzogbWFwLWdldCgkaGlnaGxpZ2h0LWNvbG9ycywgaGlnaGxpZ2h0LXllbGxvdyk7XG4kZXJyb3I6ICNmYzJlNGU7XG5cbiRhY3Rpb24tYmFubmVyLWRlZmF1bHQ6ICNmM2Y0ZjY7XG5cbiRib2R5LWJhY2tncm91bmQtY29sb3I6ICRwYWdlLWJhY2tncm91bmQ7XG4kaW5wdXQtYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuJGJvcmRlci1jb2xvcjogJGdyYXk7XG5cbiRoZWFkZXItYmFja2dyb3VuZC1jb2xvcjogJGxheW91dC1ibG9jaztcbiRoZWFkZXItdGV4dC1jb2xvci1kYXJrOiAkZGFyay10ZXh0O1xuXG4kZm9vdGVyLWJhY2tncm91bmQtY29sb3I6ICRicm9rZW4td2hpdGU7XG4kZm9vdGVyLXRleHQtY29sb3I6ICRibGFjaztcbiRmb290ZXItaWNvbi1jb2xvcjogJGJsYWNrO1xuXG4kcHJvZHVjdC1jYXJkLWJhY2tncm91bmQ6ICRicm9rZW4td2hpdGU7XG5cbiRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjogJGJsYWNrO1xuJHBhZ2luYXRpb24tZ2FwLWNvbG9yOiAkcGFnZS1iYWNrZ3JvdW5kO1xuXG4kcGRwLWNvbnRlbnQtYmFja2dyb3VuZDogJHBhZ2UtYmFja2dyb3VuZDtcbiRwZHAtcHJldmlldy1iYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tIHJpZ2h0LCAjYzljM2MyIDEwJSwgI2U4ZTdlNiA1MCUpO1xuXG4kY29sb3ItZ3JpZC1ib3JkZXI6ICRncmF5LXRleHQ7XG4kY29sb3ItbGF5b3V0LWdyaWQtYm9yZGVyLXJpZ2h0LWNvbHVtbjogJGdyYXk7XG4kY2hlY2tvdXQtYm9keTogJHBhZ2UtYmFja2dyb3VuZDtcblxuLy8gVGFibGVzXG4kY29sb3ItdGFibGUtdGV4dDogJHdoaXRlO1xuJGNvbG9yLXRhYmxlLWJvcmRlcjogJHNpbHZlcjtcbiRjb2xvci10YWJzLXRhYmxlOiAkd2hpdGU7XG4kY29sb3ItdGFibGUtcm93LXNlcGFyYXRvcjogJGRhcmstdGV4dDtcblxuLy8gRm9udFxuJGNvbG9yLWh5cGVybGluazogdmFyKC0tYnJhbmQtY29sb3IpO1xuXG4vLyBDb250ZW50XG4kY29sb3ItZnJlZS1zaGlwcGluZzogJGdyZWVuO1xuXG4kZmlsdGVyLWNvbG9yczogKFxuICBmaWx0ZXItYmx1ZTogJGJsdWUsXG4gIGZpbHRlci1yZWQ6ICRyZWQsXG4gIGZpbHRlci1ncmVlbjogJGdyZWVuLFxuICBmaWx0ZXIteWVsbG93OiAkeWVsbG93LFxuICBmaWx0ZXItb3JhbmdlOiAkb3JhbmdlLFxuICBmaWx0ZXItcHVycGxlOiAkcHVycGxlLFxuICBmaWx0ZXItc2t5OiAgJHNreSxcbiAgZmlsdGVyLWJsYWNrOiAkYmxhY2ssXG4gIGZpbHRlci1icm93bjogJGJyb3duLFxuICBmaWx0ZXItd2hpdGU6ICR3aGl0ZSxcbik7XG5cbiRwb3B1cC1vdmVybGF5OiByZ2JhKCRibGFjaywgMC41KTtcbiRsb2FkZXItb3ZlcmxheTogcmdiYSgkYmxhY2ssIDAuNSk7XG5cbiRsaWdodC1ncmVlbi1iYWNrZ3JvdW5kOiByZ2JhKDIzNCwgMjQ2LCAyMzQsIDAuODcpO1xuIiwiQGltcG9ydCAnLi4vY29uZmlnL21haW4nO1xuXG5AbWl4aW4gbWluLXdpZHRoKCRrZXkpIHtcbiAgJHNpemU6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAka2V5KTtcbiAgQGlmICRzaXplID09IG51bGwge1xuICAgICRzaXplOiAka2V5O1xuICB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2l6ZSkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBtYXgtd2lkdGgoJGtleSkge1xuICAkc2l6ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICRrZXkpO1xuICBAaWYgJHNpemUgPT0gbnVsbCB7XG4gICAgJHNpemU6ICRrZXk7XG4gIH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzaXplKSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIHJhbmdlLXdpZHRoKCRtaW4sICRtYXgpIHtcbiAgJHNpemUtbWluOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG1pbik7XG4gIEBpZiAkc2l6ZS1taW4gPT0gbnVsbCB7XG4gICAgJHNpemUtbWluOiAka2V5O1xuICB9XG5cbiAgJHNpemUtbWF4OiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG1heCk7XG4gIEBpZiAkc2l6ZS1tYXggPT0gbnVsbCB7XG4gICAgJHNpemUtbWF4OiAka2V5O1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzaXplLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzaXplLW1heCkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBoYXNIb3ZlcigpIHtcbiAgQG1lZGlhIChob3ZlcjogaG92ZXIpIGFuZCAocG9pbnRlcjogZmluZSkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBkaXNwbGF5LW1pbi1zY3JlZW4oJGtleSkge1xuICBkaXNwbGF5OiBub25lO1xuICBAaW5jbHVkZSBtaW4td2lkdGgoJGtleSkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbkBtaXhpbiBkaXNwbGF5LW1heC1zY3JlZW4oJGtleSkge1xuICBkaXNwbGF5OiBub25lO1xuICBAaW5jbHVkZSBtYXgtd2lkdGgoJGtleSkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbkBtaXhpbiBjbGVhcmZpeCB7XG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cbiIsIkBrZXlmcmFtZXMgcm90YXRlIHtcbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogcm90YXRlWigzNjBkZWcpO1xuICB9XG59XG5cbi5zcGMtY29udGFpbmVyIGFzaWRlIHtcbiAgYmFja2dyb3VuZDogJHdoaXRlO1xuICBsaW5lLWhlaWdodDogMjtcbiAgcGFkZGluZzogMy42cmVtO1xuICBAaW5jbHVkZSBtYXgtd2lkdGgoJHNwYy1icmVha3BvaW50KSB7XG4gICAgb3JkZXI6IC0xO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZzogMCAxcmVtO1xuICB9XG4gID4gKiB7XG4gICAgbWF4LXdpZHRoOiA0NXJlbTtcbiAgICBtYXJnaW46IGF1dG87XG4gIH1cbiAgY291bnQtZG93bi1jaGVja291dDpub3QoOmVtcHR5KTpub3QoW2hpZGRlbl0pIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIG1hcmdpbjogMnJlbSBhdXRvIDFyZW07XG4gICAgQGluY2x1ZGUgbWluLXdpZHRoKCRzcGMtYnJlYWtwb2ludCkge1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgfVxuICAgIHRpbWUge1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LWNvbnRlbnQtYm9sZDtcbiAgICB9XG4gIH1cbiAgLmhlYWRsaW5lLW1lZGl1bS1zZWN0aW9uIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICB9XG4gIC5oZWFkZXIsIC5wcm9kdWN0LWZpbmlzaGluZyB7XG4gICAgZGlzcGxheTogbm9uZVxuICB9XG4gID4gLmhlYWRsaW5lLW1lZGl1bS1zZWN0aW9uIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIH1cbiAgLmNhcnQtaW1hZ2UtY29udGFpbmVyIGltZyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIC5jYXJ0LWl0ZW0ge1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgYm9yZGVyLWJvdHRvbTogLjFyZW0gc29saWQgJHNpbHZlcjtcbiAgICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbiAgfVxuICAuY2FydC1pdGVtLmRlYWN0aXZhdGVkIHtcbiAgICBvcGFjaXR5OiAuNjtcbiAgICAmOmhvdmVyIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICAgIC5wcm9kdWN0LXJlbW92ZSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICB9XG4gIC5hcnRpY2xlLWRlc2NyaXB0aW9uIHtcbiAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgfVxuICAucHJvZHVjdC1uYW1lIHtcbiAgICBmb250LWZhbWlseTogJGZvbnQtYm9sZDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlO1xuICB9XG4gIC5jYXJ0LWFydGlzdCB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWV4dHJhLWJvbGQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxuICBkaXYubXQtMSB7XG4gICAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgfVxuICBidXR0b24ge1xuICAgIGJvcmRlcjogMDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb2xvcjogdmFyKC0tYnJhbmQtY29sb3IpO1xuICAgIH1cbiAgfVxuICAuZml4ZWQtYXJ0aWNsZS1hbW91bnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgc3BhbiB7XG4gICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICB9XG4gIH1cbiAgLmFydGljbGUtYW1vdW50IHtcbiAgICBmb250LXNpemU6IDA7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgLmFjdGlvbnMge1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogOXJlbSAzcmVtO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGdhcDogMS41cmVtO1xuICAgIH1cbiAgICBpbnB1dCB7XG4gICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgIGJvcmRlcjogLjFyZW0gc29saWQgJGdyYXktYmFja2dyb3VuZDtcbiAgICAgIHdpZHRoOiAzY2g7XG4gICAgICBwYWRkaW5nOiAuNXJlbSAuMnJlbTtcbiAgICAgIG1hcmdpbjogMCAxcmVtO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgfVxuICAuY2FydC1xdWFudGl0eS1jaGFuZ2Uge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYnV0dG9uIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG5cbiAgICAmLmhpZGRlbiB7XG4gICAgICAuY2FydC1pbmNyZW1lbnQsIGlucHV0IHtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBjb2xvcjogJGdyYXk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnByb2R1Y3QtcmVtb3ZlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgc3ZnIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1icmFuZC1jb2xvcik7XG4gICAgICB3aWR0aDogM3JlbTtcbiAgICAgIGhlaWdodDogM3JlbTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG4gICAgYSB7XG4gICAgICBjb2xvcjogdmFyKC0tYnJhbmQtY29sb3IpO1xuICAgIH1cbiAgfVxuICAuYXJ0aWNsZS1wcmljZSB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWNvbnRlbnQtYm9sZDtcbiAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICBqdXN0aWZ5LXNlbGY6IGZsZXgtZW5kO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBzIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1jb250ZW50O1xuICAgIH1cbiAgICA+IGRpdiB7XG4gICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgIGNvbG9yOiB2YXIoLS1icmFuZC1jb2xvcik7XG4gICAgfVxuICB9XG4gIC5jb3Vwb24tZm9ybS1jb250YWluZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiAyLjdyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICBib3JkZXItYm90dG9tOiAuMXJlbSBzb2xpZCAkc2lsdmVyO1xuICAgIC5oZWFkbGluZS1tZWRpdW0tc2VjdGlvbiB7XG4gICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICB9XG4gIH1cbiAgLmNvdXBvbi1mb3JtIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byBhdXRvO1xuICAgIGdhcDogMXJlbTtcbiAgICBpbnB1dCB7XG4gICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgYm9yZGVyOiAuMXJlbSBzb2xpZCAkc2lsdmVyO1xuICAgICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgfVxuICAgIH1cbiAgICBidXR0b24ge1xuICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgIGJvcmRlcjogLjFyZW0gc29saWQgJGJsYWNrO1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LWNvbnRlbnQtYm9sZDtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gIH1cbiAgLmNoZWNrb3V0LWNvdXBvbiB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciA1cmVtO1xuICB9XG4gIGRpdi5vdmVydmlldy1zdW1zIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZsb2F0OiBub25lO1xuICAgIC5sb2FkaW5nLWluZGljYXRvciB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgPiBpIHtcbiAgICAgICAgYW5pbWF0aW9uOiByb3RhdGUgLjVzIGxpbmVhciBpbmZpbml0ZTtcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gICAgLmxvYWRpbmcge1xuICAgICAgLmxvYWRpbmctaW5kaWNhdG9yIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgICB0YWJsZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICAgIHRhYmxlIHtcbiAgICAgIGJvcmRlci1zcGFjaW5nOiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgfVxuICAgICAgdGQ6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgcGFkZGluZzogMCAuNXJlbTtcbiAgICAgIH1cbiAgICAgIHRkOmxhc3QtY2hpbGQge1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWNvbnRlbnQtYm9sZDtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgIH1cbiAgICAgIC50b3RhbCB0ZCB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1jb250ZW50LWJvbGQ7XG4gICAgICAgIGJvcmRlci10b3A6IC4xcmVtIHNvbGlkICRibGFjaztcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZm9udC1zaXplOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgICB9XG4gICAgICAuaW5jbHVkZWQtdGF4IHtcbiAgICAgICAgb3BhY2l0eTogLjg7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBpbml0aWFsO1xuICAgICAgfVxuICAgICAgLmNvdXBvbi1yZW1vdmUge1xuICAgICAgICBjb2xvcjogdmFyKC0tYnJhbmQtY29sb3IpO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICB9XG4gICAgICAuZGlzY291bnQge1xuICAgICAgICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5jaGVja291dC1zaGlwbWVudC1lc3RpbWF0aW9uIHtcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICB9XG59XG5cbi5zcGMtY29udGFpbmVyIHtcbiAgc3VtbWFyeSB7XG4gICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWNvbnRlbnQtYm9sZDtcbiAgICBsaW5lLWhlaWdodDogNC44cmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgJjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBpY29uKGRyb3Bkb3duKTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogLjNyZW07XG4gICAgICBsZWZ0OiAxcmVtO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtaW4td2lkdGgoJHNwYy1icmVha3BvaW50KSB7XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICB9XG4gICAgfVxuICAgICY6Om1hcmtlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG4gIFtvcGVuXSBzdW1tYXJ5OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICB9XG59XG4iLCIkZm9udC1tZWRpdW06ICdhcmNoaXZvJywgJ21lZGl1bS1mYWxsYmFjaycsIGFyaWFsO1xuJGZvbnQtYm9sZDogJ2FyY2hpdm8tYm9sZCcsICdzZW1pYm9sZC1mYWxsYmFjaycsIGFyaWFsO1xuJGZvbnQtZXh0cmEtYm9sZDogJ2FyY2hpdm8tYmxhY2snLCAnYmxhY2stZmFsbGJhY2snLCBhcmlhbDtcbiRmb250LWljb246ICdpY29tb29uJztcblxuJGZvbnQtaGVhZGVyczogJGZvbnQtYm9sZDtcbiRmb250LWNvbnRlbnQ6ICRmb250LW1lZGl1bTtcbiRmb250LWNvbnRlbnQtYm9sZDogJGZvbnQtYm9sZDtcbiRmb250LWNvbnRlbnQtaXRhbGljOiAkZm9udC1tZWRpdW07XG5cbiRkZWZhdWx0LWZvbnQtc2l6ZTogMS41cmVtO1xuLy8gc3R5bGVsaW50LWRpc2FibGVcbiRkZWZhdWx0LWZvbnQtc2l6ZS1hYnNvbHV0ZTogMTVweDtcbi8vIHN0eWxlbGludC1lbmFibGVcblxuJGZvbnQtc2l6ZS1jYXJ0LXByb2R1Y3QtZGVzY3JpcHRpb246IDAuOHJlbTtcblxuLy8gbGluZSBoZWlnaHRzXG4kbGluZS1oZWlnaHQtc2VvOiAxLjM3NXJlbTtcblxuJGljb25zOiAoXG4gICAgICAgIHJpZ2h0LWFycm93OiBcIlxcZTk0Y1wiLFxuICAgICAgICBsZWZ0LWFycm93OiBcIlxcZTk0YlwiLFxuICAgICAgICBkZWxldGUtZmlsbGVkOiBcIlxcZTkzNlwiLFxuICAgICAgICBjcm9zczogXCJcXGU5NDVcIixcbiAgICAgICAgY2xvc2UtYm9sZDogXCJcXGU5NDhcIixcbiAgICAgICAgc3VjY2Vzcy1jaXJjbGU6IFwiXFxlOTQ5XCIsXG4gICAgICAgIGJ1bGI6IFwiXFxlOTRhXCIsXG4gICAgICAgIGxpbms6IFwiXFxlOTQ2XCIsXG4gICAgICAgIHNoYXJlOiBcIlxcZTk0N1wiLFxuICAgICAgICBzZWN1cml0eTogXCJcXGU5MzNcIixcbiAgICAgICAgcXVhbGl0eTogXCJcXGU5MzRcIixcbiAgICAgICAgcmV0dXJuMTogXCJcXGU5MzVcIixcbiAgICAgICAgYXI6IFwiXFxlOTQ0XCIsXG4gICAgICAgIGZzOiBcIlxcZTk0M1wiLFxuICAgICAgICBzdGFyLWVtcHR5OiAnXFxlOWQ3JyxcbiAgICAgICAgY29sdW1uMS1maWxsZWQ6ICdcXGU5M2YnLFxuICAgICAgICBjb2x1bW4xOiAnXFxlOTQwJyxcbiAgICAgICAgY29sdW1uMi1maWxsZWQ6ICdcXGU5NDEnLFxuICAgICAgICBjb2x1bW4yOiAnXFxlOTQyJyxcbiAgICAgICAgZXllOiAnXFxlOWNlJyxcbiAgICAgICAgcGVuY2lsOiAnXFxlOTE2JyxcbiAgICAgICAgd3JpdGU6ICdcXGU5MTYnLFxuICAgICAgICBlZGl0OiAnXFxlOTE2JyxcbiAgICAgICAgZmlsdGVyOiAnXFxlOTE1JyxcbiAgICAgICAgZnVubmVsOiAnXFxlOTE1JyxcbiAgICAgICAgamFocmUtZ2FyYW50aWU6ICdcXGU5MzknLFxuICAgICAgICBmYXJiYnJpbGxhbno6ICdcXGU5M2EnLFxuICAgICAgICByZXR1cm4yOiAnXFxlOTNiJyxcbiAgICAgICAgcGhvbmUtbWluaTogJ1xcZTkyOScsXG4gICAgICAgIHBpbjogJ1xcZTkyYScsXG4gICAgICAgIHBob25lLW1pbmktZW1wdHk6ICdcXGU5MmInLFxuICAgICAgICBwaG9uZS1lbXB0eTogJ1xcZTkyYycsXG4gICAgICAgIGhlYXJ0LW1pbmktZW1wdHk6ICdcXGU5MmQnLFxuICAgICAgICBhcnJvdy1sZWZ0LWNpcmNsZTI6ICdcXGU5MmUnLFxuICAgICAgICBhcnJvdy1yaWdodC1jaXJjbGUyMjogJ1xcZTkyZicsXG4gICAgICAgIGFycm93LXJpZ2h0LWNpcmNsZTI6ICdcXGU5MzAnLFxuICAgICAgICBhdWRpby1wYXVzZTogJ1xcZTkzMScsXG4gICAgICAgIGF1ZGlvMS1vZmYtcGF0aDE6ICdcXGU5MzInLFxuICAgICAgICBhdWRpbzEtb2ZmLXBhdGgyOiAnXFxlOTMzJyxcbiAgICAgICAgYXVkaW8xLW9mZi1wYXRoMzogJ1xcZTkzNCcsXG4gICAgICAgIGF1ZGlvMS1vZmYtcGF0aDQ6ICdcXGU5MzUnLFxuICAgICAgICBhdWRpbzEtb2ZmLXBhdGg1OiAnXFxlOTM2JyxcbiAgICAgICAgYXVkaW8yLW9mZjogJ1xcZTkzNycsXG4gICAgICAgIGF1ZGlvMi1wYXVzZTogJ1xcZTkzOCcsXG4gICAgICAgIHN0ZXAxLWFjdGl2ZTogJ1xcZTkyMScsXG4gICAgICAgIHN0ZXAxLWluYWN0aXZlOiAnXFxlOTIyJyxcbiAgICAgICAgc3RlcDItYWN0aXZlOiAnXFxlOTIzJyxcbiAgICAgICAgc3RlcDItaW5hY3RpdmU6ICdcXGU5MjQnLFxuICAgICAgICBzdGVwMy1hY3RpdmU6ICdcXGU5MjUnLFxuICAgICAgICBzdGVwMy1pbmFjdGl2ZTogJ1xcZTkyNicsXG4gICAgICAgIHN0ZXA0LWFjdGl2ZTogJ1xcZTkyNycsXG4gICAgICAgIHN0ZXA0LWluYWN0aXZlOiAnXFxlOTI4JyxcbiAgICAgICAgZWRpdC1maWxsOiAnXFxlOTFkJyxcbiAgICAgICAgaW5mby1maWxsOiAnXFxlOTFlJyxcbiAgICAgICAgcGx1cy1maWxsOiAnXFxlOTFmJyxcbiAgICAgICAgc3RlcC1jaGVjazogJ1xcZTkyMCcsXG4gICAgICAgIGhhbWJ1cmdlcjogJ1xcZTkxNycsXG4gICAgICAgIGFycm93LWxlZnQtY2lyY2xlOiAnXFxlOTE4JyxcbiAgICAgICAgYXJyb3ctbGVmdDogJ1xcZTkxOScsXG4gICAgICAgIGFycm93LXJpZ2h0LWNpcmNsZTogJ1xcZTkxYScsXG4gICAgICAgIGFycm93LXJpZ2h0OiAnXFxlOTFiJyxcbiAgICAgICAgYnViYmxlLWZpbGw6ICdcXGU5MWMnLFxuICAgICAgICBidWJibGU6ICdcXGU5M2MnLFxuICAgICAgICBjaGVjay1taW5pOiAnXFxlOTNkJyxcbiAgICAgICAgc2VhcmNoOiAnXFxlOTE0JyxcbiAgICAgICAgbHVtYXMtbG9nbzogJ1xcZTkwMCcsXG4gICAgICAgIGFjY291bnQ6ICdcXGU5MDEnLFxuICAgICAgICBjYXJ0OiAnXFxlOTAyJyxcbiAgICAgICAgaGVhcnQtZW1wdHk6ICdcXGU5MDMnLFxuICAgICAgICBoZWFydC1maWxsZWQ6ICdcXGU5MDQnLFxuICAgICAgICBwaG9uZS1maWxsZWQ6ICdcXGU5MDUnLFxuICAgICAgICBwaW4tZmlsbGVkOiAnXFxlOTA2JyxcbiAgICAgICAgcmV0dXJuLWZpbGxlZDogJ1xcZTkwNycsXG4gICAgICAgIHRydWNrMjogJ1xcZTkwOCcsXG4gICAgICAgIGhlYXJ0OiAnXFxlOTA5JyxcbiAgICAgICAgbGlrZTogJ1xcZTkwOScsXG4gICAgICAgIGxvdmU6ICdcXGU5MDknLFxuICAgICAgICBmYXZvcml0ZTogJ1xcZTkwOScsXG4gICAgICAgIHJldHVybi1mb290ZXI6ICdcXGU5MGEnLFxuICAgICAgICByZXR1cm46ICdcXGU5MGInLFxuICAgICAgICB0cnVjazogJ1xcZTkwYycsXG4gICAgICAgIHBob25lLWZvb3RlcjogJ1xcZTkwZCcsXG4gICAgICAgIHRydWNrLWZvb3RlcjogJ1xcZTkwZScsXG4gICAgICAgIGFydC1zZWN1cml0eS1mb290ZXI6ICdcXGU5MGYnLFxuICAgICAgICBlbWFpbDogJ1xcZTYwMCcsXG4gICAgICAgIGxvY2FsX3BpbjogJ1xcZTYwMScsXG4gICAgICAgIGRyb3Bkb3duOiAnXFxlNjAyJyxcbiAgICAgICAgY2hlY2s6ICdcXGU2MDMnLFxuICAgICAgICBsb2dpbjogJ1xcZTYwNCcsXG4gICAgICAgIGZhY2Vib29rOiAnXFxlNjA1JyxcbiAgICAgICAgZ29vZ2xlcGx1czogJ1xcZTYwNicsXG4gICAgICAgIHBpbnRlcmVzdDogJ1xcZTYwNycsXG4gICAgICAgIHR3aXR0ZXI6ICdcXGU2MDgnLFxuICAgICAgICBpbnN0YWdyYW06ICdcXGU2MDknLFxuICAgICAgICBwaG9uZTogJ1xcZTYwYScsXG4gICAgICAgIGluZm86ICdcXGU2MGMnLFxuICAgICAgICBzaG9wcGluZ19jYXJ0OiAnXFxlNjBkJyxcbiAgICAgICAgYmFjazogJ1xcZTYwZScsXG4gICAgICAgIGZvcndhcmQ6ICdcXGU2MGYnLFxuICAgICAgICBjbG9zZTogJ1xcZTYxMCcsXG4gICAgICAgIGxlc3M6ICdcXGU2MTEnLFxuICAgICAgICBtb3JlOiAnXFxlNjEyJyxcbiAgICAgICAgbWFnbmlmeWluZ19nbGFzczogJ1xcZTYxMycsXG4gICAgICAgIGVycm9yOiAnXFxlNjE0JyxcbiAgICAgICAgc2FmZTogJ1xcZTYxNScsXG4gICAgICAgIG1pbnVzOiAnXFxlNjE2JyxcbiAgICAgICAgcGx1czogJ1xcZTYxNycsXG4gICAgICAgIGNoZWNrb3V0LWxlc3M6ICdcXGU5MTAnLFxuICAgICAgICBjaGVja291dC1tb3JlOiAnXFxlOTExJyxcbiAgICAgICAgc3Bpbm5lcjogJ1xcZTkxMicsXG4gICAgICAgIHdoYXRzYXBwOiAnXFxlOTEzJyxcbiAgICAgICAgYXJ0LWZpbmRlcjogJ1xcZTkzZScsXG4gICAgICAgIGNvaW4tZG9sbGFyOiAnXFxlOTRiJ1xuKTtcblxuJGljb25zLW1hcHBlZDogKFxuICAgICAgICB3YXJyYW50eTogJ2phaHJlLWdhcmFudGllJyxcbiAgICAgICAgYmFsYW5jZTogJ2ZhcmJicmlsbGFueidcbik7XG4iLCJAbWl4aW4gZGlzcGxheS1mbGV4IHtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC1tb3otYm94O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG5AbWl4aW4gZGlzcGxheS1mbGV4LWNlbnRlcmVkIHtcbiAgQGluY2x1ZGUgZGlzcGxheS1mbGV4KCk7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbkBtaXhpbiBzaXplKCR2YWx1ZSkge1xuICAkd2lkdGg6IG50aCgkdmFsdWUsIDEpO1xuICAkaGVpZ2h0OiAkd2lkdGg7XG5cbiAgQGlmIGxlbmd0aCgkdmFsdWUpID4gMSB7XG4gICAgJGhlaWdodDogbnRoKCR2YWx1ZSwgMik7XG4gIH1cblxuICBAaWYgaXMtc2l6ZSgkaGVpZ2h0KSB7XG4gICAgaGVpZ2h0OiAkaGVpZ2h0O1xuICB9IEBlbHNlIHtcbiAgICBAd2FybiBcImAjeyRoZWlnaHR9YCBpcyBub3QgYSB2YWxpZCBsZW5ndGggZm9yIGAkaGVpZ2h0YC5cIjtcbiAgfVxuXG4gIEBpZiBpcy1zaXplKCR3aWR0aCkge1xuICAgIHdpZHRoOiAkd2lkdGg7XG4gIH0gQGVsc2Uge1xuICAgIEB3YXJuIFwiYCN7JHdpZHRofWAgaXMgbm90IGEgdmFsaWQgbGVuZ3RoIGZvciB0aGUgYCR3aWR0aGAuXCI7XG4gIH1cbn1cblxuQG1peGluIHBvc2l0aW9uKCRwb3NpdGlvbiwgJHRvcDogbnVsbCwgJHJpZ2h0OiBudWxsLCAkYm90dG9tOiBudWxsLCAkbGVmdDogbnVsbCkge1xuICBwb3NpdGlvbjogJHBvc2l0aW9uO1xuICB0b3A6ICR0b3A7XG4gIHJpZ2h0OiAkcmlnaHQ7XG4gIGJvdHRvbTogJGJvdHRvbTtcbiAgbGVmdDogJGxlZnQ7XG59XG5AbWl4aW4gc3Itb25seSgpIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgY2xpcC1wYXRoOiBpbnNldCg1MCUpO1xuICBib3JkZXI6IDA7XG59XG5cbkBtaXhpbiBib3JkZXIoJGNvb3JkaW5hdGVzOiAwIDAgMCAwLCAkc3R5bGU6IHNvbGlkLCAkY29sb3I6IHRyYW5zcGFyZW50KSB7XG4gICR0b3A6IG50aCgkY29vcmRpbmF0ZXMsIDEpO1xuICAkcmlnaHQ6IG50aCgkY29vcmRpbmF0ZXMsIDIpO1xuICAkYm90dG9tOiBudGgoJGNvb3JkaW5hdGVzLCAzKTtcbiAgJGxlZnQ6IG50aCgkY29vcmRpbmF0ZXMsIDQpO1xuXG4gIEBpZiBub3QodW5pdGxlc3MoJHRvcCkpIHtcbiAgICBib3JkZXItdG9wOiAkdG9wICRzdHlsZSAkY29sb3I7XG4gIH1cbiAgQGlmIG5vdCh1bml0bGVzcygkcmlnaHQpKSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAkcmlnaHQgJHN0eWxlICRjb2xvcjtcbiAgfVxuICBAaWYgbm90KHVuaXRsZXNzKCRib3R0b20pKSB7XG4gICAgYm9yZGVyLWJvdHRvbTogJGJvdHRvbSAkc3R5bGUgJGNvbG9yO1xuICB9XG4gIEBpZiBub3QodW5pdGxlc3MoJGxlZnQpKSB7XG4gICAgYm9yZGVyLWxlZnQ6ICRsZWZ0ICRzdHlsZSAkY29sb3I7XG4gIH1cbn1cblxuQG1peGluIGxvYWRpbmcoKSB7XG4gIEBpbmNsdWRlIGljb24oc3Bpbm5lcik7XG4gIGFuaW1hdGlvbjogbG9hZGluZy1yb3RhdGUgMXMgbGluZWFyIGluZmluaXRlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbkBtaXhpbiBtYXJnaW4tc2lkZSgkdmFsdWUpIHtcbiAgbWFyZ2luLWxlZnQ6ICN7JHZhbHVlfTtcbiAgbWFyZ2luLXJpZ2h0OiAjeyR2YWx1ZX07XG59XG5cbkBtaXhpbiBpY29uLWNvbnRlbnQoJGtleSkge1xuICAkY2hhcjogbWFwX2dldCgkaWNvbnMsICRrZXkpO1xuICBAaWYgKCRjaGFyID09IG51bGwpIHtcbiAgICBAZGVidWcgXCInI3ska2V5fScgaXMgbm90IGRlZmluZWQgaW4gJGljb25zXCI7XG4gIH1cbiAgY29udGVudDogXCIjeyRjaGFyfVwiO1xufVxuXG5AbWl4aW4gaWNvbigka2V5KSB7XG4gIEBpbmNsdWRlIGljb24tY29udGVudCgka2V5KTtcbiAgZm9udC1mYW1pbHk6ICdpY29tb29uJztcbiAgc3BlYWs6IG5vbmU7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsaW5lLWhlaWdodDogMTtcbiAgZm9udC1zaXplOiAycmVtO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cblxuQG1peGluIGFudGlhbGlhc2VkIHtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG59XG5cbkBtaXhpbiBicmVhay1pbnNpZGUoKSB7XG4gIC13ZWJraXQtY29sdW1uLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgYnJlYWstaW5zaWRlOiBhdm9pZDtcbn1cblxuQG1peGluIHJlc3BvbnNpdmUtZm9udC1zaXplKCRkZWZhdWx0LWZvbnQtc2l6ZSwgJG1pbi13aWR0aCwgJGZvbnQtc2l6ZSkge1xuICBmb250LXNpemU6ICRkZWZhdWx0LWZvbnQtc2l6ZTtcbiAgQGluY2x1ZGUgbWluLXdpZHRoKCRtaW4td2lkdGgpIHtcbiAgICBmb250LXNpemU6ICRmb250LXNpemU7XG4gIH1cbn1cblxuQG1peGluIGhlYWRsaW5lKCR0eXBlKSB7XG4gIEBpZiAkdHlwZSA9PSBtZWRpdW0ge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1ib2xkO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1mb250LXNpemUoMi42cmVtLCB0YWJsZXQsIDNyZW0pO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICB9XG5cbiAgQGlmICR0eXBlID09IG1lZGl1bS1zZWN0aW9uIHtcbiAgICBmb250LWZhbWlseTogJGZvbnQtYm9sZDtcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQtc2l6ZSgxLjhyZW0sIHRhYmxldCwgMnJlbSk7XG4gIH1cblxuICBAaWYgJHR5cGUgPT0gYmlnLXNlY3Rpb24ge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1ib2xkO1xuICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtZm9udC1zaXplKDIuMnJlbSwgdGFibGV0LCAyLjRyZW0pO1xuICB9XG5cbiAgQGlmICR0eXBlID09IGJsb2NrIHtcbiAgICBmb250LWZhbWlseTogJGZvbnQtYm9sZDtcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQtc2l6ZSgxLjRyZW0sIHRhYmxldCwgMS41cmVtKTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG59XG5cbkBtaXhpbiBoLTEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1mYW1pbHk6ICRmb250LWV4dHJhLWJvbGQ7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGZvbnQtc2l6ZTogM3JlbTtcbiAgbGluZS1oZWlnaHQ6IDMuNHJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDNlbTtcbiAgd29yZC1zcGFjaW5nOiAwLjFlbTtcbiAgQGluY2x1ZGUgbWluLXdpZHRoKGRlc2t0b3ApIHtcbiAgICBmb250LXNpemU6IDUuNXJlbTtcbiAgICBsaW5lLWhlaWdodDogNS44cmVtO1xuICB9XG59XG5cbkBtaXhpbiBoLTIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1mYW1pbHk6ICRmb250LWJvbGQ7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGluZS1oZWlnaHQ6IDIuNXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDNlbTtcblxuICBAaW5jbHVkZSBtaW4td2lkdGgoZGVza3RvcCkge1xuICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgICBsaW5lLWhlaWdodDogMy4zcmVtO1xuICB9XG59XG5AbWl4aW4gaC0zIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWV4dHJhLWJvbGQ7XG4gIGZvbnQtc2l6ZTogMi43cmVtO1xuICBmb250LXdlaWdodDogOTAwO1xuICBsaW5lLWhlaWdodDogMi43cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDRlbTtcbiAgd29yZC1zcGFjaW5nOiAwLjFlbTtcbiAgQGluY2x1ZGUgbWluLXdpZHRoKGRlc2t0b3ApIHtcbiAgICBmb250LXNpemU6IDRyZW07XG4gICAgbGluZS1oZWlnaHQ6IDRyZW07XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjA1ZW07XG4gICAgd29yZC1zcGFjaW5nOiAwLjFlbTtcbiAgfVxufVxuQG1peGluIGgtNCB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1leHRyYS1ib2xkO1xuICBmb250LXNpemU6IDEuOHJlbTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgbGluZS1oZWlnaHQ6IDEuOHJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjA0ZW07XG4gIHdvcmQtc3BhY2luZzogMC4xZW07XG4gIEBpbmNsdWRlIG1pbi13aWR0aChkZXNrdG9wKSB7XG4gICAgZm9udC1zaXplOiAyLjdyZW07XG4gICAgbGluZS1oZWlnaHQ6IDMuM3JlbTtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDVlbTtcbiAgICB3b3JkLXNwYWNpbmc6IDAuMWVtO1xuICB9XG59XG5AbWl4aW4gaC01IHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWJvbGQ7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBsaW5lLWhlaWdodDogMS44cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDRlbTtcbn1cbkBtaXhpbiBoLTYge1xuICBmb250LWZhbWlseTogJGZvbnQtbWVkaXVtO1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjNyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wNGVtO1xufVxuXG5AbWl4aW4gcGFyYWdyYXBoIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LW1lZGl1bTtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAycmVtO1xuICBmb250LXdlaWdodDogNTAwO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDRlbTtcbn1cbiIsIi5zcGMtcGF5bWVudCB7XG4gIGZvcm0ucGF5bWVudC1mb3JtIHtcbiAgICBsYWJlbCB7XG4gICAgICBjb2xvcjogJGJsYWNrO1xuICAgIH1cbiAgfVxuICAucGF5bWVudC1tZXRob2QtY29udGFpbmVyIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG4gIC5wYXltZW50LW9wdGlvbnMge1xuICAgIGJvcmRlci10b3A6IC4xcmVtIHNvbGlkICRncmF5LWJhY2tncm91bmQ7XG4gIH1cbiAgZGl2LnBheW1lbnQtbWV0aG9kLWZvcm0ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICAmLmFkeWVuLWNjIHtcbiAgICAgIC5pbnB1dC1taW1pYyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDRyZW07XG4gICAgICAgIGJvcmRlcjogMC4xcmVtIHNvbGlkICRncmF5O1xuICAgICAgICBwYWRkaW5nOiAwLjhyZW0gMXJlbSAwLjVyZW07XG4gICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIH1cbiAgICAgIC5hZHllbi1jc2UtY29udGFpbmVyOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgIH1cbiAgICAgIC5hZHllbi1jc2UtY29udGFpbmVyIHtcbiAgICAgICAgQGluY2x1ZGUgbWF4LXdpZHRoKCRzcGMtYnJlYWtwb2ludCkge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAuY3ZjIHtcbiAgICAgICAgICAgIG9yZGVyOiAxO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmFkeWVuLWNzZS1jb250YWluZXIgaW5wdXQge1xuICAgICAgICBwYWRkaW5nOiAuOHJlbSAxcmVtIC41cmVtO1xuICAgICAgfVxuICAgICAgbGFiZWwge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgICAuY3ZjIHtcbiAgICAgIGNsZWFyOiBsZWZ0O1xuICAgICAgaW5wdXQge1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgfVxuICAgIH1cbiAgICAmLnNlcGEge1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIC5maXJzdC1jb2x1bW4gaW5wdXQge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgfVxuICAgIH1cbiAgICBhIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1icmFuZC1jb2xvcik7XG4gICAgfVxuICB9XG4gIC5wYXltZW50LW1ldGhvZC1vcHRpb24ge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYm9yZGVyLWJvdHRvbTogLjFyZW0gc29saWQgJGdyYXktYmFja2dyb3VuZDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICAmLnNlbGVjdGVkICsgLnBheW1lbnQtbWV0aG9kLWZvcm0ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG4gIC5jaGVja291dC1wYXltZW50LWlucHV0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbiAgLmNoZWNrb3V0LXBheW1lbnQtaW5wdXQgaW5wdXRbdHlwZT1yYWRpb106Y2hlY2tlZCB+IHNwYW4ge1xuICAgIEBpbmNsdWRlIHJhZGlvQm9yZGVyU2VsZWN0ZWQodmFyKC0tYnJhbmQtY29sb3IpLCB2YXIoLS1icmFuZC1jb2xvcikpO1xuICB9XG4gIC5jaGVja291dC1wYXltZW50LWljb25zIHN2ZyB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1heC13aWR0aDogNzUlO1xuICAgIHdpZHRoOiA2cmVtO1xuICAgIGhlaWdodDogNHJlbTtcbiAgfVxuICAuY2hlY2tvdXQtcGF5bWVudC1pY29ucyBpbWcge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXgtd2lkdGg6IDc1JTtcbiAgfVxuICAuYnRuLnNhdmUtb3JkZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IDNyZW07XG4gICAgJjpub3QoW2Rpc2FibGVkXSkge1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnJhbmQtY29sb3IpO1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icmFuZC1jb2xvcik7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWJyYW5kLWNvbG9yKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuYWdiIHtcbiAgICBtYXJnaW46IDJyZW0gMCAwO1xuICAgIGEge1xuICAgICAgY29sb3I6IHZhcigtLWJyYW5kLWNvbG9yKTtcbiAgICB9XG4gIH1cbn1cblxuLnNwYy1wYXltZW50OmhhcygjUmF0ZXBheUludm9pY2VQYXltZW50Om5vdCguaGlkZGVuKSkge1xuICAjQWR5ZW5LbGFybmFQYXlMYXRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufSIsIi5zcGMtYWRkcmVzcyB7XG4gICYuY2xvc2VkIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAgIGJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIGZvcm0ge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICBbbmFtZT1cInByb2ZpbGVGb3JtW2ZrX2N1c3RvbWVyXVwiXSArIC5mb3JtLWdyb3VwX19mdWxsIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tZ3JvdXBfX2Z1bGwge1xuICAgIHBhZGRpbmctbGVmdDogLjVyZW07XG5cbiAgICAmLnR5cGUtcmFkaW8ge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgIC5jb2wteHMtMTIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5iaWxsaW5nLXNhbWUtYXMtc2hpcHBpbmcge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWFyZ2luOiAwIDAgMnJlbTtcblxuICAgIGlucHV0IHtcbiAgICAgIHdpZHRoOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLmFkZHJlc3MtbGlzdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwYWRkaW5nOiAzcmVtO1xuICAgIGdhcDogMXJlbTtcbiAgICBiYWNrZ3JvdW5kOiAkYnJva2VuLXdoaXRlO1xuICAgIG92ZXJmbG93LXg6IHNjcm9sbDtcblxuICAgIGxpIHtcbiAgICAgIGJvcmRlcjogLjFyZW0gc29saWQgJHNpbHZlcjtcbiAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICBhc3BlY3QtcmF0aW86IDg7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBjb2xvcjogJGRhcmstdGV4dDtcblxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJyYW5kLWNvbG9yKTtcbiAgICAgIH1cblxuICAgICAgJi5uZXcge1xuICAgICAgICBjb2xvcjogdmFyKC0tYnJhbmQtY29sb3IpO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgZGV0YWlscyB7XG4gICAgcGFkZGluZzogMXJlbSAwO1xuICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgfVxuXG4gIC5jdXN0b20tYWRkcmVzcy10b2dnbGUge1xuICAgIG1hcmdpbjogMnJlbSAwO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICY6Om1hcmtlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgY29udGVudDogJyc7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBpY29uKGRyb3Bkb3duKTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgbWFyZ2luOiAxcmVtO1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgIH1cbiAgfVxuXG4gIC5zaGlwcGluZy1hZGRyZXNzIHtcbiAgICBtYXJnaW46IDRyZW0gMDtcbiAgfVxuXG4gIC5wYXltZW50LWFkZHJlc3NlcyB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIGF1dG87XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBub25lO1xuICAgIGdhcDogMXJlbTtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG5cbiAgICAuYWRkcmVzcyBwOmZpcnN0LWNoaWxkIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1ib2xkO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4td2lkdGgoJHNwYy1icmVha3BvaW50KSB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gICAgfVxuICB9XG59Il0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9*/