/*
.sixteen-nine {
	@include aspect-ratio(16,9);
}*/
/* Media Queries Breakpoints */
/**
* *******************
*  Usage examples
* *******************
*
//
//  use <=
*   ALWAYS use <= ( '<' with '=' character) for all breakpoints
*   when setting max-width, ex: max-width: 767px,
*
*   so max-width: 1440px  == media('<=desktop-l')
*
* ***********************************************
*
//  use >
*   ALWAYS use only > as single character for all breakpoints
*   when setting min-width, ex: min-width: 768px,
*
*   so min-width: 1025px  == media('>desktop')
*
*************************************************
*
*## EXAMPLE:
*
*   (min-width: 768px) and (max-width: 1024px)
*   =
*   media ('>tablet'), ('<=desktop')
*
//

 */
:root {
  --phone-width: 576px;
  --tablet-width: 768px;
  --desktop-width: 1112px;
  --desktop-width-sm: 1024px;
  --desktop-width-m: 1280px;
  --desktop-width-l: 1440px;
  --desktop-width-xl: 1640px;
  --desktop-width-1920: 1920px;
  --content-width: var(--desktop-width-m);
  --blog-width: 760px;
  --page-gutter: 20px;
  --grid-gutter: 24px;
  --base-transition: .3s;
  --vertical-gap: 6vmin;
}
@media (max-width: 1112px) {
  :root {
    --vertical-gap: 20px;
    --page-gutter: 15px;
    --content-width: var(--tablet-width);
  }
}
@media (min-width: 1113px) and (max-width: 1440px) {
  :root {
    --content-width: var(--desktop-width-sm);
  }
}

/* Typography */
@font-face {
  font-family: "FixelDisplay";
  font-weight: 300;
  font-style: normal;
  font-display: swap;
  src: url("../../../fonts/FixelDisplay/FixelDisplay-Light.woff2") format("woff2");
}
@font-face {
  font-family: "FixelDisplay";
  font-weight: 400;
  font-style: normal;
  font-display: swap;
  src: url("../../../fonts/FixelDisplay/FixelDisplay-Regular.woff2") format("woff2");
}
@font-face {
  font-family: "FixelDisplay";
  font-weight: 500;
  font-style: normal;
  font-display: swap;
  src: url("../../../fonts/FixelDisplay/FixelDisplay-Medium.woff2") format("woff2");
}
@font-face {
  font-family: "FixelDisplay";
  font-weight: 600;
  font-style: normal;
  font-display: swap;
  src: url("../../../fonts/FixelDisplay/FixelDisplay-SemiBold.woff2") format("woff2");
}
@font-face {
  font-family: "FixelDisplay";
  font-weight: 700;
  font-style: normal;
  font-display: swap;
  src: url("../../../fonts/FixelDisplay/FixelDisplay-Bold.woff2") format("woff2");
}
/* 1rem = 10px */
html {
  font-size: 50%;
}
@media (min-width: 1281px) {
  html {
    font-size: 58%;
  }
}
@media (min-width: 1441px) {
  html {
    font-size: 62.5%;
  }
}

.is-wysiwyg,
.wp-editor {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
}
.is-wysiwyg br,
.wp-editor br {
  content: "";
  display: block;
  line-height: 4.6rem;
  margin-bottom: 0.8rem;
}
.is-wysiwyg.-fashion h1,
.is-wysiwyg.-fashion h2,
.is-wysiwyg.-fashion h3,
.is-wysiwyg.-fashion h4,
.is-wysiwyg.-fashion h5,
.wp-editor.-fashion h1,
.wp-editor.-fashion h2,
.wp-editor.-fashion h3,
.wp-editor.-fashion h4,
.wp-editor.-fashion h5 {
  text-transform: uppercase;
}
.is-wysiwyg a:not(.woo-button, .cta-button),
.wp-editor a:not(.woo-button, .cta-button) {
  color: inherit;
  font-size: 1.6rem;
  font-weight: 600;
}
.is-wysiwyg a:not(.woo-button, .cta-button):focus,
.wp-editor a:not(.woo-button, .cta-button):focus {
  color: inherit;
}
.is-wysiwyg a:not(.woo-button, .cta-button).-accent-link,
.wp-editor a:not(.woo-button, .cta-button).-accent-link {
  color: var(--color-haki);
}
.is-wysiwyg a:not(.woo-button, .cta-button).-accent-link:focus, .is-wysiwyg a:not(.woo-button, .cta-button).-accent-link:hover,
.wp-editor a:not(.woo-button, .cta-button).-accent-link:focus,
.wp-editor a:not(.woo-button, .cta-button).-accent-link:hover {
  filter: saturate(70%);
}
.is-wysiwyg h1,
.is-wysiwyg .h1,
.wp-editor h1,
.wp-editor .h1 {
  font-size: clamp(4rem, 4.2vw, 7.2rem);
  font-weight: 600;
  line-height: normal;
}
.is-wysiwyg h2,
.is-wysiwyg .h2,
.wp-editor h2,
.wp-editor .h2 {
  font-size: clamp(3.6rem, 5vw, 4rem);
  font-weight: 600;
}
.is-wysiwyg h2.h2-small,
.is-wysiwyg .h2.h2-small,
.wp-editor h2.h2-small,
.wp-editor .h2.h2-small {
  font-size: clamp(2.4rem, 5vw, 4rem);
}
.is-wysiwyg h3,
.is-wysiwyg .h3,
.wp-editor h3,
.wp-editor .h3 {
  font-size: clamp(2.4rem, 5vw, 3.2rem);
  line-height: 1.2;
  font-weight: 600;
}
.is-wysiwyg h4,
.is-wysiwyg .h4,
.wp-editor h4,
.wp-editor .h4 {
  font-size: clamp(2rem, 5vw, 4rem);
  line-height: 1.2;
}
.is-wysiwyg h5,
.is-wysiwyg .h5,
.wp-editor h5,
.wp-editor .h5 {
  font-size: 1.8rem;
  font-weight: 600;
  text-transform: uppercase;
}
.is-wysiwyg h6,
.is-wysiwyg .h6,
.wp-editor h6,
.wp-editor .h6 {
  font-size: clamp(1.6rem, 5vw, 1.8rem);
  line-height: 1.2;
}
.is-wysiwyg .m-8,
.wp-editor .m-8 {
  margin-bottom: 8px;
}
.is-wysiwyg .m-16,
.wp-editor .m-16 {
  margin-bottom: 1.6rem;
}
.is-wysiwyg .m-32,
.wp-editor .m-32 {
  margin-bottom: 3.2rem;
}
.is-wysiwyg strong,
.wp-editor strong {
  font-weight: 600;
}
.is-wysiwyg ul,
.wp-editor ul {
  padding-left: 2rem;
  list-style: disc;
  font-size: 1.6rem;
}
.is-wysiwyg ol,
.wp-editor ol {
  padding-left: 2rem;
  font-size: 1.6rem;
}
.is-wysiwyg p,
.wp-editor p {
  font-size: clamp(1.6rem, 2.5vw, 1.6rem);
}
.is-wysiwyg p b,
.wp-editor p b {
  font-weight: 600;
}
.is-wysiwyg p.h1-subtitler,
.wp-editor p.h1-subtitler {
  font-size: clamp(1.6rem, 2.5vw, 2.4rem);
  color: var(--text-grey);
  font-weight: 300;
}
.is-wysiwyg p span.subtitle,
.wp-editor p span.subtitle {
  font-size: clamp(1.6rem, 2vw, 2.4rem);
}
.is-wysiwyg .separator,
.wp-editor .separator {
  height: 0.1rem;
  width: 100%;
  background-color: var(--color-grey);
  margin: 3.2rem 0;
}
.is-wysiwyg img,
.wp-editor img {
  display: inline-block;
  vertical-align: middle;
  margin: 0 1.6rem 0 0;
}
.is-wysiwyg .woo-button,
.wp-editor .woo-button {
  margin-top: 1.6rem;
}
.is-wysiwyg .accent-block,
.wp-editor .accent-block {
  border: 0.1rem solid var(--color-grey);
  background-color: #fbfbfb;
  padding: clamp(1.6rem, 2vw, 2.4rem);
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
}
.is-wysiwyg .buttons-row,
.wp-editor .buttons-row {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 3.2rem;
}
.is-wysiwyg .icon-text-row,
.wp-editor .icon-text-row {
  display: flex;
  gap: 1.6rem;
  align-items: center;
}
.is-wysiwyg .icon-text-row img,
.wp-editor .icon-text-row img {
  margin: 0;
}
@media (max-width: 574px) {
  .is-wysiwyg .buttons-row,
  .wp-editor .buttons-row {
    gap: 1.6rem;
  }
  .is-wysiwyg .buttons-row a,
  .is-wysiwyg .buttons-row button,
  .wp-editor .buttons-row a,
  .wp-editor .buttons-row button {
    width: 100%;
  }
}

.page-404 {
  margin-bottom: var(--section-padding);
  padding: 0;
}
.page-404 .wrapper {
  flex-direction: column;
  align-items: center;
  background-color: #fff;
  padding-top: var(--section-padding);
  padding-bottom: var(--section-padding);
}
.page-404 .wrapper .is-wysiwyg {
  padding: 0 1.6rem;
  align-items: center;
  text-align: center;
}
.page-404 .wrapper .is-wysiwyg h1.mega-text {
  font-size: clamp(8.6rem, 7vw, 12.8rem);
  color: var(--color-haki);
}
.page-404 .wrapper .is-wysiwyg p {
  max-width: 59rem;
}
.page-404 .wrapper .is-wysiwyg .cta-button {
  margin-top: 5.6rem;
}

:root {
  --admin-bar: 32px;
  --main-header-color: #fff;
}
@media (max-width: 767px) {
  :root {
    --admin-bar: 46px;
  }
}

header {
  position: fixed;
  z-index: 10;
  top: 0;
  left: 0;
  display: flex;
  flex-direction: column;
  transition: transform 0.2s cubic-bezier(0.19, 1, 0.22, 1);
}
header .wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
header .logo {
  display: flex;
  width: 100%;
  max-width: 19rem;
  height: auto;
}
header .logo svg {
  width: 100%;
  height: auto;
}
header .logo svg path {
  fill: var(--color-black);
}
header .mobile-logo {
  max-width: 12.3rem;
}
header .mobile-logo path {
  fill: var(--color-black);
}
header .mobile-cart a {
  display: flex;
  position: relative;
}
header .mobile-cart a .header-counter--cart {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translateX(-50%) translateY(-30%);
  font-size: 0.8rem;
}
header .mobile-cart a img,
header .mobile-cart a svg {
  width: 2.4rem;
}
header .mobile-wishlist a {
  display: flex;
  position: relative;
}
header .mobile-wishlist a .header-counter--wishlist {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translateX(-50%) translateY(-55%);
  font-size: 0.8rem;
}
header .mobile-wishlist a img,
header .mobile-wishlist a svg {
  width: 2.4rem;
}
header.burger-active .header-top {
  background-color: var(--color-black);
}
header.burger-active svg path {
  fill: var(--color-white);
}
header.burger-active .mobile-cart.mobile svg path {
  fill: transparent;
}
header .header-top {
  background-color: var(--color-grey);
  width: 100%;
  display: flex;
  justify-content: center;
  padding: 1.2rem;
  transition: background 0.1s ease-in;
}
header .header-top__links {
  display: flex;
  align-items: center;
  gap: 2.4rem;
}
header .header-top__links .nav-link {
  min-width: max-content;
  font-size: 1.4rem;
}
header .header-top__actions {
  display: flex;
  align-items: center;
  gap: 2.4rem;
}
header .header-top__actions .actions-socials {
  display: flex;
  align-items: center;
  gap: 1.6rem;
}
header .header-top__actions .actions-socials a {
  display: flex;
  width: 2.4rem;
  height: 2.4rem;
  aspect-ratio: 1/1;
  fill: transparent;
}
header .header-top__actions .actions-socials a svg {
  width: 100%;
  height: 100%;
}
header .header-top__actions .actions-socials a svg path {
  transition: stroke 0.3s ease;
  width: 100%;
  height: 100%;
}
header .header-top__actions .actions-socials a:hover svg path {
  stroke: #000;
  transition: stroke 0.3s ease;
}
header .header-top__actions .actions-socials img {
  width: 100%;
}
header .header-top .language-switcher a {
  color: var(--color-black);
}
header .header-top .language-switcher .separator-v {
  background-color: var(--color-black);
}
header .header-main {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 2.4rem 1.6rem;
  transition: background 0.2s ease;
}
header .header-main.scrolled {
  background-color: var(--color-black);
  color: #fff;
}
header .header-main.scrolled .logo path {
  fill: #fff;
}
header .header-main.scrolled .categories-item a {
  color: #fff;
}
header .header-main__categories {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6.4rem;
}
header .header-main__categories .categories-item {
  padding: 2.4rem 0;
  font-size: clamp(1.2rem, 1.5vw, 1.8rem);
  text-transform: uppercase;
  color: var(--color-black);
}
header .header-main__actions {
  display: flex;
  align-items: center;
  gap: 2.4rem;
}
header .header-main__actions a {
  position: relative;
  display: flex;
  align-items: center;
  width: 2.4rem;
  height: 2.4rem;
  justify-content: center;
}
header .header-main__actions a svg {
  width: 100%;
  height: 100%;
  transition: transform 0.3s ease;
}
header .header-main__actions a:hover svg {
  transform: scale(1.1);
  transition: transform 0.3s ease;
}
header .header-main__actions a .header-counter--wishlist {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translateX(-50%) translateY(-50%);
  font-size: 0.8rem;
}
header .header-main__actions a .header-counter--cart {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translateX(-50%) translateY(-30%);
  font-size: 0.8rem;
}
header li {
  list-style: none;
}
header li::marker {
  content: "";
}
header li::-webkit-marker {
  content: "";
}
header .burger-button {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 0.5rem;
  width: 4rem;
  height: 4rem;
  padding: 0.8rem;
  background-color: var(--color-haki);
  border: none;
  cursor: pointer;
  position: relative;
  z-index: 1000;
}
header .burger-button .line {
  display: block;
  height: 0.2rem;
  width: 100%;
  background-color: #fff;
  border-radius: 2px;
  transition: all 0.3s ease;
  transform-origin: center;
}
header .burger-button.burger-button-active .line1 {
  transform: translateY(7px) rotate(45deg);
}
header .burger-button.burger-button-active .line2 {
  opacity: 0;
}
header .burger-button.burger-button-active .line3 {
  transform: translateY(-7px) rotate(-45deg);
}
header .desktop {
  display: flex;
}
header .mobile {
  display: none;
}
@media (max-width: 1299px) {
  header {
    background-color: var(--color-grey);
  }
  header .header-main {
    padding: 1.6rem 1.6rem;
    border-top: 1px solid rgba(128, 128, 128, 0.3450980392);
    border-bottom: 1px solid rgba(128, 128, 128, 0.3450980392);
  }
  header .header-main .wrapper {
    justify-content: center;
  }
  header .header-main__categories {
    gap: 1.6rem;
  }
  header .header-main.scrolled {
    background-color: var(--color-grey);
  }
  header .header-main .categories-item {
    border-right: 1px solid rgba(128, 128, 128, 0.3450980392);
    padding: 0 1.6rem 0 0;
    text-align: center;
  }
  header .header-main .categories-item a {
    color: #000 !important;
  }
  header .header-main .categories-item:last-child {
    border-right: none;
    padding: 0;
  }
  header .header-top {
    background-color: transparent;
  }
  header .header-top .language-switcher a {
    color: var(--color-black);
  }
  header .header-top .language-switcher .separator-v {
    background-color: var(--color-black);
  }
  header .desktop {
    display: none;
  }
  header .mobile {
    display: flex;
  }
}

.burger-menu {
  position: fixed;
  z-index: 200;
  top: var(--first-nav-height);
  right: -100%;
  width: 100%;
  height: calc(100% - var(--first-nav-height));
  background-color: var(--color-black);
  transition: right 0.5s cubic-bezier(0.19, 1, 0.22, 1);
}
.burger-menu.active {
  right: 0;
}
.burger-menu__wrapper {
  display: flex;
  justify-content: flex-end;
  overflow: auto;
  max-height: calc(100vh - var(--header-height));
}
.burger-menu__content {
  width: 100%;
  max-width: 100%;
}
.burger-menu__content .search {
  padding: 2.4rem 1.6rem 1.6rem 1.6rem;
}
.burger-menu__content .categories {
  list-style: none;
  margin: 0;
  padding: 0;
  border-top: 0.1rem solid var(--color-trans-black);
}
.burger-menu__content .categories .categories-item {
  border-bottom: 0.1rem solid var(--color-trans-black);
}
.burger-menu__content .categories .categories-item .item-name {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 2.4rem 1.6rem;
  cursor: pointer;
}
.burger-menu__content .categories .categories-item .item-name h3 {
  font-size: 1.4rem;
  margin: 0;
}
@media (max-width: 1299px) {
  .burger-menu__content .categories .categories-item .item-name h3 {
    font-size: 2rem;
    text-transform: uppercase;
  }
}
@media (max-width: 1299px) {
  .burger-menu__content .categories .categories-item .item-name a {
    font-size: 2rem;
    text-transform: uppercase;
  }
}
.burger-menu__content .categories .categories-item .item-name .cross {
  position: relative;
  width: 1.5rem;
  height: 1.5rem;
}
.burger-menu__content .categories .categories-item .item-name .cross span {
  position: absolute;
  background: var(--color-haki);
  width: 100%;
  height: 0.2rem;
  top: 50%;
  left: 0;
  transition: transform 0.5s cubic-bezier(0.19, 1, 0.22, 1);
}
.burger-menu__content .categories .categories-item .item-name .cross .y {
  transform: rotate(90deg);
}
.burger-menu__content .categories .categories-item .item-name.active .cross .y {
  transform: rotate(0deg);
}
.burger-menu__content .categories .categories-item .item-content {
  display: none;
  background-color: var(--color-white);
}
.burger-menu__content .categories .categories-item .item-content .subcategory-item {
  font-size: 1.6rem;
  font-weight: 600;
  padding: 1.6rem;
  border-bottom: 0.1rem solid rgba(128, 128, 128, 0.137254902);
}
.burger-menu__content .categories .categories-item .item-content .subcategory-item:hover {
  background-color: var(--color-beige);
}
@media (max-width: 1299px) {
  .burger-menu__content .categories .categories-item .item-content .subcategory-item a {
    font-size: 1.6rem;
  }
}
.burger-menu__content .footer {
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
  padding: 2.4rem 1.6rem 5.2rem 1.6rem;
}
.burger-menu__content .footer .links {
  display: flex;
  flex-wrap: wrap;
  row-gap: 3.2rem;
  column-gap: 5rem;
}
@media screen and (max-width: 1300px) {
  .burger-menu__content .footer .links {
    display: block;
    columns: 2;
  }
}
.burger-menu__content .footer .links a {
  color: #fff;
  font-size: 1.4rem;
  flex: 1 1 14rem;
  width: max-content;
}
@media screen and (max-width: 1300px) {
  .burger-menu__content .footer .links a {
    margin-bottom: 1rem;
    display: block;
  }
}
.burger-menu__content .footer .contacts {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 5rem;
  justify-content: space-between;
}
.burger-menu__content .footer .contacts a {
  flex: 1;
  color: #fff;
}
.burger-menu__content .footer .contacts ul {
  flex: 1;
  fill: transparent;
}
.burger-menu__content .footer .contacts svg path {
  stroke: var(--color-white);
}

body.has-light-header header {
  background-color: var(--color-grey) !important;
}
body.has-light-header header.burger-active .mobile-cart svg {
  color: #fff;
}
body.has-light-header header.burger-active .header-top {
  background-color: var(--color-black);
}
body.has-light-header header.burger-active .header-top .language-switcher .separator-v {
  background-color: var(--color-white);
}
body.has-light-header header.burger-active .header-top .language-switcher a {
  color: var(--color-white);
}
body.has-light-header header:not(.burger-active) .header-top {
  background-color: var(--color-grey) !important;
}
body.has-light-header header:not(.burger-active) .header-top .logo path {
  fill: var(--color-black);
}
body.has-light-header header:not(.burger-active) .header-top .language-switcher .separator-v {
  background-color: var(--color-black);
}
body.has-light-header header:not(.burger-active) .header-top .language-switcher a {
  color: var(--color-black);
}
body.has-light-header header .header-main {
  background-color: var(--color-grey) !important;
}
body.has-light-header header .header-main .logo path {
  fill: var(--color-black);
}
body.has-light-header header .header-main__actions svg path {
  stroke: #fff;
}
body.has-light-header header .header-main .categories-item {
  color: var(--color-black);
}
body.has-light-header header .header-main .categories-item .sub-menu a {
  color: var(--color-black);
}
@media (min-width: 1301px) {
  body.has-light-header header {
    background-color: transparent !important;
  }
  body.has-light-header header .header-main {
    background-color: transparent !important;
  }
  body.has-light-header header .header-main .logo path {
    fill: #fff;
  }
  body.has-light-header header .header-main .header-counter {
    color: #fff;
  }
  body.has-light-header header .header-main .categories-item a {
    color: #fff;
    transition: all 0.2s ease-in;
  }
  body.has-light-header header .header-main .categories-item a:hover {
    background: var(--color-grey);
    color: var(--color-haki);
  }
  body.has-light-header header .header-main.scrolled {
    background-color: var(--color-grey) !important;
    color: var(--color-black);
  }
  body.has-light-header header .header-main.scrolled .logo path {
    fill: #000;
  }
  body.has-light-header header .header-main.scrolled .header-counter {
    color: var(--color-black);
  }
  body.has-light-header header .header-main.scrolled .categories-item a {
    color: #000;
  }
  body.has-light-header header .header-main.scrolled .categories-item a:hover {
    color: var(--color-haki);
  }
  body.has-light-header header .header-main.scrolled .categories-item .sub-menu a:hover {
    color: #000;
  }
  body.has-light-header header .header-main.scrolled .language-switcher a {
    color: #000;
  }
  body.has-light-header header .header-main.scrolled .language-switcher a:hover {
    color: var(--color-haki);
  }
  body.has-light-header header .header-main.scrolled .language-switcher .separator-v {
    background-color: #000;
  }
  body.has-light-header header .header-main.scrolled .header-main__actions svg path {
    stroke: var(--color-black);
  }
  body.has-light-header header .header-main.scrolled .header-top .language-switcher a {
    color: #000;
  }
  body.has-light-header header .header-main.scrolled .header-top .language-switcher a:hover {
    color: var(--color-haki);
  }
  body.has-light-header header .header-main.scrolled .header-top .language-switcher .separator-v {
    background-color: #000;
  }
  body.has-light-header header .header-main.scrolled .header-top__links .nav-link {
    color: #000;
  }
  body.has-light-header header .header-main.scrolled .header-top__links .nav-link:hover {
    color: var(--color-haki);
  }
}
body .categories-item .sub-menu {
  position: absolute;
  bottom: 0;
  background: #fff;
  transform: translateY(90%);
  visibility: hidden;
  opacity: 0;
  transition: all 0.3s ease;
}
@media (max-width: 1300px) {
  body .categories-item .sub-menu {
    display: none;
  }
}
body .categories-item .sub-menu li {
  padding: 0;
}
body .categories-item .sub-menu a {
  color: #000 !important;
  text-transform: none;
  font-size: 1.6rem;
  font-weight: 600;
  padding: 1.6rem;
  display: block;
  border-bottom: 0.1rem solid rgba(128, 128, 128, 0.137254902);
  transition: background-color 0.3s ease;
}
body .categories-item .sub-menu a:hover {
  background-color: var(--color-beige);
  transition: background-color 0.3s ease;
}
body .categories-item.menu-item-has-children {
  position: relative;
}
body .categories-item.menu-item-has-children:hover > a {
  color: var(--color-haki);
}
body .categories-item.menu-item-has-children:hover .sub-menu {
  visibility: visible;
  opacity: 1;
  transform: translateY(100%);
  transition: all 0.3s ease;
}
body .search-dropdown {
  position: absolute;
  top: 100%;
  right: 0;
  left: 0;
  margin: auto;
  width: 100vw;
  max-width: calc(var(--container-max-width) - 40rem);
  background: #ededed;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
  z-index: 1000;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}
body .search-dropdown a {
  width: unset;
  height: unset;
}
body .search-dropdown svg path {
  stroke: #7a7953 !important;
}
body .search-dropdown.active {
  opacity: 1;
  visibility: visible;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}
body .search-dropdown .content-product__item .info .actions {
  display: none;
}
body .search-dropdown__header {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 0 1.6rem;
  border-bottom: 1px solid #e5e5e5;
  background: #fff;
}
body .search-dropdown__input-wrapper {
  flex: 1;
  display: flex;
  align-items: center;
  gap: 1rem;
  position: relative;
}
body .search-dropdown__icon {
  width: 2rem;
  height: 2rem;
  color: #7a7953;
  flex-shrink: 0;
}
body .search-dropdown__input {
  flex: 1;
  border: none;
  outline: none;
  font-size: 1.6rem;
  color: #000;
  background: transparent;
  padding: 1.6rem;
}
body .search-dropdown__input::placeholder {
  color: #999;
}
body .search-dropdown__close {
  background: none;
  border: none;
  padding: 0.5rem;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #7a7953;
  transition: opacity 0.3s ease;
}
body .search-dropdown__close:hover {
  opacity: 0.7;
}
body .search-dropdown__close svg {
  width: 2rem;
  height: 2rem;
}
body .search-dropdown__results {
  max-height: 60rem;
  overflow-y: auto;
}
body .search-dropdown__empty, body .search-dropdown__loading, body .search-dropdown__error {
  padding: 3rem 1.6rem;
  text-align: center;
  color: #999;
  font-size: 1.4rem;
}
body .search-dropdown__products {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 3.2rem;
  padding: 4rem 4rem 3.2rem 4rem;
}
body .search-dropdown__products .content-product__item {
  margin: 0;
  width: 100%;
}
body .search-dropdown__footer {
  padding: 0 1.6rem 4rem 1.6rem;
  text-align: center;
  display: flex;
  justify-content: center;
}
body .search-dropdown__show-all {
  display: inline-block;
  padding: 1.2rem 2.4rem;
  background: #7a7953;
  color: #fff;
  text-decoration: none;
  font-size: 1.8rem;
  font-weight: 600;
  text-transform: uppercase;
  transition: background 0.3s ease;
}
body .search-dropdown__show-all:hover {
  background: #5a5943;
}

.site-footer {
  background-color: var(--color-black);
  padding: clamp(4rem, 6vw, 8rem) 1.6rem 4rem 1.6rem;
}
.site-footer ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.site-footer .socials-list {
  fill: transparent;
  flex-wrap: wrap;
}
.site-footer .socials-list svg path {
  stroke: #fff;
  transition: all 0.3s ease;
}
.site-footer .socials-list a:hover svg path {
  stroke: var(--color-haki);
  transition: all 0.3s ease;
}
.site-footer .wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 4.8rem;
  flex-wrap: wrap;
}
.site-footer a {
  color: #fff;
  font-size: 1.4rem;
}
.site-footer a:hover {
  text-decoration: underline;
}
.site-footer__links {
  display: flex;
  align-items: center;
  gap: 3.2rem;
  flex-wrap: wrap;
}
.site-footer__links .logo {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
  max-width: 24rem;
  font-size: 1.4rem;
  font-weight: 300;
}
.site-footer__links .logo img {
  max-width: 19.8rem;
}
.site-footer__links .footer-column {
  columns: 2;
  display: block;
}
.site-footer__links .footer-column > li {
  margin: 1rem 2rem;
}
.site-footer__links .footer-column .link-item a {
  font-size: 1.4rem;
  color: #fff;
}
@media (max-width: 574px) {
  .site-footer__links {
    gap: 0;
  }
  .site-footer__links .footer-column {
    flex: 0 0 auto;
    gap: 0;
    width: 100%;
  }
  .site-footer__links .footer-column .link-item {
    width: 100%;
    padding: 1.6rem 0;
    border-bottom: 1px solid rgba(128, 128, 128, 0.3647058824);
  }
}
.site-footer__actions {
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
  font-size: 1.4rem;
}
.site-footer__actions .contacts {
  display: flex;
  align-items: center;
  gap: 2rem;
}
.site-footer__actions .contacts a {
  min-width: max-content;
}
@media (max-width: 574px) {
  .site-footer .logo {
    margin-bottom: 2.4rem;
    width: 100%;
    max-width: none;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
  }
}

body.modal-open {
  overflow: hidden;
}

.modal-overlay {
  position: fixed;
  top: 0;
  inset: 0;
  width: 100%;
  height: 100%;
  display: none;
  background: rgba(0, 0, 0, 0.5);
  z-index: 9999;
  padding: 2.4rem;
}
.modal-overlay .loader-wrapper {
  display: flex;
}
.modal-overlay .modal {
  position: absolute;
  left: 50%;
  top: 50%;
  width: calc(100% - 3.2rem);
  max-width: 70.2rem;
  max-height: 80vh;
  overflow-y: auto;
  overflow-x: hidden;
  transform: translateX(-50%) translateY(-50%);
}
.modal-overlay .modal__content {
  background: #fff;
  margin: auto;
  width: 100%;
  padding: 4.8rem;
  max-height: none;
  overflow: visible;
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
}
.modal-overlay .modal__content .header {
  display: flex;
  width: 100%;
  justify-content: space-between;
  height: fit-content;
}
.modal-overlay .modal__content .header h3 {
  text-transform: uppercase;
  color: var(--color-black);
  min-width: 28rem;
}
.modal-overlay .modal__content .header .modal__close {
  display: flex;
  background-color: transparent;
  width: 4rem;
  height: 4rem;
  min-width: 4rem;
  border: none;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.modal-overlay .modal__content .header .modal__close svg {
  width: 100%;
  height: auto;
}
.modal-overlay .modal__content .facts-list {
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
}
.modal-overlay .modal__content .facts-list h4 {
  font-size: 1.6rem;
  font-weight: 500;
  color: var(--color-darkgrey);
}
.modal-overlay .modal__content .facts-list .list {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
  list-style: none;
}
.modal-overlay .modal__content .facts-list .list li {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  padding: 0.8rem;
  font-size: 1.4rem;
  border-radius: 0.4rem;
  border: 1px solid var(--color-beige);
}
.modal-overlay .modal__content .facts-list .list li .icon {
  width: 3.6rem;
  height: 3.6rem;
  background-color: #EFF0FF;
  border-radius: 0.4rem;
  display: flex;
  align-items: center;
  justify-content: center;
}
.modal-overlay .modal__content .facts-list .list li .icon img {
  width: 2rem;
}
.modal-overlay .modal__content .accordion-tabs {
  gap: 3.2rem;
  border: none;
}
.modal-overlay .modal__content .accordion-tabs__item {
  border: 1px solid rgba(128, 128, 128, 0.125);
}
@media (max-width: 574px) {
  .modal-overlay {
    border: 0.1rem solid var(--color-beige);
    background-color: #FDFDFD;
    padding: 1.2rem;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }
  .modal-overlay .modal {
    position: static;
    transform: none;
    width: 100%;
    max-height: calc(100dvh - 2.4rem);
    overflow-y: auto;
  }
  .modal-overlay .modal__content {
    padding: 1.6rem;
    max-height: none;
    overflow: visible;
    border: 1px solid var(--color-beige);
  }
  .modal-overlay .modal__content .header {
    position: static;
    top: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-right: 0;
  }
  .modal-overlay .modal__content .header img {
    width: 100%;
    max-width: 20rem;
  }
  .modal-overlay .modal__content .header .modal__close {
    position: static;
  }
}

body.mini-cart-open {
  overflow: hidden;
}

.mini-cart-overlay {
  position: fixed;
  top: 0;
  inset: 0;
  width: 100%;
  height: 100%;
  display: none;
  background: rgba(0, 0, 0, 0.5);
  z-index: 9999;
  padding: 2.4rem;
}
.mini-cart-overlay .loader-wrapper {
  display: flex;
}
.mini-cart-overlay .widget_shopping_cart_content {
  position: absolute;
  left: 50%;
  top: 50%;
  width: calc(100% - 3.2rem);
  max-width: 70.2rem;
  overflow: hidden;
  transform: translateX(-50%) translateY(-50%);
}
.mini-cart-overlay .mini-cart__content {
  background: #fff;
  margin: auto;
  width: 100%;
  padding: 4.8rem;
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
}
.mini-cart-overlay .mini-cart__content .header {
  display: flex;
  width: 100%;
  justify-content: space-between;
  height: fit-content;
}
.mini-cart-overlay .mini-cart__content .header h3 {
  text-transform: uppercase;
  color: var(--color-black);
  min-width: 32rem;
}
.mini-cart-overlay .mini-cart__content .header .mini-cart__close {
  display: flex;
  background-color: transparent;
  width: 4rem;
  height: 4rem;
  border: none;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.mini-cart-overlay .mini-cart__content .header .mini-cart__close svg {
  width: 100%;
  height: auto;
}
.mini-cart-overlay .mini-cart__content .cart-full__product-item {
  height: fit-content;
}
.mini-cart-overlay .mini-cart__footer {
  display: flex;
  gap: 1.6rem;
  align-items: center;
  flex-wrap: wrap;
}
.mini-cart-overlay .mini-cart__footer * {
  flex: 1;
}
@media (max-width: 574px) {
  .mini-cart-overlay {
    border: 0.1rem solid var(--color-beige);
    padding: 1.2rem;
  }
  .mini-cart-overlay .mini-cart {
    position: static;
    transform: none;
    width: 100%;
  }
  .mini-cart-overlay .mini-cart__content {
    overflow-y: scroll;
    padding: 1.6rem;
    border: 1px solid var(--color-beige);
  }
  .mini-cart-overlay .mini-cart__content .header {
    position: sticky;
    top: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-right: 0;
  }
  .mini-cart-overlay .mini-cart__content .header img {
    width: 100%;
    max-width: 20rem;
  }
  .mini-cart-overlay .mini-cart__content .header .mini-cart__close {
    position: static;
  }
}

body.side-cart-open, body.slide-cart-open {
  overflow: hidden;
}

.slide-cart-overlay {
  position: fixed;
  top: 0;
  inset: 0;
  width: 100%;
  height: 100%;
  display: none;
  background: rgba(0, 0, 0, 0.5);
  z-index: 9999;
  padding: 2.4rem;
}
.slide-cart-overlay .loader-wrapper {
  display: flex;
}
.slide-cart-overlay .widget_side_cart_content {
  height: 100%;
}
.slide-cart-overlay .side-cart {
  height: 100%;
}
.slide-cart-overlay .side-cart__content {
  background: #fff;
  margin: auto;
  height: 100%;
  width: 100%;
  overflow: hidden;
  padding: 4.8rem clamp(1.6rem, 3vw, 4.8rem);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 3.2rem;
}
.slide-cart-overlay .side-cart__content .header {
  display: flex;
  width: 100%;
  justify-content: space-between;
  height: fit-content;
}
.slide-cart-overlay .side-cart__content .header h3 {
  text-transform: uppercase;
  color: var(--color-black);
  min-width: 32rem;
}
.slide-cart-overlay .side-cart__content .header .side-cart__close {
  display: flex;
  background-color: transparent;
  width: 4rem;
  height: 4rem;
  border: none;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.slide-cart-overlay .side-cart__content .header .side-cart__close svg {
  width: 100%;
  height: auto;
}
.slide-cart-overlay .side-cart__content .cart-full__product-item {
  height: fit-content;
}
.slide-cart-overlay .side-cart__block {
  display: flex;
  flex-direction: column;
  gap: clamp(1.6rem, 3vw, 3.2rem);
}
.slide-cart-overlay .side-cart__product-list {
  display: flex;
  flex-direction: column;
  gap: clamp(0.8rem, 2vw, 1.6rem);
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
}
.slide-cart-overlay .side-cart__product-list .empty-products {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
}
.slide-cart-overlay .side-cart__footer {
  display: flex;
  gap: 1.6rem;
  align-items: center;
  flex-wrap: wrap;
}
.slide-cart-overlay .side-cart__footer * {
  flex: 1;
}
@media (max-width: 574px) {
  .slide-cart-overlay {
    border: 0.1rem solid var(--color-beige);
    padding: 1.2rem;
  }
  .slide-cart-overlay .side-cart {
    position: static;
    transform: none;
    width: 100%;
  }
  .slide-cart-overlay .side-cart__content {
    overflow-y: scroll;
    padding: 1.6rem;
    border: 1px solid var(--color-beige);
  }
  .slide-cart-overlay .side-cart__content .header {
    position: sticky;
    top: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-right: 0;
  }
  .slide-cart-overlay .side-cart__content .header img {
    width: 100%;
    max-width: 20rem;
  }
  .slide-cart-overlay .side-cart__content .header .side-cart__close {
    position: static;
  }
}

.slide-cart-overlay {
  position: fixed;
  inset: 0;
  z-index: 10000;
  display: none;
  pointer-events: none;
}
.slide-cart-overlay.is-visible {
  pointer-events: auto;
}
.slide-cart-overlay.is-visible .slide-cart__backdrop {
  opacity: 0.6;
}
.slide-cart-overlay.is-visible .slide-cart__panel {
  transform: translateX(0);
  box-shadow: -8px 0 24px rgba(0, 0, 0, 0.1);
}
.slide-cart-overlay .slide-cart__backdrop {
  position: absolute;
  inset: 0;
  background: #000;
  opacity: 0;
  transition: opacity 0.2s ease;
}
.slide-cart-overlay .slide-cart__panel {
  position: absolute;
  top: 0;
  right: 0;
  max-width: 70rem;
  width: 100%;
  height: 100%;
  background: #fff;
  transform: translateX(100%);
  transition: transform 0.5s cubic-bezier(0.19, 1, 0.22, 1);
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
.slide-cart-overlay .slide-cart__loader {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 1 1 auto;
  min-height: 100%;
  width: 100%;
  padding: 2.4rem;
}
.slide-cart-overlay .slide-cart__loader .loader-wrapper {
  position: relative;
  min-height: 100%;
  width: 100%;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}
.slide-cart-overlay .slide-cart__body {
  flex: 1;
  min-height: 0;
  overflow-y: auto;
  width: 100%;
  max-width: 70rem;
}
@media (max-width: 766px) {
  .slide-cart-overlay .slide-cart__panel {
    width: min(90vw, 38rem);
  }
}
@media (max-width: 574px) {
  .slide-cart-overlay .slide-cart__panel {
    width: 100%;
  }
}

.cta-button {
  display: flex;
  border: none;
  align-items: center;
  justify-content: center;
  gap: 0.8rem;
  padding: 1.8rem 2.4rem;
  width: fit-content;
  font-weight: 500;
  font-size: 1.8rem;
  transition: filter 0.1s ease-in;
  text-transform: uppercase;
}
.cta-button.-haki {
  background-color: var(--color-haki);
  color: white;
}
.cta-button.-black {
  background-color: var(--color-black);
  color: #fff;
}
.cta-button.-full {
  width: 100%;
}
.cta-button.-upper {
  text-transform: uppercase;
}
.cta-button:hover {
  filter: saturate(40%);
}

:root {
  --form-text-size: clamp(1.4rem, 2vw, 1.6rem);
}

.search-field {
  position: relative;
  display: block;
  width: 100%;
  height: 4.8rem;
  border: 1px solid var(--color-trans-black);
  background: var(--field);
}
.search-field .icon {
  position: absolute;
  left: 1.2rem;
  top: 50%;
  transform: translateY(-50%);
  width: 2.4rem;
  height: 2.4rem;
  color: var(--color-white);
  pointer-events: none;
}
.search-field input {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: none;
  padding-left: 4.5rem;
  background: transparent;
  color: var(--color-white);
  font-size: 1.6rem;
  outline: none;
  -webkit-appearance: none;
}
.search-field input::placeholder {
  color: var(--color-white);
}
.search-field:focus-within {
  border-color: var(--focus);
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.15);
}

.default-form {
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
}
.default-form.with-success .success-message {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  background-color: var(--color-grey);
  width: 100%;
  height: 100%;
  z-index: 20;
}
.default-form.with-success .success-message__inner {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 100%;
  padding: 4.8rem;
  transform: translateX(-50%) translateY(-50%);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 0.8rem;
  text-align: center;
}
.default-form.with-success .success-message__icon {
  width: 6.4rem;
  height: auto;
}
.default-form.with-success .success-message__title {
  color: var(--color-haki);
  font-size: 2.4rem;
  text-transform: none;
}
.default-form.with-success .success-message__description {
  color: var(--color-black);
  font-size: var(--form-text-size);
}
.default-form .iti {
  width: 100%;
}
.default-form .iti__flag-container .iti__selected-flag {
  background-color: var(--color-darkwhite) !important;
  transition: background-color 0.2s ease;
  border-radius: 0.6rem;
}
.default-form .iti__flag-container .iti__selected-dial-code {
  font-size: 1.6rem;
}
.default-form .iti__flag-container:hover .iti__selected-flag {
  background-color: var(--color-beige);
}
.default-form .cta-button {
  width: 100%;
}
.default-form .file-upload {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 2.4rem;
}
.default-form .file-upload .actions {
  display: flex;
  align-items: flex-start;
  gap: 2.4rem;
  width: 100%;
}
.default-form .file-upload .upload-btn {
  display: flex;
  width: fit-content;
  background: var(--color-grey);
  padding: 0.8rem 3rem 0.8rem 1.6rem;
  cursor: pointer;
  font-weight: 500;
  transition: background 0.2s;
}
.default-form .file-upload .upload-btn span {
  display: flex;
  align-items: center;
  font-size: var(--form-text-size);
  gap: 0.8rem;
  white-space: nowrap;
}
.default-form .file-upload .upload-btn:hover {
  background: #e3e3dc;
}
.default-form .file-upload .file-previews {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.default-form .file-upload .file-previews .file-item {
  flex: 1 0 6rem;
  aspect-ratio: 1/1;
  height: auto;
  position: relative;
}
.default-form .file-upload .file-previews .file-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 4px;
  border: 1px solid #ccc;
}
.default-form .file-upload .file-previews .remove {
  position: absolute;
  top: 0;
  right: 0;
  cursor: pointer;
  background: rgba(0, 0, 0, 0.6);
  color: white;
  border-radius: 50%;
  padding: 2px 6px;
  font-size: 12px;
}
.default-form .file-upload .add-more-files {
  background: none;
  border: none;
  width: fit-content;
  color: #8b8b6f;
  cursor: pointer;
  font-weight: 500;
}

.default-input {
  display: flex;
  padding: 1.8rem 1.6rem;
  font-size: 1.6rem;
  font-weight: 500;
  background-color: #fbfbfb;
  border: 1px solid var(--color-grey);
  width: 100%;
  transition: outline 0.1s ease-in, color 0.1s ease-in, border 0.1s ease-in;
}
.default-input::placeholder {
  color: var(--color-black);
}
.default-input:focus {
  outline: 1px solid var(--color-haki);
}

.thin-input {
  display: flex;
  padding: 1.4rem 1.6rem;
  font-size: 1.6rem;
  font-weight: 500;
  background-color: #fbfbfb;
  border: 1px solid var(--color-grey);
  width: 100%;
  transition: all 0.1s ease-in;
}
.thin-input::placeholder {
  color: var(--color-black);
}
.thin-input:focus {
  outline: 1px solid var(--color-haki);
}

.iti__selected-dial-code {
  font-size: 1.6rem;
}

.radio-label {
  display: flex;
  padding: 1.8rem 1.6rem;
  font-size: 1.6rem;
  background-color: #fbfbfb;
  border: 1px solid var(--color-grey);
  width: 100%;
  transition: all 0.1s ease-in;
}
.radio-label::placeholder {
  color: var(--color-black);
}
.radio-label:focus {
  outline: 1px solid var(--color-haki);
}
.radio-label label {
  padding-left: 3.4rem;
  position: relative;
}
.radio-label label:before {
  position: absolute;
  left: 0;
  top: 0;
  content: "";
  display: inline-block;
  width: 1.8rem;
  height: 1.8rem;
  background: #fff;
  border: 1px solid var(--color-grey);
  transition: all 0.1s ease-out;
  z-index: 1;
}
.radio-label label:after {
  content: "";
  display: block;
  overflow: hidden;
  width: 0.8rem;
  height: 0.8rem;
  background-color: var(--color-green);
  position: absolute;
  left: 0.5rem;
  top: 0.5rem;
  transform: scale(0);
  transition: transform 0.2s ease-in-out;
  z-index: 2;
}
.radio-label .radio-label-input {
  appearance: none;
  -webkit-appearance: none;
  position: absolute;
  z-index: 3;
}
.radio-label .radio-label-input:checked + label:after {
  transform: scale(1);
}

.default-textarea {
  display: flex;
  padding: 1.8rem 1.6rem;
  font-size: 1.6rem;
  font-weight: 500;
  min-width: 100%;
  height: 14rem;
  max-height: 16rem;
  background-color: #fbfbfb;
  border: 1px solid var(--color-grey);
  width: 100%;
  transition: all 0.1s ease-in;
}
.default-textarea::placeholder {
  color: var(--color-black);
}
.default-textarea:focus {
  outline: 1px solid var(--color-haki);
}

.default-submit {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.6rem;
  width: 100%;
  cursor: pointer;
  min-width: max-content;
  background: var(--color-haki);
  border: none;
  color: #fff;
  transition: filter 0.1s ease;
  width: fit-content;
  padding: 1.4rem 2rem;
  height: fit-content;
  text-transform: uppercase;
  transition: filter 0.2s ease-in;
}
.default-submit:hover {
  filter: saturate(40%);
}

.default-input.is-invalid,
.default-input.wpcf7-not-valid {
  border-color: var(--color-red) !important;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Ccircle cx='10' cy='10' r='8.5' stroke='%23F3392D'/%3E%3Cpath d='M9.99781 14.4623C10.1725 14.4623 10.3188 14.4033 10.4368 14.2853C10.5541 14.1673 10.6128 14.021 10.6128 13.8463C10.6128 13.6723 10.5538 13.5263 10.4358 13.4083C10.3178 13.2903 10.1718 13.231 9.99781 13.2303C9.82381 13.2297 9.67781 13.2887 9.55981 13.4073C9.44181 13.526 9.38281 13.672 9.38281 13.8453C9.38281 14.0187 9.44181 14.165 9.55981 14.2843C9.67781 14.4037 9.82381 14.4637 9.99781 14.4623ZM9.49781 11.1533H10.4978V5.15332H9.49781V11.1533Z' fill='%23F3392D'/%3E%3C/svg%3E");
  background-position: right calc(0.375em + 0.1875rem) center;
  background-repeat: no-repeat;
  background-size: 2rem 2rem;
}

.just-validate-error-label,
.has-error-label,
.wpcf7-not-valid-tip {
  position: absolute;
  top: 100%;
  left: 0;
  color: var(--color-red) !important;
  font-size: 1.2rem;
}

@keyframes pulse {
  0% {
    box-shadow: 0 0 0 0 rgba(136, 84, 208, 0.5);
  }
  70% {
    box-shadow: 0 0 0 8px rgba(136, 84, 208, 0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(136, 84, 208, 0);
  }
}
.rating {
  display: flex;
  flex-direction: row-reverse;
  justify-content: flex-end;
  gap: 4px;
}

.rating input {
  display: none;
}

.rating label {
  cursor: pointer;
  width: 28px;
  height: 28px;
}

.rating label svg {
  width: 100%;
  height: 100%;
  stroke: #808080;
  stroke-width: 1.5;
  fill: none;
  transition: all 0.25s ease;
}

.rating label:hover svg,
.rating label:hover ~ label svg {
  stroke: #9e9e6f;
  fill: #9e9e6f;
}

.rating input:checked ~ label svg {
  stroke: #9e9e6f;
  fill: #9e9e6f;
}

.wpcf7-form {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
}
.wpcf7-form .iti__flag-container .iti__selected-flag {
  background-color: var(--color-darkwhite) !important;
  transition: background-color 0.2s ease;
  border-radius: 0.6rem;
}
.wpcf7-form .iti__flag-container .iti__selected-dial-code {
  font-size: 1.6rem;
}
.wpcf7-form .iti__flag-container:hover .iti__selected-flag {
  background-color: var(--color-beige);
}
.wpcf7-form .cta-button {
  width: 100%;
  text-transform: uppercase;
}
.wpcf7-form label {
  font-size: 1.6rem;
  color: rgb(85, 85, 85);
}
.wpcf7-form .uacf7-form-wrapper-container {
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
}
.wpcf7-form .uacf7-form-wrapper-container .wpcf7-spinner {
  position: absolute;
  margin: 0 !important;
  left: 50%;
  top: 50%;
  transform: translateX(-50%) translateY(-50%);
  z-index: 4;
}
.wpcf7-form .wpcf7-response-output {
  display: none !important;
}

.wpcf7-form-control-wrap {
  display: flex;
  height: fit-content;
  flex-direction: column;
}

.is-disabled {
  filter: saturate(30%);
}

button {
  cursor: pointer;
}

.select2-selection--single {
  font-size: 1.6rem !important;
  font-weight: 500;
  background-color: #fbfbfb !important;
  border: 1px solid var(--color-grey) !important;
  width: 100%;
  transition: all 0.1s ease-in;
  border-radius: 0 !important;
}

.select2-selection__rendered {
  padding: 1.4rem 1.6rem !important;
}

*,
*::after,
*::before {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

:root {
  --color-black: #0a0a0a;
  --color-white: #fff;
  --color-grey: #ededed;
  --color-lightgrey: #fbfbfb;
  --color-beige: #ccccc2;
  --color-haki: #7a7953;
  --color-transparent: #7a795330;
  --color-darkgrey: #808080;
  --color-green: #589200;
  --color-red: #c10003;
  --color-trans-black: #80808050;
  --text-black: var(var(--color-black));
  --text-grey: var(--color-grey);
  --font-size: Max(10px, 0.521vw);
  --section-padding: clamp(10rem, 8vw, 14rem);
  --container-max-width: 160rem;
  --info-cards-padding: clamp(24px, 2.5vw, 4.8rem);
  --header-height: calc(15rem + 2.4rem);
  --default-transition: 0.2s;
}
@media (max-width: 1099px) {
  :root {
    --header-height: 11rem;
  }
}

html {
  font-size: var(--font-size);
}

body {
  font-family: "FixelDisplay", sans-serif;
}
body:not(.has-light-header) {
  background-color: var(--color-grey);
}
body.no-scroll {
  overflow: hidden;
}

.main-wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
}

main {
  width: 100%;
}

section {
  position: relative;
  display: flex;
  align-items: center;
  height: auto;
  justify-content: center;
  padding: var(--section-padding) 1.6rem;
}
section .section-background,
section .block-background {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  overflow: hidden;
}
section .section-background img,
section .section-background svg,
section .section-background video,
section .block-background img,
section .block-background svg,
section .block-background video {
  width: 100%;
  height: 100%;
  object-position: 50% 50%;
  object-fit: cover;
}
section .block-background {
  z-index: -1;
}
@media (max-width: 574px) {
  section .section-background img {
    height: 100%;
  }
}

header,
footer {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
}

section .wrapper,
header .wrapper,
footer .wrapper {
  z-index: 1;
  display: flex;
  width: 100%;
  max-width: var(--container-max-width);
}
section .wrapper .block-title,
header .wrapper .block-title,
footer .wrapper .block-title {
  text-align: center;
  max-width: 80rem;
  text-transform: uppercase;
}
@media (max-width: 574px) {
  section .wrapper .block-title,
  header .wrapper .block-title,
  footer .wrapper .block-title {
    padding: 0 15px;
  }
}

.phone-link {
  min-width: fit-content;
}

a {
  color: inherit;
}
a:focus {
  color: inherit;
}

h1,
.h1 {
  font-size: clamp(3.6rem, 4.2vw, 7.2rem);
  font-weight: 600;
}

h2,
.h2 {
  font-size: clamp(3.6rem, 5vw, 4rem);
  font-weight: 600;
}
h2.h2-small,
.h2.h2-small {
  font-size: clamp(2.4rem, 5vw, 4rem);
}

h3,
.h3 {
  font-size: clamp(2.4rem, 5vw, 3.2rem);
  line-height: 1.2;
  font-weight: 600;
}

h4,
.h4 {
  font-size: clamp(2rem, 5vw, 4rem);
  line-height: 1.2;
}

h5,
.h5 {
  font-size: 1.8rem;
  font-weight: 600;
}

h6,
.h6 {
  font-size: clamp(1.6rem, 5vw, 1.8rem);
  line-height: 1.2;
}

.m-8 {
  margin-bottom: 8px;
}

.m-16 {
  margin-bottom: 1.6rem;
}

.m-32 {
  margin-bottom: 3.2rem;
}

p {
  font-size: clamp(1.6rem, 2.5vw, 1.6rem);
  line-height: auto;
}
p.h1-subtitler {
  font-size: clamp(1.6rem, 2.5vw, 2.4rem);
  color: var(--text-grey);
  font-weight: 300;
}
p.h1-subtitler b {
  font-weight: 700;
  color: #fff;
}
p.h2-3-subtitler {
  font-size: clamp(1.6rem, 2.5vw, 1.8rem);
  text-align: center;
  font-weight: 400;
  max-width: 80rem;
}
p.-title {
  font-weight: 600;
}
p i {
  font-weight: 600;
}

a {
  font-size: clamp(1.4rem, 2.5vw, 2rem);
  line-height: 1.5;
  text-decoration: none;
  transition: color var(--default-transition) ease-in;
}
a.nav-link {
  font-size: 1.4rem;
}
a.nav-link:hover {
  color: var(--color-haki);
}
a.-w {
  color: #fff;
}
a.-b {
  color: var(--text-black);
}

.video-controls {
  position: relative;
}
.video-controls .video-play {
  position: absolute;
  inset: 0;
  margin: auto;
  width: 6.4rem;
  height: 6.4rem;
  border: 0;
  cursor: pointer;
  background: none;
  display: grid;
  place-items: center;
  transition: transform 0.2s ease, opacity 0.2s ease;
}
.video-controls .video-play svg {
  width: 100%;
  height: 100%;
}
.video-controls .video-play svg circle {
  stroke: #fff;
  stroke-width: 2;
  opacity: 0.9;
}
.video-controls .video-play:hover {
  transform: scale(1.05);
}
.video-controls .video-play:active {
  transform: scale(0.98);
}
.video-controls.playing .video-play {
  opacity: 0;
  pointer-events: none;
}

.-w {
  color: #fff;
}

.-g {
  color: var(--text-grey);
}

.-b {
  color: var(--color-black);
}

.-back-w {
  background-color: var(--color-white);
}

.-back-b {
  background-color: var(--color-black);
}

.separator-v {
  width: 0.1rem;
  height: 1.6rem;
}

.select2-results__option {
  font-size: 1.6rem;
}

.language-switcher {
  display: flex;
  align-items: center;
  gap: 0.8rem;
}
.language-switcher .active {
  color: var(--color-haki) !important;
}
.language-switcher a {
  font-size: 1.4rem;
}

.separator-h {
  width: 100%;
  height: 0.1rem;
  background-color: var(--color-grey);
}

.socials-list {
  display: flex;
  align-items: center;
  gap: 1.6rem;
}
.socials-list .item {
  display: flex;
  align-items: center;
  gap: 0.8rem;
}

@media (max-width: 766px) {
  .-mob-padding-0 {
    padding: 0;
  }
}
.-upper {
  text-transform: uppercase;
}

.search-results-page {
  padding: var(--section-padding) 1.6rem;
}
.search-results-page .search-results__title {
  margin-bottom: 2.4rem;
  font-size: clamp(2.4rem, 4vw, 4rem);
  font-weight: 600;
}
.search-results-page .search-results__title span {
  color: var(--color-haki);
}
.search-results-page .search-results__count {
  margin-bottom: 3.2rem;
  font-size: 1.6rem;
  color: var(--color-darkgrey);
}
.search-results-page .search-dropdown__products {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 3.2rem;
  margin-bottom: 4rem;
}
.search-results-page .search-dropdown__products .content-product__item {
  margin: 0;
  width: 100%;
}
@media (max-width: 1299px) {
  .search-results-page .search-dropdown__products {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (max-width: 766px) {
  .search-results-page .search-dropdown__products {
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem;
  }
}
@media (max-width: 574px) {
  .search-results-page .search-dropdown__products {
    grid-template-columns: 1fr;
  }
}
.search-results-page .search-results__empty {
  padding: 4rem 0;
  text-align: center;
  font-size: 1.8rem;
  color: var(--color-darkgrey);
}
.search-results-page .search-results__pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1.6rem;
  margin-top: 4rem;
  padding: 2rem 0;
}
.search-results-page .search-results__pagination .page-numbers {
  display: flex;
  gap: 0.8rem;
  list-style: none;
}
.search-results-page .search-results__pagination .page-numbers li a,
.search-results-page .search-results__pagination .page-numbers li span {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 4rem;
  height: 4rem;
  padding: 0 1.2rem;
  font-size: 1.6rem;
  text-decoration: none;
  color: var(--color-black);
  background-color: var(--color-white);
  border: 0.1rem solid var(--color-grey);
  transition: all 0.3s ease;
}
.search-results-page .search-results__pagination .page-numbers li a:hover,
.search-results-page .search-results__pagination .page-numbers li span:hover {
  background-color: var(--color-haki);
  color: var(--color-white);
  border-color: var(--color-haki);
}
.search-results-page .search-results__pagination .page-numbers li .current {
  background-color: var(--color-haki);
  color: var(--color-white);
  border-color: var(--color-haki);
}

.breadcrumbs-section {
  padding-top: calc(var(--header-height) + clamp(1.6rem, 3vw, 2.4rem));
  padding-bottom: 0;
  background-color: initial;
  background-color: var(--color-grey);
}

.breadcrumbs {
  width: 100%;
}
.breadcrumbs ol {
  display: flex;
  padding-bottom: clamp(0.8rem, 2vw, 2.4rem);
  align-items: center;
  list-style: none;
  width: 100%;
  white-space: nowrap;
  overflow: auto;
  margin: 0;
}
.breadcrumbs ol li {
  display: flex;
  align-items: center;
  color: var(--color-haki);
  font-size: 1.4rem;
}
.breadcrumbs ol li a {
  font-size: 1.4rem;
}
.breadcrumbs ol li a span {
  font-size: 1.4rem;
}

.breadcrumbs li:not(:last-child)::after {
  content: "";
  display: inline-block;
  width: 6px;
  height: 10px;
  background: currentColor;
  mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 6 10'><path d='M1 1L5 5L1 9' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/></svg>") no-repeat center/contain;
  -webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 6 10'><path d='M1 1L5 5L1 9' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/></svg>") no-repeat center/contain;
  margin: 0 8px;
  color: var(--color-haki);
}

:root {
  --select-height: 4.8rem;
  --select-min-height: 4.8rem;
  --select-padding-horizontal: 1.6rem;
  --select-padding-vertical: 1.2rem;
  --select-border-radius: 0.8rem;
  --select-border-width: 0.1rem;
  --select-font-size: 1.4rem;
  --select-line-height: 1.5;
  --select-background-color: #ffffff;
  --select-border-color: #e2e8f0;
  --select-border-color-hover: #cbd5e1;
  --select-border-color-focus: #3b82f6;
  --select-text-color: #1e293b;
  --select-placeholder-color: #64748b;
  --select-background-hover: #f8fafc;
  --select-background-focus: #ffffff;
  --select-shadow-focus: 0 0 0 0.3rem rgba(59, 130, 246, 0.1);
  --select-background-disabled: #f8fafc;
  --select-border-color-disabled: #e2e8f0;
  --select-text-color-disabled: #94a3b8;
  --select-opacity-disabled: 0.6;
  --select-option-selected-background: #f1f5f9;
  --select-option-selected-color: #334155;
  --select-option-selected-border: #cbd5e1;
  --select-option-selected-padding: 0.6rem 1rem;
  --select-option-selected-border-radius: 0.6rem;
  --select-option-selected-font-size: 1.3rem;
  --select-remove-button-size: 1.6rem;
  --select-remove-button-color: #64748b;
  --select-remove-button-hover-color: #ef4444;
  --select-remove-button-hover-background: #fee2e2;
  --select-arrow-size: 2.4rem;
  --select-arrow-color: #64748b;
  --select-arrow-hover-color: #334155;
  --select-dropdown-background: #ffffff;
  --select-dropdown-border-color: #e2e8f0;
  --select-dropdown-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.1), 0 0.4rem 0.6rem rgba(0, 0, 0, 0.05);
  --select-dropdown-border-radius: 0.8rem;
  --select-dropdown-max-height: 20rem;
  --select-dropdown-z-index: 50;
  --select-option-padding: 1.2rem 1.6rem;
  --select-option-font-size: 1.4rem;
  --select-option-color: #374151;
  --select-option-hover-background: #f8fafc;
  --select-option-hover-color: #1e293b;
  --select-option-active-background: #3b82f6;
  --select-option-active-color: #ffffff;
  --select-option-disabled-color: #94a3b8;
  --select-option-disabled-background: #f8fafc;
  --select-transition-duration: 0.2s;
  --select-transition-timing: cubic-bezier(0.4, 0, 0.2, 1);
}

.custom-select {
  position: relative;
  width: 100%;
  font-family: inherit;
}
.custom-select input[type=hidden] {
  display: none;
}
.custom-select .select-field {
  display: flex;
  align-items: center;
  min-height: var(--select-min-height);
  padding: var(--select-padding-vertical) var(--select-padding-horizontal);
  background-color: var(--select-background-color);
  border: var(--select-border-width) solid var(--select-border-color);
  border-radius: var(--select-border-radius);
  cursor: pointer;
  transition: all var(--select-transition-duration) var(--select-transition-timing);
}
.custom-select .select-field:hover:not(.disabled) {
  background-color: var(--select-background-hover);
  border-color: var(--select-border-color-hover);
}
.custom-select .select-field:hover:not(.disabled) .arrow-down {
  color: var(--select-arrow-hover-color);
}
.custom-select .select-field:focus-within:not(.disabled) {
  background-color: var(--select-background-focus);
  border-color: var(--select-border-color-focus);
  box-shadow: var(--select-shadow-focus);
  outline: none;
}
.custom-select .select-field.active:not(.disabled) {
  border-color: var(--select-border-color-focus);
  box-shadow: var(--select-shadow-focus);
}
.custom-select .select-field.active:not(.disabled) .arrow-down {
  transform: rotate(180deg);
}
.custom-select .select-field.disabled {
  background-color: var(--select-background-disabled);
  border-color: var(--select-border-color-disabled);
  cursor: not-allowed;
  opacity: var(--select-opacity-disabled);
}
.custom-select .select-field.disabled .arrow-down {
  cursor: not-allowed;
}
.custom-select .selected-options {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
  flex: 1;
  min-width: 0;
}
.custom-select .selected-options .placeholder {
  color: var(--select-placeholder-color);
  font-size: var(--select-font-size);
  line-height: var(--select-line-height);
  user-select: none;
  pointer-events: none;
  flex: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  flex: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  flex: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.custom-select .selected-option {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  padding: var(--select-option-selected-padding);
  background-color: var(--select-option-selected-background);
  color: var(--select-option-selected-color);
  border: var(--select-border-width) solid var(--select-option-selected-border);
  border-radius: var(--select-option-selected-border-radius);
  font-size: var(--select-option-selected-font-size);
  line-height: 1.2;
  max-width: 20rem;
}
.custom-select .selected-option .option-label {
  flex: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 16rem;
}
.custom-select .selected-option i.sprite {
  flex-shrink: 0;
  width: 1.6rem;
  height: 1.6rem;
  margin-right: 0.4rem;
}
.custom-select .selected-option .remove-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: var(--select-remove-button-size);
  height: var(--select-remove-button-size);
  color: var(--select-remove-button-color);
  background: none;
  border: none;
  border-radius: 50%;
  cursor: pointer;
  transition: all var(--select-transition-duration) var(--select-transition-timing);
  flex-shrink: 0;
}
.custom-select .selected-option .remove-btn svg {
  width: 1.2rem;
  height: 1.2rem;
}
.custom-select .selected-option .remove-btn:hover {
  color: var(--select-remove-button-hover-color);
  background-color: var(--select-remove-button-hover-background);
}
.custom-select .arrow-down {
  display: flex;
  align-items: center;
  justify-content: center;
  width: var(--select-arrow-size);
  height: var(--select-arrow-size);
  color: var(--select-arrow-color);
  margin-left: 0.8rem;
  transition: all var(--select-transition-duration) var(--select-transition-timing);
  flex-shrink: 0;
}
.custom-select .arrow-down svg {
  width: 100%;
  height: 100%;
}
.custom-select .options-container {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  z-index: var(--select-dropdown-z-index);
  margin: 0;
  padding: 0;
  list-style: none;
  background-color: var(--select-dropdown-background);
  border: var(--select-border-width) solid var(--select-dropdown-border-color);
  border-radius: var(--select-dropdown-border-radius);
  box-shadow: var(--select-dropdown-shadow);
  max-height: var(--select-dropdown-max-height);
  max-width: var(--select-dropdown-max-width);
  min-width: var(--select-dropdown-min-width);
  overflow-y: auto;
  overflow-x: hidden;
  margin-top: 0.4rem;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-0.8rem);
  transition: all var(--select-transition-duration) var(--select-transition-timing);
}
.custom-select .options-container.active {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.custom-select .options-container::-webkit-scrollbar {
  width: 0.6rem;
}
.custom-select .options-container::-webkit-scrollbar-track {
  background: transparent;
}
.custom-select .options-container::-webkit-scrollbar-thumb {
  background: var(--select-border-color);
  border-radius: 0.3rem;
}
.custom-select .options-container::-webkit-scrollbar-thumb:hover {
  background: var(--select-border-color-hover);
}
.custom-select .option {
  display: flex;
  align-items: center;
  padding: var(--select-option-padding);
  color: var(--select-option-color);
  font-size: var(--select-option-font-size);
  line-height: var(--select-line-height);
  cursor: pointer;
  transition: all var(--select-transition-duration) var(--select-transition-timing);
  max-width: 100%;
}
.custom-select .option .option-text {
  flex: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: var(--select-option-max-width);
}
.custom-select .option i.sprite {
  flex-shrink: 0;
  width: 1.6rem;
  height: 1.6rem;
  margin-right: 0.8rem;
}
.custom-select .option:hover:not(.disabled):not(.active) {
  background-color: var(--select-option-hover-background);
  color: var(--select-option-hover-color);
}
.custom-select .option.active {
  background-color: var(--select-option-active-background);
  color: var(--select-option-active-color);
}
.custom-select .option.disabled {
  color: var(--select-option-disabled-color);
  background-color: var(--select-option-disabled-background);
  cursor: not-allowed;
  opacity: var(--select-opacity-disabled);
}
.custom-select .option:first-child {
  border-top-left-radius: calc(var(--select-dropdown-border-radius) - var(--select-border-width));
  border-top-right-radius: calc(var(--select-dropdown-border-radius) - var(--select-border-width));
}
.custom-select .option:last-child {
  border-bottom-left-radius: calc(var(--select-dropdown-border-radius) - var(--select-border-width));
  border-bottom-right-radius: calc(var(--select-dropdown-border-radius) - var(--select-border-width));
}
.custom-select[aria-expanded=true]:not(.disabled) .arrow-down {
  transform: rotate(180deg);
}
.custom-select[aria-expanded=true]:not(.disabled) .options-container {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.custom-select.selected .placeholder {
  display: none;
}
@media (max-width: 768px) {
  .custom-select .select-field {
    padding: 1rem 1.2rem;
  }
  .custom-select .selected-option {
    font-size: 1.2rem;
    padding: 0.4rem 0.8rem;
  }
  .custom-select .option {
    padding: 1rem 1.2rem;
    font-size: 1.3rem;
  }
}
.custom-select:focus-visible {
  outline: 0.2rem solid var(--select-border-color-focus);
  outline-offset: 0.2rem;
}
.custom-select[aria-disabled=true] .select-field, .custom-select.disabled .select-field {
  background-color: var(--select-background-disabled);
  border-color: var(--select-border-color-disabled);
  cursor: not-allowed;
  opacity: var(--select-opacity-disabled);
}
.custom-select[aria-disabled=true] .select-field:hover, .custom-select.disabled .select-field:hover {
  background-color: var(--select-background-disabled);
  border-color: var(--select-border-color-disabled);
}
.custom-select[aria-disabled=true] .selected-option .remove-btn,
.custom-select[aria-disabled=true] .arrow-down, .custom-select.disabled .selected-option .remove-btn,
.custom-select.disabled .arrow-down {
  cursor: not-allowed;
  opacity: 0.5;
  pointer-events: none;
}
.custom-select[aria-disabled=true] .placeholder, .custom-select.disabled .placeholder {
  color: var(--select-text-color-disabled);
}

.custom-select.size-small {
  --select-height: 3.6rem;
  --select-min-height: 3.6rem;
  --select-padding-horizontal: 1.2rem;
  --select-padding-vertical: 0.8rem;
  --select-font-size: 1.3rem;
  --select-option-selected-font-size: 1.2rem;
  --select-option-font-size: 1.3rem;
  --select-dropdown-max-width: 25rem;
  --select-dropdown-min-width: 15rem;
  --select-option-max-width: 20rem;
}
.custom-select.size-small .selected-options {
  max-width: 15rem;
}
.custom-select.size-small .selected-options .option-label {
  max-width: 12rem;
}
.custom-select.size-large {
  --select-height: 5.6rem;
  --select-min-height: 5.6rem;
  --select-padding-horizontal: 2rem;
  --select-padding-vertical: 1.6rem;
  --select-font-size: 1.6rem;
  --select-option-selected-font-size: 1.4rem;
  --select-option-font-size: 1.6rem;
  --select-dropdown-max-width: 35rem;
  --select-dropdown-min-width: 25rem;
  --select-option-max-width: 30rem;
}
.custom-select.size-large .selected-options {
  max-width: 25rem;
}
.custom-select.size-large .selected-options .option-label {
  max-width: 20rem;
}
.custom-select.variant-error {
  --select-border-color: #ef4444;
  --select-border-color-hover: #dc2626;
  --select-border-color-focus: #ef4444;
  --select-shadow-focus: 0 0 0 0.3rem rgba(239, 68, 68, 0.1);
}
.custom-select.variant-success {
  --select-border-color: #10b981;
  --select-border-color-hover: #059669;
  --select-border-color-focus: #10b981;
  --select-shadow-focus: 0 0 0 0.3rem rgba(16, 185, 129, 0.1);
}
.custom-select.variant-warning {
  --select-border-color: #f59e0b;
  --select-border-color-hover: #d97706;
  --select-border-color-focus: #f59e0b;
  --select-shadow-focus: 0 0 0 0.3rem rgba(245, 158, 11, 0.1);
}

/*
.sixteen-nine {
	@include aspect-ratio(16,9);
}*/
/* Media Queries Breakpoints */
/**
* *******************
*  Usage examples
* *******************
*
//
//  use <=
*   ALWAYS use <= ( '<' with '=' character) for all breakpoints
*   when setting max-width, ex: max-width: 767px,
*
*   so max-width: 1440px  == media('<=desktop-l')
*
* ***********************************************
*
//  use >
*   ALWAYS use only > as single character for all breakpoints
*   when setting min-width, ex: min-width: 768px,
*
*   so min-width: 1025px  == media('>desktop')
*
*************************************************
*
*## EXAMPLE:
*
*   (min-width: 768px) and (max-width: 1024px)
*   =
*   media ('>tablet'), ('<=desktop')
*
//

 */
.notification,
.pushNative {
  max-width: 45rem !important;
  width: 100%;
  border-radius: none !important;
  font-size: 1.6rem;
  box-shadow: none !important;
}
.notification.success,
.pushNative.success {
  background: var(--color-green) !important;
  color: white !important;
  border-radius: none !important;
  overflow: hidden;
}
.notification.attention,
.pushNative.attention {
  background: rgb(228, 101, 0) !important;
  background: linear-gradient(90deg, rgb(243, 88, 4) 0%, rgb(240, 155, 12) 100%) !important;
  color: white !important;
  border-radius: none !important;
  overflow: hidden;
}
.notification.error,
.pushNative.error {
  background: var(--color-red) !important;
  color: white !important;
  border-radius: none !important;
  overflow: hidden;
}
.notification .notification a,
.pushNative .notification a {
  color: #fff;
  font-weight: 600;
  text-decoration: underline;
  cursor: pointer;
}
.notification .toast-close,
.pushNative .toast-close {
  opacity: 1 !important;
  position: absolute;
  right: 0.7rem;
  cursor: pointer;
}
.notification .toastify,
.pushNative .toastify {
  cursor: default !important;
  user-select: none;
}
.notification .pushNotificationBody,
.pushNative .pushNotificationBody {
  position: relative;
  position: fixed;
  right: 2rem;
  top: 2rem;
  width: 20rem;
  padding: 1rem 0.5rem;
  display: flex;
  background-color: green;
  border: 1rem;
  color: #000;
}
.notification .pushNotificationTimer,
.pushNative .pushNotificationTimer {
  height: 0.5rem;
  background-color: rgba(46, 46, 46, 0.3882352941);
  width: 100%;
  border-radius: 1rem;
  position: absolute;
  bottom: 0;
  left: 0;
}
@media (max-width: 767px) {
  .notification,
  .pushNative {
    max-width: calc(100% - 3rem) !important;
    width: fit-content;
    right: 1.5rem !important;
    transform: none !important;
  }
}

.pushNative {
  padding-right: 3.5rem !important;
}

.loader-wrapper {
  position: absolute;
  z-index: 2;
  inset: 0;
  display: none;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  backdrop-filter: brightness(60%);
  -webkit-backdrop-filter: brightness(60%);
}

.woo-loader {
  animation: tform-loader-rotate 2s infinite;
  height: 50px;
  width: 50px;
}

.woo-loader::before,
.woo-loader::after {
  border-radius: 50%;
  content: "";
  display: block;
  height: 20px;
  width: 20px;
}

.woo-loader::before {
  animation: tform-loader-ball1 2s infinite;
  background-color: rgba(255, 255, 255, 0.16);
  box-shadow: 30px 0 0 var(--color-haki);
  margin-bottom: 10px;
}

.woo-loader::after {
  animation: tform-loader-ball2 2s infinite;
  background-color: var(--color-haki);
  box-shadow: 30px 0 0 rgba(255, 255, 255, 0.16);
}

@keyframes tform-loader-rotate {
  0% {
    transform: rotate(0deg) scale(0.8);
  }
  50% {
    transform: rotate(360deg) scale(1.2);
  }
  100% {
    transform: rotate(720deg) scale(0.8);
  }
}
@keyframes tform-loader-ball1 {
  0% {
    box-shadow: 30px 0 0 var(--color-haki);
  }
  50% {
    box-shadow: 0 0 0 var(--color-haki);
    margin-bottom: 0;
    transform: translate(15px, 15px);
  }
  100% {
    box-shadow: 30px 0 0 var(--color-haki);
    margin-bottom: 10px;
  }
}
@keyframes tform-loader-ball2 {
  0% {
    box-shadow: 30px 0 0 rgba(255, 255, 255, 0.32);
  }
  50% {
    box-shadow: 0 0 0 rgba(255, 255, 255, 0.32);
    margin-top: -20px;
    transform: translate(15px, 15px);
  }
  100% {
    box-shadow: 30px 0 0 rgba(255, 255, 255, 0.32);
    margin-top: 0;
  }
}
.account-modal .modal-account-control {
  max-width: 51.6rem;
}

.js-account-form {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
}
.js-account-form .lost_password a {
  font-size: 1.6rem;
  text-decoration: underline;
  color: var(--color-haki);
}
.js-account-form .has-error input {
  outline: var(--color-red);
  border: 1px solid var(--color-red);
  background-color: rgba(193, 0, 3, 0.1450980392);
}
.js-account-form .has-error .error-tip {
  display: block;
}
.js-account-form .error-tip {
  display: none;
  width: 100%;
  background-color: #ffe6e6;
  color: var(--color-red);
  font-size: 1.2rem;
  text-align: left;
  padding: 0.4rem 0.6rem;
  border-radius: 0.4rem;
}
.js-account-form .cta-button {
  margin-top: 1.6rem;
}
.js-account-form .account-control__hint {
  margin-top: 1.6rem;
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
  text-align: center;
  font-size: 1.6rem;
}
.js-account-form .account-control__hint a {
  font-size: inherit;
  text-decoration: underline;
  color: var(--color-haki);
}
.js-account-form .iti {
  width: 100%;
}
.js-account-form .woocommerce-error {
  margin-bottom: 0;
  padding: 0.8rem 1.6rem 0.8rem 4.8rem;
  font-size: 1.6rem;
  background-color: rgba(193, 0, 3, 0.1450980392);
  border: none;
  color: var(--color-red);
}
.js-account-form .woocommerce-error:before {
  top: 50%;
  left: 1.6rem;
  width: 2.4rem;
  font-size: 2.4rem;
  transform: translateY(-50%);
}

.cart-full__product-item {
  display: flex;
  padding: clamp(0.8rem, 3vw, 1.6rem);
  align-items: flex-start;
  gap: clamp(0.8rem, 3vw, 1.6rem);
  background-color: var(--color-lightgrey);
  position: relative;
}
.cart-full__product-item .product-image {
  aspect-ratio: 1/1;
  max-width: 36%;
  height: auto;
  overflow: hidden;
}
.cart-full__product-item .product-image a {
  display: flex;
  width: 100%;
  height: 100%;
}
.cart-full__product-item .product-image img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.cart-full__product-item .info {
  display: flex;
  flex-direction: column;
  gap: clamp(1.6rem, 2vw, 2.4rem);
  width: 100%;
}
.cart-full__product-item .product-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
.cart-full__product-item .product-header .name {
  max-width: 60%;
}
.cart-full__product-item .product-header .remove {
  width: 2.4rem;
  height: 2.4rem;
  display: flex;
}
.cart-full__product-item .product-header .remove svg {
  color: var(--color-haki);
}
.cart-full__product-item .product-header .remove svg path {
  transition: fill 0.2s ease-in-out;
  stroke: var(--color-haki);
}
.cart-full__product-item .product-header .remove:hover {
  background: none !important;
}
.cart-full__product-item .product-header .remove:hover svg path {
  fill: var(--color-transparent);
}
.cart-full__product-item .product-header .remove:focus {
  fill: var(--color-haki);
}
.cart-full__product-item .product-attributtes {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
}
.cart-full__product-item .product-attributtes dl {
  display: flex;
  flex-direction: column;
  font-size: 1.4rem;
}
.cart-full__product-item .product-attributtes dl .variation-row {
  display: flex;
  align-items: center;
}
.cart-full__product-item .product-attributtes dl .variation-row dt {
  flex: 0 1 clamp(8rem, 3vw, 14rem);
  width: fit-content;
}
.cart-full__product-item .product-attributtes dl .variation-row dd {
  flex: 1;
  font-weight: 600;
}
.cart-full__product-item .product-controls {
  display: flex;
  justify-content: space-between;
  gap: 1.6rem;
}
.cart-full__product-item .product-controls .cart-price {
  display: flex;
  flex-direction: column;
}
.cart-full__product-item .product-controls .cart-price .price-old {
  font-size: 1.4rem;
  text-decoration: line-through;
}
.cart-full__product-item .product-controls .cart-price .price-sale {
  color: var(--color-red);
  font-size: 1.8rem;
  font-weight: 600;
}
.cart-full__product-item .product-controls .cart-price .price-current {
  font-size: 1.8rem;
  font-weight: 600;
  color: var(--color-black);
}
.cart-full__product-item .product-controls .quantity-selector {
  width: fit-content;
  display: flex;
  order: 1;
  align-items: center;
  gap: 1.6rem;
  font-size: var(--li-size);
}
.cart-full__product-item .product-controls .quantity-control {
  display: flex;
  align-items: stretch;
  width: fit-content;
  gap: 1.6rem;
  justify-content: space-between;
  padding: 0.8rem;
  border: 1px solid var(--color-grey);
}
.cart-full__product-item .product-controls .quantity-control .value {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  font-weight: 600;
}
.cart-full__product-item .product-controls .quantity-control button {
  border: none;
  background-color: transparent;
  cursor: pointer;
  transition: background-color 0.2s ease;
}
.cart-full__product-item .product-controls .quantity-control button:hover {
  background-color: var(--color-grey);
}

.has-cookie-consent-open {
  overflow: hidden;
}

.tform-cookie-consent {
  position: fixed;
  inset: 0;
  z-index: 100000;
  opacity: 0;
  pointer-events: none;
  transition: opacity var(--base-transition);
}
.tform-cookie-consent[hidden] {
  display: none !important;
}
.tform-cookie-consent.is-visible {
  opacity: 1;
  pointer-events: auto;
}
.tform-cookie-consent__overlay {
  position: absolute;
  inset: 0;
  background: rgba(10, 10, 10, 0.58);
}
.tform-cookie-consent__panel {
  position: fixed;
  right: 2.4rem;
  bottom: 2.4rem;
  width: min(52rem, 100% - 4.8rem);
  max-height: calc(100dvh - 2.4rem - var(--header-height));
  overflow-y: auto;
  padding: 2.4rem;
  display: flex;
  flex-direction: column;
  background: var(--color-white);
  color: var(--color-black);
  box-shadow: 0 2.4rem 6rem rgba(10, 10, 10, 0.18);
}
.tform-cookie-consent__content {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
}
.tform-cookie-consent__title {
  margin: 0;
  font-size: 2.2rem;
  line-height: 1.2;
  font-weight: 700;
}
.tform-cookie-consent__text, .tform-cookie-consent__note {
  margin: 0;
  color: var(--color-darkgrey);
  font-size: 1.5rem;
  line-height: 1.55;
}
.tform-cookie-consent__text a, .tform-cookie-consent__note a {
  color: var(--color-black);
  text-decoration: underline;
  text-underline-offset: 0.2rem;
  font-size: 1.5rem;
}
.tform-cookie-consent__preferences {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.tform-cookie-consent__preferences[hidden] {
  display: none !important;
}
.tform-cookie-consent__option {
  display: grid;
  grid-template-columns: 2.2rem 1fr;
  gap: 1.2rem;
  align-items: flex-start;
  padding: 1.2rem;
  border: 0.1rem solid var(--color-grey);
  border-radius: 0.6rem;
  cursor: pointer;
}
.tform-cookie-consent__option input {
  width: 2rem;
  height: 2rem;
  margin: 0.2rem 0 0;
  accent-color: var(--color-haki);
  cursor: pointer;
}
.tform-cookie-consent__option input:disabled {
  cursor: not-allowed;
}
.tform-cookie-consent__option span {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
}
.tform-cookie-consent__option strong {
  font-size: 1.5rem;
  line-height: 1.25;
  font-weight: 700;
}
.tform-cookie-consent__option small {
  color: var(--color-darkgrey);
  font-size: 1.3rem;
  line-height: 1.4;
}
.tform-cookie-consent__actions {
  display: grid;
  gap: 1.2rem;
  margin-top: 2.4rem;
  width: 100%;
}
.tform-cookie-consent__button {
  width: 100%;
  min-height: 5.2rem;
  padding: 1.4rem 1.8rem;
  border: 0.1rem solid var(--color-haki);
  border-radius: 0;
  font-size: 1.5rem;
  line-height: 1.2;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--color-black);
  background: transparent;
  cursor: pointer;
  transition: background-color var(--base-transition), color var(--base-transition), border-color var(--base-transition);
}
.tform-cookie-consent__button[hidden] {
  display: none !important;
}
.tform-cookie-consent__button:focus-visible {
  outline: 0.2rem solid var(--color-black);
  outline-offset: 0.2rem;
}
.tform-cookie-consent__button:hover {
  border-color: var(--color-black);
}
.tform-cookie-consent__button--primary {
  color: var(--color-white);
  background: var(--color-haki);
}
.tform-cookie-consent__button--primary:hover {
  color: var(--color-white);
  background: var(--color-black);
}
.tform-cookie-consent__button--secondary {
  border-color: var(--color-grey);
  background: var(--color-grey);
}
.tform-cookie-consent__button--outline {
  background: var(--color-white);
}
@media (max-width: 767px) {
  .tform-cookie-consent__panel {
    right: 1.2rem;
    bottom: 1.2rem;
    width: calc(100% - 2.4rem);
    max-height: calc(100dvh - 2.4rem);
    padding: 1.6rem;
  }
  .tform-cookie-consent__title {
    font-size: 1.9rem;
  }
  .tform-cookie-consent__text, .tform-cookie-consent__note {
    font-size: 1.4rem;
  }
}

.size-grid {
  display: grid;
  width: 100%;
  overflow-x: auto;
  overflow-y: visible;
  border: 1px solid #ddd;
  border-radius: 4px;
  background: #fff;
  font-family: inherit;
}
.size-grid__row {
  display: grid;
  grid-template-columns: minmax(16rem, max-content) repeat(8, minmax(6.4rem, 1fr));
  min-width: max-content;
  border-bottom: 1px solid #e5e5e5;
}
.size-grid__row:last-child {
  border-bottom: none;
}
.size-grid__row.-footer {
  background: #fafafa;
}
.size-grid__row.-footer .-title {
  min-width: fit-content;
  color: var(--color-black);
  font-weight: 600;
}
.size-grid__row.-footer .size-grid__cell {
  grid-column: 1/-1;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 3rem;
  min-width: fit-content;
  text-align: center;
}
.size-grid__row.-footer .-note {
  grid-column: 2/-1;
}
.size-grid__cell {
  min-width: max-content;
  padding: 1.6rem;
  border-right: 1px solid #e5e5e5;
  font-size: 1.6rem;
  text-align: center;
}
.size-grid__cell:last-child {
  border-right: none;
}
.size-grid__cell.-title {
  min-width: max-content;
  background: #f8f8f8;
  font-weight: 600;
  text-align: left;
}
.size-grid__cell p {
  margin: 0;
  font-size: 1.6rem;
}
.size-grid__cell b {
  font-weight: 600;
}
.size-grid__header {
  background: #f5f5f5;
  font-weight: 600;
}
@media (max-width: 766px) {
  .size-grid__row {
    font-size: 1.4rem;
  }
  .size-grid__cell {
    padding: 0.8rem;
  }
}

/*
.sixteen-nine {
	@include aspect-ratio(16,9);
}*/
/* Media Queries Breakpoints */
/**
* *******************
*  Usage examples
* *******************
*
//
//  use <=
*   ALWAYS use <= ( '<' with '=' character) for all breakpoints
*   when setting max-width, ex: max-width: 767px,
*
*   so max-width: 1440px  == media('<=desktop-l')
*
* ***********************************************
*
//  use >
*   ALWAYS use only > as single character for all breakpoints
*   when setting min-width, ex: min-width: 768px,
*
*   so min-width: 1025px  == media('>desktop')
*
*************************************************
*
*## EXAMPLE:
*
*   (min-width: 768px) and (max-width: 1024px)
*   =
*   media ('>tablet'), ('<=desktop')
*
//

 */
.hero {
  width: 100%;
  aspect-ratio: 16/9;
  min-height: 100vh;
  padding-top: calc(var(--section-padding) + 2 * var(--first-nav-height));
  position: relative;
}
.hero::after {
  content: "";
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0));
}
.hero .wrapper {
  align-items: center;
  justify-content: center;
}
.hero .content {
  display: flex;
  flex-direction: column;
  align-items: center;
  max-width: 110rem;
  width: 100%;
  text-align: center;
}
.hero .content h1 {
  color: #fff;
  text-transform: uppercase;
}
.hero .content p {
  max-width: 85rem;
}
@media (max-width: 574px) {
  .hero {
    aspect-ratio: unset;
    padding-bottom: calc(var(--section-padding) + 2 * var(--first-nav-height));
  }
}

/*
.sixteen-nine {
	@include aspect-ratio(16,9);
}*/
/* Media Queries Breakpoints */
/**
* *******************
*  Usage examples
* *******************
*
//
//  use <=
*   ALWAYS use <= ( '<' with '=' character) for all breakpoints
*   when setting max-width, ex: max-width: 767px,
*
*   so max-width: 1440px  == media('<=desktop-l')
*
* ***********************************************
*
//  use >
*   ALWAYS use only > as single character for all breakpoints
*   when setting min-width, ex: min-width: 768px,
*
*   so min-width: 1025px  == media('>desktop')
*
*************************************************
*
*## EXAMPLE:
*
*   (min-width: 768px) and (max-width: 1024px)
*   =
*   media ('>tablet'), ('<=desktop')
*
//

 */
.hero-2 {
  width: 100%;
  height: 55.2rem;
  padding: 14rem 1.6rem;
  position: relative;
}
.hero-2::after {
  content: "";
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0));
}
.hero-2 .wrapper {
  align-items: center;
  justify-content: center;
}
.hero-2 .content {
  display: flex;
  flex-direction: column;
  align-items: center;
  max-width: 110rem;
  width: 100%;
  text-align: center;
}
.hero-2 .content h1 {
  color: #fff;
  text-transform: uppercase;
}
.hero-2 .content p {
  max-width: 85rem;
}
@media (max-width: 574px) {
  .hero-2 {
    aspect-ratio: unset;
    padding-bottom: calc(var(--section-padding) + 2 * var(--first-nav-height));
  }
}

/*
.sixteen-nine {
	@include aspect-ratio(16,9);
}*/
/* Media Queries Breakpoints */
/**
* *******************
*  Usage examples
* *******************
*
//
//  use <=
*   ALWAYS use <= ( '<' with '=' character) for all breakpoints
*   when setting max-width, ex: max-width: 767px,
*
*   so max-width: 1440px  == media('<=desktop-l')
*
* ***********************************************
*
//  use >
*   ALWAYS use only > as single character for all breakpoints
*   when setting min-width, ex: min-width: 768px,
*
*   so min-width: 1025px  == media('>desktop')
*
*************************************************
*
*## EXAMPLE:
*
*   (min-width: 768px) and (max-width: 1024px)
*   =
*   media ('>tablet'), ('<=desktop')
*
//

 */
.propositions {
  background-color: var(--color-grey);
}
.propositions .wrapper {
  flex-direction: column;
  align-items: center;
}
.propositions__row {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}
.propositions__row a {
  flex: 1 1 38rem;
}
@media (max-width: 574px) {
  .propositions__row {
    gap: 1.6px;
  }
}
.propositions__item {
  flex: 1 1 38rem;
  height: 80rem;
  max-height: 80rem;
  position: relative;
  padding: clamp(2.4rem, 2.8vw, 4.8rem);
  color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  overflow: hidden;
}
.propositions__item img {
  transition: filter 0.2s ease, transform 0.2s ease-in-out;
}
.propositions__item h3 {
  word-break: break-word;
  white-space: normal;
}
.propositions__item p {
  text-align: left;
}
.propositions__item .text {
  position: absolute;
  bottom: calc(-10.8rem + clamp(2.4rem, 2.8vw, 4.8rem));
  width: calc(100% - 2 * clamp(2.4rem, 2.8vw, 4.8rem));
  transition: all 0.1s ease-in-out;
  display: flex;
  flex-direction: column;
}
.propositions__item .text .woo-button {
  width: fit-content;
  margin-top: 4.8rem;
  opacity: 0;
  transition: all 0.1s ease;
}
@media (min-width: 1201px) {
  .propositions__item:hover img {
    filter: brightness(50%);
    transform: scale(1.1);
  }
  .propositions__item:hover .text {
    bottom: clamp(2.4rem, 2.8vw, 4.8rem);
  }
  .propositions__item:hover .text .woo-button {
    opacity: 1;
  }
}
@media (max-width: 574px) {
  .propositions__row {
    gap: 1.6rem;
  }
  .propositions__item {
    height: auto;
    aspect-ratio: 1/1.1;
  }
}

/*
.sixteen-nine {
	@include aspect-ratio(16,9);
}*/
/* Media Queries Breakpoints */
/**
* *******************
*  Usage examples
* *******************
*
//
//  use <=
*   ALWAYS use <= ( '<' with '=' character) for all breakpoints
*   when setting max-width, ex: max-width: 767px,
*
*   so max-width: 1440px  == media('<=desktop-l')
*
* ***********************************************
*
//  use >
*   ALWAYS use only > as single character for all breakpoints
*   when setting min-width, ex: min-width: 768px,
*
*   so min-width: 1025px  == media('>desktop')
*
*************************************************
*
*## EXAMPLE:
*
*   (min-width: 768px) and (max-width: 1024px)
*   =
*   media ('>tablet'), ('<=desktop')
*
//

 */
.propositions-2 .wrapper {
  flex-direction: column;
  align-items: center;
}
.propositions-2__row {
  width: 100%;
  display: flex;
  gap: clamp(1.6rem, 2vw, 3.2rem);
  flex-wrap: wrap;
}
.propositions-2__row a {
  flex: 1 1 38rem;
}
@media (max-width: 574px) {
  .propositions-2__row {
    gap: 1.6px;
  }
}
.propositions-2__item {
  flex: 1 1 38rem;
  height: 80rem;
  max-height: 60rem;
  position: relative;
  padding: clamp(2.4rem, 2.8vw, 4.8rem);
  color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  overflow: hidden;
}
.propositions-2__item img {
  transition: all 0.2s ease;
}
.propositions-2__item h3 {
  word-break: break-word;
  white-space: normal;
}
.propositions-2__item p {
  text-align: left;
}
.propositions-2__item .text {
  position: absolute;
  bottom: var(--text-bottom, 0);
  width: calc(100% - 2 * clamp(2.4rem, 2.8vw, 4.8rem));
  transition: all 0.2s ease-in-out;
  display: flex;
  flex-direction: column;
}
.propositions-2__item .text .is-wysiwyg {
  opacity: 0;
  transition: opacity 0.2s ease-in-out;
}
.propositions-2__item .text .woo-button {
  width: fit-content;
  margin-top: 4.8rem;
  opacity: 0;
  transition: all 0.2s ease-in-out;
}
@media (min-width: 1201px) {
  .propositions-2__item:hover img {
    filter: brightness(50%);
    transform: scale(1.1);
  }
  .propositions-2__item:hover .text {
    bottom: clamp(2.4rem, 2.8vw, 4.8rem);
  }
  .propositions-2__item:hover .text .is-wysiwyg {
    opacity: 1;
  }
  .propositions-2__item:hover .text .woo-button {
    opacity: 1;
  }
}
@media (max-width: 574px) {
  .propositions-2__item .text {
    bottom: clamp(2.4rem, 2.8vw, 4.8rem);
  }
  .propositions-2__item .text .is-wysiwyg {
    opacity: 1;
  }
  .propositions-2__item .text .woo-button {
    width: 100%;
    font-size: 1.8rem;
    opacity: 1;
  }
}
@media (max-width: 574px) {
  .propositions-2__row {
    gap: 1.6rem;
  }
  .propositions-2__item {
    height: 56rem;
  }
}

/*
.sixteen-nine {
	@include aspect-ratio(16,9);
}*/
/* Media Queries Breakpoints */
/**
* *******************
*  Usage examples
* *******************
*
//
//  use <=
*   ALWAYS use <= ( '<' with '=' character) for all breakpoints
*   when setting max-width, ex: max-width: 767px,
*
*   so max-width: 1440px  == media('<=desktop-l')
*
* ***********************************************
*
//  use >
*   ALWAYS use only > as single character for all breakpoints
*   when setting min-width, ex: min-width: 768px,
*
*   so min-width: 1025px  == media('>desktop')
*
*************************************************
*
*## EXAMPLE:
*
*   (min-width: 768px) and (max-width: 1024px)
*   =
*   media ('>tablet'), ('<=desktop')
*
//

 */
.about-us {
  padding-top: clamp(0rem, 4vw, 14rem);
}
.about-us .background {
  object-position: bottom right;
}
.about-us .image-shape {
  position: absolute;
  bottom: 0;
  right: 0;
  width: auto;
  height: var(--about-back-height);
}
.about-us .content {
  max-width: 78rem;
  padding: 100px clamp(1.6rem, 4vw, 100rem);
  background-color: var(--color-beige);
}
@media (max-width: 574px) {
  .about-us {
    padding: 0 0 28.8rem 0;
  }
  .about-us #aboutShape {
    z-index: 2;
    overflow: hidden;
  }
  .about-us #aboutShape img {
    width: auto;
    right: -35%;
    height: 38rem;
    pointer-events: none;
  }
}

/*
.sixteen-nine {
	@include aspect-ratio(16,9);
}*/
/* Media Queries Breakpoints */
/**
* *******************
*  Usage examples
* *******************
*
//
//  use <=
*   ALWAYS use <= ( '<' with '=' character) for all breakpoints
*   when setting max-width, ex: max-width: 767px,
*
*   so max-width: 1440px  == media('<=desktop-l')
*
* ***********************************************
*
//  use >
*   ALWAYS use only > as single character for all breakpoints
*   when setting min-width, ex: min-width: 768px,
*
*   so min-width: 1025px  == media('>desktop')
*
*************************************************
*
*## EXAMPLE:
*
*   (min-width: 768px) and (max-width: 1024px)
*   =
*   media ('>tablet'), ('<=desktop')
*
//

 */
.benefits {
  aspect-ratio: 16/9;
  width: 100%;
  background-color: var(--color-grey);
}
.benefits .wrapper {
  flex-direction: column;
  align-items: center;
}
.benefits .wrapper .h2-3-subtitler {
  margin-bottom: 48px;
}
.benefits__row {
  display: flex;
  flex-wrap: wrap;
  gap: clamp(1.6rem, 5vw, 3.2rem);
}
.benefits__item {
  background-color: #fff;
  padding: clamp(2.4rem, 2.5vw, 4.8rem);
  flex: 1 1 30rem;
  display: flex;
  flex-direction: column;
  gap: 4.8rem;
}
.benefits__item img {
  width: 6.4rem;
}
.benefits__item h5 {
  margin-bottom: 0.8rem;
}
@media (max-width: 574px) {
  .benefits__item {
    flex-direction: row;
    align-items: flex-start;
    gap: 1.6rem;
  }
  .benefits__item img {
    width: 40px;
  }
}

.video-section .section-background {
  background-color: var(--color-black);
}
.video-section .wrapper {
  display: flex;
  align-items: center;
  gap: 12rem;
  flex-wrap: wrap;
}
.video-section .wrapper .content {
  flex: 1;
  max-width: 65rem;
  display: flex;
  flex-direction: column;
  gap: 50px;
  flex: 1 1 50rem;
  justify-content: space-between;
}
.video-section .wrapper .video-wrapper {
  flex: 1 1 50rem;
  position: relative;
  aspect-ratio: 51/29;
  margin: 0 auto;
  overflow: hidden;
}
.video-section .wrapper .video-wrapper .video {
  display: block;
  width: 100%;
  height: 100%;
  background: #000;
}

/*
.sixteen-nine {
	@include aspect-ratio(16,9);
}*/
/* Media Queries Breakpoints */
/**
* *******************
*  Usage examples
* *******************
*
//
//  use <=
*   ALWAYS use <= ( '<' with '=' character) for all breakpoints
*   when setting max-width, ex: max-width: 767px,
*
*   so max-width: 1440px  == media('<=desktop-l')
*
* ***********************************************
*
//  use >
*   ALWAYS use only > as single character for all breakpoints
*   when setting min-width, ex: min-width: 768px,
*
*   so min-width: 1025px  == media('>desktop')
*
*************************************************
*
*## EXAMPLE:
*
*   (min-width: 768px) and (max-width: 1024px)
*   =
*   media ('>tablet'), ('<=desktop')
*
//

 */
.services {
  background-color: var(--color-grey);
}
.services .wrapper {
  display: flex;
  align-items: stretch;
  flex-wrap: wrap;
  gap: 3.2rem;
  min-height: 56rem;
}
.services__content-left {
  display: flex;
  flex: 2 1 75rem;
  background: #fff;
}
.services__content-left .content-left__text {
  flex: 2 1 32rem;
  background-color: #fff;
  padding: clamp(2.4rem, 5vw, 6.4rem);
  gap: 4.8rem;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-self: stretch;
}
.services__content-left .content-left__img {
  flex: 1 1 20rem;
  overflow: hidden;
}
.services__content-left .content-left__img img {
  display: block;
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.services__content-right {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 4.8rem;
  flex: 1 1 40rem;
  background-color: var(--color-beige);
  padding: clamp(2.4rem, 5vw, 6.4rem);
}
@media (max-width: 83.2rem) {
  .services__content-left, .services__content-right {
    flex: 1 1 100%;
  }
}
@media (max-width: 766px) {
  .services .wrapper {
    gap: 0;
  }
  .services__content-left {
    flex-direction: column;
    background-color: transparent;
  }
  .services__content-left .content-left__text {
    background-color: transparent;
  }
  .services__content-left .content-left__img {
    flex: 0 0 auto;
    aspect-ratio: 1/1;
  }
}

/*
.sixteen-nine {
	@include aspect-ratio(16,9);
}*/
/* Media Queries Breakpoints */
/**
* *******************
*  Usage examples
* *******************
*
//
//  use <=
*   ALWAYS use <= ( '<' with '=' character) for all breakpoints
*   when setting max-width, ex: max-width: 767px,
*
*   so max-width: 1440px  == media('<=desktop-l')
*
* ***********************************************
*
//  use >
*   ALWAYS use only > as single character for all breakpoints
*   when setting min-width, ex: min-width: 768px,
*
*   so min-width: 1025px  == media('>desktop')
*
*************************************************
*
*## EXAMPLE:
*
*   (min-width: 768px) and (max-width: 1024px)
*   =
*   media ('>tablet'), ('<=desktop')
*
//

 */
.cta-block-1 .wrapper {
  align-items: center;
  justify-content: center;
}
.cta-block-1 .wrapper .content {
  background-color: var(--color-beige);
  max-width: 106rem;
  width: 100%;
  display: flex;
  align-items: center;
  padding: clamp(2rem, 4vw, 10rem) 5rem;
  flex-direction: column;
}
.cta-block-1 .wrapper .content h2,
.cta-block-1 .wrapper .content p {
  text-align: center;
  max-width: 50rem;
}
.cta-block-1 .wrapper .content p {
  margin-bottom: 4.8rem;
}
.cta-block-1__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 3.2rem;
}
@media (max-width: 574px) {
  .cta-block-1__actions {
    gap: 1.6rem;
  }
  .cta-block-1__actions a,
  .cta-block-1__actions button {
    width: 100%;
  }
}

/*
.sixteen-nine {
	@include aspect-ratio(16,9);
}*/
/* Media Queries Breakpoints */
/**
* *******************
*  Usage examples
* *******************
*
//
//  use <=
*   ALWAYS use <= ( '<' with '=' character) for all breakpoints
*   when setting max-width, ex: max-width: 767px,
*
*   so max-width: 1440px  == media('<=desktop-l')
*
* ***********************************************
*
//  use >
*   ALWAYS use only > as single character for all breakpoints
*   when setting min-width, ex: min-width: 768px,
*
*   so min-width: 1025px  == media('>desktop')
*
*************************************************
*
*## EXAMPLE:
*
*   (min-width: 768px) and (max-width: 1024px)
*   =
*   media ('>tablet'), ('<=desktop')
*
//

 */
.cta-block-2 {
  background-color: var(--color-black);
  padding-top: clamp(5.2rem, 4vw, 7rem);
}
.cta-block-2 .wrapper {
  align-items: center;
  justify-content: center;
}
.cta-block-2 .wrapper .content {
  background-color: rgba(88, 146, 0, 0.1882352941);
  max-width: 106rem;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: clamp(10.4rem, 4vw, 14rem) 1.6rem;
  border: 0.2rem dashed rgba(88, 146, 0, 0.5019607843);
  max-width: 132.8rem;
  flex-direction: column;
}
.cta-block-2__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 3.2rem;
}
@media (max-width: 574px) {
  .cta-block-2__actions {
    gap: 1.6rem;
  }
  .cta-block-2__actions a,
  .cta-block-2__actions button {
    width: 100%;
  }
}

/*
.sixteen-nine {
	@include aspect-ratio(16,9);
}*/
/* Media Queries Breakpoints */
/**
* *******************
*  Usage examples
* *******************
*
//
//  use <=
*   ALWAYS use <= ( '<' with '=' character) for all breakpoints
*   when setting max-width, ex: max-width: 767px,
*
*   so max-width: 1440px  == media('<=desktop-l')
*
* ***********************************************
*
//  use >
*   ALWAYS use only > as single character for all breakpoints
*   when setting min-width, ex: min-width: 768px,
*
*   so min-width: 1025px  == media('>desktop')
*
*************************************************
*
*## EXAMPLE:
*
*   (min-width: 768px) and (max-width: 1024px)
*   =
*   media ('>tablet'), ('<=desktop')
*
//

 */
.provided-faq {
  background-color: var(--color-grey);
}
.provided-faq .wrapper {
  flex-direction: column;
  align-items: center;
}
.provided-faq .provided-faq__row {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: clamp(0.8rem, 3vw, 3.2rem);
  max-width: 132.8rem;
  width: 100%;
}
.provided-faq .provided-faq__item {
  min-width: 28rem;
  background-color: #fff;
  padding: clamp(2.4rem, 5vw, 3.3rem);
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
  overflow: hidden;
  flex: 1 1 50rem;
}
.provided-faq .provided-faq__item .item__title {
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
  border-radius: var(--border-radius-default);
  transition: all 0.2s ease;
}
.provided-faq .provided-faq__item .item__title-text {
  font-weight: 500;
}
.provided-faq .provided-faq__item .item__title .item__arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  min-width: 36px;
  min-height: 36px;
  border-radius: 50%;
  font-size: 18px;
  font-weight: 700;
  transition: all 0.3s ease;
}
.provided-faq .provided-faq__item .item__title .item__arrow .item__arrow-item {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  font-size: 2.2rem;
}
.provided-faq .provided-faq__item .item__title .item__arrow .item__arrow-item.item__arrow-active {
  color: #000;
}
.provided-faq .provided-faq__item .item__content {
  display: none;
}
.provided-faq .provided-faq__list {
  width: 100%;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;
}
@media (max-width: 574px) {
  .provided-faq .provided-faq__row {
    gap: 0.8rem;
  }
}

/*
.sixteen-nine {
	@include aspect-ratio(16,9);
}*/
/* Media Queries Breakpoints */
/**
* *******************
*  Usage examples
* *******************
*
//
//  use <=
*   ALWAYS use <= ( '<' with '=' character) for all breakpoints
*   when setting max-width, ex: max-width: 767px,
*
*   so max-width: 1440px  == media('<=desktop-l')
*
* ***********************************************
*
//  use >
*   ALWAYS use only > as single character for all breakpoints
*   when setting min-width, ex: min-width: 768px,
*
*   so min-width: 1025px  == media('>desktop')
*
*************************************************
*
*## EXAMPLE:
*
*   (min-width: 768px) and (max-width: 1024px)
*   =
*   media ('>tablet'), ('<=desktop')
*
//

 */
.cooperation {
  background-color: var(--color-haki);
}
.cooperation__row {
  display: flex;
  align-items: stretch;
  gap: 3.2rem;
  flex-wrap: wrap;
}
.cooperation__row .left {
  flex: 1 1 60rem;
  background-color: var(--color-beige);
  padding: 10.4rem clamp(1.6rem, 5vw, 10.4rem);
}
.cooperation__row .left .block-title {
  text-align: left;
}
.cooperation__row .left .text {
  display: flex;
  flex-direction: column;
  gap: 4rem;
}
.cooperation__row .right {
  flex: 1 1 60rem;
  background-color: var(--color-beige);
  display: flex;
  flex-direction: column;
}
.cooperation__row .right .image {
  overflow: hidden;
}
.cooperation__row .right .image img {
  object-fit: cover;
  height: 100%;
  width: 100%;
}
.cooperation__row .right .text {
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
  padding: 10.4rem clamp(1.6rem, 5vw, 10.4rem);
}
.cooperation__row .right .text .actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 2rem;
  font-size: clamp(1.6rem, 3vw, 1.8rem);
}
.cooperation__row .right .text .actions .-b:hover {
  text-decoration: underline;
}
.cooperation__row .right .text .actions .separator {
  width: 0.1rem;
  height: 1.6rem;
  background-color: var(--color-black);
}
.cooperation__row .right .text .actions .actions__social {
  display: flex;
  gap: 1.6rem;
  align-items: center;
  fill: transparent;
}
.cooperation__row .right .text .actions .actions__social a {
  display: flex;
  width: 24px;
  height: auto;
  aspect-ratio: 1/1;
  transition: transform 0.3s ease;
}
.cooperation__row .right .text .actions .actions__social a svg path {
  stroke: var(--color-haki);
}
.cooperation__row .right .text .actions .actions__social a:hover {
  transform: scale(1.1);
  transition: transform 0.3s ease;
}
@media (max-width: 574px) {
  .cooperation__row {
    gap: 0;
  }
  .cooperation__row .right .image {
    order: 2;
  }
  .cooperation__row .right .text {
    order: 1;
    padding-top: 2rem;
  }
  .cooperation__row .left {
    padding-bottom: 2rem;
  }
}

/*
.sixteen-nine {
	@include aspect-ratio(16,9);
}*/
/* Media Queries Breakpoints */
/**
* *******************
*  Usage examples
* *******************
*
//
//  use <=
*   ALWAYS use <= ( '<' with '=' character) for all breakpoints
*   when setting max-width, ex: max-width: 767px,
*
*   so max-width: 1440px  == media('<=desktop-l')
*
* ***********************************************
*
//  use >
*   ALWAYS use only > as single character for all breakpoints
*   when setting min-width, ex: min-width: 768px,
*
*   so min-width: 1025px  == media('>desktop')
*
*************************************************
*
*## EXAMPLE:
*
*   (min-width: 768px) and (max-width: 1024px)
*   =
*   media ('>tablet'), ('<=desktop')
*
//

 */
.seo-tabs {
  background-color: var(--color-grey);
  padding: 2.4rem 1.6rem;
}
.seo-tabs .wrapper {
  align-items: flex-start;
  flex-wrap: wrap;
  gap: clamp(0rem, 1vw, 3.2rem);
}
.seo-tabs__sidebar {
  flex: 1 1 27rem;
}
.seo-tabs__sidebar ul {
  list-style: none;
}
.seo-tabs__sidebar ul li {
  color: var(--color-black);
  background-color: #fff;
  stroke: var(--color-black);
  transition: all 0.2s ease-in-out;
  cursor: pointer;
}
.seo-tabs__sidebar ul li a {
  font-weight: 600;
  font-size: 1.6rem;
  padding: 1.8rem 1.6rem;
  display: flex;
  justify-content: space-between;
}
.seo-tabs__sidebar ul li svg {
  transition: stroke 0.2s ease-in-out;
}
.seo-tabs__sidebar ul li.active {
  color: #fff;
  background-color: var(--color-haki);
  cursor: default;
}
.seo-tabs__sidebar ul li.active svg {
  stroke: #fff;
}
.seo-tabs__content {
  flex: 3 1 60rem;
  background-color: #fff;
}
.seo-tabs__content .tab-content-inner {
  display: none;
  flex-direction: column;
  align-items: center;
}
.seo-tabs__content .tab-content-inner .text-content {
  width: 100%;
  padding: 4.8rem clamp(1.6rem, 3vw, 4.8rem);
}
.seo-tabs__content .tab-content-inner .text-content__list {
  width: 100%;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;
}
.seo-tabs__content .tab-content-inner.active {
  display: flex;
}
.seo-tabs__content .tab-content-inner-faq__row {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  max-width: 132.8rem;
  width: 100%;
}
.seo-tabs__content .tab-content-inner-faq__item {
  min-width: 28rem;
  background-color: var(--color-lightgrey);
  border-top: 0.1rem solid var(--color-grey);
  padding: clamp(1.6rem, 5vw, 2.1rem) 1.6rem;
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
  overflow: hidden;
  width: 100%;
  transition: all 0.2s cubic-bezier(0.075, 0.82, 0.165, 1);
}
.seo-tabs__content .tab-content-inner-faq__item .item__title {
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
  user-select: none;
  border-radius: var(--border-radius-default);
  transition: all 0.2s ease;
}
.seo-tabs__content .tab-content-inner-faq__item .item__title-text {
  font-weight: 500;
}
.seo-tabs__content .tab-content-inner-faq__item .item__title .item__arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  min-width: 36px;
  min-height: 36px;
  border-radius: 50%;
  font-size: 18px;
  font-weight: 700;
  transition: all 0.3s ease;
}
.seo-tabs__content .tab-content-inner-faq__item .item__title .item__arrow .item__arrow-item {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  font-size: 2.2rem;
  color: #7a7953;
  font-weight: 400;
}
.seo-tabs__content .tab-content-inner-faq__item .item__title .item__arrow .item__arrow-item.item__arrow-active {
  color: #7a7953;
}
.seo-tabs__content .tab-content-inner-faq__item .item__content {
  display: none;
}
.seo-tabs__content .tab-content-inner-faq__item.active {
  background-color: rgba(174, 173, 110, 0.168627451);
}
.seo-tabs__content .image-banner {
  height: 24rem;
  width: 100%;
}
.seo-tabs__content .image-banner img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
@media (max-width: 574px) {
  .seo-tabs {
    padding-left: 0;
    padding-right: 0;
  }
}

/*
.sixteen-nine {
	@include aspect-ratio(16,9);
}*/
/* Media Queries Breakpoints */
/**
* *******************
*  Usage examples
* *******************
*
//
//  use <=
*   ALWAYS use <= ( '<' with '=' character) for all breakpoints
*   when setting max-width, ex: max-width: 767px,
*
*   so max-width: 1440px  == media('<=desktop-l')
*
* ***********************************************
*
//  use >
*   ALWAYS use only > as single character for all breakpoints
*   when setting min-width, ex: min-width: 768px,
*
*   so min-width: 1025px  == media('>desktop')
*
*************************************************
*
*## EXAMPLE:
*
*   (min-width: 768px) and (max-width: 1024px)
*   =
*   media ('>tablet'), ('<=desktop')
*
//

 */
.banner {
  background-color: var(--color-grey);
}
.banner .wrapper .content {
  width: 100%;
  position: relative;
  display: flex;
  align-items: stretch;
  gap: 3rem;
}
.banner .wrapper .content .block-background {
  z-index: -1;
  background-color: var(--color-beige);
}
.banner .wrapper .content__text {
  padding: 10.4rem 1.6rem clamp(1.6rem, 5vw, 10.4rem) clamp(1.6rem, 5vw, 10.4rem);
  flex: 1 1 40rem;
  z-index: 1;
}
.banner .wrapper .content__text .is-wysiwyg {
  max-width: 53rem;
}
.banner .wrapper .content__illustration {
  z-index: 1;
  flex: 1 1 40rem;
  position: relative;
  display: flex;
  align-items: flex-end;
}
.banner .wrapper .content__illustration img {
  position: absolute;
  width: 100%;
  height: auto;
  bottom: 0;
  right: 0;
}
@media (max-width: 799px) {
  .banner .wrapper .content {
    flex-direction: column;
    gap: 0;
  }
  .banner .wrapper .content__text {
    flex: none;
  }
  .banner .wrapper .content__illustration {
    flex: none;
  }
  .banner .wrapper .content__illustration img {
    position: static;
  }
}
@media (max-width: 574px) {
  .banner {
    padding-left: 0;
    padding-right: 0;
    padding-bottom: 0;
  }
}

/*
.sixteen-nine {
	@include aspect-ratio(16,9);
}*/
/* Media Queries Breakpoints */
/**
* *******************
*  Usage examples
* *******************
*
//
//  use <=
*   ALWAYS use <= ( '<' with '=' character) for all breakpoints
*   when setting max-width, ex: max-width: 767px,
*
*   so max-width: 1440px  == media('<=desktop-l')
*
* ***********************************************
*
//  use >
*   ALWAYS use only > as single character for all breakpoints
*   when setting min-width, ex: min-width: 768px,
*
*   so min-width: 1025px  == media('>desktop')
*
*************************************************
*
*## EXAMPLE:
*
*   (min-width: 768px) and (max-width: 1024px)
*   =
*   media ('>tablet'), ('<=desktop')
*
//

 */
.big-banner {
  padding-bottom: 0;
  background-color: var(--color-beige);
}
.big-banner .wrapper {
  flex-direction: column;
  align-items: center;
  gap: 4.8rem;
}
.big-banner .wrapper img {
  max-width: 120rem;
  width: 100%;
  height: auto;
}
@media (max-width: 574px) {
  .big-banner {
    padding-left: 0;
    padding-right: 0;
  }
  .big-banner .is-wysiwyg {
    padding: 0 1.6rem;
  }
  .big-banner .wrapper {
    overflow: hidden;
  }
  .big-banner .wrapper img {
    width: 130%;
  }
}

/*
.sixteen-nine {
	@include aspect-ratio(16,9);
}*/
/* Media Queries Breakpoints */
/**
* *******************
*  Usage examples
* *******************
*
//
//  use <=
*   ALWAYS use <= ( '<' with '=' character) for all breakpoints
*   when setting max-width, ex: max-width: 767px,
*
*   so max-width: 1440px  == media('<=desktop-l')
*
* ***********************************************
*
//  use >
*   ALWAYS use only > as single character for all breakpoints
*   when setting min-width, ex: min-width: 768px,
*
*   so min-width: 1025px  == media('>desktop')
*
*************************************************
*
*## EXAMPLE:
*
*   (min-width: 768px) and (max-width: 1024px)
*   =
*   media ('>tablet'), ('<=desktop')
*
//

 */
.video-banner {
  background-color: var(--color-grey);
}
.video-banner .wrapper {
  align-items: stretch;
  flex-wrap: wrap;
}
.video-banner__text {
  position: relative;
  flex: 7;
  padding: 10.4rem clamp(1.6rem, 5vw, 10.4rem);
}
.video-banner__text .block-background {
  background-color: var(--color-beige);
}
.video-banner__video {
  flex: 5;
  min-width: 60rem;
}
.video-banner__video video {
  object-fit: cover;
  height: 100%;
  width: 100%;
}
@media (max-width: 766px) {
  .video-banner .wrapper {
    flex-direction: column;
  }
  .video-banner__text .block-background {
    background-color: var(--color-grey);
  }
  .video-banner__video {
    min-width: unset;
    width: 100%;
    aspect-ratio: 68/54;
  }
}
@media (max-width: 574px) {
  .video-banner {
    padding: 0;
  }
}

.gallery {
  flex-direction: column;
  align-items: center;
  gap: clamp(6.4rem, 6vw, 8rem);
  background-color: var(--color-beige);
  padding-left: 0;
  padding-right: 0;
}
.gallery .wrapper {
  justify-content: center;
}
.gallery__swiper {
  width: 100%;
}
.gallery__swiper .swiper-slide {
  aspect-ratio: 47/64;
}
.gallery__swiper .swiper-slide img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

/*
.sixteen-nine {
	@include aspect-ratio(16,9);
}*/
/* Media Queries Breakpoints */
/**
* *******************
*  Usage examples
* *******************
*
//
//  use <=
*   ALWAYS use <= ( '<' with '=' character) for all breakpoints
*   when setting max-width, ex: max-width: 767px,
*
*   so max-width: 1440px  == media('<=desktop-l')
*
* ***********************************************
*
//  use >
*   ALWAYS use only > as single character for all breakpoints
*   when setting min-width, ex: min-width: 768px,
*
*   so min-width: 1025px  == media('>desktop')
*
*************************************************
*
*## EXAMPLE:
*
*   (min-width: 768px) and (max-width: 1024px)
*   =
*   media ('>tablet'), ('<=desktop')
*
//

 */
.special-proposal {
  background-color: var(--color-black);
  width: 100%;
  padding-top: clamp(5.2rem, 4vw, 7rem);
  padding-bottom: clamp(5.2rem, 4vw, 7rem);
}
.special-proposal .wrapper {
  flex-direction: column;
  align-items: center;
}
.special-proposal__disclaimer {
  padding: 6.4rem 1.6rem;
  position: relative;
  margin-bottom: clamp(10.4rem, 7vw, 14rem);
  border: 0.2rem dashed rgba(88, 146, 0, 0.5019607843);
  background-color: rgba(88, 146, 0, 0.1019607843);
  width: 100%;
  max-width: 132.8rem;
}
.special-proposal__tabs {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
}
.special-proposal__tabs-header {
  width: 100%;
  max-width: 144rem;
  display: flex;
  align-items: center;
  gap: 0.8rem;
  margin-bottom: 3.2rem;
}
.special-proposal__tabs-header .proposal-items-swiper {
  width: 100%;
}
.special-proposal__tabs-header .swiper-slide {
  display: flex;
  align-items: center;
  justify-content: center;
}
.special-proposal__tabs-header .tab-item {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  position: relative;
  padding: clamp(1.6rem, 2vw, 3rem) clamp(1.6rem, 2vw, 4rem);
  color: var(--color-white);
  background-color: rgba(88, 146, 0, 0.1019607843);
  border: 0.2rem dashed rgba(88, 146, 0, 0.5019607843);
  text-transform: uppercase;
}
.special-proposal__tabs-header .tab-item h3 {
  font-size: clamp(1.6rem, 3vw, 3.2rem);
}
.special-proposal__tabs-header .tab-item.active {
  color: #589200;
}
.special-proposal__tabs-content {
  width: 100%;
  display: flex;
}
.special-proposal__tabs-content .tab-content {
  display: none;
  color: var(--color-white);
  align-items: stretch;
  width: 100%;
}
.special-proposal__tabs-content .tab-content .special-gallery {
  flex: 1 1 40rem;
  width: 60%;
  display: flex;
  align-items: stretch;
  max-height: 70rem;
  gap: clamp(0.8rem, 2vw, 3.2rem);
}
.special-proposal__tabs-content .tab-content .special-gallery .main-swiper {
  width: 100%;
  height: auto;
  aspect-ratio: 8/5;
}
.special-proposal__tabs-content .tab-content .special-gallery .main-swiper .swiper-slide {
  aspect-ratio: 8/6;
  width: 100%;
}
.special-proposal__tabs-content .tab-content .special-gallery .main-swiper .swiper-slide img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.special-proposal__tabs-content .tab-content .special-gallery .main-swiper .gallery-bullets {
  align-items: center;
  justify-content: center;
  bottom: 2.4rem;
  gap: 0.4rem;
}
.special-proposal__tabs-content .tab-content .special-gallery .main-swiper .gallery-bullets .bullet {
  display: flex;
  width: 0.8rem;
  height: 0.8rem;
  background: var(--color-grey);
  border-radius: 2rem;
  opacity: 1;
  transition: width 0.2s ease-in-out;
}
.special-proposal__tabs-content .tab-content .special-gallery .main-swiper .gallery-bullets .bullet-active {
  width: 2.4rem;
  background: var(--color-haki);
}
@media (max-width: 574px) {
  .special-proposal__tabs-content .tab-content .special-gallery .main-swiper .gallery-bullets {
    display: flex;
  }
}
@media (max-width: 574px) {
  .special-proposal__tabs-content .tab-content .special-gallery .main-swiper {
    aspect-ratio: 1/1;
  }
  .special-proposal__tabs-content .tab-content .special-gallery .main-swiper .swiper-slide {
    aspect-ratio: 1/1;
  }
}
.special-proposal__tabs-content .tab-content .special-gallery .thumbnails-swiper {
  height: 100%;
}
.special-proposal__tabs-content .tab-content .special-gallery .thumbnails-swiper .swiper-slide {
  width: 100%;
  aspect-ratio: 1/1;
}
.special-proposal__tabs-content .tab-content .special-gallery .thumbnails-swiper .swiper-slide img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
@media (max-width: 574px) {
  .special-proposal__tabs-content .tab-content .special-gallery .thumbnails-swiper .swiper-slide {
    width: 6.4rem;
    height: 6.4rem;
  }
}
@media (max-width: 574px) {
  .special-proposal__tabs-content .tab-content .special-gallery .thumbnails {
    width: 100%;
  }
}
.special-proposal__tabs-content .tab-content .text {
  flex: 1 1 30rem;
  padding: 3.2rem 1.6rem 3.2rem clamp(1.6rem, 5vw, 13.6rem);
  display: flex;
  width: 100%;
}
.special-proposal__tabs-content .tab-content .text .is-wysiwyg {
  width: 100%;
  max-width: 55rem;
}
.special-proposal__tabs-content .tab-content.active {
  display: flex;
}
@media (max-width: 959px) {
  .special-proposal__tabs-content .tab-content {
    flex-direction: column;
  }
  .special-proposal__tabs-content .tab-content .special-gallery {
    width: 100%;
  }
}
@media (max-width: 767px) {
  .special-proposal__tabs-content .tab-content .special-gallery {
    flex-direction: column;
  }
}

/*
.sixteen-nine {
	@include aspect-ratio(16,9);
}*/
/* Media Queries Breakpoints */
/**
* *******************
*  Usage examples
* *******************
*
//
//  use <=
*   ALWAYS use <= ( '<' with '=' character) for all breakpoints
*   when setting max-width, ex: max-width: 767px,
*
*   so max-width: 1440px  == media('<=desktop-l')
*
* ***********************************************
*
//  use >
*   ALWAYS use only > as single character for all breakpoints
*   when setting min-width, ex: min-width: 768px,
*
*   so min-width: 1025px  == media('>desktop')
*
*************************************************
*
*## EXAMPLE:
*
*   (min-width: 768px) and (max-width: 1024px)
*   =
*   media ('>tablet'), ('<=desktop')
*
//

 */
.promo {
  background-color: var(--color-grey);
}
.promo .wrapper {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
}
.promo .wrapper .block-title {
  text-align: left;
}
.promo .wrapper .block-title--inner {
  display: none;
}
@media (max-width: 574px) {
  .promo .wrapper .block-title {
    display: none;
  }
  .promo .wrapper .block-title--inner {
    display: inline-block;
    text-transform: uppercase;
    margin-bottom: 1.6rem;
  }
}
.promo .content {
  display: flex;
  align-items: stretch;
  flex-wrap: wrap;
}
.promo__list {
  padding: 10.4rem clamp(1.6rem, 6vw, 10.4rem);
  flex: 1 1 30rem;
  background-color: #fff;
}
.promo__image {
  flex: 1.2 1 30rem;
}
.promo__image img,
.promo__image picture {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.promo__text {
  padding: 10.4rem clamp(1.6rem, 6vw, 10.4rem);
  flex: 1 1 30rem;
  background-color: var(--color-beige);
}
@media (max-width: 574px) {
  .promo {
    padding-left: 0;
    padding-right: 0;
  }
}

/* WooCommerce template parts */
/*
.sixteen-nine {
	@include aspect-ratio(16,9);
}*/
/* Media Queries Breakpoints */
/**
* *******************
*  Usage examples
* *******************
*
//
//  use <=
*   ALWAYS use <= ( '<' with '=' character) for all breakpoints
*   when setting max-width, ex: max-width: 767px,
*
*   so max-width: 1440px  == media('<=desktop-l')
*
* ***********************************************
*
//  use >
*   ALWAYS use only > as single character for all breakpoints
*   when setting min-width, ex: min-width: 768px,
*
*   so min-width: 1025px  == media('>desktop')
*
*************************************************
*
*## EXAMPLE:
*
*   (min-width: 768px) and (max-width: 1024px)
*   =
*   media ('>tablet'), ('<=desktop')
*
//

 */
:root {
  --product-block-padding: clamp(1.6rem, 3vw, 4.8rem);
}

body.single-product {
  background-color: var(--color-grey);
}

.woo-section {
  padding: 0 1.6rem;
}
.woo-section .woocommerce-ordering {
  margin-bottom: 0;
}
.woo-section .woocommerce-ordering .orderby {
  border: none;
  font-size: 1.6rem;
  font-weight: 600;
  height: 100%;
}

.cat-title {
  font-size: clamp(1.4rem, 2vw, 1.6rem);
  font-weight: 600;
  text-transform: uppercase;
  color: rgb(255, 255, 255);
}
.info .product-name {
  font-size: clamp(1.2rem, 2vw, 1.6rem);
  font-weight: 500;
}
.info .price {
  font-size: clamp(1.4rem, 2vw, 2.4rem);
  color: var(--color-haki);
}

.accordion-tabs {
  display: flex;
  flex-direction: column;
  width: 100%;
  flex: 1;
  border: 1px solid rgba(128, 128, 128, 0.1254901961);
}
.accordion-tabs__item {
  width: 100%;
  overflow: hidden;
  background: #fff;
  border-bottom: 1px solid rgba(128, 128, 128, 0.1254901961);
  cursor: pointer;
}
.accordion-tabs__item:last-child {
  border: none;
}
.accordion-tabs__title {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1.2rem 1.6rem;
  cursor: pointer;
}
.accordion-tabs__title-text {
  display: flex;
  align-items: center;
  gap: 1.6rem;
  color: var(--color-black);
  font-size: clamp(1.4rem, 2vw, 1.6rem);
}
.accordion-tabs__title:hover {
  background: #fbfbfb;
}
.accordion-tabs__title.accordion-tabs__title--active {
  background: #fbfbfb;
}
.accordion-tabs__title.accordion-tabs__title--active .accordion-tabs__title-text {
  color: var(--color-haki);
  stroke: var(--color-haki);
  font-weight: 600;
}
.accordion-tabs__arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 36px;
  min-height: 36px;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  transition: all 0.3s ease;
}
.accordion-tabs__arrow svg {
  transition: all 0.3s ease;
}
.accordion-tabs__arrow--active svg {
  transform: rotate(90deg);
}
.accordion-tabs__content {
  background-color: #fbfbfb;
  display: none;
  padding: 1.2rem 1.6rem 1.6rem 1.6rem;
  font-size: 14px;
  color: var(--text-color2);
}
@media (max-width: 574px) {
  .accordion-tabs {
    width: 100%;
  }
  .accordion-tabs__item {
    width: 100%;
  }
}

.switch-tabs {
  display: flex;
  flex-direction: column;
  border: 1px solid rgba(128, 128, 128, 0.1254901961);
}
.switch-tabs__header {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  border-bottom: 1px solid rgba(128, 128, 128, 0.1254901961);
}
.switch-tabs__item {
  cursor: pointer;
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
  gap: 1rem;
  padding: 1.6rem 1.6rem;
  border-right: 1px solid rgba(128, 128, 128, 0.1254901961);
  font-size: clamp(1.4rem, 2vw, 1.6rem);
}
.switch-tabs__item svg {
  stroke: var(--color-black);
}
.switch-tabs__item.active {
  color: var(--color-haki);
  font-weight: 600;
  background-color: #fbfbfb;
}
.switch-tabs__item.active svg {
  stroke: var(--color-haki);
}
.switch-tabs__item:last-child {
  border: none;
}
.switch-tabs__body {
  background-color: #fbfbfb;
  padding: 1.6rem;
}
.switch-tabs__content {
  display: none;
}
.switch-tabs__content.active {
  display: block;
}

.woo-button {
  cursor: pointer;
  min-width: max-content;
  user-select: none;
  display: flex;
  justify-content: center;
}
.woo-button.-add-to-cart {
  padding: 0.8rem;
  display: flex;
  justify-content: center;
  align-items: center;
  background: var(--color-haki);
  border: none;
  transition: filter 0.1s ease;
  aspect-ratio: 1/1;
  height: fit-content;
}
.woo-button.-add-to-cart img,
.woo-button.-add-to-cart svg {
  width: clamp(1.6rem, 2vw, 2.4rem);
  height: auto;
}
.woo-button.-learn-more {
  padding: 0.8rem;
  display: flex;
  justify-content: center;
  align-items: center;
  background: var(--color-haki);
  color: var(--color-white);
  border: none;
  transition: filter 0.1s ease;
  aspect-ratio: unset;
  height: fit-content;
}
.woo-button.-open-filters {
  padding: 0.4rem;
  display: flex;
  justify-content: center;
  align-items: center;
  background: var(--color-grey);
  border: none;
  transition: filter 0.1s ease;
}
.woo-button.-open-filters img,
.woo-button.-open-filters svg {
  width: 2.4rem;
  height: auto;
}
.woo-button.-open-filters:hover {
  filter: saturate(20%);
}
.woo-button.-semi-transparent {
  border: 1px solid var(--color-grey);
  background-color: rgba(122, 121, 83, 0.1294117647);
  color: var(--color-haki);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.6rem;
  padding: 1.4rem 2rem;
  font-size: clamp(1.4rem, 2vw, 1.6rem);
  font-weight: 600;
}
.woo-button.-semi-transparent svg {
  width: 2.4rem;
  height: auto;
}
.woo-button.-semi-transparent svg {
  stroke: var(--color-haki);
}
.woo-button.-white {
  width: 100%;
  background-color: #fbfbfb;
  border: 1px solid var(--color-grey);
  color: var(--color-haki);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.6rem;
  padding: 1.4rem 2rem;
  font-size: clamp(1.4rem, 2vw, 1.6rem);
  font-weight: 600;
}
.woo-button.-white svg {
  stroke: var(--color-haki);
}
.woo-button.-add-to-cart-full, .woo-button.-big-accent {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.6rem;
  background: var(--color-haki);
  border: none;
  color: #fff;
  transition: filter 0.1s ease;
  width: fit-content;
  padding: 1.4rem 2rem;
  font-size: 1.6rem;
  height: fit-content;
  text-transform: uppercase;
}
.woo-button.-add-to-cart-full svg, .woo-button.-big-accent svg {
  width: 2.4rem;
  height: auto;
}
.woo-button.-accent-transparent {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.6rem;
  background: var(--color-transparent);
  border: 1px solid var(--color-grey);
  color: var(--color-black);
  transition: filter 0.1s ease;
  width: fit-content;
  padding: 1.4rem 2.4rem;
  font-size: 1.6rem;
  font-weight: 500;
  height: fit-content;
}
.woo-button.-transparent {
  border: 1px solid #fff;
  color: #fff;
  padding: 1.8rem 2.4rem;
  text-transform: uppercase;
}
.woo-button.-full {
  width: 100%;
}
.woo-button.-green {
  padding: 1.8rem 2.4rem;
  background-color: var(--color-green);
  color: #fff;
  text-transform: uppercase;
}
.woo-button:hover {
  filter: saturate(40%);
}

/*
.sixteen-nine {
	@include aspect-ratio(16,9);
}*/
/* Media Queries Breakpoints */
/**
* *******************
*  Usage examples
* *******************
*
//
//  use <=
*   ALWAYS use <= ( '<' with '=' character) for all breakpoints
*   when setting max-width, ex: max-width: 767px,
*
*   so max-width: 1440px  == media('<=desktop-l')
*
* ***********************************************
*
//  use >
*   ALWAYS use only > as single character for all breakpoints
*   when setting min-width, ex: min-width: 768px,
*
*   so min-width: 1025px  == media('>desktop')
*
*************************************************
*
*## EXAMPLE:
*
*   (min-width: 768px) and (max-width: 1024px)
*   =
*   media ('>tablet'), ('<=desktop')
*
//

 */
.hero-banner {
  aspect-ratio: 48/19;
  padding-bottom: 3.2rem;
  background-color: var(--color-beige);
}
.hero-banner .section-background .mobile {
  display: none;
}
.hero-banner .section-background .desktop {
  display: block;
}
@media (max-width: 766px) {
  .hero-banner .section-background .mobile {
    display: block;
  }
  .hero-banner .section-background .desktop {
    display: none;
  }
}
.hero-banner .wrapper {
  padding-top: calc(10.4rem + var(--header-height));
  padding-bottom: 10.4rem;
  align-items: flex-start;
  justify-content: center;
  flex-direction: column;
  gap: 1.6rem;
}
@media (max-width: 766px) {
  .hero-banner .wrapper {
    height: 100%;
    width: 100%;
    padding-top: 10.4rem;
    justify-content: flex-start;
    align-items: center;
    text-align: center;
  }
}
.hero-banner .wrapper .woo-button {
  margin-top: clamp(4.8rem, 3vw, 6.4rem);
}
.hero-banner__title {
  color: #fff;
  max-width: 85rem;
  text-transform: uppercase;
  font-size: clamp(4rem, 5vw, 6.4rem);
}
.hero-banner__desc {
  max-width: 50rem;
}
@media (max-width: 766px) {
  .hero-banner {
    margin-top: var(--header-height);
    aspect-ratio: unset;
    width: 100%;
    height: 65rem;
  }
}

.category-catalog {
  background-color: var(--color-grey);
  padding-bottom: clamp(1.6rem, 2vw, 3.2rem);
  padding-top: 3.2rem;
}
.category-catalog__grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(clamp(16rem, 12vw, 21rem), 1fr));
  gap: 0.8rem;
  width: 100%;
  list-style: none;
}
.category-catalog__card {
  position: relative;
  aspect-ratio: 5/6;
}
.category-catalog__card a {
  display: flex;
  align-items: flex-end;
  justify-content: flex-start;
  height: 100%;
  padding: 2.4rem;
  text-decoration: none;
  cursor: pointer;
}
.category-catalog__card .block-background {
  transition: filter 0.2s ease;
}
.category-catalog__card .mask {
  position: absolute;
  inset: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  background: radial-gradient(circle, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.3) 100%), linear-gradient(360deg, rgba(0, 0, 0, 0.3) 0%, rgba(230, 9, 163, 0) 100%);
}
.category-catalog__card:hover .block-background {
  filter: brightness(60%);
}

/*
.sixteen-nine {
	@include aspect-ratio(16,9);
}*/
/* Media Queries Breakpoints */
/**
* *******************
*  Usage examples
* *******************
*
//
//  use <=
*   ALWAYS use <= ( '<' with '=' character) for all breakpoints
*   when setting max-width, ex: max-width: 767px,
*
*   so max-width: 1440px  == media('<=desktop-l')
*
* ***********************************************
*
//  use >
*   ALWAYS use only > as single character for all breakpoints
*   when setting min-width, ex: min-width: 768px,
*
*   so min-width: 1025px  == media('>desktop')
*
*************************************************
*
*## EXAMPLE:
*
*   (min-width: 768px) and (max-width: 1024px)
*   =
*   media ('>tablet'), ('<=desktop')
*
//

 */
.category-products {
  background-color: var(--color-grey);
  padding-bottom: 3.2rem;
}
.category-products .section-background img,
.category-products .section-background svg {
  height: auto;
}
.category-products .wrapper {
  gap: 3.2rem;
}
.category-products .search-results__title {
  margin-bottom: 2.4rem;
  font-size: clamp(2.4rem, 4vw, 4rem);
  font-weight: 600;
  text-align: center;
}
.category-products .search-results__title span {
  color: var(--color-haki);
}
.category-products .search-results__form {
  display: flex;
  align-items: center;
  gap: 1.6rem;
  margin-bottom: 3.2rem;
  max-width: 120rem;
  width: 100%;
  margin: auto;
}
@media (max-width: 766px) {
  .category-products .search-results__form {
    flex-direction: column;
    gap: 1.2rem;
  }
}
.category-products .search-results__input-wrapper {
  position: relative;
  flex: 1;
  width: 100%;
  display: flex;
  align-items: center;
}
.category-products .search-results__icon {
  position: absolute;
  left: 1.6rem;
  width: 2rem;
  height: 2rem;
  color: var(--color-darkgrey);
  pointer-events: none;
  z-index: 1;
}
.category-products .search-results__input {
  width: 100%;
  padding: 2rem 1.6rem 2rem 4.8rem;
  border: 1px solid var(--color-beige);
  background-color: #fff;
  font-size: 1.6rem;
  color: var(--color-black);
  border-radius: 0;
  transition: border-color 0.3s ease;
}
.category-products .search-results__input:focus {
  outline: none;
  border-color: var(--color-haki);
}
.category-products .search-results__input::placeholder {
  color: var(--color-darkgrey);
}
.category-products .search-results__submit {
  padding: 2rem 3.2rem;
  background-color: var(--color-haki);
  color: var(--color-white);
  border: none;
  font-size: 1.6rem;
  font-weight: 500;
  cursor: pointer;
  transition: background-color 0.3s ease;
  white-space: nowrap;
}
.category-products .search-results__submit:hover {
  background-color: var(--color-haki-dark, #6a6b4a);
}
@media (max-width: 766px) {
  .category-products .search-results__submit {
    width: 100%;
  }
}
.category-products__left {
  width: 100%;
  max-width: 39.7rem;
  display: flex;
  flex-direction: column;
  list-style: none;
  position: sticky;
  top: calc(var(--header-height) + var(--header-shift));
  height: fit-content;
  overflow: auto;
  max-height: calc(100vh - var(--header-height) - var(--header-shift) - 2.4rem);
  transition: top 0.2s cubic-bezier(0.19, 1, 0.22, 1);
}
.category-products__left li {
  background-color: #fff;
  border-bottom: 1px solid var(--color-grey);
  transition: background 0.1s ease;
  cursor: pointer;
}
.category-products__left li a {
  display: flex;
  color: var(--color-black);
  font-weight: 500;
  padding: 1.8rem 1.6rem;
}
.category-products__left li:hover {
  background-color: var(--color-grey);
}
@media (max-width: 1099px) {
  .category-products__left {
    display: none;
  }
}
.category-products .category-products__catalog {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: clamp(1.6rem, 2vw, 3.2rem);
  width: 100%;
}
.category-products__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.2rem;
  padding: 1.8rem 1.6rem;
  background-color: #fff;
  width: 100%;
  position: sticky;
  top: calc(var(--header-height) + var(--header-shift) - 0.1rem);
  transition: top 0.2s cubic-bezier(0.19, 1, 0.22, 1), border-color 0.2s ease-in;
  border-bottom: 0.1rem solid transparent;
  z-index: 50;
}
.category-products__header.is-sticky {
  border-color: var(--color-haki);
}
.category-products__header .filter-toggle {
  display: flex;
}
.category-products__header .category-products__sort {
  display: flex;
  align-items: center;
  gap: 1.2rem;
}
.category-products__header .category-products__sort .woocommerce-ordering {
  margin: 0;
}
.category-products__header .category-products__sort .woocommerce-ordering .orderby {
  width: 100%;
  max-width: 24.2rem;
  padding: 0.8rem 3.2rem 0.8rem 1.6rem;
  border: 1px solid var(--color-beige);
  background-color: #fff;
  font-size: 1.6rem;
  font-weight: 600;
  color: var(--color-black);
  cursor: pointer;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 1.2rem center;
  background-size: 1.2rem;
  transition: border-color 0.3s ease;
}
.category-products__header .category-products__sort .woocommerce-ordering .orderby:focus {
  outline: none;
  border-color: var(--color-haki);
}
@media (max-width: 1099px) {
  .category-products__header .category-products__sort {
    width: 100%;
    max-width: unset;
    justify-content: space-between;
  }
}
.category-products__header .count {
  font-size: 1.6rem;
  font-weight: 300;
}
@media (max-width: 1099px) {
  .category-products__header .count {
    display: none;
  }
}
.category-products__grid {
  position: relative;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(clamp(16rem, 35vw, 30rem), 1fr));
  gap: clamp(0.8rem, 2vw, 3.2rem);
  width: 100%;
  align-items: stretch;
}
.category-products__grid.loading .loader-wrapper {
  display: flex;
}
.category-products .pagination {
  user-select: none;
}
.category-products .pagination .pagination__list {
  display: flex;
  gap: clamp(0.8rem, 2vw, 1.6rem);
}
.category-products .pagination .pagination__list .pagination__item {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 4rem;
  height: 4rem;
  font-size: 1.6rem;
  background-color: #fff;
  color: var(--color-black);
  transition: filter 0.2s ease;
}
.category-products .pagination .pagination__list .pagination__item .arrow {
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.category-products .pagination .pagination__list .pagination__item a {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  color: var(--color-black);
  font-size: 1.6rem;
}
.category-products .pagination .pagination__list .pagination__item.is-active {
  color: #fff;
  background-color: var(--color-haki);
}
.category-products .pagination .pagination__list .pagination__item:hover {
  filter: brightness(70%);
}

.search-results {
  padding-top: 20rem;
}
.search-results .category-products .wrapper {
  flex-direction: column;
}

.category-products__left {
  gap: 1.6rem;
}
.category-products__categories {
  width: 100%;
  padding: 0;
  margin: 0;
  list-style: none;
}
.category-products__empty {
  grid-column: 1/-1;
  padding: 2.4rem 1.6rem;
  background: #fff;
  font-size: 1.6rem;
  font-weight: 500;
  text-align: center;
}
.category-products__filter-overlay {
  display: none;
}

.tform-catalog-filter {
  width: 100%;
  background: #fff;
}
.tform-catalog-filter__header {
  display: none;
}
.tform-catalog-filter__close {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 4rem;
  height: 4rem;
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
}
.tform-catalog-filter__accordion {
  border: 0;
}
.tform-catalog-filter__group {
  border-bottom: 1px solid var(--color-grey);
}
.tform-catalog-filter__group .accordion-tabs__content {
  display: none;
  padding: 0 1.6rem 1.6rem;
  cursor: default;
}
.tform-catalog-filter__options {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
}
.tform-catalog-filter__option {
  padding: 1.2rem 0;
  border: 0;
  background: transparent;
}
.tform-catalog-filter__option label {
  width: 100%;
  font-size: 1.5rem;
  cursor: pointer;
}
.tform-catalog-filter__price {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
}
.tform-catalog-filter__price-field {
  text-align: center;
}
.tform-catalog-filter__range {
  position: relative;
  display: grid;
  gap: 0.8rem;
}
.tform-catalog-filter__range input[type=range] {
  width: 100%;
  accent-color: var(--color-haki);
  cursor: pointer;
}
.tform-catalog-filter__actions {
  display: flex;
  align-items: center;
  gap: 1.2rem;
  padding: 1.6rem;
  border-top: 1px solid var(--color-grey);
}
.tform-catalog-filter__actions .default-submit {
  width: 100%;
  min-width: 0;
}
.tform-catalog-filter__reset {
  font-size: 1.4rem;
  font-weight: 500;
  color: var(--color-haki);
  white-space: nowrap;
}

.category-products .filters-wrapper {
  position: fixed;
  left: -100%;
  top: calc(var(--header-height) + var(--header-shift));
  z-index: 1001;
  display: flex;
  max-width: 36.8rem;
  width: 100%;
  height: 100%;
  max-height: calc(100vh - var(--header-height) - var(--header-shift));
  padding: 1.2rem;
  overflow-y: auto;
  background: var(--color-grey);
  transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1);
}
@media (max-width: 1099px) {
  .category-products .filters-wrapper {
    max-width: 80vw;
    width: 100%;
  }
}

.category-products .filters-wrapper.is-open {
  left: 0;
}

.category-products__filter-overlay {
  position: fixed;
  top: calc(var(--header-height) + var(--header-shift));
  left: 0;
  z-index: 1000;
  display: block;
  width: 100vw;
  height: calc(100vh - var(--header-height) - var(--header-shift));
  padding: 0;
  border: 0;
  background: rgba(0, 0, 0, 0.35);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease;
}

.category-products__filter-overlay.is-open {
  opacity: 1;
  pointer-events: auto;
}

.tform-catalog-filter__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.6rem;
  padding: 1.2rem 1.6rem;
  border-bottom: 1px solid var(--color-grey);
  font-size: 1.8rem;
  font-weight: 600;
}

/*
.sixteen-nine {
	@include aspect-ratio(16,9);
}*/
/* Media Queries Breakpoints */
/**
* *******************
*  Usage examples
* *******************
*
//
//  use <=
*   ALWAYS use <= ( '<' with '=' character) for all breakpoints
*   when setting max-width, ex: max-width: 767px,
*
*   so max-width: 1440px  == media('<=desktop-l')
*
* ***********************************************
*
//  use >
*   ALWAYS use only > as single character for all breakpoints
*   when setting min-width, ex: min-width: 768px,
*
*   so min-width: 1025px  == media('>desktop')
*
*************************************************
*
*## EXAMPLE:
*
*   (min-width: 768px) and (max-width: 1024px)
*   =
*   media ('>tablet'), ('<=desktop')
*
//

 */
.product-description {
  padding-top: 1.6rem;
  padding-bottom: 1.6rem;
  background-color: var(--color-grey);
}
.product-description .wrapper {
  flex-direction: column;
}
.product-description .wrapper .content {
  display: flex;
  flex-direction: column;
  align-items: stretch;
}
.product-description .wrapper .block-title {
  text-align: left;
}
.product-description__item {
  display: flex;
  align-items: stretch;
  background-color: #fff;
}
.product-description__item .text {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1.6rem;
  text-align: left;
  box-sizing: border-box;
}
.product-description__item .text .is-wysiwyg {
  padding: 4.8rem 1.6rem;
}
.product-description__item .text h2 {
  max-width: 59rem;
  width: 100%;
  text-transform: uppercase;
}
.product-description__item .text p {
  max-width: 59rem;
  width: 100%;
}
.product-description__item .image {
  flex: 1;
  aspect-ratio: 4/3;
}
.product-description__item .image img,
.product-description__item .image svg {
  object-fit: cover;
  height: 100%;
  width: 100%;
}
.product-description__item:nth-child(2n+1) .text {
  order: 1;
}
.product-description__item:nth-child(2n+1) .image {
  order: 2;
}
.product-description__item:nth-child(2n) .text {
  order: 2;
}
.product-description__item:nth-child(2n) .image {
  order: 1;
}
@media (max-width: 766px) {
  .product-description__item {
    flex-direction: column;
  }
  .product-description__item:nth-child(2n+1) .text {
    order: 2;
  }
  .product-description__item:nth-child(2n+1) .image {
    order: 1;
  }
}
@media (max-width: 999px) {
  .product-description {
    padding-left: 0;
    padding-right: 0;
  }
  .product-description .block-title {
    text-align: center;
  }
}
@media (max-width: 574px) {
  .product-description {
    padding-bottom: 5.3rem;
  }
}

/*
.sixteen-nine {
	@include aspect-ratio(16,9);
}*/
/* Media Queries Breakpoints */
/**
* *******************
*  Usage examples
* *******************
*
//
//  use <=
*   ALWAYS use <= ( '<' with '=' character) for all breakpoints
*   when setting max-width, ex: max-width: 767px,
*
*   so max-width: 1440px  == media('<=desktop-l')
*
* ***********************************************
*
//  use >
*   ALWAYS use only > as single character for all breakpoints
*   when setting min-width, ex: min-width: 768px,
*
*   so min-width: 1025px  == media('>desktop')
*
*************************************************
*
*## EXAMPLE:
*
*   (min-width: 768px) and (max-width: 1024px)
*   =
*   media ('>tablet'), ('<=desktop')
*
//

 */
.product-info {
  background-color: var(--color-grey);
  --li-size: clamp(1.4rem, 2vw, 1.6rem);
  padding-top: 2.4rem;
  padding-bottom: 1.6rem;
}
.product-info li {
  font-size: var(--li-size);
  font-weight: 400;
}
.product-info li strong {
  font-weight: 600;
}
.product-info .wrapper {
  align-items: center;
  gap: 3.2rem;
  width: 100%;
  position: relative;
  flex-wrap: wrap;
}
.product-info .content {
  width: 100%;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 3.2rem;
}
@media (max-width: 819px) {
  .product-info .content {
    flex-direction: column;
  }
}
.product-info__gallery {
  flex: 1 1 30rem;
  display: flex;
  max-width: calc(50% - 1.6rem);
  flex-direction: column;
  position: relative;
  gap: 3.2rem;
}
.product-info__gallery .badge-list {
  position: absolute;
  z-index: 4;
  left: 0;
  top: 2.4rem;
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
}
.product-info__gallery .badge-list .badge {
  padding: 0.8rem;
  font-size: 1.4rem;
  color: #fff;
  display: flex;
  justify-content: center;
}
.product-info__gallery .badge-list .badge.-new {
  background-color: var(--color-green);
}
.product-info__gallery .badge-list .badge.-sale {
  background-color: var(--color-red);
}
.product-info__gallery .badge-list .badge.-top {
  background-color: var(--color-black);
}
.product-info__gallery .main-photo {
  display: flex;
  overflow: hidden;
  width: 100%;
  height: 100%;
  aspect-ratio: 1/1;
}
.product-info__gallery .main-photo img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.product-info__gallery .video-wrapper {
  width: 100%;
  height: 100%;
}
.product-info__gallery .video-wrapper video {
  width: 100%;
  height: 100%;
}
.product-info__gallery .main-swiper {
  width: 100%;
  aspect-ratio: 1/1;
}
.product-info__gallery .main-swiper a {
  display: flex;
  width: 100%;
  height: 100%;
}
.product-info__gallery .main-swiper a img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.product-info__gallery .main-swiper .gallery-bullets {
  display: none;
  align-items: center;
  justify-content: center;
  bottom: 2.4rem;
  gap: 0.4rem;
}
.product-info__gallery .main-swiper .gallery-bullets .bullet {
  display: flex;
  width: 0.8rem;
  height: 0.8rem;
  background: var(--color-grey);
  border-radius: 2rem;
  opacity: 1;
  transition: width 0.2s ease-in-out;
}
.product-info__gallery .main-swiper .gallery-bullets .bullet-active {
  width: 2.4rem;
  background: var(--color-haki);
}
@media (max-width: 574px) {
  .product-info__gallery .main-swiper .gallery-bullets {
    display: flex;
  }
}
.product-info__gallery .thumbnails {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  display: flex;
  gap: 0.8rem;
  overflow: hidden;
}
.product-info__gallery .thumbnails .thumbnails-button-prev,
.product-info__gallery .thumbnails .thumbnails-button-next {
  transform: none;
  position: static;
  height: auto;
  width: 5.2rem;
  background-color: #fff;
  margin-top: unset;
}
.product-info__gallery .thumbnails .thumbnails-button-prev::after,
.product-info__gallery .thumbnails .thumbnails-button-next::after {
  font-size: 2.4rem;
  color: black;
}
.product-info__gallery .thumbnails .thumbnails-button-prev.swiper-button-disabled,
.product-info__gallery .thumbnails .thumbnails-button-next.swiper-button-disabled {
  background-color: #e7e7e7;
  filter: saturate(90%);
  opacity: 1;
}
@media (max-width: 574px) {
  .product-info__gallery .thumbnails {
    display: none;
  }
}
.product-info__gallery .thumbnails-swiper {
  width: 100%;
}
.product-info__gallery .thumbnails-swiper .swiper-slide {
  aspect-ratio: 1/1;
  width: 100%;
  max-width: 10.4rem;
  position: relative;
}
.product-info__gallery .thumbnails-swiper .swiper-slide .thumbnail-play-button {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translateX(-50%) translateY(-50%);
  width: 3.2rem;
  height: 3.2rem;
}
.product-info__gallery .thumbnails-swiper .swiper-slide a {
  display: flex;
  max-width: 10.4rem;
}
.product-info__gallery .thumbnails-swiper .swiper-slide a img {
  object-fit: cover;
}
@media (max-width: 819px) {
  .product-info__gallery {
    width: 100%;
    max-width: none;
  }
}
.product-info__data {
  padding: 4.8rem clamp(1.6rem, 3vw, 4.8rem);
  background-color: #fff;
  flex: 1 1 30rem;
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
}
.product-info__data ul {
  list-style: none;
}
.product-info__data .wishlist-button {
  background: transparent;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 0.4rem;
}
.product-info__data .wishlist-button.in-wishlist svg {
  fill: var(--color-black);
  width: 2.4rem;
  width: 2.4rem;
}
.product-info__data .wishlist-button.in-wishlist:hover svg {
  fill: rgba(10, 10, 10, 0.7137254902);
}
.product-info__data .wishlist-button span {
  font-size: var(--li-size);
}
.product-info__data .wishlist-button svg {
  width: 2.4rem;
  height: 2.4rem;
  stroke: var(--color-black);
  transition: fill 0.2s ease-in;
}
.product-info__data .wishlist-button:hover svg {
  fill: rgba(10, 10, 10, 0.1254901961);
}
.product-info__data .wishlist-button.-added svg {
  fill: var(--color-black);
}
.product-info__data .-ls-only svg {
  width: 2.4rem;
  height: auto;
}
@media (max-width: 574px) {
  .product-info__data .-ls-only span {
    display: none;
  }
}
.product-info__data .info {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
}
.product-info__data .titler {
  font-size: var(--li-size);
  color: var(--color-black);
  font-weight: 400;
  display: flex;
  align-items: center;
  gap: 0.8rem;
}
.product-info__data .titler svg {
  width: 2.4rem;
  height: auto;
}
.product-info__data .titler a {
  white-space: nowrap;
}
.product-info__data .titler strong {
  font-weight: 600;
}
.product-info__data .data-header {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
}
.product-info__data .data-header .product-name {
  font-size: clamp(2.4rem, 3vw, 4rem);
}
.product-info__data .data-header .data-rating {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-wrap: wrap;
}
.product-info__data .data-header .data-rating li {
  flex: 1 1 20rem;
  padding: 0.4rem 2.2rem;
  font-size: var(--li-size);
  display: flex;
  align-items: center;
  gap: 0.8rem;
  border-right: 1px solid rgba(128, 128, 128, 0.1254901961);
  white-space: nowrap;
}
.product-info__data .data-header .data-rating li a {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  font-size: var(--li-size);
  color: var(--color-black);
}
.product-info__data .data-header .data-rating li:first-child {
  padding-left: 0;
  justify-content: flex-start;
}
.product-info__data .data-header .data-rating li:nth-child(2) {
  justify-content: center;
}
.product-info__data .data-header .data-rating li:last-child {
  padding-right: 0;
  justify-content: flex-end;
  border-right: none;
}
.product-info__data .data-header .data-rating .rating {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.6rem;
}
.product-info__data .data-header .data-rating .stars {
  position: relative;
  width: 8.5rem;
  height: 1.6rem;
  background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="17" height="16" viewBox="0 0 17 16" fill="none"><path d="M6.22548 5.49062L7.95748 2.00262C8.00789 1.90167 8.08543 1.81677 8.1814 1.75743C8.27737 1.69809 8.38798 1.66666 8.50081 1.66666C8.61364 1.66666 8.72425 1.69809 8.82022 1.75743C8.91619 1.81677 8.99373 1.90167 9.04414 2.00262L10.7761 5.49062L14.6481 6.05328C14.7598 6.06877 14.8649 6.11535 14.9514 6.18769C15.0379 6.26004 15.1023 6.35524 15.1372 6.46244C15.1722 6.56963 15.1763 6.68449 15.1491 6.79392C15.122 6.90335 15.0645 7.00292 14.9835 7.08129L12.1821 9.79462L12.8435 13.628C12.9281 14.12 12.4081 14.4946 11.9635 14.2626L8.50081 12.452L5.03748 14.2626C4.59348 14.4953 4.07348 14.12 4.15814 13.6273L4.81948 9.79395L2.01814 7.08062C1.93747 7.0022 1.88041 6.90272 1.85345 6.79349C1.8265 6.68426 1.83072 6.56966 1.86566 6.46271C1.90059 6.35577 1.96482 6.26077 2.05106 6.18851C2.13729 6.11625 2.24207 6.06963 2.35348 6.05395L6.22548 5.49062Z" stroke="%23808080" stroke-linecap="round" stroke-linejoin="round"/></svg>') repeat-x;
  background-size: 1.7rem 1.6rem;
}
.product-info__data .data-header .data-rating .stars__fill {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 0;
  background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="17" height="16" viewBox="0 0 17 16" fill="%236B6D45"><path d="M6.22548 5.49062L7.95748 2.00262C8.00789 1.90167 8.08543 1.81677 8.1814 1.75743C8.27737 1.69809 8.38798 1.66666 8.50081 1.66666C8.61364 1.66666 8.72425 1.69809 8.82022 1.75743C8.91619 1.81677 8.99373 1.90167 9.04414 2.00262L10.7761 5.49062L14.6481 6.05328C14.7598 6.06877 14.8649 6.11535 14.9514 6.18769C15.0379 6.26004 15.1023 6.35524 15.1372 6.46244C15.1722 6.56963 15.1763 6.68449 15.1491 6.79392C15.122 6.90335 15.0645 7.00292 14.9835 7.08129L12.1821 9.79462L12.8435 13.628C12.9281 14.12 12.4081 14.4946 11.9635 14.2626L8.50081 12.452L5.03748 14.2626C4.59348 14.4953 4.07348 14.12 4.15814 13.6273L4.81948 9.79395L2.01814 7.08062C1.93747 7.0022 1.88041 6.90272 1.85345 6.79349C1.8265 6.68426 1.83072 6.56966 1.86566 6.46271C1.90059 6.35577 1.96482 6.26077 2.05106 6.18851C2.13729 6.11625 2.24207 6.06963 2.35348 6.05395L6.22548 5.49062Z"/></svg>') repeat-x;
  background-size: 1.7rem 1.6rem;
}
@media (max-width: 574px) {
  .product-info__data .data-header .data-rating {
    flex-wrap: nowrap;
  }
  .product-info__data .data-header .data-rating li:nth-child(2) {
    order: unset;
  }
}
.product-info__data .data-colors {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
}
.product-info__data .data-colors.has-error li {
  border-color: var(--color-red) !important;
}
.product-info__data .data-colors ul {
  display: flex;
  align-items: center;
  gap: 0.8rem;
}
.product-info__data .data-colors ul li {
  width: 100%;
  max-width: clamp(4.8rem, 3vw, 8rem);
  height: auto;
  aspect-ratio: 1/1;
  display: flex;
  border: 1px solid var(--color-grey);
  cursor: pointer;
}
.product-info__data .data-colors ul li.active {
  border: 1px solid var(--color-haki);
}
.product-info__data .data-colors ul li:hover img {
  filter: saturate(20%);
}
.product-info__data .data-colors ul li img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  transition: filter 0.2s ease;
}
.product-info__data .data-sizes {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
}
.product-info__data .data-sizes.has-error li {
  border-color: var(--color-red) !important;
}
.product-info__data .data-sizes ul {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(6rem, 1fr));
  gap: 0.8rem;
}
.product-info__data .data-sizes ul li {
  padding: 1.4rem;
  flex: 1 1 4.1rem;
  border: 1px solid var(--color-grey);
  background-color: #fff;
  transition: all 0.2s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background-color 0.2s ease;
  cursor: pointer;
}
.product-info__data .data-sizes ul li:hover {
  background-color: var(--color-grey);
}
.product-info__data .data-sizes ul li.active {
  border-color: var(--color-haki);
  background-color: var(--color-haki);
  font-weight: 600;
  color: #fff;
}
.product-info__data .data-sizes .titler.-haki {
  color: var(--color-haki);
}
.product-info__data .data-sizes .actions {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  flex-wrap: wrap;
}
.product-info__data .data-sizes .woo-button {
  flex: 1 1 25rem;
}
.product-info__data .data-sizes .height-selector {
  flex: 1 1 25rem;
  display: flex;
  align-items: center;
  gap: 1.6rem;
  font-size: var(--li-size);
}
.product-info__data .data-sizes .height-control {
  width: 100%;
  display: flex;
  align-items: stretch;
  gap: 1rem;
  justify-content: space-between;
  padding: 1.2rem 0.8rem;
  border: 1px solid var(--color-grey);
}
.product-info__data .data-sizes .height-control .value {
  display: flex;
  align-items: flex-end;
  gap: 0.4rem;
  font-weight: 600;
}
.product-info__data .data-sizes .height-control button {
  border: none;
  background-color: transparent;
  cursor: pointer;
  transition: background-color 0.2s ease;
}
.product-info__data .data-sizes .height-control button svg {
  width: 2.4rem;
  height: auto;
}
.product-info__data .data-sizes .height-control button:hover {
  background-color: var(--color-grey);
}
.product-info__data .data-individual {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
}
.product-info__data .data-additional {
  display: flex;
  align-items: center;
  gap: 1.6rem;
}
.product-info__data .data-additional label {
  font-size: var(--li-size);
  white-space: nowrap;
}
.product-info__data .data-additional select {
  cursor: pointer;
  width: 100%;
  padding: 1.4rem 1.6rem;
  background-color: #ebebeb;
  border: 1px solid var(--color-grey);
  color: var(--color-black);
  font-size: var(--li-size);
  font-weight: 600;
}
.product-info__data .data-actions {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
}
.product-info__data .data-actions .cart-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 1.6rem;
}
.product-info__data .data-actions .cart-actions .price {
  display: flex;
  align-items: center;
  gap: 1.6rem;
  color: var(--color-black);
}
.product-info__data .data-actions .cart-actions .price .new-price {
  font-size: clamp(2.4rem, 2vw, 3.2rem);
}
.product-info__data .data-actions .cart-actions .price .new-price.sale {
  color: var(--color-red);
}
.product-info__data .data-actions .cart-actions .price .old-price {
  font-size: var(--li-size);
  text-decoration: line-through;
}
.product-info__data .data-actions .cart-actions .quantity-selector {
  width: 100%;
  display: flex;
  flex: 1 1 10.6rem;
  order: 1;
  align-items: center;
  gap: 1.6rem;
  font-size: var(--li-size);
}
.product-info__data .data-actions .cart-actions .quantity-control {
  width: 100%;
  display: flex;
  align-items: stretch;
  gap: 1.6rem;
  justify-content: space-between;
  padding: 1.2rem 0.8rem;
  border: 1px solid var(--color-grey);
}
.product-info__data .data-actions .cart-actions .quantity-control .value {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  font-weight: 600;
}
.product-info__data .data-actions .cart-actions .quantity-control button {
  border: none;
  background-color: transparent;
  cursor: pointer;
  transition: background-color 0.2s ease;
}
.product-info__data .data-actions .cart-actions .quantity-control button:hover {
  background-color: var(--color-grey);
}
.product-info__data .data-actions .cart-actions .-add-to-cart-full {
  flex: 1 1 20rem;
  order: 2;
}
@media (min-width: 576px) {
  .product-info__data .data-tabs .switch-tabs {
    display: flex;
  }
  .product-info__data .data-tabs .accordion-tabs {
    display: none;
  }
}
@media (max-width: 574px) {
  .product-info__data .data-tabs .switch-tabs {
    display: none;
  }
  .product-info__data .data-tabs .accordion-tabs {
    display: flex;
  }
}
@media (max-width: 574px) {
  .product-info {
    padding-left: 0;
    padding-right: 0;
  }
  .product-info .wrapper .content {
    gap: 0;
  }
}

.woocommerce .thumbnails img,
.woocommerce-page .thumbnails img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/*
.sixteen-nine {
	@include aspect-ratio(16,9);
}*/
/* Media Queries Breakpoints */
/**
* *******************
*  Usage examples
* *******************
*
//
//  use <=
*   ALWAYS use <= ( '<' with '=' character) for all breakpoints
*   when setting max-width, ex: max-width: 767px,
*
*   so max-width: 1440px  == media('<=desktop-l')
*
* ***********************************************
*
//  use >
*   ALWAYS use only > as single character for all breakpoints
*   when setting min-width, ex: min-width: 768px,
*
*   so min-width: 1025px  == media('>desktop')
*
*************************************************
*
*## EXAMPLE:
*
*   (min-width: 768px) and (max-width: 1024px)
*   =
*   media ('>tablet'), ('<=desktop')
*
//

 */
.product-properties {
  background-color: var(--color-grey);
  --li-size: clamp(1.4rem, 2vw, 1.6rem);
  padding-top: 1.6rem;
  padding-bottom: 1.6rem;
}
.product-properties .wrapper {
  align-items: stretch;
  gap: 3.2rem;
}
@media (max-width: 819px) {
  .product-properties .wrapper {
    flex-direction: column;
  }
}
.product-properties__slider {
  flex: 1 1 30rem;
  max-width: calc(50% - 1.6rem);
}
@media (max-width: 574px) {
  .product-properties__slider {
    padding-left: 1.6rem;
    padding-right: 1.6rem;
  }
}
.product-properties__slider .upsells-header {
  display: flex;
  align-items: center;
  gap: 1.6rem;
  justify-content: space-between;
  margin-bottom: clamp(1.6rem, 3vw, 3.2rem);
}
.product-properties__slider .upsells-header .upsells-nav {
  display: flex;
  align-items: center;
  gap: 1.6rem;
}
.product-properties__slider .upsells-header .upsells-nav button {
  width: 4rem;
  height: 4rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border: none;
  background-color: #fff;
}
@media (max-width: 849px) {
  .product-properties__slider .upsells-header .upsells-nav {
    display: none;
  }
}
@media (max-width: 819px) {
  .product-properties__slider {
    width: 100%;
    max-width: none;
  }
}
.product-properties__specs {
  flex: 1 1 30rem;
  background-color: #fff;
  padding: 4.8rem var(--product-block-padding);
}
.product-properties__list {
  display: flex;
  flex-direction: column;
  align-items: center;
  overflow: scroll;
  max-height: 40rem;
  width: 100%;
  border: 1px solid #ededed;
}
.product-properties__row {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 2.4rem;
  padding: 1.6rem;
  background-color: #fff;
  border-bottom: 1px solid #ededed;
}
.product-properties__row:last-child {
  border: none;
}
.product-properties__row:nth-child(2n+1) {
  background-color: #fbfbfb;
}
.product-properties__row dt {
  flex: 1;
  font-size: var(--li-size);
}
.product-properties__row dd {
  flex: 3;
  font-size: var(--li-size);
  font-weight: 600;
}
@media (max-width: 574px) {
  .product-properties {
    padding-left: 0;
    padding-right: 0;
  }
}

/*
.sixteen-nine {
	@include aspect-ratio(16,9);
}*/
/* Media Queries Breakpoints */
/**
* *******************
*  Usage examples
* *******************
*
//
//  use <=
*   ALWAYS use <= ( '<' with '=' character) for all breakpoints
*   when setting max-width, ex: max-width: 767px,
*
*   so max-width: 1440px  == media('<=desktop-l')
*
* ***********************************************
*
//  use >
*   ALWAYS use only > as single character for all breakpoints
*   when setting min-width, ex: min-width: 768px,
*
*   so min-width: 1025px  == media('>desktop')
*
*************************************************
*
*## EXAMPLE:
*
*   (min-width: 768px) and (max-width: 1024px)
*   =
*   media ('>tablet'), ('<=desktop')
*
//

 */
.product-footer {
  padding-top: 1.6rem;
}
.product-footer .wrapper {
  align-items: stretch;
  flex-wrap: wrap;
  gap: 3.2rem;
}
.product-footer__reviews {
  flex: 1 1 45rem;
  width: calc(50% - 1.6rem);
  background: #fff;
  padding: 4.8rem var(--product-block-padding);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 3.2rem;
}
.product-footer__reviews .action-review {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  gap: 2.4rem;
  padding: 1.6rem;
  border: 1px solid var(--color-grey);
  background-color: #fbfbfb;
}
.product-footer__reviews .action-review p {
  font-size: 1.6rem;
  color: var(--color-black);
  font-weight: 600;
}
@media (max-width: 574px) {
  .product-footer__reviews .action-review {
    flex-direction: column;
  }
  .product-footer__reviews .action-review a,
  .product-footer__reviews .action-review button {
    width: 100%;
  }
}
.product-footer__reviews .reviews-swiper {
  width: 100%;
}
.product-footer__reviews .reviews-swiper .review-nav {
  display: flex;
  align-items: center;
  gap: 1.6rem;
  position: absolute;
  bottom: 2.4rem;
  right: 2.4rem;
  z-index: 4;
}
.product-footer__reviews .reviews-swiper .review-nav button {
  width: 4rem;
  height: 4rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border: none;
  background-color: #fff;
}
.product-footer__reviews .reviews-swiper .review-item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 2.4rem;
  padding: 2.4rem;
  height: 100%;
  border: 1px solid var(--color-grey);
  background-color: #fbfbfb;
  font-size: 1.6rem;
}
.product-footer__reviews .reviews-swiper .review-item__header {
  display: flex;
  justify-content: flex-start;
  gap: 1.6rem;
}
.product-footer__reviews .reviews-swiper .review-item__header .stars {
  position: relative;
  width: 85px;
  height: 16px;
  background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="17" height="16" viewBox="0 0 17 16" fill="none"><path d="M6.22548 5.49062L7.95748 2.00262C8.00789 1.90167 8.08543 1.81677 8.1814 1.75743C8.27737 1.69809 8.38798 1.66666 8.50081 1.66666C8.61364 1.66666 8.72425 1.69809 8.82022 1.75743C8.91619 1.81677 8.99373 1.90167 9.04414 2.00262L10.7761 5.49062L14.6481 6.05328C14.7598 6.06877 14.8649 6.11535 14.9514 6.18769C15.0379 6.26004 15.1023 6.35524 15.1372 6.46244C15.1722 6.56963 15.1763 6.68449 15.1491 6.79392C15.122 6.90335 15.0645 7.00292 14.9835 7.08129L12.1821 9.79462L12.8435 13.628C12.9281 14.12 12.4081 14.4946 11.9635 14.2626L8.50081 12.452L5.03748 14.2626C4.59348 14.4953 4.07348 14.12 4.15814 13.6273L4.81948 9.79395L2.01814 7.08062C1.93747 7.0022 1.88041 6.90272 1.85345 6.79349C1.8265 6.68426 1.83072 6.56966 1.86566 6.46271C1.90059 6.35577 1.96482 6.26077 2.05106 6.18851C2.13729 6.11625 2.24207 6.06963 2.35348 6.05395L6.22548 5.49062Z" stroke="%23808080" stroke-linecap="round" stroke-linejoin="round"/></svg>') repeat-x;
  background-size: 17px 16px;
}
.product-footer__reviews .reviews-swiper .review-item__header .stars__fill {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 0;
  background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="17" height="16" viewBox="0 0 17 16" fill="%236B6D45"><path d="M6.22548 5.49062L7.95748 2.00262C8.00789 1.90167 8.08543 1.81677 8.1814 1.75743C8.27737 1.69809 8.38798 1.66666 8.50081 1.66666C8.61364 1.66666 8.72425 1.69809 8.82022 1.75743C8.91619 1.81677 8.99373 1.90167 9.04414 2.00262L10.7761 5.49062L14.6481 6.05328C14.7598 6.06877 14.8649 6.11535 14.9514 6.18769C15.0379 6.26004 15.1023 6.35524 15.1372 6.46244C15.1722 6.56963 15.1763 6.68449 15.1491 6.79392C15.122 6.90335 15.0645 7.00292 14.9835 7.08129L12.1821 9.79462L12.8435 13.628C12.9281 14.12 12.4081 14.4946 11.9635 14.2626L8.50081 12.452L5.03748 14.2626C4.59348 14.4953 4.07348 14.12 4.15814 13.6273L4.81948 9.79395L2.01814 7.08062C1.93747 7.0022 1.88041 6.90272 1.85345 6.79349C1.8265 6.68426 1.83072 6.56966 1.86566 6.46271C1.90059 6.35577 1.96482 6.26077 2.05106 6.18851C2.13729 6.11625 2.24207 6.06963 2.35348 6.05395L6.22548 5.49062Z"/></svg>') repeat-x;
  background-size: 17px 16px;
}
.product-footer__reviews .reviews-swiper .review-item__author {
  font-weight: 600;
}
.product-footer__reviews .reviews-swiper .review-item__text p {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}
.product-footer__reviews .reviews-swiper .review-item__gallery {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 0.8rem;
  overflow: scroll;
}
.product-footer__reviews .reviews-swiper .review-item__image {
  display: flex;
  width: 8rem;
  height: 8rem;
}
.product-footer__reviews .reviews-swiper .review-item__image img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.product-footer__social {
  flex: 1 1 45rem;
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
  padding: 4.8rem var(--product-block-padding);
  background-color: #fff;
}
.product-footer__social .social-title {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.6rem;
}
@media (max-width: 574px) {
  .product-footer__social .social-title {
    flex-direction: column;
  }
  .product-footer__social .social-title a,
  .product-footer__social .social-title button {
    width: 100%;
  }
}
.product-footer__social .social-gallery {
  display: grid;
  gap: 0.8rem;
  grid-template-columns: repeat(auto-fill, minmax(clamp(11rem, 11vw, 17rem), 1fr));
}
.product-footer__social .social-gallery .image {
  position: relative;
  width: 100%;
  aspect-ratio: 1/1;
  height: auto;
  overflow: hidden;
}
.product-footer__social .social-gallery .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
@media (max-width: 574px) {
  .product-footer {
    padding-left: 0;
    padding-right: 0;
    padding-top: 5.2rem;
  }
}

.content-product__item {
  display: flex;
  flex-direction: column;
  transition: transform 0.4s ease;
  height: 100%;
  width: 100%;
  position: relative;
}
.content-product__item .image {
  display: flex;
  aspect-ratio: 1/1;
  width: 100%;
  height: auto;
  transition: filter 0.2s ease;
}
.content-product__item .image img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.content-product__item .badge-list {
  position: absolute;
  z-index: 4;
  left: 0;
  top: 2.4rem;
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
}
.content-product__item .badge-list .badge {
  padding: 0.8rem;
  font-size: 1.4rem;
  color: #fff;
  display: flex;
  justify-content: center;
}
.content-product__item .badge-list .badge.-new {
  background-color: var(--color-green);
}
.content-product__item .badge-list .badge.-sale {
  background-color: var(--color-red);
}
.content-product__item .badge-list .badge.-top {
  background-color: var(--color-black);
}
.content-product__item .wishlist-button {
  position: absolute;
  z-index: 10;
  right: clamp(1.6rem, 2vw, 2.4rem);
  top: clamp(1.6rem, 2vw, 2.4rem);
  height: 4rem;
  width: 4rem;
  background: transparent;
  border: none;
  cursor: pointer;
}
.content-product__item .wishlist-button.in-wishlist svg {
  fill: var(--color-black);
}
.content-product__item .wishlist-button.in-wishlist:hover svg {
  fill: rgba(10, 10, 10, 0.7137254902);
}
.content-product__item .wishlist-button svg {
  width: 2.4rem;
  height: 2.4rem;
  stroke: var(--color-black);
  transition: fill 0.2s ease-in;
}
.content-product__item .wishlist-button:hover svg {
  fill: rgba(10, 10, 10, 0.1254901961);
}
.content-product__item .wishlist-button.-added svg {
  fill: var(--color-black);
}
.content-product__item .product-out-of-stock {
  position: absolute;
  z-index: 6;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.5);
  display: flex;
  justify-content: center;
  align-items: center;
}
.content-product__item .product-out-of-stock .unstock-notice {
  background-color: var(--color-transparent);
  text-transform: uppercase;
  padding: 1.8rem 2.4rem;
}
.content-product__item .info {
  padding: clamp(1.6rem, 2vw, 2.4rem);
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
  height: 100%;
  color: var(--color-black);
  font-weight: 500;
  background-color: #fff;
  transition: background 0.4s ease;
}
.content-product__item .info .product-name {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}
.content-product__item .info .actions {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.content-product__item .info .actions .price {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  column-gap: 1.6rem;
  row-gap: 0.4rem;
  color: var(--color-haki);
}
.content-product__item .info .actions .price .new-price {
  font-size: clamp(1.4rem, 2vw, 2.4rem);
}
.content-product__item .info .actions .price .new-price.sale {
  color: var(--color-red);
}
.content-product__item .info .actions .price .old-price {
  font-size: clamp(1.2rem, 2vw, 1.6rem);
  text-decoration: line-through;
  color: var(--color-haki);
}
.content-product__item:hover {
  transform: translateY(-0.4rem);
}
.content-product__item:hover .info {
  background-color: var(--color-grey);
}
.content-product__item:hover .image {
  filter: brightness(80%);
}

/*
.sixteen-nine {
	@include aspect-ratio(16,9);
}*/
/* Media Queries Breakpoints */
/**
* *******************
*  Usage examples
* *******************
*
//
//  use <=
*   ALWAYS use <= ( '<' with '=' character) for all breakpoints
*   when setting max-width, ex: max-width: 767px,
*
*   so max-width: 1440px  == media('<=desktop-l')
*
* ***********************************************
*
//  use >
*   ALWAYS use only > as single character for all breakpoints
*   when setting min-width, ex: min-width: 768px,
*
*   so min-width: 1025px  == media('>desktop')
*
*************************************************
*
*## EXAMPLE:
*
*   (min-width: 768px) and (max-width: 1024px)
*   =
*   media ('>tablet'), ('<=desktop')
*
//

 */
.my-account {
  padding-top: 0.8rem;
  background-color: var(--color-grey);
}
.my-account .wrapper {
  align-items: flex-start;
  gap: 3.2rem;
}
@media (max-width: 1029px) {
  .my-account .wrapper {
    flex-direction: column;
  }
}
.my-account .sidebar {
  flex: 3;
  background-color: #fff;
}
.my-account .sidebar .account-menu__list {
  list-style: none;
  display: flex;
  flex-direction: column;
}
@media (max-width: 1029px) {
  .my-account .sidebar .account-menu__list {
    flex-direction: row;
  }
}
.my-account .sidebar .account-menu__item {
  padding: clamp(0.8rem, 2vw, 1.6rem);
  gap: 0.8rem;
}
.my-account .sidebar .account-menu__item svg path {
  stroke: var(--color-haki);
}
.my-account .sidebar .account-menu__item.active {
  background-color: var(--color-haki);
  color: #fff;
}
.my-account .sidebar .account-menu__item.active svg path {
  stroke: #fff;
}
.my-account .sidebar .account-menu__item .arrow {
  justify-self: flex-end;
}
@media (max-width: 1029px) {
  .my-account .sidebar .account-menu__item {
    flex: 1;
    text-align: center;
  }
  .my-account .sidebar .account-menu__item .arrow {
    display: none;
  }
}
.my-account .sidebar .account-menu__link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: clamp(1rem, 2vw, 1.6rem);
}
.my-account .sidebar .account-menu__link .item-name {
  display: flex;
  gap: 0.8rem;
  align-items: center;
}
@media (max-width: 1029px) {
  .my-account .sidebar .account-menu__link {
    justify-content: center;
    align-items: center;
  }
  .my-account .sidebar .account-menu__link .item-name {
    flex-direction: column;
    height: 100%;
    font-size: clamp(1rem, 2vw, 1.4rem);
    justify-content: space-between;
  }
}
@media (max-width: 1029px) {
  .my-account .sidebar {
    width: 100%;
    flex: unset;
  }
}
.my-account .account-content {
  flex: 9;
  background-color: #fff;
  padding: clamp(2.4rem, 2vw, 4.8rem) clamp(1.6rem, 2vw, 4.8rem);
}
.my-account .account-content .account-greeting {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.my-account .account-content .wishlist-products__grid {
  position: relative;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(clamp(19rem, 25vw, 30rem), 1fr));
  gap: clamp(0.8rem, 2vw, 3.2rem);
  width: 100%;
  align-items: stretch;
}
@media (max-width: 1029px) {
  .my-account .account-content {
    flex: unset;
    width: 100%;
  }
}
@media (max-width: 574px) {
  .my-account {
    padding-left: 0;
    padding-right: 0;
  }
}

.account-control {
  background-color: var(--color-grey);
  padding: clamp(2.4rem, 4vw, 4.8rem) clamp(1.6rem, 3vw, 3.2rem);
}
.account-control__columns {
  margin: 0 auto;
  display: grid;
  gap: clamp(1.6rem, 3vw, 3.2rem);
  display: flex;
  flex-wrap: wrap;
  align-items: start;
}
.account-control__editing {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
}
.account-control__card {
  flex: 1 1 32rem;
  background: #fff;
  padding: clamp(2rem, 2.5vw, 3.2rem);
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.04);
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
  border: none;
}
.account-control__card-editing {
  width: 100%;
  background: #fff;
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
  border: none;
}
.account-control__title {
  font-size: 1.8rem;
  text-transform: uppercase;
  line-height: 1.2;
}
.account-control__subtitle {
  margin: -0.8rem 0 0.8rem;
  color: var(--color-grey-dark);
}
.account-control .woocommerce-form {
  display: grid;
  gap: 1.2rem;
  border: none !important;
}
.account-control .input-wrapper {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
}
.account-control .input-wrapper .thin-input {
  width: 100%;
}
.account-control .input-wrapper .error-tip {
  color: var(--color-alert);
  font-size: 1.2rem;
  min-height: 1.4rem;
}
.account-control .account-control__hint {
  font-size: 1.4rem;
  color: var(--color-grey-dark);
}
.account-control .account-control__hint a {
  color: var(--color-haki);
  font-weight: 600;
}
.account-control .form-row {
  margin-top: 0.4rem;
}
.account-control .checkbox {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  cursor: pointer;
}

.account-content-wrapper {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
}

.edit-account {
  width: 100%;
}
.edit-account .account-control__columns {
  gap: clamp(1.6rem, 2vw, 2.4rem);
}
.edit-account .account-control__card-editing {
  background: none;
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
}
.edit-account .form-grid {
  display: grid;
  gap: 1.2rem;
}
.edit-account .form-grid.-two {
  grid-template-columns: repeat(auto-fit, minmax(24rem, 1fr));
}
.edit-account .form-grid.-one {
  grid-template-columns: 1fr;
}
.edit-account .cta-button {
  width: fit-content;
}

.order-details-custom {
  margin-top: 1.6rem;
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
}
.order-details-custom .card {
  background: #fff;
  border: 1px solid var(--color-beige);
}
.order-details-custom__head {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr 1fr;
  font-weight: 600;
  font-size: 1.6rem;
  padding: 1.8rem 1.6rem;
  background-color: rgba(174, 173, 110, 0.1647058824);
}
.order-details-custom__body {
  display: flex;
  flex-direction: column;
}
.order-details-custom__row {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr 1fr;
  align-items: center;
  gap: 1.2rem;
  padding: 1.2rem;
  border-bottom: 1px solid var(--color-beige);
}
.order-details-custom__row:last-child {
  border: none;
}
.order-details-custom .item-product {
  display: flex;
  align-items: center;
  gap: 1.2rem;
}
.order-details-custom .item-product .thumb img {
  width: 7.2rem;
  height: 7.2rem;
  object-fit: cover;
}
.order-details-custom .item-product .info {
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
}
.order-details-custom .item-product .info .title {
  font-weight: 600;
  font-size: 1.5rem;
  line-height: 1.3;
}
.order-details-custom .item-product .info .review {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  color: var(--color-haki);
  font-weight: 600;
}
.order-details-custom .item-product .info .review a {
  color: inherit;
  text-decoration: none;
}
.order-details-custom .item-size,
.order-details-custom .item-qty,
.order-details-custom .item-price {
  font-size: 1.4rem;
  font-weight: 500;
}
.order-details-custom .price-old {
  text-decoration: line-through;
  color: #666;
}
.order-details-custom .price-new {
  color: #c10000;
  font-weight: 700;
}
.order-details-custom__meta {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(26rem, 1fr));
  gap: 1.2rem;
}
.order-details-custom .meta-card {
  background: #fff;
  border: var(--color-beige) 1px solid;
}
.order-details-custom .meta-card__header {
  background-color: rgba(174, 173, 110, 0.1647058824);
  padding: 1.8rem 1.6rem;
}
.order-details-custom .meta-card__content {
  padding: 1.8rem 1.6rem;
}
.order-details-custom .meta-card h4 {
  font-size: 1.8rem;
  font-weight: 600;
}
.order-details-custom .meta-card p {
  margin: 0 0 0.6rem;
  font-size: 1.4rem;
}
.order-details-custom .meta-card p strong {
  display: inline-block;
  min-width: 12rem;
}
.order-details-custom .meta-card .total-line {
  margin-top: 1.2rem;
}
.order-details-custom .meta-card .total-line .total-amount {
  color: var(--color-haki);
  font-weight: 700;
}
@media (max-width: 766px) {
  .order-details-custom__head, .order-details-custom__row {
    grid-template-columns: 1fr;
  }
  .order-details-custom .item-product {
    grid-template-columns: 1fr;
  }
}

.my-orders {
  display: grid;
}
.my-orders__header {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr));
  background: var(--color-grey);
  padding: 1.2rem 1.6rem;
  font-weight: 600;
  font-size: 1.4rem;
}
@media (max-width: 768px) {
  .my-orders__header {
    display: none;
  }
}
.my-orders__body {
  display: grid;
}
.my-orders__row {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr));
  padding: 1.6rem;
  border: 1px solid var(--color-grey);
}
.my-orders__row--completed .my-orders__cell--order-status {
  font-weight: 500;
  color: var(--color-grey-dark);
}
.my-orders__row--processing .my-orders__cell--order-status {
  font-weight: 500;
  color: var(--color-green);
}
.my-orders__row--cancelled .my-orders__cell--order-status {
  font-weight: 500;
  color: var(--color-red);
}
.my-orders__cell {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
  font-size: 1.4rem;
  font-weight: 400;
}
.my-orders__cell a {
  font-size: 1.4rem;
  font-weight: 400;
}
@media (max-width: 768px) {
  .my-orders__cell::before {
    content: attr(data-title);
    font-weight: 600;
    color: #777;
    font-size: 1.2rem;
  }
}
.my-orders__actions {
  display: flex;
  gap: 0.8rem;
  flex-wrap: wrap;
}
.my-orders__action {
  padding: 0.6rem 1.2rem;
  font-size: 1.2rem;
  border-radius: 0.4rem;
}

.order-details {
  display: grid;
  gap: 2rem;
  /* Actions */
  /* Totals */
  /* Mobile */
}
.order-details__header {
  display: grid;
  grid-template-columns: 2fr 1fr;
  padding: 1.6rem;
  background: #f6f6f0;
  font-weight: 600;
  border-radius: 0.6rem;
}
.order-details__body {
  display: grid;
  gap: 1.2rem;
}
.order-details__row {
  display: grid;
  grid-template-columns: 2fr 1fr;
  padding: 1.6rem 1.2rem;
  border-bottom: 1px solid #e5e5e5;
}
.order-details__row:last-child {
  border-bottom: none;
}
.order-details__product {
  display: flex;
  align-items: flex-start;
  gap: 1.6rem;
}
.order-details__thumb img {
  width: 90px;
  height: 90px;
  object-fit: cover;
  border-radius: 4px;
}
.order-details__title {
  font-size: 1.6rem;
  font-weight: 600;
  margin-bottom: 0.4rem;
}
.order-details__qty {
  margin-top: 0.4rem;
  color: #666;
}
.order-details__price-old {
  text-decoration: line-through;
  color: #aaa;
  font-size: 1.4rem;
  display: block;
}
.order-details__price-new {
  color: #c40000;
  font-weight: 700;
  font-size: 1.6rem;
  display: block;
}
.order-details__price {
  font-weight: 600;
  font-size: 1.6rem;
}
.order-details__actions {
  display: flex;
  gap: 1rem;
  flex-wrap: wrap;
  padding-top: 1rem;
}
.order-details__totals {
  border-top: 1px solid #e3e3e3;
  padding-top: 1.4rem;
  display: grid;
  gap: 0.8rem;
}
.order-details__total-row {
  display: flex;
  justify-content: space-between;
}
.order-details__total-label {
  font-weight: 600;
}
@media (max-width: 768px) {
  .order-details__row, .order-details__header {
    grid-template-columns: 1fr 1fr;
  }
}

/*
.sixteen-nine {
	@include aspect-ratio(16,9);
}*/
/* Media Queries Breakpoints */
/**
* *******************
*  Usage examples
* *******************
*
//
//  use <=
*   ALWAYS use <= ( '<' with '=' character) for all breakpoints
*   when setting max-width, ex: max-width: 767px,
*
*   so max-width: 1440px  == media('<=desktop-l')
*
* ***********************************************
*
//  use >
*   ALWAYS use only > as single character for all breakpoints
*   when setting min-width, ex: min-width: 768px,
*
*   so min-width: 1025px  == media('>desktop')
*
*************************************************
*
*## EXAMPLE:
*
*   (min-width: 768px) and (max-width: 1024px)
*   =
*   media ('>tablet'), ('<=desktop')
*
//

 */
.cart-full {
  background-color: var(--color-grey);
  padding-top: calc(var(--header-height) + clamp(1.6rem, 3vw, 2.4rem));
}
.cart-full .wrapper .woocommerce {
  width: 100%;
  display: flex;
  align-items: flex-start;
  gap: clamp(1.6rem, 3vw, 3.2rem);
}
.cart-full .wrapper .woocommerce .woocommerce-cart-form {
  padding: 4.8rem clamp(1.6rem, 3vw, 4.8rem);
  background-color: #fff;
  flex: 7;
}
@media (max-width: 1023px) {
  .cart-full .wrapper .woocommerce {
    flex-direction: column;
  }
  .cart-full .wrapper .woocommerce .woocommerce-cart-form {
    flex: unset;
  }
}
.cart-full__product-list {
  display: flex;
  flex-direction: column;
  gap: clamp(1.6rem, 3vw, 3.2rem);
}
.cart-full .cart-totals {
  position: sticky;
  top: 4rem;
  padding: 4.8rem clamp(1.6rem, 3vw, 4.8rem);
  background-color: #fff;
  flex: 5;
}
.cart-full .cart-totals .separator-h {
  margin: clamp(1.6rem, 3vw, 2.4rem) 0;
}
.cart-full .cart-totals .coupon .coupon-row {
  display: flex;
  align-items: stretch;
}
.cart-full .cart-totals__content {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
}
.cart-full .cart-totals__list {
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
}
.cart-full .cart-totals .cart-row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 2.4rem;
}
.cart-full .cart-totals .cart-row .cart-label {
  font-size: 1.6rem;
  color: var(--color-black);
}
.cart-full .cart-totals .cart-row .cart-value {
  font-size: 1.6rem;
  font-size: 600;
  color: var(--color-black);
}
.cart-full .cart-totals__checkout {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
}
@media (max-width: 1023px) {
  .cart-full .cart-totals {
    flex: unset;
    width: 100%;
  }
}
.cart-full .empty-cart {
  width: 100%;
}
.cart-full .empty-cart__content {
  margin-top: 3.2rem;
  background-color: #fff;
  padding: clamp(10.4rem, 3vw, 14rem) clamp(1.6rem, 3vw, 14rem);
}
.cart-full .empty-cart__content .is-wysiwyg {
  align-items: center;
}
@media (max-width: 574px) {
  .cart-full {
    padding-left: 0;
    padding-right: 0;
  }
}

/*
.sixteen-nine {
	@include aspect-ratio(16,9);
}*/
/* Media Queries Breakpoints */
/**
* *******************
*  Usage examples
* *******************
*
//
//  use <=
*   ALWAYS use <= ( '<' with '=' character) for all breakpoints
*   when setting max-width, ex: max-width: 767px,
*
*   so max-width: 1440px  == media('<=desktop-l')
*
* ***********************************************
*
//  use >
*   ALWAYS use only > as single character for all breakpoints
*   when setting min-width, ex: min-width: 768px,
*
*   so min-width: 1025px  == media('>desktop')
*
*************************************************
*
*## EXAMPLE:
*
*   (min-width: 768px) and (max-width: 1024px)
*   =
*   media ('>tablet'), ('<=desktop')
*
//

 */
section.checkout {
  padding-top: calc(var(--header-height) + clamp(1.6rem, 3vw, 2.4rem));
}

.checkout {
  background-color: var(--color-grey);
}
.checkout .woocommerce-NoticeGroup {
  display: none;
}
.checkout .wrapper .woocommerce {
  width: 100%;
}
.checkout .wrapper .woocommerce-checkout {
  display: flex;
  align-items: flex-start;
  gap: 3.2rem;
}
.checkout .wrapper .woocommerce-checkout .checkout-fields {
  flex: 7;
  background-color: #fff;
  padding: 4.8rem clamp(1.6rem, 3vw, 4.8rem);
}
.checkout .wrapper .woocommerce-checkout .checkout-fields .woocommerce-billing-fields__field-wrapper {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
}
.checkout .wrapper .woocommerce-checkout .checkout-fields .woocommerce-shipping-methods {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
}
.checkout .wrapper .woocommerce-checkout .checkout-fields .iti {
  width: 100%;
}
.checkout .wrapper .woocommerce-checkout .checkout-fields .checkout-section {
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
}
.checkout .wrapper .woocommerce-checkout .checkout-fields .checkout-section .fields-row {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(30rem, 1fr));
  gap: 2.4rem;
}
.checkout .wrapper .woocommerce-checkout .checkout-fields .checkout-section .fields-row .form-row {
  float: none;
  width: 100%;
}
.checkout .wrapper .woocommerce-checkout .woocommerce-checkout-review-order {
  position: sticky;
  top: 6rem;
  flex: 5;
  min-width: 70rem;
  background-color: #fff;
  padding: 4.8rem clamp(1.6rem, 3vw, 4.8rem);
}
.checkout .wrapper .woocommerce-checkout .woocommerce-checkout-review-order .coupon .coupon-row {
  display: flex;
  align-items: stretch;
}
@media (max-width: 1179px) {
  .checkout .wrapper .woocommerce-checkout {
    flex-direction: column;
  }
  .checkout .wrapper .woocommerce-checkout .checkout-fields {
    flex: unset;
    width: 100%;
  }
  .checkout .wrapper .woocommerce-checkout .woocommerce-checkout-review-order {
    flex: unset;
    width: 100%;
    min-width: unset;
  }
}
.checkout .order-completed {
  background-color: #fff;
  padding: 10.4rem clamp(1.6rem, 3vw, 10.4rem);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}
.checkout .order-completed .is-wysiwyg {
  max-width: 80rem;
  align-items: center;
}
.checkout .order-completed .is-wysiwyg .accent-block {
  align-items: center;
  margin-top: clamp(3.2rem, 4vw, 6.4rem);
}
@media (max-width: 574px) {
  .checkout {
    padding-left: 0;
    padding-right: 0;
  }
}

.checkout-review {
  display: grid;
  gap: 2rem;
  /* Totals */
  /* Mobile */
}
.checkout-review__header {
  display: grid;
  grid-template-columns: 2fr 1fr;
  background: rgba(174, 173, 110, 0.1647058824);
  padding: 1.2rem 1.6rem;
  font-weight: 600;
  font-size: 1.4rem;
}
.checkout-review__items {
  display: grid;
  gap: 1.2rem;
}
.checkout-review__row {
  display: grid;
  grid-template-columns: 2fr 1fr;
  padding: 1.6rem 1rem;
}
.checkout-review__row:last-child {
  border-bottom: none;
}
.checkout-review__product {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
}
.checkout-review__title {
  font-size: 1.6rem;
  font-weight: 600;
}
.checkout-review__qty {
  font-size: 1.4rem;
  color: #666;
}
.checkout-review__meta {
  font-size: 1.3rem;
  color: #444;
}
.checkout-review__subtotal, .checkout-review__col--subtotal {
  text-align: right;
}
.checkout-review__totals {
  display: grid;
  gap: 0.8rem;
  padding-top: 0.4rem;
}
.checkout-review__total-row {
  display: flex;
  justify-content: space-between;
  font-size: 1.4rem;
  padding: 1.6rem 1.6rem;
}
.checkout-review__total-value {
  display: flex;
  align-items: center;
}
.checkout-review__total-value a {
  aspect-ratio: 1/1;
  width: 2.4rem;
  margin-left: 0.8rem;
}
.checkout-review__total-label {
  font-weight: 600;
}
.checkout-review__total-row--grand {
  font-size: 1.8rem;
  font-weight: 700;
  margin-top: 0.8rem;
}
.checkout-review .cart-totals__list {
  margin-bottom: 1.6rem;
}
@media (max-width: 768px) {
  .checkout-review__header, .checkout-review__row {
    grid-template-columns: 1fr 1fr;
  }
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIl9fY29yZS9taXhpbnMvX2FzcGVjdC1yYXRpby5zY3NzIiwiX19jb3JlL21peGlucy9fcGFnZS1zaXplcy5zY3NzIiwiX19jb3JlL3NldHRpbmdzL19zZXR0aW5ncy1tYWluLnNjc3MiLCJfX2NvcmUvbWl4aW5zL19pbmNsdWRlLW1lZGlhLnNjc3MiLCJfX2NvcmUvc2V0dGluZ3MvX3NldHRpbmdzLWZvbnQuc2NzcyIsIl9fY29yZS9taXhpbnMvX2ZvbnQtZmFjZS5zY3NzIiwiX2xheW91dC9fd3lzaXd5Zy5zY3NzIiwiX2xheW91dC9fcGFnZTQwNC5zY3NzIiwiX2xheW91dC9fX2hlYWRlci5zY3NzIiwiX2xheW91dC9fX2Zvb3Rlci5zY3NzIiwiX2xheW91dC9fbW9kYWxzLnNjc3MiLCJfbGF5b3V0L19taW5pLWNhcnQuc2NzcyIsIl9sYXlvdXQvX3NpZGUtY2FydC5zY3NzIiwiX2xheW91dC9fX2J0bnMuc2NzcyIsIl9sYXlvdXQvX19maWVsZHMuc2NzcyIsIl9sYXlvdXQvX19iYXNlLnNjc3MiLCJfY29tcG9uZW50cy9fYnJlYWRjcnVtYnMuc2NzcyIsIl9jb21wb25lbnRzL3NlbGVjdC5zY3NzIiwiX2NvbXBvbmVudHMvYWxlcnRzLnNjc3MiLCJfY29tcG9uZW50cy9fbG9hZGVyLnNjc3MiLCJfY29tcG9uZW50cy9fYWNjb3VudC1jb250cm9sLnNjc3MiLCJfY29tcG9uZW50cy9fY2FydC1wcm9kdWN0LWl0ZW0uc2NzcyIsIl9jb21wb25lbnRzL19jb29raWUtY29uc2VudC5zY3NzIiwiX2NvbXBvbmVudHMvX3NpemUtZ3JpZC5zY3NzIiwiX3RlbXBsYXRlLXBhcnRzL2hlcm8uc2NzcyIsIl90ZW1wbGF0ZS1wYXJ0cy9oZXJvLTIuc2NzcyIsIl90ZW1wbGF0ZS1wYXJ0cy9wcm9wb3NpdGlvbnMuc2NzcyIsIl90ZW1wbGF0ZS1wYXJ0cy9wcm9wb3NpdGlvbnNfMi5zY3NzIiwiX3RlbXBsYXRlLXBhcnRzL2Fib3V0LXVzLnNjc3MiLCJfdGVtcGxhdGUtcGFydHMvYmVuZWZpdHMuc2NzcyIsIl90ZW1wbGF0ZS1wYXJ0cy92aWRlby1zZWN0aW9uLnNjc3MiLCJfdGVtcGxhdGUtcGFydHMvc2VydmljZXMuc2NzcyIsIl90ZW1wbGF0ZS1wYXJ0cy9jdGEtYmxvY2stMS5zY3NzIiwiX3RlbXBsYXRlLXBhcnRzL2N0YS1ibG9jay0yLnNjc3MiLCJfdGVtcGxhdGUtcGFydHMvcHJvdmlkZWQtZmFxLnNjc3MiLCJfdGVtcGxhdGUtcGFydHMvY29vcGVyYXRpb24uc2NzcyIsIl90ZW1wbGF0ZS1wYXJ0cy9zZW8tdGFicy5zY3NzIiwiX3RlbXBsYXRlLXBhcnRzL2Jhbm5lci5zY3NzIiwiX3RlbXBsYXRlLXBhcnRzL2JpZy1iYW5uZXIuc2NzcyIsIl90ZW1wbGF0ZS1wYXJ0cy92aWRlby1iYW5uZXIuc2NzcyIsIl90ZW1wbGF0ZS1wYXJ0cy9nYWxsZXJ5LnNjc3MiLCJfdGVtcGxhdGUtcGFydHMvc3BlY2lhbC1wcm9wb3NhbC5zY3NzIiwiX3RlbXBsYXRlLXBhcnRzL3Byb21vLnNjc3MiLCJtYWluLnNjc3MiLCJfd29vY29tbWVyY2UvYmFzZS5zY3NzIiwiX3dvb2NvbW1lcmNlL2J0bnMuc2NzcyIsIl93b29jb21tZXJjZS9oZXJvLWJhbm5lci5zY3NzIiwiX3dvb2NvbW1lcmNlL2NhdGVnb3J5LWNhdGFsb2cuc2NzcyIsIl93b29jb21tZXJjZS9jYXRlZ29yeS1wcm9kdWN0cy5zY3NzIiwiX3dvb2NvbW1lcmNlL3Byb2R1Y3QtZGVzY3JpcHRpb24uc2NzcyIsIl93b29jb21tZXJjZS9wcm9kdWN0LWluZm8uc2NzcyIsIl93b29jb21tZXJjZS9wcm9kdWN0LXByb3BlcnRpZXMuc2NzcyIsIl93b29jb21tZXJjZS9wcm9kdWN0LWZvb3Rlci5zY3NzIiwiX3dvb2NvbW1lcmNlL2NvbnRlbnQtcHJvZHVjdC5zY3NzIiwiX3dvb2NvbW1lcmNlL215LWFjY291bnQuc2NzcyIsIl93b29jb21tZXJjZS9jYXJ0LnNjc3MiLCJfd29vY29tbWVyY2UvY2hlY2tvdXQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFvQkE7QUFBQTtBQUFBO0FBQUE7QUNwQkE7QUFhQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUFBO0FDYkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBOztBQ3drQkE7RUR2bEJKO0lBa0JRO0lBQ0E7SUFDQTs7O0FDbWtCSjtFRHZsQko7SUF3QlE7Ozs7QUV4QlI7QUM4Qkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLEtBUk07O0FBR1I7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLEtBUk07O0FBR1I7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLEtBUk07O0FBR1I7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLEtBUk07O0FBR1I7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLEtBUk07O0FEVlo7QUFFQTtFQUVDOztBRGtrQkc7RUNwa0JKO0lBS0U7OztBRCtqQkU7RUNwa0JKO0lBU0U7Ozs7QUU1QkY7QUFBQTtFQUVJO0VBQ0E7RUFDQTs7QUFFQTtBQUFBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBS0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7RUFLSTs7QUFJUjtBQUFBO0VBQ0k7RUFDQTtFQUNBOztBQUVBO0FBQUE7RUFDSTs7QUFHSjtBQUFBO0VBQ0k7O0FBRUE7QUFBQTtBQUFBO0VBRUk7O0FBS1o7QUFBQTtBQUFBO0FBQUE7RUFFSTtFQUNBO0VBRUE7O0FBR0o7QUFBQTtBQUFBO0FBQUE7RUFFSTtFQUNBOztBQUdBO0FBQUE7QUFBQTtBQUFBO0VBQ0k7O0FBSVI7QUFBQTtBQUFBO0FBQUE7RUFFSTtFQUNBO0VBQ0E7O0FBSUo7QUFBQTtBQUFBO0FBQUE7RUFFSTtFQUNBOztBQUdKO0FBQUE7QUFBQTtBQUFBO0VBRUk7RUFDQTtFQUNBOztBQUdKO0FBQUE7QUFBQTtBQUFBO0VBRUk7RUFDQTs7QUFHSjtBQUFBO0VBQ0k7O0FBR0o7QUFBQTtFQUNJOztBQUdKO0FBQUE7RUFDSTs7QUFHSjtBQUFBO0VBQ0k7O0FBR0o7QUFBQTtFQUNJO0VBQ0E7RUFDQTs7QUFLSjtBQUFBO0VBQ0k7RUFDQTs7QUFLSjtBQUFBO0VBQ0k7O0FBR0E7QUFBQTtFQUNJOztBQUlKO0FBQUE7RUFDSTtFQUNBO0VBQ0E7O0FBT0E7QUFBQTtFQUNJOztBQUtaO0FBQUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtBQUFBO0VBQ0k7RUFDQTtFQUNBOztBQUdKO0FBQUE7RUFDSTs7QUFHSjtBQUFBO0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUlKO0FBQUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtBQUFBO0VBQ0k7RUFDQTtFQUNBOztBQUNBO0FBQUE7RUFDSTs7QUg4WlI7RUd6Wkk7QUFBQTtJQUNJOztFQUVBO0FBQUE7QUFBQTtBQUFBO0lBRUk7Ozs7QUM5TGhCO0VBRUM7RUFDRDs7QUFDQztFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDQztFQUNBO0VBQ0E7O0FBRUE7RUFDQztFQUNBOztBQUdEO0VBQ0M7O0FBR0Q7RUFDQzs7O0FDL0JKO0VBQ0k7RUFNQTs7QUxnbEJBO0VLdmxCSjtJQUlROzs7O0FBTVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTs7QUFFQTtFQUNJOztBQUtaO0VBQ0k7O0FBRUE7RUFDSTs7QUFLSjtFQUNJO0VBQ1Q7O0FBRUE7RUFDQztFQUNBO0VBQ0E7RUFFQTtFQUNBOztBQUVRO0FBQUE7RUFFSTs7QUFLUjtFQUNJO0VBQ1Q7O0FBQ0E7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVRO0FBQUE7RUFFSTs7QUFNUjtFQUNJOztBQUlBO0VBQ0k7O0FBTUE7RUFDSTs7QUFNaEI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBOztBQUlSO0VBQ0k7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNJO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7O0FBSUE7RUFDSTtFQUNBOztBQUtaO0VBQ0k7O0FBTVI7RUFDSTs7QUFHSjtFQUNJOztBQUtaO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTs7QUFHSTtFQUNJOztBQUlSO0VBQ0k7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUlSO0VBQ0k7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBOztBQUlBO0VBQ0k7RUFDQTs7QUFJUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQU1oQjtFQUNJOztBQUVBO0VBQ0k7O0FBR0o7RUFDSTs7QUFJUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUlBO0VBQ0k7O0FBR0o7RUFDSTs7QUFHSjtFQUNJOztBQUtaO0VBQ0k7O0FBR0o7RUFDSTs7QUw0Uko7RUs3a0JKO0lBcVRROztFQUVBO0lBQ0k7SUFDQTtJQUNBOztFQUVBO0lBQ0k7O0VBR0o7SUFDSTs7RUFHSjtJQUNJOztFQUdKO0lBQ0k7SUFDQTtJQUNBOztFQUVBO0lBQ0k7O0VBR0o7SUFDSTtJQUNBOztFQUtaO0lBQ0k7O0VBR0k7SUFDSTs7RUFHSjtJQUNJOztFQUtaO0lBQ0k7O0VBR0o7SUFDSTs7OztBQUtaO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJOztBQUdKO0VBQ0k7RUFDQTtFQUNOO0VBQ0E7O0FBR0U7RUFDSTtFQUNBOztBQUVBO0VBQ0k7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7O0FMOEtwQjtFS2hMZ0I7SUFLUTtJQUNBOzs7QUwwS3hCO0VLdEtnQjtJQUVRO0lBQ0E7OztBQUlSO0VBQ0k7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTs7QUFJUjtFQUNJOztBQUlSO0VBQ0k7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7O0FMMkh4QjtFS3ZId0I7SUFDSTs7O0FBUXhCO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQU5KO0lBT1E7SUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQU5KO0lBT1E7SUFDQTs7O0FBS1o7RUFDSTtFQUNBO0VBQ1o7RUFDWTtFQUNBOztBQUVBO0VBQ0k7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7O0FBRWhCO0VBQ0M7OztBQVNHO0VBQ0k7O0FBSVE7RUFDSTs7QUFJUjtFQUNJOztBQUdJO0VBQ0k7O0FBR0o7RUFDSTs7QUFPWjtFQUNJOztBQUVBO0VBQ0k7O0FBSUE7RUFDSTs7QUFHSjtFQUNJOztBQU1oQjtFQUNJOztBQUVBO0VBQ0k7O0FBS0k7RUFDSTs7QUFLWjtFQUNJOztBQUdJO0VBQ0k7O0FMWHhCO0VLbUJRO0lBQ0k7O0VBRUE7SUFDSTs7RUFFQTtJQUNJOztFQUdKO0lBQ0k7O0VBSUE7SUFDSTtJQUNyQjs7RUFFcUI7SUFDcEI7SUFDd0I7O0VBS1o7SUFDSTtJQUNBOztFQUVBO0lBQ0k7O0VBR0o7SUFDSTs7RUFJQTtJQUNJOztFQUVBO0lBQ0k7O0VBTUE7SUFDSTs7RUFPWjtJQUNJOztFQUVBO0lBQ0k7O0VBSVI7SUFDSTs7RUFLSjtJQUNJOztFQU1BO0lBQ0k7O0VBRUE7SUFDSTs7RUFJUjtJQUNJOztFQUtKO0lBQ0k7O0VBRUE7SUFDSTs7O0FBWWhDO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FMdElSO0VLK0hJO0lBVVE7OztBQUdKO0VBQ0k7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTs7QUFLWjtFQUNJOztBQUdJO0VBQ0k7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFPaEI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTs7QUFDTDtFQUNBO0VBQ0E7O0FBRUs7RUFDSTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7QUFHSjtFQUNJOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7QUFJUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJOztBQUdKO0VBQ0k7RUFDQTs7QUFJUjtFQUNJO0VBQ0E7O0FBR0o7RUFHSTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTs7QUFJUjtFQUNJO0VBQ0E7RUFFQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7OztBQ3I1QmhCO0VBQ0k7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ047O0FBRVU7RUFDSTtFQUNBOztBQU9JO0VBQ0k7RUFDQTs7QUFPcEI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTs7QUFFQTtFQUNJOztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7QUFJUjtFQUNJO0VBQ0E7O0FBRUE7RUFDSTs7QUFJQTtFQUNJO0VBQ0E7O0FOd2dCaEI7RU10aUJBO0lBb0NROztFQUNBO0lBQ0k7SUFDQTtJQUNBOztFQUVBO0lBQ0k7SUFDQTtJQUNBOzs7QUFNaEI7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTs7QUFFQTtFQUNJOztBTnVlWjtFTWplSTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBOzs7O0FDNUhSO0VBQ0k7OztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7O0FBR0E7RUFDSTtFQUNBO0VBRUE7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBRUE7RUFDQTs7QUFJQTtFQUNJO0VBQ0E7RUFDQTs7QUFHSjtFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7O0FBS1o7RUFDSTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7QUFRcEI7RUFDSTtFQUNBOztBQUVBO0VBQ0k7O0FQcWRoQjtFT2psQko7SUF3SVE7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7RUFFQTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7O0VBRUE7SUFFSTtJQUNBO0lBQ0E7SUFDQTs7RUFFQTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7RUFFQTtJQUNJO0lBQ0E7O0VBR0o7SUFDSTs7OztBQy9LcEI7RUFDSTs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBOztBQU9BO0VBQ0k7RUFDQTtFQUVBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBRUE7RUFDQTs7QUFJQTtFQUNJO0VBQ0E7RUFDQTs7QUFHSjtFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBOztBQUtaO0VBQ0k7O0FBS1I7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNJOztBUjJmWjtFUWpsQko7SUFtR1E7SUFFQTs7RUFFQTtJQUNJO0lBQ0E7SUFDQTs7RUFFQTtJQUNJO0lBQ0E7SUFDQTs7RUFFQTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7RUFFQTtJQUNJO0lBQ0E7O0VBR0o7SUFDSTs7OztBQ25JcEI7RUFFSTs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7QUFHSjtFQUVJOztBQUdKO0VBQ0k7O0FBR0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFFQTtFQUNBOztBQUlBO0VBQ0k7RUFDQTtFQUNBOztBQUdKO0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7O0FBS1o7RUFDSTs7QUFNUjtFQUdJO0VBQ0E7RUFDQTs7QUFHSjtFQUVJO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTs7QUFDQTtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7QVRtZVo7RVMva0JKO0lBeUhRO0lBRUE7O0VBRUE7SUFDSTtJQUNBO0lBQ0E7O0VBRUE7SUFDSTtJQUNBO0lBQ0E7O0VBRUE7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7O0VBRUE7SUFDSTtJQUNBOztFQUdKO0lBQ0k7Ozs7QUFZeEI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7O0FBRUE7RUFDSTs7QUFHSjtFQUNJO0VBQ0E7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBRUE7RUFDQTs7QVQwV0o7RVN0V0k7SUFDSTs7O0FUcVdSO0VTaldJO0lBQ0k7Ozs7QUN2UFo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0k7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7O0FBR0o7RUFDSTs7QUFFSjtFQUNJOztBQUVKO0VBQ0k7OztBQzdCUjtFQUNJOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7O0FBSVI7RUFDSTtFQUNBOzs7QUFJUjtFQTZDSTtFQUNBO0VBQ0E7O0FBN0NJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBOztBQVNaO0VBQ0k7O0FBSUE7RUFDSTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTs7QUFJQTtFQUNJOztBQUtaO0VBQ0k7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBS1o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUtaO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxZQUNBOztBQUlBO0VBQ0k7O0FBR0o7RUFDSTs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7O0FBR0o7RUFDSTs7O0FBR1I7RUFDSTs7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJOztBQUdKO0VBQ0k7O0FBR0o7RUFDSTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFJUjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7OztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJOztBQUdKO0VBQ0k7OztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7O0FBR1I7QUFBQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVGO0FBQUE7QUFBQTtFQUdFO0VBQ0E7RUFDQTtFQUNNO0VBQ0E7OztBQUVSO0VBQ0k7SUFDSTs7RUFHSjtJQUNJOztFQUdKO0lBQ0k7OztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7QUFBQTtFQUVJO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTs7O0FBR0o7RUFDSTtFQUVBO0VBQ0E7RUFDQTs7QUFHSTtFQUNJO0VBQ0E7RUFDQTs7QUFHSjtFQUNJOztBQUlBO0VBQ0k7O0FBS1o7RUFDSTtFQUNBOztBQUdKO0VBQ0k7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFJUjtFQUNJOzs7QUFJUjtFQUNJO0VBQ0E7RUFDQTs7O0FBSUo7RUFDQzs7O0FBRUQ7RUFDQzs7O0FBRUQ7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUo7RUFDSTs7O0FDcmZKO0FBQUE7QUFBQTtFQUdJO0VBQ0E7RUFDQTs7O0FBR0o7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFFQTs7QVpzakJBO0VZL2tCSjtJQTJCUTs7OztBQUlSO0VBQ0k7OztBQUdKO0VBQ0k7O0FBRUE7RUFDSTs7QUFHSjtFQUNJOzs7QUFJUjtFQUNJO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7QUFBQTtFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7RUFHSTtFQUNBO0VBQ0E7RUFDQTs7QUFJUjtFQUNJOztBWjBmSjtFWXJmUTtJQUNJOzs7O0FBTWhCO0FBQUE7RUFFSTtFQUNBO0VBQ0E7RUFDQTs7O0FBTUE7QUFBQTtBQUFBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7QUFBQTtBQUFBO0VBQ0k7RUFDQTtFQUNBOztBWjBkUjtFWTdkSTtBQUFBO0FBQUE7SUFNUTs7OztBQUtoQjtFQUNDOzs7QUFFRDtFQUNJOztBQUVBO0VBQ0k7OztBQUlSO0FBQUE7RUFFSTtFQUNBOzs7QUFHSjtBQUFBO0VBRUk7RUFDQTs7QUFFQTtBQUFBO0VBQ0k7OztBQUlSO0FBQUE7RUFFSTtFQUNBO0VBQ0E7OztBQUdKO0FBQUE7RUFFSTtFQUNBOzs7QUFHSjtBQUFBO0VBRUk7RUFDQTs7O0FBR0o7QUFBQTtFQUVJO0VBQ0E7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJOztBQUdKO0VBQ0k7OztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7QUFFQTtFQUNJOztBQUlSO0VBQ0k7O0FBR0o7RUFDSTs7O0FBSVI7RUFDSTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBOztBQUlSO0VBQ0k7O0FBR0o7RUFDSTs7QUFLSjtFQUNJO0VBQ0E7OztBQUtaO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7RUFDQTs7O0FBRUo7RUFDQzs7O0FBRUQ7RUFDSTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7QUFHSjtFQUNJOzs7QUFJUjtFQUNJO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7OztBWndQSjtFWW5QQTtJQUNJOzs7QUFJUjtFQUNJOzs7QUFJSjtFQUNJOztBQUVBO0VBQ0k7RUFDQTtFQUNBOztBQUVBO0VBQ0k7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7O0FaOE1SO0VZdE5BO0lBWVE7OztBWjBNUjtFWXROQTtJQWdCUTtJQUNBOzs7QVpxTVI7RVl0TkE7SUFxQlE7OztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7O0FBR0k7QUFBQTtFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtBQUFBO0VBQ0k7RUFDQTtFQUNBOztBQUlSO0VBQ0k7RUFDQTtFQUNBOzs7QUN4Y3BCO0VBQ0k7RUFFQTtFQUNBO0VBQ0E7OztBQU9KO0VBQ0k7O0FBRUE7RUFDSTtFQUNOO0VBQ007RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7QUFFQTtFQUNJOzs7QUFPcEI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQy9DSjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTs7O0FBS0Y7RUFDRTtFQUNBO0VBQ0E7O0FBRUE7RUFDRTs7QUFLRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNFO0VBQ0E7O0FBRUE7RUFDRTs7QUFJSjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFFQTtFQUNFOztBQUlKO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDRTs7QUFPTjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQU1KO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBT047RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDRTtFQUNBOztBQU1KO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTs7QUFFQTtFQUNFOztBQU9OO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBT0Y7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTs7QUFPRjtFQUNFOztBQU1KO0VBQ0U7SUFDRTs7RUFHRjtJQUNFO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBOzs7QUFNSjtFQUNFO0VBQ0E7O0FBT0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNFO0VBQ0E7O0FBSUo7QUFBQTtBQUFBO0VBRUU7RUFDQTtFQUNBOztBQUdGO0VBQ0U7OztBQVFKO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDRTs7QUFFQTtFQUNFOztBQUtOO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDRTs7QUFFQTtFQUNFOztBQUtOO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOzs7QWpCL2NKO0FBQUE7QUFBQTtBQUFBO0FDcEJBO0FBYUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7QUFBQTtBaUJYQTtBQUFBO0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtBQUFBO0VBQ0k7RUFFQTtFQUNBO0VBQ0E7O0FBS0o7QUFBQTtFQUNJO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7O0FBR0o7QUFBQTtFQUNJO0VBRUE7RUFDQTtFQUNBOztBQUdKO0FBQUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtBQUFBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7QUFBQTtFQUNJO0VBQ0E7O0FBR0o7QUFBQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0FBQUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QWYyZ0JKO0VlcmxCSjtBQUFBO0lBOEVRO0lBQ0E7SUFDQTtJQUNBOzs7O0FBSVI7RUFDSTs7O0FDeEZKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBOzs7QUFHSjtBQUFBO0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7SUFDSTs7RUFHSjtJQUNJOztFQUdKO0lBQ0k7OztBQUlSO0VBQ0k7SUFDSTs7RUFHSjtJQUNJO0lBQ0E7SUFDQTs7RUFHSjtJQUNJO0lBQ0E7OztBQUlSO0VBQ0k7SUFDSTs7RUFHSjtJQUNJO0lBQ0E7SUFDQTs7RUFHSjtJQUNJO0lBQ0E7OztBQ3BGSjtFQUNJOzs7QUFNUjtFQUNJO0VBQ0E7RUFDQTs7QUFHSTtFQUdJO0VBQ0E7RUFDQTs7QUFNSjtFQUNJO0VBQ0E7RUFDQTs7QUFJSjtFQUNJOztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBOztBQUlSO0VBQ0k7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUNuRlo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7QUFJUjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBOztBQUVBO0VBQ0k7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7QUFFQTtFQUNJO0VBQ0E7O0FBSVI7RUFDSTs7QUFHSTtFQUNJOztBQUtaO0VBQ0k7O0FBS1o7RUFDSTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBOztBQUVBO0VBQ0k7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7O0FBTWhCO0VBQ0k7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7O0FDL0pwQjtFQUNJOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJOztBQUdKO0VBQ0k7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUlBO0VBQ0E7RUFDQTs7QUFTSjtFQUNJO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBRUk7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFJUjtFQUNJO0VBQ0E7RUFDQTs7QUFHSjtFQUNJOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7QUFJUjtFQUNJO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7QUFJUjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7QUFHSjtFQUNJO0VBQ0E7O0FBR0o7RUFDSTs7QUFHSjtFQUNJO0VBQ0E7O0FBRUE7RUFDSTtFQUNBOztBQUlSO0VBQ0k7RUFDQTs7QUFHSjtFQUNJOztBbkJpYVI7RW1CNVpJO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7RUFHSjtJQUNJOztFQUdKO0lBRUk7Ozs7QUN6TVo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7QUFHSjtFQUNJOztBQUVBO0VBQ0k7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTs7QUFLWjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTs7QUFHSjtFQUNJOztBQUlSO0VBQ0k7RUFDQTs7QXBCNGdCSjtFb0J4Z0JJO0lBQ0k7O0VBR0o7SUFDSTs7OztBdkJoRVo7QUFBQTtBQUFBO0FBQUE7QUNwQkE7QUFhQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUFBO0F1QlhBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFFQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFLSjtFQUNJO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBOztBQUdKO0VBQ0k7O0FyQitpQlI7RXFCcmxCSjtJQTJDUTtJQUNBOzs7O0F4QjFCUjtBQUFBO0FBQUE7QUFBQTtBQ3BCQTtBQWFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBQUE7QXdCWEE7RUFDSTtFQUNBO0VBQ0E7RUFFQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFLSjtFQUNJO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBOztBQUdKO0VBQ0k7O0F0QmdqQlI7RXNCcmxCSjtJQTBDUTtJQUNBOzs7O0F6QnpCUjtBQUFBO0FBQUE7QUFBQTtBQ3BCQTtBQWFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBQUE7QXlCWEE7RUFDSTs7QUFFQTtFQUNJO0VBQ0E7O0FBR0o7RUFDSTtFQUdBO0VBQ0E7O0FBRUE7RUFDSTs7QXZCcWtCUjtFdUI3a0JBO0lBWVE7OztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7QUFJSjtFQUNJO0VBQ0E7O0FBR0o7RUFDSTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBdkJ1aEJaO0V1Qi9nQlk7SUFDSTtJQUNBOztFQUdKO0lBQ0k7O0VBRUE7SUFDSTs7O0F2QnNnQnBCO0V1QjlmSTtJQUNJOztFQUdKO0lBQ0k7SUFDQTs7OztBMUIzRVo7QUFBQTtBQUFBO0FBQUE7QUNwQkE7QUFhQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUFBO0EwQlZJO0VBQ0k7RUFDQTs7QUFHSjtFQUNJO0VBR0E7RUFDQTtFQUNBOztBQUdBO0VBQ0k7O0F4QnFrQlI7RXdCL2tCQTtJQWNROzs7QUFJUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7O0FBR0o7RUFDSTtFQUNBOztBQUdKO0VBQ0k7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0F4Qm1oQlo7RXdCM2dCWTtJQUNJO0lBQ0E7O0VBR0o7SUFDSTs7RUFFQTtJQUNJOztFQUdKO0lBQ0k7OztBeEI4ZnBCO0V3QnZmUTtJQUNJOztFQUVBO0lBQ0k7O0VBR0o7SUFDSTtJQUNBO0lBRUE7OztBeEI0ZWhCO0V3QnBlSTtJQUNJOztFQUdKO0lBQ0k7Ozs7QTNCcEdaO0FBQUE7QUFBQTtBQUFBO0FDcEJBO0FBYUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7QUFBQTtBMkJYQTtFQUNJOztBQUVBO0VBQ0k7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFFQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBOztBekJra0JKO0V5QnJsQko7SUF5QlE7O0VBRUE7SUFDSTtJQUNBOztFQUVBO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7Ozs7QTVCakJoQjtBQUFBO0FBQUE7QUFBQTtBQ3BCQTtBQWFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBQUE7QTRCWEE7RUFDSTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBOztBQUNBO0VBQ0k7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDSTs7QUFFSjtFQUNJOztBMUJ1akJSO0UwQm5qQkk7SUFDSTtJQUNBO0lBQ0E7O0VBQ0E7SUFDSTs7OztBQ3hDWjtFQUNJOztBQUVKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0E5QlhoQjtBQUFBO0FBQUE7QUFBQTtBQ3BCQTtBQWFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBQUE7QThCWEE7RUFDSTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTs7QUFHQTtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUtaO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtJQUVJOzs7QTVCK2hCUjtFNEIxaEJJO0lBQ0k7O0VBRUo7SUFDSTtJQUNBOztFQUVBO0lBQ0k7O0VBR0o7SUFDSTtJQUNBOzs7O0EvQnREaEI7QUFBQTtBQUFBO0FBQUE7QUNwQkE7QUFhQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUFBO0ErQlZJO0VBQ0k7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0FBQUE7RUFFSTtFQUNBOztBQUdKO0VBQ0k7O0FBS1o7RUFDSTtFQUNBO0VBQ0E7O0E3QndqQko7RTZCcGpCSTtJQUNJOztFQUNBO0FBQUE7SUFFSTs7OztBaENuQmhCO0FBQUE7QUFBQTtBQUFBO0FDcEJBO0FBYUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7QUFBQTtBZ0NYQTtFQUNJO0VBQ0E7O0FBRUE7RUFDSTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7O0E5QjRqQko7RThCeGpCSTtJQUNJOztFQUVBO0FBQUE7SUFFSTs7OztBakNoQmhCO0FBQUE7QUFBQTtBQUFBO0FDcEJBO0FBYUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7QUFBQTtBaUNYQTtFQUNJOztBQUVBO0VBQ0k7RUFDQTs7QUFJQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFJQTtFQUNJOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJOztBQU1oQjtFQUNJOztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBL0JrZ0JSO0UrQjVmUTtJQUNJOzs7O0FsQ3hFaEI7QUFBQTtBQUFBO0FBQUE7QUNwQkE7QUFhQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUFBO0FrQ1hBO0VBQ0k7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNJO0VBQ0E7RUFDQTs7QUFFQTtFQUNJOztBQUdKO0VBQ0k7RUFDQTtFQUNBOztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDSTs7QUFDQTtFQUNJO0VBQ0E7RUFDQTs7QUFJUjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSTtFQUNJOztBQUlSO0VBQ0k7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNyQjtFQUNDOztBQUVvQjtFQUNJO0VBQ0E7O0FoQ3FnQjVCO0VnQzVmSTtJQUNJOztFQUVJO0lBQ0k7O0VBRUo7SUFDSTtJQUNBOztFQUdSO0lBQ0k7Ozs7QW5DbkZoQjtBQUFBO0FBQUE7QUFBQTtBQ3BCQTtBQWFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBQUE7QW1DWEE7RUFDSTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBOztBQUdKO0VBQ0k7O0FBRUE7RUFDSTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7QUFPcEI7RUFDSTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFJUjtFQUNJOztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBRUE7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTs7QUFLQTtFQUNJOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7QUFNaEI7RUFDSTs7QUFHSjtFQUNJOztBQUlSO0VBQ0k7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTs7QWpDbWJaO0VpQ3JsQko7SUF1S1E7SUFDQTs7OztBcEN0SlI7QUFBQTtBQUFBO0FBQUE7QUNwQkE7QUFhQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUFBO0FvQ1hBO0VBQ0k7O0FBR0k7RUFNSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQVRBO0VBQ0k7RUFDQTs7QUFTSjtFQUNJO0VBRUE7RUFDQTs7QUFFQTtFQUNJOztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNJO0VBRUE7RUFDQTtFQUNBO0VBQ0E7O0FsQzhpQmhCO0VrQ2psQkk7SUF1Q1E7SUFDQTs7RUFDQTtJQUNJOztFQUVKO0lBQ0k7O0VBQ0E7SUFDSTs7O0FsQ2tpQnBCO0VrQ3JsQko7SUEwRFE7SUFDQTtJQUNBOzs7O0FyQzFDUjtBQUFBO0FBQUE7QUFBQTtBQ3BCQTtBQWFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBQUE7QXFDWEE7RUFDSTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBOztBQUNBO0VBQ0k7RUFDQTtFQUNBOztBbkMwa0JSO0VtQ3JsQko7SUFlUTtJQUNBOztFQUNBO0lBQ0k7O0VBRUo7SUFDSTs7RUFDQTtJQUNJOzs7O0F0Q0xoQjtBQUFBO0FBQUE7QUFBQTtBQ3BCQTtBQWFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBQUE7QXNDWEE7RUFDSTs7QUFFQTtFQUNJO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBTUE7O0FBSkE7RUFDSTs7QUFNUjtFQUNJO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7O0FwQzJqQlI7RW9DdGpCSTtJQUNJOztFQUtBO0lBQ0k7O0VBSVI7SUFDSTtJQUNBO0lBQ0E7OztBcEN3aUJSO0VvQ3JsQko7SUFrRFE7Ozs7QUNwRFI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7QUFHSjtFQUNJOztBQUVBO0VBQ0k7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7OztBeENEaEI7QUFBQTtBQUFBO0FBQUE7QUNwQkE7QUFhQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUFBO0F3Q1hBO0VBQ0k7RUFDQTtFQUVBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJOztBQUdKO0VBQ0k7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFLQTtFQUNBO0VBQ0E7RUFFQTs7QUFPQTtFQUNJOztBQUdKO0VBQ0k7O0FBS1o7RUFDSTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBRUE7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBRUE7O0FBRUE7RUFDSTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBOztBQUtSO0VBRUk7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7O0F0QzJjeEI7RXNDOWRnQjtJQXVCUTs7O0F0Q3VjeEI7RXNDaGZZO0lBOENROztFQUVBO0lBQ0k7OztBQUtaO0VBQ0k7O0FBR0E7RUFDSTtFQUVBOztBQUVBO0VBQ0k7RUFDQTtFQUNBOztBdEM4YXhCO0VzQ3phb0I7SUFDSTtJQUNBOzs7QXRDdWF4QjtFc0NqYWdCO0lBQ0k7OztBQUtaO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBOztBQUlSO0VBQ0k7O0F0QzhZWjtFc0NoZ0JJO0lBc0hROztFQUVBO0lBQ0k7OztBdEN1WWhCO0VzQ2pZWTtJQUNJOzs7O0F6Q25NcEI7QUFBQTtBQUFBO0FBQUE7QUNwQkE7QUFhQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUFBO0F5Q1hBO0VBQ0k7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7QUFLSjtFQUNJOztBdkNza0JSO0V1Q2xrQlE7SUFDSTs7RUFHSjtJQUNJO0lBQ0E7SUFDQTs7O0FBT1o7RUFDSTtFQUNBO0VBQ0E7O0FBSUo7RUFDSTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTs7QUFFQTtBQUFBO0VBRUk7RUFDQTtFQUNBOztBQUlSO0VBQ0k7RUFDQTtFQUNBOztBdkN5aEJKO0V1Q3JsQko7SUFnRVE7SUFDQTs7OztBQ2pCUjtBM0M5QkE7QUFBQTtBQUFBO0FBQUE7QUNwQkE7QUFhQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUFBO0EyQ1hBO0VBQ0k7OztBQUlBO0VBRUk7OztBQUlSO0VBQ0k7O0FBRUE7RUFDSTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFLWjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQVFBO0VBQ0k7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7OztBQUlSO0VBQ0k7RUFDQTtFQUVBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7QUFJUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7O0FBR0o7RUFDSTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTs7QUFLWjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTs7QUFFQTtFQUNJOztBQUtKO0VBQ0k7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBekNzZEo7RXlDcGlCSjtJQWtGUTs7RUFFQTtJQUNJOzs7O0FBS1o7RUFDSTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7QUFJUjtFQUNJOztBQUlSO0VBQ0k7RUFDQTs7QUFHSjtFQUNJOztBQUVBO0VBQ0k7OztBQ2pNWjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7QUFBQTtFQUVJO0VBQ0E7O0FBS1g7RUFDQztFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0Q7RUFDQztFQUNBO0VBQ0E7RUFDQTs7QUFHQztFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0FBQUE7RUFFSTtFQUNBOztBQUdKO0VBQ0k7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7O0FBR0o7RUFDSTs7QUFLUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0E7RUFDSTs7QUFNUjtFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTs7QUFJUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUlKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7OztBN0MzSVI7QUFBQTtBQUFBO0FBQUE7QUNwQkE7QUFhQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUFBO0E2Q1hBO0VBQ0k7RUFDQTtFQUNBOztBQUdJO0VBQ0k7O0FBR0o7RUFDSTs7QTNDMGtCUjtFMkN0a0JRO0lBQ0k7O0VBR0o7SUFDSTs7O0FBS1o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0EzQ3NqQko7RTJDNWpCQTtJQVNRO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFDQTs7O0FBRUo7RUFDSTs7QUFJUjtFQUVJO0VBQ0E7RUFDTjtFQUNBOztBQUdFO0VBQ0k7O0EzQzZoQko7RTJDcmxCSjtJQTREUTtJQUNBO0lBQ0E7SUFDQTs7OztBQ2pFUjtFQUNJO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ047O0FBS0U7RUFDSTtFQUVBOztBQUdOO0VBQ0M7RUFDSztFQUNBO0VBQ0w7RUFDSztFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFNQTtFQUNJOzs7QS9DM0JoQjtBQUFBO0FBQUE7QUFBQTtBQ3BCQTtBQWFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBQUE7QStDWEE7RUFDSTtFQUNBOztBQUlJO0FBQUE7RUFFSTs7QUFJUjtFQUNJOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7QUFJUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBN0NtakJKO0U2QzFqQkE7SUFVUTtJQUNBOzs7QUFJUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBOztBQUdKO0VBQ0k7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7QTdDeWZSO0U2Q3JnQkE7SUFnQlE7OztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBRUE7RUFDQTtFQUNBOztBQUVBO0VBQUk7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTs7QTdDc2RaO0U2Q2pmQTtJQWdDUTs7O0FBS1I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7O0FBR0o7RUFDSTs7QUFLSjtFQUNJO0VBQ0E7RUFDQTs7QUFFQTtFQUNJOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTs7QTdDaVpwQjtFNkM1YUk7SUFpQ1E7SUFDQTtJQUNBOzs7QUFJUjtFQUNJO0VBQ0E7O0E3Q21ZUjtFNkNyWUk7SUFLUTs7O0FBS1o7RUFDSTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7O0FBR0k7RUFDSTs7QUFLWjtFQUNJOztBQUVBO0VBQ0k7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBOztBQUdKO0VBQ0k7OztBQU9wQjtFQUNJOztBQUVBO0VBQ0k7OztBQUtKO0VBQ0k7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJOzs7QUFJUjtFQUNJO0VBQ0E7O0FBRUE7RUFDSTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJOztBQUdKO0VBQ0k7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTs7QUFJUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBOztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUtSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0E3QzRLQTtFNkN6TEo7SUFnQlE7SUFDQTs7OztBQUlSO0VBQ0k7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QWhEaGNKO0FBQUE7QUFBQTtBQUFBO0FDcEJBO0FBYUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7QUFBQTtBZ0RYQTtFQUNJO0VBQ0E7RUFDQTs7QUFFQTtFQUNJOztBQUVBO0VBQ0k7RUFDQTtFQUNBOztBQUdKO0VBQ0k7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBOztBQUlSO0VBQ0k7RUFDQTs7QUFDQTtBQUFBO0VBRUk7RUFDQTtFQUNBOztBQUtKO0VBQ0k7O0FBR0o7RUFDSTs7QUFLSjtFQUNJOztBQUdKO0VBQ0k7O0E5Q3dnQlo7RThDbGtCQTtJQStEUTs7RUFHSTtJQUNJOztFQUdKO0lBQ0k7OztBOUMyZmhCO0U4Q3JsQko7SUFpR1E7SUFDQTs7RUFFQTtJQUNJOzs7QTlDZ2ZSO0U4Q3JsQko7SUEwR1E7Ozs7QWpEeEZSO0FBQUE7QUFBQTtBQUFBO0FDcEJBO0FBYUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7QUFBQTtBaURYQTtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTs7QUFFQTtFQUNJOztBQUlSO0VBQ0k7RUFFQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0EvQ3dqQko7RStDN2pCQTtJQVFROzs7QUFJUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHQTtFQUNJOztBQUdKO0VBQ0k7O0FBR0o7RUFDSTs7QUFLWjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7O0FBSVI7RUFDSTtFQUNBOztBQUdKO0VBQ0k7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBOztBL0MrY2hCO0UrQ2xlUTtJQXVCUTs7O0FBS1o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7QUFBQTtFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtBQUFBO0VBQ0k7RUFDQTs7QUFHSjtBQUFBO0VBQ0k7RUFDQTtFQUNBOztBL0M2YWhCO0UrQ3RjSTtJQThCUTs7O0FBSVI7RUFDSTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTs7QUFFQTtFQUNJOztBL0M2WXBCO0UrQ2pqQkE7SUEyS1E7SUFDQTs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJOztBQUdKO0VBSUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdJO0VBQ0k7RUFDQTtFQUNBOztBQUlBO0VBQ0k7O0FBS1o7RUFDSTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUlBO0VBQ0k7O0FBS0o7RUFDSTs7QUFRUjtFQUNJO0VBQ0E7O0EvQzhUWjtFK0MxVFk7SUFDSTs7O0FBUVo7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7O0FBR0o7RUFDSTs7QUFHSjtFQUNJOztBQUlSO0VBQ0k7RUFDQTtFQUNBOztBQUVBO0VBQ0k7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTs7QUFHSjtFQUNJOztBQUlKO0VBQ0k7RUFDQTtFQUNBOztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0EvQzRNaEI7RStDM1FRO0lBbUVROztFQUdJO0lBQ0k7OztBQU9wQjtFQUNJO0VBQ0E7RUFDQTs7QUFHSTtFQUNJOztBQUlSO0VBQ0k7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBTUE7O0FBSkE7RUFDSTs7QUFNQTtFQUNJOztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBTWhCO0VBQ0k7RUFDQTtFQUNBOztBQUdJO0VBQ0k7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBTVI7RUFDSTs7QUFJUjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTs7QUFHSjtFQUNJOztBQU1oQjtFQUNJO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUlSO0VBQ0k7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7O0FBRUE7RUFDSTs7QUFJUjtFQUNJO0VBQ0E7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJOztBQUtaO0VBQ0k7RUFDQTs7QS9DMURoQjtFK0NpRVk7SUFDSTs7RUFHSjtJQUNJOzs7QS9DdEVoQjtFK0MyRVk7SUFDSTs7RUFHSjtJQUNJOzs7QS9DaEZoQjtFK0NybEJKO0lBNHFCUTtJQUNBOztFQUdJO0lBQ0k7Ozs7QUFNaEI7QUFBQTtFQUVJO0VBQ0E7RUFDQTs7O0FsRHpxQko7QUFBQTtBQUFBO0FBQUE7QUNwQkE7QUFhQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUFBO0FrRFhBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBOztBaEQ2a0JKO0VnRC9rQkE7SUFLUTs7O0FBSVI7RUFDSTtFQUNBOztBaERva0JKO0VnRHRrQkE7SUFLUTtJQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QWhEMGlCaEI7RWdEdGpCUTtJQWdCUTs7O0FoRHNpQmhCO0VnRHRrQkE7SUFzQ1E7SUFDQTs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7O0FBR0o7RUFDSTs7QUFHSjtFQUNJO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7O0FoRGtmUjtFZ0RybEJKO0lBd0dRO0lBQ0E7Ozs7QW5EdkZSO0FBQUE7QUFBQTtBQUFBO0FDcEJBO0FBYUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7QUFBQTtBbURYQTtFQUNJOztBQUNBO0VBQ0k7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7O0FqRHFqQlo7RWlEbmtCSTtJQWtCUTs7RUFFQTtBQUFBO0lBRUk7OztBQUtaO0VBQ0k7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUlSO0VBQ0k7O0FBSUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFJUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7O0FBT3BCO0VBQ0k7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QWpENGJSO0VpRGpjSTtJQVFROztFQUVBO0FBQUE7SUFFSTs7O0FBS1o7RUFDSTtFQUNBO0VBQ0E7O0FBR0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FqRCtaaEI7RWlEcmxCSjtJQTZMUTtJQUNBO0lBQ0E7Ozs7QUNqTVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBOztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdBO0VBQ0k7O0FBR0o7RUFDSTs7QUFHSjtFQUNJOztBQUtaO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdJO0VBQ0k7O0FBSUE7RUFDSTs7QUFLWjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUlBO0VBQ0k7O0FBS0o7RUFDSTs7QUFLWjtFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBOztBQUtSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7QUFFQTtFQUNJOztBQUlSO0VBQ0k7RUFDQTtFQUNBOztBQU1oQjtFQUNJOztBQUVBO0VBQ0k7O0FBR0o7RUFDSTs7O0FyRHpKWjtBQUFBO0FBQUE7QUFBQTtBQ3BCQTtBQWFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBQUE7QXFEWEE7RUFDSTtFQUNBOztBQUVBO0VBQ0k7RUFFQTs7QW5EOGtCSjtFbURqbEJBO0lBTVE7OztBQUlSO0VBQ0k7RUFDQTs7QUFHSTtFQUNJO0VBQ0E7RUFDQTs7QW5EK2pCWjtFbURsa0JRO0lBTVE7OztBQUlSO0VBQ0k7RUFDQTs7QUFHSTtFQUNJOztBQUlSO0VBQ0k7RUFDQTs7QUFHSTtFQUNJOztBQUtaO0VBQ0k7O0FuRGtpQmhCO0VtRHhqQlE7SUEwQlE7SUFDQTs7RUFFQTtJQUNJOzs7QUFLWjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBOztBbkQ0Z0JoQjtFbURyaEJRO0lBYVE7SUFDQTs7RUFFQTtJQUNJO0lBQ0E7SUFDQTtJQUNBOzs7QW5EaWdCcEI7RW1EdmtCQTtJQTZFUTtJQUNBOzs7QUFJUjtFQUNJO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUlBO0VBQ0E7RUFDQTs7QW5EaWVSO0VtRHJmQTtJQXdCUTtJQUNBOzs7QW5ENGRSO0VtRHJsQko7SUE4SFE7SUFDQTs7OztBQUlSO0VBQ0k7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBOztBQUVBO0VBQ0k7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7O0FBSVI7RUFDSTtFQUNBOztBQUVBO0VBQ0k7RUFDQTs7QUFJUjtFQUNJOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUlSO0VBQ0k7RUFDQTtFQUNBOzs7QUFHSjtFQUNJOztBQUVBO0VBQ0k7O0FBR0o7RUFDSTtFQUVBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7O0FBRUE7RUFDSTs7QUFHSjtFQUNJOztBQUlSO0VBQ0k7OztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJOztBQUlSO0VBQ0k7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7O0FBTWhCO0FBQUE7QUFBQTtFQUdJO0VBQ0E7O0FBR0o7RUFDSTtFQUNBOztBQUdKO0VBQ0k7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7O0FBRUE7RUFDSTtFQUNBOztBQUdKO0VBQ0k7O0FBR0o7RUFDSTtFQUNBOztBQUdKO0VBQ0k7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7O0FBSVI7RUFDSTs7QUFFQTtFQUNJO0VBQ0E7O0FuRHlNWjtFbURuTUk7SUFFSTs7RUFHSjtJQUNJOzs7O0FBS1o7RUFDSTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTs7QUFFQTtFQVRKO0lBVVE7OztBQUlSO0VBQ0k7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFHSTtFQUNJO0VBQ0E7O0FBS0o7RUFDSTtFQUNBOztBQUtKO0VBQ0k7RUFDQTs7QUFLWjtFQUNJO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBOztBQUdKO0VBQ0k7SUFDSTtJQUNBO0lBQ0E7SUFDQTs7O0FBS1o7RUFDSTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7OztBQUlSO0VBQ0k7RUFDQTtBQXNFQTtBQVFBO0FBaUJBOztBQTdGQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJOztBQUlSO0VBQ0k7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7O0FBSUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFJSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTs7QUFHSjtFQUNJOztBQUlKO0VBQ0k7SUFFSTs7OztBdERya0JaO0FBQUE7QUFBQTtBQUFBO0FDcEJBO0FBYUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7QUFBQTtBc0RYQTtFQUNJO0VBQ0E7O0FBR0k7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTs7QXBEdWtCWjtFb0RobEJJO0lBYVE7O0VBRUE7SUFDSTs7O0FBTWhCO0VBQ0k7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJOztBQUlBO0VBQ0k7RUFDQTs7QUFJUjtFQUNJO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7QUFJUjtFQUNJO0VBQ0E7RUFDQTs7QXBEaWdCUjtFb0RwakJBO0lBdURRO0lBQ0E7OztBQUlSO0VBQ0k7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7QXBEK2VaO0VvRHJsQko7SUE0R1E7SUFDQTs7OztBdkQzRlI7QUFBQTtBQUFBO0FBQUE7QUNwQkE7QUFhQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUFBO0F1RFhBO0VBQ0k7OztBQUdKO0VBQ0k7O0FBRUE7RUFDSTs7QUFJQTtFQUNJOztBQUdKO0VBQ0k7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBOztBQUdKO0VBQ0k7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBSUE7O0FBRUE7RUFDSTtFQUNBOztBQU1oQjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSTtFQUNJO0VBQ0E7O0FyRDJnQnBCO0VxRHJrQkk7SUFnRVE7O0VBRUE7SUFDSTtJQUNBOztFQUdKO0lBQ0k7SUFDQTtJQUNBOzs7QUFNaEI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBOztBQUVBO0VBQ0k7RUFDQTs7QXJEdWVaO0VxRGpsQko7SUFnSFE7SUFDQTs7OztBQUlSO0VBQ0k7RUFDQTtBQXFEQTtBQW9DQTs7QUF2RkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7O0FBR0o7RUFDSTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBOztBQUVBO0VBQ0k7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBOztBQUdKO0VBQ0k7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7O0FBR0o7RUFFSTs7QUFJSjtFQUNJO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUVQO0VBRUE7RUFDQTs7QUFDQztFQUNDO0VBQ0E7RUFDQTs7QUFHQztFQUNJOztBQUdKO0VBQ0k7RUFDQTtFQUNBOztBQUVQO0VBQ0M7O0FBSUU7RUFDSTtJQUVJIiwiZmlsZSI6Im1haW4uY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQHVzZSBcInNhc3M6bWF0aFwiO1xuXG5AbWl4aW4gYXNwZWN0LXJhdGlvKCR3aWR0aCwgJGhlaWdodCkge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdCY6YmVmb3Jle1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdGNvbnRlbnQ6IFwiIFwiO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdHBhZGRpbmctdG9wOiBtYXRoLmRpdigkaGVpZ2h0LCAkd2lkdGgpICogMTAwJTtcblx0fVxuXG5cdD4gLmNvbnRlbnQge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IDA7XG5cdFx0bGVmdDogMDtcblx0XHRyaWdodDogMDtcblx0XHRib3R0b206IDA7XG5cdH1cbn1cblxuLypcbi5zaXh0ZWVuLW5pbmUge1xuXHRAaW5jbHVkZSBhc3BlY3QtcmF0aW8oMTYsOSk7XG59Ki9cbiIsIi8qIE1lZGlhIFF1ZXJpZXMgQnJlYWtwb2ludHMgKi9cblxuJGJyZWFrcG9pbnRzOiAoXG4gICAgICAgICdwaG9uZSc6IDMyMHB4LFxuICAgICAgICAncGhvbmUtbCc6IDU3NXB4LFxuICAgICAgICAndGFibGV0JzogNzY3cHgsXG4gICAgICAgICdkZXNrdG9wJzogMTExMnB4LFxuICAgICAgICAnZGVza3RvcC1tJzogMTI4MHB4LFxuICAgICAgICAnZGVza3RvcC1sJzogMTQ0MHB4LFxuICAgICAgICAnZGVza3RvcC14bCc6IDE2NjBweCxcbiAgICAgICAgJ2Rlc2t0b3AtMTkyMCc6IDE5MjBweCxcbik7XG5cbi8qKlxuKiAqKioqKioqKioqKioqKioqKioqXG4qICBVc2FnZSBleGFtcGxlc1xuKiAqKioqKioqKioqKioqKioqKioqXG4qXG4vL1xuLy8gIHVzZSA8PVxuKiAgIEFMV0FZUyB1c2UgPD0gKCAnPCcgd2l0aCAnPScgY2hhcmFjdGVyKSBmb3IgYWxsIGJyZWFrcG9pbnRzXG4qICAgd2hlbiBzZXR0aW5nIG1heC13aWR0aCwgZXg6IG1heC13aWR0aDogNzY3cHgsXG4qXG4qICAgc28gbWF4LXdpZHRoOiAxNDQwcHggID09IG1lZGlhKCc8PWRlc2t0b3AtbCcpXG4qXG4qICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4qXG4vLyAgdXNlID5cbiogICBBTFdBWVMgdXNlIG9ubHkgPiBhcyBzaW5nbGUgY2hhcmFjdGVyIGZvciBhbGwgYnJlYWtwb2ludHNcbiogICB3aGVuIHNldHRpbmcgbWluLXdpZHRoLCBleDogbWluLXdpZHRoOiA3NjhweCxcbipcbiogICBzbyBtaW4td2lkdGg6IDEwMjVweCAgPT0gbWVkaWEoJz5kZXNrdG9wJylcbipcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbipcbiojIyBFWEFNUExFOlxuKlxuKiAgIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogMTAyNHB4KVxuKiAgID1cbiogICBtZWRpYSAoJz50YWJsZXQnKSwgKCc8PWRlc2t0b3AnKVxuKlxuLy9cblxuICovXG4iLCI6cm9vdCB7XG4gICAgLS1waG9uZS13aWR0aDogNTc2cHg7XG4gICAgLS10YWJsZXQtd2lkdGg6IDc2OHB4O1xuICAgIC0tZGVza3RvcC13aWR0aDogMTExMnB4O1xuICAgIC0tZGVza3RvcC13aWR0aC1zbTogMTAyNHB4O1xuICAgIC0tZGVza3RvcC13aWR0aC1tOiAxMjgwcHg7XG4gICAgLS1kZXNrdG9wLXdpZHRoLWw6IDE0NDBweDtcbiAgICAtLWRlc2t0b3Atd2lkdGgteGw6IDE2NDBweDtcbiAgICAtLWRlc2t0b3Atd2lkdGgtMTkyMDogMTkyMHB4O1xuICAgIC0tY29udGVudC13aWR0aDogdmFyKC0tZGVza3RvcC13aWR0aC1tKTsgLy8gRGVmYXVsdCBjb250ZW50IHdpZHRoICgxMjgwKVxuICAgIC0tYmxvZy13aWR0aDogNzYwcHg7XG4gICAgLS1wYWdlLWd1dHRlcjogMjBweDtcbiAgICAtLWdyaWQtZ3V0dGVyOiAyNHB4O1xuICAgIC0tYmFzZS10cmFuc2l0aW9uOiAuM3M7XHRcdCAgICAgICAgICAgIC8vIGRlZmF1bHQgdHJhbnNpdGlvbiBmb3IgaG92ZXJzXG5cbiAgICAtLXZlcnRpY2FsLWdhcDogNnZtaW47XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPD1kZXNrdG9wJykge1xuICAgICAgICAtLXZlcnRpY2FsLWdhcDogMjBweDtcbiAgICAgICAgLS1wYWdlLWd1dHRlcjogMTVweDtcbiAgICAgICAgLS1jb250ZW50LXdpZHRoOiB2YXIoLS10YWJsZXQtd2lkdGgpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+ZGVza3RvcCcsICc8PWRlc2t0b3AtbCcpIHtcbiAgICAgICAgLS1jb250ZW50LXdpZHRoOiB2YXIoLS1kZXNrdG9wLXdpZHRoLXNtKTtcbiAgICB9XG5cbn1cblxuXG4iLCIvLyAgICAgXyAgICAgICAgICAgIF8gICAgICAgICAgIF8gICAgICAgICAgICAgICAgICAgICAgICAgICBfIF9cbi8vICAgIChfKSAgICAgICAgICB8IHwgICAgICAgICB8IHwgICAgICAgICAgICAgICAgICAgICAgICAgfCAoXylcbi8vICAgICBfIF8gX18gICBfX198IHxfICAgXyAgX198IHwgX19fICAgXyBfXyBfX18gICBfX18gIF9ffCB8XyAgX18gX1xuLy8gICAgfCB8ICdfIFxcIC8gX198IHwgfCB8IHwvIF9gIHwvIF8gXFwgfCAnXyBgIF8gXFwgLyBfIFxcLyBfYCB8IHwvIF9gIHxcbi8vICAgIHwgfCB8IHwgfCAoX198IHwgfF98IHwgKF98IHwgIF9fLyB8IHwgfCB8IHwgfCAgX18vIChffCB8IHwgKF98IHxcbi8vICAgIHxffF98IHxffFxcX19ffF98XFxfXyxffFxcX18sX3xcXF9fX3wgfF98IHxffCB8X3xcXF9fX3xcXF9fLF98X3xcXF9fLF98XG4vL1xuLy8gICAgICBTaW1wbGUsIGVsZWdhbnQgYW5kIG1haW50YWluYWJsZSBtZWRpYSBxdWVyaWVzIGluIFNhc3Ncbi8vICAgICAgICAgICAgICAgICAgICAgICAgdjIuMC4wXG4vL1xuLy8gICAgICAgIGh0dHBzOi8vZWR1YXJkb2JvdWNhcy5naXRodWIuaW8vaW5jbHVkZS1tZWRpYVxuLy9cbi8vICAgICAgICAgQXV0aG9yczogRWR1YXJkbyBCb3VjYXMgKEBlZHVhcmRvYm91Y2FzKVxuLy8gICAgICAgICAgICAgICAgICBLaXR0eSBHaXJhdWRlbCAoQGtpdHR5Z2lyYXVkZWwpXG4vL1xuLy8gICAgICBUaGlzIHByb2plY3QgaXMgbGljZW5zZWQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBNSVQgbGljZW5zZVxuQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8vXG4vLy8gaW5jbHVkZS1tZWRpYSBsaWJyYXJ5IHB1YmxpYyBjb25maWd1cmF0aW9uXG4vLy8gQGF1dGhvciBFZHVhcmRvIEJvdWNhc1xuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8vXG5AdXNlICdzYXNzOm1hdGgnO1xuQHVzZSAnc2FzczptYXAnO1xuQHVzZSAnc2FzczpsaXN0JztcbkB1c2UgJ3Nhc3M6c3RyaW5nJztcbkB1c2UgJ3Nhc3M6bWV0YSc7XG5cbi8vL1xuLy8vIENyZWF0ZXMgYSBsaXN0IG9mIGdsb2JhbCBicmVha3BvaW50c1xuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIENyZWF0ZXMgYSBzaW5nbGUgYnJlYWtwb2ludCB3aXRoIHRoZSBsYWJlbCBgcGhvbmVgXG4vLy8gICRicmVha3BvaW50czogKCdwaG9uZSc6IDMyMHB4KTtcbi8vL1xuJGJyZWFrcG9pbnRzOiAoXG4gICdwaG9uZSc6IDMyMHB4LFxuICAncGhvbmUtbCc6IDU3NXB4LFxuICAndGFibGV0JzogNzY4cHgsXG4gICdkZXNrdG9wJzogMTAyNHB4LFxuICApICFkZWZhdWx0O1xuXG4vLy9cbi8vLyBDcmVhdGVzIGEgbGlzdCBvZiBzdGF0aWMgZXhwcmVzc2lvbnMgb3IgbWVkaWEgdHlwZXNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBDcmVhdGVzIGEgc2luZ2xlIG1lZGlhIHR5cGUgKHNjcmVlbilcbi8vLyAgJG1lZGlhLWV4cHJlc3Npb25zOiAoJ3NjcmVlbic6ICdzY3JlZW4nKTtcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBDcmVhdGVzIGEgc3RhdGljIGV4cHJlc3Npb24gd2l0aCBsb2dpY2FsIGRpc2p1bmN0aW9uIChPUiBvcGVyYXRvcilcbi8vLyAgJG1lZGlhLWV4cHJlc3Npb25zOiAoXG4vLy8gICAgJ3JldGluYTJ4JzogJygtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCAobWluLXJlc29sdXRpb246IDE5MmRwaSknXG4vLy8gICk7XG4vLy9cbiRtZWRpYS1leHByZXNzaW9uczogKFxuICAnc2NyZWVuJzogJ3NjcmVlbicsXG4gICdwcmludCc6ICdwcmludCcsXG4gICdoYW5kaGVsZCc6ICdoYW5kaGVsZCcsXG4gICdsYW5kc2NhcGUnOiAnKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpJyxcbiAgJ3BvcnRyYWl0JzogJyhvcmllbnRhdGlvbjogcG9ydHJhaXQpJyxcbiAgJ3JldGluYTJ4JzogJygtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCAobWluLXJlc29sdXRpb246IDE5MmRwaSksIChtaW4tcmVzb2x1dGlvbjogMmRwcHgpJyxcbiAgJ3JldGluYTN4JzogJygtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDMpLCAobWluLXJlc29sdXRpb246IDM1MGRwaSksIChtaW4tcmVzb2x1dGlvbjogM2RwcHgpJyxcbiAgKSAhZGVmYXVsdDtcblxuLy8vXG4vLy8gRGVmaW5lcyBhIG51bWJlciB0byBiZSBhZGRlZCBvciBzdWJ0cmFjdGVkIGZyb20gZWFjaCB1bml0IHdoZW4gZGVjbGFyaW5nIGJyZWFrcG9pbnRzIHdpdGggZXhjbHVzaXZlIGludGVydmFsc1xuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEludGVydmFsIGZvciBwaXhlbHMgaXMgZGVmaW5lZCBhcyBgMWAgYnkgZGVmYXVsdFxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPjEyOHB4Jykge31cbi8vL1xuLy8vICAvKiBHZW5lcmF0ZXM6ICovXG4vLy8gIEBtZWRpYSAobWluLXdpZHRoOiAxMjlweCkge31cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBJbnRlcnZhbCBmb3IgZW1zIGlzIGRlZmluZWQgYXMgYDAuMDFgIGJ5IGRlZmF1bHRcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz4yMGVtJykge31cbi8vL1xuLy8vICAvKiBHZW5lcmF0ZXM6ICovXG4vLy8gIEBtZWRpYSAobWluLXdpZHRoOiAyMC4wMWVtKSB7fVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEludGVydmFsIGZvciByZW1zIGlzIGRlZmluZWQgYXMgYDAuMWAgYnkgZGVmYXVsdCwgdG8gYmUgdXNlZCB3aXRoIGBmb250LXNpemU6IDYyLjUlO2Bcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz4yLjByZW0nKSB7fVxuLy8vXG4vLy8gIC8qIEdlbmVyYXRlczogKi9cbi8vLyAgQG1lZGlhIChtaW4td2lkdGg6IDIuMXJlbSkge31cbi8vL1xuJHVuaXQtaW50ZXJ2YWxzOiAoXG4gICdweCc6IDEsXG4gICdlbSc6IDAuMDEsXG4gICdyZW0nOiAwLjEsXG4gICcnOiAwLFxuICApICFkZWZhdWx0O1xuXG4vLy9cbi8vLyBEZWZpbmVzIHdoZXRoZXIgc3VwcG9ydCBmb3IgbWVkaWEgcXVlcmllcyBpcyBhdmFpbGFibGUsIHVzZWZ1bCBmb3IgY3JlYXRpbmcgc2VwYXJhdGUgc3R5bGVzaGVldHNcbi8vLyBmb3IgYnJvd3NlcnMgdGhhdCBkb24ndCBzdXBwb3J0IG1lZGlhIHF1ZXJpZXMuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gRGlzYWJsZXMgc3VwcG9ydCBmb3IgbWVkaWEgcXVlcmllc1xuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xuLy8vICAuZm9vIHtcbi8vLyAgICBjb2xvcjogdG9tYXRvO1xuLy8vICB9XG4vLy9cbiRpbS1tZWRpYS1zdXBwb3J0OiB0cnVlICFkZWZhdWx0O1xuXG4vLy9cbi8vLyBTZWxlY3RzIHdoaWNoIGJyZWFrcG9pbnQgdG8gZW11bGF0ZSB3aGVuIHN1cHBvcnQgZm9yIG1lZGlhIHF1ZXJpZXMgaXMgZGlzYWJsZWQuIE1lZGlhIHF1ZXJpZXMgdGhhdCBzdGFydCBhdCBvclxuLy8vIGludGVyY2VwdCB0aGUgYnJlYWtwb2ludCB3aWxsIGJlIGRpc3BsYXllZCwgYW55IG90aGVycyB3aWxsIGJlIGlnbm9yZWQuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVGhpcyBtZWRpYSBxdWVyeSB3aWxsIHNob3cgYmVjYXVzZSBpdCBpbnRlcmNlcHRzIHRoZSBzdGF0aWMgYnJlYWtwb2ludFxuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XG4vLy8gICRpbS1uby1tZWRpYS1icmVha3BvaW50OiAnZGVza3RvcCc7XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xuLy8vICAuZm9vIHtcbi8vLyAgICBjb2xvcjogdG9tYXRvO1xuLy8vICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVGhpcyBtZWRpYSBxdWVyeSB3aWxsIE5PVCBzaG93IGJlY2F1c2UgaXQgZG9lcyBub3QgaW50ZXJjZXB0IHRoZSBkZXNrdG9wIGJyZWFrcG9pbnRcbi8vLyAgJGltLW1lZGlhLXN1cHBvcnQ6IGZhbHNlO1xuLy8vICAkaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ3RhYmxldCc7XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3AnKSB7XG4vLy8gICAgLmZvbyB7XG4vLy8gICAgICBjb2xvcjogdG9tYXRvO1xuLy8vICAgIH1cbi8vLyAgfVxuLy8vXG4vLy8gIC8qIE5vIG91dHB1dCAqL1xuLy8vXG4kaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ2Rlc2t0b3AnICFkZWZhdWx0O1xuXG4vLy9cbi8vLyBTZWxlY3RzIHdoaWNoIG1lZGlhIGV4cHJlc3Npb25zIGFyZSBhbGxvd2VkIGluIGFuIGV4cHJlc3Npb24gZm9yIGl0IHRvIGJlIHVzZWQgd2hlbiBtZWRpYSBxdWVyaWVzXG4vLy8gYXJlIG5vdCBzdXBwb3J0ZWQuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVGhpcyBtZWRpYSBxdWVyeSB3aWxsIHNob3cgYmVjYXVzZSBpdCBpbnRlcmNlcHRzIHRoZSBzdGF0aWMgYnJlYWtwb2ludCBhbmQgY29udGFpbnMgb25seSBhY2NlcHRlZCBtZWRpYSBleHByZXNzaW9uc1xuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XG4vLy8gICRpbS1uby1tZWRpYS1icmVha3BvaW50OiAnZGVza3RvcCc7XG4vLy8gICRpbS1uby1tZWRpYS1leHByZXNzaW9uczogKCdzY3JlZW4nKTtcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0JywgJ3NjcmVlbicpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyAgIC8qIEdlbmVyYXRlczogKi9cbi8vLyAgIC5mb28ge1xuLy8vICAgICBjb2xvcjogdG9tYXRvO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFRoaXMgbWVkaWEgcXVlcnkgd2lsbCBOT1Qgc2hvdyBiZWNhdXNlIGl0IGludGVyY2VwdHMgdGhlIHN0YXRpYyBicmVha3BvaW50IGJ1dCBjb250YWlucyBhIG1lZGlhIGV4cHJlc3Npb24gdGhhdCBpcyBub3QgYWNjZXB0ZWRcbi8vLyAgJGltLW1lZGlhLXN1cHBvcnQ6IGZhbHNlO1xuLy8vICAkaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ2Rlc2t0b3AnO1xuLy8vICAkaW0tbm8tbWVkaWEtZXhwcmVzc2lvbnM6ICgnc2NyZWVuJyk7XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcsICdyZXRpbmEyeCcpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyAgLyogTm8gb3V0cHV0ICovXG4vLy9cbiRpbS1uby1tZWRpYS1leHByZXNzaW9uczogKFxuICAnc2NyZWVuJyxcbiAgJ3BvcnRyYWl0JyxcbiAgJ2xhbmRzY2FwZScpICFkZWZhdWx0O1xuXG4vLy8vXG4vLy8gQ3Jvc3MtZW5naW5lIGxvZ2dpbmcgZW5naW5lXG4vLy8gQGF1dGhvciBLaXR0eSBHaXJhdWRlbFxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vL1xuXG4vLy9cbi8vLyBMb2cgYSBtZXNzYWdlIGVpdGhlciB3aXRoIGBAZXJyb3JgIGlmIHN1cHBvcnRlZFxuLy8vIGVsc2Ugd2l0aCBgQHdhcm5gLCB1c2luZyBgZmVhdHVyZS1leGlzdHMoJ2F0LWVycm9yJylgXG4vLy8gdG8gZGV0ZWN0IHN1cHBvcnQuXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJG1lc3NhZ2UgLSBNZXNzYWdlIHRvIGxvZ1xuLy8vXG5AZnVuY3Rpb24gaW0tbG9nKCRtZXNzYWdlKSB7XG4gIEBpZiBtZXRhLmZlYXR1cmUtZXhpc3RzKCdhdC1lcnJvcicpIHtcbiAgICBAZXJyb3IgJG1lc3NhZ2U7XG4gIH1cblxuICBAZWxzZSB7XG4gICAgQHdhcm4gJG1lc3NhZ2U7XG4gICAgJF86IG5vb3AoXG4gICAgKTtcbn1cblxuQHJldHVybiAkbWVzc2FnZTtcbn1cblxuLy8vXG4vLy8gV3JhcHBlciBtaXhpbiBmb3IgdGhlIGxvZyBmdW5jdGlvbiBzbyBpdCBjYW4gYmUgdXNlZCB3aXRoIGEgbW9yZSBmcmllbmRseVxuLy8vIEFQSSB0aGFuIGBAaWYgaW0tbG9nKCcuLicpIHt9YCBvciBgJF86IGltLWxvZygnLi4nKWAuIEJhc2ljYWxseSwgdXNlIHRoZSBmdW5jdGlvblxuLy8vIHdpdGhpbiBmdW5jdGlvbnMgYmVjYXVzZSBpdCBpcyBub3QgcG9zc2libGUgdG8gaW5jbHVkZSBhIG1peGluIGluIGEgZnVuY3Rpb25cbi8vLyBhbmQgdXNlIHRoZSBtaXhpbiBldmVyeXdoZXJlIGVsc2UgYmVjYXVzZSBpdCdzIG11Y2ggbW9yZSBlbGVnYW50LlxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRtZXNzYWdlIC0gTWVzc2FnZSB0byBsb2dcbi8vL1xuQG1peGluIGxvZygkbWVzc2FnZSkge1xuICBAaWYgaW0tbG9nKCRtZXNzYWdlKSB7fVxufVxuXG4vLy9cbi8vLyBGdW5jdGlvbiB3aXRoIG5vIGBAcmV0dXJuYCBjYWxsZWQgbmV4dCB0byBgQHdhcm5gIGluIFNhc3MgMy4zXG4vLy8gdG8gdHJpZ2dlciBhIGNvbXBpbGluZyBlcnJvciBhbmQgc3RvcCB0aGUgcHJvY2Vzcy5cbi8vL1xuQGZ1bmN0aW9uIG5vb3AoKSB7fVxuXG4vLy9cbi8vLyBEZXRlcm1pbmVzIHdoZXRoZXIgYSBsaXN0IG9mIGNvbmRpdGlvbnMgaXMgaW50ZXJjZXB0ZWQgYnkgdGhlIHN0YXRpYyBicmVha3BvaW50LlxuLy8vXG4vLy8gQHBhcmFtIHtBcmdsaXN0fSAgICRjb25kaXRpb25zICAtIE1lZGlhIHF1ZXJ5IGNvbmRpdGlvbnNcbi8vL1xuLy8vIEByZXR1cm4ge0Jvb2xlYW59IC0gUmV0dXJucyB0cnVlIGlmIHRoZSBjb25kaXRpb25zIGFyZSBpbnRlcmNlcHRlZCBieSB0aGUgc3RhdGljIGJyZWFrcG9pbnRcbi8vL1xuQGZ1bmN0aW9uIGltLWludGVyY2VwdHMtc3RhdGljLWJyZWFrcG9pbnQoJGNvbmRpdGlvbnMuLi4pIHtcbiAgJG5vLW1lZGlhLWJyZWFrcG9pbnQtdmFsdWU6IG1hcC5nZXQoJGJyZWFrcG9pbnRzLCAkaW0tbm8tbWVkaWEtYnJlYWtwb2ludCk7XG5cbiAgQGlmIG5vdCAkbm8tbWVkaWEtYnJlYWtwb2ludC12YWx1ZSB7XG4gICAgQGlmIGltLWxvZygnYCN7JGltLW5vLW1lZGlhLWJyZWFrcG9pbnR9YCBpcyBub3QgYSB2YWxpZCBicmVha3BvaW50LicpIHt9XG4gIH1cblxuICBAZWFjaCAkY29uZGl0aW9uIGluICRjb25kaXRpb25zIHtcbiAgICBAaWYgbm90IG1hcC5oYXMta2V5KCRtZWRpYS1leHByZXNzaW9ucywgJGNvbmRpdGlvbikge1xuICAgICAgJG9wZXJhdG9yOiBnZXQtZXhwcmVzc2lvbi1vcGVyYXRvcigkY29uZGl0aW9uKTtcbiAgICAgICRwcmVmaXg6IGdldC1leHByZXNzaW9uLXByZWZpeCgkb3BlcmF0b3IpO1xuICAgICAgJHZhbHVlOiBnZXQtZXhwcmVzc2lvbi12YWx1ZSgkY29uZGl0aW9uLCAkb3BlcmF0b3IpO1xuXG4gICAgICBAaWYgKCRwcmVmaXggPT0nbWF4JyBhbmQgJHZhbHVlIDw9JG5vLW1lZGlhLWJyZWFrcG9pbnQtdmFsdWUpIG9yICgkcHJlZml4ID09J21pbicgYW5kICR2YWx1ZSA+ICRuby1tZWRpYS1icmVha3BvaW50LXZhbHVlKSB7XG4gICAgICAgIEByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGVsc2UgaWYgbm90IGxpc3QuaW5kZXgoJGltLW5vLW1lZGlhLWV4cHJlc3Npb25zLCAkY29uZGl0aW9uKSB7XG4gICAgICBAcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gdHJ1ZTtcbn1cblxuLy8vL1xuLy8vIFBhcnNpbmcgZW5naW5lXG4vLy8gQGF1dGhvciBLaXR0eSBHaXJhdWRlbFxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vL1xuXG4vLy9cbi8vLyBHZXQgb3BlcmF0b3Igb2YgYW4gZXhwcmVzc2lvblxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRleHByZXNzaW9uIC0gRXhwcmVzc2lvbiB0byBleHRyYWN0IG9wZXJhdG9yIGZyb21cbi8vL1xuLy8vIEByZXR1cm4ge1N0cmluZ30gLSBBbnkgb2YgYD49YCwgYD5gLCBgPD1gLCBgPGAsIGDiiaVgLCBg4omkYFxuLy8vXG5AZnVuY3Rpb24gZ2V0LWV4cHJlc3Npb24tb3BlcmF0b3IoJGV4cHJlc3Npb24pIHtcbiAgQGVhY2ggJG9wZXJhdG9yIGluICgnPj0nLCAnPicsICc8PScsICc8JywgJ+KJpScsICfiiaQnKSB7XG4gICAgQGlmIHN0cmluZy5pbmRleCgkZXhwcmVzc2lvbiwgJG9wZXJhdG9yKSB7XG4gICAgICBAcmV0dXJuICRvcGVyYXRvcjtcbiAgICB9XG4gIH1cblxuICAvLyBJdCBpcyBub3QgcG9zc2libGUgdG8gaW5jbHVkZSBhIG1peGluIGluc2lkZSBhIGZ1bmN0aW9uLCBzbyB3ZSBoYXZlIHRvXG4gIC8vIHJlbHkgb24gdGhlIGBpbS1sb2coLi4pYCBmdW5jdGlvbiByYXRoZXIgdGhhbiB0aGUgYGxvZyguLilgIG1peGluLiBCZWNhdXNlXG4gIC8vIGZ1bmN0aW9ucyBjYW5ub3QgYmUgY2FsbGVkIGFueXdoZXJlIGluIFNhc3MsIHdlIG5lZWQgdG8gaGFjayB0aGUgY2FsbCBpblxuICAvLyBhIGR1bW15IHZhcmlhYmxlLCBzdWNoIGFzIGAkX2AuIElmIGFueWJvZHkgZXZlciByYWlzZSBhIHNjb3BpbmcgaXNzdWUgd2l0aFxuICAvLyBTYXNzIDMuMywgY2hhbmdlIHRoaXMgbGluZSBpbiBgQGlmIGltLWxvZyguLikge31gIGluc3RlYWQuXG4gICRfOiBpbS1sb2coJ05vIG9wZXJhdG9yIGZvdW5kIGluIGAjeyRleHByZXNzaW9ufWAuJyk7XG59XG5cbi8vL1xuLy8vIEdldCBkaW1lbnNpb24gb2YgYW4gZXhwcmVzc2lvbiwgYmFzZWQgb24gYSBmb3VuZCBvcGVyYXRvclxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRleHByZXNzaW9uIC0gRXhwcmVzc2lvbiB0byBleHRyYWN0IGRpbWVuc2lvbiBmcm9tXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRvcGVyYXRvciAtIE9wZXJhdG9yIGZyb20gYCRleHByZXNzaW9uYFxuLy8vXG4vLy8gQHJldHVybiB7U3RyaW5nfSAtIGB3aWR0aGAgb3IgYGhlaWdodGAgKG9yIHBvdGVudGlhbGx5IGFueXRoaW5nIGVsc2UpXG4vLy9cbkBmdW5jdGlvbiBnZXQtZXhwcmVzc2lvbi1kaW1lbnNpb24oJGV4cHJlc3Npb24sICRvcGVyYXRvcikge1xuICAkb3BlcmF0b3ItaW5kZXg6IHN0cmluZy5pbmRleCgkZXhwcmVzc2lvbiwgJG9wZXJhdG9yKTtcbiAgJHBhcnNlZC1kaW1lbnNpb246IHN0cmluZy5zbGljZSgkZXhwcmVzc2lvbiwgMCwgJG9wZXJhdG9yLWluZGV4IC0gMSk7XG4gICRkaW1lbnNpb246ICd3aWR0aCc7XG5cbiAgQGlmIHN0cmluZy5sZW5ndGgoJHBhcnNlZC1kaW1lbnNpb24pPjAge1xuICAgICRkaW1lbnNpb246ICRwYXJzZWQtZGltZW5zaW9uO1xuICB9XG5cbiAgQHJldHVybiAkZGltZW5zaW9uO1xufVxuXG4vLy9cbi8vLyBHZXQgZGltZW5zaW9uIHByZWZpeCBiYXNlZCBvbiBhbiBvcGVyYXRvclxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRvcGVyYXRvciAtIE9wZXJhdG9yXG4vLy9cbi8vLyBAcmV0dXJuIHtTdHJpbmd9IC0gYG1pbmAgb3IgYG1heGBcbi8vL1xuQGZ1bmN0aW9uIGdldC1leHByZXNzaW9uLXByZWZpeCgkb3BlcmF0b3IpIHtcbiAgQHJldHVybiBpZihsaXN0LmluZGV4KCgnPCcsICc8PScsICfiiaQnKSwgJG9wZXJhdG9yKSwgJ21heCcsICdtaW4nKTtcbn1cblxuLy8vXG4vLy8gR2V0IHZhbHVlIG9mIGFuIGV4cHJlc3Npb24sIGJhc2VkIG9uIGEgZm91bmQgb3BlcmF0b3Jcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZXhwcmVzc2lvbiAtIEV4cHJlc3Npb24gdG8gZXh0cmFjdCB2YWx1ZSBmcm9tXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRvcGVyYXRvciAtIE9wZXJhdG9yIGZyb20gYCRleHByZXNzaW9uYFxuLy8vXG4vLy8gQHJldHVybiB7TnVtYmVyfSAtIEEgbnVtZXJpYyB2YWx1ZVxuLy8vXG5AZnVuY3Rpb24gZ2V0LWV4cHJlc3Npb24tdmFsdWUoJGV4cHJlc3Npb24sICRvcGVyYXRvcikge1xuICAkb3BlcmF0b3ItaW5kZXg6IHN0cmluZy5pbmRleCgkZXhwcmVzc2lvbiwgJG9wZXJhdG9yKTtcbiAgJHZhbHVlOiBzdHJpbmcuc2xpY2UoJGV4cHJlc3Npb24sICRvcGVyYXRvci1pbmRleCArIHN0cmluZy5sZW5ndGgoJG9wZXJhdG9yKSk7XG5cbiAgQGlmIG1hcC5oYXMta2V5KCRicmVha3BvaW50cywgJHZhbHVlKSB7XG4gICAgJHZhbHVlOiBtYXAuZ2V0KCRicmVha3BvaW50cywgJHZhbHVlKTtcbiAgfVxuXG4gIEBlbHNlIHtcbiAgICAkdmFsdWU6IHRvLW51bWJlcigkdmFsdWUpO1xuICB9XG5cbiAgJGludGVydmFsOiBtYXAuZ2V0KCR1bml0LWludGVydmFscywgbWF0aC51bml0KCR2YWx1ZSkpO1xuXG4gIEBpZiBub3QgJGludGVydmFsIHtcbiAgICAvLyBJdCBpcyBub3QgcG9zc2libGUgdG8gaW5jbHVkZSBhIG1peGluIGluc2lkZSBhIGZ1bmN0aW9uLCBzbyB3ZSBoYXZlIHRvXG4gICAgLy8gcmVseSBvbiB0aGUgYGltLWxvZyguLilgIGZ1bmN0aW9uIHJhdGhlciB0aGFuIHRoZSBgbG9nKC4uKWAgbWl4aW4uIEJlY2F1c2VcbiAgICAvLyBmdW5jdGlvbnMgY2Fubm90IGJlIGNhbGxlZCBhbnl3aGVyZSBpbiBTYXNzLCB3ZSBuZWVkIHRvIGhhY2sgdGhlIGNhbGwgaW5cbiAgICAvLyBhIGR1bW15IHZhcmlhYmxlLCBzdWNoIGFzIGAkX2AuIElmIGFueWJvZHkgZXZlciByYWlzZSBhIHNjb3BpbmcgaXNzdWUgd2l0aFxuICAgIC8vIFNhc3MgMy4zLCBjaGFuZ2UgdGhpcyBsaW5lIGluIGBAaWYgaW0tbG9nKC4uKSB7fWAgaW5zdGVhZC5cbiAgICAkXzogaW0tbG9nKCdVbmtub3duIHVuaXQgYCN7bWF0aC51bml0KCR2YWx1ZSl9YC4nKTtcbiAgfVxuXG4gIEBpZiAkb3BlcmF0b3IgPT0nPicge1xuICAgICR2YWx1ZTogJHZhbHVlICsgJGludGVydmFsO1xuICB9XG5cbiAgQGVsc2UgaWYgJG9wZXJhdG9yID09JzwnIHtcbiAgICAkdmFsdWU6ICR2YWx1ZSAtICRpbnRlcnZhbDtcbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuXG4vLy9cbi8vLyBQYXJzZSBhbiBleHByZXNzaW9uIHRvIHJldHVybiBhIHZhbGlkIG1lZGlhLXF1ZXJ5IGV4cHJlc3Npb25cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZXhwcmVzc2lvbiAtIEV4cHJlc3Npb24gdG8gcGFyc2Vcbi8vL1xuLy8vIEByZXR1cm4ge1N0cmluZ30gLSBWYWxpZCBtZWRpYSBxdWVyeVxuLy8vXG5AZnVuY3Rpb24gcGFyc2UtZXhwcmVzc2lvbigkZXhwcmVzc2lvbikge1xuXG4gIC8vIElmIGl0IGlzIHBhcnQgb2YgJG1lZGlhLWV4cHJlc3Npb25zLCBpdCBoYXMgbm8gb3BlcmF0b3JcbiAgLy8gdGhlbiB0aGVyZSBpcyBubyBuZWVkIHRvIGdvIGFueSBmdXJ0aGVyLCBqdXN0IHJldHVybiB0aGUgdmFsdWVcbiAgQGlmIG1hcC5oYXMta2V5KCRtZWRpYS1leHByZXNzaW9ucywgJGV4cHJlc3Npb24pIHtcbiAgICBAcmV0dXJuIG1hcC5nZXQoJG1lZGlhLWV4cHJlc3Npb25zLCAkZXhwcmVzc2lvbik7XG4gIH1cblxuICAkb3BlcmF0b3I6IGdldC1leHByZXNzaW9uLW9wZXJhdG9yKCRleHByZXNzaW9uKTtcbiAgJGRpbWVuc2lvbjogZ2V0LWV4cHJlc3Npb24tZGltZW5zaW9uKCRleHByZXNzaW9uLCAkb3BlcmF0b3IpO1xuICAkcHJlZml4OiBnZXQtZXhwcmVzc2lvbi1wcmVmaXgoJG9wZXJhdG9yKTtcbiAgJHZhbHVlOiBnZXQtZXhwcmVzc2lvbi12YWx1ZSgkZXhwcmVzc2lvbiwgJG9wZXJhdG9yKTtcblxuICBAcmV0dXJuICcoI3skcHJlZml4fS0jeyRkaW1lbnNpb259OiAjeyR2YWx1ZX0pJztcbn1cblxuLy8vXG4vLy8gU2xpY2UgYCRsaXN0YCBiZXR3ZWVuIGAkc3RhcnRgIGFuZCBgJGVuZGAgaW5kZXhlc1xuLy8vXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge0xpc3R9ICRsaXN0IC0gTGlzdCB0byBzbGljZVxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkc3RhcnQgWzFdIC0gU3RhcnQgaW5kZXhcbi8vLyBAcGFyYW0ge051bWJlcn0gJGVuZCBbbGVuZ3RoKCRsaXN0KV0gLSBFbmQgaW5kZXhcbi8vL1xuLy8vIEByZXR1cm4ge0xpc3R9IFNsaWNlZCBsaXN0XG4vLy9cbkBmdW5jdGlvbiBzbGljZSgkbGlzdCwgJHN0YXJ0OiAxLCAkZW5kOiBsaXN0Lmxlbmd0aCgkbGlzdCkpIHtcbiAgQGlmIGxpc3QubGVuZ3RoKCRsaXN0KSA8IDEgb3IgJHN0YXJ0ID4kZW5kIHtcbiAgICBAcmV0dXJuICgpO1xuICB9XG5cbiAgJHJlc3VsdDogKFxuICApO1xuXG5AZm9yICRpIGZyb20gJHN0YXJ0IHRocm91Z2ggJGVuZCB7XG4gICRyZXN1bHQ6IGxpc3QuYXBwZW5kKCRyZXN1bHQsIGxpc3QubnRoKCRsaXN0LCAkaSksIGNvbW1hKTtcbn1cblxuQHJldHVybiAkcmVzdWx0O1xufVxuXG4vLy8vXG4vLy8gU3RyaW5nIHRvIG51bWJlciBjb252ZXJ0ZXJcbi8vLyBAYXV0aG9yIEtpdHR5IEdpcmF1ZGVsXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8vXG5cbi8vL1xuLy8vIENhc3RzIGEgc3RyaW5nIGludG8gYSBudW1iZXJcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nIHwgTnVtYmVyfSAkdmFsdWUgLSBWYWx1ZSB0byBiZSBwYXJzZWRcbi8vL1xuLy8vIEByZXR1cm4ge051bWJlcn1cbi8vL1xuXG5AZnVuY3Rpb24gdG8tbnVtYmVyKCR2YWx1ZSkge1xuICBAaWYgbWV0YS50eXBlLW9mKCR2YWx1ZSk9PSdudW1iZXInIHtcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfVxuXG4gIEBlbHNlIGlmIG1ldGEudHlwZS1vZigkdmFsdWUpICE9J3N0cmluZycge1xuICAgICRfOiBpbS1sb2coJ1ZhbHVlIGZvciBgdG8tbnVtYmVyYCBzaG91bGQgYmUgYSBudW1iZXIgb3IgYSBzdHJpbmcuJyk7XG4gIH1cblxuICAkZmlyc3QtY2hhcmFjdGVyOiBzdHJpbmcuc2xpY2UoJHZhbHVlLCAxLCAxKTtcbiAgJHJlc3VsdDogMDtcbiAgJGRpZ2l0czogMDtcbiAgJG1pbnVzOiAoXG4gICAgJGZpcnN0LWNoYXJhY3RlciA9PSctJ1xuICApO1xuJG51bWJlcnM6IChcbiAgJzAnOiAwLFxuICAnMSc6IDEsXG4gICcyJzogMixcbiAgJzMnOiAzLFxuICAnNCc6IDQsXG4gICc1JzogNSxcbiAgJzYnOiA2LFxuICAnNyc6IDcsXG4gICc4JzogOCxcbiAgJzknOiA5LFxuKTtcblxuLy8gUmVtb3ZlICsvLSBzaWduIGlmIHByZXNlbnQgYXQgZmlyc3QgY2hhcmFjdGVyXG5AaWYgKCRmaXJzdC1jaGFyYWN0ZXIgPT0nKycgb3IgJGZpcnN0LWNoYXJhY3RlciA9PSctJykge1xuICAkdmFsdWU6IHN0cmluZy5zbGljZSgkdmFsdWUsIDIpO1xufVxuXG5AZm9yICRpIGZyb20gMSB0aHJvdWdoIHN0cmluZy5sZW5ndGgoJHZhbHVlKSB7XG4gICRjaGFyYWN0ZXI6IHN0cmluZy5zbGljZSgkdmFsdWUsICRpLCAkaSk7XG5cbiAgQGlmIG5vdChsaXN0LmluZGV4KG1hcC5rZXlzKCRudW1iZXJzKSwgJGNoYXJhY3Rlcikgb3IgJGNoYXJhY3RlciA9PScuJykge1xuICAgIEByZXR1cm4gdG8tbGVuZ3RoKGlmKCRtaW51cywgLSRyZXN1bHQsICRyZXN1bHQpLCBzdHJpbmcuc2xpY2UoJHZhbHVlLCAkaSkpO1xuICB9XG5cbiAgQGlmICRjaGFyYWN0ZXIgPT0nLicge1xuICAgICRkaWdpdHM6IDE7XG4gIH1cblxuICBAZWxzZSBpZiAkZGlnaXRzID09MCB7XG4gICAgJHJlc3VsdDogJHJlc3VsdCAqIDEwICsgbWFwLmdldCgkbnVtYmVycywgJGNoYXJhY3Rlcik7XG4gIH1cblxuICBAZWxzZSB7XG4gICAgJGRpZ2l0czogJGRpZ2l0cyAqIDEwO1xuICAgICRyZXN1bHQ6ICRyZXN1bHQgKyBtYXRoLmRpdihtYXAuZ2V0KCRudW1iZXJzLCAkY2hhcmFjdGVyKSwgJGRpZ2l0cyk7XG4gIH1cbn1cblxuQHJldHVybiBpZigkbWludXMsIC0kcmVzdWx0LCAkcmVzdWx0KTtcbn1cblxuLy8vXG4vLy8gQWRkIGAkdW5pdGAgdG8gYCR2YWx1ZWBcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdmFsdWUgLSBWYWx1ZSB0byBhZGQgdW5pdCB0b1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkdW5pdCAtIFN0cmluZyByZXByZXNlbnRhdGlvbiBvZiB0aGUgdW5pdFxuLy8vXG4vLy8gQHJldHVybiB7TnVtYmVyfSAtIGAkdmFsdWVgIGV4cHJlc3NlZCBpbiBgJHVuaXRgXG4vLy9cbkBmdW5jdGlvbiB0by1sZW5ndGgoJHZhbHVlLCAkdW5pdCkge1xuICAkdW5pdHM6IChcbiAgICAncHgnOiAxcHgsXG4gICAgJ2NtJzogMWNtLFxuICAgICdtbSc6IDFtbSxcbiAgICAnJSc6IDElLFxuICAgICdjaCc6IDFjaCxcbiAgICAncGMnOiAxcGMsXG4gICAgJ2luJzogMWluLFxuICAgICdlbSc6IDFlbSxcbiAgICAncmVtJzogMXJlbSxcbiAgICAncHQnOiAxcHQsXG4gICAgJ2V4JzogMWV4LFxuICAgICd2dyc6IDF2dyxcbiAgICAndmgnOiAxdmgsXG4gICAgJ3ZtaW4nOiAxdm1pbixcbiAgICAndm1heCc6IDF2bWF4LFxuICApO1xuXG5AaWYgbm90IGxpc3QuaW5kZXgobWFwLmtleXMoJHVuaXRzKSwgJHVuaXQpIHtcbiAgJF86IGltLWxvZygnSW52YWxpZCB1bml0IGAjeyR1bml0fWAuJyk7XG59XG5cbkByZXR1cm4gJHZhbHVlICogbWFwLmdldCgkdW5pdHMsICR1bml0KTtcbn1cblxuLy8vXG4vLy8gVGhpcyBtaXhpbiBhaW1zIGF0IHJlZGVmaW5pbmcgdGhlIGNvbmZpZ3VyYXRpb24ganVzdCBmb3IgdGhlIHNjb3BlIG9mXG4vLy8gdGhlIGNhbGwuIEl0IGlzIGhlbHBmdWwgd2hlbiBoYXZpbmcgYSBjb21wb25lbnQgbmVlZGluZyBhbiBleHRlbmRlZFxuLy8vIGNvbmZpZ3VyYXRpb24gc3VjaCBhcyBjdXN0b20gYnJlYWtwb2ludHMgKHJlZmVycmVkIHRvIGFzIHR3ZWFrcG9pbnRzKVxuLy8vIGZvciBpbnN0YW5jZS5cbi8vL1xuLy8vIEBhdXRob3IgS2l0dHkgR2lyYXVkZWxcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkdHdlYWtwb2ludHMgWygpXSAtIE1hcCBvZiB0d2Vha3BvaW50cyB0byBiZSBtZXJnZWQgd2l0aCBgJGJyZWFrcG9pbnRzYFxuLy8vIEBwYXJhbSB7TWFwfSAkdHdlYWstbWVkaWEtZXhwcmVzc2lvbnMgWygpXSAtIE1hcCBvZiB0d2Vha2VkIG1lZGlhIGV4cHJlc3Npb25zIHRvIGJlIG1lcmdlZCB3aXRoIGAkbWVkaWEtZXhwcmVzc2lvbmBcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBFeHRlbmQgdGhlIGdsb2JhbCBicmVha3BvaW50cyB3aXRoIGEgdHdlYWtwb2ludFxuLy8vICBAaW5jbHVkZSBtZWRpYS1jb250ZXh0KCgnY3VzdG9tJzogNjc4cHgpKSB7XG4vLy8gICAgLmZvbyB7XG4vLy8gICAgICBAaW5jbHVkZSBtZWRpYSgnPnBob25lJywgJzw9Y3VzdG9tJykge1xuLy8vICAgICAgIC8vIC4uLlxuLy8vICAgICAgfVxuLy8vICAgIH1cbi8vLyAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEV4dGVuZCB0aGUgZ2xvYmFsIG1lZGlhIGV4cHJlc3Npb25zIHdpdGggYSBjdXN0b20gb25lXG4vLy8gIEBpbmNsdWRlIG1lZGlhLWNvbnRleHQoJHR3ZWFrLW1lZGlhLWV4cHJlc3Npb25zOiAoJ2FsbCc6ICdhbGwnKSkge1xuLy8vICAgIC5mb28ge1xuLy8vICAgICAgQGluY2x1ZGUgbWVkaWEoJ2FsbCcsICc+cGhvbmUnKSB7XG4vLy8gICAgICAgLy8gLi4uXG4vLy8gICAgICB9XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gRXh0ZW5kIGJvdGggY29uZmlndXJhdGlvbiBtYXBzXG4vLy8gIEBpbmNsdWRlIG1lZGlhLWNvbnRleHQoKCdjdXN0b20nOiA2NzhweCksICgnYWxsJzogJ2FsbCcpKSB7XG4vLy8gICAgLmZvbyB7XG4vLy8gICAgICBAaW5jbHVkZSBtZWRpYSgnYWxsJywgJz5waG9uZScsICc8PWN1c3RvbScpIHtcbi8vLyAgICAgICAvLyAuLi5cbi8vLyAgICAgIH1cbi8vLyAgICB9XG4vLy8gIH1cbi8vL1xuQG1peGluIG1lZGlhLWNvbnRleHQoJHR3ZWFrcG9pbnRzOiAoKSwgJHR3ZWFrLW1lZGlhLWV4cHJlc3Npb25zOiAoKSkge1xuICAvLyBTYXZlIGdsb2JhbCBjb25maWd1cmF0aW9uXG4gICRnbG9iYWwtYnJlYWtwb2ludHM6ICRicmVha3BvaW50cztcbiAgJGdsb2JhbC1tZWRpYS1leHByZXNzaW9uczogJG1lZGlhLWV4cHJlc3Npb25zO1xuXG4gIC8vIFVwZGF0ZSBnbG9iYWwgY29uZmlndXJhdGlvblxuICAkYnJlYWtwb2ludHM6IG1hcC5tZXJnZSgkYnJlYWtwb2ludHMsICR0d2Vha3BvaW50cykgIWdsb2JhbDtcbiAgJG1lZGlhLWV4cHJlc3Npb25zOiBtYXAubWVyZ2UoJG1lZGlhLWV4cHJlc3Npb25zLCAkdHdlYWstbWVkaWEtZXhwcmVzc2lvbnMpICFnbG9iYWw7XG5cbiAgQGNvbnRlbnQ7XG5cbiAgLy8gUmVzdG9yZSBnbG9iYWwgY29uZmlndXJhdGlvblxuICAkYnJlYWtwb2ludHM6ICRnbG9iYWwtYnJlYWtwb2ludHMgIWdsb2JhbDtcbiAgJG1lZGlhLWV4cHJlc3Npb25zOiAkZ2xvYmFsLW1lZGlhLWV4cHJlc3Npb25zICFnbG9iYWw7XG59XG5cbi8vLy9cbi8vLyBpbmNsdWRlLW1lZGlhIHB1YmxpYyBleHBvc2VkIEFQSVxuLy8vIEBhdXRob3IgRWR1YXJkbyBCb3VjYXNcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vL1xuXG4vLy9cbi8vLyBHZW5lcmF0ZXMgYSBtZWRpYSBxdWVyeSBiYXNlZCBvbiBhIGxpc3Qgb2YgY29uZGl0aW9uc1xuLy8vXG4vLy8gQHBhcmFtIHtBcmdsaXN0fSAgICRjb25kaXRpb25zICAtIE1lZGlhIHF1ZXJ5IGNvbmRpdGlvbnNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBXaXRoIGEgc2luZ2xlIHNldCBicmVha3BvaW50XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+cGhvbmUnKSB7IH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBXaXRoIHR3byBzZXQgYnJlYWtwb2ludHNcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz5waG9uZScsICc8PXRhYmxldCcpIHsgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFdpdGggY3VzdG9tIHZhbHVlc1xuLy8vICBAaW5jbHVkZSBtZWRpYSgnPj0zNThweCcsICc8ODUwcHgnKSB7IH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBXaXRoIHNldCBicmVha3BvaW50cyB3aXRoIGN1c3RvbSB2YWx1ZXNcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz5kZXNrdG9wJywgJzw9MTM1MHB4JykgeyB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gV2l0aCBhIHN0YXRpYyBleHByZXNzaW9uXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCdyZXRpbmEyeCcpIHsgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIE1peGluZyBldmVyeXRoaW5nXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PTM1MHB4JywgJzx0YWJsZXQnLCAncmV0aW5hM3gnKSB7IH1cbi8vL1xuQG1peGluIG1lZGlhKCRjb25kaXRpb25zLi4uKSB7XG4gIEBpZiAoJGltLW1lZGlhLXN1cHBvcnQgYW5kIGxpc3QubGVuZ3RoKCRjb25kaXRpb25zKT09MCkgb3IgKG5vdCAkaW0tbWVkaWEtc3VwcG9ydCBhbmQgaW0taW50ZXJjZXB0cy1zdGF0aWMtYnJlYWtwb2ludCgkY29uZGl0aW9ucy4uLikpIHtcbiAgICBAY29udGVudDtcbiAgfVxuXG4gIEBlbHNlIGlmICgkaW0tbWVkaWEtc3VwcG9ydCBhbmQgbGlzdC5sZW5ndGgoJGNvbmRpdGlvbnMpID4gMCkge1xuICAgIEBtZWRpYSAje3N0cmluZy51bnF1b3RlKHBhcnNlLWV4cHJlc3Npb24obGlzdC5udGgoJGNvbmRpdGlvbnMsIDEpKSl9IHtcblxuICAgICAgLy8gUmVjdXJzaXZlIGNhbGxcbiAgICAgIEBpbmNsdWRlIG1lZGlhKHNsaWNlKCRjb25kaXRpb25zLCAyKS4uLikge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIvKiBUeXBvZ3JhcGh5ICovXG5cbkBpbXBvcnQgJy4uL21peGlucy9mb250LWZhY2UnO1xuXG4vLyBGb3IgZ29vZ2xlIGZvbnRzIHBsZWFzZSB1c2UgaHR0cHM6Ly9nb29nbGUtd2ViZm9udHMtaGVscGVyLmhlcm9rdWFwcC5jb20vZm9udHMgaWYgcG9zc2libGVcblxuXG5cbkBpbmNsdWRlIGFkZEZvbnRGYWNlKCdGaXhlbERpc3BsYXknLCAnLi4vLi4vLi4vZm9udHMvRml4ZWxEaXNwbGF5JywgKCd3b2ZmMicpLCAoXG5cdFx0Y3JlYXRlRm9udE1hcCgnRml4ZWxEaXNwbGF5LUxpZ2h0JywgMzAwKSxcblx0XHRjcmVhdGVGb250TWFwKCdGaXhlbERpc3BsYXktUmVndWxhcicsIDQwMCksXG5cdFx0Y3JlYXRlRm9udE1hcCgnRml4ZWxEaXNwbGF5LU1lZGl1bScsIDUwMCksXG5cdFx0Y3JlYXRlRm9udE1hcCgnRml4ZWxEaXNwbGF5LVNlbWlCb2xkJywgNjAwKSxcblx0XHRjcmVhdGVGb250TWFwKCdGaXhlbERpc3BsYXktQm9sZCcsIDcwMCksXG5cdCkpO1xuXG5cbi8qIDFyZW0gPSAxMHB4ICovXG5cbmh0bWwge1xuXG5cdGZvbnQtc2l6ZTogNTAlO1xuXG5cdEBpbmNsdWRlIG1lZGlhKFwiPmRlc2t0b3AtbVwiKSB7XG5cdFx0Zm9udC1zaXplOiA1OCU7XG5cdH1cblxuXHRAaW5jbHVkZSBtZWRpYShcIj5kZXNrdG9wLWxcIikge1xuXHRcdGZvbnQtc2l6ZTogNjIuNSU7XG5cdH1cbn0iLCJAZnVuY3Rpb24gY3JlYXRlRm9udE1hcCgkZmlsZSwgJHdlaWdodDogbm9ybWFsLCAkc3R5bGU6IG5vcm1hbCkge1xuICBAcmV0dXJuIChcbiAgICBmaWxlOiAkZmlsZSxcbiAgICB3ZWlnaHQ6ICR3ZWlnaHQsXG4gICAgc3R5bGU6ICRzdHlsZVxuICApO1xufVxuXG5AbWl4aW4gYWRkRm9udEZhY2UoJGZvbnRGYW1pbHksICRiYXNlUGF0aCwgJGZvcm1hdHMsICRkZWZMaXN0KSB7XG4gICRmb3JtYXRFeHRNYXA6IChcbiAgICAndHJ1ZXR5cGUnOiAndHRmJyxcbiAgICAnb3BlbnR5cGUnOiAnb3RmJ1xuICApO1xuXG4gIEBlYWNoICRkZWYgaW4gJGRlZkxpc3Qge1xuICAgICRzcmM6ICgpO1xuXG4gICAgQGVhY2ggJGZvcm1hdCBpbiAkZm9ybWF0cyB7XG4gICAgICAkZXh0OiBtYXAtZ2V0KCRmb3JtYXRFeHRNYXAsICRmb3JtYXQpO1xuICAgICAgQGlmICRleHQgPT0gbnVsbCB7XG4gICAgICAgICRleHQ6ICRmb3JtYXQ7XG4gICAgICB9XG5cbiAgICAgICRmaWxlOiBtYXBfZ2V0KCRkZWYsICdmaWxlJyk7XG4gICAgICBAZGVidWcgXCLinIUgZmlsZTogI3skZmlsZX0g4oCUIGZvcm1hdDogI3skZXh0fVwiO1xuXG4gICAgICAkdXJsOiB1cmwoJyN7JGJhc2VQYXRofS8jeyRmaWxlfS4jeyRleHR9JykgZm9ybWF0KHF1b3RlKCRmb3JtYXQpKTtcbiAgICAgICRzcmM6IGFwcGVuZCgkc3JjLCAkdXJsLCBjb21tYSk7XG4gICAgfVxuXG4gICAgQGZvbnQtZmFjZSB7XG4gICAgICBmb250LWZhbWlseTogcXVvdGUoJGZvbnRGYW1pbHkpO1xuICAgICAgZm9udC13ZWlnaHQ6IG1hcF9nZXQoJGRlZiwgJ3dlaWdodCcpO1xuICAgICAgZm9udC1zdHlsZTogbWFwX2dldCgkZGVmLCAnc3R5bGUnKTtcbiAgICAgIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgICAgIHNyYzogJHNyYztcbiAgICB9XG4gIH1cbn0iLCIuaXMtd3lzaXd5Zyxcbi53cC1lZGl0b3Ige1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IC44cmVtO1xuXG4gICAgYnIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbGluZS1oZWlnaHQ6IDQuNnJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLjhyZW07XG4gICAgfVxuXG4gICAgJi4tZmFzaGlvbiB7XG5cbiAgICAgICAgaDEsXG4gICAgICAgIGgyLFxuICAgICAgICBoMyxcbiAgICAgICAgaDQsXG4gICAgICAgIGg1IHtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBhOm5vdCgud29vLWJ1dHRvbiwgLmN0YS1idXR0b24pIHtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIH1cblxuICAgICAgICAmLi1hY2NlbnQtbGluayB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItaGFraSk7XG5cbiAgICAgICAgICAgICY6Zm9jdXMsXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBmaWx0ZXI6IHNhdHVyYXRlKDcwJSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBoMSxcbiAgICAuaDEge1xuICAgICAgICBmb250LXNpemU6IGNsYW1wKDRyZW0sIDQuMnZ3LCA3LjJyZW0pO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuXG4gICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgfVxuXG4gICAgaDIsXG4gICAgLmgyIHtcbiAgICAgICAgZm9udC1zaXplOiBjbGFtcCgzLjZyZW0sIDV2dywgNHJlbSk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG5cblxuICAgICAgICAmLmgyLXNtYWxsIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogY2xhbXAoMi40cmVtLCA1dncsIDRyZW0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaDMsXG4gICAgLmgzIHtcbiAgICAgICAgZm9udC1zaXplOiBjbGFtcCgyLjRyZW0sIDV2dywgMy4ycmVtKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcblxuICAgIH1cblxuICAgIGg0LFxuICAgIC5oNCB7XG4gICAgICAgIGZvbnQtc2l6ZTogY2xhbXAoMnJlbSwgNXZ3LCA0cmVtKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICB9XG5cbiAgICBoNSxcbiAgICAuaDUge1xuICAgICAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG5cbiAgICBoNixcbiAgICAuaDYge1xuICAgICAgICBmb250LXNpemU6IGNsYW1wKDEuNnJlbSwgNXZ3LCAxLjhyZW0pO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIH1cblxuICAgIC5tLTgge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gICAgfVxuXG4gICAgLm0tMTYge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjZyZW07XG4gICAgfVxuXG4gICAgLm0tMzIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzLjJyZW07XG4gICAgfVxuXG4gICAgc3Ryb25nIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB9XG5cbiAgICB1bCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMnJlbTtcbiAgICAgICAgbGlzdC1zdHlsZTogZGlzYztcbiAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG5cbiAgICAgICAgbGkge31cbiAgICB9XG5cbiAgICBvbCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMnJlbTtcbiAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG5cbiAgICAgICAgbGkge31cbiAgICB9XG5cbiAgICBwIHtcbiAgICAgICAgZm9udC1zaXplOiBjbGFtcCgxLjZyZW0sIDIuNXZ3LCAxLjZyZW0pO1xuXG5cbiAgICAgICAgYiB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuXG4gICAgICAgIH1cblxuICAgICAgICAmLmgxLXN1YnRpdGxlciB7XG4gICAgICAgICAgICBmb250LXNpemU6IGNsYW1wKDEuNnJlbSwgMi41dncsIDIuNHJlbSk7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1ncmV5KTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG5cblxuICAgICAgICB9XG5cbiAgICAgICAgc3BhbiB7XG5cbiAgICAgICAgICAgICYuc3VidGl0bGUge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2xhbXAoMS42cmVtLCAydncsIDIuNHJlbSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2VwYXJhdG9yIHtcbiAgICAgICAgaGVpZ2h0OiAuMXJlbTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWdyZXkpO1xuICAgICAgICBtYXJnaW46IDMuMnJlbSAwO1xuICAgIH1cblxuICAgIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgbWFyZ2luOiAwIDEuNnJlbSAwIDA7XG4gICAgfVxuXG4gICAgLndvby1idXR0b24ge1xuICAgICAgICBtYXJnaW4tdG9wOiAxLjZyZW07XG4gICAgfVxuXG4gICAgLmFjY2VudC1ibG9jayB7XG5cbiAgICAgICAgYm9yZGVyOiAuMXJlbSBzb2xpZCB2YXIoLS1jb2xvci1ncmV5KTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZiZmJmYjtcbiAgICAgICAgcGFkZGluZzogY2xhbXAoMS42cmVtLCAydncsIDIuNHJlbSk7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGdhcDogMS42cmVtO1xuXG4gICAgfVxuXG4gICAgLmJ1dHRvbnMtcm93IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgZ2FwOiAzLjJyZW07XG4gICAgfVxuXG4gICAgLmljb24tdGV4dC1yb3cge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBnYXA6IDEuNnJlbTtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPHBob25lLWxcIikge1xuICAgICAgICAuYnV0dG9ucy1yb3cge1xuICAgICAgICAgICAgZ2FwOiAxLjZyZW07XG5cbiAgICAgICAgICAgIGEsXG4gICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIi8vIFN0eWxlcyBmb3IgNDA0IGFuZCBvdGhlciBzeXN0ZW0gcGFnZXNcbi8vIC5lcnJvcjQwNCB7XG4vLyBcdHBhZGRpbmctdG9wOiB2YXIoLS1oZWFkZXItaGVpZ2h0KTtcbi8vIH1cblxuLnBhZ2UtNDA0IHtcblx0XG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNlY3Rpb24tcGFkZGluZyk7XG5wYWRkaW5nOiAwO1xuXHQud3JhcHBlciB7XG5cdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG5cdFx0cGFkZGluZy10b3A6IHZhcigtLXNlY3Rpb24tcGFkZGluZyk7XG5cdFx0cGFkZGluZy1ib3R0b206IHZhcigtLXNlY3Rpb24tcGFkZGluZyk7XG5cblx0XHQuaXMtd3lzaXd5ZyB7XG5cdFx0XHRwYWRkaW5nOiAwIDEuNnJlbTtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblx0XHRcdGgxLm1lZ2EtdGV4dCB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogY2xhbXAoOC42cmVtLCA3dncsIDEyLjhyZW0pO1xuXHRcdFx0XHRjb2xvcjogdmFyKC0tY29sb3ItaGFraSk7XG5cdFx0XHR9XG5cblx0XHRcdHAge1xuXHRcdFx0XHRtYXgtd2lkdGg6IDU5cmVtO1xuXHRcdFx0fVxuXG5cdFx0XHQuY3RhLWJ1dHRvbiB7XG5cdFx0XHRcdG1hcmdpbi10b3A6IDUuNnJlbVxuXHRcdFx0fVxuXHRcdH1cblxuXHR9XG59IiwiOnJvb3Qge1xuICAgIC0tYWRtaW4tYmFyOiAzMnB4O1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI8PXRhYmxldFwiKSB7XG4gICAgICAgIC0tYWRtaW4tYmFyOiA0NnB4O1xuICAgIH1cblxuICAgIC0tbWFpbi1oZWFkZXItY29sb3I6ICNmZmY7XG59XG5cbmhlYWRlciB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHotaW5kZXg6IDEwO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSk7XG5cbiAgICAud3JhcHBlciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICB9XG5cbiAgICAubG9nbyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDE5cmVtO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG5cbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuXG4gICAgICAgICAgICBwYXRoIHtcbiAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubW9iaWxlLWxvZ28ge1xuICAgICAgICBtYXgtd2lkdGg6IDEyLjNyZW07XG5cbiAgICAgICAgcGF0aCB7XG4gICAgICAgICAgICBmaWxsOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubW9iaWxlLWNhcnQge1xuICAgICAgICBhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgICAgICAgIFxuXHRcdFx0LmhlYWRlci1jb3VudGVyLS1jYXJ0IHtcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRsZWZ0OiA1MCU7XG5cdFx0XHRcdHRvcDogNTAlO1xuICAgICAgICAgICAgICAgIFxuXHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtMzAlKTtcblx0XHRcdFx0Zm9udC1zaXplOiAwLjhyZW07XG5cdFx0XHR9XG4gICAgICAgICAgICBpbWcsXG4gICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyLjRyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cdC5tb2JpbGUtd2lzaGxpc3Qge1xuICAgICAgICBhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRwb3NpdGlvbjpyZWxhdGl2ZTtcblx0XHRcdC5oZWFkZXItY291bnRlci0td2lzaGxpc3Qge1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdGxlZnQ6IDUwJTtcblx0XHRcdFx0dG9wOiA1MCU7XG5cdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01NSUpO1xuXHRcdFx0XHRmb250LXNpemU6IDAuOHJlbTtcblx0XHRcdH1cbiAgICAgICAgICAgIGltZyxcbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIuNHJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuYnVyZ2VyLWFjdGl2ZSB7XG4gICAgICAgIC5oZWFkZXItdG9wIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICBwYXRoIHtcbiAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubW9iaWxlLWNhcnQubW9iaWxlIHtcbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgcGF0aCB7XG4gICAgICAgICAgICAgICAgICAgIGZpbGw6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5oZWFkZXItdG9wIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZ3JleSk7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogMS4ycmVtO1xuICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMXMgZWFzZS1pbjtcblxuICAgICAgICAmX19saW5rcyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGdhcDogMi40cmVtO1xuXG4gICAgICAgICAgICAubmF2LWxpbmsge1xuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogbWF4LWNvbnRlbnQ7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX19hY3Rpb25zIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgZ2FwOiAyLjRyZW07XG5cbiAgICAgICAgICAgIC5hY3Rpb25zLXNvY2lhbHMge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBnYXA6IDEuNnJlbTtcblxuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMi40cmVtO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDIuNHJlbTtcbiAgICAgICAgICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiAxIC8gMTtcbiAgICAgICAgICAgICAgICAgICAgZmlsbDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHN2ZyBwYXRoIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHN0cm9rZSAwLjNzIGVhc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgc3ZnIHBhdGgge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZTogIzAwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBzdHJva2UgMC4zcyBlYXNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmxhbmd1YWdlLXN3aXRjaGVyIHtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zZXBhcmF0b3ItdiB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmhlYWRlci1tYWluIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBwYWRkaW5nOiAyLjRyZW0gMS42cmVtO1xuICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMnMgZWFzZTtcblxuICAgICAgICAmLnNjcm9sbGVkIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuXG4gICAgICAgICAgICAubG9nbyB7XG4gICAgICAgICAgICAgICAgcGF0aCB7XG4gICAgICAgICAgICAgICAgICAgIGZpbGw6ICNmZmY7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY2F0ZWdvcmllcy1pdGVtIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJl9fY2F0ZWdvcmllcyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgZ2FwOiA2LjRyZW07XG5cbiAgICAgICAgICAgIC5jYXRlZ29yaWVzLWl0ZW0ge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIuNHJlbSAwO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2xhbXAoMS4ycmVtLCAxLjV2dywgMS44cmVtKTtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX19hY3Rpb25zIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgZ2FwOiAyLjRyZW07XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIuNHJlbTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDIuNHJlbTtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2U7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmhlYWRlci1jb3VudGVyLS13aXNobGlzdCB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44cmVtO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5oZWFkZXItY291bnRlci0tY2FydCB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTMwJSk7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44cmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIGxpIHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgICAgICAmOjptYXJrZXIge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6Oi13ZWJraXQtbWFya2VyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYnVyZ2VyLWJ1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBnYXA6IDAuNXJlbTtcbiAgICAgICAgd2lkdGg6IDRyZW07XG4gICAgICAgIGhlaWdodDogNHJlbTtcbiAgICAgICAgcGFkZGluZzogMC44cmVtO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1oYWtpKTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMTAwMDtcblxuICAgICAgICAubGluZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGhlaWdodDogMC4ycmVtO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYnVyZ2VyLWJ1dHRvbi1hY3RpdmUge1xuICAgICAgICAgICAgLmxpbmUxIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoN3B4KSByb3RhdGUoNDVkZWcpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubGluZTIge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5saW5lMyB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03cHgpIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmRlc2t0b3Age1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgIH1cblxuICAgIC5tb2JpbGUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPDEzMDBweFwiKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWdyZXkpO1xuXG4gICAgICAgIC5oZWFkZXItbWFpbiB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxLjZyZW0gMS42cmVtO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM4MDgwODA1ODtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjODA4MDgwNTg7XG5cbiAgICAgICAgICAgIC53cmFwcGVyIHtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9fY2F0ZWdvcmllcyB7XG4gICAgICAgICAgICAgICAgZ2FwOiAxLjZyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuc2Nyb2xsZWQge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWdyZXkpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY2F0ZWdvcmllcy1pdGVtIHtcbiAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjODA4MDgwNTg7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAxLjZyZW0gMCAwO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzAwMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaGVhZGVyLXRvcCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgICAgICAgICAgLmxhbmd1YWdlLXN3aXRjaGVyIHtcbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuc2VwYXJhdG9yLXYge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmRlc2t0b3Age1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5tb2JpbGUge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmJ1cmdlci1tZW51IHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgei1pbmRleDogMjAwO1xuICAgIHRvcDogdmFyKC0tZmlyc3QtbmF2LWhlaWdodCk7XG4gICAgcmlnaHQ6IC0xMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gdmFyKC0tZmlyc3QtbmF2LWhlaWdodCkpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICB0cmFuc2l0aW9uOiByaWdodCAwLjVzIGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTtcblxuICAgICYuYWN0aXZlIHtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgfVxuXG4gICAgJl9fd3JhcHBlciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cdFx0b3ZlcmZsb3c6YXV0bztcblx0XHRtYXgtaGVpZ2h0OmNhbGMoMTAwdmggLSB2YXIoLS1oZWFkZXItaGVpZ2h0KSk7XG4gICAgfVxuXG4gICAgJl9fY29udGVudCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgLnNlYXJjaCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAyLjRyZW0gMS42cmVtIDEuNnJlbSAxLjZyZW07XG4gICAgICAgIH1cblxuICAgICAgICAuY2F0ZWdvcmllcyB7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDAuMXJlbSBzb2xpZCB2YXIoLS1jb2xvci10cmFucy1ibGFjayk7XG5cbiAgICAgICAgICAgIC5jYXRlZ29yaWVzLWl0ZW0ge1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDAuMXJlbSBzb2xpZCB2YXIoLS1jb2xvci10cmFucy1ibGFjayk7XG5cbiAgICAgICAgICAgICAgICAuaXRlbS1uYW1lIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAyLjRyZW0gMS42cmVtO1xuICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPDEzMDBweFwiKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPDEzMDBweFwiKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAuY3Jvc3Mge1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEuNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMS41cmVtO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItaGFraSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAwLjJyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC41cyBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC55IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLmFjdGl2ZSAuY3Jvc3MgLnkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuaXRlbS1jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuXG4gICAgICAgICAgICAgICAgICAgIC5zdWJjYXRlZ29yeS1pdGVtIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEuNnJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDAuMXJlbSBzb2xpZCAjODA4MDgwMjM7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJlaWdlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8MTMwMHB4XCIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmZvb3RlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGdhcDogMi40cmVtO1xuICAgICAgICAgICAgcGFkZGluZzogMi40cmVtIDEuNnJlbSA1LjJyZW0gMS42cmVtO1xuXG4gICAgICAgICAgICAubGlua3Mge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgICAgIHJvdy1nYXA6IDMuMnJlbTtcbiAgICAgICAgICAgICAgICBjb2x1bW4tZ2FwOiA1cmVtO1xuXG4gICAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTMwMHB4KSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBjb2x1bW5zOiAyO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgICAgICAgICAgICAgIGZsZXg6IDEgMSAxNHJlbTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IG1heC1jb250ZW50O1xuXG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEzMDBweCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY29udGFjdHMge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdFx0ZmxleC13cmFwOndyYXA7XG4gICAgICAgICAgICAgICAgZ2FwOiA1cmVtO1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgICAgICAgICAgICAgIGZpbGw6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIH1cblx0XHRcdFx0c3ZnIHBhdGgge1xuXHRcdFx0XHRcdHN0cm9rZTp2YXIoLS1jb2xvci13aGl0ZSk7XG5cdFx0XHRcdH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuYm9keSB7XG4gICAgJi5oYXMtbGlnaHQtaGVhZGVyIHtcbiAgICAgICAgaGVhZGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWdyZXkpICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICYuYnVyZ2VyLWFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgLm1vYmlsZS1jYXJ0IHtcbiAgICAgICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmhlYWRlci10b3Age1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG5cbiAgICAgICAgICAgICAgICAgICAgLmxhbmd1YWdlLXN3aXRjaGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC5zZXBhcmF0b3ItdiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOm5vdCguYnVyZ2VyLWFjdGl2ZSkge1xuICAgICAgICAgICAgICAgIC5oZWFkZXItdG9wIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZ3JleSkgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAgICAgICAubG9nbyBwYXRoIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5sYW5ndWFnZS1zd2l0Y2hlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAuc2VwYXJhdG9yLXYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmhlYWRlci1tYWluIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ncmV5KSAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAgICAgLmxvZ28gcGF0aCB7XG4gICAgICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmX19hY3Rpb25zIHtcbiAgICAgICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhdGgge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZTogI2ZmZjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5jYXRlZ29yaWVzLWl0ZW0ge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuXG4gICAgICAgICAgICAgICAgICAgIC5zdWItbWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+MTMwMHB4XCIpIHtcbiAgICAgICAgICAgIGhlYWRlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAgIC5oZWFkZXItbWFpbiB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICAgICAgICAgLmxvZ28gcGF0aCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiAjZmZmO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLmhlYWRlci1jb3VudGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLmNhdGVnb3JpZXMtaXRlbSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcblx0XHRcdFx0XHRcdFx0dHJhbnNpdGlvbjphbGwgLjJzIGVhc2UtaW47XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcblx0XHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOnZhcigtLWNvbG9yLWdyZXkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItaGFraSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi5zY3JvbGxlZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ncmV5KSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgLmxvZ28gcGF0aCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogIzAwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgLmhlYWRlci1jb3VudGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAuY2F0ZWdvcmllcy1pdGVtIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICMwMDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItaGFraSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuc3ViLW1lbnUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAubGFuZ3VhZ2Utc3dpdGNoZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzAwMDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1oYWtpKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5zZXBhcmF0b3ItdiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAuaGVhZGVyLW1haW5fX2FjdGlvbnMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN2ZyBwYXRoIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAuaGVhZGVyLXRvcCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmxhbmd1YWdlLXN3aXRjaGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzAwMDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWhha2kpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLnNlcGFyYXRvci12IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmX19saW5rcyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5uYXYtbGluayB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzAwMDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWhha2kpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNhdGVnb3JpZXMtaXRlbSB7XG4gICAgICAgIC5zdWItbWVudSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDkwJSk7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8PTEzMDBweFwiKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjMDAwIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEuNnJlbTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAwLjFyZW0gc29saWQgIzgwODA4MDIzO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4zcyBlYXNlO1xuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJlaWdlKTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjNzIGVhc2U7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5tZW51LWl0ZW0taGFzLWNoaWxkcmVuIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgPmEge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItaGFraSk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnN1Yi1tZW51IHtcbiAgICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNlYXJjaCBEcm9wZG93blxuICAgIC5zZWFyY2gtZHJvcGRvd24ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgd2lkdGg6IDEwMHZ3O1xuICAgICAgICBtYXgtd2lkdGg6IGNhbGModmFyKC0tY29udGFpbmVyLW1heC13aWR0aCkgLSA0MHJlbSk7XG4gICAgICAgIGJhY2tncm91bmQ6ICNlZGVkZWQ7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgNHB4IDIwcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgICAgICB6LWluZGV4OiAxMDAwO1xuXG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2UsIHZpc2liaWxpdHkgMC4zcyBlYXNlO1xuXHRcdCBhIHtcblx0XHRcdHdpZHRoOnVuc2V0O1xuXHRcdFx0aGVpZ2h0OnVuc2V0O1xuXHRcdH1cbiAgICAgICAgc3ZnIHBhdGgge1xuICAgICAgICAgICAgc3Ryb2tlOiAjN2E3OTUzICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlLCB2aXNpYmlsaXR5IDAuM3MgZWFzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jb250ZW50LXByb2R1Y3RfX2l0ZW0gLmluZm8gLmFjdGlvbnMge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2hlYWRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGdhcDogMXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMS42cmVtO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNWU1ZTU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9faW5wdXQtd3JhcHBlciB7XG4gICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBnYXA6IDFyZW07XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIH1cblxuICAgICAgICAmX19pY29uIHtcbiAgICAgICAgICAgIHdpZHRoOiAycmVtO1xuICAgICAgICAgICAgaGVpZ2h0OiAycmVtO1xuICAgICAgICAgICAgY29sb3I6ICM3YTc5NTM7XG4gICAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2lucHV0IHtcbiAgICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgICBjb2xvcjogIzAwMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgcGFkZGluZzogMS42cmVtO1xuXG4gICAgICAgICAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICM5OTk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX19jbG9zZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgcGFkZGluZzogMC41cmVtO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIGNvbG9yOiAjN2E3OTUzO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2U7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuNztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMnJlbTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDJyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX19yZXN1bHRzIHtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDYwcmVtO1xuICAgICAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2VtcHR5LFxuICAgICAgICAmX19sb2FkaW5nLFxuICAgICAgICAmX19lcnJvciB7XG4gICAgICAgICAgICBwYWRkaW5nOiAzcmVtIDEuNnJlbTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGNvbG9yOiAjOTk5O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgIH1cblxuICAgICAgICAmX19wcm9kdWN0cyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTtcbiAgICAgICAgICAgIGdhcDogMy4ycmVtO1xuICAgICAgICAgICAgcGFkZGluZzogNHJlbSA0cmVtIDMuMnJlbSA0cmVtO1xuXG4gICAgICAgICAgICAuY29udGVudC1wcm9kdWN0X19pdGVtIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX19mb290ZXIge1xuICAgICAgICAgICAgcGFkZGluZzogMCAxLjZyZW0gNHJlbSAxLjZyZW07XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX3Nob3ctYWxsIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHBhZGRpbmc6IDEuMnJlbSAyLjRyZW07XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjN2E3OTUzO1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjNzIGVhc2U7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICM1YTU5NDM7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIuc2l0ZS1mb290ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICBwYWRkaW5nOiBjbGFtcCg0cmVtLCA2dncsIDhyZW0pIDEuNnJlbSA0cmVtIDEuNnJlbTtcblxuICAgIHVsIHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC5zb2NpYWxzLWxpc3Qge1xuICAgICAgICBmaWxsOiB0cmFuc3BhcmVudDtcblx0XHRmbGV4LXdyYXA6d3JhcDtcbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIHBhdGgge1xuICAgICAgICAgICAgICAgIHN0cm9rZTogI2ZmZjtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICBwYXRoIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZTogdmFyKC0tY29sb3ItaGFraSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLndyYXBwZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGdhcDogNC44cmVtO1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fbGlua3Mge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBnYXA6IDMuMnJlbTtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgICAgIC5sb2dvIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgZ2FwOiAxLjZyZW07XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDI0cmVtO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTkuOHJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5mb290ZXItY29sdW1uIHtcbiAgICAgICAgICAgIGNvbHVtbnM6IDI7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgICAgJiA+IGxpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDFyZW0gMnJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmxpbmstaXRlbSB7XG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjxwaG9uZS1sXCIpIHtcbiAgICAgICAgICAgIGdhcDogMDtcbiAgICAgICAgICAgIC5mb290ZXItY29sdW1uIHtcbiAgICAgICAgICAgICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgICAgICAgICAgICBnYXA6IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgICAgICAubGluay1pdGVtIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEuNnJlbSAwO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzgwODA4MDVkO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2FjdGlvbnMge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBnYXA6IDIuNHJlbTtcbiAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG5cbiAgICAgICAgLmNvbnRhY3RzIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgZ2FwOiAycmVtO1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IG1heC1jb250ZW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI8cGhvbmUtbFwiKSB7XG4gICAgICAgIC5sb2dvIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIuNHJlbTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5cbiIsImJvZHkge1xuICAgICYubW9kYWwtb3BlbiB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxufVxuXG4ubW9kYWwtb3ZlcmxheSB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBpbnNldDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIC41KTtcbiAgICB6LWluZGV4OiA5OTk5O1xuICAgIHBhZGRpbmc6IDIuNHJlbTtcblxuICAgIC5sb2FkZXItd3JhcHBlciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuXG4gICAgLm1vZGFsIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMy4ycmVtKTtcbiAgICAgICAgbWF4LXdpZHRoOiA3MC4ycmVtO1xuICAgICAgICBtYXgtaGVpZ2h0OiA4MHZoO1xuXG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7XG5cblxuICAgICAgICAmX19jb250ZW50IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgICAgICBtYXJnaW46IGF1dG87XG5cbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICBwYWRkaW5nOiA0LjhyZW07XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiBub25lO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGdhcDogMy4ycmVtO1xuXG4gICAgICAgICAgICAuaGVhZGVyIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgICAgIGhlaWdodDogZml0LWNvbnRlbnQ7XG5cblxuXG4gICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDI4cmVtO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5tb2RhbF9fY2xvc2Uge1xuXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNHJlbTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA0cmVtO1xuICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDRyZW07XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5mYWN0cy1saXN0IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAgICAgZ2FwOiAxLjJyZW07XG5cbiAgICAgICAgICAgICAgICBoNCB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFya2dyZXkpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5saXN0IHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICAgICAgZ2FwOiAuOHJlbTtcbiAgICAgICAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGdhcDogLjhyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAuOHJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogLjRyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1iZWlnZSk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMy42cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMy42cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFRkYwRkY7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogLjRyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDJyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5hY2NvcmRpb24tdGFicyB7XG4gICAgICAgICAgICAgICAgZ2FwOiAzLjJyZW07XG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuXG4gICAgICAgICAgICAgICAgJl9faXRlbSB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTI4LCAxMjgsIDEyOCwgMC4xMjUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG5cblxuXG5cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIjxwaG9uZS1sXCIpIHtcbiAgICAgICAgYm9yZGVyOiAuMXJlbSBzb2xpZCB2YXIoLS1jb2xvci1iZWlnZSk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGREZERkQ7XG4gICAgICAgIHBhZGRpbmc6IDEuMnJlbTtcbiAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuXG4gICAgICAgIC5tb2RhbCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMGR2aCAtIDIuNHJlbSk7XG4gICAgICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuXG4gICAgICAgICAgICAmX19jb250ZW50IHtcblxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEuNnJlbTtcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiBub25lO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJlaWdlKTtcblxuICAgICAgICAgICAgICAgIC5oZWFkZXIge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcblxuICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDIwcmVtO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLm1vZGFsX19jbG9zZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cblxuXG4gICAgfVxuXG59XG4iLCJib2R5IHtcbiAgICAmLm1pbmktY2FydC1vcGVuIHtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG59XG5cbi5taW5pLWNhcnQtb3ZlcmxheSB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBpbnNldDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIC41KTtcbiAgICB6LWluZGV4OiA5OTk5O1xuICAgIHBhZGRpbmc6IDIuNHJlbTtcblxuICAgIC5sb2FkZXItd3JhcHBlciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuXG4gICAgLndpZGdldF9zaG9wcGluZ19jYXJ0X2NvbnRlbnQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAzLjJyZW0pO1xuICAgICAgICBtYXgtd2lkdGg6IDcwLjJyZW07XG5cbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgfVxuXG4gICAgLm1pbmktY2FydCB7XG5cblxuXG4gICAgICAgICZfX2NvbnRlbnQge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgICAgIG1hcmdpbjogYXV0bztcblxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgIHBhZGRpbmc6IDQuOHJlbTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgZ2FwOiAzLjJyZW07XG5cbiAgICAgICAgICAgIC5oZWFkZXIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBmaXQtY29udGVudDtcblxuXG5cbiAgICAgICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMzJyZW07XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLm1pbmktY2FydF9fY2xvc2Uge1xuXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNHJlbTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA0cmVtO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY2FydC1mdWxsX19wcm9kdWN0LWl0ZW0ge1xuICAgICAgICAgICAgICAgIGhlaWdodDogZml0LWNvbnRlbnQ7XG4gICAgICAgICAgICB9XG5cblxuICAgICAgICB9XG4gICAgICAgICZfX2Zvb3RlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZ2FwOiAxLjZyZW07XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgKiB7XG4gICAgICAgICAgICAgICAgZmxleDogMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG5cblxuXG5cblxuXG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI8cGhvbmUtbFwiKSB7XG4gICAgICAgIGJvcmRlcjogLjFyZW0gc29saWQgdmFyKC0tY29sb3ItYmVpZ2UpO1xuICAgICAgICBcbiAgICAgICAgcGFkZGluZzogMS4ycmVtO1xuXG4gICAgICAgIC5taW5pLWNhcnQge1xuICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAmX19jb250ZW50IHtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMS42cmVtO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJlaWdlKTtcblxuICAgICAgICAgICAgICAgIC5oZWFkZXIge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcblxuICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDIwcmVtO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLm1pbmktY2FydF9fY2xvc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG5cblxuICAgIH1cblxufSIsImJvZHkge1xuXG4gICAgJi5zaWRlLWNhcnQtb3BlbixcbiAgICAmLnNsaWRlLWNhcnQtb3BlbiB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxufVxuXG4uc2xpZGUtY2FydC1vdmVybGF5IHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIGluc2V0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgLjUpO1xuICAgIHotaW5kZXg6IDk5OTk7XG4gICAgcGFkZGluZzogMi40cmVtO1xuXG4gICAgLmxvYWRlci13cmFwcGVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG5cbiAgICAud2lkZ2V0X3NpZGVfY2FydF9jb250ZW50IHtcblxuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgLnNpZGUtY2FydCB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcblxuXG4gICAgICAgICZfX2NvbnRlbnQge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIHBhZGRpbmc6IDQuOHJlbSBjbGFtcCgxLjZyZW0sIDN2dywgNC44cmVtKTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgZ2FwOiAzLjJyZW07XG5cbiAgICAgICAgICAgIC5oZWFkZXIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBmaXQtY29udGVudDtcblxuXG5cbiAgICAgICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMzJyZW07XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnNpZGUtY2FydF9fY2xvc2Uge1xuXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNHJlbTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA0cmVtO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY2FydC1mdWxsX19wcm9kdWN0LWl0ZW0ge1xuICAgICAgICAgICAgICAgIGhlaWdodDogZml0LWNvbnRlbnQ7XG4gICAgICAgICAgICB9XG5cblxuICAgICAgICB9XG5cbiAgICAgICAgJl9fYmxvY2sge1xuXG5cbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgZ2FwOiBjbGFtUCgxLjZyZW0sIDN2dywgMy4ycmVtKTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX3Byb2R1Y3QtbGlzdCB7XG5cbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgZ2FwOiBjbGFtcCgwLjhyZW0sIDJ2dywgMS42cmVtKTtcblxuICAgICAgICAgICAgZmxleDogMSAxIGF1dG87XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAwO1xuICAgICAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgICAgICAgIC5lbXB0eS1wcm9kdWN0cyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX2Zvb3RlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZ2FwOiAxLjZyZW07XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgICAgICAgICAqIHtcbiAgICAgICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cblxuXG5cblxuXG5cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIjxwaG9uZS1sXCIpIHtcbiAgICAgICAgYm9yZGVyOiAuMXJlbSBzb2xpZCB2YXIoLS1jb2xvci1iZWlnZSk7XG5cbiAgICAgICAgcGFkZGluZzogMS4ycmVtO1xuXG4gICAgICAgIC5zaWRlLWNhcnQge1xuICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAmX19jb250ZW50IHtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMS42cmVtO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJlaWdlKTtcblxuICAgICAgICAgICAgICAgIC5oZWFkZXIge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcblxuICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDIwcmVtO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLnNpZGUtY2FydF9fY2xvc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG5cblxuICAgIH1cblxufVxuXG4uc2xpZGUtY2FydC1vdmVybGF5IHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgaW5zZXQ6IDA7XG4gICAgei1pbmRleDogMTAwMDA7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAgICYuaXMtdmlzaWJsZSB7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuXG4gICAgICAgIC5zbGlkZS1jYXJ0X19iYWNrZHJvcCB7XG4gICAgICAgICAgICBvcGFjaXR5OiAuNjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zbGlkZS1jYXJ0X19wYW5lbCB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAtOHB4IDAgMjRweCByZ2JhKDAsIDAsIDAsIC4xKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zbGlkZS1jYXJ0X19iYWNrZHJvcCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgaW5zZXQ6IDA7XG4gICAgICAgIGJhY2tncm91bmQ6ICMwMDA7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjJzIGVhc2U7XG4gICAgfVxuXG4gICAgLnNsaWRlLWNhcnRfX3BhbmVsIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuXG4gICAgICAgIG1heC13aWR0aDogNzByZW07XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNXMgY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cblxuICAgIC5zbGlkZS1jYXJ0X19sb2FkZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgZmxleDogMSAxIGF1dG87XG4gICAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAyLjRyZW07XG5cbiAgICAgICAgLmxvYWRlci13cmFwcGVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGJhY2tkcm9wLWZpbHRlcjogbm9uZTtcbiAgICAgICAgICAgIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNsaWRlLWNhcnRfX2JvZHkge1xuICAgICAgICBmbGV4OiAxO1xuICAgICAgICBtaW4taGVpZ2h0OiAwO1xuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuXG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDcwcmVtO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPHRhYmxldFwiKSB7XG4gICAgICAgIC5zbGlkZS1jYXJ0X19wYW5lbCB7XG4gICAgICAgICAgICB3aWR0aDogbWluKDkwdncsIDM4cmVtKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYShcIjxwaG9uZS1sXCIpIHtcbiAgICAgICAgLnNsaWRlLWNhcnRfX3BhbmVsIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLmN0YS1idXR0b24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZ2FwOiAuOHJlbTtcbiAgICBwYWRkaW5nOiAxLjhyZW0gMi40cmVtO1xuICAgIHdpZHRoOiBmaXQtY29udGVudDtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgIHRyYW5zaXRpb246IGZpbHRlciAuMXMgZWFzZS1pbjtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICYuLWhha2kge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1oYWtpKTtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgIH1cblxuICAgICYuLWJsYWNrIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICB9XG5cbiAgICAmLi1mdWxsIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgICYuLXVwcGVyIHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICAgIGZpbHRlcjpzYXR1cmF0ZSg0MCUpO1xuICAgIH1cbn0iLCI6cm9vdCB7XG4gICAgLS1mb3JtLXRleHQtc2l6ZTogY2xhbXAoMS40cmVtLCAydncsIDEuNnJlbSk7XG59XG5cbi5zZWFyY2gtZmllbGQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDQuOHJlbTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci10cmFucy1ibGFjayk7XG5cbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1maWVsZCk7XG5cbiAgICAuaWNvbiB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMS4ycmVtO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICB3aWR0aDogMi40cmVtO1xuICAgICAgICBoZWlnaHQ6IDIuNHJlbTtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuXG4gICAgaW5wdXQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGluc2V0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIHBhZGRpbmctbGVmdDogNC41cmVtO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcblxuICAgICAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJjpmb2N1cy13aXRoaW4ge1xuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWZvY3VzKTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgM3B4IHJnYmEoNTksIDEzMCwgMjQ2LCAwLjE1KTtcbiAgICB9XG59XG5cbi5kZWZhdWx0LWZvcm0ge1xuICAgICYud2l0aC1zdWNjZXNzIHtcbiAgICAgICAgLnN1Y2Nlc3MtbWVzc2FnZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWdyZXkpO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICB6LWluZGV4OiAyMDtcblxuICAgICAgICAgICAgJl9faW5uZXIge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogNC44cmVtO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIGdhcDogMC44cmVtO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9faWNvbiB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDYuNHJlbTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfX3RpdGxlIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItaGFraSk7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyLjRyZW07XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfX2Rlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9ybS10ZXh0LXNpemUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogMi40cmVtO1xuXG4gICAgLml0aSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC5pdGlfX2ZsYWctY29udGFpbmVyIHtcbiAgICAgICAgLml0aV9fc2VsZWN0ZWQtZmxhZyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1kYXJrd2hpdGUpICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNnJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5pdGlfX3NlbGVjdGVkLWRpYWwtY29kZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgLml0aV9fc2VsZWN0ZWQtZmxhZyB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmVpZ2UpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmN0YS1idXR0b24ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAuZmlsZS11cGxvYWQge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgZ2FwOiAyLjRyZW07XG5cbiAgICAgICAgLmFjdGlvbnMge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgZ2FwOiAyLjRyZW07XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC51cGxvYWQtYnRuIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1ncmV5KTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuOHJlbSAzcmVtIDAuOHJlbSAxLjZyZW07XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMnM7XG5cbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvcm0tdGV4dC1zaXplKTtcbiAgICAgICAgICAgICAgICBnYXA6IDAuOHJlbTtcbiAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZTNlM2RjO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmZpbGUtcHJldmlld3Mge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgIGdhcDogMTBweDtcblxuICAgICAgICAgICAgLmZpbGUtaXRlbSB7XG4gICAgICAgICAgICAgICAgZmxleDogMSAwIDZyZW07XG4gICAgICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiAxLzE7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmZpbGUtcHJldmlld3MgLnJlbW92ZSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDJweCA2cHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIH1cblxuICAgICAgICAuYWRkLW1vcmUtZmlsZXMge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIHdpZHRoOiBmaXQtY29udGVudDtcbiAgICAgICAgICAgIGNvbG9yOiAjOGI4YjZmO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmRlZmF1bHQtaW5wdXQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgcGFkZGluZzogMS44cmVtIDEuNnJlbTtcbiAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmYmZiZmI7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItZ3JleSk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdHJhbnNpdGlvbjpcbiAgICBvdXRsaW5lIDAuMXMgZWFzZS1pbixcbiAgICBjb2xvciAwLjFzIGVhc2UtaW4sXG4gICAgYm9yZGVyIDAuMXMgZWFzZS1pbjtcblxuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWhha2kpO1xuICAgIH1cbn1cblxuLnRoaW4taW5wdXQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgcGFkZGluZzogMS40cmVtIDEuNnJlbTtcbiAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmYmZiZmI7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItZ3JleSk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMXMgZWFzZS1pbjtcblxuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWhha2kpO1xuICAgIH1cbn1cbi5pdGlfX3NlbGVjdGVkLWRpYWwtY29kZSB7XG4gICAgZm9udC1zaXplOiAxLjZyZW1cbn1cbi5yYWRpby1sYWJlbCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwYWRkaW5nOiAxLjhyZW0gMS42cmVtO1xuICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZiZmJmYjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ncmV5KTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4xcyBlYXNlLWluO1xuXG4gICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiAxcHggc29saWQgdmFyKC0tY29sb3ItaGFraSk7XG4gICAgfVxuXG4gICAgbGFiZWwge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDMuNHJlbTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDEuOHJlbTtcbiAgICAgICAgICAgIGhlaWdodDogMS44cmVtO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWdyZXkpO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMXMgZWFzZS1vdXQ7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICB9XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgd2lkdGg6IDAuOHJlbTtcbiAgICAgICAgICAgIGhlaWdodDogMC44cmVtO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZ3JlZW4pO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogMC41cmVtO1xuICAgICAgICAgICAgdG9wOiAwLjVyZW07XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnJhZGlvLWxhYmVsLWlucHV0IHtcbiAgICAgICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IDM7XG4gICAgfVxuXG4gICAgLnJhZGlvLWxhYmVsLWlucHV0OmNoZWNrZWQgKyBsYWJlbDphZnRlciB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgfVxufVxuXG4uZGVmYXVsdC10ZXh0YXJlYSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwYWRkaW5nOiAxLjhyZW0gMS42cmVtO1xuICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbWluLXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTRyZW07XG4gICAgbWF4LWhlaWdodDogMTZyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZiZmJmYjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ncmV5KTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4xcyBlYXNlLWluO1xuXG4gICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiAxcHggc29saWQgdmFyKC0tY29sb3ItaGFraSk7XG4gICAgfVxufVxuXG4uZGVmYXVsdC1zdWJtaXQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBnYXA6IDEuNnJlbTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgbWluLXdpZHRoOiBtYXgtY29udGVudDtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1oYWtpKTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdHJhbnNpdGlvbjogZmlsdGVyIDAuMXMgZWFzZTtcbiAgICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gICAgcGFkZGluZzogMS40cmVtIDJyZW07XG4gICAgaGVpZ2h0OiBmaXQtY29udGVudDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHRyYW5zaXRpb246IGZpbHRlciAwLjJzIGVhc2UtaW47XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgZmlsdGVyOiBzYXR1cmF0ZSg0MCUpO1xuICAgIH1cbn1cbi5kZWZhdWx0LWlucHV0LmlzLWludmFsaWQsXG4uZGVmYXVsdC1pbnB1dC53cGNmNy1ub3QtdmFsaWQge1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLXJlZCkhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzIwJyBoZWlnaHQ9JzIwJyB2aWV3Qm94PScwIDAgMjAgMjAnIGZpbGw9J25vbmUnJTNFJTNDY2lyY2xlIGN4PScxMCcgY3k9JzEwJyByPSc4LjUnIHN0cm9rZT0nJTIzRjMzOTJEJy8lM0UlM0NwYXRoIGQ9J005Ljk5NzgxIDE0LjQ2MjNDMTAuMTcyNSAxNC40NjIzIDEwLjMxODggMTQuNDAzMyAxMC40MzY4IDE0LjI4NTNDMTAuNTU0MSAxNC4xNjczIDEwLjYxMjggMTQuMDIxIDEwLjYxMjggMTMuODQ2M0MxMC42MTI4IDEzLjY3MjMgMTAuNTUzOCAxMy41MjYzIDEwLjQzNTggMTMuNDA4M0MxMC4zMTc4IDEzLjI5MDMgMTAuMTcxOCAxMy4yMzEgOS45OTc4MSAxMy4yMzAzQzkuODIzODEgMTMuMjI5NyA5LjY3NzgxIDEzLjI4ODcgOS41NTk4MSAxMy40MDczQzkuNDQxODEgMTMuNTI2IDkuMzgyODEgMTMuNjcyIDkuMzgyODEgMTMuODQ1M0M5LjM4MjgxIDE0LjAxODcgOS40NDE4MSAxNC4xNjUgOS41NTk4MSAxNC4yODQzQzkuNjc3ODEgMTQuNDAzNyA5LjgyMzgxIDE0LjQ2MzcgOS45OTc4MSAxNC40NjIzWk05LjQ5NzgxIDExLjE1MzNIMTAuNDk3OFY1LjE1MzMySDkuNDk3ODFWMTEuMTUzM1onIGZpbGw9JyUyM0YzMzkyRCcvJTNFJTNDL3N2ZyUzRVwiKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2FsYygwLjM3NWVtICsgMC4xODc1cmVtKSBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogMnJlbSAycmVtO1xufVxuLmp1c3QtdmFsaWRhdGUtZXJyb3ItbGFiZWwsXG4gICAgLmhhcy1lcnJvci1sYWJlbCxcbi53cGNmNy1ub3QtdmFsaWQtdGlwIHtcblx0XHRwb3NpdGlvbjphYnNvbHV0ZTtcblx0XHR0b3A6MTAwJTtcblx0XHRsZWZ0OjA7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1yZWQpICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgIH1cbkBrZXlmcmFtZXMgcHVsc2Uge1xuICAgIDAlIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMCByZ2JhKDEzNiwgODQsIDIwOCwgMC41KTtcbiAgICB9XG5cbiAgICA3MCUge1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCA4cHggcmdiYSgxMzYsIDg0LCAyMDgsIDApO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAwIHJnYmEoMTM2LCA4NCwgMjA4LCAwKTtcbiAgICB9XG59XG5cbi5yYXRpbmcge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgZ2FwOiA0cHg7XG59XG5cbi5yYXRpbmcgaW5wdXQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5yYXRpbmcgbGFiZWwge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB3aWR0aDogMjhweDtcbiAgICBoZWlnaHQ6IDI4cHg7XG59XG5cbi5yYXRpbmcgbGFiZWwgc3ZnIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgc3Ryb2tlOiAjODA4MDgwO1xuICAgIHN0cm9rZS13aWR0aDogMS41O1xuICAgIGZpbGw6IG5vbmU7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2U7XG59XG5cbi5yYXRpbmcgbGFiZWw6aG92ZXIgc3ZnLFxuLnJhdGluZyBsYWJlbDpob3ZlciB+IGxhYmVsIHN2ZyB7XG4gICAgc3Ryb2tlOiAjOWU5ZTZmO1xuICAgIGZpbGw6ICM5ZTllNmY7XG59XG5cbi5yYXRpbmcgaW5wdXQ6Y2hlY2tlZCB+IGxhYmVsIHN2ZyB7XG4gICAgc3Ryb2tlOiAjOWU5ZTZmO1xuICAgIGZpbGw6ICM5ZTllNmY7XG59XG5cbi53cGNmNy1mb3JtIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiAyLjRyZW07XG5cbiAgICAuaXRpX19mbGFnLWNvbnRhaW5lciB7XG4gICAgICAgIC5pdGlfX3NlbGVjdGVkLWZsYWcge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZGFya3doaXRlKSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwLjZyZW07XG4gICAgICAgIH1cblxuICAgICAgICAuaXRpX19zZWxlY3RlZC1kaWFsLWNvZGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIC5pdGlfX3NlbGVjdGVkLWZsYWcge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJlaWdlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jdGEtYnV0dG9uIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgfVxuXG4gICAgbGFiZWwge1xuICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgY29sb3I6IHJnYmEoODUsIDg1LCA4NSwgMSk7XG4gICAgfVxuXG4gICAgLnVhY2Y3LWZvcm0td3JhcHBlci1jb250YWluZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBnYXA6IDEuMnJlbTtcblxuICAgICAgICAud3BjZjctc3Bpbm5lciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgICB6LWluZGV4OiA0O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLndwY2Y3LXJlc3BvbnNlLW91dHB1dCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi53cGNmNy1mb3JtLWNvbnRyb2wtd3JhcCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBoZWlnaHQ6IGZpdC1jb250ZW50O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICBcbn1cbi5pcy1kaXNhYmxlZCB7XG5cdGZpbHRlcjpzYXR1cmF0ZSgzMCUpO1xufVxuYnV0dG9uIHtcblx0Y3Vyc29yOnBvaW50ZXI7XG59XG4uc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XG4gICAgXG4gICAgZm9udC1zaXplOiAxLjZyZW0haW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZiZmJmYiFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItZ3JleSkhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjFzIGVhc2UtaW47XG4gICAgYm9yZGVyLXJhZGl1czogMCFpbXBvcnRhbnQ7XG59XG4uc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkIHtcbiAgICBwYWRkaW5nOiAxLjRyZW0gMS42cmVtIWltcG9ydGFudDtcbn0iLCIqLFxuKjo6YWZ0ZXIsXG4qOjpiZWZvcmUge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG59XG5cbjpyb290IHtcbiAgICAvLyBDT0xPUlNcbiAgICAtLWNvbG9yLWJsYWNrOiAjMGEwYTBhO1xuICAgIC0tY29sb3Itd2hpdGU6ICNmZmY7XG4gICAgLS1jb2xvci1ncmV5OiAjZWRlZGVkO1xuICAgIC0tY29sb3ItbGlnaHRncmV5OiAjZmJmYmZiO1xuICAgIC0tY29sb3ItYmVpZ2U6ICNjY2NjYzI7XG4gICAgLS1jb2xvci1oYWtpOiAjN2E3OTUzO1xuICAgIC0tY29sb3ItdHJhbnNwYXJlbnQ6ICM3YTc5NTMzMDtcbiAgICAtLWNvbG9yLWRhcmtncmV5OiAjODA4MDgwO1xuICAgIC0tY29sb3ItZ3JlZW46ICM1ODkyMDA7XG4gICAgLS1jb2xvci1yZWQ6ICNjMTAwMDM7XG4gICAgLS1jb2xvci10cmFucy1ibGFjazogIzgwODA4MDUwO1xuXG4gICAgLS10ZXh0LWJsYWNrOiB2YXIodmFyKC0tY29sb3ItYmxhY2spKTtcbiAgICAtLXRleHQtZ3JleTogdmFyKC0tY29sb3ItZ3JleSk7XG4gICAgLy8gU0laRVNcbiAgICAtLWZvbnQtc2l6ZTogTWF4KDEwcHgsIDAuNTIxdncpO1xuICAgIC0tc2VjdGlvbi1wYWRkaW5nOiBjbGFtcCgxMHJlbSwgOHZ3LCAxNHJlbSk7XG4gICAgLS1jb250YWluZXItbWF4LXdpZHRoOiAxNjByZW07XG4gICAgLS1pbmZvLWNhcmRzLXBhZGRpbmc6IGNsYW1wKDI0cHgsIDIuNXZ3LCA0LjhyZW0pO1xuICAgIC8vIFRSQU5TSVRJT05TXG5cbiAgICAtLWhlYWRlci1oZWlnaHQ6IGNhbGMoMTVyZW0gKyAyLjRyZW0pO1xuXG4gICAgLS1kZWZhdWx0LXRyYW5zaXRpb246IDAuMnM7XG4gICAgQGluY2x1ZGUgbWVkaWEoXCI8MTEwMHB4XCIpIHtcbiAgICAgICAgLS1oZWFkZXItaGVpZ2h0OiAxMXJlbTtcbiAgICB9XG59XG5cbmh0bWwge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplKTtcbn1cblxuYm9keSB7XG4gICAgZm9udC1mYW1pbHk6IFwiRml4ZWxEaXNwbGF5XCIsIHNhbnMtc2VyaWY7XG5cbiAgICAmOm5vdCguaGFzLWxpZ2h0LWhlYWRlcikge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ncmV5KTtcbiAgICB9XG5cbiAgICAmLm5vLXNjcm9sbCB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxufVxuXG4ubWFpbi13cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxubWFpbiB7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbnNlY3Rpb24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHBhZGRpbmc6IHZhcigtLXNlY3Rpb24tcGFkZGluZykgMS42cmVtO1xuXG4gICAgLnNlY3Rpb24tYmFja2dyb3VuZCxcbiAgICAuYmxvY2stYmFja2dyb3VuZCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgaW5zZXQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHotaW5kZXg6IDA7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgaW1nLFxuICAgICAgICBzdmcsXG4gICAgICAgIHZpZGVvIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgb2JqZWN0LXBvc2l0aW9uOiA1MCUgNTAlO1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYmxvY2stYmFja2dyb3VuZCB7XG4gICAgICAgIHotaW5kZXg6IC0xO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPHBob25lLWxcIikge1xuICAgICAgICAuc2VjdGlvbi1iYWNrZ3JvdW5kIHtcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5oZWFkZXIsXG5mb290ZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuc2VjdGlvbixcbmhlYWRlcixcbmZvb3RlciB7XG4gICAgLndyYXBwZXIge1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiB2YXIoLS1jb250YWluZXItbWF4LXdpZHRoKTtcblxuICAgICAgICAuYmxvY2stdGl0bGUge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA4MHJlbTtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPHBob25lLWxcIikge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbi5waG9uZS1saW5rIHtcblx0bWluLXdpZHRoOmZpdC1jb250ZW50O1xufVxuYSB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgfVxufVxuXG5oMSxcbi5oMSB7XG4gICAgZm9udC1zaXplOiBjbGFtcCgzLjZyZW0sIDQuMnZ3LCA3LjJyZW0pO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbmgyLFxuLmgyIHtcbiAgICBmb250LXNpemU6IGNsYW1wKDMuNnJlbSwgNXZ3LCA0cmVtKTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuXG4gICAgJi5oMi1zbWFsbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogY2xhbXAoMi40cmVtLCA1dncsIDRyZW0pO1xuICAgIH1cbn1cblxuaDMsXG4uaDMge1xuICAgIGZvbnQtc2l6ZTogY2xhbXAoMi40cmVtLCA1dncsIDMuMnJlbSk7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICBmb250LXdlaWdodDogNjAwO1xufVxuXG5oNCxcbi5oNCB7XG4gICAgZm9udC1zaXplOiBjbGFtcCgycmVtLCA1dncsIDRyZW0pO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG59XG5cbmg1LFxuLmg1IHtcbiAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICBmb250LXdlaWdodDogNjAwO1xufVxuXG5oNixcbi5oNiB7XG4gICAgZm9udC1zaXplOiBjbGFtcCgxLjZyZW0sIDV2dywgMS44cmVtKTtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xufVxuXG4ubS04IHtcbiAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG59XG5cbi5tLTE2IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjZyZW07XG59XG5cbi5tLTMyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzLjJyZW07XG59XG5cbnAge1xuICAgIGZvbnQtc2l6ZTogY2xhbXAoMS42cmVtLCAyLjV2dywgMS42cmVtKTtcbiAgICBsaW5lLWhlaWdodDogYXV0bztcblxuICAgICYuaDEtc3VidGl0bGVyIHtcbiAgICAgICAgZm9udC1zaXplOiBjbGFtcCgxLjZyZW0sIDIuNXZ3LCAyLjRyZW0pO1xuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1ncmV5KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcblxuICAgICAgICBiIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuaDItMy1zdWJ0aXRsZXIge1xuICAgICAgICBmb250LXNpemU6IGNsYW1wKDEuNnJlbSwgMi41dncsIDEuOHJlbSk7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgbWF4LXdpZHRoOiA4MHJlbTtcbiAgICB9XG5cbiAgICAmLi10aXRsZSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgfVxuXG4gICAgaSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgfVxufVxuXG5hIHtcbiAgICBmb250LXNpemU6IGNsYW1wKDEuNHJlbSwgMi41dncsIDJyZW0pO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLWRlZmF1bHQtdHJhbnNpdGlvbikgZWFzZS1pbjtcblxuICAgICYubmF2LWxpbmsge1xuICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1oYWtpKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuLXcge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICB9XG5cbiAgICAmLi1iIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtYmxhY2spO1xuICAgIH1cbn1cblxuLnZpZGVvLWNvbnRyb2xzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAudmlkZW8tcGxheSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgaW5zZXQ6IDA7XG4gICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgd2lkdGg6IDYuNHJlbTtcbiAgICAgICAgaGVpZ2h0OiA2LjRyZW07XG4gICAgICAgIGJvcmRlcjogMDtcblxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIHBsYWNlLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2UsIG9wYWNpdHkgMC4ycyBlYXNlO1xuXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICAgICAgY2lyY2xlIHtcbiAgICAgICAgICAgICAgICBzdHJva2U6ICNmZmY7XG4gICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoOiAyO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuOTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC45OCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLnBsYXlpbmcge1xuICAgICAgICAudmlkZW8tcGxheSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi4tdyB7XG4gICAgY29sb3I6ICNmZmY7XG59XG5cbi4tZyB7XG4gICAgY29sb3I6IHZhcigtLXRleHQtZ3JleSk7XG59XG5cbi4tYiB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbn1cblxuLi1iYWNrLXcge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbn1cblxuLi1iYWNrLWIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbn1cblxuLnNlcGFyYXRvci12IHtcbiAgICB3aWR0aDogMC4xcmVtO1xuICAgIGhlaWdodDogMS42cmVtO1xufVxuLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIHtcblx0Zm9udC1zaXplOjEuNnJlbTtcbn1cbi5sYW5ndWFnZS1zd2l0Y2hlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMC44cmVtO1xuXG4gICAgLmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1oYWtpKSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIGEge1xuICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICB9XG59XG5cbi5zZXBhcmF0b3ItaCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAwLjFyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZ3JleSk7XG59XG5cbi5zb2NpYWxzLWxpc3Qge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDEuNnJlbTtcblxuICAgIC5pdGVtIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZ2FwOiAwLjhyZW07XG4gICAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYShcIjx0YWJsZXRcIikge1xuICAgIC4tbW9iLXBhZGRpbmctMCB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxufVxuXG4uLXVwcGVyIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4vLyBTZWFyY2ggUmVzdWx0cyBQYWdlXG4uc2VhcmNoLXJlc3VsdHMtcGFnZSB7XG4gICAgcGFkZGluZzogdmFyKC0tc2VjdGlvbi1wYWRkaW5nKSAxLjZyZW07XG5cbiAgICAuc2VhcmNoLXJlc3VsdHNfX3RpdGxlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMi40cmVtO1xuICAgICAgICBmb250LXNpemU6IGNsYW1wKDIuNHJlbSwgNHZ3LCA0cmVtKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1oYWtpKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zZWFyY2gtcmVzdWx0c19fY291bnQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzLjJyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFya2dyZXkpO1xuICAgIH1cblxuICAgIC5zZWFyY2gtZHJvcGRvd25fX3Byb2R1Y3RzIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTtcbiAgICAgICAgZ2FwOiAzLjJyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDRyZW07XG5cbiAgICAgICAgLmNvbnRlbnQtcHJvZHVjdF9faXRlbSB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPDEzMDBweFwiKSB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8dGFibGV0XCIpIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gICAgICAgICAgICBnYXA6IDJyZW07XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjxwaG9uZS1sXCIpIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNlYXJjaC1yZXN1bHRzX19lbXB0eSB7XG4gICAgICAgIHBhZGRpbmc6IDRyZW0gMDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWRhcmtncmV5KTtcbiAgICB9XG5cbiAgICAuc2VhcmNoLXJlc3VsdHNfX3BhZ2luYXRpb24ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZ2FwOiAxLjZyZW07XG4gICAgICAgIG1hcmdpbi10b3A6IDRyZW07XG4gICAgICAgIHBhZGRpbmc6IDJyZW0gMDtcblxuICAgICAgICAucGFnZS1udW1iZXJzIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBnYXA6IDAuOHJlbTtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBhLFxuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiA0cmVtO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDRyZW07XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMS4ycmVtO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMC4xcmVtIHNvbGlkIHZhcigtLWNvbG9yLWdyZXkpO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItaGFraSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1oYWtpKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5jdXJyZW50IHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItaGFraSk7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItaGFraSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLmJyZWFkY3J1bWJzLXNlY3Rpb24ge1xuICAgIHBhZGRpbmctdG9wOiBjYWxjKHZhcigtLWhlYWRlci1oZWlnaHQpICsgY2xhbXAoMS42cmVtLCAzdncsIDIuNHJlbSkpO1xuXG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogaW5pdGlhbDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ncmV5KTtcbiAgICBcbiAgICBcbiAgIFxuXG59XG5cbi5icmVhZGNydW1icyB7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBvbCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG5cdFx0cGFkZGluZy1ib3R0b206IGNsYW1wKDAuOHJlbSwgMnZ3LCAyLjRyZW0pO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1oYWtpKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcblxuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5icmVhZGNydW1icyBsaTpub3QoOmxhc3QtY2hpbGQpOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDZweDtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZDogY3VycmVudENvbG9yO1xuICAgIG1hc2s6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgNiAxMCc+PHBhdGggZD0nTTEgMUw1IDVMMSA5JyBmaWxsPSdub25lJyBzdHJva2U9J2JsYWNrJyBzdHJva2Utd2lkdGg9JzEuNScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJy8+PC9zdmc+XCIpIG5vLXJlcGVhdCBjZW50ZXIgLyBjb250YWluO1xuICAgIC13ZWJraXQtbWFzazogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA2IDEwJz48cGF0aCBkPSdNMSAxTDUgNUwxIDknIGZpbGw9J25vbmUnIHN0cm9rZT0nYmxhY2snIHN0cm9rZS13aWR0aD0nMS41JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnLz48L3N2Zz5cIikgbm8tcmVwZWF0IGNlbnRlciAvIGNvbnRhaW47XG4gICAgbWFyZ2luOiAwIDhweDtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItaGFraSk7XG59IiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gQ3VzdG9tIFNlbGVjdCBDb21wb25lbnQgU3R5bGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbjpyb290IHtcbiAgLS1zZWxlY3QtaGVpZ2h0OiA0LjhyZW07XG4gIC0tc2VsZWN0LW1pbi1oZWlnaHQ6IDQuOHJlbTtcbiAgLS1zZWxlY3QtcGFkZGluZy1ob3Jpem9udGFsOiAxLjZyZW07XG4gIC0tc2VsZWN0LXBhZGRpbmctdmVydGljYWw6IDEuMnJlbTtcbiAgLS1zZWxlY3QtYm9yZGVyLXJhZGl1czogMC44cmVtO1xuICAtLXNlbGVjdC1ib3JkZXItd2lkdGg6IDAuMXJlbTtcbiAgLS1zZWxlY3QtZm9udC1zaXplOiAxLjRyZW07XG4gIC0tc2VsZWN0LWxpbmUtaGVpZ2h0OiAxLjU7XG5cbiAgLS1zZWxlY3QtYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgLS1zZWxlY3QtYm9yZGVyLWNvbG9yOiAjZTJlOGYwO1xuICAtLXNlbGVjdC1ib3JkZXItY29sb3ItaG92ZXI6ICNjYmQ1ZTE7XG4gIC0tc2VsZWN0LWJvcmRlci1jb2xvci1mb2N1czogIzNiODJmNjtcbiAgLS1zZWxlY3QtdGV4dC1jb2xvcjogIzFlMjkzYjtcbiAgLS1zZWxlY3QtcGxhY2Vob2xkZXItY29sb3I6ICM2NDc0OGI7XG5cbiAgLS1zZWxlY3QtYmFja2dyb3VuZC1ob3ZlcjogI2Y4ZmFmYztcbiAgLS1zZWxlY3QtYmFja2dyb3VuZC1mb2N1czogI2ZmZmZmZjtcbiAgLS1zZWxlY3Qtc2hhZG93LWZvY3VzOiAwIDAgMCAwLjNyZW0gcmdiYSg1OSwgMTMwLCAyNDYsIDAuMSk7XG5cbiAgLS1zZWxlY3QtYmFja2dyb3VuZC1kaXNhYmxlZDogI2Y4ZmFmYztcbiAgLS1zZWxlY3QtYm9yZGVyLWNvbG9yLWRpc2FibGVkOiAjZTJlOGYwO1xuICAtLXNlbGVjdC10ZXh0LWNvbG9yLWRpc2FibGVkOiAjOTRhM2I4O1xuICAtLXNlbGVjdC1vcGFjaXR5LWRpc2FibGVkOiAwLjY7XG5cbiAgLS1zZWxlY3Qtb3B0aW9uLXNlbGVjdGVkLWJhY2tncm91bmQ6ICNmMWY1Zjk7XG4gIC0tc2VsZWN0LW9wdGlvbi1zZWxlY3RlZC1jb2xvcjogIzMzNDE1NTtcbiAgLS1zZWxlY3Qtb3B0aW9uLXNlbGVjdGVkLWJvcmRlcjogI2NiZDVlMTtcbiAgLS1zZWxlY3Qtb3B0aW9uLXNlbGVjdGVkLXBhZGRpbmc6IDAuNnJlbSAxcmVtO1xuICAtLXNlbGVjdC1vcHRpb24tc2VsZWN0ZWQtYm9yZGVyLXJhZGl1czogMC42cmVtO1xuICAtLXNlbGVjdC1vcHRpb24tc2VsZWN0ZWQtZm9udC1zaXplOiAxLjNyZW07XG5cbiAgLS1zZWxlY3QtcmVtb3ZlLWJ1dHRvbi1zaXplOiAxLjZyZW07XG4gIC0tc2VsZWN0LXJlbW92ZS1idXR0b24tY29sb3I6ICM2NDc0OGI7XG4gIC0tc2VsZWN0LXJlbW92ZS1idXR0b24taG92ZXItY29sb3I6ICNlZjQ0NDQ7XG4gIC0tc2VsZWN0LXJlbW92ZS1idXR0b24taG92ZXItYmFja2dyb3VuZDogI2ZlZTJlMjtcblxuICAtLXNlbGVjdC1hcnJvdy1zaXplOiAyLjRyZW07XG4gIC0tc2VsZWN0LWFycm93LWNvbG9yOiAjNjQ3NDhiO1xuICAtLXNlbGVjdC1hcnJvdy1ob3Zlci1jb2xvcjogIzMzNDE1NTtcblxuICAtLXNlbGVjdC1kcm9wZG93bi1iYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAtLXNlbGVjdC1kcm9wZG93bi1ib3JkZXItY29sb3I6ICNlMmU4ZjA7XG4gIC0tc2VsZWN0LWRyb3Bkb3duLXNoYWRvdzogMCAxcmVtIDNyZW0gcmdiYSgwLCAwLCAwLCAwLjEpLCAwIDAuNHJlbSAwLjZyZW0gcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgLS1zZWxlY3QtZHJvcGRvd24tYm9yZGVyLXJhZGl1czogMC44cmVtO1xuICAtLXNlbGVjdC1kcm9wZG93bi1tYXgtaGVpZ2h0OiAyMHJlbTtcbiAgLS1zZWxlY3QtZHJvcGRvd24tei1pbmRleDogNTA7XG5cbiAgLS1zZWxlY3Qtb3B0aW9uLXBhZGRpbmc6IDEuMnJlbSAxLjZyZW07XG4gIC0tc2VsZWN0LW9wdGlvbi1mb250LXNpemU6IDEuNHJlbTtcbiAgLS1zZWxlY3Qtb3B0aW9uLWNvbG9yOiAjMzc0MTUxO1xuICAtLXNlbGVjdC1vcHRpb24taG92ZXItYmFja2dyb3VuZDogI2Y4ZmFmYztcbiAgLS1zZWxlY3Qtb3B0aW9uLWhvdmVyLWNvbG9yOiAjMWUyOTNiO1xuICAtLXNlbGVjdC1vcHRpb24tYWN0aXZlLWJhY2tncm91bmQ6ICMzYjgyZjY7XG4gIC0tc2VsZWN0LW9wdGlvbi1hY3RpdmUtY29sb3I6ICNmZmZmZmY7XG4gIC0tc2VsZWN0LW9wdGlvbi1kaXNhYmxlZC1jb2xvcjogIzk0YTNiODtcbiAgLS1zZWxlY3Qtb3B0aW9uLWRpc2FibGVkLWJhY2tncm91bmQ6ICNmOGZhZmM7XG5cbiAgLS1zZWxlY3QtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4ycztcbiAgLS1zZWxlY3QtdHJhbnNpdGlvbi10aW1pbmc6IGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG59XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi5jdXN0b20tc2VsZWN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG5cbiAgaW5wdXRbdHlwZT1cImhpZGRlblwiXSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAuc2VsZWN0LWZpZWxkIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgbWluLWhlaWdodDogdmFyKC0tc2VsZWN0LW1pbi1oZWlnaHQpO1xuICAgIHBhZGRpbmc6IHZhcigtLXNlbGVjdC1wYWRkaW5nLXZlcnRpY2FsKSB2YXIoLS1zZWxlY3QtcGFkZGluZy1ob3Jpem9udGFsKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zZWxlY3QtYmFja2dyb3VuZC1jb2xvcik7XG4gICAgYm9yZGVyOiB2YXIoLS1zZWxlY3QtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1zZWxlY3QtYm9yZGVyLWNvbG9yKTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1zZWxlY3QtYm9yZGVyLXJhZGl1cyk7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IGFsbCB2YXIoLS1zZWxlY3QtdHJhbnNpdGlvbi1kdXJhdGlvbikgdmFyKC0tc2VsZWN0LXRyYW5zaXRpb24tdGltaW5nKTtcblxuICAgICY6aG92ZXI6bm90KC5kaXNhYmxlZCkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2VsZWN0LWJhY2tncm91bmQtaG92ZXIpO1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1zZWxlY3QtYm9yZGVyLWNvbG9yLWhvdmVyKTtcblxuICAgICAgLmFycm93LWRvd24ge1xuICAgICAgICBjb2xvcjogdmFyKC0tc2VsZWN0LWFycm93LWhvdmVyLWNvbG9yKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmZvY3VzLXdpdGhpbjpub3QoLmRpc2FibGVkKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zZWxlY3QtYmFja2dyb3VuZC1mb2N1cyk7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLXNlbGVjdC1ib3JkZXItY29sb3ItZm9jdXMpO1xuICAgICAgYm94LXNoYWRvdzogdmFyKC0tc2VsZWN0LXNoYWRvdy1mb2N1cyk7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cblxuICAgICYuYWN0aXZlOm5vdCguZGlzYWJsZWQpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tc2VsZWN0LWJvcmRlci1jb2xvci1mb2N1cyk7XG4gICAgICBib3gtc2hhZG93OiB2YXIoLS1zZWxlY3Qtc2hhZG93LWZvY3VzKTtcblxuICAgICAgLmFycm93LWRvd24ge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuZGlzYWJsZWQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2VsZWN0LWJhY2tncm91bmQtZGlzYWJsZWQpO1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1zZWxlY3QtYm9yZGVyLWNvbG9yLWRpc2FibGVkKTtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgICBvcGFjaXR5OiB2YXIoLS1zZWxlY3Qtb3BhY2l0eS1kaXNhYmxlZCk7XG5cbiAgICAgIC5hcnJvdy1kb3duIHtcbiAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgLnNlbGVjdGVkLW9wdGlvbnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGdhcDogMC44cmVtO1xuICAgIGZsZXg6IDE7XG4gICAgbWluLXdpZHRoOiAwO1xuXG4gICAgLnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1zZWxlY3QtcGxhY2Vob2xkZXItY29sb3IpO1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1zZWxlY3QtZm9udC1zaXplKTtcbiAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1zZWxlY3QtbGluZS1oZWlnaHQpO1xuICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIGZsZXg6IDE7XG4gICAgICBtaW4td2lkdGg6IDA7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgZmxleDogMTtcbiAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICBmbGV4OiAxO1xuICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB9XG4gIH1cblxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgLnNlbGVjdGVkLW9wdGlvbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDAuNnJlbTtcbiAgICBwYWRkaW5nOiB2YXIoLS1zZWxlY3Qtb3B0aW9uLXNlbGVjdGVkLXBhZGRpbmcpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNlbGVjdC1vcHRpb24tc2VsZWN0ZWQtYmFja2dyb3VuZCk7XG4gICAgY29sb3I6IHZhcigtLXNlbGVjdC1vcHRpb24tc2VsZWN0ZWQtY29sb3IpO1xuICAgIGJvcmRlcjogdmFyKC0tc2VsZWN0LWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tc2VsZWN0LW9wdGlvbi1zZWxlY3RlZC1ib3JkZXIpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXNlbGVjdC1vcHRpb24tc2VsZWN0ZWQtYm9yZGVyLXJhZGl1cyk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1zZWxlY3Qtb3B0aW9uLXNlbGVjdGVkLWZvbnQtc2l6ZSk7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICBtYXgtd2lkdGg6IDIwcmVtO1xuXG4gICAgLm9wdGlvbi1sYWJlbCB7XG4gICAgICBmbGV4OiAxO1xuICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgIG1heC13aWR0aDogMTZyZW07XG4gICAgfVxuXG4gICAgaS5zcHJpdGUge1xuICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICB3aWR0aDogMS42cmVtO1xuICAgICAgaGVpZ2h0OiAxLjZyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuNHJlbTtcbiAgICB9XG5cbiAgICAucmVtb3ZlLWJ0biB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIHdpZHRoOiB2YXIoLS1zZWxlY3QtcmVtb3ZlLWJ1dHRvbi1zaXplKTtcbiAgICAgIGhlaWdodDogdmFyKC0tc2VsZWN0LXJlbW92ZS1idXR0b24tc2l6ZSk7XG4gICAgICBjb2xvcjogdmFyKC0tc2VsZWN0LXJlbW92ZS1idXR0b24tY29sb3IpO1xuICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIHRyYW5zaXRpb246IGFsbCB2YXIoLS1zZWxlY3QtdHJhbnNpdGlvbi1kdXJhdGlvbikgdmFyKC0tc2VsZWN0LXRyYW5zaXRpb24tdGltaW5nKTtcbiAgICAgIGZsZXgtc2hyaW5rOiAwO1xuXG4gICAgICBzdmcge1xuICAgICAgICB3aWR0aDogMS4ycmVtO1xuICAgICAgICBoZWlnaHQ6IDEuMnJlbTtcbiAgICAgIH1cblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1zZWxlY3QtcmVtb3ZlLWJ1dHRvbi1ob3Zlci1jb2xvcik7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNlbGVjdC1yZW1vdmUtYnV0dG9uLWhvdmVyLWJhY2tncm91bmQpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAuYXJyb3ctZG93biB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiB2YXIoLS1zZWxlY3QtYXJyb3ctc2l6ZSk7XG4gICAgaGVpZ2h0OiB2YXIoLS1zZWxlY3QtYXJyb3ctc2l6ZSk7XG4gICAgY29sb3I6IHZhcigtLXNlbGVjdC1hcnJvdy1jb2xvcik7XG4gICAgbWFyZ2luLWxlZnQ6IDAuOHJlbTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgdmFyKC0tc2VsZWN0LXRyYW5zaXRpb24tZHVyYXRpb24pIHZhcigtLXNlbGVjdC10cmFuc2l0aW9uLXRpbWluZyk7XG4gICAgZmxleC1zaHJpbms6IDA7XG5cbiAgICBzdmcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIC5vcHRpb25zLWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6IHZhcigtLXNlbGVjdC1kcm9wZG93bi16LWluZGV4KTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNlbGVjdC1kcm9wZG93bi1iYWNrZ3JvdW5kKTtcbiAgICBib3JkZXI6IHZhcigtLXNlbGVjdC1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLXNlbGVjdC1kcm9wZG93bi1ib3JkZXItY29sb3IpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXNlbGVjdC1kcm9wZG93bi1ib3JkZXItcmFkaXVzKTtcbiAgICBib3gtc2hhZG93OiB2YXIoLS1zZWxlY3QtZHJvcGRvd24tc2hhZG93KTtcbiAgICBtYXgtaGVpZ2h0OiB2YXIoLS1zZWxlY3QtZHJvcGRvd24tbWF4LWhlaWdodCk7XG4gICAgbWF4LXdpZHRoOiB2YXIoLS1zZWxlY3QtZHJvcGRvd24tbWF4LXdpZHRoKTtcbiAgICBtaW4td2lkdGg6IHZhcigtLXNlbGVjdC1kcm9wZG93bi1taW4td2lkdGgpO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgIG1hcmdpbi10b3A6IDAuNHJlbTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTAuOHJlbSk7XG4gICAgdHJhbnNpdGlvbjogYWxsIHZhcigtLXNlbGVjdC10cmFuc2l0aW9uLWR1cmF0aW9uKSB2YXIoLS1zZWxlY3QtdHJhbnNpdGlvbi10aW1pbmcpO1xuXG4gICAgJi5hY3RpdmUge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgfVxuXG4gICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgd2lkdGg6IDAuNnJlbTtcbiAgICB9XG5cbiAgICAmOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB9XG5cbiAgICAmOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zZWxlY3QtYm9yZGVyLWNvbG9yKTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAuM3JlbTtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXNlbGVjdC1ib3JkZXItY29sb3ItaG92ZXIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAub3B0aW9uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcGFkZGluZzogdmFyKC0tc2VsZWN0LW9wdGlvbi1wYWRkaW5nKTtcbiAgICBjb2xvcjogdmFyKC0tc2VsZWN0LW9wdGlvbi1jb2xvcik7XG4gICAgZm9udC1zaXplOiB2YXIoLS1zZWxlY3Qtb3B0aW9uLWZvbnQtc2l6ZSk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLXNlbGVjdC1saW5lLWhlaWdodCk7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IGFsbCB2YXIoLS1zZWxlY3QtdHJhbnNpdGlvbi1kdXJhdGlvbikgdmFyKC0tc2VsZWN0LXRyYW5zaXRpb24tdGltaW5nKTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgICAub3B0aW9uLXRleHQge1xuICAgICAgZmxleDogMTtcbiAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICBtYXgtd2lkdGg6IHZhcigtLXNlbGVjdC1vcHRpb24tbWF4LXdpZHRoKTtcbiAgICB9XG5cbiAgICBpLnNwcml0ZSB7XG4gICAgICBmbGV4LXNocmluazogMDtcbiAgICAgIHdpZHRoOiAxLjZyZW07XG4gICAgICBoZWlnaHQ6IDEuNnJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogMC44cmVtO1xuICAgIH1cblxuICAgICY6aG92ZXI6bm90KC5kaXNhYmxlZCk6bm90KC5hY3RpdmUpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNlbGVjdC1vcHRpb24taG92ZXItYmFja2dyb3VuZCk7XG4gICAgICBjb2xvcjogdmFyKC0tc2VsZWN0LW9wdGlvbi1ob3Zlci1jb2xvcik7XG4gICAgfVxuXG4gICAgJi5hY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2VsZWN0LW9wdGlvbi1hY3RpdmUtYmFja2dyb3VuZCk7XG4gICAgICBjb2xvcjogdmFyKC0tc2VsZWN0LW9wdGlvbi1hY3RpdmUtY29sb3IpO1xuICAgIH1cblxuICAgICYuZGlzYWJsZWQge1xuICAgICAgY29sb3I6IHZhcigtLXNlbGVjdC1vcHRpb24tZGlzYWJsZWQtY29sb3IpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2VsZWN0LW9wdGlvbi1kaXNhYmxlZC1iYWNrZ3JvdW5kKTtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgICBvcGFjaXR5OiB2YXIoLS1zZWxlY3Qtb3BhY2l0eS1kaXNhYmxlZCk7XG4gICAgfVxuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiBjYWxjKHZhcigtLXNlbGVjdC1kcm9wZG93bi1ib3JkZXItcmFkaXVzKSAtIHZhcigtLXNlbGVjdC1ib3JkZXItd2lkdGgpKTtcbiAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiBjYWxjKHZhcigtLXNlbGVjdC1kcm9wZG93bi1ib3JkZXItcmFkaXVzKSAtIHZhcigtLXNlbGVjdC1ib3JkZXItd2lkdGgpKTtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogY2FsYyh2YXIoLS1zZWxlY3QtZHJvcGRvd24tYm9yZGVyLXJhZGl1cykgLSB2YXIoLS1zZWxlY3QtYm9yZGVyLXdpZHRoKSk7XG4gICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogY2FsYyh2YXIoLS1zZWxlY3QtZHJvcGRvd24tYm9yZGVyLXJhZGl1cykgLSB2YXIoLS1zZWxlY3QtYm9yZGVyLXdpZHRoKSk7XG4gICAgfVxuICB9XG5cbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICZbYXJpYS1leHBhbmRlZD1cInRydWVcIl06bm90KC5kaXNhYmxlZCkge1xuICAgIC5hcnJvdy1kb3duIHtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgfVxuXG4gICAgLm9wdGlvbnMtY29udGFpbmVyIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIH1cbiAgfVxuXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAmLnNlbGVjdGVkIHtcbiAgICAucGxhY2Vob2xkZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgLnNlbGVjdC1maWVsZCB7XG4gICAgICBwYWRkaW5nOiAxcmVtIDEuMnJlbTtcbiAgICB9XG5cbiAgICAuc2VsZWN0ZWQtb3B0aW9uIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgcGFkZGluZzogMC40cmVtIDAuOHJlbTtcbiAgICB9XG5cbiAgICAub3B0aW9uIHtcbiAgICAgIHBhZGRpbmc6IDFyZW0gMS4ycmVtO1xuICAgICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgfVxuICB9XG5cbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgb3V0bGluZTogMC4ycmVtIHNvbGlkIHZhcigtLXNlbGVjdC1ib3JkZXItY29sb3ItZm9jdXMpO1xuICAgIG91dGxpbmUtb2Zmc2V0OiAwLjJyZW07XG4gIH1cblxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgJlthcmlhLWRpc2FibGVkPVwidHJ1ZVwiXSxcbiAgJi5kaXNhYmxlZCB7XG4gICAgLnNlbGVjdC1maWVsZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zZWxlY3QtYmFja2dyb3VuZC1kaXNhYmxlZCk7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLXNlbGVjdC1ib3JkZXItY29sb3ItZGlzYWJsZWQpO1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgIG9wYWNpdHk6IHZhcigtLXNlbGVjdC1vcGFjaXR5LWRpc2FibGVkKTtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNlbGVjdC1iYWNrZ3JvdW5kLWRpc2FibGVkKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1zZWxlY3QtYm9yZGVyLWNvbG9yLWRpc2FibGVkKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2VsZWN0ZWQtb3B0aW9uIC5yZW1vdmUtYnRuLFxuICAgIC5hcnJvdy1kb3duIHtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG5cbiAgICAucGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6IHZhcigtLXNlbGVjdC10ZXh0LWNvbG9yLWRpc2FibGVkKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLmN1c3RvbS1zZWxlY3Qge1xuICAmLnNpemUtc21hbGwge1xuICAgIC0tc2VsZWN0LWhlaWdodDogMy42cmVtO1xuICAgIC0tc2VsZWN0LW1pbi1oZWlnaHQ6IDMuNnJlbTtcbiAgICAtLXNlbGVjdC1wYWRkaW5nLWhvcml6b250YWw6IDEuMnJlbTtcbiAgICAtLXNlbGVjdC1wYWRkaW5nLXZlcnRpY2FsOiAwLjhyZW07XG4gICAgLS1zZWxlY3QtZm9udC1zaXplOiAxLjNyZW07XG4gICAgLS1zZWxlY3Qtb3B0aW9uLXNlbGVjdGVkLWZvbnQtc2l6ZTogMS4ycmVtO1xuICAgIC0tc2VsZWN0LW9wdGlvbi1mb250LXNpemU6IDEuM3JlbTtcbiAgICAtLXNlbGVjdC1kcm9wZG93bi1tYXgtd2lkdGg6IDI1cmVtO1xuICAgIC0tc2VsZWN0LWRyb3Bkb3duLW1pbi13aWR0aDogMTVyZW07XG4gICAgLS1zZWxlY3Qtb3B0aW9uLW1heC13aWR0aDogMjByZW07XG5cbiAgICAuc2VsZWN0ZWQtb3B0aW9ucyB7XG4gICAgICBtYXgtd2lkdGg6IDE1cmVtO1xuXG4gICAgICAub3B0aW9uLWxhYmVsIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMnJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLnNpemUtbGFyZ2Uge1xuICAgIC0tc2VsZWN0LWhlaWdodDogNS42cmVtO1xuICAgIC0tc2VsZWN0LW1pbi1oZWlnaHQ6IDUuNnJlbTtcbiAgICAtLXNlbGVjdC1wYWRkaW5nLWhvcml6b250YWw6IDJyZW07XG4gICAgLS1zZWxlY3QtcGFkZGluZy12ZXJ0aWNhbDogMS42cmVtO1xuICAgIC0tc2VsZWN0LWZvbnQtc2l6ZTogMS42cmVtO1xuICAgIC0tc2VsZWN0LW9wdGlvbi1zZWxlY3RlZC1mb250LXNpemU6IDEuNHJlbTtcbiAgICAtLXNlbGVjdC1vcHRpb24tZm9udC1zaXplOiAxLjZyZW07XG4gICAgLS1zZWxlY3QtZHJvcGRvd24tbWF4LXdpZHRoOiAzNXJlbTtcbiAgICAtLXNlbGVjdC1kcm9wZG93bi1taW4td2lkdGg6IDI1cmVtO1xuICAgIC0tc2VsZWN0LW9wdGlvbi1tYXgtd2lkdGg6IDMwcmVtO1xuXG4gICAgLnNlbGVjdGVkLW9wdGlvbnMge1xuICAgICAgbWF4LXdpZHRoOiAyNXJlbTtcblxuICAgICAgLm9wdGlvbi1sYWJlbCB7XG4gICAgICAgIG1heC13aWR0aDogMjByZW07XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi52YXJpYW50LWVycm9yIHtcbiAgICAtLXNlbGVjdC1ib3JkZXItY29sb3I6ICNlZjQ0NDQ7XG4gICAgLS1zZWxlY3QtYm9yZGVyLWNvbG9yLWhvdmVyOiAjZGMyNjI2O1xuICAgIC0tc2VsZWN0LWJvcmRlci1jb2xvci1mb2N1czogI2VmNDQ0NDtcbiAgICAtLXNlbGVjdC1zaGFkb3ctZm9jdXM6IDAgMCAwIDAuM3JlbSByZ2JhKDIzOSwgNjgsIDY4LCAwLjEpO1xuICB9XG5cbiAgJi52YXJpYW50LXN1Y2Nlc3Mge1xuICAgIC0tc2VsZWN0LWJvcmRlci1jb2xvcjogIzEwYjk4MTtcbiAgICAtLXNlbGVjdC1ib3JkZXItY29sb3ItaG92ZXI6ICMwNTk2Njk7XG4gICAgLS1zZWxlY3QtYm9yZGVyLWNvbG9yLWZvY3VzOiAjMTBiOTgxO1xuICAgIC0tc2VsZWN0LXNoYWRvdy1mb2N1czogMCAwIDAgMC4zcmVtIHJnYmEoMTYsIDE4NSwgMTI5LCAwLjEpO1xuICB9XG5cbiAgJi52YXJpYW50LXdhcm5pbmcge1xuICAgIC0tc2VsZWN0LWJvcmRlci1jb2xvcjogI2Y1OWUwYjtcbiAgICAtLXNlbGVjdC1ib3JkZXItY29sb3ItaG92ZXI6ICNkOTc3MDY7XG4gICAgLS1zZWxlY3QtYm9yZGVyLWNvbG9yLWZvY3VzOiAjZjU5ZTBiO1xuICAgIC0tc2VsZWN0LXNoYWRvdy1mb2N1czogMCAwIDAgMC4zcmVtIHJnYmEoMjQ1LCAxNTgsIDExLCAwLjEpO1xuICB9XG59XG4iLCJAaW1wb3J0IFwiLi4vX19jb3JlL2NvcmUtbWl4aW5zXCI7XG5cbi5ub3RpZmljYXRpb24sXG4ucHVzaE5hdGl2ZSB7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDUwcmVtIC0gNXJlbSkgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXItcmFkaXVzOiBub25lICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgYm94LXNoYWRvdzogbm9uZSFpbXBvcnRhbnQ7XG4gICAgJi5zdWNjZXNzIHtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItZ3JlZW4pICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuXG4gICAgfVxuXG4gICAgJi5hdHRlbnRpb24ge1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2IoMjI4LCAxMDEsIDApICFpbXBvcnRhbnQ7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZyxcbiAgICAgICAgICAgICAgICByZ2JhKDI0MywgODgsIDQsIDEpIDAlLFxuICAgICAgICAgICAgICAgIHJnYmEoMjQwLCAxNTUsIDEyLCAxKSAxMDAlKSAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cblxuICAgICYuZXJyb3Ige1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1yZWQpICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAubm90aWZpY2F0aW9uIGEge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG5cbiAgICAudG9hc3QtY2xvc2Uge1xuICAgICAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IC43cmVtO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuXG4gICAgLnRvYXN0aWZ5IHtcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0ICFpbXBvcnRhbnQ7XG4gICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIH1cblxuICAgIC5wdXNoTm90aWZpY2F0aW9uQm9keSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICByaWdodDogMnJlbTtcbiAgICAgICAgdG9wOiAycmVtO1xuICAgICAgICB3aWR0aDogMjByZW07XG4gICAgICAgIHBhZGRpbmc6IDFyZW0gLjVyZW07XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGdyZWVuO1xuICAgICAgICBib3JkZXI6IDFyZW07XG4gICAgICAgIGNvbG9yOiAjMDAwO1xuICAgIH1cblxuICAgIC5wdXNoTm90aWZpY2F0aW9uVGltZXIge1xuICAgICAgICBoZWlnaHQ6IC41cmVtO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmUyZTJlNjM7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxcmVtO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIjw3NjhweFwiKSB7XG4gICAgICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gM3JlbSkgIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IGZpdC1jb250ZW50O1xuICAgICAgICByaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLnB1c2hOYXRpdmUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDMuNXJlbSAhaW1wb3J0YW50O1xufSIsIi5sb2FkZXItd3JhcHBlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDI7XG4gICAgaW5zZXQ6IDA7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZHJvcC1maWx0ZXI6IGJyaWdodG5lc3MoNjAlKTtcbiAgICAtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogYnJpZ2h0bmVzcyg2MCUpO1xufVxuXG4ud29vLWxvYWRlciB7XG4gICAgYW5pbWF0aW9uOiB0Zm9ybS1sb2FkZXItcm90YXRlIDJzIGluZmluaXRlO1xuICAgIGhlaWdodDogNTBweDtcbiAgICB3aWR0aDogNTBweDtcbn1cblxuLndvby1sb2FkZXI6OmJlZm9yZSxcbi53b28tbG9hZGVyOjphZnRlciB7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIHdpZHRoOiAyMHB4O1xufVxuXG4ud29vLWxvYWRlcjo6YmVmb3JlIHtcbiAgICBhbmltYXRpb246IHRmb3JtLWxvYWRlci1iYWxsMSAycyBpbmZpbml0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1IDI1NSAyNTUgLyAxNiUpO1xuICAgIGJveC1zaGFkb3c6IDMwcHggMCAwIHZhcigtLWNvbG9yLWhha2kpO1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cbi53b28tbG9hZGVyOjphZnRlciB7XG4gICAgYW5pbWF0aW9uOiB0Zm9ybS1sb2FkZXItYmFsbDIgMnMgaW5maW5pdGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItaGFraSk7XG4gICAgYm94LXNoYWRvdzogMzBweCAwIDAgcmdiKDI1NSAyNTUgMjU1IC8gMTYlKTtcbn1cblxuQGtleWZyYW1lcyB0Zm9ybS1sb2FkZXItcm90YXRlIHtcbiAgICAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpIHNjYWxlKDAuOCk7XG4gICAgfVxuXG4gICAgNTAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKSBzY2FsZSgxLjIpO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg3MjBkZWcpIHNjYWxlKDAuOCk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIHRmb3JtLWxvYWRlci1iYWxsMSB7XG4gICAgMCUge1xuICAgICAgICBib3gtc2hhZG93OiAzMHB4IDAgMCB2YXIoLS1jb2xvci1oYWtpKTtcbiAgICB9XG5cbiAgICA1MCUge1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCB2YXIoLS1jb2xvci1oYWtpKTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTVweCwgMTVweCk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIGJveC1zaGFkb3c6IDMwcHggMCAwIHZhcigtLWNvbG9yLWhha2kpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyB0Zm9ybS1sb2FkZXItYmFsbDIge1xuICAgIDAlIHtcbiAgICAgICAgYm94LXNoYWRvdzogMzBweCAwIDAgcmdiKDI1NSAyNTUgMjU1IC8gMzIlKTtcbiAgICB9XG5cbiAgICA1MCUge1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCByZ2IoMjU1IDI1NSAyNTUgLyAzMiUpO1xuICAgICAgICBtYXJnaW4tdG9wOiAtMjBweDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTVweCwgMTVweCk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIGJveC1zaGFkb3c6IDMwcHggMCAwIHJnYigyNTUgMjU1IDI1NSAvIDMyJSk7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxufVxuIiwiLmFjY291bnQtbW9kYWwge1xuICAgIC5tb2RhbC1hY2NvdW50LWNvbnRyb2wge1xuICAgICAgICBtYXgtd2lkdGg6IDUxLjZyZW07XG5cblxuICAgIH1cbn1cblxuLmpzLWFjY291bnQtZm9ybSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogMS42cmVtO1xuXG4gICAgLmxvc3RfcGFzc3dvcmQge1xuICAgICAgICBhIHtcblxuXG4gICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWhha2kpO1xuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAuaGFzLWVycm9yIHtcbiAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgb3V0bGluZTogdmFyKC0tY29sb3ItcmVkKTtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLXJlZCk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzEwMDAzMjU7XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC5lcnJvci10aXAge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZXJyb3ItdGlwIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmU2ZTY7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1yZWQpO1xuICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgcGFkZGluZzogMC40cmVtIDAuNnJlbTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC40cmVtO1xuICAgIH1cblxuICAgIC5jdGEtYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMS42cmVtO1xuICAgIH1cblxuICAgIC5hY2NvdW50LWNvbnRyb2xfX2hpbnQge1xuICAgICAgICBtYXJnaW4tdG9wOiAxLjZyZW07XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGdhcDogLjhyZW07XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1oYWtpKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5pdGkge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAud29vY29tbWVyY2UtZXJyb3Ige1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBwYWRkaW5nOiAuOHJlbSAxLjZyZW0gLjhyZW0gNC44cmVtO1xuICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2MxMDAwMzI1O1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1yZWQpO1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIGxlZnQ6IDEuNnJlbTtcbiAgICAgICAgICAgIHdpZHRoOiAyLjRyZW07XG4gICAgICAgICAgICBmb250LXNpemU6IDIuNHJlbTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5jYXJ0LWZ1bGxfX3Byb2R1Y3QtaXRlbSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwYWRkaW5nOiBjbGFtcCgwLjhyZW0sIDN2dywgMS42cmVtKTtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBnYXA6IGNsYW1wKDAuOHJlbSwgM3Z3LCAxLjZyZW0pO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0Z3JleSk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgLnByb2R1Y3QtaW1hZ2Uge1xuICAgICAgICBhc3BlY3QtcmF0aW86IDEgLyAxO1xuICAgICAgICBtYXgtd2lkdGg6IDM2JTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaW5mbyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGdhcDogY2xhbXAoMS42cmVtLCAydncsIDIuNHJlbSk7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC5wcm9kdWN0LWhlYWRlciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgICAgICAgLm5hbWUge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA2MCU7XG4gICAgICAgIH1cblxuICAgICAgICAucmVtb3ZlIHtcbiAgICAgICAgICAgIHdpZHRoOiAyLjRyZW07XG4gICAgICAgICAgICBoZWlnaHQ6IDIuNHJlbTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWhha2kpO1xuXG4gICAgICAgICAgICAgICAgcGF0aCB7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGZpbGwgMC4ycyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgICAgICAgICAgc3Ryb2tlOiB2YXIoLS1jb2xvci1oYWtpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgIHBhdGgge1xuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tY29sb3ItdHJhbnNwYXJlbnQpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1jb2xvci1oYWtpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wcm9kdWN0LWF0dHJpYnV0dGVzIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgZ2FwOiAwLjRyZW07XG5cbiAgICAgICAgZGwge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcblxuICAgICAgICAgICAgLnZhcmlhdGlvbi1yb3cge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgIGR0IHtcbiAgICAgICAgICAgICAgICAgICAgZmxleDogMCAxIGNsYW1wKDhyZW0sIDN2dywgMTRyZW0pO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgZGQge1xuICAgICAgICAgICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wcm9kdWN0LWNvbnRyb2xzIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBnYXA6IDEuNnJlbTtcblxuICAgICAgICAuY2FydC1wcmljZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICAgICAgICAgLnByaWNlLW9sZCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wcmljZS1zYWxlIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItcmVkKTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucHJpY2UtY3VycmVudCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnF1YW50aXR5LXNlbGVjdG9yIHtcbiAgICAgICAgICAgIHdpZHRoOiBmaXQtY29udGVudDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBvcmRlcjogMTtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBnYXA6IDEuNnJlbTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tbGktc2l6ZSk7XG4gICAgICAgIH1cblxuICAgICAgICAucXVhbnRpdHktY29udHJvbCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgICAgICAgICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gICAgICAgICAgICBnYXA6IDEuNnJlbTtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuOHJlbTtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWdyZXkpO1xuXG4gICAgICAgICAgICAudmFsdWUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBnYXA6IDAuNHJlbTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZ3JleSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLmhhcy1jb29raWUtY29uc2VudC1vcGVuIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4udGZvcm0tY29va2llLWNvbnNlbnQge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBpbnNldDogMDtcbiAgICB6LWluZGV4OiAxMDAwMDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLWJhc2UtdHJhbnNpdGlvbik7XG5cbiAgICAmW2hpZGRlbl0ge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJi5pcy12aXNpYmxlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgfVxuXG4gICAgJl9fb3ZlcmxheSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgaW5zZXQ6IDA7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMTAsIDEwLCAxMCwgLjU4KTtcbiAgICB9XG5cbiAgICAmX19wYW5lbCB7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgcmlnaHQ6IDIuNHJlbTtcbiAgICAgICAgYm90dG9tOiAyLjRyZW07XG4gICAgICAgIHdpZHRoOiBtaW4oNTJyZW0sIGNhbGMoMTAwJSAtIDQuOHJlbSkpO1xuICAgICAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMGR2aCAtIDIuNHJlbSAtIHZhcigtLWhlYWRlci1oZWlnaHQpKTtcbiAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgICAgXG4gICAgICAgIHBhZGRpbmc6IDIuNHJlbTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuXG5cbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICAgICAgICBib3gtc2hhZG93OiAwIDIuNHJlbSA2cmVtIHJnYmEoMTAsIDEwLCAxMCwgLjE4KTtcblxuXG5cbiAgICAgICBcbiAgICB9XG5cbiAgICAmLmlzLXZpc2libGUgJl9fcGFuZWwge31cblxuICAgICZfX2NvbnRlbnQge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBnYXA6IDEuNnJlbTtcbiAgICB9XG5cbiAgICAmX190aXRsZSB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgZm9udC1zaXplOiAyLjJyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgfVxuXG4gICAgJl9fdGV4dCxcbiAgICAmX19ub3RlIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFya2dyZXkpO1xuICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTU7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IC4ycmVtO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19wcmVmZXJlbmNlcyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGdhcDogMXJlbTtcbiAgICB9XG5cbiAgICAmX19wcmVmZXJlbmNlc1toaWRkZW5dIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgICZfX29wdGlvbiB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMi4ycmVtIDFmcjtcbiAgICAgICAgZ2FwOiAxLjJyZW07XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICBwYWRkaW5nOiAxLjJyZW07XG4gICAgICAgIGJvcmRlcjogLjFyZW0gc29saWQgdmFyKC0tY29sb3ItZ3JleSk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IC42cmVtO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgd2lkdGg6IDJyZW07XG4gICAgICAgICAgICBoZWlnaHQ6IDJyZW07XG4gICAgICAgICAgICBtYXJnaW46IC4ycmVtIDAgMDtcbiAgICAgICAgICAgIGFjY2VudC1jb2xvcjogdmFyKC0tY29sb3ItaGFraSk7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgZ2FwOiAuNHJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgfVxuXG4gICAgICAgIHNtYWxsIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kYXJrZ3JleSk7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19hY3Rpb25zIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ2FwOiAxLjJyZW07XG4gICAgICAgIG1hcmdpbi10b3A6IDIuNHJlbTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgJl9fYnV0dG9uIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDUuMnJlbTtcbiAgICAgICAgcGFkZGluZzogMS40cmVtIDEuOHJlbTtcbiAgICAgICAgYm9yZGVyOiAuMXJlbSBzb2xpZCB2YXIoLS1jb2xvci1oYWtpKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgdmFyKC0tYmFzZS10cmFuc2l0aW9uKSwgY29sb3IgdmFyKC0tYmFzZS10cmFuc2l0aW9uKSwgYm9yZGVyLWNvbG9yIHZhcigtLWJhc2UtdHJhbnNpdGlvbik7XG5cbiAgICAgICAgJltoaWRkZW5dIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICAgICAgICBvdXRsaW5lOiAuMnJlbSBzb2xpZCB2YXIoLS1jb2xvci1ibGFjayk7XG4gICAgICAgICAgICBvdXRsaW5lLW9mZnNldDogLjJyZW07XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICAgICAgICB9XG5cbiAgICAgICAgJi0tcHJpbWFyeSB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItaGFraSk7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItYmxhY2spO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi0tc2Vjb25kYXJ5IHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItZ3JleSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1ncmV5KTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLW91dGxpbmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI8NzY4cHhcIikge1xuICAgICAgICAmX19wYW5lbCB7XG4gICAgICAgICAgICByaWdodDogMS4ycmVtO1xuICAgICAgICAgICAgYm90dG9tOiAxLjJyZW07XG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMi40cmVtKTtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwZHZoIC0gMi40cmVtKTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEuNnJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX3RpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS45cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fdGV4dCxcbiAgICAgICAgJl9fbm90ZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgfVxuICAgIH1cbn0iLCIuc2l6ZS1ncmlkIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgb3ZlcmZsb3cteTogdmlzaWJsZTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZGRkO1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuXG4gICAgJl9fcm93IHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoMTZyZW0sIG1heC1jb250ZW50KSByZXBlYXQoOCwgbWlubWF4KDYuNHJlbSwgMWZyKSk7XG4gICAgICAgIG1pbi13aWR0aDogbWF4LWNvbnRlbnQ7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTVlNWU1O1xuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJi4tZm9vdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmYWZhZmE7XG5cbiAgICAgICAgICAgIC4tdGl0bGUge1xuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogZml0LWNvbnRlbnQ7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc2l6ZS1ncmlkX19jZWxsIHtcbiAgICAgICAgICAgICAgICBncmlkLWNvbHVtbjogMSAvIC0xO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBnYXA6IDNyZW07XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiBmaXQtY29udGVudDtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC4tbm90ZSB7XG4gICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDIgLyAtMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2NlbGwge1xuICAgICAgICBtaW4td2lkdGg6IG1heC1jb250ZW50O1xuICAgICAgICBwYWRkaW5nOiAxLjZyZW07XG4gICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNlNWU1ZTU7XG4gICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuLXRpdGxlIHtcbiAgICAgICAgICAgIG1pbi13aWR0aDogbWF4LWNvbnRlbnQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZjhmOGY4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgYiB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faGVhZGVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2Y1ZjVmNTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIjx0YWJsZXRcIikge1xuICAgICAgICAmX19yb3cge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgIH1cblxuICAgICAgICAmX19jZWxsIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IC44cmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiQGltcG9ydCBcIi4uL19fY29yZS9jb3JlLW1peGluc1wiO1xuXG4uaGVybyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYXNwZWN0LXJhdGlvOiAxNi85O1xuICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICAgIHBhZGRpbmctdG9wOiBjYWxjKHZhcigtLXNlY3Rpb24tcGFkZGluZykgKyAoMiAqIHZhcigtLWZpcnN0LW5hdi1oZWlnaHQpKSk7XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgaW5zZXQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sXG4gICAgICAgICAgICAgICAgcmdiYSgwLCAwLCAwLCAwLjgpLFxuICAgICAgICAgICAgICAgIHJnYmEoMCwgMCwgMCwgMCkpO1xuICAgIH1cblxuICAgIC53cmFwcGVyIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuXG4gICAgLmNvbnRlbnQge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBtYXgtd2lkdGg6IDExMHJlbTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICBoMSB7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogODVyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIjxwaG9uZS1sXCIpIHtcbiAgICAgICAgYXNwZWN0LXJhdGlvOiB1bnNldDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IGNhbGModmFyKC0tc2VjdGlvbi1wYWRkaW5nKSArICgyICogdmFyKC0tZmlyc3QtbmF2LWhlaWdodCkpKTtcbiAgICB9XG59IiwiQGltcG9ydCBcIi4uL19fY29yZS9jb3JlLW1peGluc1wiO1xuXG4uaGVyby0yIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDU1LjJyZW07XG4gICAgcGFkZGluZzogMTRyZW0gMS42cmVtO1xuXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGluc2V0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLFxuICAgICAgICAgICAgICAgIHJnYmEoMCwgMCwgMCwgMC44KSxcbiAgICAgICAgICAgICAgICByZ2JhKDAsIDAsIDAsIDApKTtcbiAgICB9XG5cbiAgICAud3JhcHBlciB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cblxuICAgIC5jb250ZW50IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgbWF4LXdpZHRoOiAxMTByZW07XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgaDEge1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDg1cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI8cGhvbmUtbFwiKSB7XG4gICAgICAgIGFzcGVjdC1yYXRpbzogdW5zZXQ7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKHZhcigtLXNlY3Rpb24tcGFkZGluZykgKyAoMiAqIHZhcigtLWZpcnN0LW5hdi1oZWlnaHQpKSk7XG4gICAgfVxufSIsIkBpbXBvcnQgXCIuLi9fX2NvcmUvY29yZS1taXhpbnNcIjtcblxuLnByb3Bvc2l0aW9ucyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZ3JleSk7XG5cbiAgICAud3JhcHBlciB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgJl9fcm93IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIC8vIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIC8vIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KDQwcmVtLCAxZnIpKTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgZmxleDogMSAxIDM4cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8cGhvbmUtbFwiKSB7XG4gICAgICAgICAgICBnYXA6IDEuNnB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faXRlbSB7XG4gICAgICAgIGZsZXg6IDEgMSAzOHJlbTtcbiAgICAgICAgaGVpZ2h0OiA4MHJlbTtcbiAgICAgICAgbWF4LWhlaWdodDogODByZW07XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZzogY2xhbXAoMi40cmVtLCAyLjh2dywgNC44cmVtKTtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGZpbHRlciAwLjJzIGVhc2UsIHRyYW5zZm9ybSAuMnMgZWFzZS1pbi1vdXQ7XG5cbiAgICAgICAgfVxuXG4gICAgICAgIGgzIHtcbiAgICAgICAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB9XG5cbiAgICAgICAgLnRleHQge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYm90dG9tOiBjYWxjKC0xMC44cmVtICsgY2xhbXAoMi40cmVtLCAyLjh2dywgNC44cmVtKSk7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMiAqIChjbGFtcCgyLjRyZW0sIDIuOHZ3LCA0LjhyZW0pKSk7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xcyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICAgICAgICAud29vLWJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGZpdC1jb250ZW50O1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDQuOHJlbTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjFzIGVhc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj4xMjAwcHhcIikge1xuXG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIGZpbHRlcjogYnJpZ2h0bmVzcyg1MCUpO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnRleHQge1xuICAgICAgICAgICAgICAgICAgICBib3R0b206IGNsYW1wKDIuNHJlbSwgMi44dncsIDQuOHJlbSk7XG5cbiAgICAgICAgICAgICAgICAgICAgLndvby1idXR0b24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPHBob25lLWxcIikge1xuICAgICAgICAmX19yb3cge1xuICAgICAgICAgICAgZ2FwOiAxLjZyZW07XG4gICAgICAgIH1cblxuICAgICAgICAmX19pdGVtIHtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogMSAvIDEuMTtcbiAgICAgICAgfVxuICAgIH1cbn0iLCJAaW1wb3J0IFwiLi4vX19jb3JlL2NvcmUtbWl4aW5zXCI7XG5cbi5wcm9wb3NpdGlvbnMtMiB7XG4gICAgLndyYXBwZXIge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cblxuICAgICZfX3JvdyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAvLyBkaXNwbGF5OiBncmlkO1xuICAgICAgICAvLyBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCg0MHJlbSwgMWZyKSk7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGdhcDogY2xhbXAoMS42cmVtLCAydncsIDMuMnJlbSk7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgXG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBmbGV4OiAxIDEgMzhyZW07XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjxwaG9uZS1sXCIpIHtcbiAgICAgICAgICAgIGdhcDogMS42cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19pdGVtIHtcbiAgICAgICAgZmxleDogMSAxIDM4cmVtO1xuICAgICAgICBoZWlnaHQ6IDgwcmVtO1xuICAgICAgICBtYXgtaGVpZ2h0OiA2MHJlbTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nOiBjbGFtcCgyLjRyZW0sIDIuOHZ3LCA0LjhyZW0pO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGgzIHtcbiAgICAgICAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB9XG5cbiAgICAgICAgLnRleHQge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYm90dG9tOiB2YXIoLS10ZXh0LWJvdHRvbSwgMCk7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMiAqIChjbGFtcCgyLjRyZW0sIDIuOHZ3LCA0LjhyZW0pKSk7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjJzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgICAgICAgIC5pcy13eXNpd3lnIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjJzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAud29vLWJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGZpdC1jb250ZW50O1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDQuOHJlbTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj4xMjAwcHhcIikge1xuXG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIGZpbHRlcjogYnJpZ2h0bmVzcyg1MCUpO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnRleHQge1xuICAgICAgICAgICAgICAgICAgICBib3R0b206IGNsYW1wKDIuNHJlbSwgMi44dncsIDQuOHJlbSk7XG5cbiAgICAgICAgICAgICAgICAgICAgLmlzLXd5c2l3eWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC53b28tYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjxwaG9uZS1sXCIpIHtcbiAgICAgICAgICAgIC50ZXh0IHtcbiAgICAgICAgICAgICAgICBib3R0b206IGNsYW1wKDIuNHJlbSwgMi44dncsIDQuOHJlbSk7XG5cbiAgICAgICAgICAgICAgICAuaXMtd3lzaXd5ZyB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLndvby1idXR0b24ge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjhyZW07XG5cbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPHBob25lLWxcIikge1xuICAgICAgICAmX19yb3cge1xuICAgICAgICAgICAgZ2FwOiAxLjZyZW07XG4gICAgICAgIH1cblxuICAgICAgICAmX19pdGVtIHtcbiAgICAgICAgICAgIGhlaWdodDogNTZyZW07XG4gICAgICAgICAgIFxuICAgICAgICB9XG4gICAgfVxufSIsIkBpbXBvcnQgXCIuLi9fX2NvcmUvY29yZS1taXhpbnNcIjtcblxuLmFib3V0LXVzIHtcbiAgICBwYWRkaW5nLXRvcDogY2xhbXAoMHJlbSwgNHZ3LCAxNHJlbSk7XG5cbiAgICAuYmFja2dyb3VuZCB7XG4gICAgICAgIG9iamVjdC1wb3NpdGlvbjogYm90dG9tIHJpZ2h0O1xuICAgIH1cblxuICAgIC5pbWFnZS1zaGFwZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICByaWdodDogMDtcblxuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1hYm91dC1iYWNrLWhlaWdodCk7XG4gICAgfVxuXG4gICAgLmNvbnRlbnQge1xuICAgICAgICBtYXgtd2lkdGg6IDc4cmVtO1xuICAgICAgICBwYWRkaW5nOiAxMDBweCBjbGFtcCgxLjZyZW0sIDR2dywgMTAwcmVtKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmVpZ2UpO1xuXG4gICAgICAgIFxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPHBob25lLWxcIikge1xuICAgICAgICBwYWRkaW5nOiAwIDAgMjguOHJlbSAwO1xuXG4gICAgICAgICNhYm91dFNoYXBlIHtcbiAgICAgICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAtMzUlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMzhyZW07XG4gICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJAaW1wb3J0IFwiLi4vX19jb3JlL2NvcmUtbWl4aW5zXCI7XG5cbi5iZW5lZml0cyB7XG4gICAgYXNwZWN0LXJhdGlvOiAxNi85O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWdyZXkpO1xuXG4gICAgLndyYXBwZXIge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAuaDItMy1zdWJ0aXRsZXIge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDhweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3JvdyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgZ2FwOiBjbGFtcCgxLjZyZW0sIDV2dywgMy4ycmVtKTtcbiAgICB9XG5cbiAgICAmX19pdGVtIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgcGFkZGluZzogY2xhbXAoMi40cmVtLCAyLjV2dywgNC44cmVtKTtcbiAgICAgICAgZmxleDogMSAxIDMwcmVtO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBnYXA6IDQuOHJlbTtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiA2LjRyZW07XG4gICAgICAgIH1cbiAgICAgICAgaDUge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC44cmVtO1xuICAgICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPHBob25lLWxcIikge1xuICAgICAgICAmX19pdGVtIHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgICAgIGdhcDogMS42cmVtO1xuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi52aWRlby1zZWN0aW9uIHtcbiAgICAuc2VjdGlvbi1iYWNrZ3JvdW5kIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICAgIH1cbiAgICAud3JhcHBlciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGdhcDogMTJyZW07XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgICAgZmxleDogMTtcbiAgICAgICAgICAgIG1heC13aWR0aDogNjVyZW07XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGdhcDogNTBweDtcbiAgICAgICAgICAgIGZsZXg6IDEgMSA1MHJlbTtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgfVxuXG4gICAgICAgIC52aWRlby13cmFwcGVyIHtcbiAgICAgICAgICAgIGZsZXg6IDEgMSA1MHJlbTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogNTEgLyAyOTsgXG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cblxuICAgICAgICAgICAgLnZpZGVvIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogIzAwMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgXG4gICAgICAgIH1cbiAgICB9XG5cblxufSIsIkBpbXBvcnQgXCIuLi9fX2NvcmUvY29yZS1taXhpbnNcIjtcblxuLnNlcnZpY2VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ncmV5KTtcblxuICAgIC53cmFwcGVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgZ2FwOiAzLjJyZW07XG4gICAgICAgIG1pbi1oZWlnaHQ6IDU2cmVtO1xuICAgIH1cblxuICAgICZfX2NvbnRlbnQtbGVmdCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXg6IDIgMSA3NXJlbTtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcblxuICAgICAgICAuY29udGVudC1sZWZ0X190ZXh0IHtcbiAgICAgICAgICAgIGZsZXg6IDIgMSAzMnJlbTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBwYWRkaW5nOiBjbGFtcCgyLjRyZW0sIDV2dywgNi40cmVtKTtcbiAgICAgICAgICAgIGdhcDogNC44cmVtO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNvbnRlbnQtbGVmdF9faW1nIHtcbiAgICAgICAgICAgIGZsZXg6IDEgMSAyMHJlbTtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jb250ZW50LXJpZ2h0IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBnYXA6IDQuOHJlbTtcbiAgICAgICAgZmxleDogMSAxIDQwcmVtO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iZWlnZSk7XG4gICAgICAgIHBhZGRpbmc6IGNsYW1wKDIuNHJlbSwgNXZ3LCA2LjRyZW0pO1xuICAgIH1cblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBjYWxjKDQwcmVtICogMiArIDMuMnJlbSkpIHtcbiAgICAgICAgJl9fY29udGVudC1sZWZ0LFxuICAgICAgICAmX19jb250ZW50LXJpZ2h0IHtcbiAgICAgICAgICAgIGZsZXg6IDEgMSAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI8dGFibGV0XCIpIHtcbiAgICAgICAgLndyYXBwZXIge1xuICAgICAgICAgICAgZ2FwOiAwO1xuICAgICAgICB9XG4gICAgICAgICZfX2NvbnRlbnQtbGVmdCB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgICAgICAgICAgIC5jb250ZW50LWxlZnRfX3RleHQge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY29udGVudC1sZWZ0X19pbWcge1xuICAgICAgICAgICAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogMSAvIDE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyAmX19jb250ZW50LWxlZnQgLmNvbnRlbnQtbGVmdF9faW1nIHtcbiAgICAvLyAgICAgZmxleDogMCAwIGF1dG87XG4gICAgLy8gICAgIG1pbi13aWR0aDogMTAwJTtcblxuICAgIC8vICAgICBpbWcge1xuICAgIC8vICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgLy8gICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgLy8gICAgICAgICBhc3BlY3QtcmF0aW86IDE2Lzk7XG4gICAgLy8gICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAvLyAgICAgfVxuICAgIC8vIH1cbn1cbiIsIkBpbXBvcnQgXCIuLi9fX2NvcmUvY29yZS1taXhpbnNcIjtcblxuLmN0YS1ibG9jay0xIHtcbiAgICAud3JhcHBlciB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJlaWdlKTtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTA2cmVtO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIHBhZGRpbmc6IGNsYW1wKDJyZW0sIDR2dywgMTByZW0pIDVyZW07XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICAgICAgICBoMixcbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDUwcmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0LjhyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19hY3Rpb25zIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBnYXA6IDMuMnJlbTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIjxwaG9uZS1sXCIpIHtcbiAgICAgICAgJl9fYWN0aW9ucyB7XG4gICAgICAgICAgICBnYXA6IDEuNnJlbTtcbiAgICAgICAgICAgIGEsXG4gICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiQGltcG9ydCBcIi4uL19fY29yZS9jb3JlLW1peGluc1wiO1xuXG4uY3RhLWJsb2NrLTIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICBwYWRkaW5nLXRvcDogY2xhbXAoNS4ycmVtLCA0dncsIDdyZW0pO1xuXG4gICAgLndyYXBwZXIge1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgICAuY29udGVudCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTg5MjAwMzA7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwNnJlbTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIHBhZGRpbmc6IGNsYW1wKDEwLjRyZW0sIDR2dywgMTRyZW0pIDEuNnJlbTtcbiAgICAgICAgICAgIGJvcmRlcjogMC4ycmVtIGRhc2hlZCAjNTg5MjAwODA7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEzMi44cmVtO1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2FjdGlvbnMge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIGdhcDogMy4ycmVtO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPHBob25lLWxcIikge1xuICAgICAgICAmX19hY3Rpb25zIHtcbiAgICAgICAgICAgIGdhcDogMS42cmVtO1xuXG4gICAgICAgICAgICBhLFxuICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkBpbXBvcnQgXCIuLi9fX2NvcmUvY29yZS1taXhpbnNcIjtcblxuLnByb3ZpZGVkLWZhcSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZ3JleSk7XG5cbiAgICAud3JhcHBlciB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgLnByb3ZpZGVkLWZhcSB7XG4gICAgICAgICZfX3JvdyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICBnYXA6IGNsYW1wKC44cmVtLCAzdncsIDMuMnJlbSk7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEzMi44cmVtO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAmX19pdGVtIHtcbiAgICAgICAgICAgIG1pbi13aWR0aDogMjhyZW07XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgcGFkZGluZzogY2xhbXAoMi40cmVtLCA1dncsIDMuM3JlbSk7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGdhcDogMS42cmVtO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIGZsZXg6IDEgMSA1MHJlbTtcblxuICAgICAgICAgICAgLml0ZW1fX3RpdGxlIHtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1kZWZhdWx0KTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7fVxuXG4gICAgICAgICAgICAgICAgJi10ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuaXRlbV9fYXJyb3cge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDM2cHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMzZweDtcbiAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiAzNnB4O1xuICAgICAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAzNnB4O1xuXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuXG4gICAgICAgICAgICAgICAgICAgIC5pdGVtX19hcnJvdy1pdGVtIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMi4ycmVtO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmLml0ZW1fX2Fycm93LWFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICMwMDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5pdGVtX19jb250ZW50IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJl9fbGlzdCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgZ2FwOiAxNnB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI8cGhvbmUtbFwiKSB7XG4gICAgICAgIC5wcm92aWRlZC1mYXEge1xuICAgICAgICAgICAgJl9fcm93IHtcbiAgICAgICAgICAgICAgICBnYXA6IDAuOHJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCJAaW1wb3J0IFwiLi4vX19jb3JlL2NvcmUtbWl4aW5zXCI7XG5cbi5jb29wZXJhdGlvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItaGFraSk7XG5cbiAgICAmX19yb3cge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICAgICAgZ2FwOiAzLjJyZW07XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgLmxlZnQge1xuICAgICAgICAgICAgZmxleDogMSAxIDYwcmVtO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmVpZ2UpO1xuICAgICAgICAgICAgcGFkZGluZzogMTAuNHJlbSBjbGFtcCgxLjZyZW0sIDV2dywgMTAuNHJlbSk7XG5cbiAgICAgICAgICAgIC5ibG9jay10aXRsZSB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnRleHQge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICBnYXA6IDRyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucmlnaHQge1xuICAgICAgICAgICAgZmxleDogMSAxIDYwcmVtO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmVpZ2UpO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAuaW1hZ2Uge1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudGV4dCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgICAgIGdhcDogMi40cmVtO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwLjRyZW0gY2xhbXAoMS42cmVtLCA1dncsIDEwLjRyZW0pO1xuXG4gICAgICAgICAgICAgICAgLmFjdGlvbnMge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICAgICAgICAgIGdhcDogMnJlbTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjbGFtcCgxLjZyZW0sIDN2dywgMS44cmVtKTtcblxuICAgICAgICAgICAgICAgICAgICAuLWIge1xuICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAuc2VwYXJhdG9yIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAwLjFyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEuNnJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5hY3Rpb25zX19zb2NpYWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGdhcDogMS42cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6IHRyYW5zcGFyZW50O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyNHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhc3BlY3QtcmF0aW86IDEgLyAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2U7XG5cdFx0XHRcdFx0XHRcdHN2ZyBwYXRoIHtcblx0XHRcdFx0XHRcdFx0XHRzdHJva2U6dmFyKC0tY29sb3ItaGFraSk7XG5cdFx0XHRcdFx0XHRcdH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYShcIjxwaG9uZS1sXCIpIHtcbiAgICAgICAgJl9fcm93IHtcbiAgICAgICAgICAgIGdhcDogMDtcbiAgICAgICAgICAgIC5yaWdodCB7XG4gICAgICAgICAgICAgICAgLmltYWdlIHtcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC50ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDE7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAycmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5sZWZ0IHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkBpbXBvcnQgXCIuLi9fX2NvcmUvY29yZS1taXhpbnNcIjtcblxuLnNlby10YWJzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ncmV5KTtcbiAgICBwYWRkaW5nOiAyLjRyZW0gMS42cmVtO1xuXG4gICAgLndyYXBwZXIge1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBnYXA6IGNsYW1wKDByZW0sIDF2dywgMy4ycmVtKTtcbiAgICB9XG5cbiAgICAmX19zaWRlYmFyIHtcbiAgICAgICAgZmxleDogMSAxIDI3cmVtO1xuXG4gICAgICAgIHVsIHtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgc3Ryb2tlOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxLjhyZW0gMS42cmVtO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogc3Ryb2tlIDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItaGFraSk7XG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogZGVmYXVsdDtcblxuICAgICAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlOiAjZmZmO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fY29udGVudCB7XG4gICAgICAgIGZsZXg6IDMgMSA2MHJlbTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcblxuICAgICAgICAudGFiLWNvbnRlbnQtaW5uZXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICAudGV4dC1jb250ZW50IHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA0LjhyZW0gY2xhbXAoMS42cmVtLCAzdncsIDQuOHJlbSk7XG5cbiAgICAgICAgICAgICAgICAmX19saXN0IHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgICAgICAgICBnYXA6IDE2cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50YWItY29udGVudC1pbm5lci1mYXFfX3JvdyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cbiAgICAgICAgICAgIG1heC13aWR0aDogMTMyLjhyZW07XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC50YWItY29udGVudC1pbm5lci1mYXFfX2l0ZW0ge1xuICAgICAgICAgICAgbWluLXdpZHRoOiAyOHJlbTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0Z3JleSk7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAwLjFyZW0gc29saWQgdmFyKC0tY29sb3ItZ3JleSk7XG4gICAgICAgICAgICBwYWRkaW5nOiBjbGFtcCgxLjZyZW0sIDV2dywgMi4xcmVtKSAxLjZyZW07XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGdhcDogMS42cmVtO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgY3ViaWMtYmV6aWVyKDAuMDc1LCAwLjgyLCAwLjE2NSwgMSk7XG5cbiAgICAgICAgICAgIC5pdGVtX190aXRsZSB7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1kZWZhdWx0KTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi10ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuaXRlbV9fYXJyb3cge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDM2cHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMzZweDtcbiAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiAzNnB4O1xuICAgICAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAzNnB4O1xuXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuXG4gICAgICAgICAgICAgICAgICAgIC5pdGVtX19hcnJvdy1pdGVtIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMi4ycmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICM3YTc5NTM7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmLml0ZW1fX2Fycm93LWFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICM3YTc5NTM7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5pdGVtX19jb250ZW50IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2FlYWQ2ZTJiO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmltYWdlLWJhbm5lciB7XG4gICAgICAgICAgICBoZWlnaHQ6IDI0cmVtO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPHBob25lLWxcIikge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgfVxufVxuIiwiQGltcG9ydCBcIi4uL19fY29yZS9jb3JlLW1peGluc1wiO1xuXG4uYmFubmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ncmV5KTtcblxuICAgIC53cmFwcGVyIHtcbiAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgICAgLmJsb2NrLWJhY2tncm91bmQge1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJlaWdlKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgICAgICAgICBnYXA6IDNyZW07XG5cbiAgICAgICAgICAgICZfX3RleHQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwLjRyZW0gMS42cmVtIGNsYW1wKDEuNnJlbSwgNXZ3LCAxMC40cmVtKVxuICAgICAgICAgICAgICAgICAgICBjbGFtcCgxLjZyZW0sIDV2dywgMTAuNHJlbSk7XG4gICAgICAgICAgICAgICAgZmxleDogMSAxIDQwcmVtO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG5cbiAgICAgICAgICAgICAgICAuaXMtd3lzaXd5ZyB7XG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogNTNyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmX19pbGx1c3RyYXRpb24ge1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICAgICAgZmxleDogMSAxIDQwcmVtO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjw4MDBweFwiKSB7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICBnYXA6IDA7XG4gICAgICAgICAgICAgICAgJl9fdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgIGZsZXg6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICZfX2lsbHVzdHJhdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgIGZsZXg6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPHBob25lLWxcIikge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIH1cbn1cbiIsIkBpbXBvcnQgXCIuLi9fX2NvcmUvY29yZS1taXhpbnNcIjtcblxuLmJpZy1iYW5uZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJlaWdlKTtcblxuICAgIC53cmFwcGVyIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZ2FwOiA0LjhyZW07XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEyMHJlbTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPHBob25lLWxcIikge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIC5pcy13eXNpd3lnIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMS42cmVtO1xuICAgICAgICB9XG4gICAgICAgIC53cmFwcGVyIHtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMzAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiQGltcG9ydCBcIi4uL19fY29yZS9jb3JlLW1peGluc1wiO1xuXG4udmlkZW8tYmFubmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ncmV5KTtcblxuICAgIC53cmFwcGVyIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICB9XG5cbiAgICAmX190ZXh0IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBmbGV4OiA3O1xuXG4gICAgICAgIC5ibG9jay1iYWNrZ3JvdW5kIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJlaWdlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHBhZGRpbmc6IDEwLjRyZW0gY2xhbXAoMS42cmVtLCA1dncsIDEwLjRyZW0pO1xuICAgIH1cblxuICAgICZfX3ZpZGVvIHtcbiAgICAgICAgZmxleDogNTtcbiAgICAgICAgbWluLXdpZHRoOiA2MHJlbTtcblxuICAgICAgICB2aWRlbyB7XG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI8dGFibGV0XCIpIHtcbiAgICAgICAgLndyYXBwZXIge1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgXG4gICAgICAgIH1cblxuICAgICAgICAmX190ZXh0IHtcbiAgICAgICAgICAgIC5ibG9jay1iYWNrZ3JvdW5kIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ncmV5KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX3ZpZGVvIHtcbiAgICAgICAgICAgIG1pbi13aWR0aDogdW5zZXQ7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogNjgvNTQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIjxwaG9uZS1sXCIpIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgXG4gICAgfVxufSIsIi5nYWxsZXJ5IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiBjbGFtcCg2LjRyZW0sIDZ2dywgOHJlbSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmVpZ2UpO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuXG4gICAgLndyYXBwZXIge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG5cbiAgICAmX19zd2lwZXIge1xuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAuc3dpcGVyLXNsaWRlIHtcbiAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogNDcgLyA2NDtcblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiQGltcG9ydCBcIi4uL19fY29yZS9jb3JlLW1peGluc1wiO1xuXG4uc3BlY2lhbC1wcm9wb3NhbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgcGFkZGluZy10b3A6IGNsYW1wKDUuMnJlbSwgNHZ3LCA3cmVtKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogY2xhbXAoNS4ycmVtLCA0dncsIDdyZW0pO1xuXG4gICAgLndyYXBwZXIge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cblxuICAgICZfX2Rpc2NsYWltZXIge1xuICAgICAgICBwYWRkaW5nOiA2LjRyZW0gMS42cmVtO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IGNsYW1wKDEwLjRyZW0sIDd2dywgMTRyZW0pO1xuICAgICAgICBib3JkZXI6IDAuMnJlbSBkYXNoZWQgIzU4OTIwMDgwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTg5MjAwMWE7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDEzMi44cmVtO1xuICAgIH1cblxuICAgICZfX3RhYnMge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAmX190YWJzLWhlYWRlciB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDE0NHJlbTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcblxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBnYXA6IDAuOHJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMy4ycmVtO1xuXG4gICAgICAgIC5wcm9wb3NhbC1pdGVtcy1zd2lwZXIge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAuc3dpcGVyLXNsaWRlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAudGFiLWl0ZW0ge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgcGFkZGluZzogY2xhbXAoMS42cmVtLCAydncsIDNyZW0pIGNsYW1wKDEuNnJlbSwgMnZ3LCA0cmVtKTtcbiAgICAgICAgICAgIC8vIGJvcmRlcjogZGFzaGVkIDEwcHggIzU4OTIwMDFBO1xuICAgICAgICAgICAgLy8gYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCM1ODkyMDAxQSwgIzU4OTIwMDFBKSwgbGluZWFyLWdyYWRpZW50KCM1ODkyMDA4MCwgIzU4OTIwMDFBKTtcbiAgICAgICAgICAgIC8vIGJhY2tncm91bmQtb3JpZ2luOiBib3JkZXItYm94O1xuICAgICAgICAgICAgLy8gYmFja2dyb3VuZC1jbGlwOiBjb250ZW50LWJveCwgYm9yZGVyLWJveDtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTg5MjAwMWE7XG4gICAgICAgICAgICBib3JkZXI6IDAuMnJlbSBkYXNoZWQgIzU4OTIwMDgwO1xuXG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgLy8gYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiXCIpO1xuICAgICAgICAgICAgLy8gYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XG4gICAgICAgICAgICAvLyBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgLy8gYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuXG5cbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IGNsYW1wKDEuNnJlbSwgM3Z3LCAzLjJyZW0pO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICM1ODkyMDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX190YWJzLWNvbnRlbnQge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcblxuICAgICAgICAudGFiLWNvbnRlbnQge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcblxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgIC5zcGVjaWFsLWdhbGxlcnkge1xuICAgICAgICAgICAgICAgIGZsZXg6IDEgMSA0MHJlbTtcbiAgICAgICAgICAgICAgICB3aWR0aDogNjAlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiA3MHJlbTtcbiAgICAgICAgICAgICAgICBnYXA6IGNsYW1wKDAuOHJlbSwgMnZ3LCAzLjJyZW0pO1xuXG4gICAgICAgICAgICAgICAgLm1haW4tc3dpcGVyIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogOC81O1xuXG4gICAgICAgICAgICAgICAgICAgIC5zd2lwZXItc2xpZGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiA4LzY7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5nYWxsZXJ5LWJ1bGxldHMge1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3R0b206IDIuNHJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGdhcDogMC40cmVtO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAuYnVsbGV0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAwLjhyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAwLjhyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItZ3JleSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMnJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHdpZHRoIDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC5idWxsZXQtYWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMi40cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWhha2kpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjxwaG9uZS1sXCIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8cGhvbmUtbFwiKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBhc3BlY3QtcmF0aW86IDEvMTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgLnN3aXBlci1zbGlkZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiAxLzE7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAudGh1bWJuYWlscy1zd2lwZXIge1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICBcblxuICAgICAgICAgICAgICAgICAgICAuc3dpcGVyLXNsaWRlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBhc3BlY3QtcmF0aW86IDEvMTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjxwaG9uZS1sXCIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC5zd2lwZXItc2xpZGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA2LjRyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA2LjRyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjxwaG9uZS1sXCIpIHtcbiAgICAgICAgICAgICAgICAgICAgLnRodW1ibmFpbHMge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC50ZXh0IHtcbiAgICAgICAgICAgICAgICBmbGV4OiAxIDEgMzByZW07XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMy4ycmVtIDEuNnJlbSAzLjJyZW0gY2xhbXAoMS42cmVtLCA1dncsIDEzLjZyZW0pO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgICAgICAuaXMtd3lzaXd5ZyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDU1cmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPDk2MHB4XCIpIHtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICAgICAgICAgICAgLnNwZWNpYWwtZ2FsbGVyeSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjw3NjhweFwiKSB7XG4gICAgICAgICAgICAgICAgLnNwZWNpYWwtZ2FsbGVyeSB7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiQGltcG9ydCBcIi4uL19fY29yZS9jb3JlLW1peGluc1wiO1xuXG4ucHJvbW8ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWdyZXkpO1xuXG4gICAgLndyYXBwZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBnYXA6IDMuMnJlbTtcblxuICAgICAgICAuYmxvY2stdGl0bGUge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcblxuXG4gICAgICAgIH1cblxuICAgICAgICAuYmxvY2stdGl0bGUtLWlubmVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjxwaG9uZS1sXCIpIHtcbiAgICAgICAgICAgIC5ibG9jay10aXRsZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmJsb2NrLXRpdGxlLS1pbm5lciB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS42cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICB9XG5cblxuICAgIC5jb250ZW50IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgIH1cblxuICAgICZfX2xpc3Qge1xuICAgICAgICBwYWRkaW5nOiAxMC40cmVtIGNsYW1wKDEuNnJlbSwgNnZ3LCAxMC40cmVtKTtcbiAgICAgICAgZmxleDogMSAxIDMwcmVtO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIH1cblxuICAgICZfX2ltYWdlIHtcbiAgICAgICAgZmxleDogMS4yIDEgMzByZW07XG5cbiAgICAgICAgaW1nLFxuICAgICAgICBwaWN0dXJlIHtcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX190ZXh0IHtcbiAgICAgICAgcGFkZGluZzogMTAuNHJlbSBjbGFtcCgxLjZyZW0sIDZ2dywgMTAuNHJlbSk7XG4gICAgICAgIGZsZXg6IDEgMSAzMHJlbTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmVpZ2UpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPHBob25lLWxcIikge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgfVxuXG59IiwiLy8gQ29yZSBzZXR0aW5nc1xuQGltcG9ydCBcIl9fY29yZS9jb3JlLW1peGluc1wiO1xuQGltcG9ydCBcIl9fY29yZS9jb3JlLXNldHRpbmdzXCI7XG5cbi8vIEhlbHBlcnMgYW5kIHV0aWxpdGllc1xuXG4vLyBTaXRlIFN0cnVjdHVyZVxuQGltcG9ydCBcIl9sYXlvdXQvd3lzaXd5Z1wiO1xuQGltcG9ydCBcIl9sYXlvdXQvcGFnZTQwNFwiO1xuQGltcG9ydCBcIl9sYXlvdXQvX2hlYWRlclwiO1xuQGltcG9ydCBcIl9sYXlvdXQvX2Zvb3RlclwiO1xuQGltcG9ydCBcIl9sYXlvdXQvbW9kYWxzXCI7XG5AaW1wb3J0IFwiX2xheW91dC9taW5pLWNhcnRcIjtcbkBpbXBvcnQgXCJfbGF5b3V0L3NpZGUtY2FydFwiO1xuQGltcG9ydCBcIl9sYXlvdXQvX2J0bnNcIjtcbkBpbXBvcnQgXCJfbGF5b3V0L19maWVsZHNcIjtcblxuQGltcG9ydCBcIl9sYXlvdXQvX2Jhc2VcIjtcbkBpbXBvcnQgXCJfYmxvY2tzL2ZpcnN0LXNjcmVlblwiO1xuQGltcG9ydCBcIl9jb21wb25lbnRzL2JyZWFkY3J1bWJzXCI7XG5AaW1wb3J0IFwiX2NvbXBvbmVudHMvc2VsZWN0XCI7XG5AaW1wb3J0IFwiX2NvbXBvbmVudHMvYWxlcnRzXCI7XG5AaW1wb3J0IFwiX2NvbXBvbmVudHMvbG9hZGVyXCI7XG5AaW1wb3J0IFwiX2NvbXBvbmVudHMvYWNjb3VudC1jb250cm9sXCI7XG5AaW1wb3J0IFwiX2NvbXBvbmVudHMvY2FydC1wcm9kdWN0LWl0ZW1cIjtcbkBpbXBvcnQgXCJfY29tcG9uZW50cy9jb29raWUtY29uc2VudFwiO1xuQGltcG9ydCBcIl9jb21wb25lbnRzL3NpemUtZ3JpZFwiO1xuXG4vLyB0ZW1wbGF0ZSBwYXJ0c1xuXG5AaW1wb3J0IFwiX3RlbXBsYXRlLXBhcnRzL2hlcm9cIjtcbkBpbXBvcnQgXCJfdGVtcGxhdGUtcGFydHMvaGVyby0yXCI7XG5AaW1wb3J0IFwiX3RlbXBsYXRlLXBhcnRzL3Byb3Bvc2l0aW9uc1wiO1xuQGltcG9ydCBcIl90ZW1wbGF0ZS1wYXJ0cy9wcm9wb3NpdGlvbnNfMlwiO1xuQGltcG9ydCBcIl90ZW1wbGF0ZS1wYXJ0cy9hYm91dC11c1wiO1xuQGltcG9ydCBcIl90ZW1wbGF0ZS1wYXJ0cy9iZW5lZml0c1wiO1xuQGltcG9ydCBcIl90ZW1wbGF0ZS1wYXJ0cy92aWRlby1zZWN0aW9uXCI7XG5AaW1wb3J0IFwiX3RlbXBsYXRlLXBhcnRzL3NlcnZpY2VzXCI7XG5AaW1wb3J0IFwiX3RlbXBsYXRlLXBhcnRzL2N0YS1ibG9jay0xXCI7XG5AaW1wb3J0IFwiX3RlbXBsYXRlLXBhcnRzL2N0YS1ibG9jay0yXCI7XG5AaW1wb3J0IFwiX3RlbXBsYXRlLXBhcnRzL3Byb3ZpZGVkLWZhcVwiO1xuQGltcG9ydCBcIl90ZW1wbGF0ZS1wYXJ0cy9jb29wZXJhdGlvblwiO1xuQGltcG9ydCBcIl90ZW1wbGF0ZS1wYXJ0cy9zZW8tdGFic1wiO1xuQGltcG9ydCBcIl90ZW1wbGF0ZS1wYXJ0cy9iYW5uZXJcIjtcbkBpbXBvcnQgXCJfdGVtcGxhdGUtcGFydHMvYmlnLWJhbm5lclwiO1xuQGltcG9ydCBcIl90ZW1wbGF0ZS1wYXJ0cy92aWRlby1iYW5uZXJcIjtcbkBpbXBvcnQgXCJfdGVtcGxhdGUtcGFydHMvZ2FsbGVyeVwiO1xuQGltcG9ydCBcIl90ZW1wbGF0ZS1wYXJ0cy9zcGVjaWFsLXByb3Bvc2FsXCI7XG5AaW1wb3J0IFwiX3RlbXBsYXRlLXBhcnRzL3Byb21vXCI7XG5cbi8qIFdvb0NvbW1lcmNlIHRlbXBsYXRlIHBhcnRzICovXG5AaW1wb3J0IFwiX3dvb2NvbW1lcmNlL2Jhc2VcIjtcbkBpbXBvcnQgXCJfd29vY29tbWVyY2UvY3JpdGljYWxcIjtcbkBpbXBvcnQgXCJfd29vY29tbWVyY2UvYnRuc1wiO1xuQGltcG9ydCBcIl93b29jb21tZXJjZS9oZXJvLWJhbm5lclwiO1xuQGltcG9ydCBcIl93b29jb21tZXJjZS9jYXRlZ29yeS1jYXRhbG9nXCI7XG5AaW1wb3J0IFwiX3dvb2NvbW1lcmNlL2NhdGVnb3J5LXByb2R1Y3RzXCI7XG5AaW1wb3J0IFwiX3dvb2NvbW1lcmNlL3Byb2R1Y3QtZGVzY3JpcHRpb25cIjtcbkBpbXBvcnQgXCJfd29vY29tbWVyY2UvcHJvZHVjdC1pbmZvXCI7XG5AaW1wb3J0IFwiX3dvb2NvbW1lcmNlL3Byb2R1Y3QtcHJvcGVydGllc1wiO1xuQGltcG9ydCBcIl93b29jb21tZXJjZS9wcm9kdWN0LWZvb3RlclwiO1xuQGltcG9ydCBcIl93b29jb21tZXJjZS9jb250ZW50LXByb2R1Y3RcIjtcbkBpbXBvcnQgXCJfd29vY29tbWVyY2UvbXktYWNjb3VudFwiO1xuQGltcG9ydCBcIl93b29jb21tZXJjZS9jYXJ0XCI7XG5AaW1wb3J0IFwiX3dvb2NvbW1lcmNlL2NoZWNrb3V0XCI7XG4iLCJAaW1wb3J0IFwiLi4vX19jb3JlL2NvcmUtbWl4aW5zXCI7XG5cbjpyb290IHtcbiAgICAtLXByb2R1Y3QtYmxvY2stcGFkZGluZzogY2xhbXAoMS42cmVtLCAzdncsIDQuOHJlbSk7XG59XG5cbmJvZHkge1xuICAgICYuc2luZ2xlLXByb2R1Y3Qge1xuICAgICAgICBcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZ3JleSk7XG4gICAgfVxufVxuXG4ud29vLXNlY3Rpb24ge1xuICAgIHBhZGRpbmc6IDAgMS42cmVtO1xuXG4gICAgLndvb2NvbW1lcmNlLW9yZGVyaW5nIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgICAub3JkZXJieSB7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jYXQtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogY2xhbXAoMS40cmVtLCAydncsIDEuNnJlbSk7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI8cGhvbmUtbFwiKSB7XG4gICAgICAgIFxuICAgIH1cbn1cblxuLmluZm8ge1xuICAgIC5wcm9kdWN0LW5hbWUge1xuICAgICAgICBmb250LXNpemU6IGNsYW1wKDEuMnJlbSwgMnZ3LCAxLjZyZW0pO1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgIH1cblxuICAgIC5wcmljZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogY2xhbXAoMS40cmVtLCAydncsIDIuNHJlbSk7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1oYWtpKTtcbiAgICB9XG59XG5cbi5hY2NvcmRpb24tdGFicyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxleDogMTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjODA4MDgwMjA7XG5cbiAgICAmX19pdGVtIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjODA4MDgwMjA7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fdGl0bGUge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IDEuMnJlbSAxLjZyZW07XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAmLXRleHQge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBnYXA6IDEuNnJlbTtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gICAgICAgICAgICBmb250LXNpemU6IGNsYW1wKDEuNHJlbSwgMnZ3LCAxLjZyZW0pO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmJmYmZiO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5hY2NvcmRpb24tdGFic19fdGl0bGUtLWFjdGl2ZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmJmYmZiO1xuXG4gICAgICAgICAgICAuYWNjb3JkaW9uLXRhYnNfX3RpdGxlLXRleHQge1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1oYWtpKTtcbiAgICAgICAgICAgICAgICBzdHJva2U6IHZhcigtLWNvbG9yLWhha2kpO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19hcnJvdyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBtaW4td2lkdGg6IDM2cHg7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDM2cHg7XG4gICAgICAgIHdpZHRoOiAzNnB4O1xuICAgICAgICBoZWlnaHQ6IDM2cHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcblxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fYXJyb3ctLWFjdGl2ZSB7XG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jb250ZW50IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZiZmJmYjtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMS4ycmVtIDEuNnJlbSAxLjZyZW0gMS42cmVtO1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yMik7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI8cGhvbmUtbFwiKSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICZfX2l0ZW0ge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5zd2l0Y2gtdGFicyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM4MDgwODAyMDtcblxuICAgICZfX2hlYWRlciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM4MDgwODAyMDtcbiAgICB9XG5cbiAgICAmX19pdGVtIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBmbGV4OiAxO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgZ2FwOiAxcmVtO1xuICAgICAgICBwYWRkaW5nOiAxLjZyZW0gMS42cmVtO1xuICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjODA4MDgwMjA7XG4gICAgICAgIGZvbnQtc2l6ZTogY2xhbXAoMS40cmVtLCAydncsIDEuNnJlbSk7XG5cbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIHN0cm9rZTogdmFyKC0tY29sb3ItYmxhY2spO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWhha2kpO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmYmZiZmI7XG5cbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgc3Ryb2tlOiB2YXIoLS1jb2xvci1oYWtpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19ib2R5IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZiZmJmYjtcbiAgICAgICAgcGFkZGluZzogMS42cmVtO1xuICAgIH1cblxuICAgICZfX2NvbnRlbnQge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLndvby1idXR0b24ge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBtaW4td2lkdGg6IG1heC1jb250ZW50O1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAmLi1hZGQtdG8tY2FydCB7XG4gICAgICAgIHBhZGRpbmc6IC44cmVtO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItaGFraSk7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgdHJhbnNpdGlvbjogZmlsdGVyIC4xcyBlYXNlO1xuICAgICAgICBhc3BlY3QtcmF0aW86IDEvMTtcbiAgICAgICAgaGVpZ2h0OiBmaXQtY29udGVudDtcblxuICAgICAgICBpbWcsXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICB3aWR0aDogY2xhbXAoMS42cmVtLCAydncsIDIuNHJlbSk7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIH1cblxuXG4gICAgfVxuXHQmLi1sZWFybi1tb3JlIHtcblx0XHRwYWRkaW5nOiAwLjhyZW07XG5cdCAgZGlzcGxheTogZmxleDtcblx0ICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0ICBhbGlnbi1pdGVtczogY2VudGVyO1xuXHQgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWhha2kpO1xuXHRcdGNvbG9yOnZhcigtLWNvbG9yLXdoaXRlKTtcblx0ICBib3JkZXI6IG5vbmU7XG5cdCAgdHJhbnNpdGlvbjogZmlsdGVyIDAuMXMgZWFzZTtcblx0ICBhc3BlY3QtcmF0aW86IHVuc2V0O1xuXHQgIGhlaWdodDogZml0LWNvbnRlbnQ7XG5cdFx0fVxuXG4gICAgJi4tb3Blbi1maWx0ZXJzIHtcbiAgICAgICAgcGFkZGluZzogLjRyZW07XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1ncmV5KTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICB0cmFuc2l0aW9uOiBmaWx0ZXIgLjFzIGVhc2U7XG5cbiAgICAgICAgaW1nLFxuICAgICAgICBzdmcge1xuICAgICAgICAgICAgd2lkdGg6IDIuNHJlbTtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgZmlsdGVyOiBzYXR1cmF0ZSgyMCUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi4tc2VtaS10cmFuc3BhcmVudCB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWdyZXkpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2E3OTUzMjE7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1oYWtpKTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGdhcDogMS42cmVtO1xuICAgICAgICBwYWRkaW5nOiAxLjRyZW0gMnJlbTtcbiAgICAgICAgZm9udC1zaXplOiBjbGFtcCgxLjRyZW0sIDJ2dywgMS42cmVtKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcblxuICAgICAgICBzdmcge1xuICAgICAgICAgICAgd2lkdGg6IDIuNHJlbTtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICBzdHJva2U6IHZhcigtLWNvbG9yLWhha2kpO1xuXG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLi13aGl0ZSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmJmYmZiO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ncmV5KTtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWhha2kpO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgZ2FwOiAxLjZyZW07XG4gICAgICAgIHBhZGRpbmc6IDEuNHJlbSAycmVtO1xuICAgICAgICBmb250LXNpemU6IGNsYW1wKDEuNHJlbSwgMnZ3LCAxLjZyZW0pO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuXG5cbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIHN0cm9rZTogdmFyKC0tY29sb3ItaGFraSk7XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgJi4tYWRkLXRvLWNhcnQtZnVsbCxcbiAgICAmLi1iaWctYWNjZW50IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGdhcDogMS42cmVtO1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1oYWtpKTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgdHJhbnNpdGlvbjogZmlsdGVyIC4xcyBlYXNlO1xuICAgICAgICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gICAgICAgIHBhZGRpbmc6IDEuNHJlbSAycmVtO1xuICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgaGVpZ2h0OiBmaXQtY29udGVudDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAgICAgICBzdmcge1xuICAgICAgICAgICAgd2lkdGg6IDIuNHJlbTtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuLWFjY2VudC10cmFuc3BhcmVudCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBnYXA6IDEuNnJlbTtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItdHJhbnNwYXJlbnQpO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ncmV5KTtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICAgICAgdHJhbnNpdGlvbjogZmlsdGVyIC4xcyBlYXNlO1xuICAgICAgICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gICAgICAgIHBhZGRpbmc6IDEuNHJlbSAyLjRyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBoZWlnaHQ6IGZpdC1jb250ZW50O1xuXG4gICAgfVxuXG4gICAgJi4tdHJhbnNwYXJlbnQge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZmO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgcGFkZGluZzogMS44cmVtIDIuNHJlbTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG4gICAgJi4tZnVsbCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICAmLi1ncmVlbiB7XG4gICAgICAgIHBhZGRpbmc6IDEuOHJlbSAyLjRyZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWdyZWVuKTtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGZpbHRlcjogc2F0dXJhdGUoNDAlKTtcbiAgICB9XG59IiwiQGltcG9ydCBcIi4uL19fY29yZS9jb3JlLW1peGluc1wiO1xuXG4uaGVyby1iYW5uZXIge1xuICAgIGFzcGVjdC1yYXRpbzogNDggLyAxOTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMy4ycmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJlaWdlKTtcblxuICAgIC5zZWN0aW9uLWJhY2tncm91bmQge1xuICAgICAgICAubW9iaWxlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAuZGVza3RvcCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPHRhYmxldFwiKSB7XG4gICAgICAgICAgICAubW9iaWxlIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmRlc2t0b3Age1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAud3JhcHBlciB7XG4gICAgICAgIHBhZGRpbmctdG9wOiBjYWxjKDEwLjRyZW0gKyB2YXIoLS1oZWFkZXItaGVpZ2h0KSk7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxMC40cmVtO1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGdhcDogMS42cmVtO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPHRhYmxldFwiKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiBjYWxjKDEwLjRyZW0pO1xuXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgICAgIC53b28tYnV0dG9uIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IGNsYW1wKDQuOHJlbSwgM3Z3LCA2LjRyZW0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fdGl0bGUge1xuICAgICAgICBcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIG1heC13aWR0aDogODVyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogY2xhbXAoNHJlbSwgNXZ3LCA2LjRyZW0pO1xuICAgIH1cblxuICAgICZfX2Rlc2Mge1xuICAgICAgICBtYXgtd2lkdGg6IDUwcmVtO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPHRhYmxldFwiKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IHZhcigtLWhlYWRlci1oZWlnaHQpO1xuICAgICAgICBhc3BlY3QtcmF0aW86IHVuc2V0O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiA2NXJlbTtcbiAgICB9XG59XG4iLCIuY2F0ZWdvcnktY2F0YWxvZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZ3JleSk7XG4gICAgcGFkZGluZy1ib3R0b206IGNsYW1wKDEuNnJlbSwgMnZ3LCAzLjJyZW0pO1xuICAgIHBhZGRpbmctdG9wOiAzLjJyZW07XG5cbiAgICAmX19ncmlkIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maWxsLCBtaW5tYXgoY2xhbXAoMTZyZW0sMTJ2dywyMXJlbSksIDFmcikpO1xuICAgICAgICBnYXA6IC44cmVtO1xuICAgICAgICB3aWR0aDogMTAwJTtcblx0XHRsaXN0LXN0eWxlOm5vbmU7XG5cblxuICAgIH1cblxuICAgICZfX2NhcmQge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgYXNwZWN0LXJhdGlvOiA1LzY7XG4gICAgICAgIFxuXG5cdFx0YSB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblx0XHRcdGhlaWdodDoxMDAlO1xuICAgICAgICBwYWRkaW5nOiAyLjRyZW07XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXHRcdH1cbiAgICAgICAgLmJsb2NrLWJhY2tncm91bmQge1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogZmlsdGVyIC4ycyBlYXNlO1xuICAgICAgICB9XG5cbiAgICAgICAgLm1hc2sge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgaW5zZXQ6IDA7XG4gICAgICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgcmdiYSgwLCAwLCAwLCAwKSAwJSwgcmdiYSgwLCAwLCAwLCAwLjMpIDEwMCUpLFxuICAgICAgICAgICAgICAgIGxpbmVhci1ncmFkaWVudCgzNjBkZWcsIHJnYmEoMCwgMCwgMCwgMC4zKSAwJSwgcmdiYSgyMzAsIDksIDE2MywgMCkgMTAwJSk7XG5cbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgLmJsb2NrLWJhY2tncm91bmQge1xuICAgICAgICAgICAgICAgIGZpbHRlcjogYnJpZ2h0bmVzcyg2MCUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuXG5cbiAgICB9XG59IiwiQGltcG9ydCBcIi4uL19fY29yZS9jb3JlLW1peGluc1wiO1xuXG4uY2F0ZWdvcnktcHJvZHVjdHMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWdyZXkpO1xuICAgIHBhZGRpbmctYm90dG9tOiAzLjJyZW07XG5cbiAgICAuc2VjdGlvbi1iYWNrZ3JvdW5kIHtcblxuICAgICAgICBpbWcsXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAud3JhcHBlciB7XG4gICAgICAgIGdhcDogMy4ycmVtO1xuICAgIH1cblxuICAgIC5zZWFyY2gtcmVzdWx0c19fdGl0bGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyLjRyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogY2xhbXAoMi40cmVtLCA0dncsIDRyZW0pO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItaGFraSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2VhcmNoLXJlc3VsdHNfX2Zvcm0ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBnYXA6IDEuNnJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMy4ycmVtO1xuICAgICAgICBtYXgtd2lkdGg6IDEyMHJlbTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbjogYXV0bztcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjx0YWJsZXRcIikge1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGdhcDogMS4ycmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNlYXJjaC1yZXN1bHRzX19pbnB1dC13cmFwcGVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBmbGV4OiAxO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG5cbiAgICAuc2VhcmNoLXJlc3VsdHNfX2ljb24ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDEuNnJlbTtcbiAgICAgICAgd2lkdGg6IDJyZW07XG4gICAgICAgIGhlaWdodDogMnJlbTtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWRhcmtncmV5KTtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuXG4gICAgLnNlYXJjaC1yZXN1bHRzX19pbnB1dCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAycmVtIDEuNnJlbSAycmVtIDQuOHJlbTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYmVpZ2UpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuM3MgZWFzZTtcblxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWhha2kpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWRhcmtncmV5KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zZWFyY2gtcmVzdWx0c19fc3VibWl0IHtcbiAgICAgICAgcGFkZGluZzogMnJlbSAzLjJyZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWhha2kpO1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4zcyBlYXNlO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItaGFraS1kYXJrLCAjNmE2YjRhKTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPHRhYmxldFwiKSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2xlZnQge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAzOS43cmVtO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgICB0b3A6IGNhbGModmFyKC0taGVhZGVyLWhlaWdodCkgKyB2YXIoLS1oZWFkZXItc2hpZnQpKTtcbiAgICAgICAgaGVpZ2h0OiBmaXQtY29udGVudDtcbiAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSB2YXIoLS1oZWFkZXItaGVpZ2h0KSAtIHZhcigtLWhlYWRlci1zaGlmdCkgLSAyLjRyZW0pO1xuICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4ycyBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSk7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcblxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWdyZXkpO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjFzIGVhc2U7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgICAgIGEgeyBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxLjhyZW0gMS42cmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ncmV5KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPDExMDBweFwiKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY2F0ZWdvcnktcHJvZHVjdHNfX2NhdGFsb2cge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBnYXA6IGNsYW1wKDEuNnJlbSwgMnZ3LCAzLjJyZW0pO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAmX19oZWFkZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGdhcDogMS4ycmVtO1xuICAgICAgICBwYWRkaW5nOiAxLjhyZW0gMS42cmVtO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgICAgdG9wOiBjYWxjKHZhcigtLWhlYWRlci1oZWlnaHQpICsgdmFyKC0taGVhZGVyLXNoaWZ0KSAtIC4xcmVtKTtcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMnMgY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpLCBib3JkZXItY29sb3IgLjJzIGVhc2UtaW47XG4gICAgICAgIGJvcmRlci1ib3R0b206IC4xcmVtIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICB6LWluZGV4OiA1MDtcblxuICAgICAgICAmLmlzLXN0aWNreSB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWhha2kpO1xuICAgICAgICB9XG5cbiAgICAgICAgLmZpbHRlci10b2dnbGUge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcblxuXG4gICAgICAgIH1cblxuICAgICAgICAuY2F0ZWdvcnktcHJvZHVjdHNfX3NvcnQge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBnYXA6IDEuMnJlbTtcblxuICAgICAgICAgICAgLndvb2NvbW1lcmNlLW9yZGVyaW5nIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgICAgICAgICAub3JkZXJieSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDI0LjJyZW07XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAuOHJlbSAzLjJyZW0gMC44cmVtIDEuNnJlbTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYmVpZ2UpO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHdpZHRoPScxMicgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgMTIgOCcgZmlsbD0nbm9uZScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzRSUzQ3BhdGggZD0nTTEgMS41TDYgNi41TDExIDEuNScgc3Ryb2tlPSclMjMwMDAnIHN0cm9rZS13aWR0aD0nMS41JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnLyUzRSUzQy9zdmclM0VcIik7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDEuMnJlbSBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMS4ycmVtO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4zcyBlYXNlO1xuXG4gICAgICAgICAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItaGFraSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPDExMDBweFwiKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiB1bnNldDtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY291bnQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjwxMTAwcHhcIikge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19ncmlkIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpbGwsXG4gICAgICAgICAgICAgICAgbWlubWF4KGNsYW1wKDE2cmVtLCAzNXZ3LCAzMHJlbSksIDFmcikpO1xuICAgICAgICBnYXA6IGNsYW1wKDAuOHJlbSwgMnZ3LCAzLjJyZW0pO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG5cbiAgICAgICAgJi5sb2FkaW5nIHtcbiAgICAgICAgICAgIC5sb2FkZXItd3JhcHBlciB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wYWdpbmF0aW9uIHtcbiAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG5cbiAgICAgICAgLnBhZ2luYXRpb25fX2xpc3Qge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGdhcDogY2xhbXAoLjhyZW0sIDJ2dywgMS42cmVtKTtcblxuICAgICAgICAgICAgLnBhZ2luYXRpb25fX2l0ZW0ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB3aWR0aDogNHJlbTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDRyZW07XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGZpbHRlciAwLjJzIGVhc2U7XG5cbiAgICAgICAgICAgICAgICAuYXJyb3cge1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5pcy1hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItaGFraSk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGZpbHRlcjogYnJpZ2h0bmVzcyg3MCUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNlYXJjaC1yZXN1bHRzIHtcbiAgICBwYWRkaW5nLXRvcDogMjByZW07XG5cbiAgICAuY2F0ZWdvcnktcHJvZHVjdHMgLndyYXBwZXIge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIH1cbn1cblxuLmNhdGVnb3J5LXByb2R1Y3RzIHtcbiAgICAmX19sZWZ0IHtcbiAgICAgICAgZ2FwOiAxLjZyZW07XG4gICAgfVxuXG4gICAgJl9fY2F0ZWdvcmllcyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgfVxuXG4gICAgJl9fZW1wdHkge1xuICAgICAgICBncmlkLWNvbHVtbjogMSAvIC0xO1xuICAgICAgICBwYWRkaW5nOiAyLjRyZW0gMS42cmVtO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgICZfX2ZpbHRlci1vdmVybGF5IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbi50Zm9ybS1jYXRhbG9nLWZpbHRlciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcblxuICAgICZfX2hlYWRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgJl9fY2xvc2Uge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgd2lkdGg6IDRyZW07XG4gICAgICAgIGhlaWdodDogNHJlbTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cblxuICAgICZfX2FjY29yZGlvbiB7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICB9XG5cbiAgICAmX19ncm91cCB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ncmV5KTtcblxuICAgICAgICAuYWNjb3JkaW9uLXRhYnNfX2NvbnRlbnQge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMS42cmVtIDEuNnJlbTtcbiAgICAgICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX29wdGlvbnMge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBnYXA6IC44cmVtO1xuICAgIH1cblxuICAgICZfX29wdGlvbiB7XG4gICAgICAgIHBhZGRpbmc6IDEuMnJlbSAwO1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXG4gICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19wcmljZSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGdhcDogMS42cmVtO1xuICAgIH1cblxuICAgICZfX3ByaWNlLWZpZWxkIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgICZfX3JhbmdlIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBnYXA6IC44cmVtO1xuXG4gICAgICAgIGlucHV0W3R5cGU9XCJyYW5nZVwiXSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGFjY2VudC1jb2xvcjogdmFyKC0tY29sb3ItaGFraSk7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19hY3Rpb25zIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZ2FwOiAxLjJyZW07XG4gICAgICAgIHBhZGRpbmc6IDEuNnJlbTtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWdyZXkpO1xuXG4gICAgICAgIC5kZWZhdWx0LXN1Ym1pdCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3Jlc2V0IHtcbiAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1oYWtpKTtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB9XG59XG5cblxuLmNhdGVnb3J5LXByb2R1Y3RzIC5maWx0ZXJzLXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBsZWZ0OiAtMTAwJTtcbiAgICB0b3A6IGNhbGModmFyKC0taGVhZGVyLWhlaWdodCkgKyB2YXIoLS1oZWFkZXItc2hpZnQpKTtcbiAgICB6LWluZGV4OiAxMDAxO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWF4LXdpZHRoOiAzNi44cmVtO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gdmFyKC0taGVhZGVyLWhlaWdodCkgLSB2YXIoLS1oZWFkZXItc2hpZnQpKTtcbiAgICBwYWRkaW5nOiAxLjJyZW07XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1ncmV5KTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIjwxMTAwcHhcIikge1xuICAgICAgICBtYXgtd2lkdGg6IDgwdnc7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn1cblxuLmNhdGVnb3J5LXByb2R1Y3RzIC5maWx0ZXJzLXdyYXBwZXIuaXMtb3BlbiB7XG4gICAgbGVmdDogMDtcbn1cblxuLmNhdGVnb3J5LXByb2R1Y3RzX19maWx0ZXItb3ZlcmxheSB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogY2FsYyh2YXIoLS1oZWFkZXItaGVpZ2h0KSArIHZhcigtLWhlYWRlci1zaGlmdCkpO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMTAwMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwdnc7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gdmFyKC0taGVhZGVyLWhlaWdodCkgLSB2YXIoLS1oZWFkZXItc2hpZnQpKTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIC4zNSk7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4ycyBlYXNlO1xufVxuXG4uY2F0ZWdvcnktcHJvZHVjdHNfX2ZpbHRlci1vdmVybGF5LmlzLW9wZW4ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG59XG5cbi50Zm9ybS1jYXRhbG9nLWZpbHRlcl9faGVhZGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGdhcDogMS42cmVtO1xuICAgIHBhZGRpbmc6IDEuMnJlbSAxLjZyZW07XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWdyZXkpO1xuICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG59IiwiQGltcG9ydCBcIi4uL19fY29yZS9jb3JlLW1peGluc1wiO1xuXG4ucHJvZHVjdC1kZXNjcmlwdGlvbiB7XG4gICAgcGFkZGluZy10b3A6IDEuNnJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMS42cmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWdyZXkpO1xuXG4gICAgLndyYXBwZXIge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgICAgIH1cblxuICAgICAgICAuYmxvY2stdGl0bGUge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2l0ZW0ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcblxuICAgICAgICAudGV4dCB7XG4gICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBnYXA6IDEuNnJlbTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXG4gICAgICAgICAgICAuaXMtd3lzaXd5ZyB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogNC44cmVtIDEuNnJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogNTlyZW07XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA1OXJlbTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pbWFnZSB7XG4gICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiA0IC8gMztcbiAgICAgICAgICAgIGltZyxcbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpudGgtY2hpbGQoMm4gKyAxKSB7XG4gICAgICAgICAgICAudGV4dCB7XG4gICAgICAgICAgICAgICAgb3JkZXI6IDE7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5pbWFnZSB7XG4gICAgICAgICAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOm50aC1jaGlsZCgybikge1xuICAgICAgICAgICAgLnRleHQge1xuICAgICAgICAgICAgICAgIG9yZGVyOiAyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuaW1hZ2Uge1xuICAgICAgICAgICAgICAgIG9yZGVyOiAxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8dGFibGV0XCIpIHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDJuICsgMSkge1xuICAgICAgICAgICAgICAgIC50ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmltYWdlIHtcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDE7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI8MTAwMHB4XCIpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuXG4gICAgICAgIC5ibG9jay10aXRsZSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIjxwaG9uZS1sXCIpIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDUuM3JlbTtcbiAgICB9XG59XG4iLCJAaW1wb3J0IFwiLi4vX19jb3JlL2NvcmUtbWl4aW5zXCI7XG5cbi5wcm9kdWN0LWluZm8ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWdyZXkpO1xuICAgIC0tbGktc2l6ZTogY2xhbXAoMS40cmVtLCAydncsIDEuNnJlbSk7XG4gICAgcGFkZGluZy10b3A6IDIuNHJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMS42cmVtO1xuXG4gICAgbGkge1xuICAgICAgICBmb250LXNpemU6IHZhcigtLWxpLXNpemUpO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuXG4gICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLndyYXBwZXIge1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgIGdhcDogMy4ycmVtO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgfVxuXG4gICAgLmNvbnRlbnQge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBnYXA6IDMuMnJlbTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjw4MjBweFwiKSB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fZ2FsbGVyeSB7XG4gICAgICAgIGZsZXg6IDEgMSAzMHJlbTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDUwJSAtIDEuNnJlbSk7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZ2FwOiAzLjJyZW07XG5cbiAgICAgICAgLmJhZGdlLWxpc3Qge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgei1pbmRleDogNDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB0b3A6IDIuNHJlbTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgZ2FwOiAuNHJlbTtcblxuICAgICAgICAgICAgLmJhZGdlIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwLjhyZW07XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuXG4gICAgICAgICAgICAgICAgJi4tbmV3IHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZ3JlZW4pO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuLXNhbGUge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1yZWQpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuLXRvcCB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubWFpbi1waG90byB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiAxLzE7XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnZpZGVvLXdyYXBwZXIge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAudmlkZW8td3JhcHBlciB2aWRlbyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5tYWluLXN3aXBlciB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogMS8xO1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmdhbGxlcnktYnVsbGV0cyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMi40cmVtO1xuICAgICAgICAgICAgICAgIGdhcDogMC40cmVtO1xuXG4gICAgICAgICAgICAgICAgLmJ1bGxldCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAwLjhyZW07XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMC44cmVtO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1ncmV5KTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMnJlbTtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogd2lkdGggMC4ycyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuYnVsbGV0LWFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyLjRyZW07XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWhha2kpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPHBob25lLWxcIikge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50aHVtYm5haWxzIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBnYXA6IDAuOHJlbTtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgICAgIC50aHVtYm5haWxzLWJ1dHRvbi1wcmV2LFxuICAgICAgICAgICAgLnRodW1ibmFpbHMtYnV0dG9uLW5leHQge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICB3aWR0aDogNS4ycmVtO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogdW5zZXQ7XG5cbiAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMi40cmVtO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogYmxhY2s7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5zd2lwZXItYnV0dG9uLWRpc2FibGVkIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2U3ZTdlNztcbiAgICAgICAgICAgICAgICAgICAgZmlsdGVyOiBzYXR1cmF0ZSg5MCUpO1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8cGhvbmUtbFwiKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50aHVtYm5haWxzLXN3aXBlciB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgLnN3aXBlci1zbGlkZSB7XG4gICAgICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiAxLzE7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMC40cmVtO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgIC50aHVtYm5haWwtcGxheS1idXR0b24ge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKXRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzLjJyZW07XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMy4ycmVtO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwLjRyZW07XG5cbiAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8ODIwcHhcIikge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19kYXRhIHtcbiAgICAgICAgcGFkZGluZzogNC44cmVtIGNsYW1wKDEuNnJlbSwgM3Z3LCA0LjhyZW0pO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICBmbGV4OiAxIDEgMzByZW07XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBnYXA6IDMuMnJlbTtcblxuICAgICAgICB1bCB7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLndpc2hsaXN0LWJ1dHRvbiB7XG5cblxuXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgZ2FwOiAuNHJlbTtcblxuICAgICAgICAgICAgJi5pbi13aXNobGlzdCB7XG4gICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tY29sb3ItYmxhY2spO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMi40cmVtO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMi40cmVtO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogIzBhMGEwYWI2O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWxpLXNpemUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyLjRyZW07XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyLjRyZW07XG4gICAgICAgICAgICAgICAgc3Ryb2tlOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogZmlsbCAwLjJzIGVhc2UtaW47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgIGZpbGw6ICMwYTBhMGEyMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuLWFkZGVkIHtcbiAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLi1scy1vbmx5IHtcblxuXG4gICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyLjRyZW07XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjxwaG9uZS1sXCIpIHtcbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuXG5cblxuICAgICAgICAuaW5mbyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgLnRpdGxlciB7XG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWxpLXNpemUpO1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGdhcDogMC44cmVtO1xuXG4gICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyLjRyZW07XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzdHJvbmcge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuZGF0YS1oZWFkZXIge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBnYXA6IDAuOHJlbTtcblxuICAgICAgICAgICAgLnByb2R1Y3QtbmFtZSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBjbGFtcCgyLjRyZW0sIDN2dywgNHJlbSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5kYXRhLXJhdGluZyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgIGZsZXg6IDEgMSAyMHJlbTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMC40cmVtIDIuMnJlbTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1saS1zaXplKTtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgZ2FwOiAwLjhyZW07XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICM4MDgwODAyMDtcbiAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgZ2FwOiAwLjhyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWxpLXNpemUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5yYXRpbmcge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgZ2FwOiAwLjZyZW07XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnN0YXJzIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogOC41cmVtO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEuNnJlbTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjE3XCIgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDE3IDE2XCIgZmlsbD1cIm5vbmVcIj48cGF0aCBkPVwiTTYuMjI1NDggNS40OTA2Mkw3Ljk1NzQ4IDIuMDAyNjJDOC4wMDc4OSAxLjkwMTY3IDguMDg1NDMgMS44MTY3NyA4LjE4MTQgMS43NTc0M0M4LjI3NzM3IDEuNjk4MDkgOC4zODc5OCAxLjY2NjY2IDguNTAwODEgMS42NjY2NkM4LjYxMzY0IDEuNjY2NjYgOC43MjQyNSAxLjY5ODA5IDguODIwMjIgMS43NTc0M0M4LjkxNjE5IDEuODE2NzcgOC45OTM3MyAxLjkwMTY3IDkuMDQ0MTQgMi4wMDI2MkwxMC43NzYxIDUuNDkwNjJMMTQuNjQ4MSA2LjA1MzI4QzE0Ljc1OTggNi4wNjg3NyAxNC44NjQ5IDYuMTE1MzUgMTQuOTUxNCA2LjE4NzY5QzE1LjAzNzkgNi4yNjAwNCAxNS4xMDIzIDYuMzU1MjQgMTUuMTM3MiA2LjQ2MjQ0QzE1LjE3MjIgNi41Njk2MyAxNS4xNzYzIDYuNjg0NDkgMTUuMTQ5MSA2Ljc5MzkyQzE1LjEyMiA2LjkwMzM1IDE1LjA2NDUgNy4wMDI5MiAxNC45ODM1IDcuMDgxMjlMMTIuMTgyMSA5Ljc5NDYyTDEyLjg0MzUgMTMuNjI4QzEyLjkyODEgMTQuMTIgMTIuNDA4MSAxNC40OTQ2IDExLjk2MzUgMTQuMjYyNkw4LjUwMDgxIDEyLjQ1Mkw1LjAzNzQ4IDE0LjI2MjZDNC41OTM0OCAxNC40OTUzIDQuMDczNDggMTQuMTIgNC4xNTgxNCAxMy42MjczTDQuODE5NDggOS43OTM5NUwyLjAxODE0IDcuMDgwNjJDMS45Mzc0NyA3LjAwMjIgMS44ODA0MSA2LjkwMjcyIDEuODUzNDUgNi43OTM0OUMxLjgyNjUgNi42ODQyNiAxLjgzMDcyIDYuNTY5NjYgMS44NjU2NiA2LjQ2MjcxQzEuOTAwNTkgNi4zNTU3NyAxLjk2NDgyIDYuMjYwNzcgMi4wNTEwNiA2LjE4ODUxQzIuMTM3MjkgNi4xMTYyNSAyLjI0MjA3IDYuMDY5NjMgMi4zNTM0OCA2LjA1Mzk1TDYuMjI1NDggNS40OTA2MlpcIiBzdHJva2U9XCIlMjM4MDgwODBcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIi8+PC9zdmc+JykgcmVwZWF0LXg7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMS43cmVtIDEuNnJlbTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuc3RhcnNfX2ZpbGwge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjE3XCIgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDE3IDE2XCIgZmlsbD1cIiUyMzZCNkQ0NVwiPjxwYXRoIGQ9XCJNNi4yMjU0OCA1LjQ5MDYyTDcuOTU3NDggMi4wMDI2MkM4LjAwNzg5IDEuOTAxNjcgOC4wODU0MyAxLjgxNjc3IDguMTgxNCAxLjc1NzQzQzguMjc3MzcgMS42OTgwOSA4LjM4Nzk4IDEuNjY2NjYgOC41MDA4MSAxLjY2NjY2QzguNjEzNjQgMS42NjY2NiA4LjcyNDI1IDEuNjk4MDkgOC44MjAyMiAxLjc1NzQzQzguOTE2MTkgMS44MTY3NyA4Ljk5MzczIDEuOTAxNjcgOS4wNDQxNCAyLjAwMjYyTDEwLjc3NjEgNS40OTA2MkwxNC42NDgxIDYuMDUzMjhDMTQuNzU5OCA2LjA2ODc3IDE0Ljg2NDkgNi4xMTUzNSAxNC45NTE0IDYuMTg3NjlDMTUuMDM3OSA2LjI2MDA0IDE1LjEwMjMgNi4zNTUyNCAxNS4xMzcyIDYuNDYyNDRDMTUuMTcyMiA2LjU2OTYzIDE1LjE3NjMgNi42ODQ0OSAxNS4xNDkxIDYuNzkzOTJDMTUuMTIyIDYuOTAzMzUgMTUuMDY0NSA3LjAwMjkyIDE0Ljk4MzUgNy4wODEyOUwxMi4xODIxIDkuNzk0NjJMMTIuODQzNSAxMy42MjhDMTIuOTI4MSAxNC4xMiAxMi40MDgxIDE0LjQ5NDYgMTEuOTYzNSAxNC4yNjI2TDguNTAwODEgMTIuNDUyTDUuMDM3NDggMTQuMjYyNkM0LjU5MzQ4IDE0LjQ5NTMgNC4wNzM0OCAxNC4xMiA0LjE1ODE0IDEzLjYyNzNMNC44MTk0OCA5Ljc5Mzk1TDIuMDE4MTQgNy4wODA2MkMxLjkzNzQ3IDcuMDAyMiAxLjg4MDQxIDYuOTAyNzIgMS44NTM0NSA2Ljc5MzQ5QzEuODI2NSA2LjY4NDI2IDEuODMwNzIgNi41Njk2NiAxLjg2NTY2IDYuNDYyNzFDMS45MDA1OSA2LjM1NTc3IDEuOTY0ODIgNi4yNjA3NyAyLjA1MTA2IDYuMTg4NTFDMi4xMzcyOSA2LjExNjI1IDIuMjQyMDcgNi4wNjk2MyAyLjM1MzQ4IDYuMDUzOTVMNi4yMjU0OCA1LjQ5MDYyWlwiLz48L3N2Zz4nKSByZXBlYXQteDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxLjdyZW0gMS42cmVtO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPHBob25lLWxcIikge1xuICAgICAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcblxuICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3JkZXI6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmRhdGEtY29sb3JzIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgZ2FwOiAwLjhyZW07XG5cbiAgICAgICAgICAgICYuaGFzLWVycm9yIHtcbiAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItcmVkKSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBnYXA6IDAuOHJlbTtcblxuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogY2xhbXAoNC44cmVtLCAzdncsIDhyZW0pO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogMS8xO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ncmV5KTtcblxuICAgICAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1oYWtpKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyOiBzYXR1cmF0ZSgyMCUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBmaWx0ZXIgMC4ycyBlYXNlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmRhdGEtc2l6ZXMge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBnYXA6IDAuOHJlbTtcblxuICAgICAgICAgICAgJi5oYXMtZXJyb3Ige1xuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1yZWQpICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDZyZW0sIDFmcikpO1xuICAgICAgICAgICAgICAgIGdhcDogMC44cmVtO1xuXG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxLjRyZW07XG4gICAgICAgICAgICAgICAgICAgIGZsZXg6IDEgMSA0LjFyZW07XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWdyZXkpO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWdyZXkpO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1oYWtpKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWhha2kpO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudGl0bGVyIHtcbiAgICAgICAgICAgICAgICAmLi1oYWtpIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWhha2kpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmFjdGlvbnMge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBnYXA6IDAuOHJlbTtcbiAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC53b28tYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBmbGV4OiAxIDEgMjVyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5oZWlnaHQtc2VsZWN0b3Ige1xuICAgICAgICAgICAgICAgIGZsZXg6IDEgMSAyNXJlbTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgZ2FwOiAxLjZyZW07XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1saS1zaXplKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmhlaWdodC1jb250cm9sIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgICAgICAgICAgICAgIGdhcDogMXJlbTtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMS4ycmVtIDAuOHJlbTtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ncmV5KTtcblxuICAgICAgICAgICAgICAgIC52YWx1ZSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAgICAgICAgICAgICAgICAgZ2FwOiAwLjRyZW07XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZTtcblxuICAgICAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIuNHJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZ3JleSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuZGF0YS1pbmRpdmlkdWFsIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgZ2FwOiAwLjhyZW07XG4gICAgICAgIH1cblxuICAgICAgICAuZGF0YS1hZGRpdGlvbmFsIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgZ2FwOiAxLjZyZW07XG5cbiAgICAgICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWxpLXNpemUpO1xuICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHNlbGVjdCB7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEuNHJlbSAxLjZyZW07XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ViZWJlYjtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ncmV5KTtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tbGktc2l6ZSk7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5kYXRhLWFjdGlvbnMge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBnYXA6IDAuOHJlbTtcblxuICAgICAgICAgICAgLmNhcnQtYWN0aW9ucyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICAgICAgZ2FwOiAxLjZyZW07XG5cbiAgICAgICAgICAgICAgICAucHJpY2Uge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBnYXA6IDEuNnJlbTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcblxuICAgICAgICAgICAgICAgICAgICAubmV3LXByaWNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2xhbXAoMi40cmVtLCAydncsIDMuMnJlbSk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICYuc2FsZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXJlZCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAub2xkLXByaWNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tbGktc2l6ZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5xdWFudGl0eS1zZWxlY3RvciB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBmbGV4OiAxIDEgMTAuNnJlbTtcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDE7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGdhcDogMS42cmVtO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWxpLXNpemUpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5xdWFudGl0eS1jb250cm9sIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuXG4gICAgICAgICAgICAgICAgICAgIGdhcDogMS42cmVtO1xuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEuMnJlbSAwLjhyZW07XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWdyZXkpO1xuXG4gICAgICAgICAgICAgICAgICAgIC52YWx1ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGdhcDogMC40cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ncmV5KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC4tYWRkLXRvLWNhcnQtZnVsbCB7XG4gICAgICAgICAgICAgICAgICAgIGZsZXg6IDEgMSAyMHJlbTtcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmRhdGEtdGFicyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj5waG9uZS1sXCIpIHtcbiAgICAgICAgICAgICAgICAuc3dpdGNoLXRhYnMge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5hY2NvcmRpb24tdGFicyB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjxwaG9uZS1sXCIpIHtcbiAgICAgICAgICAgICAgICAuc3dpdGNoLXRhYnMge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5hY2NvcmRpb24tdGFicyB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI8cGhvbmUtbFwiKSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcblxuICAgICAgICAud3JhcHBlciB7XG4gICAgICAgICAgICAuY29udGVudCB7XG4gICAgICAgICAgICAgICAgZ2FwOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ud29vY29tbWVyY2UgLnRodW1ibmFpbHMgaW1nLFxuLndvb2NvbW1lcmNlLXBhZ2UgLnRodW1ibmFpbHMgaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG59IiwiQGltcG9ydCBcIi4uL19fY29yZS9jb3JlLW1peGluc1wiO1xuXG4ucHJvZHVjdC1wcm9wZXJ0aWVzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ncmV5KTtcbiAgICAtLWxpLXNpemU6IGNsYW1wKDEuNHJlbSwgMnZ3LCAxLjZyZW0pO1xuICAgIHBhZGRpbmctdG9wOiAxLjZyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDEuNnJlbTtcblxuICAgIC53cmFwcGVyIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgICAgIGdhcDogMy4ycmVtO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPDgyMHB4XCIpIHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19zbGlkZXIge1xuICAgICAgICBmbGV4OiAxIDEgMzByZW07XG4gICAgICAgIG1heC13aWR0aDogY2FsYyg1MCUgLSAxLjZyZW0pO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPHBob25lLWxcIikge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxLjZyZW07XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxLjZyZW07XG4gICAgICAgIH1cblxuICAgICAgICAudXBzZWxscy1oZWFkZXIge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBnYXA6IDEuNnJlbTtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IGNsYW1wKDEuNnJlbSwgM3Z3LCAzLjJyZW0pO1xuXG4gICAgICAgICAgICAudXBzZWxscy1uYXYge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBnYXA6IDEuNnJlbTtcblxuICAgICAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0cmVtO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDRyZW07XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8ODUwcHhcIikge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPDgyMHB4XCIpIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fc3BlY3Mge1xuICAgICAgICBmbGV4OiAxIDEgMzByZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIHBhZGRpbmc6IDQuOHJlbSB2YXIoLS1wcm9kdWN0LWJsb2NrLXBhZGRpbmcpO1xuICAgIH1cblxuICAgICZfX2xpc3Qge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBvdmVyZmxvdzogc2Nyb2xsO1xuICAgICAgICBtYXgtaGVpZ2h0OiA0MHJlbTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNlZGVkZWQ7XG4gICAgfVxuXG4gICAgJl9fcm93IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGdhcDogMi40cmVtO1xuICAgICAgICBwYWRkaW5nOiAxLjZyZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWRlZGVkO1xuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAmOm50aC1jaGlsZCgybiArIDEpIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmYmZiZmI7XG4gICAgICAgIH1cblxuICAgICAgICBkdCB7XG4gICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1saS1zaXplKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGRkIHtcbiAgICAgICAgICAgIGZsZXg6IDM7XG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWxpLXNpemUpO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPHBob25lLWxcIikge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgfVxufVxuIiwiQGltcG9ydCBcIi4uL19fY29yZS9jb3JlLW1peGluc1wiO1xuXG4ucHJvZHVjdC1mb290ZXIge1xuICAgIHBhZGRpbmctdG9wOiAxLjZyZW07XG4gICAgLndyYXBwZXIge1xuICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBnYXA6IDMuMnJlbTtcbiAgICB9XG5cbiAgICAmX19yZXZpZXdzIHtcbiAgICAgICAgZmxleDogMSAxIDQ1cmVtO1xuICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjZyZW0pO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICBwYWRkaW5nOiA0LjhyZW0gdmFyKC0tcHJvZHVjdC1ibG9jay1wYWRkaW5nKTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGdhcDogMy4ycmVtO1xuXG4gICAgICAgIC5hY3Rpb24tcmV2aWV3IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGdhcDogMi40cmVtO1xuICAgICAgICAgICAgcGFkZGluZzogMS42cmVtO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItZ3JleSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmJmYmZiO1xuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPHBob25lLWxcIikge1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgICAgICAgICAgICBhLFxuICAgICAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5yZXZpZXdzLXN3aXBlciB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgLnJldmlldy1uYXYge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBnYXA6IDEuNnJlbTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAyLjRyZW07XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDIuNHJlbTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiA0O1xuXG4gICAgICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDRyZW07XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNHJlbTtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5yZXZpZXctaXRlbSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgICAgIGdhcDogMi40cmVtO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIuNHJlbTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItZ3JleSk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZiZmJmYjtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcblxuICAgICAgICAgICAgICAgICZfX2hlYWRlciB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgICAgICAgICAgICAgZ2FwOiAxLjZyZW07XG5cbiAgICAgICAgICAgICAgICAgICAgLnN0YXJzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA4NXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxNnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjE3XCIgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDE3IDE2XCIgZmlsbD1cIm5vbmVcIj48cGF0aCBkPVwiTTYuMjI1NDggNS40OTA2Mkw3Ljk1NzQ4IDIuMDAyNjJDOC4wMDc4OSAxLjkwMTY3IDguMDg1NDMgMS44MTY3NyA4LjE4MTQgMS43NTc0M0M4LjI3NzM3IDEuNjk4MDkgOC4zODc5OCAxLjY2NjY2IDguNTAwODEgMS42NjY2NkM4LjYxMzY0IDEuNjY2NjYgOC43MjQyNSAxLjY5ODA5IDguODIwMjIgMS43NTc0M0M4LjkxNjE5IDEuODE2NzcgOC45OTM3MyAxLjkwMTY3IDkuMDQ0MTQgMi4wMDI2MkwxMC43NzYxIDUuNDkwNjJMMTQuNjQ4MSA2LjA1MzI4QzE0Ljc1OTggNi4wNjg3NyAxNC44NjQ5IDYuMTE1MzUgMTQuOTUxNCA2LjE4NzY5QzE1LjAzNzkgNi4yNjAwNCAxNS4xMDIzIDYuMzU1MjQgMTUuMTM3MiA2LjQ2MjQ0QzE1LjE3MjIgNi41Njk2MyAxNS4xNzYzIDYuNjg0NDkgMTUuMTQ5MSA2Ljc5MzkyQzE1LjEyMiA2LjkwMzM1IDE1LjA2NDUgNy4wMDI5MiAxNC45ODM1IDcuMDgxMjlMMTIuMTgyMSA5Ljc5NDYyTDEyLjg0MzUgMTMuNjI4QzEyLjkyODEgMTQuMTIgMTIuNDA4MSAxNC40OTQ2IDExLjk2MzUgMTQuMjYyNkw4LjUwMDgxIDEyLjQ1Mkw1LjAzNzQ4IDE0LjI2MjZDNC41OTM0OCAxNC40OTUzIDQuMDczNDggMTQuMTIgNC4xNTgxNCAxMy42MjczTDQuODE5NDggOS43OTM5NUwyLjAxODE0IDcuMDgwNjJDMS45Mzc0NyA3LjAwMjIgMS44ODA0MSA2LjkwMjcyIDEuODUzNDUgNi43OTM0OUMxLjgyNjUgNi42ODQyNiAxLjgzMDcyIDYuNTY5NjYgMS44NjU2NiA2LjQ2MjcxQzEuOTAwNTkgNi4zNTU3NyAxLjk2NDgyIDYuMjYwNzcgMi4wNTEwNiA2LjE4ODUxQzIuMTM3MjkgNi4xMTYyNSAyLjI0MjA3IDYuMDY5NjMgMi4zNTM0OCA2LjA1Mzk1TDYuMjI1NDggNS40OTA2MlpcIiBzdHJva2U9XCIlMjM4MDgwODBcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIi8+PC9zdmc+JykgcmVwZWF0LXg7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDE3cHggMTZweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5zdGFyc19fZmlsbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTdcIiBoZWlnaHQ9XCIxNlwiIHZpZXdCb3g9XCIwIDAgMTcgMTZcIiBmaWxsPVwiJTIzNkI2RDQ1XCI+PHBhdGggZD1cIk02LjIyNTQ4IDUuNDkwNjJMNy45NTc0OCAyLjAwMjYyQzguMDA3ODkgMS45MDE2NyA4LjA4NTQzIDEuODE2NzcgOC4xODE0IDEuNzU3NDNDOC4yNzczNyAxLjY5ODA5IDguMzg3OTggMS42NjY2NiA4LjUwMDgxIDEuNjY2NjZDOC42MTM2NCAxLjY2NjY2IDguNzI0MjUgMS42OTgwOSA4LjgyMDIyIDEuNzU3NDNDOC45MTYxOSAxLjgxNjc3IDguOTkzNzMgMS45MDE2NyA5LjA0NDE0IDIuMDAyNjJMMTAuNzc2MSA1LjQ5MDYyTDE0LjY0ODEgNi4wNTMyOEMxNC43NTk4IDYuMDY4NzcgMTQuODY0OSA2LjExNTM1IDE0Ljk1MTQgNi4xODc2OUMxNS4wMzc5IDYuMjYwMDQgMTUuMTAyMyA2LjM1NTI0IDE1LjEzNzIgNi40NjI0NEMxNS4xNzIyIDYuNTY5NjMgMTUuMTc2MyA2LjY4NDQ5IDE1LjE0OTEgNi43OTM5MkMxNS4xMjIgNi45MDMzNSAxNS4wNjQ1IDcuMDAyOTIgMTQuOTgzNSA3LjA4MTI5TDEyLjE4MjEgOS43OTQ2MkwxMi44NDM1IDEzLjYyOEMxMi45MjgxIDE0LjEyIDEyLjQwODEgMTQuNDk0NiAxMS45NjM1IDE0LjI2MjZMOC41MDA4MSAxMi40NTJMNS4wMzc0OCAxNC4yNjI2QzQuNTkzNDggMTQuNDk1MyA0LjA3MzQ4IDE0LjEyIDQuMTU4MTQgMTMuNjI3M0w0LjgxOTQ4IDkuNzkzOTVMMi4wMTgxNCA3LjA4MDYyQzEuOTM3NDcgNy4wMDIyIDEuODgwNDEgNi45MDI3MiAxLjg1MzQ1IDYuNzkzNDlDMS44MjY1IDYuNjg0MjYgMS44MzA3MiA2LjU2OTY2IDEuODY1NjYgNi40NjI3MUMxLjkwMDU5IDYuMzU1NzcgMS45NjQ4MiA2LjI2MDc3IDIuMDUxMDYgNi4xODg1MUMyLjEzNzI5IDYuMTE2MjUgMi4yNDIwNyA2LjA2OTYzIDIuMzUzNDggNi4wNTM5NUw2LjIyNTQ4IDUuNDkwNjJaXCIvPjwvc3ZnPicpIHJlcGVhdC14O1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxN3B4IDE2cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmX19hdXRob3Ige1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICZfX3RleHQge1xuICAgICAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgICAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICZfX2dhbGxlcnkge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgZ2FwOiAwLjhyZW07XG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBzY3JvbGw7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJl9faW1hZ2Uge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogOHJlbTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA4cmVtO1xuXG4gICAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fc29jaWFsIHtcbiAgICAgICAgZmxleDogMSAxIDQ1cmVtO1xuXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGdhcDogMC44cmVtO1xuICAgICAgICBwYWRkaW5nOiA0LjhyZW0gdmFyKC0tcHJvZHVjdC1ibG9jay1wYWRkaW5nKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcblxuICAgICAgICAuc29jaWFsLXRpdGxlIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICBnYXA6IDEuNnJlbTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8cGhvbmUtbFwiKSB7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICAgICAgICAgICAgIGEsXG4gICAgICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNvY2lhbC1nYWxsZXJ5IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgICBnYXA6IDAuOHJlbTtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZmlsbCxcbiAgICAgICAgICAgICAgICAgICAgbWlubWF4KGNsYW1wKDExcmVtLCAxMXZ3LCAxN3JlbSksIDFmcikpO1xuXG4gICAgICAgICAgICAuaW1hZ2Uge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBhc3BlY3QtcmF0aW86IDEvMTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIjxwaG9uZS1sXCIpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICBwYWRkaW5nLXRvcDogNS4ycmVtO1xuICAgIH1cbn0iLCIuY29udGVudC1wcm9kdWN0X19pdGVtIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNHMgZWFzZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgLmltYWdlIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYXNwZWN0LXJhdGlvOiAxLyAxO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB0cmFuc2l0aW9uOiBmaWx0ZXIgMC4ycyBlYXNlO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmJhZGdlLWxpc3Qge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IDQ7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRvcDogMi40cmVtO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBnYXA6IC40cmVtO1xuXG4gICAgICAgIC5iYWRnZSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjhyZW07XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG5cbiAgICAgICAgICAgICYuLW5ldyB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZ3JlZW4pO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLi1zYWxlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1yZWQpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLi10b3Age1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC53aXNobGlzdC1idXR0b24ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgICByaWdodDogY2xhbXAoMS42cmVtLCAydncsIDIuNHJlbSk7XG4gICAgICAgIHRvcDogY2xhbXAoMS42cmVtLCAydncsIDIuNHJlbSk7XG4gICAgICAgIGhlaWdodDogNHJlbTtcbiAgICAgICAgd2lkdGg6IDRyZW07XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAmLmluLXdpc2hsaXN0IHtcbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tY29sb3ItYmxhY2spO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICBmaWxsOiAjMGEwYTBhYjY7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIHdpZHRoOiAyLjRyZW07XG4gICAgICAgICAgICBoZWlnaHQ6IDIuNHJlbTtcbiAgICAgICAgICAgIHN0cm9rZTogdmFyKC0tY29sb3ItYmxhY2spO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogZmlsbCAwLjJzIGVhc2UtaW47XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgZmlsbDogIzBhMGEwYTIwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi4tYWRkZWQge1xuICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucHJvZHVjdC1vdXQtb2Ytc3RvY2sge1xuXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogNjtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgIC51bnN0b2NrLW5vdGljZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci10cmFuc3BhcmVudCk7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgcGFkZGluZzogMS44cmVtIDIuNHJlbTtcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLmluZm8ge1xuICAgICAgICBwYWRkaW5nOiBjbGFtcCgxLjZyZW0sIDJ2dywgMi40cmVtKTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgZ2FwOiAwLjhyZW07XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjRzIGVhc2U7XG5cbiAgICAgICAgLnByb2R1Y3QtbmFtZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICAgICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgIH1cblxuICAgICAgICAuYWN0aW9ucyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgLnByaWNlIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgICAgIGNvbHVtbi1nYXA6IDEuNnJlbTtcbiAgICAgICAgICAgICAgICByb3ctZ2FwOiAuNHJlbTtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItaGFraSk7XG5cbiAgICAgICAgICAgICAgICAubmV3LXByaWNlIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjbGFtcCgxLjRyZW0sIDJ2dywgMi40cmVtKTtcblxuICAgICAgICAgICAgICAgICAgICAmLnNhbGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXJlZCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAub2xkLXByaWNlIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjbGFtcCgxLjJyZW0sIDJ2dywgMS42cmVtKTtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1oYWtpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0wLjRyZW0pO1xuXG4gICAgICAgIC5pbmZvIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWdyZXkpO1xuICAgICAgICB9XG5cbiAgICAgICAgLmltYWdlIHtcbiAgICAgICAgICAgIGZpbHRlcjogYnJpZ2h0bmVzcyg4MCUpO1xuICAgICAgICB9XG4gICAgfVxufSIsIkBpbXBvcnQgXCIuLi9fX2NvcmUvY29yZS1taXhpbnNcIjtcblxuLm15LWFjY291bnQge1xuICAgIHBhZGRpbmctdG9wOiAwLjhyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZ3JleSk7XG5cbiAgICAud3JhcHBlciB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXG4gICAgICAgIGdhcDogMy4ycmVtO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPDEwMzBweFwiKSB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNpZGViYXIge1xuICAgICAgICBmbGV4OiAzO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuXG4gICAgICAgIC5hY2NvdW50LW1lbnUge1xuICAgICAgICAgICAgJl9fbGlzdCB7XG4gICAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjwxMDMwcHhcIikge1xuICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9faXRlbSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogY2xhbXAoMC44cmVtLCAydncsIDEuNnJlbSk7XG4gICAgICAgICAgICAgICAgZ2FwOiAwLjhyZW07XG5cbiAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICBwYXRoIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZTogdmFyKC0tY29sb3ItaGFraSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWhha2kpO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcblxuICAgICAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGF0aCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlOiAjZmZmO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmFycm93IHtcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1zZWxmOiBmbGV4LWVuZDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjwxMDMwcHhcIikge1xuICAgICAgICAgICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICAgICAgLmFycm93IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfX2xpbmsge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBjbGFtcCgxcmVtLCAydncsIDEuNnJlbSk7XG5cbiAgICAgICAgICAgICAgICAuaXRlbS1uYW1lIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgZ2FwOiAwLjhyZW07XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8MTAzMHB4XCIpIHtcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICAgICAgLml0ZW0tbmFtZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjbGFtcCgxcmVtLCAydncsIDEuNHJlbSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjwxMDMwcHhcIikge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBmbGV4OiB1bnNldDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5hY2NvdW50LWNvbnRlbnQge1xuICAgICAgICBmbGV4OiA5O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICBwYWRkaW5nOiBjbGFtcCgyLjRyZW0sIDJ2dywgNC44cmVtKSBjbGFtcCgxLjZyZW0sIDJ2dywgNC44cmVtKTtcblxuICAgICAgICAuYWNjb3VudC1ncmVldGluZyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgfVxuXG4gICAgICAgIC53aXNobGlzdC1wcm9kdWN0c19fZ3JpZCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoXG4gICAgICAgICAgICAgICAgYXV0by1maWxsLFxuICAgICAgICAgICAgICAgIG1pbm1heChjbGFtcCgxOXJlbSwgMjV2dywgMzByZW0pLCAxZnIpXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgZ2FwOiBjbGFtcCgwLjhyZW0sIDJ2dywgMy4ycmVtKTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjwxMDMwcHhcIikge1xuICAgICAgICAgICAgZmxleDogdW5zZXQ7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPHBob25lLWxcIikge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgfVxufVxuXG4uYWNjb3VudC1jb250cm9sIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ncmV5KTtcbiAgICBwYWRkaW5nOiBjbGFtcCgyLjRyZW0sIDR2dywgNC44cmVtKSBjbGFtcCgxLjZyZW0sIDN2dywgMy4ycmVtKTtcblxuICAgICZfX2NvbHVtbnMge1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ2FwOiBjbGFtcCgxLjZyZW0sIDN2dywgMy4ycmVtKTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBhbGlnbi1pdGVtczogc3RhcnQ7XG4gICAgfVxuXG4gICAgJl9fZWRpdGluZyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGdhcDogMy4ycmVtO1xuICAgIH1cblxuICAgICZfX2NhcmQge1xuICAgICAgICBmbGV4OiAxIDEgMzJyZW07XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgIHBhZGRpbmc6IGNsYW1wKDJyZW0sIDIuNXZ3LCAzLjJyZW0pO1xuICAgICAgICBib3gtc2hhZG93OiAwIDEycHggMjhweCByZ2JhKDAsIDAsIDAsIDAuMDQpO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBnYXA6IDEuNnJlbTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgIH1cblxuICAgICZfX2NhcmQtZWRpdGluZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGdhcDogMS42cmVtO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgfVxuXG4gICAgJl9fdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICB9XG5cbiAgICAmX19zdWJ0aXRsZSB7XG4gICAgICAgIG1hcmdpbjogLTAuOHJlbSAwIDAuOHJlbTtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWdyZXktZGFyayk7XG4gICAgfVxuXG4gICAgLndvb2NvbW1lcmNlLWZvcm0ge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBnYXA6IDEuMnJlbTtcbiAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLmlucHV0LXdyYXBwZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBnYXA6IDAuNHJlbTtcblxuICAgICAgICAudGhpbi1pbnB1dCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5lcnJvci10aXAge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWFsZXJ0KTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICAgICAgbWluLWhlaWdodDogMS40cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmFjY291bnQtY29udHJvbF9faGludCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZ3JleS1kYXJrKTtcblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1oYWtpKTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZm9ybS1yb3cge1xuICAgICAgICBtYXJnaW4tdG9wOiAwLjRyZW07XG4gICAgfVxuXG4gICAgLmNoZWNrYm94IHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGdhcDogMC42cmVtO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxufVxuXG4uYWNjb3VudC1jb250ZW50LXdyYXBwZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IDMuMnJlbTtcbn1cblxuLmVkaXQtYWNjb3VudCB7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICAuYWNjb3VudC1jb250cm9sX19jb2x1bW5zIHtcbiAgICAgICAgZ2FwOiBjbGFtcCgxLjZyZW0sIDJ2dywgMi40cmVtKTtcbiAgICB9XG5cbiAgICAuYWNjb3VudC1jb250cm9sX19jYXJkLWVkaXRpbmcge1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGdhcDogMS42cmVtO1xuICAgIH1cblxuICAgIC5mb3JtLWdyaWQge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBnYXA6IDEuMnJlbTtcblxuICAgICAgICAmLi10d28ge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgyNHJlbSwgMWZyKSk7XG4gICAgICAgIH1cblxuICAgICAgICAmLi1vbmUge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY3RhLWJ1dHRvbiB7XG4gICAgICAgIHdpZHRoOiBmaXQtY29udGVudDtcbiAgICB9XG59XG5cbi5vcmRlci1kZXRhaWxzLWN1c3RvbSB7XG4gICAgbWFyZ2luLXRvcDogMS42cmVtO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IDIuNHJlbTtcblxuICAgIC5jYXJkIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYmVpZ2UpO1xuICAgIH1cblxuICAgICZfX2hlYWQge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDJmciAxZnIgMWZyIDFmcjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgIHBhZGRpbmc6IDEuOHJlbSAxLjZyZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNhZWFkNmUyYTtcbiAgICB9XG5cbiAgICAmX19ib2R5IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG5cbiAgICAmX19yb3cge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDJmciAxZnIgMWZyIDFmcjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZ2FwOiAxLjJyZW07XG4gICAgICAgIHBhZGRpbmc6IDEuMnJlbTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJlaWdlKTtcblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLml0ZW0tcHJvZHVjdCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGdhcDogMS4ycmVtO1xuXG4gICAgICAgIC50aHVtYiBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDcuMnJlbTtcbiAgICAgICAgICAgIGhlaWdodDogNy4ycmVtO1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAuaW5mbyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGdhcDogMC42cmVtO1xuXG4gICAgICAgICAgICAudGl0bGUge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnJldmlldyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBnYXA6IDAuNnJlbTtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItaGFraSk7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcblxuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5pdGVtLXNpemUsXG4gICAgLml0ZW0tcXR5LFxuICAgIC5pdGVtLXByaWNlIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgfVxuXG4gICAgLnByaWNlLW9sZCB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xuICAgICAgICBjb2xvcjogIzY2NjtcbiAgICB9XG5cbiAgICAucHJpY2UtbmV3IHtcbiAgICAgICAgY29sb3I6ICNjMTAwMDA7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgfVxuXG4gICAgJl9fbWV0YSB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMjZyZW0sIDFmcikpO1xuICAgICAgICBnYXA6IDEuMnJlbTtcbiAgICB9XG5cbiAgICAubWV0YS1jYXJkIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgYm9yZGVyOiB2YXIoLS1jb2xvci1iZWlnZSkgMXB4IHNvbGlkO1xuXG4gICAgICAgICZfX2hlYWRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWVhZDZlMmE7XG4gICAgICAgICAgICBwYWRkaW5nOiAxLjhyZW0gMS42cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fY29udGVudCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxLjhyZW0gMS42cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgaDQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAwLjZyZW07XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcblxuICAgICAgICAgICAgc3Ryb25nIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAxMnJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50b3RhbC1saW5lIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEuMnJlbTtcblxuICAgICAgICAgICAgLnRvdGFsLWFtb3VudCB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWhha2kpO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIjx0YWJsZXRcIikge1xuICAgICAgICAmX19oZWFkLFxuICAgICAgICAmX19yb3cge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgICAgIH1cblxuICAgICAgICAuaXRlbS1wcm9kdWN0IHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubXktb3JkZXJzIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuXG4gICAgJl9faGVhZGVyIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgxMnJlbSwgMWZyKSk7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWdyZXkpO1xuICAgICAgICBwYWRkaW5nOiAxLjJyZW0gMS42cmVtO1xuXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2JvZHkge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgIH1cblxuICAgICZfX3JvdyB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMTJyZW0sIDFmcikpO1xuICAgICAgICBwYWRkaW5nOiAxLjZyZW07XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWdyZXkpO1xuXG4gICAgICAgICYtLWNvbXBsZXRlZCB7XG4gICAgICAgICAgICAubXktb3JkZXJzX19jZWxsLS1vcmRlci1zdGF0dXMge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWdyZXktZGFyayk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLS1wcm9jZXNzaW5nIHtcbiAgICAgICAgICAgIC5teS1vcmRlcnNfX2NlbGwtLW9yZGVyLXN0YXR1cyB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZ3JlZW4pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi0tY2FuY2VsbGVkIHtcbiAgICAgICAgICAgIC5teS1vcmRlcnNfX2NlbGwtLW9yZGVyLXN0YXR1cyB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItcmVkKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2NlbGwge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBnYXA6IDAuNHJlbTtcblxuICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBhdHRyKGRhdGEtdGl0bGUpO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgY29sb3I6ICM3Nzc7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19hY3Rpb25zIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZ2FwOiAwLjhyZW07XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICB9XG5cbiAgICAmX19hY3Rpb24ge1xuICAgICAgICBwYWRkaW5nOiAwLjZyZW0gMS4ycmVtO1xuICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC40cmVtO1xuICAgIH1cbn1cblxuLm9yZGVyLWRldGFpbHMge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ2FwOiAycmVtO1xuXG4gICAgJl9faGVhZGVyIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAyZnIgMWZyO1xuICAgICAgICBwYWRkaW5nOiAxLjZyZW07XG4gICAgICAgIGJhY2tncm91bmQ6ICNmNmY2ZjA7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNnJlbTtcbiAgICB9XG5cbiAgICAmX19ib2R5IHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ2FwOiAxLjJyZW07XG4gICAgfVxuXG4gICAgJl9fcm93IHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAyZnIgMWZyO1xuICAgICAgICBwYWRkaW5nOiAxLjZyZW0gMS4ycmVtO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U1ZTVlNTtcblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3Byb2R1Y3Qge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgZ2FwOiAxLjZyZW07XG4gICAgfVxuXG4gICAgJl9fdGh1bWIgaW1nIHtcbiAgICAgICAgd2lkdGg6IDkwcHg7XG4gICAgICAgIGhlaWdodDogOTBweDtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICB9XG5cbiAgICAmX190aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjRyZW07XG4gICAgfVxuXG4gICAgJl9fcXR5IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMC40cmVtO1xuICAgICAgICBjb2xvcjogIzY2NjtcbiAgICB9XG5cbiAgICAmX19wcmljZS1vbGQge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbiAgICAgICAgY29sb3I6ICNhYWE7XG4gICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAmX19wcmljZS1uZXcge1xuICAgICAgICBjb2xvcjogI2M0MDAwMDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgICZfX3ByaWNlIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgfVxuXG4gICAgLyogQWN0aW9ucyAqL1xuICAgICZfX2FjdGlvbnMge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBnYXA6IDFyZW07XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgfVxuXG4gICAgLyogVG90YWxzICovXG4gICAgJl9fdG90YWxzIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlM2UzZTM7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxLjRyZW07XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdhcDogMC44cmVtO1xuICAgIH1cblxuICAgICZfX3RvdGFsLXJvdyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICB9XG5cbiAgICAmX190b3RhbC1sYWJlbCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgfVxuXG4gICAgLyogTW9iaWxlICovXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICZfX3JvdyxcbiAgICAgICAgJl9faGVhZGVyIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkBpbXBvcnQgXCIuLi9fX2NvcmUvY29yZS1taXhpbnNcIjtcblxuLmNhcnQtZnVsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZ3JleSk7XG4gICAgcGFkZGluZy10b3A6IGNhbGModmFyKC0taGVhZGVyLWhlaWdodCkgKyBjbGFtcCgxLjZyZW0sIDN2dywgMi40cmVtKSk7XG5cbiAgICAud3JhcHBlciB7XG4gICAgICAgIC53b29jb21tZXJjZSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgICAgIGdhcDogY2xhbXAoMS42cmVtLCAzdncsIDMuMnJlbSk7XG5cbiAgICAgICAgICAgIC53b29jb21tZXJjZS1jYXJ0LWZvcm0ge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDQuOHJlbSBjbGFtcCgxLjZyZW0sIDN2dywgNC44cmVtKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgIGZsZXg6IDc7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPDEwMjRweFwiKSB7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICAgICAgICAgICAgIC53b29jb21tZXJjZS1jYXJ0LWZvcm0ge1xuICAgICAgICAgICAgICAgICAgICBmbGV4OiB1bnNldDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19wcm9kdWN0LWxpc3Qge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBnYXA6IGNsYW1wKDEuNnJlbSwgM3Z3LCAzLjJyZW0pO1xuICAgIH1cblxuICAgIC5jYXJ0LXRvdGFscyB7XG4gICAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgICAgIHRvcDogNHJlbTtcbiAgICAgICAgcGFkZGluZzogNC44cmVtIGNsYW1wKDEuNnJlbSwgM3Z3LCA0LjhyZW0pO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICBmbGV4OiA1O1xuXG4gICAgICAgIC5zZXBhcmF0b3ItaCB7XG4gICAgICAgICAgICBtYXJnaW46IGNsYW1wKDEuNnJlbSwgM3Z3LCAyLjRyZW0pIDA7XG4gICAgICAgIH1cblxuICAgICAgICAuY291cG9uIHtcbiAgICAgICAgICAgIC5jb3Vwb24tcm93IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJl9fY29udGVudCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGdhcDogMy4ycmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fbGlzdCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGdhcDogMi40cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNhcnQtcm93IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgIGdhcDogMi40cmVtO1xuXG4gICAgICAgICAgICAuY2FydC1sYWJlbCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNhcnQtdmFsdWUge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNjAwO1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX19jaGVja291dCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGdhcDogMy4ycmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8MTAyNHB4XCIpIHtcbiAgICAgICAgICAgIGZsZXg6IHVuc2V0O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZW1wdHktY2FydCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICZfX2NvbnRlbnQge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMy4ycmVtO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIHBhZGRpbmc6IGNsYW1wKDEwLjRyZW0sIDN2dywgMTRyZW0pIGNsYW1wKDEuNnJlbSwgM3Z3LCAxNHJlbSk7XG5cbiAgICAgICAgICAgIC5pcy13eXNpd3lnIHtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI8cGhvbmUtbFwiKSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICB9XG59XG4iLCJAaW1wb3J0IFwiLi4vX19jb3JlL2NvcmUtbWl4aW5zXCI7XG5cbnNlY3Rpb24uY2hlY2tvdXQge1xuICAgIHBhZGRpbmctdG9wOiBjYWxjKHZhcigtLWhlYWRlci1oZWlnaHQpICsgY2xhbXAoMS42cmVtLCAzdncsIDIuNHJlbSkpO1xufVxuXG4uY2hlY2tvdXQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWdyZXkpO1xuXG4gICAgLndvb2NvbW1lcmNlLU5vdGljZUdyb3VwIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAud3JhcHBlciB7XG4gICAgICAgIC53b29jb21tZXJjZSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC53b29jb21tZXJjZS1jaGVja291dCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICBnYXA6IDMuMnJlbTtcblxuICAgICAgICAgICAgLmNoZWNrb3V0LWZpZWxkcyB7XG4gICAgICAgICAgICAgICAgZmxleDogNztcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDQuOHJlbSBjbGFtcCgxLjZyZW0sIDN2dywgNC44cmVtKTtcblxuICAgICAgICAgICAgICAgIC53b29jb21tZXJjZS1iaWxsaW5nLWZpZWxkc19fZmllbGQtd3JhcHBlciB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAgICAgICAgIGdhcDogMy4ycmVtO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC53b29jb21tZXJjZS1zaGlwcGluZy1tZXRob2RzIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICAgICAgZ2FwOiAwLjhyZW07XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLml0aSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5jaGVja291dC1zZWN0aW9uIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICAgICAgZ2FwOiAyLjRyZW07XG5cbiAgICAgICAgICAgICAgICAgICAgLmZpZWxkcy1yb3cge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF1dG8tZml0LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1pbm1heCgzMHJlbSwgMWZyKVxuICAgICAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGdhcDogMi40cmVtO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAuZm9ybS1yb3cge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAud29vY29tbWVyY2UtY2hlY2tvdXQtcmV2aWV3LW9yZGVyIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgICAgICAgICAgIHRvcDogNnJlbTtcbiAgICAgICAgICAgICAgICBmbGV4OiA1O1xuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogNzByZW07XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA0LjhyZW0gY2xhbXAoMS42cmVtLCAzdncsIDQuOHJlbSk7XG5cbiAgICAgICAgICAgICAgICAuY291cG9uIHtcbiAgICAgICAgICAgICAgICAgICAgLmNvdXBvbi1yb3cge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjwxMTgwcHhcIikge1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgICAgICAgICAgICAuY2hlY2tvdXQtZmllbGRzIHtcbiAgICAgICAgICAgICAgICAgICAgZmxleDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC53b29jb21tZXJjZS1jaGVja291dC1yZXZpZXctb3JkZXIge1xuICAgICAgICAgICAgICAgICAgICBmbGV4OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm9yZGVyLWNvbXBsZXRlZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIHBhZGRpbmc6IDEwLjRyZW0gY2xhbXAoMS42cmVtLCAzdncsIDEwLjRyZW0pO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICAgICAuaXMtd3lzaXd5ZyB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDgwcmVtO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgLmFjY2VudC1ibG9jayB7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiBjbGFtcCgzLjJyZW0sIDR2dywgNi40cmVtKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPHBob25lLWxcIikge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgfVxufVxuXG4uY2hlY2tvdXQtcmV2aWV3IHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdhcDogMnJlbTtcblxuICAgICZfX2hlYWRlciB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMmZyIDFmcjtcbiAgICAgICAgYmFja2dyb3VuZDogI2FlYWQ2ZTJhO1xuICAgICAgICBwYWRkaW5nOiAxLjJyZW0gMS42cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuXG4gICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgIH1cblxuICAgICZfX2l0ZW1zIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ2FwOiAxLjJyZW07XG4gICAgfVxuXG4gICAgJl9fcm93IHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAyZnIgMWZyO1xuICAgICAgICBwYWRkaW5nOiAxLjZyZW0gMXJlbTtcblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3Byb2R1Y3Qge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBnYXA6IDAuNHJlbTtcbiAgICB9XG5cbiAgICAmX190aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgIH1cblxuICAgICZfX3F0eSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICBjb2xvcjogIzY2NjtcbiAgICB9XG5cbiAgICAmX19tZXRhIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgICAgIGNvbG9yOiAjNDQ0O1xuICAgIH1cblxuICAgICZfX3N1YnRvdGFsLFxuICAgICZfX2NvbC0tc3VidG90YWwge1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG5cbiAgICAvKiBUb3RhbHMgKi9cbiAgICAmX190b3RhbHMge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBnYXA6IDAuOHJlbTtcbiAgICAgICAgcGFkZGluZy10b3A6IDAuNHJlbTtcbiAgICB9XG5cbiAgICAmX190b3RhbC1yb3cge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICBwYWRkaW5nOiAxLjZyZW0gMS42cmVtO1xuICAgIH1cblx0Jl9fdG90YWwtdmFsdWUge1xuXHRcdFxuXHRkaXNwbGF5OmZsZXg7XG5cdGFsaWduLWl0ZW1zOmNlbnRlcjtcblx0XHRhIHtcblx0XHRcdGFzcGVjdC1yYXRpbzoxLzE7XG5cdFx0XHR3aWR0aDoyLjRyZW07XG5cdFx0XHRtYXJnaW4tbGVmdDouOHJlbTtcblx0XHR9XG5cdH1cbiAgICAmX190b3RhbC1sYWJlbCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgfVxuXG4gICAgJl9fdG90YWwtcm93LS1ncmFuZCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBtYXJnaW4tdG9wOiAwLjhyZW07XG4gICAgfVxuXHQuY2FydC10b3RhbHNfX2xpc3Qge1xuXHRcdG1hcmdpbi1ib3R0b206MS42cmVtO1xuXHR9XG5cbiAgICAvKiBNb2JpbGUgKi9cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgJl9faGVhZGVyLFxuICAgICAgICAmX19yb3cge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19 */
