/*!**********************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./themes/ABCwebTheme/assets/scss/index.scss ***!
  \**********************************************************************************************************************************************************************************************************************************************************************************************/
@charset "UTF-8";
.cfs-heading-xxl {
  font-size: 58px;
}
@media (max-width: 991.98px) {
  .cfs-heading-xxl {
    font-size: 48px;
  }
}
@media (max-width: 767.98px) {
  .cfs-heading-xxl {
    font-size: 36px;
  }
}

.cfs-heading-xl {
  font-size: 48px;
}
@media (max-width: 991.98px) {
  .cfs-heading-xl {
    font-size: 36px;
  }
}
@media (max-width: 767.98px) {
  .cfs-heading-xl {
    font-size: 28px;
  }
}

.cfs-heading-lg {
  font-size: 36px;
}
@media (max-width: 991.98px) {
  .cfs-heading-lg {
    font-size: 28px;
  }
}
@media (max-width: 767.98px) {
  .cfs-heading-lg {
    font-size: 24px;
  }
}

.cfs-heading-md {
  font-size: 28px;
}
@media (max-width: 991.98px) {
  .cfs-heading-md {
    font-size: 24px;
  }
}
@media (max-width: 767.98px) {
  .cfs-heading-md {
    font-size: 20px;
  }
}

.cfs-heading-sm {
  font-size: 24px;
}
@media (max-width: 991.98px) {
  .cfs-heading-sm {
    font-size: 20px;
  }
}
@media (max-width: 767.98px) {
  .cfs-heading-sm {
    font-size: 18px;
  }
}

.cfs-heading-sml {
  font-size: 20px;
}
@media (max-width: 991.98px) {
  .cfs-heading-sml {
    font-size: 18px;
  }
}
@media (max-width: 767.98px) {
  .cfs-heading-sml {
    font-size: 16px;
  }
}

.cfs-base {
  font-size: 18px;
}
@media (max-width: 991.98px) {
  .cfs-base {
    font-size: 16px;
  }
}
@media (max-width: 767.98px) {
  .cfs-base {
    font-size: 14px;
  }
}

.cfs-base-sm {
  font-size: 16px;
}
@media (max-width: 991.98px) {
  .cfs-base-sm {
    font-size: 16px;
  }
}
@media (max-width: 767.98px) {
  .cfs-base-sm {
    font-size: 14px;
  }
}

.cfs-info {
  font-size: 14px;
}
@media (max-width: 991.98px) {
  .cfs-info {
    font-size: 14px;
  }
}
@media (max-width: 767.98px) {
  .cfs-info {
    font-size: 13px;
  }
}

.cfs-info-sm {
  font-size: 13px;
}
@media (max-width: 991.98px) {
  .cfs-info-sm {
    font-size: 13px;
  }
}
@media (max-width: 767.98px) {
  .cfs-info-sm {
    font-size: 12px;
  }
}

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

.fw-medium {
  font-weight: 500 !important;
}

.fw-bold {
  font-weight: 600 !important;
}

.fw-bolder {
  font-weight: 700 !important;
}

.fw-boldest {
  font-weight: 800 !important;
}

.cfs-heading-xxl,
.cfs-heading-xl,
.cfs-heading-lg,
.cfs-heading-md {
  line-height: 1;
}

:root {
  --site-accent-color:#ff5000;
  --site-body-color:#4f1d16;
  --site-primary-color:#5e5436;
  --site-secondary-color:#a49262;
  --site-ternary-color: #fff3e3;
  --bs-link-color-rgb: 94, 84, 54;
  --bs-link-color: var(--site-primary-color);
  --bs-body-color: var(--site-body-color);
  --bs-link-hover-color-rgb: 255, 80, 0;
  --font-weight-bold: 500;
  --bs-tertiary-color: var(--site-secondary-color);
  --bs-primary-rgb: 255, 80, 0;
  --bs-primary: var(--site-accent-color);
  --bs-body-line-height: 1.4;
  --product-card-padding: 1.5rem;
  --bs-gray-500: #4f1d1666;
}

.btn-primary {
  --bs-btn-bg: var(--site-secondary-color);
  --bs-btn-border-color: var(--site-secondary-color);
  --bs-btn-hover-color: #FFF;
  --bs-btn-hover-bg: var(--site-accent-color);
  --bs-btn-hover-border-color: var(--site-accent-color);
}

.btn-outline-primary {
  --bs-btn-border-color: var(--site-secondary-color);
  --bs-btn-color: var(--site-secondary-color);
  --bs-btn-hover-color: #FFF;
  --bs-btn-hover-bg: var(--site-accent-color);
  --bs-btn-hover-border-color: var(--site-accent-color);
}

.btn-primary-dark {
  --bs-btn-bg: var(--site-primary-color);
  --bs-btn-border-color: var(--site-primary-color);
}

.breadcrumb {
  --bs-breadcrumb-margin-bottom: 2rem;
}

.mb-4_5 {
  margin-bottom: 2rem !important;
}

.mt-4_5 {
  margin-top: 2rem !important;
}

.ms-4_5 {
  margin-left: 2rem !important;
}

.me-4_5 {
  margin-right: 2rem !important;
}

.mb-5_2 {
  margin-bottom: 3.5rem !important;
}

.mt-5_2 {
  margin-top: 3.5rem !important;
}

.ms-5_2 {
  margin-left: 3.5rem !important;
}

.me-5_2 {
  margin-right: 3.5rem !important;
}

.mb-5_5 {
  margin-bottom: 4rem !important;
}

.mt-5_5 {
  margin-top: 4rem !important;
}

.ms-5_5 {
  margin-left: 4rem !important;
}

.me-5_5 {
  margin-right: 4rem !important;
}

.mb-7 {
  margin-bottom: 6rem !important;
}

.mt-7 {
  margin-top: 6rem !important;
}

.ms-7 {
  margin-left: 6rem !important;
}

.me-7 {
  margin-right: 6rem !important;
}

.mb-8 {
  margin-bottom: 7rem !important;
}

.mt-8 {
  margin-top: 7rem !important;
}

.ms-8 {
  margin-left: 7rem !important;
}

.me-8 {
  margin-right: 7rem !important;
}

.mb-9 {
  margin-bottom: 8rem !important;
}

.mt-9 {
  margin-top: 8rem !important;
}

.ms-9 {
  margin-left: 8rem !important;
}

.me-9 {
  margin-right: 8rem !important;
}

.mb-10 {
  margin-bottom: 9rem !important;
}

.mt-10 {
  margin-top: 9rem !important;
}

.ms-10 {
  margin-left: 9rem !important;
}

.me-10 {
  margin-right: 9rem !important;
}

.pb-4_5 {
  padding-bottom: 2rem !important;
}

.pt-4_5 {
  padding-top: 2rem !important;
}

.ps-4_5 {
  padding-left: 2rem !important;
}

.pe-4_5 {
  padding-right: 2rem !important;
}

.pb-5_2 {
  padding-bottom: 3.5rem !important;
}

.pt-5_2 {
  padding-top: 3.5rem !important;
}

.ps-5_2 {
  padding-left: 3.5rem !important;
}

.pe-5_2 {
  padding-right: 3.5rem !important;
}

.pb-5_5 {
  padding-bottom: 4rem !important;
}

.pt-5_5 {
  padding-top: 4rem !important;
}

.ps-5_5 {
  padding-left: 4rem !important;
}

.pe-5_5 {
  padding-right: 4rem !important;
}

.pb-7 {
  padding-bottom: 6rem !important;
}

.pt-7 {
  padding-top: 6rem !important;
}

.ps-7 {
  padding-left: 6rem !important;
}

.pe-7 {
  padding-right: 6rem !important;
}

.pb-8 {
  padding-bottom: 7rem !important;
}

.pt-8 {
  padding-top: 7rem !important;
}

.ps-8 {
  padding-left: 7rem !important;
}

.pe-8 {
  padding-right: 7rem !important;
}

.pb-9 {
  padding-bottom: 8rem !important;
}

.pt-9 {
  padding-top: 8rem !important;
}

.ps-9 {
  padding-left: 8rem !important;
}

.pe-9 {
  padding-right: 8rem !important;
}

.pb-10 {
  padding-bottom: 9rem !important;
}

.pt-10 {
  padding-top: 9rem !important;
}

.ps-10 {
  padding-left: 9rem !important;
}

.pe-10 {
  padding-right: 9rem !important;
}

body {
  /*test*/
  /*background: green !important;*/
  /*background-image: url('../images/test.jpg');*/
  --bs-heading-color: var(--site-primary-color);
  font-family: "Rethink Sans", sans-serif;
  font-optical-sizing: auto;
}

th {
  font-weight: var(--font-weight-bold);
}

@media (min-width: 1200px) {
  h1, .h1 {
    font-size: 3rem;
  }
  h2, .h2 {
    font-size: 2.4rem;
  }
}
a.link-reset:hover, .list-nav li a:hover {
  color: var(--site-accent-color);
}

.btn-light, .btn-transparent {
  --bs-btn-color: var(--site-body-color);
}

.text-black-50 {
  --bs-text-opacity: 1;
  color: rgba(79, 29, 22, 0.5) !important;
}

.offcanvas {
  --bs-offcanvas-zindex: 3000;
}

#top_bar {
  background-color: #490042;
  text-align: center;
  color: #FFF;
}

#header_shop_logo:hover {
  filter: invert(49%) sepia(93%) saturate(4377%) hue-rotate(359deg) brightness(99%) contrast(110%);
}

#main_site_menu {
  position: sticky;
  top: 0;
  background-color: #fff;
  z-index: 1031;
}

/*menu principal*/
#main_site_menu .offcanvas-lg {
  display: block;
}

.w_ico {
  display: flex;
  align-items: center;
}

.w_ico:before {
  content: "";
  display: inline-block;
  width: 18px;
  height: 18px;
  margin-right: 6px;
  background-size: contain;
  background-repeat: no-repeat;
  vertical-align: middle;
}

.ico_agrobotigues:before {
  background-image: url(/build/abcweb-theme/images/ico_agrobotigues.48e80be5.svg);
}

.ico_quisom:before {
  background-image: url(/build/abcweb-theme/images/logo_shop_min.6e47d107.svg);
}

.ico_oli:before {
  background-image: url(/build/abcweb-theme/images/ico_oli.10646672.svg);
}

@media (min-width: 992px) {
  .navbar-nav .nav-item.dropdown {
    position: static;
  }
  .navbar .dropdown-menu {
    --bs-border-radius: 0.8rem;
    --bs-border-width: 0;
    width: 100%;
    max-width: none;
    margin-top: 1rem;
    padding: 1.5rem;
    background-color: var(--site-ternary-color);
  }
  .navbar .dropdown-menu .taxon_name {
    font-weight: var(--font-weight-bold);
  }
  .navbar .dropdown-menu .nav-link {
    --bs-nav-link-padding-y: 0;
    --bs-nav-link-padding-x: 0;
  }
  .nav-link:hover {
    background-color: var(--site-ternary-color);
  }
  .dropdown-menu.show {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(275px, 1fr));
    gap: 10px; /* espacio entre columnas y filas */
    padding: 10px;
  }
  .dropdown-menu .nav-link {
    border: 1px solid transparent;
    display: block;
    padding: 8px 12px;
    white-space: normal; /* permite saltos de línea en los textos largos */
  }
  .dropdown-menu .nav-link strong {
    display: block;
    margin-bottom: 0.2em;
  }
  .dropdown-menu .nav-link .link_description {
    font-size: 0.9rem;
  }
  .dropdown-menu .nav-link:hover {
    border: 1px solid var(--site-accent-color);
    border-radius: 0.3rem;
  }
  .navbar-nav {
    --bs-nav-link-padding-x: 1rem;
    --bs-nav-link-padding-y: 0.5rem;
    --bs-navbar-active-color: var(--site-ternary-color);
  }
  #navbarNav .nav-link {
    border-radius: 12px;
  }
  #navbarNav .nav-link.show {
    background-color: var(--site-primary-color);
  }
}
.homepage_banner {
  background-size: cover;
  background-position: center center;
  color: #FFF;
  display: flex;
  align-items: center;
}

.homepage_banner.banner_type2 {
  height: 560px;
}

#homepage_banner_top {
  background: linear-gradient(to right, #000 0%, transparent 50%, transparent 100%), url(/build/abcweb-theme/images/fons_banner_home1.ef502a42.jpg);
  height: 500px;
  background-size: cover;
  background-position: center center;
  color: #FFF;
  display: flex;
  align-items: center;
}

#homepage_banner_top.banner_nadal {
  background-image: linear-gradient(to right, #000 0%, transparent 50%, transparent 100%), url(/build/abcweb-theme/images/fons_banner_home_nadal.4e89e53a.jpg);
}

.banner_overlay {
  position: relative;
  overflow: hidden;
}

.banner_overlay > * {
  z-index: 1;
}

.banner_overlay:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  mix-blend-mode: overlay;
  background-image: linear-gradient(to right, var(--site-body-color) 0%, var(--site-body-color) 70%, transparent 100%);
  opacity: 0.6;
}

.banner_overlay.ovr-65::before {
  opacity: calc(65 / 100);
}
.banner_overlay.ovr-70::before {
  opacity: calc(70 / 100);
}
.banner_overlay.ovr-75::before {
  opacity: calc(75 / 100);
}
.banner_overlay.ovr-80::before {
  opacity: calc(80 / 100);
}
.banner_overlay.ovr-85::before {
  opacity: calc(85 / 100);
}
.banner_overlay.ovr-90::before {
  opacity: calc(90 / 100);
}

.banner_overlay.overlay2:before {
  background-color: #4f1d16;
  background-image: none;
  opacity: 0.75;
}

.homepage_banner .btn,
#homepage_banner_top .btn {
  --bs-btn-border-radius:14px;
  --bs-btn-bg:var(--site-ternary-color);
  --bs-btn-hover-bg:var(--site-accent-color);
  --bs-btn-color: var(--site-primary-color);
}

.homepage_banner .title,
#homepage_banner_top .title {
  color: #FFF;
  margin-bottom: 1rem;
  font-weight: 600;
}

.homepage_banner p,
#homepage_banner_top p {
  margin-bottom: 2rem;
}

.homepage_banner .inner_conts,
#homepage_banner_top .inner_conts {
  max-width: 700px;
}

.homepage_banner.banner_type2 .inner_conts {
  max-width: 450px;
}

.homepage_banner.banner_type2 .cfs-heading-xl {
  line-height: 1;
  font-size: 40px;
}

.homepage_banner.banner_type2 .btn {
  --bs-btn-color: #490042;
}

.text-glow {
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.3), 0 0 20px rgba(0, 0, 0, 0.2), 1px 1px 2px rgba(0, 0, 0, 0.1);
}

#homepage_map_shops .inner-text {
  background-color: var(--site-ternary-color);
  color: var(--site-primary-color);
}

#homepage_map_shops .btn {
  --bs-btn-bg:var(--site-primary-color);
  --bs-btn-border-radius:14px;
  font-weight: var(--font-weight-bold);
}

/*
#homepage_map_shops {
  background-color: red; // color por defecto (antes de md)

}*/
@media (min-width: 768px) {
  .round-md-right {
    border-radius: 0 32px 32px 0 !important;
  }
  .round-md-left {
    border-radius: 32px 0 0 32px !important;
  }
}
#homepage_banner_cridaccio {
  --bs-heading-color: #FFF;
  color: #FFF;
  background-image: url(/build/abcweb-theme/images/decor_fons_nadal.69eebe3e.svg);
  background-size: cover;
  background-color: #490042;
  background-position: center;
  padding: 70px 20px;
}

#homepage_banner_cridaccio img {
  max-width: 100%;
}

#homepage_banner_cridaccio p {
  font-size: 1.25rem;
}

#homepage_banner_cridaccio .btn {
  --bs-btn-bg:var(--site-ternary-color);
  --bs-btn-border-radius:14px;
  font-weight: var(--font-weight-bold);
  color: #490042;
}

#homepage_banner_cridaccio .btn:hover {
  color: #FFF;
}

#homepage_banner_butlleti {
  --bs-heading-color: #FFF;
  color: #FFF;
  background: linear-gradient(to right, var(--site-body-color), transparent), url(/build/abcweb-theme/images/fons_banner_home2.5e5f494d.jpg);
  background-size: cover;
  background-color: #490042;
  background-position: center center;
  padding: 85px 50px;
  /*border-radius:14px;*/
}

#homepage_banner_butlleti .input-group {
  --bs-border-radius: 14px;
  max-width: 400px;
  padding: 3px;
}

#homepage_banner_butlleti .btn {
  border-radius: var(--bs-border-radius) !important;
}

.navbar {
  --bs-navbar-color: var(--site-primary-color);
  --bs-navbar-hover-color: var(--site-primary-color);
  --bs-navbar-active-color:$main-color;
}

/*custom loader*/
.sylius-shop-loader img,
.sylius-shop-loader .spinner-dots {
  display: none;
}

.sylius-shop-loader:before {
  content: "";
  display: inline-block;
  width: 64px;
  height: 64px;
  background-image: url(/build/abcweb-theme/images/loader.9a9a248c.gif);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
}

/*search bar*/
.col.searchdiv {
  flex: 2;
  background-color: var(--site-ternary-color);
  padding: 0;
  border-radius: 16px;
}

.col.searchdiv .input-group {
  align-items: center;
}

.col.searchdiv .form-control {
  background-color: transparent;
  border: 0;
}

.col.searchdiv .btn {
  --bs-btn-padding-x: 0.8rem;
  --bs-btn-bg: var(--site-secondary-color);
  --bs-btn-hover-bg: var(--site-accent-color);
  --bs-btn-color: #FFF;
}

.col.searchdiv .btn-sm {
  --bs-btn-border-radius: 12px;
}

.col.searchdiv .btn {
  border: 0;
  margin-right: 0.3rem;
}

.col.searchdiv:not(.in_content) .form-control {
  background-image: url(/build/abcweb-theme/images/ico_search.1c7e32c3.svg);
  background-repeat: no-repeat;
  background-position: 0.5rem center;
  padding-left: 2.5rem;
}

.col.searchdiv .form-control:focus {
  box-shadow: none;
}

.col.searchdiv:focus-within {
  box-shadow: 0 0 0 0.05rem var(--site-accent-color);
}

.col.searchdiv:focus-within .btn {
  --bs-btn-bg: #7a6d48;
}

.col.searchdiv.in_content .btn {
  margin-right: 0;
}

.col.searchdiv .input-group .btn:not(:last-child) {
  margin-right: 2px;
}

.products-grid {
  grid-gap: 3.5rem 1.5rem;
}
@media (max-width: 768px) {
  .products-grid {
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  }
}
@media (max-width: 465px) {
  .products-grid {
    grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
    grid-gap: 1rem;
  }
}

.mi-div {
  width: 100%;
  min-width: 300px;
  max-width: 800px;
  height: 50vh;
}
@media (min-width: 600px) and (max-width: 899px) {
  .mi-div {
    width: 80%;
  }
}
@media (min-width: 900px) {
  .mi-div {
    width: 60%;
  }
}

.simple_banner {
  min-height: 440px;
  background-size: cover;
  background-position: center center;
  color: #FFF;
  display: flex;
  align-items: center;
  padding: 80px 38px;
  font-size: 1.8rem;
  line-height: 1.1;
}
@media (max-width: 600px) {
  .simple_banner {
    padding: 24px;
    font-size: 1.5rem;
  }
}

.bg_banner_nadal {
  background-image: linear-gradient(to right, rgba(79, 29, 22, 0.6) 0%, transparent 75%, transparent 100%), url(/build/abcweb-theme/images/fons_header_cat_nadal.22f7468c.jpg);
}

.simple_banner .inner_conts {
  max-width: 600px;
}

/* elements */
.bloc_list {
  background-color: #fffcf8;
}

.bloc_list table {
  width: 100%;
}

.bloc_list td {
  border-bottom: 1px dotted #a49262;
  padding: 0.75rem 0;
}

.bloc_list tr:last-child td {
  border: 0;
}

.text-focus_color {
  color: #000;
}

/*Products*/
.products-grid > div {
  position: relative;
  border: 1px solid rgba(255, 80, 0, 0.1);
  border-radius: 14px;
  /*overflow: hidden;*/
  padding: var(--product-card-padding);
  transition: border-color 0.3s ease;
  text-align: center;
}
@media (max-width: 465px) {
  .products-grid > div {
    --product-card-padding: 0.5rem;
  }
}

.products-grid > div:hover {
  border-color: #ff5000;
}

.products-grid .h6 {
  color: var(--site-primary-color);
  font-size: 1.1rem;
  margin-bottom: 1rem;
}

.products-grid .card-prices {
  display: block;
  margin: 1rem 0;
}

.products-grid .price {
  color: #ff5000;
  font-size: 1.1rem;
}

.products-grid .btn_add_wishlist {
  position: absolute;
  padding: 0;
  width: 2rem;
  height: 2rem;
  background-color: var(--site-ternary-color);
  border-radius: 10px;
  top: calc(var(--product-card-padding) / 2);
  right: calc(var(--product-card-padding) / 2);
}

.products-grid .badge, .sticker_discount .badge {
  position: absolute;
  top: calc(var(--product-card-padding) / 2);
  left: calc(var(--product-card-padding) / 2);
  display: flex;
  justify-content: center; /* Centra horizontal */
  align-items: center; /* Centra vertical */
  background-color: #490042;
  color: #ff5000;
  font-size: 1.1rem;
  padding: 0 0.6rem;
  min-width: 4rem;
  aspect-ratio: 1/1;
  border-radius: 50%;
  transform: rotate(8deg);
}

.sticker_discount .badge {
  top: 35px;
  font-size: 3cqw;
}

@media (min-width: 768px) {
  .sticker_discount .badge {
    font-size: 2cqw;
  }
}
.products-grid .btn-primary {
  --bs-btn-bg: transparent;
  color: var(--site-primary-color);
}

.products-grid .btn-primary:hover {
  color: #FFF;
}

/* Producto */
.product-single-info h1 {
  font-weight: normal;
}
@media (min-width: 1200px) {
  .product-single-info h1 {
    font-size: 3rem;
  }
}

@media (min-width: 1200px) {
  .product-single-info .current_price {
    font-size: 2.25rem;
  }
}

.product-single-info .add-to-cart-form {
  display: flex;
  align-items: center;
  gap: 1rem;
}

.product-single-info .add-to-cart-form button {
  font-weight: bold;
  white-space: nowrap; /* Evita que el texto se divida en varias líneas */
}

.product-single-info .product-vendor:hover {
  text-decoration: none;
  color: inherit !important;
}

.form-control, .form-select {
  --bs-border-color: var(--site-secondary-color);
}

.form-check-input:checked {
  background-color: var(--site-accent-color);
  border-color: var(--site-accent-color);
}

.product-single-info .accordion-button {
  color: var(--site-primary-color);
  font-size: 1.5rem;
}

#reviews .single-review small {
  color: var(--site-primary-color);
}

.product-single-info #details {
  line-height: 1.5em;
}

/* de moment tots els h del producte son iguals */
.product-single-info #details h2,
.product-single-info #details h3,
.product-single-info #details h4 {
  font-size: 1.2em;
  font-weight: bold;
  color: var(--site-secondary-color);
  margin-bottom: 1rem;
}

@media (max-width: 575px) {
  .product-single-info .spotlight_thumbnails {
    /*display: none;*/
  }
}
@media (max-width: 575.98px) {
  .spotlight_thumbnails a {
    width: 60px;
  }
}

/*atributs producte*/
.product_attr-container {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  justify-content: flex-start;
  padding: 1rem 0;
}
.product_attr-container .product_attr-item {
  flex: 0 0 clamp(120px, 12vw, 180px);
  display: flex;
  aspect-ratio: 1/1;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
  padding: 10px;
  /*background: rgba(164,146,98,0.05);*/
  border: 1px solid rgba(255, 80, 0, 0.1);
}
.product_attr-container .product_attr-item img {
  max-width: 120px;
  max-height: 120px;
  width: auto;
  height: auto;
  object-fit: contain;
}

/*
.product_attr-container {
    display: grid;
    grid-template-columns: repeat(4, minmax(100px, 1fr));
    gap: 1rem;
    padding: 1rem 0;

    .product_attr-item {
        aspect-ratio: 1;
        display: flex;
        align-items: center;
        justify-content: center;
        border: 1px solid #e0e0e0;
        border-radius: 8px;
        background: #f8f9fa;

        img {
            max-width: 90%;
            max-height: 90%;
            width: auto;
            height: auto;
            object-fit: contain;
        }
    }
}*/
/*pag projecte */
.decor_acoopproj {
  background: url(/build/abcweb-theme/images/decor_acoopproj.d7619014.png) no-repeat right center;
  background-size: contain;
  max-width: 50%;
  aspect-ratio: 1/1;
  margin: 0 auto;
}

@media (min-width: 992px) {
  .decor_acoopproj {
    background-size: cover;
    max-width: none;
    aspect-ratio: 1/1.1;
  }
}
.text_block h2:not(:first-child) {
  margin-top: 3rem;
  margin-bottom: 1.5rem;
}

/*pag agrobotigues */
#agrobotigues_mapa {
  color: var(--site-primary-color);
  font-size: 1.1rem;
}

/*llistat botigues*/
.card-img-wrapper {
  position: relative;
}

.llista_botigues .card {
  --bs-card-title-color: var(--site-primary-color);
  --bs-card-color: var(--site-primary-color);
}

.llista_botigues .card-title {
  font-size: 1.5rem;
}

.llista_botigues .logo-overlay {
  opacity: 0;
  max-width: 172px;
  max-height: 172px;
  transition: opacity 0.3s;
}

.llista_botigues .card:hover .main-img {
  opacity: 0.2;
  transition: opacity 0.5s;
}

.llista_botigues .card:hover .logo-overlay {
  opacity: 1;
}

/*pag vendor*/
#vendor_info section {
  margin-bottom: 90px;
}

#vendor_header {
  font-size: 1.51rem;
  color: var(--site-primary-color);
  padding-bottom: 90px;
  border-bottom: 1px dotted var(--site-accent-color);
}

#vendor_header h1 {
  color: var(--site-secondary-color);
}

#vendor_header .vendor_logo img {
  max-height: 300px;
  object-fit: contain;
}

#vendor_main {
  font-size: 1.15rem;
}

#vendor_location h4 {
  color: var(--site-secondary-color);
}

#vendor_location {
  position: relative;
  padding: 140px 0;
  background-color: color-mix(in srgb, var(--site-secondary-color) 5%, transparent);
  box-shadow: -50vw 0 0px 0px color-mix(in srgb, var(--site-secondary-color) 5%, transparent), 50vw 0 0px 0px color-mix(in srgb, var(--site-secondary-color) 5%, transparent);
}

/* galeria */
.gallery img {
  border-radius: 24px;
  max-width: 100%;
}

.gallery img:not(:first-child) {
  display: none;
}

/* map */
.map-scroll .map-scroll_msg {
  display: block;
}

.map-scroll:before {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  top: 0;
  content: "";
  background: rgba(0, 0, 0, 0.3803921569);
  z-index: 999;
}

.map-scroll_msg {
  display: none;
  position: absolute;
  color: #FFF;
  top: 50%;
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  left: 0;
  right: 0;
  padding: 20px;
  z-index: 999;
  font-size: 2em;
  text-align: center;
}

.square_ratio {
  aspect-ratio: 1/1;
}

.map_square_small {
  width: 440px;
  height: 440px;
}

.map_square_medium {
  width: 580px;
  height: 580px;
  overflow: hidden;
}

/*pag categoria */
#category_header {
  position: relative;
  padding-left: 140px;
  min-height: 145px;
}

#category_header .element_icon {
  position: absolute;
  z-index: -1;
  left: 0;
  top: 0%;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 160px;
  height: 145px;
  background-image: url(/build/abcweb-theme/images/decor_fons_ico.0f803048.svg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
}

#category_header .element_icon img {
  max-width: 90px;
  max-height: 90px;
}

#category_header .element_description {
  font-size: 1.1rem;
  color: #000;
}

/*shop cart */
#sylius_shop_cart .cart-summary {
  --bs-light-rgb: 255, 243, 227;
}

#sylius_shop_cart .cart-summary .hstack {
  --bs-heading-color: #000;
  color: #000;
}

#sylius_shop_cart .h5 {
  font-weight: normal;
}

#sylius_shop_cart .cart-line-subtotal {
  color: var(--bs-body-color);
}

#sylius_shop_cart .add-cart-coupon .btn {
  --bs-btn-bg: rgb(94, 84, 54, 0.5);
}

.checkout-sidebar, .checkout-sidebar .h6 {
  color: #000;
  font-size: 1.15rem;
}

.checkout-sidebar .h5 {
  font-size: 1.4rem;
}

/*error 404*/
.msg_404 {
  background: url(/build/abcweb-theme/images/decor_404.4e8cf673.svg) no-repeat center top;
  padding-top: 230px;
  margin: 80px 0;
}

/*footer */
#page_footer {
  --bs-border-color: #a49262;
}

.footer_band {
  --text_color: var(--site-ternary-color);
  --heading-size: 1.3rem;
  --block-padding: 2.3rem;
}

.footer_block {
  padding-left: var(--block-padding);
}

.footer_band a,
.footer_band h2 {
  color: var(--text_color);
}

.footer_band h2 {
  position: relative;
  font-size: var(--heading-size);
  margin-bottom: 1rem;
}

.footer_block.info {
  --icon: url(/build/abcweb-theme/images/ico_info.eb90c8f0.svg);
}

.footer_block.social {
  --icon: url(/build/abcweb-theme/images/ico_like.eacb1531.svg);
}

.footer_block.contacte {
  --icon: url(/build/abcweb-theme/images/ico_location.0486647a.svg);
}

.footer_block.about {
  --icon: url(/build/abcweb-theme/images/ico_logomin.a0d45261.svg);
}

.footer_block h2:before {
  content: "";
  display: block;
  position: absolute;
  left: calc(var(--block-padding) * -1);
  top: -2px;
  width: 30px;
  height: 30px;
  background-image: var(--icon);
  background-repeat: no-repeat;
  background-position: center center;
}

.footer_block li {
  margin-bottom: 0.5rem;
}

.footer_block li a {
  text-decoration-style: dotted;
  opacity: 0.9;
}

.footer_block li a:hover {
  opacity: 1;
  text-decoration-style: solid;
}

.menu-social .instagram {
  --social-icon-img: url(/build/abcweb-theme/images/ico_instagram.2a9d56fe.svg);
}

.menu-social .facebook {
  --social-icon-img: url(/build/abcweb-theme/images/ico_facebook.6ae01ab9.svg);
}

.menu-social .twitter {
  --social-icon-img: url(/build/abcweb-theme/images/ico_twitter.88ebfe99.svg);
}

.menu-social .youtube {
  --social-icon-img: url(/build/abcweb-theme/images/ico_youtube.993526cd.svg);
}

ul.menu-social li a:before {
  content: "";
  display: block;
  width: 44px;
  height: 42px;
  background-color: var(--site-ternary-color);
  background-repeat: no-repeat;
  background-position: center center;
  mask-image: var(--social-icon-img);
  transition: background-color 0.15s ease-in-out;
}

ul.menu-social li a:hover:before {
  background-color: var(--site-accent-color);
}

ul.menu-social li a span {
  display: none;
}

#foot_info_legal1 {
  font-size: 0.8rem;
}

#foot_info_legal1 :last-child {
  margin-bottom: 0;
}

#foot_info_legal1 .bloc2 p {
  border-left: 1px solid var(--site-ternary-color);
  padding-left: 1rem;
}

#foot_info_legal1 .bloc3 p {
  padding-top: 2rem;
  margin-top: 2rem;
  border-top: 1px dotted var(--site-ternary-color);
}

#foot_info_legal2 {
  border-top: 1px solid var(--site-ternary-color);
  padding-top: 1.5rem;
}

@media (min-width: 992px) {
  #foot_info_legal2 li {
    display: contents;
  }
  #foot_info_legal2 li:not(:last-child)::after {
    content: " — "; /* Separador */
    margin-left: 0.5rem; /* Espacio a la izquierda del separador */
    margin-right: 0.5rem; /* Espacio a la derecha del separador */
  }
}
.links_gen a {
  text-decoration: none;
}

#footer_band1 {
  background-color: var(--site-body-color);
  color: var(--site-ternary-color);
}

#footer_band2 {
  background-color: var(--site-primary-color);
  color: var(--site-ternary-color);
}

/*footer heredado*/
#footer-sponsors {
  padding: 1.5rem 0;
  background: #E6E6E6;
}

@media (min-width: 768px) {
  #footer-sponsors {
    background: -moz-linear-gradient(left, #E6E6E6 50%, #F0F0F0 50%);
    background: -webkit-linear-gradient(left, #E6E6E6 50%, #F0F0F0 50%);
    background: linear-gradient(to right, #E6E6E6 50%, #F0F0F0 50%);
  }
}
#footer-sponsors .inner {
  display: flex;
  flex-wrap: wrap;
  overflow: hidden;
  color: #27343d;
  gap: 2rem;
}

#footer-sponsors .inner dl {
  flex: 1;
  margin: 0;
}

#footer-sponsors .inner dl:first-child {
  min-width: 50%;
}

#footer-sponsors dd {
  margin-bottom: 0.7em;
}

#footer-sponsors dt {
  display: inline-block;
  margin-right: 40px;
}

#footer-sponsors dt:last-child {
  margin: 0;
}

#menu-footer_logos {
  display: flex;
  flex-wrap: wrap; /* permite que los <li> se apilen cuando no hay ancho */
  gap: 3rem; /* separación entre elementos */
  padding: 1.5rem 0;
  margin: 0;
  list-style: none;
  align-items: center; /* opcional: alinea verticalmente */
}

#menu-footer_logos li {
  flex: 0 1 auto; /* ocupa el ancho de su contenido, pero se permite ajuste */
}

#menu-footer_logos img {
  max-width: 100%;
  height: auto;
  display: block;
}

/*BANNER NADAL*/
/* Contenidor que fa de capa de fons enfosquit i centra el contingut */
#banner_overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.5); /* fons negre semi-transparent */
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: auto; /* Per si el banner és molt gran */
  box-sizing: border-box;
  padding: 1rem; /* evitar que el banner toqui les vores si és gran */
  z-index: 2500; /* estar per sobre de la resta */
}

/* Banner */
#banner_nadal {
  max-width: 100%;
  max-height: 100%;
  box-sizing: border-box;
}

#banner_nadal {
  /* Variables CSS centralizadas */
  --color-fondo: #FFF3E3;
  --radius: 28px;
  --color-primari: #490042;
  --color-accent: #f96e24;
  position: relative;
  max-width: 1300px;
  margin: 0 auto;
  padding: 30px;
  font-family: "Rethink Sans", sans-serif;
}

#banner_nadal .main {
  border-radius: var(--radius);
  /*overflow: hidden;*/
  position: relative;
}

/* Flexbox columnas */
#banner_nadal .columns {
  display: flex;
  align-items: stretch;
}

/* La columna de texto ocupa el espacio restante */
#banner_nadal .col1 {
  position: relative;
  width: 350px;
  flex: 0 1 350px;
  padding: 32px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
  background: var(--color-fondo);
  border-radius: var(--radius) 0 0 var(--radius);
}

/* La columna de imagen solo ocupa lo que necesita */
#banner_nadal .col2 {
  position: relative;
  flex: 1 1 auto;
  display: flex;
  align-items: stretch;
  /*border-radius: 0 var(--radius) var(--radius) 0;*/
  /*overflow: hidden;*/
}

#banner_nadal .col2 img {
  display: block;
  max-width: 100%;
  height: auto;
  border-radius: 0 var(--radius) var(--radius) 0;
  object-fit: cover;
}

#banner_nadal h2 {
  color: var(--color-primari);
  font-weight: 600;
  font-size: 2rem;
  margin-top: 0;
  margin-bottom: 16px;
  line-height: 1;
}

#banner_nadal .descripcion {
  color: var(--color-primari);
  font-size: 1rem;
  margin-bottom: 16px;
}

#banner_nadal .frase {
  color: var(--color-accent);
  font-weight: 700;
  margin: 26px 0 16px;
  font-style: italic;
  text-align: center;
  line-height: 1.2;
}

#banner_nadal .link-btn {
  border: 1px solid var(--color-primari);
  background: transparent;
  border-radius: calc(var(--radius) / 3);
  padding: 10px 24px;
  color: var(--color-primari);
  transition: background 0.2s, color 0.2s;
  text-align: center;
  text-decoration: none;
}

#banner_nadal .link-btn:hover,
#banner_nadal .link-btn:focus {
  background: var(--color-primari);
  color: #fff;
}

#banner_nadal .decor {
  position: absolute;
  background: url(/build/abcweb-theme/images/decor_arbre.43e89718.svg) no-repeat;
  background-position: center center;
  background-size: contain;
  height: 142px;
  width: 132px;
  top: -70px;
  left: -60px;
  z-index: 2;
  transform: rotate(-23deg);
}

#banner_nadal .close-btn {
  display: block;
  position: absolute;
  z-index: 99;
  top: 0;
  right: 0;
  font-size: 2rem;
  background: var(--color-fondo);
  color: var(--color-primari);
  border-radius: 50px;
  text-decoration: none;
  text-align: center;
  width: 35px;
  height: 35px;
  line-height: 35px;
}

#banner_nadal .close-btn:hover {
  background: var(--color-primari);
  color: var(--color-fondo);
}

/* RESPONSIVE */
@media (max-width: 760px) {
  #banner_nadal {
    max-width: 500px;
    padding: 10px;
  }
  #banner_nadal .columns {
    flex-direction: column;
  }
  #banner_nadal .col1 {
    flex: 1;
    width: auto;
    padding: 30px;
    border-radius: var(--radius) var(--radius) 0 0;
  }
  #banner_nadal .col2 img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 0 0 var(--radius) var(--radius);
  }
  #banner_nadal .decor {
    width: 100px;
    height: 100px;
    bottom: -40px;
    top: auto;
    left: 50%;
    transform: translateX(-50%) rotate(-23deg);
  }
  #banner_nadal .close-btn {
    top: 20px;
    right: 20px;
  }
  #banner_nadal h2 {
    font-size: 1.4rem;
  }
}
/* icos productes */
.product-card a:before {
  display: block;
  width: 30%;
  aspect-ratio: 1/1;
  background-position: top center;
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  top: calc(-1 * var(--product-card-padding));
  right: var(--product-card-padding);
}

.product-card.prodcat-nadal a:before {
  content: "";
  background-image: url(/build/abcweb-theme/images/decor_tio.2988b90b.svg);
}

.product-card.prodcat-nadal.prodcat-celler a:before {
  content: "";
  background-image: url(/build/abcweb-theme/images/decor_arbre.43e89718.svg);
}

.product-card.sticker_free_shipping a:first-child:before {
  content: "";
  background-image: url(/build/abcweb-theme/images/sticker_free_shipping.ea9c3f98.png);
}

.spotlight_main_image.sticker_free_shipping a:first-child {
  position: relative;
}
.spotlight_main_image.sticker_free_shipping a:first-child:before {
  content: "";
  background-image: url(/build/abcweb-theme/images/sticker_free_shipping.ea9c3f98.png);
  background-size: contain;
  background-repeat: no-repeat;
  display: block;
  position: absolute;
  width: 20%;
  height: 20%;
  top: 0;
  right: 0;
}

body[data-route=sylius_shop_product_review_create] .prodcat-nadal, body[data-route=sylius_shop_product_review_create] .sticker_free_shipping {
  position: relative;
}
body[data-route=sylius_shop_product_review_create] .product-vendor::before {
  display: none;
  max-width: 100px;
}
body[data-route=sylius_shop_product_review_create] .link-reset::before {
  display: none;
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJjd2ViLXRoZW1lLWVudHJ5LmNzcyIsIm1hcHBpbmdzIjoiOzs7QUFBQSxnQkFBZ0I7QUEwQmQ7RUFDRTtBQXhCSjtBQ3lFSTtFRGxERjtJQUlJO0VBdkJKO0FBQ0Y7QUNvRUk7RURsREY7SUFRSTtFQXRCSjtBQUNGOztBQWFFO0VBQ0U7QUFWSjtBQzJESTtFRGxERjtJQUlJO0VBVEo7QUFDRjtBQ3NESTtFRGxERjtJQVFJO0VBUko7QUFDRjs7QUFERTtFQUNFO0FBSUo7QUM2Q0k7RURsREY7SUFJSTtFQUtKO0FBQ0Y7QUN3Q0k7RURsREY7SUFRSTtFQU1KO0FBQ0Y7O0FBZkU7RUFDRTtBQWtCSjtBQytCSTtFRGxERjtJQUlJO0VBbUJKO0FBQ0Y7QUMwQkk7RURsREY7SUFRSTtFQW9CSjtBQUNGOztBQTdCRTtFQUNFO0FBZ0NKO0FDaUJJO0VEbERGO0lBSUk7RUFpQ0o7QUFDRjtBQ1lJO0VEbERGO0lBUUk7RUFrQ0o7QUFDRjs7QUEzQ0U7RUFDRTtBQThDSjtBQ0dJO0VEbERGO0lBSUk7RUErQ0o7QUFDRjtBQ0ZJO0VEbERGO0lBUUk7RUFnREo7QUFDRjs7QUF6REU7RUFDRTtBQTRESjtBQ1hJO0VEbERGO0lBSUk7RUE2REo7QUFDRjtBQ2hCSTtFRGxERjtJQVFJO0VBOERKO0FBQ0Y7O0FBdkVFO0VBQ0U7QUEwRUo7QUN6Qkk7RURsREY7SUFJSTtFQTJFSjtBQUNGO0FDOUJJO0VEbERGO0lBUUk7RUE0RUo7QUFDRjs7QUFyRkU7RUFDRTtBQXdGSjtBQ3ZDSTtFRGxERjtJQUlJO0VBeUZKO0FBQ0Y7QUM1Q0k7RURsREY7SUFRSTtFQTBGSjtBQUNGOztBQW5HRTtFQUNFO0FBc0dKO0FDckRJO0VEbERGO0lBSUk7RUF1R0o7QUFDRjtBQzFESTtFRGxERjtJQVFJO0VBd0dKO0FBQ0Y7O0FBekZFO0VBQ0U7QUE0Rko7O0FBN0ZFO0VBQ0U7QUFnR0o7O0FBakdFO0VBQ0U7QUFvR0o7O0FBckdFO0VBQ0U7QUF3R0o7O0FBekdFO0VBQ0U7QUE0R0o7O0FBeEdBOzs7O0VBS0M7QUEwR0Q7O0FBaEdBO0VBR0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7QUE4RkQ7O0FBdEZDO0VBQ0E7RUFDQTtFQUNHO0VBQ0E7RUFDSDtBQXlGRDs7QUFyRkU7RUFDRDtFQUNBO0VBQ0c7RUFDQTtFQUNIO0FBd0ZEOztBQXBGQztFQUNBO0VBQ0E7QUF1RkQ7O0FBcEZDO0VBQ0E7QUF1RkQ7O0FBbkVDO0VBQ0M7QUFzRUY7O0FBbkVDO0VBQ0M7QUFzRUY7O0FBbkVDO0VBQ0M7QUFzRUY7O0FBbkVDO0VBQ0M7QUFzRUY7O0FBbkZDO0VBQ0M7QUFzRkY7O0FBbkZDO0VBQ0M7QUFzRkY7O0FBbkZDO0VBQ0M7QUFzRkY7O0FBbkZDO0VBQ0M7QUFzRkY7O0FBbkdDO0VBQ0M7QUFzR0Y7O0FBbkdDO0VBQ0M7QUFzR0Y7O0FBbkdDO0VBQ0M7QUFzR0Y7O0FBbkdDO0VBQ0M7QUFzR0Y7O0FBbkhDO0VBQ0M7QUFzSEY7O0FBbkhDO0VBQ0M7QUFzSEY7O0FBbkhDO0VBQ0M7QUFzSEY7O0FBbkhDO0VBQ0M7QUFzSEY7O0FBbklDO0VBQ0M7QUFzSUY7O0FBbklDO0VBQ0M7QUFzSUY7O0FBbklDO0VBQ0M7QUFzSUY7O0FBbklDO0VBQ0M7QUFzSUY7O0FBbkpDO0VBQ0M7QUFzSkY7O0FBbkpDO0VBQ0M7QUFzSkY7O0FBbkpDO0VBQ0M7QUFzSkY7O0FBbkpDO0VBQ0M7QUFzSkY7O0FBbktDO0VBQ0M7QUFzS0Y7O0FBbktDO0VBQ0M7QUFzS0Y7O0FBbktDO0VBQ0M7QUFzS0Y7O0FBbktDO0VBQ0M7QUFzS0Y7O0FBaEtDO0VBQ0M7QUFtS0Y7O0FBaEtDO0VBQ0M7QUFtS0Y7O0FBaEtDO0VBQ0M7QUFtS0Y7O0FBaEtDO0VBQ0M7QUFtS0Y7O0FBaExDO0VBQ0M7QUFtTEY7O0FBaExDO0VBQ0M7QUFtTEY7O0FBaExDO0VBQ0M7QUFtTEY7O0FBaExDO0VBQ0M7QUFtTEY7O0FBaE1DO0VBQ0M7QUFtTUY7O0FBaE1DO0VBQ0M7QUFt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NEJEOztBQTFCQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFHQTtFQUNBO0FBMEJEOztBQXhCQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUEyQkQ7O0FBdkJBO0VBQ0M7RUFDQTtBQTBCRDs7QUFyQkE7QUFDQTtFQUVDO0lBQ0M7SUFDQTtFQXVCQTtFQXBCRDtJQUNDO0VBc0JBO0VBcEJEO0lBQ0M7SUFDQTtJQUNBO0lBQ0E7RUFzQkE7RUFuQkQ7SUFDQztJQUNBO0lBQ0E7SUFDQTtFQXFCQTtFQW5CRDtJQUNDO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFQXFCQTtFQW5CRDtJQUNDO0lBQ0E7RUFxQkE7RUFuQkQ7SUFDQztFQXFCQTtBQUNGO0FBakJBO0FBQ0E7RUFDQztFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7QUFpQkQ7O0FBYkE7RUFDQztFQUNBO0FBZ0JEOztBQWJBO0VBQ0M7RUFDQTtBQWdCRDs7QUFiQTtFQUNDO0VBQ0E7QUFnQkQ7O0FBWkM7RUFDQztBQWVGO0FBZEU7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQWdCSDs7QUFWQztFQUNDO0FBYUY7QUFWRTtFQUNDO0VBQ0E7QUFZSDtBQVJFO0VBQ0M7QUFVSCxDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vdGhlbWVzL0FCQ3dlYlRoZW1lL2Fzc2V0cy9zY3NzL2luZGV4LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYnJlYWtwb2ludHMuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyAxLiBJbXBvcnRhciBsYXMgZnVuY2lvbmVzIHByaW1lcm9cclxuQGltcG9ydCBcIn5ib290c3RyYXAvc2Nzcy9mdW5jdGlvbnNcIjtcclxuXHJcbi8vIDIuIEltcG9ydGFyIGxhcyB2YXJpYWJsZXNcclxuQGltcG9ydCBcIn5ib290c3RyYXAvc2Nzcy92YXJpYWJsZXNcIjtcclxuXHJcbi8vIDMuIEltcG9ydGFyIGxvcyBtaXhpbnNcclxuQGltcG9ydCBcIn5ib290c3RyYXAvc2Nzcy9taXhpbnNcIjtcclxuXHJcblxyXG4vL2N1c3RvbSBmb250IHNpemVzXHJcbiRmb250LXNpemVzOiAoXHJcbiAgaGVhZGluZy14eGw6ICg1OHB4LCA0OHB4LCAzNnB4KSxcclxuICBoZWFkaW5nLXhsOiAgKDQ4cHgsIDM2cHgsIDI4cHgpLFxyXG4gIGhlYWRpbmctbGc6ICAoMzZweCwgMjhweCwgMjRweCksXHJcbiAgaGVhZGluZy1tZDogICgyOHB4LCAyNHB4LCAyMHB4KSxcclxuICBoZWFkaW5nLXNtOiAoMjRweCwgMjBweCwgMThweCksXHJcbiAgaGVhZGluZy1zbWw6ICgyMHB4LCAxOHB4LCAxNnB4KSxcclxuICBiYXNlOiAoMThweCwgMTZweCwgMTRweCksXHJcbiAgYmFzZS1zbTogKDE2cHgsIDE2cHgsIDE0cHgpLFxyXG4gIGluZm86ICAoMTRweCwgMTRweCwgMTNweCksXHJcbiAgaW5mby1zbTogICgxM3B4LCAxM3B4LCAxMnB4KVxyXG4pO1xyXG5cclxuXHJcbkBlYWNoICRuYW1lLCAkc2l6ZXMgaW4gJGZvbnQtc2l6ZXMge1xyXG4gIC5jZnMtI3skbmFtZX0ge1xyXG4gICAgZm9udC1zaXplOiBudGgoJHNpemVzLCAxKTsgLy8gRGVza3RvcFxyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xyXG4gICAgICBmb250LXNpemU6IG50aCgkc2l6ZXMsIDIpOyAvLyBUYWJsZXRcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcclxuICAgICAgZm9udC1zaXplOiBudGgoJHNpemVzLCAzKTsgLy8gTcOzdmlsXHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuJGZvbnQtd2VpZ2h0czogKFxyXG5cdG5vcm1hbDogNDAwLFxyXG5cdG1lZGl1bTogNTAwLFxyXG5cdGJvbGQ6IDYwMCxcclxuXHRib2xkZXI6IDcwMCxcclxuXHRib2xkZXN0OiA4MDBcclxuKTtcclxuXHJcbi8vIEdlbmVyYXIgY2xhc2VzIHV0aWxpdGFyaWFzIHBhcmEgdGFtYcOxb3MgZGUgZnVlbnRlIHJlc3BvbnNpdm9zXHJcbkBlYWNoICR3ZWlnaHQtbmFtZSwgJHdlaWdodC12YWx1ZSBpbiAkZm9udC13ZWlnaHRzIHtcclxuICAuZnctI3skd2VpZ2h0LW5hbWV9IHtcclxuICAgIGZvbnQtd2VpZ2h0OiAkd2VpZ2h0LXZhbHVlICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcblxyXG4uY2ZzLWhlYWRpbmcteHhsLFxyXG4uY2ZzLWhlYWRpbmcteGwsXHJcbi5jZnMtaGVhZGluZy1sZyxcclxuLmNmcy1oZWFkaW5nLW1kXHJcbntcclxuXHRsaW5lLWhlaWdodDogMTtcclxufVxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG4kbWFpbi1jb2xvcjogI2ZmNTAwMDtcclxuXHJcbjpyb290e1xyXG5cclxuXHJcblx0LS1zaXRlLWFjY2VudC1jb2xvcjojZmY1MDAwO1xyXG5cdC0tc2l0ZS1ib2R5LWNvbG9yOiM0ZjFkMTY7XHJcblx0LS1zaXRlLXByaW1hcnktY29sb3I6IzVlNTQzNjtcclxuXHQtLXNpdGUtc2Vjb25kYXJ5LWNvbG9yOiNhNDkyNjI7XHJcblx0LS1zaXRlLXRlcm5hcnktY29sb3I6ICNmZmYzZTM7XHJcblxyXG5cclxuXHQtLWJzLWxpbmstY29sb3ItcmdiOiA5NCwgODQsIDU0O1xyXG5cdC0tYnMtbGluay1jb2xvcjogdmFyKC0tc2l0ZS1wcmltYXJ5LWNvbG9yKTtcclxuXHQtLWJzLWJvZHktY29sb3I6IHZhcigtLXNpdGUtYm9keS1jb2xvcik7XHJcblx0LS1icy1saW5rLWhvdmVyLWNvbG9yLXJnYjogMjU1LCA4MCwgMDtcclxuXHQtLWZvbnQtd2VpZ2h0LWJvbGQ6IDUwMDtcclxuXHQtLWJzLXRlcnRpYXJ5LWNvbG9yOiB2YXIoLS1zaXRlLXNlY29uZGFyeS1jb2xvcik7XHJcblx0LS1icy1wcmltYXJ5LXJnYjogMjU1LCA4MCwgMDtcclxuXHQtLWJzLXByaW1hcnk6IHZhcigtLXNpdGUtYWNjZW50LWNvbG9yKTtcclxuXHQtLWJzLWJvZHktbGluZS1oZWlnaHQ6IDEuNDtcclxuXHJcblx0LS1wcm9kdWN0LWNhcmQtcGFkZGluZzogMS41cmVtO1xyXG5cdC0tYnMtZ3JheS01MDA6ICM0ZjFkMTY2NjtcclxuXHJcblxyXG4gfVxyXG5cclxuXHJcblxyXG5cclxuIC5idG4tcHJpbWFyeSB7XHJcblx0LS1icy1idG4tYmc6IHZhcigtLXNpdGUtc2Vjb25kYXJ5LWNvbG9yKTtcclxuXHQtLWJzLWJ0bi1ib3JkZXItY29sb3I6IHZhcigtLXNpdGUtc2Vjb25kYXJ5LWNvbG9yKTtcclxuICAgIC0tYnMtYnRuLWhvdmVyLWNvbG9yOiAjRkZGO1xyXG4gICAgLS1icy1idG4taG92ZXItYmc6IHZhcigtLXNpdGUtYWNjZW50LWNvbG9yKTtcclxuXHQtLWJzLWJ0bi1ob3Zlci1ib3JkZXItY29sb3I6IHZhcigtLXNpdGUtYWNjZW50LWNvbG9yKTtcclxuXHJcbiB9XHJcblxyXG4gIC5idG4tb3V0bGluZS1wcmltYXJ5IHtcclxuXHQtLWJzLWJ0bi1ib3JkZXItY29sb3I6IHZhcigtLXNpdGUtc2Vjb25kYXJ5LWNvbG9yKTtcclxuXHQtLWJzLWJ0bi1jb2xvcjogdmFyKC0tc2l0ZS1zZWNvbmRhcnktY29sb3IpO1xyXG4gICAgLS1icy1idG4taG92ZXItY29sb3I6ICNGRkY7XHJcbiAgICAtLWJzLWJ0bi1ob3Zlci1iZzogdmFyKC0tc2l0ZS1hY2NlbnQtY29sb3IpO1xyXG5cdC0tYnMtYnRuLWhvdmVyLWJvcmRlci1jb2xvcjogdmFyKC0tc2l0ZS1hY2NlbnQtY29sb3IpO1xyXG5cclxuIH1cclxuXHJcbiAuYnRuLXByaW1hcnktZGFyayB7XHJcblx0LS1icy1idG4tYmc6IHZhcigtLXNpdGUtcHJpbWFyeS1jb2xvcik7XHJcblx0LS1icy1idG4tYm9yZGVyLWNvbG9yOiB2YXIoLS1zaXRlLXByaW1hcnktY29sb3IpO1xyXG4gfVxyXG5cclxuIC5icmVhZGNydW1iIHtcclxuXHQtLWJzLWJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbTogMnJlbTtcclxuIH1cclxuXHJcblxyXG5cclxuXHJcbi8vIERlZmluaXIgZXNjYWxhIGRlIGVzcGFjaWFkb3MgYWRpY2lvbmFsZXNcclxuJGN1c3RvbS1zcGFjZXJzOiAoXHJcblx0NF81OiAycmVtLFxyXG5cdDVfMjogMy41cmVtLFxyXG5cdDVfNTogNHJlbSxcclxuXHQ3OiA2cmVtLFxyXG5cdDg6IDdyZW0sXHJcblx0OTogOHJlbSxcclxuXHQxMDogOXJlbVxyXG5cclxuKTtcclxuXHJcbi8vIGV4dHJhIG1hcmdpblxyXG5AZWFjaCAka2V5LCAkdmFsdWUgaW4gJGN1c3RvbS1zcGFjZXJzIHtcclxuXHQubWItI3ska2V5fSB7XHJcblx0XHRtYXJnaW4tYm90dG9tOiAkdmFsdWUgIWltcG9ydGFudDtcclxuXHR9XHJcblxyXG5cdC5tdC0jeyRrZXl9IHtcclxuXHRcdG1hcmdpbi10b3A6ICR2YWx1ZSAhaW1wb3J0YW50O1xyXG5cdH1cclxuXHJcblx0Lm1zLSN7JGtleX0ge1xyXG5cdFx0bWFyZ2luLWxlZnQ6ICR2YWx1ZSAhaW1wb3J0YW50O1xyXG5cdH1cclxuXHJcblx0Lm1lLSN7JGtleX0ge1xyXG5cdFx0bWFyZ2luLXJpZ2h0OiAkdmFsdWUgIWltcG9ydGFudDtcclxuXHR9XHJcbn1cclxuXHJcbi8vIGV4dHJhIHBhZGRpbmdcclxuQGVhY2ggJGtleSwgJHZhbHVlIGluICRjdXN0b20tc3BhY2VycyB7XHJcblx0LnBiLSN7JGtleX0ge1xyXG5cdFx0cGFkZGluZy1ib3R0b206ICR2YWx1ZSAhaW1wb3J0YW50O1xyXG5cdH1cclxuXHJcblx0LnB0LSN7JGtleX0ge1xyXG5cdFx0cGFkZGluZy10b3A6ICR2YWx1ZSAhaW1wb3J0YW50O1xyXG5cdH1cclxuXHJcblx0LnBzLSN7JGtleX0ge1xyXG5cdFx0cGFkZGluZy1sZWZ0OiAkdmFsdWUgIWltcG9ydGFudDtcclxuXHR9XHJcblxyXG5cdC5wZS0jeyRrZXl9IHtcclxuXHRcdHBhZGRpbmctcmlnaHQ6ICR2YWx1ZSAhaW1wb3J0YW50O1xyXG5cdH1cclxufVxyXG5cclxuXHJcblxyXG5cclxuIGJvZHkge1xyXG5cdC8qdGVzdCovXHJcbiAgIC8qYmFja2dyb3VuZDogZ3JlZW4gIWltcG9ydGFudDsqL1xyXG4gICAvKmJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL3Rlc3QuanBnJyk7Ki9cclxuXHJcbiAgIC0tYnMtaGVhZGluZy1jb2xvcjogdmFyKC0tc2l0ZS1wcmltYXJ5LWNvbG9yKTtcclxuXHJcbiAgZm9udC1mYW1pbHk6IFwiUmV0aGluayBTYW5zXCIsIHNhbnMtc2VyaWY7XHJcbiAgZm9udC1vcHRpY2FsLXNpemluZzogYXV0bztcclxuXHJcbn1cclxuXHJcbnRoIHtcclxuXHRmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XHJcbn1cclxuXHJcblxyXG5cclxuXHJcbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcclxuICAgIGgxLCAuaDEge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogM3JlbTtcclxuICAgIH1cclxuXHJcbiAgICBoMiwgLmgyIHtcclxuICAgICAgICBmb250LXNpemU6IDIuNHJlbTtcclxuICAgIH1cclxufVxyXG5cclxuXHJcblxyXG5hLmxpbmstcmVzZXQ6aG92ZXIsIC5saXN0LW5hdiBsaSBhOmhvdmVyIHtcclxuICAgIGNvbG9yOiB2YXIoLS1zaXRlLWFjY2VudC1jb2xvcik7XHJcbn1cclxuXHJcbi5idG4tbGlnaHQsIC5idG4tdHJhbnNwYXJlbnQge1xyXG4gICAgLS1icy1idG4tY29sb3I6IHZhcigtLXNpdGUtYm9keS1jb2xvcik7XHJcbn1cclxuXHJcbi50ZXh0LWJsYWNrLTUwIHtcclxuICAgIC0tYnMtdGV4dC1vcGFjaXR5OiAxO1xyXG4gICAgY29sb3I6IHJnYmEoNzksIDI5LCAyMiwgMC41KSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5cclxuLm9mZmNhbnZhc3tcclxuXHQtLWJzLW9mZmNhbnZhcy16aW5kZXg6IDMwMDA7XHJcbn1cclxuXHJcbiN0b3BfYmFye1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICM0OTAwNDI7XHJcblx0dGV4dC1hbGlnbjpjZW50ZXI7XHJcblx0Y29sb3I6ICNGRkY7XHJcblxyXG59XHJcblxyXG4jaGVhZGVyX3Nob3BfbG9nbzpob3ZlcntcclxuXHJcblx0ZmlsdGVyOiBpbnZlcnQoNDklKSBzZXBpYSg5MyUpIHNhdHVyYXRlKDQzNzclKSBodWUtcm90YXRlKDM1OWRlZykgYnJpZ2h0bmVzcyg5OSUpIGNvbnRyYXN0KDExMCUpO1xyXG5cclxufVxyXG5cclxuI21haW5fc2l0ZV9tZW51e1xyXG5cdHBvc2l0aW9uOnN0aWNreTtcclxuXHR0b3A6MDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG5cdHotaW5kZXg6IDEwMzE7XHJcbn1cclxuXHJcblxyXG4vKm1lbnUgcHJpbmNpcGFsKi9cclxuXHJcbiNtYWluX3NpdGVfbWVudSAgIC5vZmZjYW52YXMtbGd7XHJcblx0ZGlzcGxheTpibG9jaztcclxufVxyXG5cclxuXHJcbi53X2ljb3tcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxufVxyXG5cclxuLndfaWNvOmJlZm9yZSB7XHJcbiAgY29udGVudDogXCJcIjtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgd2lkdGg6IDE4cHg7XHJcbiAgaGVpZ2h0OiAxOHB4O1xyXG4gIG1hcmdpbi1yaWdodDogNnB4O1xyXG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcblxyXG59XHJcblxyXG4uaWNvX2Fncm9ib3RpZ3VlczpiZWZvcmV7XHJcblx0YmFja2dyb3VuZC1pbWFnZTp1cmwoJy4uL2ltYWdlcy9pY29fYWdyb2JvdGlndWVzLnN2ZycpO1xyXG59XHJcblxyXG4uaWNvX3F1aXNvbTpiZWZvcmV7XHJcblx0YmFja2dyb3VuZC1pbWFnZTp1cmwoJy4uL2ltYWdlcy9sb2dvX3Nob3BfbWluLnN2ZycpO1xyXG59XHJcblxyXG4uaWNvX29saTpiZWZvcmV7XHJcblx0YmFja2dyb3VuZC1pbWFnZTp1cmwoJy4uL2ltYWdlcy9pY29fb2xpLnN2ZycpO1xyXG59XHJcblxyXG5cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XHJcblxyXG5cclxufVxyXG5cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG5cclxuXHJcblxyXG5cdC5uYXZiYXItbmF2IC5uYXYtaXRlbS5kcm9wZG93bntcclxuXHRcdHBvc2l0aW9uOiBzdGF0aWM7XHJcblx0fVxyXG5cclxuXHQubmF2YmFyIC5kcm9wZG93bi1tZW51e1xyXG5cclxuXHRcdC0tYnMtYm9yZGVyLXJhZGl1czogMC44cmVtO1xyXG5cdFx0LS1icy1ib3JkZXItd2lkdGg6IDA7XHJcblxyXG5cdFx0d2lkdGg6MTAwJTtcclxuXHRcdG1heC13aWR0aDpub25lO1xyXG5cdFx0bWFyZ2luLXRvcDogMXJlbTtcclxuXHRcdHBhZGRpbmc6MS41cmVtO1xyXG5cclxuXHRcdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNpdGUtdGVybmFyeS1jb2xvcilcclxuXHJcblx0fVxyXG5cclxuXHQubmF2YmFyIC5kcm9wZG93bi1tZW51IC50YXhvbl9uYW1lIHtmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7fVxyXG5cclxuXHJcblxyXG5cdC5uYXZiYXIgLmRyb3Bkb3duLW1lbnUgLm5hdi1saW5rIHtcclxuXHRcdC0tYnMtbmF2LWxpbmstcGFkZGluZy15OiAwO1xyXG5cdFx0LS1icy1uYXYtbGluay1wYWRkaW5nLXg6IDA7XHJcblx0fVxyXG5cclxuXHQubmF2LWxpbms6aG92ZXJ7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2l0ZS10ZXJuYXJ5LWNvbG9yKTtcclxufVxyXG5cclxuXHQuZHJvcGRvd24tbWVudS5zaG93IHtcclxuXHRkaXNwbGF5OiBncmlkO1xyXG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMjc1cHgsIDFmcikpO1xyXG5cdGdhcDogMTBweDsgLyogZXNwYWNpbyBlbnRyZSBjb2x1bW5hcyB5IGZpbGFzICovXHJcblx0cGFkZGluZzogMTBweDtcclxuXHR9XHJcblxyXG5cdC5kcm9wZG93bi1tZW51IC5uYXYtbGluayB7XHJcblx0XHRib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0cGFkZGluZzogOHB4IDEycHg7XHJcblx0XHR3aGl0ZS1zcGFjZTogbm9ybWFsOyAvKiBwZXJtaXRlIHNhbHRvcyBkZSBsw61uZWEgZW4gbG9zIHRleHRvcyBsYXJnb3MgKi9cclxuXHR9XHJcblxyXG5cclxuXHQuZHJvcGRvd24tbWVudSAubmF2LWxpbmsgc3Ryb25ne1xyXG5cdFx0ZGlzcGxheTpibG9jaztcclxuXHRcdG1hcmdpbi1ib3R0b206IDAuMmVtO1xyXG5cdH1cclxuXHJcblx0LmRyb3Bkb3duLW1lbnUgLm5hdi1saW5rIC5saW5rX2Rlc2NyaXB0aW9ue1xyXG5cdFx0Zm9udC1zaXplOjAuOXJlbTtcclxuXHR9XHJcblxyXG5cdC5kcm9wZG93bi1tZW51IC5uYXYtbGluazpob3ZlcntcclxuXHRcdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXNpdGUtYWNjZW50LWNvbG9yKTtcclxuXHRcdGJvcmRlci1yYWRpdXM6IDAuM3JlbTtcclxuXHR9XHJcblxyXG5cclxuXHQubmF2YmFyLW5hdiB7XHJcblx0XHQtLWJzLW5hdi1saW5rLXBhZGRpbmcteDogMXJlbTtcclxuXHRcdC0tYnMtbmF2LWxpbmstcGFkZGluZy15OiAwLjVyZW07XHJcblx0XHQtLWJzLW5hdmJhci1hY3RpdmUtY29sb3I6IHZhcigtLXNpdGUtdGVybmFyeS1jb2xvcik7XHJcblx0fVxyXG5cclxuXHQjbmF2YmFyTmF2IC5uYXYtbGlua3tcclxuXHRcdGJvcmRlci1yYWRpdXM6MTJweDtcclxuXHR9XHJcblxyXG5cdCNuYXZiYXJOYXYgLm5hdi1saW5rLnNob3d7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zaXRlLXByaW1hcnktY29sb3IpO1xyXG5cdH1cclxuXHJcbn1cclxuXHJcbi5ob21lcGFnZV9iYW5uZXJ7XHJcblx0YmFja2dyb3VuZC1zaXplOmNvdmVyO1xyXG5cdGJhY2tncm91bmQtcG9zaXRpb246Y2VudGVyIGNlbnRlcjtcclxuXHJcblx0Y29sb3I6I0ZGRjtcclxuXHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG59XHJcblxyXG4uaG9tZXBhZ2VfYmFubmVyLmJhbm5lcl90eXBlMntcclxuXHRoZWlnaHQ6NTYwcHg7XHJcbn1cclxuXHJcblxyXG4jaG9tZXBhZ2VfYmFubmVyX3RvcHtcclxuXHJcblx0YmFja2dyb3VuZDpcclxuICAgIFx0bGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjMDAwIDAlLCB0cmFuc3BhcmVudCA1MCUsIHRyYW5zcGFyZW50IDEwMCUpLFxyXG4gICAgXHR1cmwoJy4uL2ltYWdlcy9mb25zX2Jhbm5lcl9ob21lMS5qcGcnKTtcclxuXHJcblxyXG5cdGhlaWdodDo1MDBweDtcclxuXHRiYWNrZ3JvdW5kLXNpemU6Y292ZXI7XHJcblx0YmFja2dyb3VuZC1wb3NpdGlvbjpjZW50ZXIgY2VudGVyO1xyXG5cclxuXHRjb2xvcjojRkZGO1xyXG5cclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuXHJcbiNob21lcGFnZV9iYW5uZXJfdG9wLmJhbm5lcl9uYWRhbHtcclxuXHRiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIzAwMCAwJSwgdHJhbnNwYXJlbnQgNTAlLCB0cmFuc3BhcmVudCAxMDAlKSxcclxuICAgIFx0dXJsKCcuLi9pbWFnZXMvZm9uc19iYW5uZXJfaG9tZV9uYWRhbC5qcGcnKTtcclxufVxyXG5cclxuLmJhbm5lcl9vdmVybGF5e1xyXG5cdHBvc2l0aW9uOnJlbGF0aXZlO1xyXG5cdG92ZXJmbG93OmhpZGRlbjtcclxufVxyXG5cclxuLmJhbm5lcl9vdmVybGF5Pioge3otaW5kZXg6MTt9XHJcblxyXG4uYmFubmVyX292ZXJsYXk6YmVmb3Jle1xyXG5cdGNvbnRlbnQ6Jyc7XHJcblx0cG9zaXRpb246YWJzb2x1dGU7XHJcblx0dG9wOjA7XHJcblx0bGVmdDowO1xyXG5cdHdpZHRoOjEwMCU7XHJcblx0aGVpZ2h0OjEwMCU7XHJcblx0ei1pbmRleDowO1xyXG5cclxuXHRtaXgtYmxlbmQtbW9kZTogb3ZlcmxheTtcclxuXHRiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tc2l0ZS1ib2R5LWNvbG9yKSAwJSwgdmFyKC0tc2l0ZS1ib2R5LWNvbG9yKSA3MCUsIHRyYW5zcGFyZW50IDEwMCUpO1xyXG5cclxuXHRvcGFjaXR5OjAuNjtcclxufVxyXG5cclxuLmJhbm5lcl9vdmVybGF5IHtcclxuICBAZWFjaCAkb3BhY2l0eSBpbiAoNjUsIDcwLCA3NSwgODAsIDg1LCA5MCkge1xyXG4gICAgJi5vdnItI3skb3BhY2l0eX06OmJlZm9yZSB7XHJcbiAgICAgIG9wYWNpdHk6IGNhbGMoI3skb3BhY2l0eX0gLyAxMDApO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcblxyXG4uYmFubmVyX292ZXJsYXkub3ZlcmxheTI6YmVmb3Jle1xyXG5cdGJhY2tncm91bmQtY29sb3I6IzRmMWQxNjtcclxuXHRiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xyXG5cdG9wYWNpdHk6MC43NTtcclxufVxyXG5cclxuLmhvbWVwYWdlX2Jhbm5lciAuYnRuLFxyXG4jaG9tZXBhZ2VfYmFubmVyX3RvcCAuYnRue1xyXG5cclxuXHQtLWJzLWJ0bi1ib3JkZXItcmFkaXVzOjE0cHg7XHJcblx0LS1icy1idG4tYmc6dmFyKC0tc2l0ZS10ZXJuYXJ5LWNvbG9yKTtcclxuXHQtLWJzLWJ0bi1ob3Zlci1iZzp2YXIoLS1zaXRlLWFjY2VudC1jb2xvcik7XHJcblx0LS1icy1idG4tY29sb3I6IHZhcigtLXNpdGUtcHJpbWFyeS1jb2xvcik7XHJcbn1cclxuXHJcbi5ob21lcGFnZV9iYW5uZXIgLnRpdGxlLFxyXG4jaG9tZXBhZ2VfYmFubmVyX3RvcCAudGl0bGV7XHJcblx0Y29sb3I6I0ZGRjtcclxuXHRtYXJnaW4tYm90dG9tOiAxcmVtO1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcbn1cclxuXHJcbi5ob21lcGFnZV9iYW5uZXIgcCxcclxuI2hvbWVwYWdlX2Jhbm5lcl90b3AgcHtcclxuXHRtYXJnaW4tYm90dG9tOiAycmVtO1xyXG59XHJcblxyXG4uaG9tZXBhZ2VfYmFubmVyIC5pbm5lcl9jb250cyxcclxuI2hvbWVwYWdlX2Jhbm5lcl90b3AgLmlubmVyX2NvbnRze1xyXG5cdG1heC13aWR0aDo3MDBweDtcclxufVxyXG5cclxuXHJcblxyXG5cclxuLmhvbWVwYWdlX2Jhbm5lci5iYW5uZXJfdHlwZTIgLmlubmVyX2NvbnRze1xyXG5cdG1heC13aWR0aDogNDUwcHg7XHJcbn1cclxuXHJcbi5ob21lcGFnZV9iYW5uZXIuYmFubmVyX3R5cGUyIC5jZnMtaGVhZGluZy14bHtcclxuXHRsaW5lLWhlaWdodDoxO1xyXG5cdGZvbnQtc2l6ZTo0MHB4O1xyXG59XHJcblxyXG5cclxuLmhvbWVwYWdlX2Jhbm5lci5iYW5uZXJfdHlwZTIgLmJ0bntcclxuXHJcblx0LS1icy1idG4tY29sb3I6ICM0OTAwNDI7XHJcbn1cclxuXHJcblxyXG4udGV4dC1nbG93IHtcclxuICB0ZXh0LXNoYWRvdzogXHJcbiAgICAwIDAgMTBweCByZ2JhKDAsMCwwLDAuMyksXHJcbiAgICAwIDAgMjBweCByZ2JhKDAsMCwwLDAuMiksXHJcbiAgICAxcHggMXB4IDJweCByZ2JhKDAsMCwwLDAuMSk7XHJcbn1cclxuXHJcblxyXG5cclxuI2hvbWVwYWdlX21hcF9zaG9wcyAuaW5uZXItdGV4dHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXNpdGUtdGVybmFyeS1jb2xvcik7XHJcblx0Y29sb3I6IHZhcigtLXNpdGUtcHJpbWFyeS1jb2xvcik7XHJcblxyXG59XHJcblxyXG4jaG9tZXBhZ2VfbWFwX3Nob3BzIC5idG57XHJcblx0LS1icy1idG4tYmc6dmFyKC0tc2l0ZS1wcmltYXJ5LWNvbG9yKTtcclxuXHQtLWJzLWJ0bi1ib3JkZXItcmFkaXVzOjE0cHg7XHJcblx0Zm9udC13ZWlnaHQ6dmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XHJcblxyXG59XHJcblxyXG5cclxuXHJcblxyXG4vKlxyXG4jaG9tZXBhZ2VfbWFwX3Nob3BzIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7IC8vIGNvbG9yIHBvciBkZWZlY3RvIChhbnRlcyBkZSBtZClcclxuXHJcbn0qL1xyXG5cclxuXHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuXHQucm91bmQtbWQtcmlnaHQge1xyXG5cdFx0Ym9yZGVyLXJhZGl1czogMCAzMnB4IDMycHggMCAhaW1wb3J0YW50O1xyXG5cdH1cclxuXHQucm91bmQtbWQtbGVmdCB7XHJcblx0XHRib3JkZXItcmFkaXVzOiAzMnB4IDAgMCAzMnB4ICFpbXBvcnRhbnQ7XHJcblx0fVxyXG5cclxufVxyXG5cclxuXHJcblxyXG4jaG9tZXBhZ2VfYmFubmVyX2NyaWRhY2Npb3tcclxuXHQtLWJzLWhlYWRpbmctY29sb3I6ICNGRkY7XHJcblx0Y29sb3I6I0ZGRjtcclxuXHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltYWdlcy9kZWNvcl9mb25zX25hZGFsLnN2ZycpO1xyXG5cdGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcblx0YmFja2dyb3VuZC1jb2xvcjojNDkwMDQyO1xyXG5cdGJhY2tncm91bmQtcG9zaXRpb246Y2VudGVyO1xyXG5cdHBhZGRpbmc6IDcwcHggMjBweDtcclxuXHJcbn1cclxuXHJcbiNob21lcGFnZV9iYW5uZXJfY3JpZGFjY2lvIGltZ3tcclxuXHRtYXgtd2lkdGg6MTAwJTtcclxufVxyXG5cclxuI2hvbWVwYWdlX2Jhbm5lcl9jcmlkYWNjaW8gcHtcclxuXHRmb250LXNpemU6MS4yNXJlbTtcclxufVxyXG5cclxuI2hvbWVwYWdlX2Jhbm5lcl9jcmlkYWNjaW8gLmJ0bntcclxuXHQtLWJzLWJ0bi1iZzp2YXIoLS1zaXRlLXRlcm5hcnktY29sb3IpO1xyXG5cdC0tYnMtYnRuLWJvcmRlci1yYWRpdXM6MTRweDtcclxuXHRmb250LXdlaWdodDp2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcclxuXHRjb2xvcjogIzQ5MDA0MjtcclxuXHJcbn1cclxuXHJcbiNob21lcGFnZV9iYW5uZXJfY3JpZGFjY2lvIC5idG46aG92ZXJ7XHJcblx0Y29sb3I6I0ZGRjt9XHJcblxyXG5cclxuI2hvbWVwYWdlX2Jhbm5lcl9idXRsbGV0aXtcclxuXHQtLWJzLWhlYWRpbmctY29sb3I6ICNGRkY7XHJcblx0Y29sb3I6I0ZGRjtcclxuXHJcblx0YmFja2dyb3VuZDpcclxuICAgIFx0bGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS1zaXRlLWJvZHktY29sb3IpLCB0cmFuc3BhcmVudCksXHJcbiAgICBcdHVybCgnLi4vaW1hZ2VzL2ZvbnNfYmFubmVyX2hvbWUyLmpwZycpO1xyXG5cclxuXHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IzQ5MDA0MjtcclxuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xyXG5cdHBhZGRpbmc6IDg1cHggNTBweDtcclxuXHQvKmJvcmRlci1yYWRpdXM6MTRweDsqL1xyXG5cclxufVxyXG5cclxuI2hvbWVwYWdlX2Jhbm5lcl9idXRsbGV0aSAuaW5wdXQtZ3JvdXB7XHJcblx0LS1icy1ib3JkZXItcmFkaXVzOiAxNHB4O1xyXG5cdG1heC13aWR0aDo0MDBweDtcclxuXHRwYWRkaW5nOjNweDtcclxuXHJcbn1cclxuXHJcbiNob21lcGFnZV9iYW5uZXJfYnV0bGxldGkgLmJ0bntcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1icy1ib3JkZXItcmFkaXVzKSAhaW1wb3J0YW50O1xyXG5cclxufVxyXG5cclxuXHJcblxyXG5cclxuLm5hdmJhcntcclxuICAgLS1icy1uYXZiYXItY29sb3I6IHZhcigtLXNpdGUtcHJpbWFyeS1jb2xvcik7XHJcbiAgIC0tYnMtbmF2YmFyLWhvdmVyLWNvbG9yOiB2YXIoLS1zaXRlLXByaW1hcnktY29sb3IpO1xyXG4gICAtLWJzLW5hdmJhci1hY3RpdmUtY29sb3I6JG1haW4tY29sb3I7XHJcbn1cclxuXHJcblxyXG4vKmN1c3RvbSBsb2FkZXIqL1xyXG4uc3lsaXVzLXNob3AtbG9hZGVyIGltZyxcclxuLnN5bGl1cy1zaG9wLWxvYWRlciAuc3Bpbm5lci1kb3RzXHJcbntkaXNwbGF5Om5vbmV9XHJcblxyXG4uc3lsaXVzLXNob3AtbG9hZGVyOmJlZm9yZXtcclxuXHRjb250ZW50OicnO1xyXG5cdGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG5cdHdpZHRoOjY0cHg7XHJcblx0aGVpZ2h0OjY0cHg7XHJcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvbG9hZGVyLmdpZicpO1xyXG5cdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XHJcblx0YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O1xyXG5cdGJhY2tncm91bmQtc2l6ZTpjb250YWluO1xyXG59XHJcblxyXG5cclxuLypzZWFyY2ggYmFyKi9cclxuXHJcbi5jb2wuc2VhcmNoZGl2e1xyXG5cdGZsZXg6MjtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zaXRlLXRlcm5hcnktY29sb3IpO1xyXG5cdHBhZGRpbmc6MDtcclxuXHRib3JkZXItcmFkaXVzOiAxNnB4O1xyXG59XHJcblxyXG4uY29sLnNlYXJjaGRpdiAuaW5wdXQtZ3JvdXB7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxufVxyXG5cclxuLmNvbC5zZWFyY2hkaXYgLmZvcm0tY29udHJvbHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O1xyXG5cdGJvcmRlcjowO1xyXG59XHJcblxyXG5cclxuXHJcbi5jb2wuc2VhcmNoZGl2ICAuYnRuIHtcclxuICAgIC0tYnMtYnRuLXBhZGRpbmcteDogMC44cmVtO1xyXG5cdC0tYnMtYnRuLWJnOiB2YXIoLS1zaXRlLXNlY29uZGFyeS1jb2xvcik7XHJcblx0LS1icy1idG4taG92ZXItYmc6IHZhcigtLXNpdGUtYWNjZW50LWNvbG9yKTtcclxuXHQtLWJzLWJ0bi1jb2xvcjogI0ZGRjtcclxufVxyXG5cclxuLmNvbC5zZWFyY2hkaXYgLmJ0bi1zbXtcclxuXHQtLWJzLWJ0bi1ib3JkZXItcmFkaXVzOiAxMnB4O1xyXG59XHJcblxyXG5cclxuXHJcbi5jb2wuc2VhcmNoZGl2IC5idG5cclxuIHtcclxuXHRib3JkZXI6MDtcclxuXHRtYXJnaW4tcmlnaHQ6IDAuM3JlbTtcclxufVxyXG5cclxuXHJcbi5jb2wuc2VhcmNoZGl2Om5vdCguaW5fY29udGVudCkgLmZvcm0tY29udHJvbHtcclxuXHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltYWdlcy9pY29fc2VhcmNoLnN2ZycpO1xyXG5cdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogMC41cmVtIGNlbnRlcjtcclxuXHRwYWRkaW5nLWxlZnQ6IDIuNXJlbTtcclxufVxyXG5cclxuLmNvbC5zZWFyY2hkaXYgLmZvcm0tY29udHJvbDpmb2N1c3tcclxuXHRib3gtc2hhZG93OiBub25lO1xyXG59XHJcblxyXG4uY29sLnNlYXJjaGRpdjpmb2N1cy13aXRoaW4ge1xyXG5cdGJveC1zaGFkb3c6IDAgMCAwIDAuMDVyZW0gdmFyKC0tc2l0ZS1hY2NlbnQtY29sb3IpO1xyXG5cclxufVxyXG5cclxuXHJcbi5jb2wuc2VhcmNoZGl2OmZvY3VzLXdpdGhpbiAuYnRue1xyXG5cdC0tYnMtYnRuLWJnOiAjN2E2ZDQ4O1xyXG5cclxuXHJcbn1cclxuXHJcblxyXG4uY29sLnNlYXJjaGRpdi5pbl9jb250ZW50IC5idG57XHJcblx0bWFyZ2luLXJpZ2h0OjA7XHJcblxyXG5cclxufVxyXG5cclxuLmNvbC5zZWFyY2hkaXYgLmlucHV0LWdyb3VwIC5idG46bm90KDpsYXN0LWNoaWxkKSB7XHJcblxyXG4gICAgbWFyZ2luLXJpZ2h0OiAycHg7XHJcbn1cclxuXHJcblxyXG4ucHJvZHVjdHMtZ3JpZCB7XHJcbiAgICBncmlkLWdhcDogMy41cmVtIDEuNXJlbTtcclxuXHJcblx0QG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbiAgICBcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KDIwMHB4LCAxZnIpKTtcclxuXHR9XHJcblxyXG5cdEBtZWRpYSAobWF4LXdpZHRoOiA0NjVweCkge1xyXG5cdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maWxsLCBtaW5tYXgoMTUwcHgsIDFmcikpO1xyXG5cdFx0Z3JpZC1nYXA6IDFyZW07XHJcblx0fVxyXG5cclxufVxyXG5cclxuXHJcblxyXG4ubWktZGl2IHtcclxuICB3aWR0aDogMTAwJTtcclxuICBtaW4td2lkdGg6IDMwMHB4O1xyXG4gIG1heC13aWR0aDogODAwcHg7XHJcbiAgaGVpZ2h0OiA1MHZoO1xyXG5cclxuICBAbWVkaWEgKG1pbi13aWR0aDogNjAwcHgpIGFuZCAobWF4LXdpZHRoOiA4OTlweCkge1xyXG4gICAgd2lkdGg6IDgwJTtcclxuICB9XHJcblxyXG4gIEBtZWRpYSAobWluLXdpZHRoOiA5MDBweCkge1xyXG4gICAgd2lkdGg6IDYwJTtcclxuICB9XHJcbn1cclxuXHJcblxyXG5cclxuLnNpbXBsZV9iYW5uZXJ7XHJcblx0bWluLWhlaWdodDo0NDBweDtcclxuXHRiYWNrZ3JvdW5kLXNpemU6Y292ZXI7XHJcblx0YmFja2dyb3VuZC1wb3NpdGlvbjpjZW50ZXIgY2VudGVyO1xyXG5cclxuXHRjb2xvcjojRkZGO1xyXG5cclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG5cdHBhZGRpbmc6IDgwcHggMzhweDtcclxuXHJcblx0Zm9udC1zaXplOiAxLjhyZW07XHJcblx0bGluZS1oZWlnaHQ6IDEuMTtcclxuXHJcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDYwMHB4KSB7XHJcbiAgICBwYWRkaW5nOjI0cHg7XHJcblx0Zm9udC1zaXplOjEuNXJlbTtcclxuICB9XHJcblxyXG5cclxufVxyXG5cclxuXHJcbi5iZ19iYW5uZXJfbmFkYWx7XHJcblx0YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoNzksIDI5LCAyMiwgMC42KSAwJSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCAxMDAlKSxcclxuICAgIFx0dXJsKCcuLi9pbWFnZXMvZm9uc19oZWFkZXJfY2F0X25hZGFsLmpwZycpO1xyXG59XHJcblxyXG4uc2ltcGxlX2Jhbm5lciAuaW5uZXJfY29udHMge1xyXG5cdG1heC13aWR0aDo2MDBweDtcclxufVxyXG5cclxuXHJcbi8qIGVsZW1lbnRzICovXHJcbi5ibG9jX2xpc3R7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZmNmODtcclxufVxyXG5cclxuLmJsb2NfbGlzdCB0YWJsZXtcclxuXHR3aWR0aDoxMDAlO1xyXG59XHJcblxyXG4uYmxvY19saXN0IHRke1xyXG5cdGJvcmRlci1ib3R0b206MXB4IGRvdHRlZCAjYTQ5MjYyO1xyXG5cdHBhZGRpbmc6MC43NXJlbSAwO1xyXG59XHJcblxyXG4uYmxvY19saXN0IHRyOmxhc3QtY2hpbGQgdGR7XHJcblx0Ym9yZGVyOjA7XHJcbn1cclxuXHJcbi50ZXh0LWZvY3VzX2NvbG9yIHtjb2xvcjojMDAwO31cclxuXHJcblxyXG4vKlByb2R1Y3RzKi9cclxuXHJcblxyXG5cclxuLnByb2R1Y3RzLWdyaWQgPiBkaXYge1xyXG5cdHBvc2l0aW9uOnJlbGF0aXZlO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoJG1haW4tY29sb3IsIDAuMSk7XHJcblx0Ym9yZGVyLXJhZGl1czogMTRweDtcclxuXHQvKm92ZXJmbG93OiBoaWRkZW47Ki9cclxuXHRwYWRkaW5nOiB2YXIoLS1wcm9kdWN0LWNhcmQtcGFkZGluZyk7XHJcblx0dHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuM3MgZWFzZTtcclxuXHJcblx0dGV4dC1hbGlnbjpjZW50ZXI7XHJcblxyXG5cdEBtZWRpYSAobWF4LXdpZHRoOiA0NjVweCkge1xyXG5cdFx0LS1wcm9kdWN0LWNhcmQtcGFkZGluZzogMC41cmVtO1xyXG5cdH1cclxuXHJcblxyXG59XHJcblxyXG4ucHJvZHVjdHMtZ3JpZCA+IGRpdjpob3ZlciB7XHJcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKCRtYWluLWNvbG9yLCAxKTtcclxufVxyXG5cclxuLnByb2R1Y3RzLWdyaWQgLmg2e1xyXG5cdCBjb2xvcjogdmFyKC0tc2l0ZS1wcmltYXJ5LWNvbG9yKTtcclxuXHQgZm9udC1zaXplOjEuMXJlbTtcclxuXHQgbWFyZ2luLWJvdHRvbTogMXJlbTtcclxufVxyXG5cclxuLnByb2R1Y3RzLWdyaWQgLmNhcmQtcHJpY2Vze1xyXG5cdGRpc3BsYXk6YmxvY2s7XHJcblx0bWFyZ2luOiAxcmVtIDA7XHJcbn1cclxuXHJcbi5wcm9kdWN0cy1ncmlkIC5wcmljZXtcclxuXHJcblx0Y29sb3I6ICRtYWluLWNvbG9yO1xyXG5cdGZvbnQtc2l6ZToxLjFyZW07XHJcblxyXG59XHJcblxyXG5cclxuXHJcbi5wcm9kdWN0cy1ncmlkIC5idG5fYWRkX3dpc2hsaXN0e1xyXG5cdHBvc2l0aW9uOmFic29sdXRlO1xyXG5cdHBhZGRpbmc6MDtcclxuXHR3aWR0aDoycmVtO1xyXG5cdGhlaWdodDoycmVtO1xyXG5cclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zaXRlLXRlcm5hcnktY29sb3IpO1xyXG5cdGJvcmRlci1yYWRpdXM6MTBweDtcclxuXHJcblx0dG9wOiBjYWxjKHZhcigtLXByb2R1Y3QtY2FyZC1wYWRkaW5nKSAvMik7XHJcblx0cmlnaHQ6IGNhbGModmFyKC0tcHJvZHVjdC1jYXJkLXBhZGRpbmcpIC8yKTtcclxufVxyXG5cclxuLnByb2R1Y3RzLWdyaWQgLmJhZGdlLCAuc3RpY2tlcl9kaXNjb3VudCAuYmFkZ2V7XHJcblx0cG9zaXRpb246YWJzb2x1dGU7XHJcblx0dG9wOiBjYWxjKHZhcigtLXByb2R1Y3QtY2FyZC1wYWRkaW5nKSAvMik7XHJcblx0bGVmdDogY2FsYyh2YXIoLS1wcm9kdWN0LWNhcmQtcGFkZGluZykgLzIpO1xyXG5cclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyOyAvKiBDZW50cmEgaG9yaXpvbnRhbCAqL1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7ICAgICAvKiBDZW50cmEgdmVydGljYWwgKi9cclxuXHJcblx0YmFja2dyb3VuZC1jb2xvcjogIzQ5MDA0MjtcclxuXHRjb2xvcjojZmY1MDAwO1xyXG5cdGZvbnQtc2l6ZToxLjFyZW07XHJcblx0cGFkZGluZzowIDAuNnJlbTtcclxuXHJcblx0bWluLXdpZHRoOiA0cmVtO1xyXG5cdGFzcGVjdC1yYXRpbzogMSAvIDE7XHJcblx0Ym9yZGVyLXJhZGl1czo1MCU7XHJcblx0dHJhbnNmb3JtOiByb3RhdGUoOGRlZyk7XHJcbn1cclxuXHJcbi5zdGlja2VyX2Rpc2NvdW50IC5iYWRnZSB7XHJcblx0dG9wOiAzNXB4O1xyXG5cdGZvbnQtc2l6ZTogM2NxdztcclxufVxyXG5cclxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcblx0LnN0aWNrZXJfZGlzY291bnQgLmJhZGdlIHtcclxuXHRcdGZvbnQtc2l6ZTogMmNxdztcclxuXHR9XHJcbn1cclxuXHJcbi5wcm9kdWN0cy1ncmlkIC5idG4tcHJpbWFyeXtcclxuXHQtLWJzLWJ0bi1iZzogdHJhbnNwYXJlbnQ7XHJcblx0Y29sb3I6IHZhcigtLXNpdGUtcHJpbWFyeS1jb2xvcik7XHJcbn1cclxuXHJcbi5wcm9kdWN0cy1ncmlkIC5idG4tcHJpbWFyeTpob3ZlcntcclxuXHRjb2xvcjojRkZGO1xyXG59XHJcblxyXG5cclxuXHJcblxyXG5cclxuLyogUHJvZHVjdG8gKi9cclxuXHJcbi5wcm9kdWN0LXNpbmdsZS1pbmZvIGgxIHtcclxuICBmb250LXdlaWdodDogbm9ybWFsO1xyXG5cclxuICBAbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XHJcbiAgICBmb250LXNpemU6IDNyZW07XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLnByb2R1Y3Qtc2luZ2xlLWluZm8gLmN1cnJlbnRfcHJpY2Uge1xyXG5cdEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcclxuXHRcdGZvbnQtc2l6ZTogMi4yNXJlbTtcclxuXHR9XHJcbn1cclxuXHJcbi5wcm9kdWN0LXNpbmdsZS1pbmZvIC5hZGQtdG8tY2FydC1mb3Jte1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDFyZW07XHJcbn1cclxuXHJcbi5wcm9kdWN0LXNpbmdsZS1pbmZvIC5hZGQtdG8tY2FydC1mb3JtIGJ1dHRvbiB7XHJcblx0Zm9udC13ZWlnaHQ6Ym9sZDtcclxuXHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDsgLyogRXZpdGEgcXVlIGVsIHRleHRvIHNlIGRpdmlkYSBlbiB2YXJpYXMgbMOtbmVhcyAqL1xyXG59XHJcblxyXG4ucHJvZHVjdC1zaW5nbGUtaW5mbyAucHJvZHVjdC12ZW5kb3I6aG92ZXJ7XHJcblx0dGV4dC1kZWNvcmF0aW9uOm5vbmU7XHJcblx0Y29sb3I6aW5oZXJpdCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5cclxuXHJcbi5mb3JtLWNvbnRyb2wsIC5mb3JtLXNlbGVjdHtcclxuLS1icy1ib3JkZXItY29sb3I6IHZhcigtLXNpdGUtc2Vjb25kYXJ5LWNvbG9yKTtcclxufVxyXG5cclxuLmZvcm0tY2hlY2staW5wdXQ6Y2hlY2tlZCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zaXRlLWFjY2VudC1jb2xvcik7XHJcbiAgICBib3JkZXItY29sb3I6IHZhcigtLXNpdGUtYWNjZW50LWNvbG9yKTtcclxufVxyXG5cclxuXHJcblxyXG5cclxuXHJcbi5wcm9kdWN0LXNpbmdsZS1pbmZvIC5hY2NvcmRpb24tYnV0dG9ue1xyXG5cdGNvbG9yOiB2YXIoLS1zaXRlLXByaW1hcnktY29sb3IpO1xyXG5cdGZvbnQtc2l6ZToxLjVyZW07XHJcbn1cclxuXHJcbiNyZXZpZXdzIC5zaW5nbGUtcmV2aWV3IHNtYWxse1xyXG5cdGNvbG9yOiB2YXIoLS1zaXRlLXByaW1hcnktY29sb3IpO1xyXG59XHJcblxyXG4ucHJvZHVjdC1zaW5nbGUtaW5mbyAjZGV0YWlsc3tcclxuXHRsaW5lLWhlaWdodDoxLjVlbTtcclxufVxyXG5cclxuLyogZGUgbW9tZW50IHRvdHMgZWxzIGggZGVsIHByb2R1Y3RlIHNvbiBpZ3VhbHMgKi9cclxuLnByb2R1Y3Qtc2luZ2xlLWluZm8ge1xyXG4gICNkZXRhaWxzIHtcclxuICAgIGgyLFxyXG4gICAgaDMsXHJcbiAgICBoNCB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMS4yZW07XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICBjb2xvcjogdmFyKC0tc2l0ZS1zZWNvbmRhcnktY29sb3IpO1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XHJcblx0LnByb2R1Y3Qtc2luZ2xlLWluZm8gLnNwb3RsaWdodF90aHVtYm5haWxzIHtcclxuXHRcdC8qZGlzcGxheTogbm9uZTsqL1xyXG5cdH1cclxufVxyXG5cclxuXHJcblxyXG4uc3BvdGxpZ2h0X3RodW1ibmFpbHMgYSB7XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtb25seSh4cykge1xyXG4gICAgd2lkdGg6IDYwcHg7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLyphdHJpYnV0cyBwcm9kdWN0ZSovXHJcbi5wcm9kdWN0X2F0dHItY29udGFpbmVyIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC13cmFwOiB3cmFwO1xyXG4gICAgZ2FwOiAxcmVtO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gICAgcGFkZGluZzogMXJlbSAwO1xyXG5cclxuICAgIC5wcm9kdWN0X2F0dHItaXRlbSB7XHJcblx0XHRmbGV4OiAwIDAgY2xhbXAoMTIwcHgsIDEydncsIDE4MHB4KTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG5cdFx0YXNwZWN0LXJhdGlvOiAxIC8gMTtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcclxuXHRcdHBhZGRpbmc6MTBweDtcclxuICAgICAgICAvKmJhY2tncm91bmQ6IHJnYmEoMTY0LDE0Niw5OCwwLjA1KTsqL1xyXG5cdFx0Ym9yZGVyOiAxcHggc29saWQgcmdiYSgkbWFpbi1jb2xvciwgMC4xKTtcclxuXHJcblxyXG5cclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEyMHB4O1xyXG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAxMjBweDtcclxuICAgICAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4vKlxyXG4ucHJvZHVjdF9hdHRyLWNvbnRhaW5lciB7XHJcbiAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgbWlubWF4KDEwMHB4LCAxZnIpKTtcclxuICAgIGdhcDogMXJlbTtcclxuICAgIHBhZGRpbmc6IDFyZW0gMDtcclxuXHJcbiAgICAucHJvZHVjdF9hdHRyLWl0ZW0ge1xyXG4gICAgICAgIGFzcGVjdC1yYXRpbzogMTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2UwZTBlMDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XHJcbiAgICAgICAgYmFja2dyb3VuZDogI2Y4ZjlmYTtcclxuXHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiA5MCU7XHJcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDkwJTtcclxuICAgICAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0qL1xyXG5cclxuXHJcblxyXG4vKnBhZyBwcm9qZWN0ZSAqL1xyXG5cclxuXHJcbi5kZWNvcl9hY29vcHByb2p7XHJcblx0YmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvZGVjb3JfYWNvb3Bwcm9qLnBuZycpIG5vLXJlcGVhdCByaWdodCBjZW50ZXI7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XHJcbiAgICBtYXgtd2lkdGg6IDUwJTtcclxuICAgIGFzcGVjdC1yYXRpbzogMSAvIDE7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuXHJcbn1cclxuXHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuXHQuZGVjb3JfYWNvb3Bwcm9qe1xyXG5cdFx0YmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuXHRcdG1heC13aWR0aDpub25lO1xyXG5cdFx0YXNwZWN0LXJhdGlvOiAxIC8gMS4xO1xyXG5cdH1cclxuXHJcbn1cclxuXHJcblxyXG4udGV4dF9ibG9jayBoMjpub3QoOmZpcnN0LWNoaWxkKXtcclxuXHRtYXJnaW4tdG9wOjNyZW07XHJcblx0bWFyZ2luLWJvdHRvbToxLjVyZW07XHJcbn1cclxuXHJcbi8qcGFnIGFncm9ib3RpZ3VlcyAqL1xyXG4jYWdyb2JvdGlndWVzX21hcGEge1xyXG5cdGNvbG9yOiB2YXIoLS1zaXRlLXByaW1hcnktY29sb3IpO1xyXG5cdGZvbnQtc2l6ZTogMS4xcmVtO1xyXG59XHJcblxyXG5cclxuLypsbGlzdGF0IGJvdGlndWVzKi9cclxuXHJcbi5jYXJkLWltZy13cmFwcGVyIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi5sbGlzdGFfYm90aWd1ZXMgLmNhcmQge1xyXG5cdC0tYnMtY2FyZC10aXRsZS1jb2xvcjogdmFyKC0tc2l0ZS1wcmltYXJ5LWNvbG9yKTtcclxuXHQgICAgLS1icy1jYXJkLWNvbG9yOiB2YXIoLS1zaXRlLXByaW1hcnktY29sb3IpO1xyXG59XHJcblxyXG4ubGxpc3RhX2JvdGlndWVzIC5jYXJkLXRpdGxle1xyXG5cdGZvbnQtc2l6ZToxLjVyZW07XHJcbn1cclxuXHJcblxyXG4ubGxpc3RhX2JvdGlndWVzIC5sb2dvLW92ZXJsYXkge1xyXG4gIG9wYWNpdHk6MDtcclxuICBtYXgtd2lkdGg6IDE3MnB4O1xyXG4gIG1heC1oZWlnaHQ6IDE3MnB4O1xyXG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcclxuXHJcbn1cclxuLmxsaXN0YV9ib3RpZ3VlcyAuY2FyZDpob3ZlciAubWFpbi1pbWcge1xyXG4gIG9wYWNpdHk6IDAuMjtcclxuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXM7XHJcbn1cclxuLmxsaXN0YV9ib3RpZ3VlcyAuY2FyZDpob3ZlciAubG9nby1vdmVybGF5IHtcclxuICBvcGFjaXR5OjE7XHJcbn1cclxuXHJcblxyXG5cclxuLypwYWcgdmVuZG9yKi9cclxuXHJcbiN2ZW5kb3JfaW5mbyBzZWN0aW9ue1xyXG5cdG1hcmdpbi1ib3R0b206IDkwcHg7XHJcbn1cclxuXHJcbiN2ZW5kb3JfaGVhZGVye1xyXG5cdGZvbnQtc2l6ZTogMS41MXJlbTtcclxuXHRjb2xvcjogdmFyKC0tc2l0ZS1wcmltYXJ5LWNvbG9yKTtcclxuXHJcblx0cGFkZGluZy1ib3R0b206OTBweDtcclxuXHRib3JkZXItYm90dG9tOiAxcHggZG90dGVkIHZhcigtLXNpdGUtYWNjZW50LWNvbG9yKTtcclxuXHJcblxyXG59XHJcblxyXG4jdmVuZG9yX2hlYWRlciBoMXtcclxuXHRjb2xvcjp2YXIoLS1zaXRlLXNlY29uZGFyeS1jb2xvcilcclxufVxyXG5cclxuI3ZlbmRvcl9oZWFkZXIgLnZlbmRvcl9sb2dvIGltZ3tcclxuXHJcblx0bWF4LWhlaWdodDozMDBweDtcclxuXHRvYmplY3QtZml0OiBjb250YWluO1xyXG59XHJcblxyXG4jdmVuZG9yX21haW57XHJcblx0Zm9udC1zaXplOjEuMTVyZW07XHJcbn1cclxuXHJcbiN2ZW5kb3JfbG9jYXRpb24gaDR7XHJcblx0Y29sb3I6dmFyKC0tc2l0ZS1zZWNvbmRhcnktY29sb3IpO1xyXG59XHJcblxyXG4jdmVuZG9yX2xvY2F0aW9ue1xyXG5cdHBvc2l0aW9uOnJlbGF0aXZlO1xyXG5cdHBhZGRpbmc6IDE0MHB4IDA7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogY29sb3ItbWl4KGluIHNyZ2IsIHZhcigtLXNpdGUtc2Vjb25kYXJ5LWNvbG9yKSA1JSwgdHJhbnNwYXJlbnQpO1xyXG5cdGJveC1zaGFkb3c6IC01MHZ3IDAgMHB4IDBweCBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0tc2l0ZS1zZWNvbmRhcnktY29sb3IpIDUlLCB0cmFuc3BhcmVudCksIDUwdncgMCAwcHggMHB4IGNvbG9yLW1peChpbiBzcmdiLCB2YXIoLS1zaXRlLXNlY29uZGFyeS1jb2xvcikgNSUsIHRyYW5zcGFyZW50KTtcclxufVxyXG5cclxuXHJcblxyXG4vKiBnYWxlcmlhICovXHJcbi5nYWxsZXJ5IGltZ3tcclxuXHRib3JkZXItcmFkaXVzOiAyNHB4O1xyXG5cdG1heC13aWR0aDoxMDAlO1xyXG5cclxufVxyXG5cclxuLmdhbGxlcnkgaW1nOm5vdCg6Zmlyc3QtY2hpbGQpe1xyXG5cdGRpc3BsYXk6bm9uZTtcclxufVxyXG5cclxuLyogbWFwICovXHJcblxyXG4ubWFwLXNjcm9sbCAubWFwLXNjcm9sbF9tc2cge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi5tYXAtc2Nyb2xsOmJlZm9yZSB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBjb250ZW50OiAnJztcclxuICAgIGJhY2tncm91bmQ6ICMwMDAwMDA2MTtcclxuICAgIHotaW5kZXg6IDk5OTtcclxufVxyXG5cclxuLm1hcC1zY3JvbGxfbXNnIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBjb2xvcjogI0ZGRjtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICB6LWluZGV4OiA5OTk7XHJcbiAgICBmb250LXNpemU6IDJlbTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuXHJcbi5zcXVhcmVfcmF0aW97XHJcblx0YXNwZWN0LXJhdGlvOiAxIC8gMTtcclxufVxyXG5cclxuLm1hcF9zcXVhcmVfc21hbGx7XHJcblx0d2lkdGg6NDQwcHg7XHJcblx0aGVpZ2h0OjQ0MHB4O1xyXG59XHJcblxyXG4ubWFwX3NxdWFyZV9tZWRpdW17XHJcblx0d2lkdGg6IDU4MHB4O1xyXG5cdGhlaWdodDo1ODBweDtcclxuXHRvdmVyZmxvdzpoaWRkZW47XHJcblxyXG59XHJcblxyXG5cclxuXHJcbi8qcGFnIGNhdGVnb3JpYSAqL1xyXG5cclxuI2NhdGVnb3J5X2hlYWRlcntcclxuXHRwb3NpdGlvbjpyZWxhdGl2ZTtcclxuXHRwYWRkaW5nLWxlZnQ6IDE0MHB4O1xyXG5cdG1pbi1oZWlnaHQ6MTQ1cHg7XHJcbn1cclxuXHJcblxyXG4jY2F0ZWdvcnlfaGVhZGVyIC5lbGVtZW50X2ljb257XHJcblx0cG9zaXRpb246YWJzb2x1dGU7XHJcblx0ei1pbmRleDotMTtcclxuXHRsZWZ0OjA7XHJcblx0dG9wOjAlO1xyXG5cclxuXHRkaXNwbGF5OmZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcblx0d2lkdGg6IDE2MHB4O1xyXG5cdGhlaWdodDogMTQ1cHg7XHJcblxyXG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL2RlY29yX2ZvbnNfaWNvLnN2ZycpO1xyXG5cdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcclxuXHRiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XHJcblxyXG59XHJcblxyXG4jY2F0ZWdvcnlfaGVhZGVyIC5lbGVtZW50X2ljb24gaW1ne1xyXG5cdG1heC13aWR0aDo5MHB4O1xyXG5cdG1heC1oZWlnaHQ6OTBweDtcclxufVxyXG5cclxuI2NhdGVnb3J5X2hlYWRlciAuZWxlbWVudF9kZXNjcmlwdGlvbntcclxuXHRmb250LXNpemU6MS4xcmVtO1xyXG5cdGNvbG9yOiAjMDAwO1xyXG59XHJcblxyXG5cclxuXHJcbi8qc2hvcCBjYXJ0ICovXHJcblxyXG4jc3lsaXVzX3Nob3BfY2FydCAuY2FydC1zdW1tYXJ5e1xyXG5cdC0tYnMtbGlnaHQtcmdiOiAyNTUsIDI0MywgMjI3O1xyXG59XHJcblxyXG5cclxuI3N5bGl1c19zaG9wX2NhcnQgLmNhcnQtc3VtbWFyeSAuaHN0YWNre1xyXG5cdC0tYnMtaGVhZGluZy1jb2xvcjogIzAwMDtcclxuXHRjb2xvcjogIzAwMDtcclxuXHJcbn1cclxuXHJcbiNzeWxpdXNfc2hvcF9jYXJ0IC5oNXtcclxuXHRmb250LXdlaWdodDogbm9ybWFsO1xyXG59XHJcblxyXG4jc3lsaXVzX3Nob3BfY2FydCAuY2FydC1saW5lLXN1YnRvdGFse1xyXG5cdGNvbG9yOiB2YXIoLS1icy1ib2R5LWNvbG9yKTtcclxuXHJcbn1cclxuXHJcbiNzeWxpdXNfc2hvcF9jYXJ0IC5hZGQtY2FydC1jb3Vwb24gLmJ0bntcclxuXHQtLWJzLWJ0bi1iZzogcmdiKDk0LCA4NCwgNTQsIDAuNSk7XHJcblxyXG59XHJcblxyXG5cclxuLmNoZWNrb3V0LXNpZGViYXIsIC5jaGVja291dC1zaWRlYmFyIC5oNntcclxuXHRjb2xvcjogIzAwMDtcclxuXHRmb250LXNpemU6IDEuMTVyZW1cclxufVxyXG5cclxuLmNoZWNrb3V0LXNpZGViYXIgLmg1e1xyXG4gICAgZm9udC1zaXplOiAxLjRyZW07XHJcbn1cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuLyplcnJvciA0MDQqL1xyXG4ubXNnXzQwNHtcclxuXHRiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9kZWNvcl80MDQuc3ZnJykgbm8tcmVwZWF0IGNlbnRlciB0b3A7XHJcblx0cGFkZGluZy10b3A6IDIzMHB4O1xyXG5cdG1hcmdpbjogODBweCAwO1xyXG59XHJcblxyXG4vKmZvb3RlciAqL1xyXG5cclxuXHJcbiNwYWdlX2Zvb3RlciB7XHJcblx0LS1icy1ib3JkZXItY29sb3I6ICNhNDkyNjI7XHJcbn1cclxuXHJcbi5mb290ZXJfYmFuZHtcclxuXHQtLXRleHRfY29sb3I6IHZhcigtLXNpdGUtdGVybmFyeS1jb2xvcik7XHJcblx0LS1oZWFkaW5nLXNpemU6IDEuM3JlbTtcclxuXHQtLWJsb2NrLXBhZGRpbmc6IDIuM3JlbTtcclxufVxyXG5cclxuLmZvb3Rlcl9ibG9ja3tcclxuXHRwYWRkaW5nLWxlZnQ6IHZhcigtLWJsb2NrLXBhZGRpbmcpO1xyXG59XHJcblxyXG5cclxuLmZvb3Rlcl9iYW5kIGEsXHJcbi5mb290ZXJfYmFuZCBoMntcclxuXHRjb2xvcjogdmFyKC0tdGV4dF9jb2xvcik7XHJcbn1cclxuXHJcbi5mb290ZXJfYmFuZCBoMntcclxuXHRwb3NpdGlvbjpyZWxhdGl2ZTtcclxuXHRmb250LXNpemU6IHZhcigtLWhlYWRpbmctc2l6ZSk7XHJcblx0bWFyZ2luLWJvdHRvbTogMXJlbTtcclxufVxyXG5cclxuXHJcblxyXG5cclxuXHJcbi5mb290ZXJfYmxvY2suaW5mb3sgLS1pY29uOiB1cmwoJy4uL2ltYWdlcy9pY29faW5mby5zdmcnKTsgfVxyXG4uZm9vdGVyX2Jsb2NrLnNvY2lhbHsgLS1pY29uOiB1cmwoJy4uL2ltYWdlcy9pY29fbGlrZS5zdmcnKTsgfVxyXG5cclxuLmZvb3Rlcl9ibG9jay5jb250YWN0ZXsgLS1pY29uOiB1cmwoJy4uL2ltYWdlcy9pY29fbG9jYXRpb24uc3ZnJyk7IH1cclxuLmZvb3Rlcl9ibG9jay5hYm91dHsgLS1pY29uOiB1cmwoJy4uL2ltYWdlcy9pY29fbG9nb21pbi5zdmcnKTsgfVxyXG5cclxuXHJcbi5mb290ZXJfYmxvY2sgaDI6YmVmb3Jle1xyXG5cdGNvbnRlbnQ6ICcnO1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdHBvc2l0aW9uOmFic29sdXRlO1xyXG5cclxuICAgIGxlZnQ6IGNhbGModmFyKC0tYmxvY2stcGFkZGluZykgKiAtMSk7XHJcbiAgICB0b3A6IC0ycHg7XHJcblxyXG5cdHdpZHRoOiAzMHB4O1xyXG5cdGhlaWdodDogMzBweDtcclxuXHJcblxyXG5cdGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLWljb24pO1xyXG5cdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcclxuXHJcbn1cclxuXHJcbi5mb290ZXJfYmxvY2sgbGl7XHJcblx0bWFyZ2luLWJvdHRvbTogMC41cmVtO1xyXG5cclxufVxyXG5cclxuLmZvb3Rlcl9ibG9jayBsaSBhe1xyXG5cdHRleHQtZGVjb3JhdGlvbi1zdHlsZTogZG90dGVkO1xyXG5cdG9wYWNpdHk6IDAuOTtcclxuXHJcbn1cclxuXHJcbi5mb290ZXJfYmxvY2sgbGkgYTpob3ZlcntcclxuXHRvcGFjaXR5OiAxO1xyXG5cdHRleHQtZGVjb3JhdGlvbi1zdHlsZTogc29saWQ7XHJcbn1cclxuXHJcblxyXG5cclxuLm1lbnUtc29jaWFsIC5pbnN0YWdyYW17IC0tc29jaWFsLWljb24taW1nOiB1cmwoJy4uL2ltYWdlcy9pY29faW5zdGFncmFtLnN2ZycpOyB9XHJcbi5tZW51LXNvY2lhbCAuZmFjZWJvb2sgeyAtLXNvY2lhbC1pY29uLWltZzogdXJsKCcuLi9pbWFnZXMvaWNvX2ZhY2Vib29rLnN2ZycpOyB9XHJcbi5tZW51LXNvY2lhbCAudHdpdHRlciB7IC0tc29jaWFsLWljb24taW1nOiB1cmwoJy4uL2ltYWdlcy9pY29fdHdpdHRlci5zdmcnKTsgfVxyXG4ubWVudS1zb2NpYWwgLnlvdXR1YmUgeyAtLXNvY2lhbC1pY29uLWltZzogdXJsKCcuLi9pbWFnZXMvaWNvX3lvdXR1YmUuc3ZnJyk7IH1cclxuXHJcbnVsLm1lbnUtc29jaWFsIGxpIGE6YmVmb3Jle1xyXG5cdGNvbnRlbnQ6Jyc7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0d2lkdGg6NDRweDtcclxuXHRoZWlnaHQ6NDJweDtcclxuXHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2l0ZS10ZXJuYXJ5LWNvbG9yKTtcclxuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG5cdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XHJcblxyXG5cdG1hc2staW1hZ2U6IHZhcigtLXNvY2lhbC1pY29uLWltZyk7XHJcblxyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQ7XHJcblxyXG59XHJcblxyXG51bC5tZW51LXNvY2lhbCBsaSBhOmhvdmVyOmJlZm9yZXtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zaXRlLWFjY2VudC1jb2xvcik7XHJcbn1cclxuXHJcbnVsLm1lbnUtc29jaWFsIGxpIGEgc3BhbntcclxuXHRkaXNwbGF5Om5vbmU7XHJcbn1cclxuXHJcblxyXG4jZm9vdF9pbmZvX2xlZ2FsMXtcclxuXHRmb250LXNpemU6MC44cmVtO1xyXG59XHJcblxyXG4jZm9vdF9pbmZvX2xlZ2FsMSA6bGFzdC1jaGlsZHtcclxuXHRtYXJnaW4tYm90dG9tOjA7XHJcbn1cclxuXHJcbiNmb290X2luZm9fbGVnYWwxIC5ibG9jMiBwe1xyXG5cdGJvcmRlci1sZWZ0OjFweCBzb2xpZCB2YXIoLS1zaXRlLXRlcm5hcnktY29sb3IpO1xyXG5cdHBhZGRpbmctbGVmdDogMXJlbTtcclxufVxyXG5cclxuI2Zvb3RfaW5mb19sZWdhbDEgLmJsb2MzIHB7XHJcblx0cGFkZGluZy10b3A6MnJlbTtcclxuXHRtYXJnaW4tdG9wOjJyZW07XHJcblx0Ym9yZGVyLXRvcDoxcHggZG90dGVkIHZhcigtLXNpdGUtdGVybmFyeS1jb2xvcik7XHJcbn1cclxuXHJcblxyXG4jZm9vdF9pbmZvX2xlZ2FsMntcclxuXHRib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tc2l0ZS10ZXJuYXJ5LWNvbG9yKTtcclxuXHRwYWRkaW5nLXRvcDogMS41cmVtO1xyXG59XHJcblxyXG5cclxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XHJcblxyXG5cdCNmb290X2luZm9fbGVnYWwyIGxpe1xyXG5cdFx0ZGlzcGxheTpjb250ZW50cztcclxuXHR9XHJcblxyXG5cdCNmb290X2luZm9fbGVnYWwyIGxpOm5vdCg6bGFzdC1jaGlsZCk6OmFmdGVyIHtcclxuXHRjb250ZW50OiBcIiDigJQgXCI7IC8qIFNlcGFyYWRvciAqL1xyXG5cdG1hcmdpbi1sZWZ0OiAwLjVyZW07IC8qIEVzcGFjaW8gYSBsYSBpenF1aWVyZGEgZGVsIHNlcGFyYWRvciAqL1xyXG5cdG1hcmdpbi1yaWdodDogMC41cmVtOyAvKiBFc3BhY2lvIGEgbGEgZGVyZWNoYSBkZWwgc2VwYXJhZG9yICovXHJcblx0fVxyXG59XHJcblxyXG4ubGlua3NfZ2VuIGF7XHJcblx0dGV4dC1kZWNvcmF0aW9uOm5vbmU7XHJcbn1cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuI2Zvb3Rlcl9iYW5kMXtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zaXRlLWJvZHktY29sb3IpO1xyXG5cdGNvbG9yOnZhcigtLXNpdGUtdGVybmFyeS1jb2xvcik7XHJcblxyXG59XHJcblxyXG4jZm9vdGVyX2JhbmQye1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNpdGUtcHJpbWFyeS1jb2xvcik7XHJcblx0Y29sb3I6dmFyKC0tc2l0ZS10ZXJuYXJ5LWNvbG9yKTtcclxufVxyXG5cclxuXHJcblxyXG4vKmZvb3RlciBoZXJlZGFkbyovXHJcbiNmb290ZXItc3BvbnNvcnN7XHJcblx0cGFkZGluZzogMS41cmVtIDA7XHJcbiAgICBiYWNrZ3JvdW5kOiAjRTZFNkU2O1xyXG5cclxufVxyXG5cclxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcblx0I2Zvb3Rlci1zcG9uc29ycyB7XHJcblx0XHRiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudChsZWZ0LCAjRTZFNkU2IDUwJSwgI0YwRjBGMCA1MCUpO1xyXG5cdFx0YmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgI0U2RTZFNiA1MCUsI0YwRjBGMCA1MCUpO1xyXG5cdFx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjRTZFNkU2IDUwJSwjRjBGMEYwIDUwJSk7XHJcblx0fVxyXG59XHJcblxyXG5cclxuI2Zvb3Rlci1zcG9uc29ycyAuaW5uZXJ7XHJcblx0ZGlzcGxheTpmbGV4O1xyXG5cdGZsZXgtd3JhcDp3cmFwO1xyXG5cdG92ZXJmbG93OmhpZGRlbjtcclxuXHRjb2xvcjojMjczNDNkO1xyXG5cdGdhcDoycmVtO1xyXG59XHJcblxyXG5cclxuXHJcbiNmb290ZXItc3BvbnNvcnMgLmlubmVyIGRsIHtcclxuICAgIGZsZXg6IDE7XHJcbiAgICBtYXJnaW46IDA7XHJcbn1cclxuXHJcbiNmb290ZXItc3BvbnNvcnMgLmlubmVyIGRsOmZpcnN0LWNoaWxkIHtcclxuXHRtaW4td2lkdGg6NTAlO1xyXG59XHJcblxyXG5cclxuXHJcblxyXG4jZm9vdGVyLXNwb25zb3JzIGRke1xyXG5cdG1hcmdpbi1ib3R0b206MC43ZW07XHJcbn1cclxuXHJcblxyXG5cclxuI2Zvb3Rlci1zcG9uc29ycyBkdHtcclxuXHRkaXNwbGF5OmlubGluZS1ibG9jaztcclxuXHRtYXJnaW4tcmlnaHQ6NDBweDtcclxufVxyXG5cclxuI2Zvb3Rlci1zcG9uc29ycyBkdDpsYXN0LWNoaWxke21hcmdpbjowO31cclxuXHJcblxyXG5cclxuXHJcbiNtZW51LWZvb3Rlcl9sb2dvcyB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC13cmFwOiB3cmFwOyAvKiBwZXJtaXRlIHF1ZSBsb3MgPGxpPiBzZSBhcGlsZW4gY3VhbmRvIG5vIGhheSBhbmNobyAqL1xyXG4gICAgZ2FwOiAzcmVtOyAgICAgICAvKiBzZXBhcmFjacOzbiBlbnRyZSBlbGVtZW50b3MgKi9cclxuICAgIHBhZGRpbmc6IDEuNXJlbSAwO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7ICAgICAvKiBvcGNpb25hbDogYWxpbmVhIHZlcnRpY2FsbWVudGUgKi9cclxufVxyXG5cclxuI21lbnUtZm9vdGVyX2xvZ29zIGxpIHtcclxuICAgIGZsZXg6IDAgMSBhdXRvOyAvKiBvY3VwYSBlbCBhbmNobyBkZSBzdSBjb250ZW5pZG8sIHBlcm8gc2UgcGVybWl0ZSBhanVzdGUgKi9cclxufVxyXG5cclxuI21lbnUtZm9vdGVyX2xvZ29zIGltZyB7XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuXHJcblxyXG4vKkJBTk5FUiBOQURBTCovXHJcbi8qIENvbnRlbmlkb3IgcXVlIGZhIGRlIGNhcGEgZGUgZm9ucyBlbmZvc3F1aXQgaSBjZW50cmEgZWwgY29udGluZ3V0ICovXHJcbiNiYW5uZXJfb3ZlcmxheSB7XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG4gIHRvcDogMDtcclxuICBsZWZ0OiAwO1xyXG4gIHdpZHRoOiAxMDB2dztcclxuICBoZWlnaHQ6IDEwMHZoO1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTsgLyogZm9ucyBuZWdyZSBzZW1pLXRyYW5zcGFyZW50ICovXHJcblxyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICBvdmVyZmxvdzogYXV0bzsgLyogUGVyIHNpIGVsIGJhbm5lciDDqXMgbW9sdCBncmFuICovXHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICBwYWRkaW5nOiAxcmVtOyAvKiBldml0YXIgcXVlIGVsIGJhbm5lciB0b3F1aSBsZXMgdm9yZXMgc2kgw6lzIGdyYW4gKi9cclxuICB6LWluZGV4OiAyNTAwOyAvKiBlc3RhciBwZXIgc29icmUgZGUgbGEgcmVzdGEgKi9cclxufVxyXG5cclxuLyogQmFubmVyICovXHJcbiNiYW5uZXJfbmFkYWwge1xyXG4gIG1heC13aWR0aDogMTAwJTtcclxuICBtYXgtaGVpZ2h0OiAxMDAlO1xyXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbn1cclxuXHJcblxyXG5cclxuI2Jhbm5lcl9uYWRhbCB7XHJcblx0LyogVmFyaWFibGVzIENTUyBjZW50cmFsaXphZGFzICovXHJcblx0LS1jb2xvci1mb25kbzogI0ZGRjNFMztcclxuXHQtLXJhZGl1czogMjhweDtcclxuXHQtLWNvbG9yLXByaW1hcmk6ICM0OTAwNDI7XHJcblx0LS1jb2xvci1hY2NlbnQ6ICNmOTZlMjQ7XHJcblxyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRtYXgtd2lkdGg6IDEzMDBweDtcclxuXHRtYXJnaW46IDAgYXV0bztcclxuXHRwYWRkaW5nOjMwcHg7XHJcblx0Zm9udC1mYW1pbHk6IFwiUmV0aGluayBTYW5zXCIsIHNhbnMtc2VyaWY7XHJcbn1cclxuI2Jhbm5lcl9uYWRhbCAubWFpbiB7XHJcblxyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cyk7XHJcblx0LypvdmVyZmxvdzogaGlkZGVuOyovXHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcbi8qIEZsZXhib3ggY29sdW1uYXMgKi9cclxuI2Jhbm5lcl9uYWRhbCAuY29sdW1ucyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogc3RyZXRjaDtcclxufVxyXG4vKiBMYSBjb2x1bW5hIGRlIHRleHRvIG9jdXBhIGVsIGVzcGFjaW8gcmVzdGFudGUgKi9cclxuI2Jhbm5lcl9uYWRhbCAuY29sMSB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHdpZHRoOjM1MHB4O1xyXG5cdGZsZXg6IDAgMSAzNTBweDtcclxuXHRwYWRkaW5nOiAzMnB4O1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRtaW4td2lkdGg6IDA7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tY29sb3ItZm9uZG8pO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cykgMCAwIHZhcigtLXJhZGl1cyk7XHJcbn1cclxuLyogTGEgY29sdW1uYSBkZSBpbWFnZW4gc29sbyBvY3VwYSBsbyBxdWUgbmVjZXNpdGEgKi9cclxuI2Jhbm5lcl9uYWRhbCAuY29sMiB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdGZsZXg6IDEgMSBhdXRvO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IHN0cmV0Y2g7XHJcblxyXG5cdC8qYm9yZGVyLXJhZGl1czogMCB2YXIoLS1yYWRpdXMpIHZhcigtLXJhZGl1cykgMDsqL1xyXG5cdC8qb3ZlcmZsb3c6IGhpZGRlbjsqL1xyXG5cclxufVxyXG4jYmFubmVyX25hZGFsIC5jb2wyIGltZyB7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0bWF4LXdpZHRoOiAxMDAlO1xyXG5cdGhlaWdodDogYXV0bztcclxuXHRib3JkZXItcmFkaXVzOiAwIHZhcigtLXJhZGl1cykgdmFyKC0tcmFkaXVzKSAwO1xyXG5cdG9iamVjdC1maXQ6IGNvdmVyO1xyXG59XHJcblxyXG5cclxuXHJcbiNiYW5uZXJfbmFkYWwgaDIge1xyXG5cdGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJpKTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdGZvbnQtc2l6ZTogMnJlbTtcclxuXHRtYXJnaW4tdG9wOiAwO1xyXG5cdG1hcmdpbi1ib3R0b206IDE2cHg7XHJcblx0bGluZS1oZWlnaHQ6IDFcclxufVxyXG4jYmFubmVyX25hZGFsIC5kZXNjcmlwY2lvbiB7XHJcblx0Y29sb3I6IHZhcigtLWNvbG9yLXByaW1hcmkpO1xyXG5cdGZvbnQtc2l6ZTogMXJlbTtcclxuXHRtYXJnaW4tYm90dG9tOiAxNnB4O1xyXG59XHJcbiNiYW5uZXJfbmFkYWwgLmZyYXNlIHtcclxuXHRjb2xvcjogdmFyKC0tY29sb3ItYWNjZW50KTtcclxuXHRmb250LXdlaWdodDogNzAwO1xyXG5cdG1hcmdpbjogMjZweCAwIDE2cHg7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRsaW5lLWhlaWdodDogMS4yO1xyXG5cclxuXHJcbn1cclxuI2Jhbm5lcl9uYWRhbCAubGluay1idG4ge1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLXByaW1hcmkpO1xyXG5cdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG5cdGJvcmRlci1yYWRpdXM6IGNhbGModmFyKC0tcmFkaXVzKSAvIDMpO1xyXG5cdHBhZGRpbmc6IDEwcHggMjRweDtcclxuXHRjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyaSk7XHJcblxyXG5cclxuXHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjJzLCBjb2xvciAwLjJzO1xyXG5cdHRleHQtYWxpZ246Y2VudGVyO1xyXG5cdHRleHQtZGVjb3JhdGlvbjpub25lO1xyXG59XHJcbiNiYW5uZXJfbmFkYWwgLmxpbmstYnRuOmhvdmVyLFxyXG4jYmFubmVyX25hZGFsIC5saW5rLWJ0bjpmb2N1cyB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tY29sb3ItcHJpbWFyaSk7XHJcblx0Y29sb3I6ICNmZmY7XHJcbn1cclxuI2Jhbm5lcl9uYWRhbCAuZGVjb3Ige1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9kZWNvcl9hcmJyZS5zdmcnKSBuby1yZXBlYXQ7XHJcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcclxuXHRiYWNrZ3JvdW5kLXNpemU6Y29udGFpbjtcclxuXHRoZWlnaHQ6IDE0MnB4O1xyXG5cdHdpZHRoOiAxMzJweDtcclxuXHJcblx0dG9wOiAtNzBweDtcclxuXHRsZWZ0OiAtNjBweDtcclxuXHJcblxyXG5cdHotaW5kZXg6IDI7XHJcblx0dHJhbnNmb3JtOiAgcm90YXRlKC0yM2RlZyk7XHJcbn1cclxuI2Jhbm5lcl9uYWRhbCAuY2xvc2UtYnRuIHtcclxuXHRkaXNwbGF5OmJsb2NrO1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR6LWluZGV4Ojk5O1xyXG5cdHRvcDogMDtcclxuXHRyaWdodDogMDtcclxuXHRmb250LXNpemU6IDJyZW07XHJcblx0YmFja2dyb3VuZDogdmFyKC0tY29sb3ItZm9uZG8pO1xyXG5cdGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJpKTtcclxuXHRib3JkZXItcmFkaXVzOjUwcHg7XHJcblx0dGV4dC1kZWNvcmF0aW9uOm5vbmU7XHJcblx0dGV4dC1hbGlnbjpjZW50ZXI7XHJcblx0d2lkdGg6IDM1cHg7XHJcblx0aGVpZ2h0OiAzNXB4O1xyXG5cdGxpbmUtaGVpZ2h0OjM1cHg7XHJcblxyXG59XHJcblxyXG4jYmFubmVyX25hZGFsIC5jbG9zZS1idG46aG92ZXJ7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tY29sb3ItcHJpbWFyaSk7XHJcblx0Y29sb3I6IHZhcigtLWNvbG9yLWZvbmRvKTtcclxufVxyXG5cclxuXHJcblxyXG4vKiBSRVNQT05TSVZFICovXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjBweCkge1xyXG5cclxuXHQjYmFubmVyX25hZGFse1xyXG5cdFx0bWF4LXdpZHRoOjUwMHB4O1xyXG5cdFx0cGFkZGluZzoxMHB4O1xyXG5cdH1cclxuXHJcblx0I2Jhbm5lcl9uYWRhbCAuY29sdW1ucyB7XHJcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdH1cclxuXHQjYmFubmVyX25hZGFsIC5jb2wxIHtcclxuXHRcdGZsZXg6MTtcclxuXHRcdHdpZHRoOmF1dG87XHJcblx0XHRwYWRkaW5nOiAzMHB4O1xyXG5cdFx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzKSB2YXIoLS1yYWRpdXMpIDAgMDtcclxuXHR9XHJcblxyXG5cdCNiYW5uZXJfbmFkYWwgLmNvbDIgaW1nIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0aGVpZ2h0OiAxMDAlO1xyXG5cdFx0b2JqZWN0LWZpdDogY292ZXI7XHJcblx0XHRib3JkZXItcmFkaXVzOiAwIDAgdmFyKC0tcmFkaXVzKSB2YXIoLS1yYWRpdXMpO1xyXG5cdH1cclxuXHQjYmFubmVyX25hZGFsIC5kZWNvciB7XHJcblx0XHR3aWR0aDogMTAwcHg7XHJcblx0XHRoZWlnaHQ6IDEwMHB4O1xyXG5cdFx0Ym90dG9tOi00MHB4O1xyXG5cdFx0dG9wOiBhdXRvO1xyXG5cdFx0bGVmdDogNTAlO1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHJvdGF0ZSgtMjNkZWcpO1xyXG5cdH1cclxuXHQjYmFubmVyX25hZGFsIC5jbG9zZS1idG4ge1xyXG5cdFx0dG9wOiAyMHB4O1xyXG5cdFx0cmlnaHQ6IDIwcHg7XHJcblx0fVxyXG5cdCNiYW5uZXJfbmFkYWwgaDIge1xyXG5cdFx0Zm9udC1zaXplOiAxLjRyZW07XHJcblx0fVxyXG5cclxufVxyXG5cclxuLyogaWNvcyBwcm9kdWN0ZXMgKi9cclxuLnByb2R1Y3QtY2FyZCBhOmJlZm9yZXtcclxuXHRkaXNwbGF5OiBibG9jaztcclxuXHR3aWR0aDozMCU7XHJcblx0YXNwZWN0LXJhdGlvOiAxIC8gMTtcclxuXHJcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGNlbnRlcjtcclxuXHRiYWNrZ3JvdW5kLXNpemU6Y29udGFpbjtcclxuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG5cclxuXHRwb3NpdGlvbjphYnNvbHV0ZTtcclxuXHR0b3A6IGNhbGMoLTEqIHZhcigtLXByb2R1Y3QtY2FyZC1wYWRkaW5nKSk7XHJcblx0cmlnaHQ6IHZhcigtLXByb2R1Y3QtY2FyZC1wYWRkaW5nKTtcclxufVxyXG5cclxuXHJcbi5wcm9kdWN0LWNhcmQucHJvZGNhdC1uYWRhbCBhOmJlZm9yZXtcclxuXHRjb250ZW50OiAnJztcclxuXHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltYWdlcy9kZWNvcl90aW8uc3ZnJyk7XHJcbn1cclxuXHJcbi5wcm9kdWN0LWNhcmQucHJvZGNhdC1uYWRhbC5wcm9kY2F0LWNlbGxlciBhOmJlZm9yZXtcclxuXHRjb250ZW50OiAnJztcclxuXHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltYWdlcy9kZWNvcl9hcmJyZS5zdmcnKTtcclxufVxyXG5cclxuLnByb2R1Y3QtY2FyZC5zdGlja2VyX2ZyZWVfc2hpcHBpbmcgYTpmaXJzdC1jaGlsZDpiZWZvcmUge1xyXG5cdGNvbnRlbnQ6ICcnO1xyXG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL3N0aWNrZXJfZnJlZV9zaGlwcGluZy5wbmcnKTtcclxufVxyXG5cclxuLnNwb3RsaWdodF9tYWluX2ltYWdlLnN0aWNrZXJfZnJlZV9zaGlwcGluZyB7XHJcblx0YTpmaXJzdC1jaGlsZCB7XHJcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHQmOmJlZm9yZSB7XHJcblx0XHRcdGNvbnRlbnQ6ICcnO1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltYWdlcy9zdGlja2VyX2ZyZWVfc2hpcHBpbmcucG5nJyk7XHJcblx0XHRcdGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcclxuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuXHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0d2lkdGg6IDIwJTtcclxuXHRcdFx0aGVpZ2h0OiAyMCU7XHJcblx0XHRcdHRvcDogMDtcclxuXHRcdFx0cmlnaHQ6IDA7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG5ib2R5W2RhdGEtcm91dGU9XCJzeWxpdXNfc2hvcF9wcm9kdWN0X3Jldmlld19jcmVhdGVcIl0ge1xyXG5cdC5wcm9kY2F0LW5hZGFsLCAuc3RpY2tlcl9mcmVlX3NoaXBwaW5nIHtcclxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR9XHJcblx0LnByb2R1Y3QtdmVuZG9yIHtcclxuXHRcdCY6OmJlZm9yZSB7XHJcblx0XHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0XHRcdG1heC13aWR0aDogMTAwcHg7XHJcblx0XHR9XHJcblx0fVxyXG5cdC5saW5rLXJlc2V0IHtcclxuXHRcdCY6OmJlZm9yZSB7XHJcblx0XHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsIi8vIEJyZWFrcG9pbnQgdmlld3BvcnQgc2l6ZXMgYW5kIG1lZGlhIHF1ZXJpZXMuXG4vL1xuLy8gQnJlYWtwb2ludHMgYXJlIGRlZmluZWQgYXMgYSBtYXAgb2YgKG5hbWU6IG1pbmltdW0gd2lkdGgpLCBvcmRlciBmcm9tIHNtYWxsIHRvIGxhcmdlOlxuLy9cbi8vICAgICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpXG4vL1xuLy8gVGhlIG1hcCBkZWZpbmVkIGluIHRoZSBgJGdyaWQtYnJlYWtwb2ludHNgIGdsb2JhbCB2YXJpYWJsZSBpcyB1c2VkIGFzIHRoZSBgJGJyZWFrcG9pbnRzYCBhcmd1bWVudCBieSBkZWZhdWx0LlxuXG4vLyBOYW1lIG9mIHRoZSBuZXh0IGJyZWFrcG9pbnQsIG9yIG51bGwgZm9yIHRoZSBsYXN0IGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweCkpXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAkYnJlYWtwb2ludC1uYW1lczogKHhzIHNtIG1kIGxnIHhsIHh4bCkpXG4vLyAgICBtZFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cywgJGJyZWFrcG9pbnQtbmFtZXM6IG1hcC1rZXlzKCRicmVha3BvaW50cykpIHtcbiAgJG46IGluZGV4KCRicmVha3BvaW50LW5hbWVzLCAkbmFtZSk7XG4gIEBpZiBub3QgJG4ge1xuICAgIEBlcnJvciBcImJyZWFrcG9pbnQgYCN7JG5hbWV9YCBub3QgZm91bmQgaW4gYCN7JGJyZWFrcG9pbnRzfWBcIjtcbiAgfVxuICBAcmV0dXJuIGlmKCRuIDwgbGVuZ3RoKCRicmVha3BvaW50LW5hbWVzKSwgbnRoKCRicmVha3BvaW50LW5hbWVzLCAkbiArIDEpLCBudWxsKTtcbn1cblxuLy8gTWluaW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgc21hbGxlc3QgKGZpcnN0KSBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWluKHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQwMHB4KSlcbi8vICAgIDU3NnB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbWluICE9IDAsICRtaW4sIG51bGwpO1xufVxuXG4vLyBNYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguXG4vLyBUaGUgbWF4aW11bSB2YWx1ZSBpcyByZWR1Y2VkIGJ5IDAuMDJweCB0byB3b3JrIGFyb3VuZCB0aGUgbGltaXRhdGlvbnMgb2Zcbi8vIGBtaW4tYCBhbmQgYG1heC1gIHByZWZpeGVzIGFuZCB2aWV3cG9ydHMgd2l0aCBmcmFjdGlvbmFsIHdpZHRocy5cbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvbWVkaWFxdWVyaWVzLTQvI21xLW1pbi1tYXhcbi8vIFVzZXMgMC4wMnB4IHJhdGhlciB0aGFuIDAuMDFweCB0byB3b3JrIGFyb3VuZCBhIGN1cnJlbnQgcm91bmRpbmcgYnVnIGluIFNhZmFyaS5cbi8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc4MjYxXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1tYXgobWQsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpKVxuLy8gICAgNzY3Ljk4cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWF4OiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtYXggYW5kICRtYXggPiAwLCAkbWF4IC0gLjAyLCBudWxsKTtcbn1cblxuLy8gUmV0dXJucyBhIGJsYW5rIHN0cmluZyBpZiBzbWFsbGVzdCBicmVha3BvaW50LCBvdGhlcndpc2UgcmV0dXJucyB0aGUgbmFtZSB3aXRoIGEgZGFzaCBpbiBmcm9udC5cbi8vIFVzZWZ1bCBmb3IgbWFraW5nIHJlc3BvbnNpdmUgdXRpbGl0aWVzLlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoeHMsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpKVxuLy8gICAgXCJcIiAgKFJldHVybnMgYSBibGFuayBzdHJpbmcpXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQwMHB4KSlcbi8vICAgIFwiLXNtXCJcbkBmdW5jdGlvbiBicmVha3BvaW50LWluZml4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEByZXR1cm4gaWYoYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cykgPT0gbnVsbCwgXCJcIiwgXCItI3skbmFtZX1cIik7XG59XG5cbi8vIE1lZGlhIG9mIGF0IGxlYXN0IHRoZSBtaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgd2lkZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtaW4ge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIG9mIGF0IG1vc3QgdGhlIG1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBsYXJnZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtYXgge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIHRoYXQgc3BhbnMgbXVsdGlwbGUgYnJlYWtwb2ludCB3aWR0aHMuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgYmV0d2VlbiB0aGUgbWluIGFuZCBtYXggYnJlYWtwb2ludHNcbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWJldHdlZW4oJGxvd2VyLCAkdXBwZXIsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJGxvd2VyLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkdXBwZXIsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGxvd2VyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkdXBwZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIE1lZGlhIGJldHdlZW4gdGhlIGJyZWFrcG9pbnQncyBtaW5pbXVtIGFuZCBtYXhpbXVtIHdpZHRocy5cbi8vIE5vIG1pbmltdW0gZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LCBhbmQgbm8gbWF4aW11bSBmb3IgdGhlIGxhcmdlc3Qgb25lLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IG9ubHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQsIG5vdCB2aWV3cG9ydHMgYW55IHdpZGVyIG9yIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtb25seSgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiAgYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRuZXh0OiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRtYXg6ICBicmVha3BvaW50LW1heCgkbmV4dCwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJG5leHQsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=*/