.header {
  position: sticky;
  top: 0;
  left: 0;
  z-index: 5;
  padding: 1.875rem 0;
  width: 100%;
  -webkit-transition: background-color var(--animation-medium), -webkit-box-shadow var(--animation-default);
  transition: background-color var(--animation-medium), -webkit-box-shadow var(--animation-default);
  transition: background-color var(--animation-medium), box-shadow var(--animation-default);
  transition: background-color var(--animation-medium), box-shadow var(--animation-default), -webkit-box-shadow var(--animation-default);
}
@media (min-width: 2567px) {
  .header {
    padding: 1.1691348402vw 0;
  }
}
@media (max-width: 1500px) {
  .header {
    padding: 1.25rem 0;
  }
}
@media (max-width: 1250px) {
  .header {
    padding: 0.9375rem 0;
  }
}
@media (max-width: 630px) {
  .header {
    padding: 0.75rem 0;
  }
}
.header .header-social__item_favorites {
  position: relative;
  /*@include media(350px) {
    display: none;
  }*/
}
.header .header-social__item_favorites .header-social__count {
  position: absolute;
  top: -0.4375rem;
  right: 0;
  z-index: 2;
  width: 1.125rem;
  height: 1.125rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font: var(--font-body-XXS-m);
  background-color: var(--accent-secondary-default);
  color: var(--text-light-primary);
  border-radius: var(--radius-infinity);
  -webkit-transform: scale(0);
      -ms-transform: scale(0);
          transform: scale(0);
  pointer-events: none;
  -webkit-transition: color var(--animation-default), background-color var(--animation-default), -webkit-transform var(--animation-default);
  transition: color var(--animation-default), background-color var(--animation-default), -webkit-transform var(--animation-default);
  transition: color var(--animation-default), background-color var(--animation-default), transform var(--animation-default);
  transition: color var(--animation-default), background-color var(--animation-default), transform var(--animation-default), -webkit-transform var(--animation-default);
}
@media (min-width: 2567px) {
  .header .header-social__item_favorites .header-social__count {
    top: -0.2727981294vw;
    right: 0;
    width: 0.9353078722vw;
    height: 0.9353078722vw;
  }
}
@media (max-width: 2000px) {
  .header .header-social__item_favorites .header-social__count {
    top: -0.4375rem;
    right: 0;
    width: 1.5rem;
    height: 1.5rem;
  }
}
@media (max-width: 1500px) {
  .header .header-social__item_favorites .header-social__count {
    width: 1.125rem;
    height: 1.125rem;
  }
}
.header .header-social__item_favorites .header-social__count_active {
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
}
@media (max-width: 530px) {
  .header .header-social__item_text, .header .header-social__item_whatsapp, .header .header-social__item_tg {
    display: none;
  }
}
.header.header_background {
  background-color: var(--bg-white);
}
.header.header_background .header-social__item_text .button, .header.header_background .header-social__item_phone .button, .header.header_background .header-social__item_favorites .button {
  --button-bg-color: var(--stroke-light);
}
.header.header_shadow {
  -webkit-box-shadow: 0 10px 20px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 10px 20px 0 rgba(0, 0, 0, 0.1);
}
@media (min-width: 2567px) {
  .header.header_shadow {
    -webkit-box-shadow: 0 0.3897116134vw 0.7794232268vw 0 rgba(0, 0, 0, 0.1);
            box-shadow: 0 0.3897116134vw 0.7794232268vw 0 rgba(0, 0, 0, 0.1);
  }
}
.header__container > div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 1.25rem;
}
@media (min-width: 2567px) {
  .header__container > div {
    gap: 0.7794232268vw;
  }
}
.header__column {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  gap: 2.5rem;
}
@media (min-width: 2567px) {
  .header__column {
    gap: 1.5588464536vw;
  }
}
@media (max-width: 2000px) {
  .header__column {
    gap: 1.875rem;
  }
}
@media (max-width: 1500px) {
  .header__column {
    gap: 1.25rem;
  }
}
@media (max-width: 630px) {
  .header__column {
    gap: 0.9375rem;
  }
}
@media (max-width: 1250px) {
  .header__call {
    display: none;
  }
}
.header__call.button {
  --button-icon-color: var(--text-dark-primary);
  --button-icon-color-hover: var(--accent-primary-default);
  --button-text-color: var(--text-dark-primary);
  --button-text-color-hover: var(--accent-primary-default);
}
.header__burger {
  display: none;
}
@media (max-width: 1250px) {
  .header__burger {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
.header__burger.button {
  --button-bg-color: transparent;
  --button-bg-color-hover: var(--accent-primary-default);
  --button-icon-color: var(--accent-primary-default);
  --button-icon-color-hover: var(--accent-primary-default);
}
@media (max-width: 1250px) {
  .header__nav.nav {
    position: absolute;
    top: 100%;
    left: 0;
    padding: 2.5rem var(--container-offset);
    width: 100%;
    height: calc(100vh - var(--global-header-height));
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    gap: 3.125rem;
    background-color: var(--bg-white);
    overflow: auto;
    visibility: hidden;
    opacity: 0;
    -webkit-transition: opacity var(--animation-medium), visibility var(--animation-medium);
    transition: opacity var(--animation-medium), visibility var(--animation-medium);
  }
}
@media (max-width: 630px) {
  .header__nav.nav {
    padding: 0.9375rem var(--container-offset) 3.1875rem;
    gap: 0.9375rem;
  }
}
.header__nav.nav.burger-menu {
  visibility: visible;
  opacity: 1;
}
@media (max-width: 1250px) {
  .header__nav.nav .nav__list {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    gap: 1.25rem;
  }
}
@media (max-width: 630px) {
  .header__nav.nav .nav__list {
    gap: 0.9375rem;
  }
}
@media (max-width: 1250px) {
  .header__nav.nav .nav__item {
    padding-bottom: 1.25rem;
    width: 100%;
    border-bottom: solid 1px var(--stroke-light);
  }
}
@media (max-width: 1250px) and (any-hover: hover) {
  .header__nav.nav .nav__item:hover .nav__link .icon {
    -webkit-transform: unset;
        -ms-transform: unset;
            transform: unset;
  }
  .header__nav.nav .nav__item:hover .nav__children {
    -webkit-box-shadow: none;
            box-shadow: none;
  }
}
@media (max-width: 630px) {
  .header__nav.nav .nav__item {
    padding-bottom: 0.9375rem;
  }
}
@media (max-width: 1250px) {
  .header__nav.nav .nav__link {
    width: 100%;
    display: block;
    color: var(--text-dark-primary);
    font: var(--font-card-title);
    letter-spacing: -0.01em;
  }
}
@media (max-width: 630px) {
  .header__nav.nav .nav__link {
    font: var(--font-card-title-L);
    letter-spacing: unset;
  }
}
@media (max-width: 1250px) {
  .header__nav.nav .nav__link::before {
    top: -0.625rem;
    left: -0.625rem;
    width: calc(100% + 0.625rem * 2);
    height: calc(100% + 0.625rem * 2);
    content: "";
    position: absolute;
    background-color: transparent;
    opacity: 0;
  }
}
@media (max-width: 1250px) and (min-width: 2567px) {
  .header__nav.nav .nav__link::before {
    top: -0.3897116134vw;
    left: -0.3897116134vw;
    width: calc(100% + 0.3897116134vw * 2);
    height: calc(100% + 0.3897116134vw * 2);
  }
}
@media (max-width: 1250px) {
  .header__nav.nav .nav__link .icon {
    right: -0.5625rem;
    left: unset;
    padding: 0.5625rem;
    width: 2.375rem;
    height: 2.375rem;
    fill: var(--text-dark-tertiary);
    -webkit-transition: fill var(--animation-default), -webkit-transform var(--animation-default);
    transition: fill var(--animation-default), -webkit-transform var(--animation-default);
    transition: fill var(--animation-default), transform var(--animation-default);
    transition: fill var(--animation-default), transform var(--animation-default), -webkit-transform var(--animation-default);
    pointer-events: all;
  }
}
@media (max-width: 630px) {
  .header__nav.nav .nav__link .icon {
    width: 2.25rem;
    height: 2.25rem;
  }
}
@media (max-width: 1250px) {
  .header__nav.nav .nav__link .icon.more-active {
    fill: var(--accent-primary-default);
    -webkit-transform: rotate(180deg);
        -ms-transform: rotate(180deg);
            transform: rotate(180deg);
  }
}
@media (max-width: 1250px) {
  .header__nav.nav .nav__children {
    position: static;
    margin: 0;
    padding: 0;
    padding-left: 0.625rem;
    width: 100%;
    height: 0;
    overflow: hidden;
    visibility: visible;
    opacity: 1;
    pointer-events: all;
  }
}
@media (max-width: 1250px) {
  .header__nav.nav .nav__children .nav__item {
    padding: 0.625rem 0;
    border-bottom-width: 0;
  }
}
@media (max-width: 1250px) {
  .header__nav.nav .nav__children .nav__link {
    padding: 0;
    font: var(--font-body-XL-m);
  }
}
@media (max-width: 1250px) and (any-hover: hover) {
  .header__nav.nav .nav__children .nav__link:hover {
    background: transparent;
  }
}
.header-social {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  gap: 0.625rem;
}
@media (min-width: 2567px) {
  .header-social {
    gap: 0.3897116134vw;
  }
}
@media (max-width: 1500px) {
  .header-social {
    gap: 0.3125rem;
  }
}
@media (max-width: 1250px) {
  .header-social {
    gap: 0.625rem;
  }
}
@media (max-width: 630px) {
  .header-social {
    gap: 0.5rem;
  }
}
.header-social__item_search .button {
  --button-icon-color: var(--text-dark-primary);
}
.header-social__item_favorites .button {
  --button-icon-color: var(--accent-secondary-default);
  --button-bg-color: var(--bg-white);
  --button-bg-color-hover: var(--accent-secondary-default);
}
@media (max-width: 630px) {
  .header-social__item_text {
    display: none;
  }
}
.header-social__item_text .button {
  --button-text-color: var(--accent-secondary-default);
  --button-text-color-hover: var(--text-light-primary);
  --button-icon-color: var(--text-dark-primary);
  --button-icon-color-hover: var(--text-light-primary);
  --button-bg-color: var(--bg-white);
  --button-bg-color-hover: var(--accent-secondary-hover);
  background-color: var(--bg-white);
}
.header-social__item_phone {
  display: none;
}
@media (max-width: 1250px) {
  .header-social__item_phone {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
.header-social__item_phone .button {
  --button-icon-color: var(--text-dark-primary);
  --button-icon-color-hover: var(--text-light-primary);
  --button-bg-color: var(--bg-white);
  --button-bg-color-hover: var(--text-dark-primary);
  background-color: var(--bg-white);
}
.header-social__item_whatsapp .button, .header-social__item_tg .button {
  --button-icon-color: var(--text-light-primary);
  --button-icon-color-hover: var(--accent-primary-default);
  --button-bg-color: var(--accent-primary-default);
  --button-bg-color-hover: var(--bg-white);
  background-color: var(--button-bg-color);
}
.header-social__item_whatsapp .button[data-button-animation], .header-social__item_tg .button[data-button-animation] {
  --button-icon-color-hover: var(--accent-primary-default);
}
@media (any-hover: hover) {
  .header-social__item_whatsapp .button:hover, .header-social__item_tg .button:hover {
    background-color: var(--button-bg-color);
  }
  .header-social__item_whatsapp .button:hover .icon, .header-social__item_tg .button:hover .icon {
    fill: var(--button-icon-color-hover);
  }
}
.header-social__item_whatsapp {
  --accent-primary-default: #60D669;
}
.header-social__item_tg {
  --accent-primary-default: #2AABEE;
}
.nav {
  padding: 0.9375rem 0;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media (min-width: 2567px) {
  .nav {
    padding: 0.5845674201vw 0;
  }
}
@media (max-width: 2000px) {
  .nav {
    padding: 0.9375rem 0;
  }
}
@media (max-width: 1500px) {
  .nav {
    padding: 0.6875rem 0;
  }
}
@media (max-width: 1250px) {
  .nav {
    display: none;
  }
}
.nav__list {
  margin: 0;
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  gap: 3.125rem;
  list-style: none;
}
@media (min-width: 2567px) {
  .nav__list {
    gap: 1.948558067vw;
  }
}
@media (max-width: 2000px) {
  .nav__list {
    gap: 2.5rem;
  }
}
@media (max-width: 1500px) {
  .nav__list {
    gap: 1.875rem;
  }
}
.nav__item {
  position: relative;
}
@media (any-hover: hover) {
  .nav__item:hover > .nav__link {
    color: var(--accent-primary-default);
  }
  .nav__item:hover > .nav__link .icon {
    -webkit-transform: rotate(180deg);
        -ms-transform: rotate(180deg);
            transform: rotate(180deg);
  }
  .nav__item:hover > .nav__children {
    margin-top: 0;
    -webkit-box-shadow: var(--shadow-large);
            box-shadow: var(--shadow-large);
    visibility: visible;
    opacity: 1;
    pointer-events: all;
  }
}
.nav__item_active .nav__link {
  font-weight: 700;
}
@media (any-hover: hover) {
  .nav__item .select-input:hover .select-current__icon {
    fill: var(--accent-primary-default);
  }
}
.nav__item .select-input .select-current {
  margin: 0;
  padding: 0;
  min-height: unset;
  background: transparent;
  border: none;
  overflow: visible;
}
.nav__item .select-input .select-current::before {
  top: -1.5625rem;
  left: -1.5625rem;
  width: calc(100% + 1.5625rem * 2);
  height: calc(100% + 1.5625rem * 2);
  content: "";
  position: absolute;
  background-color: transparent;
  opacity: 0;
}
@media (min-width: 2567px) {
  .nav__item .select-input .select-current::before {
    top: -0.9742790335vw;
    left: -0.9742790335vw;
    width: calc(100% + 0.9742790335vw * 2);
    height: calc(100% + 0.9742790335vw * 2);
  }
}
@media (max-width: 2000px) {
  .nav__item .select-input .select-current::before {
    top: -1.25rem;
    left: -1.25rem;
    width: calc(100% + 1.25rem * 2);
    height: calc(100% + 1.25rem * 2);
  }
}
@media (max-width: 1500px) {
  .nav__item .select-input .select-current::before {
    top: -0.9375rem;
    left: -0.9375rem;
    width: calc(100% + 0.9375rem * 2);
    height: calc(100% + 0.9375rem * 2);
  }
}
.nav__item .select-input .select-current .icon {
  -webkit-transform: rotate(0);
      -ms-transform: rotate(0);
          transform: rotate(0);
}
.nav__item .select-input .select-answer {
  width: auto;
  overflow: visible;
}
@media (any-hover: hover) {
  .nav__item .select-input .select-answer__item:hover {
    z-index: 2;
  }
}
.nav__item .select-input .select-answer .nav__item {
  position: relative;
}
.nav__item .select-input .select-answer .nav__item .icon {
  position: unset;
  -webkit-transform: rotate(-90deg);
      -ms-transform: rotate(-90deg);
          transform: rotate(-90deg);
}
.nav__item .select-input .select-answer .nav__link {
  gap: 0.3125rem;
}
@media (min-width: 2567px) {
  .nav__item .select-input .select-answer .nav__link {
    gap: 0.1948558067vw;
  }
}
@media (max-width: 1500px) {
  .nav__item .select-input .select-answer .nav__link {
    gap: 0.25rem;
  }
}
.nav__item .select-input .select-answer .nav__children {
  top: 0;
  left: calc(100% + 0.625rem);
}
@media (min-width: 2567px) {
  .nav__item .select-input .select-answer .nav__children {
    left: calc(100% + 0.3897116134vw);
  }
}
.nav__link {
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  color: var(--text-dark-primary);
  font: var(--font-body-M-m);
  text-decoration: none;
  white-space: nowrap;
  -webkit-transition: color var(--animation-default);
  transition: color var(--animation-default);
}
.nav__link::before {
  top: -1.5625rem;
  left: -1.5625rem;
  width: calc(100% + 1.5625rem * 2);
  height: calc(100% + 1.5625rem * 2);
  content: "";
  position: absolute;
  background-color: transparent;
  opacity: 0;
}
@media (min-width: 2567px) {
  .nav__link::before {
    top: -0.9742790335vw;
    left: -0.9742790335vw;
    width: calc(100% + 0.9742790335vw * 2);
    height: calc(100% + 0.9742790335vw * 2);
  }
}
@media (max-width: 2000px) {
  .nav__link::before {
    top: -1.25rem;
    left: -1.25rem;
    width: calc(100% + 1.25rem * 2);
    height: calc(100% + 1.25rem * 2);
  }
}
@media (max-width: 1500px) {
  .nav__link::before {
    top: -0.9375rem;
    left: -0.9375rem;
    width: calc(100% + 0.9375rem * 2);
    height: calc(100% + 0.9375rem * 2);
  }
}
.nav__link .icon {
  position: absolute;
  top: 0;
  bottom: 0;
  left: calc(100% + 0.3125rem);
  margin: auto;
  fill: var(--accent-primary-default);
  -webkit-transition: -webkit-transform var(--animation-default);
  transition: -webkit-transform var(--animation-default);
  transition: transform var(--animation-default);
  transition: transform var(--animation-default), -webkit-transform var(--animation-default);
}
@media (min-width: 2567px) {
  .nav__link .icon {
    left: calc(100% + 0.1948558067vw);
  }
}
@media (max-width: 2000px) {
  .nav__link .icon {
    width: 1.125rem;
    height: 1.125rem;
  }
}
@media (max-width: 1500px) {
  .nav__link .icon {
    width: 0.875rem;
    height: 0.875rem;
  }
}
@media (max-width: 1500px) {
  .nav__link .icon {
    left: calc(100% + 0.25rem);
  }
}
.nav__children {
  position: absolute;
  top: calc(100% + 1.25rem);
  left: 0;
  margin: 0;
  margin-top: -0.625rem;
  max-height: 32.25rem;
  padding: 0.75rem 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  list-style: none;
  background-color: var(--bg-white);
  border-radius: var(--radius-tertiary);
  visibility: hidden;
  opacity: 0;
  overflow-y: auto;
  -ms-scroll-chaining: none;
      overscroll-behavior: contain;
  -webkit-transition: margin-top var(--animation-default), opacity var(--animation-default), visibility var(--animation-default), -webkit-box-shadow var(--animation-medium);
  transition: margin-top var(--animation-default), opacity var(--animation-default), visibility var(--animation-default), -webkit-box-shadow var(--animation-medium);
  transition: box-shadow var(--animation-medium), margin-top var(--animation-default), opacity var(--animation-default), visibility var(--animation-default);
  transition: box-shadow var(--animation-medium), margin-top var(--animation-default), opacity var(--animation-default), visibility var(--animation-default), -webkit-box-shadow var(--animation-medium);
  pointer-events: none;
}
.nav__children::-webkit-scrollbar {
  width: 0.9375rem;
}
@media (min-width: 2567px) {
  .nav__children::-webkit-scrollbar {
    width: 0.5845674201vw;
  }
}
.nav__children::-webkit-scrollbar-track {
  background: var(--bg-light);
  border: solid 5px var(--bg-white);
}
@media (min-width: 2567px) {
  .nav__children::-webkit-scrollbar-track {
    border-width: 0.1948558067vw;
  }
}
.nav__children::-webkit-scrollbar-thumb {
  background-color: var(--stroke-light);
  border-radius: var(--radius-infinity);
  border: 5px solid var(--bg-white);
  cursor: pointer;
}
@media (min-width: 2567px) {
  .nav__children::-webkit-scrollbar-thumb {
    border-width: 0.1948558067vw;
  }
}
@media (any-hover: hover) {
  .nav__children::-webkit-scrollbar-thumb:hover {
    background-color: var(--accent-primary-default);
  }
}
@media (min-width: 2567px) {
  .nav__children {
    top: calc(100% + 0.7794232268vw);
    padding: 0.4676539361vw 0;
    max-height: 20.1091192518vw;
  }
}
@media (max-width: 2000px) {
  .nav__children {
    top: calc(100% + 0.9375rem);
    max-height: 22.625rem;
  }
}
@media (max-width: 1500px) {
  .nav__children {
    top: calc(100% + 0.625rem);
    padding: 0.625rem 0;
    max-height: 16.375rem;
  }
}
.nav__children .nav__item {
  width: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.nav__children .nav__link {
  padding: 0.8125rem 1.25rem;
  width: 100%;
  color: var(--text-dark-primary);
  font: var(--font-body-M-r);
  -webkit-transition: color var(--animation-default), background-color var(--animation-default);
  transition: color var(--animation-default), background-color var(--animation-default);
}
@media (min-width: 2567px) {
  .nav__children .nav__link {
    padding: 0.5066250974vw 0.7794232268vw;
  }
}
@media (max-width: 1500px) {
  .nav__children .nav__link {
    padding: 0.65625rem 1.0625rem;
  }
}
@media (any-hover: hover) {
  .nav__children .nav__link:hover {
    color: var(--accent-primary-default);
    background-color: var(--bg-light);
  }
}
.nav__children .nav__link::before {
  content: unset;
}
.nav-mobile {
  width: 100%;
  display: none;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  gap: 3.125rem;
}
@media (max-width: 1250px) {
  .nav-mobile {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
@media (max-width: 630px) {
  .nav-mobile {
    gap: 1.875rem;
  }
}
.nav-mobile__social {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: 1fr;
}
@media (max-width: 630px) {
  .nav-mobile__social {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    gap: 0.9375rem;
  }
}
.nav-mobile__item {
  padding: 1.25rem;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  gap: 0.3125rem;
  border: solid 1px var(--stroke-light);
}
@media (max-width: 630px) {
  .nav-mobile__item {
    padding: 0;
    padding-bottom: 0.9375rem;
    gap: 0;
    border-width: 0 0 1px 0;
  }
}
.nav-mobile__item:first-child, .nav-mobile__item:nth-child(2) {
  padding-top: 0;
}
.nav-mobile__item:nth-child(2n+1) {
  padding-left: 0;
  border-width: 0 1px 1px 0;
}
@media (max-width: 630px) {
  .nav-mobile__item:nth-child(2n+1) {
    border-width: 0 0 1px 0;
  }
}
.nav-mobile__item:nth-child(2n+2) {
  padding-right: 0;
  border-width: 0 0 1px 0;
}
.nav-mobile__title {
  width: 100%;
  display: block;
  color: var(--text-dark-secondary);
  font: var(--font-body-M-r);
}
.nav-mobile__link {
  width: 100%;
  display: block;
  color: var(--text-dark-primary);
  font: var(--font-card-title);
  letter-spacing: -0.01em;
  text-decoration: none;
  -webkit-transition: color var(--animation-default);
  transition: color var(--animation-default);
}
@media (max-width: 630px) {
  .nav-mobile__link {
    font: var(--font-card-title-L);
    letter-spacing: unset;
  }
}
@media (any-hover: hover) {
  .nav-mobile__link:hover {
    color: var(--accent-primary-default);
  }
}
@media (max-width: 630px) {
  .nav-mobile__order {
    width: 100%;
  }
}
.js-nav-overflow-detect {
  opacity: 0 !important;
}
.js-nav-overflow-detect .nav__link::before {
  content: none;
}
.js-nav-overflow-detect .contacts-select {
  overflow: hidden;
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvY29tbW9uL2hlYWRlci9oZWFkZXIuc2NzcyUyM3Nhc3MiLCJjb21wb25lbnRzL2NvbW1vbi9oZWFkZXIvaGVhZGVyLnNjc3MiLCJtaXhpbnMvX21lZGlhLnNjc3MiLCJtaXhpbnMvX2Rpc2FibGUtbW9iLWhvdmVyLnNjc3MiLCJtaXhpbnMvX3BzZXVkby1ob3Zlci5zY3NzIiwiY29tcG9uZW50cy9jb21tb24vaGVhZGVyL19oZWFkZXItc29jaWFsLnNjc3MiLCJjb21wb25lbnRzL2NvbW1vbi9oZWFkZXIvX25hdi5zY3NzIiwibWl4aW5zL19zY3JvbGxiYXIuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQTtFQUNFLGdCQUFBO0VDREYsTUFBQTtFREdFLE9BQUE7RUFDQSxVQUFBO0VBRUEsbUJBQUE7RUFDQSxXQUFBO0VBRUEseUdBQUE7RUFBQSxpR0FBQTtFQUFBLHlGQUFBO0VBQUEsc0lBQUE7QUNIRjtBQ1BFO0VGQ0Y7SUNTRSx5QkFBQTtFQUNBO0FBQ0Y7QUNBRTtFRlhGO0lDY0Usa0JBQUE7RUFDQTtBQUNGO0FDQ0U7RUZqQkY7SUFxQkksb0JBQUE7RUNERjtBQUNGO0FDRUU7RUZ2QkY7SUN3QkUsa0JBQUE7RUFDQTtBQUNGO0FESU07RUFDRSxrQkFBQTtFQXVEQTs7SUFBQTtBQ3REUjtBREVZO0VBQ0Usa0JBQUE7RUFDQSxlQUFBO0VBQ0EsUUFBQTtFQUNBLFVBQUE7RUFFQSxlQUFBO0VBQ0EsZ0JBQUE7RUFDQSxvQkFBQTtFQUFBLG9CQUFBO0VBQUEsYUFBQTtFQUNBLHlCQUFBO01BQUEsc0JBQUE7VUFBQSxtQkFBQTtFQUNBLHdCQUFBO01BQUEscUJBQUE7VUFBQSx1QkFBQTtFQUVBLDRCQUFBO0VBRUEsaURBQUE7RUFDQSxnQ0FBQTtFQUNBLHFDQUFBO0VBRUEsMkJBQUE7TUFBQSx1QkFBQTtVQUFBLG1CQUFBO0VBQ0Esb0JBQUE7RUFFQSx5SUFBQTtFQUFBLGlJQUFBO0VBQUEseUhBQUE7RUFBQSxxS0FBQTtB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LHNCQUFBO0lBQ0Esd0JBQUE7UUFBQSxxQkFBQTtZQUFBLHVCQUFBO0lBQ0EsdUJBQUE7UUFBQSxvQkFBQTtZQUFBLDJCQUFBO0lBQ0EsY0FBQTtFTDhiSjtBQUNGO0FLM2JFO0VBQ0UsZ0JBQUE7RUFDQSxXQUFBO0VBQ0Esb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSw0QkFBQTtFQUFBLDZCQUFBO01BQUEsMEJBQUE7VUFBQSxzQkFBQTtFQUNBLHdCQUFBO01BQUEscUJBQUE7VUFBQSx1QkFBQTtFQUNBLHVCQUFBO01BQUEsb0JBQUE7VUFBQSwyQkFBQTtFQUNBLGNBQUE7RUFFQSxxQ0FBQTtBTDRiSjtBQzV2QkU7RUl1VEE7SUFZSSxVQUFBO0lBQ0EseUJBQUE7SUFDQSxNQUFBO0lBRUEsdUJBQUE7RUw0Yko7QUFDRjtBSzFiSTtFQUVFLGNBQUE7QUwyYk47QUt4Ykk7RUFDRSxlQUFBO0VBRUEseUJBQUE7QUx5Yk47QUMzd0JFO0VJK1VFO0lBTUksdUJBQUE7RUwwYk47QUFDRjtBS3ZiSTtFQUNFLGdCQUFBO0VBRUEsdUJBQUE7QUx3Yk47QUtwYkU7RUFDRSxXQUFBO0VBQ0EsY0FBQTtFQUVBLGlDQUFBO0VBQ0EsMEJBQUE7QUxxYko7QUtsYkU7RUFDRSxXQUFBO0VBQ0EsY0FBQTtFQUVBLCtCQUFBO0VBQ0EsNEJBQUE7RUFDQSx1QkFBQTtFQUNBLHFCQUFBO0VBRUEsa0RBQUE7RUFBQSwwQ0FBQTtBTGtiSjtBQ255QkU7RUl3V0E7SUFZSSw4QkFBQTtJQUNBLHFCQUFBO0VMbWJKO0FBQ0Y7QUVqMEJFO0VBQ0U7SUdnWkUsb0NBQUE7RUxvYko7QUFDRjtBQzl5QkU7RUk2WEE7SUFFSSxXQUFBO0VMbWJKO0FBQ0Y7QUsvYUE7RUFDRSxxQkFBQTtBTGtiRjtBSy9hSTtFQUNFLGFBQUE7QUxpYk47QUs3YUU7RUFDRSxnQkFBQTtBTCthSiIsImZpbGUiOiJjb21wb25lbnRzL2NvbW1vbi9oZWFkZXIvaGVhZGVyLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBpbXBvcnQgXCIuLi8uLi8uLi9taXhpbnNcIjtcblxuLmhlYWRlciB7XG4gIHBvc2l0aW9uOiBzdGlja3k7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogNTtcblxuICBwYWRkaW5nOiByZW0oMzApIDA7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgdmFyKC0tYW5pbWF0aW9uLW1lZGl1bSksXG4gICAgYm94LXNoYWRvdyB2YXIoLS1hbmltYXRpb24tZGVmYXVsdCk7XG5cbiAgQGluY2x1ZGUgbWVkaWFCaWdEZXNrdG9wIHtcbiAgICBwYWRkaW5nOiBiaWcoMzApIDA7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYUxhcHRvcCB7XG4gICAgcGFkZGluZzogcmVtKDIwKSAwO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWFUYWJsZXQge1xuICAgIHBhZGRpbmc6IHJlbSgxNSkgMDtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhTW9iaWxlIHtcbiAgICBwYWRkaW5nOiByZW0oMTIpIDA7XG4gIH1cblxuICAmIC5oZWFkZXItc29jaWFsIHtcbiAgICAmX19pdGVtIHtcbiAgICAgICZfZmF2b3JpdGVzIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBcbiAgICAgICAgJiAuaGVhZGVyLXNvY2lhbCB7XG4gICAgICAgICAgICAmX19jb3VudCB7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgdG9wOiByZW0oLTcpO1xuICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgICB3aWR0aDogcmVtKDE4KTtcbiAgICAgICAgICAgICAgaGVpZ2h0OiByZW0oMTgpO1xuICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgICBmb250OiB2YXIoLS1mb250LWJvZHktWFhTLW0pO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWFjY2VudC1zZWNvbmRhcnktZGVmYXVsdCk7XG4gICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0LXByaW1hcnkpO1xuICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtaW5maW5pdHkpO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLWFuaW1hdGlvbi1kZWZhdWx0KSxcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLWFuaW1hdGlvbi1kZWZhdWx0KSxcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gdmFyKC0tYW5pbWF0aW9uLWRlZmF1bHQpO1xuICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWFCaWdEZXNrdG9wIHtcbiAgICAgICAgICAgICAgICB0b3A6IGJpZygtNyk7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgd2lkdGg6IGJpZygyNCk7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBiaWcoMjQpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWFEZXNrdG9wIHtcbiAgICAgICAgICAgICAgICB0b3A6IHJlbSgtNyk7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgd2lkdGg6IHJlbSgyNCk7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiByZW0oMjQpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWFMYXB0b3Age1xuICAgICAgICAgICAgICAgIHdpZHRoOiByZW0oMTgpO1xuICAgICAgICAgICAgICAgIGhlaWdodDogcmVtKDE4KTtcbiAgICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICAgICAgICAmX2FjdGl2ZSB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAvKkBpbmNsdWRlIG1lZGlhKDM1MHB4KSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfSovXG4gICAgICB9XG5cbiAgICAgICZfdGV4dCxcbiAgICAgICZfd2hhdHNhcHAsXG4gICAgICAmX3RnIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoNTMwcHgpIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5oZWFkZXIge1xuICAgICZfYmFja2dyb3VuZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy13aGl0ZSk7XG5cbiAgICAgICYgLmhlYWRlci1zb2NpYWwge1xuICAgICAgICAmX19pdGVtIHtcblxuICAgICAgICAgICZfdGV4dCxcbiAgICAgICAgICAmX3Bob25lLFxuICAgICAgICAgICZfZmF2b3JpdGVzIHtcbiAgICAgICAgICAgICYgLmJ1dHRvbiB7XG4gICAgICAgICAgICAgIC0tYnV0dG9uLWJnLWNvbG9yOiB2YXIoLS1zdHJva2UtbGlnaHQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICZfc2hhZG93IHtcbiAgICAgIGJveC1zaGFkb3c6IDAgMTBweCAyMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjEwKTtcblxuICAgICAgQGluY2x1ZGUgbWVkaWFCaWdEZXNrdG9wIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCBiaWcoMTApIGJpZygyMCkgMCByZ2JhKDAsIDAsIDAsIDAuMTApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZfX2NvbnRhaW5lciB7XG4gICAgJiA+IGRpdiB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBnYXA6IHJlbSgyMCk7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhQmlnRGVza3RvcCB7XG4gICAgICAgIGdhcDogYmlnKDIwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX19jb2x1bW4ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICBnYXA6IHJlbSg0MCk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYUJpZ0Rlc2t0b3Age1xuICAgICAgZ2FwOiBiaWcoNDApO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhRGVza3RvcCB7XG4gICAgICBnYXA6IHJlbSgzMCk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWFMYXB0b3Age1xuICAgICAgZ2FwOiByZW0oMjApO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhTW9iaWxlIHtcbiAgICAgIGdhcDogcmVtKDE1KTtcbiAgICB9XG4gIH1cblxuICAmX19jYWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYVRhYmxldCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICYuYnV0dG9uIHtcbiAgICAgIC0tYnV0dG9uLWljb24tY29sb3I6IHZhcigtLXRleHQtZGFyay1wcmltYXJ5KTtcbiAgICAgIC0tYnV0dG9uLWljb24tY29sb3ItaG92ZXI6IHZhcigtLWFjY2VudC1wcmltYXJ5LWRlZmF1bHQpO1xuICAgICAgLS1idXR0b24tdGV4dC1jb2xvcjogdmFyKC0tdGV4dC1kYXJrLXByaW1hcnkpO1xuICAgICAgLS1idXR0b24tdGV4dC1jb2xvci1ob3ZlcjogdmFyKC0tYWNjZW50LXByaW1hcnktZGVmYXVsdCk7XG4gICAgfVxuICB9XG5cbiAgJl9fYnVyZ2VyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgQGluY2x1ZGUgbWVkaWFUYWJsZXQge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG5cbiAgICAmLmJ1dHRvbiB7XG4gICAgICAtLWJ1dHRvbi1iZy1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAtLWJ1dHRvbi1iZy1jb2xvci1ob3ZlcjogdmFyKC0tYWNjZW50LXByaW1hcnktZGVmYXVsdCk7XG4gICAgICAtLWJ1dHRvbi1pY29uLWNvbG9yOiB2YXIoLS1hY2NlbnQtcHJpbWFyeS1kZWZhdWx0KTtcbiAgICAgIC0tYnV0dG9uLWljb24tY29sb3ItaG92ZXI6IHZhcigtLWFjY2VudC1wcmltYXJ5LWRlZmF1bHQpO1xuICAgIH1cbiAgfVxuXG4gICZfX25hdi5uYXYge1xuICAgIEBpbmNsdWRlIG1lZGlhVGFibGV0IHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMTAwJTtcbiAgICAgIGxlZnQ6IDA7XG5cbiAgICAgIHBhZGRpbmc6IHJlbSg0MCkgdmFyKC0tY29udGFpbmVyLW9mZnNldCk7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogY2FsYygxMDB2aCAtIHZhcigtLWdsb2JhbC1oZWFkZXItaGVpZ2h0KSk7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgZ2FwOiByZW0oNTApO1xuXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy13aGl0ZSk7XG4gICAgICBvdmVyZmxvdzogYXV0bztcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgIG9wYWNpdHk6IDA7XG5cbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tYW5pbWF0aW9uLW1lZGl1bSksXG4gICAgICAgIHZpc2liaWxpdHkgdmFyKC0tYW5pbWF0aW9uLW1lZGl1bSk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWFNb2JpbGUge1xuICAgICAgcGFkZGluZzogcmVtKDE1KSB2YXIoLS1jb250YWluZXItb2Zmc2V0KSByZW0oNTEpO1xuICAgICAgZ2FwOiByZW0oMTUpO1xuICAgIH1cblxuICAgICYuYnVyZ2VyLW1lbnUge1xuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuXG4gICAgJiAubmF2IHtcbiAgICAgICZfX2xpc3Qge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYVRhYmxldCB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgICBnYXA6IHJlbSgyMCk7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYU1vYmlsZSB7XG4gICAgICAgICAgZ2FwOiByZW0oMTUpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICZfX2l0ZW0ge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYVRhYmxldCB7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbSgyMCk7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggdmFyKC0tc3Ryb2tlLWxpZ2h0KTtcblxuICAgICAgICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgICAgICAgICYgLm5hdiB7XG4gICAgICAgICAgICAgICZfX2xpbmsge1xuICAgICAgICAgICAgICAgICYgLmljb24ge1xuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB1bnNldDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAmX19jaGlsZHJlbiB7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhTW9iaWxlIHtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtKDE1KTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmX19saW5rIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWFUYWJsZXQge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtZGFyay1wcmltYXJ5KTtcbiAgICAgICAgICBmb250OiB2YXIoLS1mb250LWNhcmQtdGl0bGUpO1xuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiBjYWxjKC0xZW0gLyAxMDApO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWFNb2JpbGUge1xuICAgICAgICAgIGZvbnQ6IHZhcigtLWZvbnQtY2FyZC10aXRsZS1MKTtcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogdW5zZXQ7XG4gICAgICAgIH1cblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhVGFibGV0IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHBzZXVkbygxMCwgZmFsc2UsIHRydWUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYgLmljb24ge1xuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhVGFibGV0IHtcbiAgICAgICAgICAgIHJpZ2h0OiByZW0oLTkpO1xuICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG5cbiAgICAgICAgICAgIHBhZGRpbmc6IHJlbSg5KTtcbiAgICAgICAgICAgIHdpZHRoOiByZW0oMzgpO1xuICAgICAgICAgICAgaGVpZ2h0OiByZW0oMzgpO1xuXG4gICAgICAgICAgICBmaWxsOiB2YXIoLS10ZXh0LWRhcmstdGVydGlhcnkpO1xuXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBmaWxsIHZhcigtLWFuaW1hdGlvbi1kZWZhdWx0KSxcbiAgICAgICAgICAgICAgdHJhbnNmb3JtIHZhcigtLWFuaW1hdGlvbi1kZWZhdWx0KTtcblxuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYU1vYmlsZSB7XG4gICAgICAgICAgICB3aWR0aDogcmVtKDM2KTtcbiAgICAgICAgICAgIGhlaWdodDogcmVtKDM2KTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLm1vcmUtYWN0aXZlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhVGFibGV0IHtcbiAgICAgICAgICAgICAgZmlsbDogdmFyKC0tYWNjZW50LXByaW1hcnktZGVmYXVsdCk7XG5cbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJl9fY2hpbGRyZW4ge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYVRhYmxldCB7XG4gICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogcmVtKDEwKTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IDA7XG5cbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgb3BhY2l0eTogMTtcblxuICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XG4gICAgICAgIH1cblxuICAgICAgICAmIC5uYXYge1xuICAgICAgICAgICZfX2l0ZW0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWFUYWJsZXQge1xuICAgICAgICAgICAgICBwYWRkaW5nOiByZW0oMTApIDA7XG5cbiAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmX19saW5rIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhVGFibGV0IHtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgICBmb250OiB2YXIoLS1mb250LWJvZHktWEwtbSk7XG5cbiAgICAgICAgICAgICAgQGluY2x1ZGUgaG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBpbXBvcnQgXCJoZWFkZXItc29jaWFsXCIsXG5cIm5hdlwiO1xuIiwiQGltcG9ydCBcIi4uLy4uLy4uL21peGluc1wiO1xuXG4uaGVhZGVyIHtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiA1O1xuXG4gIHBhZGRpbmc6IHJlbSgzMCkgMDtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciB2YXIoLS1hbmltYXRpb24tbWVkaXVtKSxcbiAgICBib3gtc2hhZG93IHZhcigtLWFuaW1hdGlvbi1kZWZhdWx0KTtcblxuICBAaW5jbHVkZSBtZWRpYUJpZ0Rlc2t0b3Age1xuICAgIHBhZGRpbmc6IGJpZygzMCkgMDtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhTGFwdG9wIHtcbiAgICBwYWRkaW5nOiByZW0oMjApIDA7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYVRhYmxldCB7XG4gICAgcGFkZGluZzogcmVtKDE1KSAwO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWFNb2JpbGUge1xuICAgIHBhZGRpbmc6IHJlbSgxMikgMDtcbiAgfVxuXG4gICYgLmhlYWRlci1zb2NpYWwge1xuICAgICZfX2l0ZW0ge1xuICAgICAgJl9mYXZvcml0ZXMge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIFxuICAgICAgICAmIC5oZWFkZXItc29jaWFsIHtcbiAgICAgICAgICAgICZfX2NvdW50IHtcbiAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICB0b3A6IHJlbSgtNyk7XG4gICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAgIHdpZHRoOiByZW0oMTgpO1xuICAgICAgICAgICAgICBoZWlnaHQ6IHJlbSgxOCk7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAgIGZvbnQ6IHZhcigtLWZvbnQtYm9keS1YWFMtbSk7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYWNjZW50LXNlY29uZGFyeS1kZWZhdWx0KTtcbiAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHQtcHJpbWFyeSk7XG4gICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1pbmZpbml0eSk7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tYW5pbWF0aW9uLWRlZmF1bHQpLFxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgdmFyKC0tYW5pbWF0aW9uLWRlZmF1bHQpLFxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybSB2YXIoLS1hbmltYXRpb24tZGVmYXVsdCk7XG4gICAgICAgICAgICAgIFxuICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYUJpZ0Rlc2t0b3Age1xuICAgICAgICAgICAgICAgIHRvcDogYmlnKC03KTtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICB3aWR0aDogYmlnKDI0KTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGJpZygyNCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYURlc2t0b3Age1xuICAgICAgICAgICAgICAgIHRvcDogcmVtKC03KTtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICB3aWR0aDogcmVtKDI0KTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHJlbSgyNCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYUxhcHRvcCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IHJlbSgxOCk7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiByZW0oMTgpO1xuICAgICAgICAgICAgICB9XG4gICAgXG4gICAgICAgICAgICAgICZfYWN0aXZlIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC8qQGluY2x1ZGUgbWVkaWEoMzUwcHgpIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9Ki9cbiAgICAgIH1cblxuICAgICAgJl90ZXh0LFxuICAgICAgJl93aGF0c2FwcCxcbiAgICAgICZfdGcge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYSg1MzBweCkge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmhlYWRlciB7XG4gICAgJl9iYWNrZ3JvdW5kIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLXdoaXRlKTtcblxuICAgICAgJiAuaGVhZGVyLXNvY2lhbCB7XG4gICAgICAgICZfX2l0ZW0ge1xuXG4gICAgICAgICAgJl90ZXh0LFxuICAgICAgICAgICZfcGhvbmUsXG4gICAgICAgICAgJl9mYXZvcml0ZXMge1xuICAgICAgICAgICAgJiAuYnV0dG9uIHtcbiAgICAgICAgICAgICAgLS1idXR0b24tYmctY29sb3I6IHZhcigtLXN0cm9rZS1saWdodCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJl9zaGFkb3cge1xuICAgICAgYm94LXNoYWRvdzogMCAxMHB4IDIwcHggMCByZ2JhKDAsIDAsIDAsIDAuMTApO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYUJpZ0Rlc2t0b3Age1xuICAgICAgICBib3gtc2hhZG93OiAwIGJpZygxMCkgYmlnKDIwKSAwIHJnYmEoMCwgMCwgMCwgMC4xMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJl9fY29udGFpbmVyIHtcbiAgICAmID4gZGl2IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGdhcDogcmVtKDIwKTtcblxuICAgICAgQGluY2x1ZGUgbWVkaWFCaWdEZXNrdG9wIHtcbiAgICAgICAgZ2FwOiBiaWcoMjApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZfX2NvbHVtbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIGdhcDogcmVtKDQwKTtcblxuICAgIEBpbmNsdWRlIG1lZGlhQmlnRGVza3RvcCB7XG4gICAgICBnYXA6IGJpZyg0MCk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWFEZXNrdG9wIHtcbiAgICAgIGdhcDogcmVtKDMwKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYUxhcHRvcCB7XG4gICAgICBnYXA6IHJlbSgyMCk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWFNb2JpbGUge1xuICAgICAgZ2FwOiByZW0oMTUpO1xuICAgIH1cbiAgfVxuXG4gICZfX2NhbGwge1xuICAgIEBpbmNsdWRlIG1lZGlhVGFibGV0IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgJi5idXR0b24ge1xuICAgICAgLS1idXR0b24taWNvbi1jb2xvcjogdmFyKC0tdGV4dC1kYXJrLXByaW1hcnkpO1xuICAgICAgLS1idXR0b24taWNvbi1jb2xvci1ob3ZlcjogdmFyKC0tYWNjZW50LXByaW1hcnktZGVmYXVsdCk7XG4gICAgICAtLWJ1dHRvbi10ZXh0LWNvbG9yOiB2YXIoLS10ZXh0LWRhcmstcHJpbWFyeSk7XG4gICAgICAtLWJ1dHRvbi10ZXh0LWNvbG9yLWhvdmVyOiB2YXIoLS1hY2NlbnQtcHJpbWFyeS1kZWZhdWx0KTtcbiAgICB9XG4gIH1cblxuICAmX19idXJnZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICBAaW5jbHVkZSBtZWRpYVRhYmxldCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgIH1cblxuICAgICYuYnV0dG9uIHtcbiAgICAgIC0tYnV0dG9uLWJnLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIC0tYnV0dG9uLWJnLWNvbG9yLWhvdmVyOiB2YXIoLS1hY2NlbnQtcHJpbWFyeS1kZWZhdWx0KTtcbiAgICAgIC0tYnV0dG9uLWljb24tY29sb3I6IHZhcigtLWFjY2VudC1wcmltYXJ5LWRlZmF1bHQpO1xuICAgICAgLS1idXR0b24taWNvbi1jb2xvci1ob3ZlcjogdmFyKC0tYWNjZW50LXByaW1hcnktZGVmYXVsdCk7XG4gICAgfVxuICB9XG5cbiAgJl9fbmF2Lm5hdiB7XG4gICAgQGluY2x1ZGUgbWVkaWFUYWJsZXQge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAxMDAlO1xuICAgICAgbGVmdDogMDtcblxuICAgICAgcGFkZGluZzogcmVtKDQwKSB2YXIoLS1jb250YWluZXItb2Zmc2V0KTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gdmFyKC0tZ2xvYmFsLWhlYWRlci1oZWlnaHQpKTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICBnYXA6IHJlbSg1MCk7XG5cbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLXdoaXRlKTtcbiAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgb3BhY2l0eTogMDtcblxuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS1hbmltYXRpb24tbWVkaXVtKSxcbiAgICAgICAgdmlzaWJpbGl0eSB2YXIoLS1hbmltYXRpb24tbWVkaXVtKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYU1vYmlsZSB7XG4gICAgICBwYWRkaW5nOiByZW0oMTUpIHZhcigtLWNvbnRhaW5lci1vZmZzZXQpIHJlbSg1MSk7XG4gICAgICBnYXA6IHJlbSgxNSk7XG4gICAgfVxuXG4gICAgJi5idXJnZXItbWVudSB7XG4gICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG5cbiAgICAmIC5uYXYge1xuICAgICAgJl9fbGlzdCB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhVGFibGV0IHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICAgIGdhcDogcmVtKDIwKTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhTW9iaWxlIHtcbiAgICAgICAgICBnYXA6IHJlbSgxNSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJl9faXRlbSB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhVGFibGV0IHtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtKDIwKTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCB2YXIoLS1zdHJva2UtbGlnaHQpO1xuXG4gICAgICAgICAgQGluY2x1ZGUgaG92ZXIge1xuICAgICAgICAgICAgJiAubmF2IHtcbiAgICAgICAgICAgICAgJl9fbGluayB7XG4gICAgICAgICAgICAgICAgJiAuaWNvbiB7XG4gICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHVuc2V0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICZfX2NoaWxkcmVuIHtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWFNb2JpbGUge1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0oMTUpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICZfX2xpbmsge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYVRhYmxldCB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1kYXJrLXByaW1hcnkpO1xuICAgICAgICAgIGZvbnQ6IHZhcigtLWZvbnQtY2FyZC10aXRsZSk7XG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IGNhbGMoLTFlbSAvIDEwMCk7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYU1vYmlsZSB7XG4gICAgICAgICAgZm9udDogdmFyKC0tZm9udC1jYXJkLXRpdGxlLUwpO1xuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiB1bnNldDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWFUYWJsZXQge1xuICAgICAgICAgICAgQGluY2x1ZGUgcHNldWRvKDEwLCBmYWxzZSwgdHJ1ZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJiAuaWNvbiB7XG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWFUYWJsZXQge1xuICAgICAgICAgICAgcmlnaHQ6IHJlbSgtOSk7XG4gICAgICAgICAgICBsZWZ0OiB1bnNldDtcblxuICAgICAgICAgICAgcGFkZGluZzogcmVtKDkpO1xuICAgICAgICAgICAgd2lkdGg6IHJlbSgzOCk7XG4gICAgICAgICAgICBoZWlnaHQ6IHJlbSgzOCk7XG5cbiAgICAgICAgICAgIGZpbGw6IHZhcigtLXRleHQtZGFyay10ZXJ0aWFyeSk7XG5cbiAgICAgICAgICAgIHRyYW5zaXRpb246IGZpbGwgdmFyKC0tYW5pbWF0aW9uLWRlZmF1bHQpLFxuICAgICAgICAgICAgICB0cmFuc2Zvcm0gdmFyKC0tYW5pbWF0aW9uLWRlZmF1bHQpO1xuXG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogYWxsO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhTW9iaWxlIHtcbiAgICAgICAgICAgIHdpZHRoOiByZW0oMzYpO1xuICAgICAgICAgICAgaGVpZ2h0OiByZW0oMzYpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYubW9yZS1hY3RpdmUge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWFUYWJsZXQge1xuICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1hY2NlbnQtcHJpbWFyeS1kZWZhdWx0KTtcblxuICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmX19jaGlsZHJlbiB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhVGFibGV0IHtcbiAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0oMTApO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogMDtcblxuICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuXG4gICAgICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgICAgICAgfVxuXG4gICAgICAgICYgLm5hdiB7XG4gICAgICAgICAgJl9faXRlbSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYVRhYmxldCB7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IHJlbSgxMCkgMDtcblxuICAgICAgICAgICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgICZfX2xpbmsge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWFUYWJsZXQge1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgIGZvbnQ6IHZhcigtLWZvbnQtYm9keS1YTC1tKTtcblxuICAgICAgICAgICAgICBAaW5jbHVkZSBob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQGltcG9ydCBcImhlYWRlci1zb2NpYWxcIixcblwibmF2XCI7XG4iLCJAbWl4aW4gbWVkaWFCaWdEZXNrdG9wIHtcbiAgQG1lZGlhICh3aWR0aCA+IDI1NjZweCkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBtZWRpYURlc2t0b3Age1xuICBAbWVkaWEgKHdpZHRoIDw9IDIwMDBweCkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBtZWRpYUxhcHRvcCB7XG4gIEBtZWRpYSAod2lkdGggPD0gMTUwMHB4KSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIG1lZGlhVGFibGV0IHtcbiAgQG1lZGlhICh3aWR0aCA8PSAxMjUwcHgpIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gbWVkaWFNb2JpbGUge1xuICBAbWVkaWEgKHdpZHRoIDw9IDYzMHB4KSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIG1lZGlhKCR3aWR0aCkge1xuICBAbWVkaWEgKHdpZHRoIDw9ICR3aWR0aCkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG4iLCJAbWl4aW4gaG92ZXIge1xuICBAbWVkaWEgKGFueS1ob3ZlcjogaG92ZXIpIHtcbiAgICAmOmhvdmVyIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuIiwiQG1peGluIHBzZXVkbygkcGl4ZWwsICRyZXBlYXQ6IGZhbHNlLCAkdHJhbnNwYXJlbnQ6IHRydWUpIHtcbiAgdG9wOiAtI3tyZW0oJHBpeGVsKX07XG4gIGxlZnQ6IC0je3JlbSgkcGl4ZWwpfTtcblxuICB3aWR0aDogY2FsYygxMDAlICsgI3tyZW0oJHBpeGVsKX0gKiAyKTtcbiAgaGVpZ2h0OiBjYWxjKDEwMCUgKyAje3JlbSgkcGl4ZWwpfSAqIDIpO1xuXG4gIEBpZiAkcmVwZWF0ID09IGZhbHNlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuXG4gICAgQGlmICR0cmFuc3BhcmVudCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWFCaWdEZXNrdG9wIHtcbiAgICAgIHRvcDogI3tiaWcoLSRwaXhlbCl9O1xuICAgICAgbGVmdDogI3tiaWcoLSRwaXhlbCl9O1xuICBcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAje2JpZygkcGl4ZWwpfSAqIDIpO1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgKyAje2JpZygkcGl4ZWwpfSAqIDIpO1xuICAgIH1cbiAgfVxuXG4gIEBjb250ZW50O1xufVxuIiwiLmhlYWRlci1zb2NpYWwge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGdhcDogcmVtKDEwKTtcblxuICBAaW5jbHVkZSBtZWRpYUJpZ0Rlc2t0b3Age1xuICAgIGdhcDogYmlnKDEwKTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhTGFwdG9wIHtcbiAgICBnYXA6IHJlbSg1KTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhVGFibGV0IHtcbiAgICBnYXA6IHJlbSgxMCk7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYU1vYmlsZSB7XG4gICAgZ2FwOiByZW0oOCk7XG4gIH1cblxuICAmX19pdGVtIHtcbiAgICAmX3NlYXJjaCB7XG4gICAgICAmIC5idXR0b24ge1xuICAgICAgICAtLWJ1dHRvbi1pY29uLWNvbG9yOiB2YXIoLS10ZXh0LWRhcmstcHJpbWFyeSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJl9mYXZvcml0ZXMge1xuICAgICAgJiAuYnV0dG9uIHtcbiAgICAgICAgLS1idXR0b24taWNvbi1jb2xvcjogdmFyKC0tYWNjZW50LXNlY29uZGFyeS1kZWZhdWx0KTtcbiAgICAgICAgLS1idXR0b24tYmctY29sb3I6IHZhcigtLWJnLXdoaXRlKTtcbiAgICAgICAgLS1idXR0b24tYmctY29sb3ItaG92ZXI6IHZhcigtLWFjY2VudC1zZWNvbmRhcnktZGVmYXVsdCk7XG4gICAgICB9XG4gICAgfVxuICAgIFxuICAgICZfdGV4dCB7XG4gICAgICBAaW5jbHVkZSBtZWRpYU1vYmlsZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICYgLmJ1dHRvbiB7XG4gICAgICAgIC0tYnV0dG9uLXRleHQtY29sb3I6IHZhcigtLWFjY2VudC1zZWNvbmRhcnktZGVmYXVsdCk7XG4gICAgICAgIC0tYnV0dG9uLXRleHQtY29sb3ItaG92ZXI6IHZhcigtLXRleHQtbGlnaHQtcHJpbWFyeSk7XG4gICAgICAgIC0tYnV0dG9uLWljb24tY29sb3I6IHZhcigtLXRleHQtZGFyay1wcmltYXJ5KTtcbiAgICAgICAgLS1idXR0b24taWNvbi1jb2xvci1ob3ZlcjogdmFyKC0tdGV4dC1saWdodC1wcmltYXJ5KTtcbiAgICAgICAgLS1idXR0b24tYmctY29sb3I6IHZhcigtLWJnLXdoaXRlKTtcbiAgICAgICAgLS1idXR0b24tYmctY29sb3ItaG92ZXI6IHZhcigtLWFjY2VudC1zZWNvbmRhcnktaG92ZXIpO1xuXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLXdoaXRlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX3Bob25lIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhVGFibGV0IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIH1cblxuICAgICAgJiAuYnV0dG9uIHtcbiAgICAgICAgLS1idXR0b24taWNvbi1jb2xvcjogdmFyKC0tdGV4dC1kYXJrLXByaW1hcnkpO1xuICAgICAgICAtLWJ1dHRvbi1pY29uLWNvbG9yLWhvdmVyOiB2YXIoLS10ZXh0LWxpZ2h0LXByaW1hcnkpO1xuICAgICAgICAtLWJ1dHRvbi1iZy1jb2xvcjogdmFyKC0tYmctd2hpdGUpO1xuICAgICAgICAtLWJ1dHRvbi1iZy1jb2xvci1ob3ZlcjogdmFyKC0tdGV4dC1kYXJrLXByaW1hcnkpO1xuXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLXdoaXRlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX3doYXRzYXBwLFxuICAgICZfdGcge1xuICAgICAgJiAuYnV0dG9uIHtcbiAgICAgICAgLS1idXR0b24taWNvbi1jb2xvcjogdmFyKC0tdGV4dC1saWdodC1wcmltYXJ5KTtcbiAgICAgICAgLS1idXR0b24taWNvbi1jb2xvci1ob3ZlcjogdmFyKC0tYWNjZW50LXByaW1hcnktZGVmYXVsdCk7XG4gICAgICAgIC0tYnV0dG9uLWJnLWNvbG9yOiB2YXIoLS1hY2NlbnQtcHJpbWFyeS1kZWZhdWx0KTtcbiAgICAgICAgLS1idXR0b24tYmctY29sb3ItaG92ZXI6IHZhcigtLWJnLXdoaXRlKTtcblxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idXR0b24tYmctY29sb3IpO1xuXG4gICAgICAgICZbZGF0YS1idXR0b24tYW5pbWF0aW9uXSB7XG4gICAgICAgICAgLS1idXR0b24taWNvbi1jb2xvci1ob3ZlcjogdmFyKC0tYWNjZW50LXByaW1hcnktZGVmYXVsdCk7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnV0dG9uLWJnLWNvbG9yKTtcblxuICAgICAgICAgICYgLmljb24ge1xuICAgICAgICAgICAgZmlsbDogdmFyKC0tYnV0dG9uLWljb24tY29sb3ItaG92ZXIpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICZfd2hhdHNhcHAge1xuICAgICAgLS1hY2NlbnQtcHJpbWFyeS1kZWZhdWx0OiAjNjBENjY5O1xuICAgIH1cblxuICAgICZfdGcge1xuICAgICAgLS1hY2NlbnQtcHJpbWFyeS1kZWZhdWx0OiAjMkFBQkVFO1xuICAgIH1cbiAgfVxufVxuIiwiLm5hdiB7XG4gIHBhZGRpbmc6IHJlbSgxNSkgMDtcbiAgd2lkdGg6IGZpdC1jb250ZW50O1xuXG4gIEBpbmNsdWRlIG1lZGlhQmlnRGVza3RvcCB7XG4gICAgcGFkZGluZzogYmlnKDE1KSAwO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWFEZXNrdG9wIHtcbiAgICBwYWRkaW5nOiByZW0oMTUpIDA7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYUxhcHRvcCB7XG4gICAgcGFkZGluZzogcmVtKDExKSAwO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWFUYWJsZXQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAmX19saXN0IHtcbiAgICBtYXJnaW46IDA7XG5cbiAgICBwYWRkaW5nOiAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICBnYXA6IHJlbSg1MCk7XG5cbiAgICBsaXN0LXN0eWxlOiBub25lO1xuXG4gICAgQGluY2x1ZGUgbWVkaWFCaWdEZXNrdG9wIHtcbiAgICAgIGdhcDogYmlnKDUwKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYURlc2t0b3Age1xuICAgICAgZ2FwOiByZW0oNDApO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhTGFwdG9wIHtcbiAgICAgIGdhcDogcmVtKDMwKTtcbiAgICB9XG4gIH1cblxuICAmX19pdGVtIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBAaW5jbHVkZSBob3ZlciB7XG4gICAgICAmID4gLm5hdiB7XG4gICAgICAgICZfX2xpbmsge1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1hY2NlbnQtcHJpbWFyeS1kZWZhdWx0KTtcblxuICAgICAgICAgICYgLmljb24ge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX19jaGlsZHJlbiB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDtcblxuICAgICAgICAgIGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1sYXJnZSk7XG4gICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuXG4gICAgICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICZfYWN0aXZlIHtcbiAgICAgICYgLm5hdl9fbGluayB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJiAuc2VsZWN0LWlucHV0IHtcbiAgICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgICAgJiAuc2VsZWN0LWN1cnJlbnRfX2ljb24ge1xuICAgICAgICAgIGZpbGw6IHZhcigtLWFjY2VudC1wcmltYXJ5LWRlZmF1bHQpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYgLnNlbGVjdC1jdXJyZW50IHtcbiAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIG1pbi1oZWlnaHQ6IHVuc2V0O1xuXG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgQGluY2x1ZGUgcHNldWRvKDI1LCBmYWxzZSwgdHJ1ZSk7XG5cbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYURlc2t0b3Age1xuICAgICAgICAgICAgQGluY2x1ZGUgcHNldWRvKDIwLCB0cnVlLCBmYWxzZSk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWFMYXB0b3Age1xuICAgICAgICAgICAgQGluY2x1ZGUgcHNldWRvKDE1LCB0cnVlLCBmYWxzZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJiAuaWNvbiB7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJiAuc2VsZWN0LWFuc3dlciB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuXG4gICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuXG4gICAgICAgICZfX2l0ZW0ge1xuICAgICAgICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJiAubmF2IHtcbiAgICAgICAgICAmX19pdGVtIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgJiAuaWNvbiB7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiB1bnNldDtcblxuICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgICZfX2xpbmsge1xuICAgICAgICAgICAgZ2FwOiByZW0oNSk7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhQmlnRGVza3RvcCB7XG4gICAgICAgICAgICAgIGdhcDogYmlnKDUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYUxhcHRvcCB7XG4gICAgICAgICAgICAgIGdhcDogcmVtKDQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgICZfX2NoaWxkcmVuIHtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGxlZnQ6IGNhbGMoMTAwJSArICN7cmVtKDEwKX0pO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYUJpZ0Rlc2t0b3Age1xuICAgICAgICAgICAgICBsZWZ0OiBjYWxjKDEwMCUgKyAje2JpZygxMCl9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX19saW5rIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWRhcmstcHJpbWFyeSk7XG4gICAgZm9udDogdmFyKC0tZm9udC1ib2R5LU0tbSk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS1hbmltYXRpb24tZGVmYXVsdCk7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgcHNldWRvKDI1LCBmYWxzZSwgdHJ1ZSk7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhRGVza3RvcCB7XG4gICAgICAgIEBpbmNsdWRlIHBzZXVkbygyMCwgdHJ1ZSwgZmFsc2UpO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtZWRpYUxhcHRvcCB7XG4gICAgICAgIEBpbmNsdWRlIHBzZXVkbygxNSwgdHJ1ZSwgZmFsc2UpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYgLmljb24ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogY2FsYygxMDAlICsgI3tyZW0oNSl9KTtcbiAgICAgIG1hcmdpbjogYXV0bztcblxuICAgICAgZmlsbDogdmFyKC0tYWNjZW50LXByaW1hcnktZGVmYXVsdCk7XG5cbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS1hbmltYXRpb24tZGVmYXVsdCk7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhQmlnRGVza3RvcCB7XG4gICAgICAgIGxlZnQ6IGNhbGMoMTAwJSArICN7YmlnKDUpfSk7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhRGVza3RvcCB7XG4gICAgICAgIHdpZHRoOiByZW0oMTgpO1xuICAgICAgICBoZWlnaHQ6IHJlbSgxOCk7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhTGFwdG9wIHtcbiAgICAgICAgd2lkdGg6IHJlbSgxNCk7XG4gICAgICAgIGhlaWdodDogcmVtKDE0KTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWVkaWFMYXB0b3Age1xuICAgICAgICBsZWZ0OiBjYWxjKDEwMCUgKyAje3JlbSg0KX0pO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZfX2NoaWxkcmVuIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiBjYWxjKDEwMCUgKyAje3JlbSgyMCl9KTtcbiAgICBsZWZ0OiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tdG9wOiByZW0oLTEwKTtcbiAgICBtYXgtaGVpZ2h0OiByZW0oNTE2KTtcbiAgICBcbiAgICBwYWRkaW5nOiByZW0oMTIpIDA7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy13aGl0ZSk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXRlcnRpYXJ5KTtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgb3BhY2l0eTogMDtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIG92ZXJzY3JvbGwtYmVoYXZpb3I6IGNvbnRhaW47XG5cbiAgICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IHZhcigtLWFuaW1hdGlvbi1tZWRpdW0pLFxuICAgICAgbWFyZ2luLXRvcCB2YXIoLS1hbmltYXRpb24tZGVmYXVsdCksXG4gICAgICBvcGFjaXR5IHZhcigtLWFuaW1hdGlvbi1kZWZhdWx0KSxcbiAgICAgIHZpc2liaWxpdHkgdmFyKC0tYW5pbWF0aW9uLWRlZmF1bHQpO1xuXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgXG4gICAgQGluY2x1ZGUgc2Nyb2xsYmFyKCk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYUJpZ0Rlc2t0b3Age1xuICAgICAgdG9wOiBjYWxjKDEwMCUgKyAje2JpZygyMCl9KTtcblxuICAgICAgcGFkZGluZzogYmlnKDEyKSAwO1xuICAgICAgbWF4LWhlaWdodDogYmlnKDUxNik7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWFEZXNrdG9wIHtcbiAgICAgIHRvcDogY2FsYygxMDAlICsgI3tyZW0oMTUpfSk7XG4gICAgICBcbiAgICAgIG1heC1oZWlnaHQ6IHJlbSgzNjIpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhTGFwdG9wIHtcbiAgICAgIHRvcDogY2FsYygxMDAlICsgI3tyZW0oMTApfSk7XG5cbiAgICAgIHBhZGRpbmc6IHJlbSgxMCkgMDtcbiAgICAgIG1heC1oZWlnaHQ6IHJlbSgyNjIpO1xuICAgIH1cblxuICAgICYgLm5hdiB7XG4gICAgICAmX19pdGVtIHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICB9XG5cbiAgICAgICZfX2xpbmsge1xuICAgICAgICBwYWRkaW5nOiByZW0oMTMpIHJlbSgyMCk7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWRhcmstcHJpbWFyeSk7XG4gICAgICAgIGZvbnQ6IHZhcigtLWZvbnQtYm9keS1NLXIpO1xuXG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLWFuaW1hdGlvbi1kZWZhdWx0KSxcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLWFuaW1hdGlvbi1kZWZhdWx0KTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYUJpZ0Rlc2t0b3Age1xuICAgICAgICAgIHBhZGRpbmc6IGJpZygxMykgYmlnKDIwKTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhTGFwdG9wIHtcbiAgICAgICAgICBwYWRkaW5nOiByZW0oMTAuNSkgcmVtKDE3KTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tYWNjZW50LXByaW1hcnktZGVmYXVsdCk7XG5cbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1saWdodCk7XG4gICAgICAgIH1cblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IHVuc2V0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5uYXYtbW9iaWxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGdhcDogcmVtKDUwKTtcblxuICBAaW5jbHVkZSBtZWRpYVRhYmxldCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhTW9iaWxlIHtcbiAgICBnYXA6IHJlbSgzMCk7XG4gIH1cblxuICAmX19zb2NpYWwge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IDFmcjtcblxuICAgIEBpbmNsdWRlIG1lZGlhTW9iaWxlIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICBnYXA6IHJlbSgxNSk7XG4gICAgfVxuICB9XG5cbiAgJl9faXRlbSB7XG4gICAgcGFkZGluZzogcmVtKDIwKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIGdhcDogcmVtKDUpO1xuXG4gICAgYm9yZGVyOiBzb2xpZCAxcHggdmFyKC0tc3Ryb2tlLWxpZ2h0KTtcblxuICAgIEBpbmNsdWRlIG1lZGlhTW9iaWxlIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogcmVtKDE1KTtcbiAgICAgIGdhcDogMDtcblxuICAgICAgYm9yZGVyLXdpZHRoOiAwIDAgMXB4IDA7XG4gICAgfVxuXG4gICAgJjpmaXJzdC1jaGlsZCxcbiAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZCgybisxKSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG5cbiAgICAgIGJvcmRlci13aWR0aDogMCAxcHggMXB4IDA7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhTW9iaWxlIHtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAwIDAgMXB4IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQoMm4rMikge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcblxuICAgICAgYm9yZGVyLXdpZHRoOiAwIDAgMXB4IDA7XG4gICAgfVxuICB9XG5cbiAgJl9fdGl0bGUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgY29sb3I6IHZhcigtLXRleHQtZGFyay1zZWNvbmRhcnkpO1xuICAgIGZvbnQ6IHZhcigtLWZvbnQtYm9keS1NLXIpO1xuICB9XG5cbiAgJl9fbGluayB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICBjb2xvcjogdmFyKC0tdGV4dC1kYXJrLXByaW1hcnkpO1xuICAgIGZvbnQ6IHZhcigtLWZvbnQtY2FyZC10aXRsZSk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IGNhbGMoLTFlbSAvIDEwMCk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tYW5pbWF0aW9uLWRlZmF1bHQpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWFNb2JpbGUge1xuICAgICAgZm9udDogdmFyKC0tZm9udC1jYXJkLXRpdGxlLUwpO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IHVuc2V0O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1hY2NlbnQtcHJpbWFyeS1kZWZhdWx0KTtcbiAgICB9XG4gIH1cblxuICAmX19vcmRlciB7XG4gICAgQGluY2x1ZGUgbWVkaWFNb2JpbGUge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG59XG5cbi5qcy1uYXYtb3ZlcmZsb3ctZGV0ZWN0IHtcbiAgb3BhY2l0eTogMCAhaW1wb3J0YW50O1xuXG4gICYgLm5hdl9fbGluayB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJiAuY29udGFjdHMtc2VsZWN0IHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG59XG4iLCJAbWl4aW4gc2Nyb2xsYmFyIHtcbiAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgIHdpZHRoOiByZW0oMTUpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWFCaWdEZXNrdG9wIHtcbiAgICAgIHdpZHRoOiBiaWcoMTUpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1saWdodCk7XG4gICAgYm9yZGVyOiBzb2xpZCA1cHggdmFyKC0tYmctd2hpdGUpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWFCaWdEZXNrdG9wIHtcbiAgICAgIGJvcmRlci13aWR0aDogYmlnKDUpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zdHJva2UtbGlnaHQpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1pbmZpbml0eSk7XG4gICAgYm9yZGVyOiA1cHggc29saWQgdmFyKC0tYmctd2hpdGUpO1xuXG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgQGluY2x1ZGUgbWVkaWFCaWdEZXNrdG9wIHtcbiAgICAgIGJvcmRlci13aWR0aDogYmlnKDUpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWFjY2VudC1wcmltYXJ5LWRlZmF1bHQpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2Nyb2xsYmFySG9yaXpvbnRhbCB7XG4gICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICBoZWlnaHQ6IHJlbSgxNSk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYUJpZ0Rlc2t0b3Age1xuICAgICAgaGVpZ2h0OiBiaWcoMTUpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1saWdodCk7XG4gICAgYm9yZGVyOiBzb2xpZCA1cHggdmFyKC0tYmctd2hpdGUpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWFCaWdEZXNrdG9wIHtcbiAgICAgIGJvcmRlci13aWR0aDogYmlnKDUpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zdHJva2UtbGlnaHQpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1pbmZpbml0eSk7XG4gICAgYm9yZGVyOiA1cHggc29saWQgdmFyKC0tYmctd2hpdGUpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWFCaWdEZXNrdG9wIHtcbiAgICAgIGJvcmRlci13aWR0aDogYmlnKDUpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWFjY2VudC1wcmltYXJ5LWRlZmF1bHQpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2Nyb2xsYmFyRGVsZXRlIHtcbiAgc2Nyb2xsYmFyLXdpZHRoOiBub25lO1xuXG4gICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAmOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuIl19 */
