.catalogs-section {
  position: relative;
}

#constructor_block_4.catalogs-section {
  overflow: hidden;
  min-height: 795px;
  padding-top: 120px;
  padding-bottom: 120px;
}

#constructor_block_4.catalogs-section::before,
#constructor_block_4.catalogs-section::after {
  content: "";
  position: absolute;
  z-index: 0;
  display: block;
  pointer-events: none;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100% 100%;
}

#constructor_block_4.catalogs-section::before {
  top: -106px;
  left: -350px;
  width: 826px;
  height: 402px;
  background-image: url("/content/targus/catalog/catalog-bg-left-custom-v1.svg");
}

#constructor_block_4.catalogs-section::after {
  right: -71px;
  bottom: 0;
  width: 1066px;
  height: 518px;
  background-image: url("/content/targus/catalog/catalog-bg-right-figma.svg");
}

#constructor_block_4.catalogs-section .container,
#constructor_block_4.catalogs-section .section__head,
#constructor_block_4.catalogs-section .section__content,
#constructor_block_4.catalogs-section .swiper {
  position: relative;
  z-index: 1;
}

#constructor_block_4.catalogs-section .section__head {
  margin-bottom: 0;
}

#constructor_block_4.catalogs-section .section__menu {
  gap: 20px;
}

#constructor_block_4.catalogs-section .swiper-navigation {
  width: 120px;
  height: 60px;
}

#constructor_block_4.catalogs-section .swiper-navigation__button {
  width: 60px;
  height: 60px;
}

#constructor_block_4.catalogs-section .section__more.button_secondary {
  width: 215px;
  min-height: 60px;
}

#constructor_block_4.catalogs-section .swiper-slide {
  height: auto;
}

.catalogs-section__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}

.catalogs-section__grid .catalog-card {
  max-width: none;
}

.catalog-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(150px, 1fr);
  gap: 29px;
  min-height: 433px;
  padding: 40px 31px;
  border: 1px solid rgba(2, 27, 48, 0.25);
  border-radius: 16px;
  background: #fff;
  color: #121b21;
  text-decoration: none;
  -webkit-box-shadow: 0 18px 48px rgba(9, 48, 78, 0.04);
          box-shadow: 0 18px 48px rgba(9, 48, 78, 0.04);
  -webkit-transition: border-color 0.2s ease, -webkit-box-shadow 0.2s ease, -webkit-transform 0.2s ease;
  transition: border-color 0.2s ease, -webkit-box-shadow 0.2s ease, -webkit-transform 0.2s ease;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease, -webkit-box-shadow 0.2s ease, -webkit-transform 0.2s ease;
  height: 100%;
}

.catalog-card:hover {
  border-color: #40ade3;
  -webkit-box-shadow: 0 24px 62px rgba(9, 48, 78, 0.09);
          box-shadow: 0 24px 62px rgba(9, 48, 78, 0.09);
  -webkit-transform: translateY(-2px);
      -ms-transform: translateY(-2px);
          transform: translateY(-2px);
}

.catalog-card__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  min-width: 0;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 28px;
}

.catalog-card__brand {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  min-width: 0;
  -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;
  gap: 10px;
}

.catalog-card__logo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  height: 65px;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  margin-bottom: 10px;
}

.catalog-card__logo img {
  display: block;
  width: auto;
  max-width: 232px;
  max-height: 65px;
  -o-object-fit: contain;
     object-fit: contain;
}

.catalog-card__title {
  font-size: 24px;
  line-height: 1.5;
  color: #121b21;
}

.catalog-card__description {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0;
  color: rgba(18, 27, 33, 0.8);
}

.catalog-card__button.button {
  width: 100%;
  min-height: 60px;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  border-radius: 8px;
  background-color: #40ade3 !important;
  color: #fff !important;
  text-transform: uppercase;
}

.catalog-card__button.button:hover {
  background-color: #008cd1 !important;
}

.catalog-card__image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  min-width: 0;
  height: 353px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 0;
  overflow: hidden;
  border: 1px solid rgba(2, 27, 48, 0.1);
  border-radius: 8px;
  background: #f7f9fb;
}

.catalog-card__image img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

#constructor_block_3.cta-section {
  background-image: linear-gradient(49deg, #b7d2e9 31%, #e0edf8 70%), linear-gradient(90deg, #fff 0%, #fff 100%) !important;
}

#constructor_block_3 .section__title .h2,
#constructor_block_3 .section__title {
  max-width: 705px;
}

@media (max-width: 1439px) {
  #constructor_block_4.catalogs-section {
    min-height: auto;
  }
  #constructor_block_4.catalogs-section::before {
    left: -520px;
  }
  #constructor_block_4.catalogs-section::after {
    right: -420px;
    bottom: 40px;
  }
}

@media (max-width: 1160px) {
  .catalogs-section__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767px) {
  .catalogs-section__grid {
    grid-template-columns: 1fr;
  }
  #constructor_block_4.catalogs-section {
    padding-top: 70px;
    padding-bottom: 70px;
  }
  #constructor_block_4.catalogs-section .section__head {
    margin-bottom: 0;
  }
  #constructor_block_4.catalogs-section .section__menu {
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
  }
  #constructor_block_4.catalogs-section .section__more.button_secondary {
    width: auto;
  }
  .catalog-card {
    grid-template-columns: minmax(0, 1fr);
    min-height: 0;
    padding: 24px;
  }
  .catalog-card__image {
    height: auto;
    aspect-ratio: 220/310;
  }
  #constructor_block_4.catalogs-section::before {
    top: -80px;
    left: -560px;
    width: 760px;
    height: 370px;
  }
  #constructor_block_4.catalogs-section::after {
    right: -610px;
    bottom: 60px;
    width: 880px;
    height: 428px;
  }
}

/* codex-catalog-card-adaptive-start */

.catalog-card {
  grid-template-columns: minmax(0, 1fr) minmax(7.5rem, 0.86fr);
  gap: clamp(1rem, 1.8vw, 1.8125rem);
  padding: clamp(1.5rem, 2.1vw, 2.5rem) clamp(1.25rem, 1.7vw, 1.9375rem);
  overflow: hidden;
}

.catalog-card__content,
.catalog-card__brand {
  min-width: 0;
}

.catalog-card__logo {
  height: clamp(2.625rem, 4vw, 4.0625rem);
}

.catalog-card__logo img {
  max-width: min(100%, 14.5rem);
  max-height: clamp(2.625rem, 4vw, 4.0625rem);
}

.catalog-card__title {
  font-size: clamp(1.125rem, 1.25vw, 1.5rem);
  line-height: 1.35;
}

.catalog-card__description {
  font-size: clamp(0.9375rem, 1vw, 1.125rem);
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.catalog-card__button.button {
  min-height: clamp(3rem, 3.2vw, 3.75rem);
}

.catalog-card__image {
  width: 100%;
  max-width: 13.75rem;
  height: auto;
  aspect-ratio: 220/310;
  -ms-flex-item-align: center;
      align-self: center;
  justify-self: end;
  overflow: visible;
  background: transparent;
}

.catalog-card__image img {
  width: 100%;
  height: auto;
  max-height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

@media (max-width: 1439px) and (min-width: 1161px) {
  .catalog-card {
    grid-template-columns: minmax(0, 1fr) minmax(6.875rem, 0.72fr);
  }
  .catalog-card__image {
    max-width: 11.25rem;
  }
}

@media (max-width: 1160px) {
  .catalogs-section__grid {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(20rem, 72vw);
    grid-template-columns: none;
    gap: 1.25rem;
    overflow-x: auto;
    overflow-y: hidden;
    padding-bottom: 0.625rem;
    -webkit-overflow-scrolling: touch;
    -ms-scroll-snap-type: x proximity;
        scroll-snap-type: x proximity;
  }
  .catalogs-section__grid .catalog-card,
  .catalogs-section .swiper-slide {
    scroll-snap-align: start;
  }
  .catalog-card {
    grid-template-columns: minmax(0, 1fr) minmax(7rem, 0.72fr);
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .catalogs-section__grid {
    grid-auto-columns: minmax(17.5rem, 84vw);
    grid-template-columns: none;
  }
  .catalog-card {
    grid-template-columns: minmax(0, 1fr) minmax(6.25rem, 0.68fr);
    min-height: 24rem;
    padding: 1.5rem;
  }
  .catalog-card__image {
    max-width: 9.375rem;
    aspect-ratio: 220/310;
  }
}

@media (max-width: 480px) {
  .catalog-card {
    grid-template-columns: minmax(0, 1fr) minmax(5.625rem, 0.62fr);
    gap: 0.875rem;
  }
  .catalog-card__button.button {
    min-height: 2.875rem;
  }
}

/* codex-catalog-card-adaptive-end */

/* codex-catalog-card-height-adaptive-start */

.catalog-card {
  min-height: clamp(20.5rem, 25.5vw, 27.0625rem);
}

@media (max-width: 1439px) and (min-width: 1161px) {
  .catalog-card {
    min-height: clamp(19.5rem, 24vw, 23.5rem);
  }
  .catalog-card__content {
    gap: clamp(1rem, 1.7vw, 1.5rem);
  }
  .catalog-card__brand {
    gap: 0.5rem;
  }
}

@media (max-width: 1160px) {
  .catalog-card {
    min-height: clamp(18.75rem, 35vw, 21.25rem);
  }
  .catalog-card__content {
    gap: 1.125rem;
  }
}

@media (max-width: 767px) {
  .catalog-card {
    min-height: clamp(17.5rem, 78vw, 20rem);
    padding-block: 1.25rem;
  }
  .catalog-card__content {
    gap: 1rem;
  }
  .catalog-card__brand {
    gap: 0.5rem;
  }
}

@media (max-width: 480px) {
  .catalog-card {
    min-height: clamp(16.875rem, 82vw, 19rem);
    padding-block: 1.125rem;
  }
}

/* codex-catalog-card-height-adaptive-end */

/* codex-catalog-card-button-size-start */

.catalog-card {
  grid-template-columns: minmax(10.5rem, 1fr) minmax(7.5rem, 0.82fr);
}

.catalog-card__content {
  min-width: 10.5rem;
}

.catalog-card__button.button {
  width: 100%;
  min-width: 0;
  min-height: var(--button-min-height) !important;
  padding-top: calc(var(--button-padding-top) - var(--button-border-width));
  padding-bottom: calc(var(--button-padding-bottom) - var(--button-border-width));
  padding-left: calc(var(--button-padding-horizontal) - var(--button-border-width));
  padding-right: calc(var(--button-padding-horizontal) - var(--button-border-width));
}

@media (max-width: 1439px) and (min-width: 1161px) {
  .catalog-card {
    grid-template-columns: minmax(10.25rem, 1fr) minmax(6.75rem, 0.72fr);
  }
  .catalog-card__content {
    min-width: 10.25rem;
  }
}

@media (max-width: 1160px) {
  .catalogs-section__grid {
    grid-auto-columns: minmax(22rem, 72vw);
  }
  .catalog-card {
    grid-template-columns: minmax(10.25rem, 1fr) minmax(6.75rem, 0.72fr);
  }
  .catalog-card__content {
    min-width: 10.25rem;
  }
}

@media (max-width: 767px) {
  .catalogs-section__grid {
    grid-auto-columns: minmax(20.5rem, 84vw);
  }
  .catalog-card {
    grid-template-columns: minmax(9.75rem, 1fr) minmax(5.75rem, 0.62fr);
  }
  .catalog-card__content {
    min-width: 9.75rem;
  }
}

/* codex-catalog-card-button-size-end */

/* codex-catalog-bg-adaptive-start */

#constructor_block_4.catalogs-section {
  overflow: hidden;
}

#constructor_block_4.catalogs-section::before {
  top: clamp(-2rem, -2.4vw, -0.5rem);
  left: clamp(-3.5rem, -3.6vw, -0.75rem);
  width: clamp(14rem, 31vw, 32rem);
  height: clamp(6.8125rem, 15.1vw, 15.5625rem);
}

#constructor_block_4.catalogs-section::after {
  right: clamp(-5.5rem, -5.4vw, -1rem);
  bottom: -1px;
  width: clamp(26rem, 58vw, 66.625rem);
  height: clamp(12.625rem, 28.2vw, 32.375rem);
}

@media (max-width: 1160px) {
  #constructor_block_4.catalogs-section::before {
    top: clamp(-1.5rem, -2.8vw, -0.5rem);
    left: clamp(-3rem, -4vw, -0.75rem);
    width: clamp(11rem, 33vw, 22rem);
    height: clamp(5.375rem, 16.1vw, 10.6875rem);
  }
  #constructor_block_4.catalogs-section::after {
    right: clamp(-4.25rem, -6vw, -0.75rem);
    bottom: -1px;
    width: clamp(20rem, 62vw, 42rem);
    height: clamp(9.75rem, 30.1vw, 20.4375rem);
  }
}

@media (max-width: 767px) {
  #constructor_block_4.catalogs-section::before {
    top: -0.75rem;
    left: -2.25rem;
    width: clamp(9rem, 45vw, 15rem);
    height: clamp(4.375rem, 21.9vw, 7.3125rem);
  }
  #constructor_block_4.catalogs-section::after {
    right: -3.25rem;
    bottom: -1px;
    width: clamp(17rem, 74vw, 24rem);
    height: clamp(8.25rem, 36vw, 11.6875rem);
  }
}

/* codex-catalog-bg-adaptive-end */

/* codex-catalog-mobile-width-start */

@media (max-width: 767px) {
  .catalogs-section__grid {
    grid-auto-columns: minmax(23.75rem, 92vw);
  }
  .catalog-card {
    grid-template-columns: minmax(10.5rem, 1fr) minmax(6.75rem, 0.7fr);
    gap: 1.125rem;
    padding-inline: 1.5rem;
  }
  .catalog-card__content {
    min-width: 10.5rem;
  }
  .catalog-card__image {
    min-width: 6.25rem;
    max-width: 8.25rem;
    justify-self: end;
  }
}

@media (max-width: 420px) {
  .catalogs-section__grid {
    grid-auto-columns: minmax(22.5rem, 94vw);
  }
  .catalog-card {
    grid-template-columns: minmax(10rem, 1fr) minmax(6.25rem, 0.65fr);
    gap: 1rem;
    padding-inline: 1.25rem;
  }
  .catalog-card__content {
    min-width: 10rem;
  }
  .catalog-card__image {
    min-width: 6rem;
    max-width: 7.75rem;
  }
}

/* codex-catalog-mobile-width-end */

/* codex-catalog-mobile-swiper-width-start */

@media (max-width: 767px) {
  .catalogs-section .swiper-slide {
    width: 23.75rem !important;
    min-width: 23.75rem;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 23.75rem;
            flex: 0 0 23.75rem;
  }
  .catalogs-section .swiper-slide .catalog-card {
    width: 100%;
  }
}

@media (max-width: 420px) {
  .catalogs-section .swiper-slide {
    width: 22.5rem !important;
    min-width: 22.5rem;
    -ms-flex-preferred-size: 22.5rem;
        flex-basis: 22.5rem;
  }
}

/* codex-catalog-mobile-swiper-width-end */

/* codex-catalog-mobile-peek-fit-start */

@media (max-width: 767px) {
  .catalogs-section__grid {
    grid-auto-columns: minmax(18.75rem, calc(100vw - 2.5rem));
  }
  .catalogs-section .swiper-slide {
    width: calc(100vw - 2.5rem) !important;
    max-width: 21rem;
    min-width: 18.75rem;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100vw - 2.5rem);
            flex: 0 0 calc(100vw - 2.5rem);
  }
  .catalog-card,
  .catalogs-section .swiper-slide .catalog-card {
    width: 100%;
    grid-template-columns: minmax(8.5rem, 1fr) minmax(4.75rem, 5.75rem);
    gap: 0.75rem;
    padding: 1.25rem;
  }
  .catalog-card__content {
    min-width: 8.5rem;
  }
  .catalog-card__image {
    min-width: 4.75rem;
    max-width: 5.75rem;
    justify-self: end;
    -ms-flex-item-align: center;
        align-self: center;
  }
  .catalog-card__button.button {
    min-height: var(--button-min-height) !important;
  }
}

@media (max-width: 380px) {
  .catalogs-section .swiper-slide {
    max-width: none;
  }
  .catalog-card,
  .catalogs-section .swiper-slide .catalog-card {
    grid-template-columns: minmax(8rem, 1fr) minmax(4.25rem, 5rem);
    gap: 0.625rem;
    padding: 1.25rem;
  }
  .catalog-card__content {
    min-width: 8rem;
  }
  .catalog-card__image {
    min-width: 4.25rem;
    max-width: 5rem;
  }
}

/* codex-catalog-mobile-peek-fit-end */

/* codex-catalog-page-listing-start */

.page__body_catalog .catalogs-section__grid {
  overflow: visible;
}

.page__body_catalog .catalog-card.is-hidden {
  display: none !important;
}

.page__body_catalog .catalogs-section__show-more {
  margin: 2.5rem auto 0;
}

@media (max-width: 1160px) {
  .page__body_catalog .catalogs-section__grid {
    display: grid;
    grid-auto-flow: row;
    grid-auto-columns: initial;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.25rem;
    overflow: visible;
    padding-bottom: 0;
    -ms-scroll-snap-type: none;
        scroll-snap-type: none;
  }
  .page__body_catalog .catalog-card,
  .page__body_catalog .catalogs-section__grid .catalog-card {
    width: 100%;
    min-width: 0;
    scroll-snap-align: none;
  }
}

@media (max-width: 630px) {
  .page__body_catalog .catalogs-section__grid {
    grid-template-columns: 1fr;
    gap: 1.25rem;
  }
  .page__body_catalog .catalog-card,
  .page__body_catalog .catalogs-section__grid .catalog-card {
    grid-template-columns: minmax(8.5rem, 1fr) minmax(4.75rem, 5.75rem);
    padding: 1.25rem;
  }
  .page__body_catalog .catalogs-section__show-more {
    margin-top: 1.5rem;
  }
}

/* codex-catalog-page-listing-end */

/* codex-catalog-show-more-hidden-start */

.page__body_catalog .catalogs-section__show-more[hidden],
.page__body_catalog .catalogs-section__show-more.is-hidden {
  display: none !important;
}

/* codex-catalog-show-more-hidden-end */

/* codex-home-catalog-mobile-card-width-start */

@media (max-width: 767px) {
  #constructor_block_4.catalogs-section .swiper-slide {
    width: min(86vw, 18rem) !important;
    min-width: min(86vw, 18rem);
    max-width: 18rem;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 min(86vw, 18rem);
            flex: 0 0 min(86vw, 18rem);
  }
  #constructor_block_4.catalogs-section .catalog-card,
  #constructor_block_4.catalogs-section .swiper-slide .catalog-card {
    grid-template-columns: minmax(9.25rem, 1fr) minmax(4.5rem, 5.25rem);
    gap: 0.75rem;
    padding: 1.25rem;
  }
  #constructor_block_4.catalogs-section .catalog-card__content {
    min-width: 9.25rem;
  }
  #constructor_block_4.catalogs-section .catalog-card__image {
    min-width: 4.5rem;
    max-width: 5.25rem;
  }
  #constructor_block_4.catalogs-section .catalog-card__button.button {
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    min-width: 8rem;
    max-width: 100%;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    white-space: nowrap;
  }
}

@media (max-width: 360px) {
  #constructor_block_4.catalogs-section .swiper-slide {
    width: min(88vw, 17.25rem) !important;
    min-width: min(88vw, 17.25rem);
    max-width: 17.25rem;
    -ms-flex-preferred-size: min(88vw, 17.25rem);
        flex-basis: min(88vw, 17.25rem);
  }
  #constructor_block_4.catalogs-section .catalog-card,
  #constructor_block_4.catalogs-section .swiper-slide .catalog-card {
    grid-template-columns: minmax(9rem, 1fr) minmax(4.25rem, 4.75rem);
    gap: 0.625rem;
  }
  #constructor_block_4.catalogs-section .catalog-card__content {
    min-width: 9rem;
  }
  #constructor_block_4.catalogs-section .catalog-card__image {
    min-width: 4.25rem;
    max-width: 4.75rem;
  }
}

/* codex-home-catalog-mobile-card-width-end */

/* codex-home-catalog-mobile-utp-width-start */

@media (max-width: 767px) {
  #constructor_block_4.catalogs-section .swiper-slide {
    width: min(290px, 100vw - 30px) !important;
    min-width: min(290px, 100vw - 30px) !important;
    max-width: min(290px, 100vw - 30px) !important;
    -webkit-box-flex: 0 !important;
        -ms-flex: 0 0 min(290px, 100vw - 30px) !important;
            flex: 0 0 min(290px, 100vw - 30px) !important;
  }
  #constructor_block_4.catalogs-section .catalog-card,
  #constructor_block_4.catalogs-section .swiper-slide .catalog-card {
    grid-template-columns: minmax(9.25rem, 1fr) minmax(4.5rem, 5.25rem);
  }
  #constructor_block_4.catalogs-section .catalog-card__image {
    min-width: 4.5rem;
    max-width: 5.25rem;
  }
}

/* codex-home-catalog-mobile-utp-width-end */

/* codex-home-catalog-mobile-card-width-v2 */

@media (max-width: 767px) {
  #constructor_block_4.catalogs-section .swiper-slide {
    width: min(92vw, 22rem) !important;
    min-width: min(92vw, 22rem) !important;
    max-width: min(92vw, 22rem) !important;
    -webkit-box-flex: 0 !important;
        -ms-flex: 0 0 min(92vw, 22rem) !important;
            flex: 0 0 min(92vw, 22rem) !important;
  }
  #constructor_block_4.catalogs-section .catalog-card {
    grid-template-columns: minmax(10.25rem, 1fr) minmax(4.75rem, 5.25rem);
    gap: 0.875rem;
    width: 100%;
    min-height: 17.25rem;
    padding: 1.25rem;
  }
  #constructor_block_4.catalogs-section .catalog-card__content {
    min-width: 10.25rem;
  }
  #constructor_block_4.catalogs-section .catalog-card__button.button {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    min-width: 8.5rem;
    max-width: 100%;
    white-space: nowrap;
  }
  #constructor_block_4.catalogs-section .catalog-card__image {
    min-width: 4.75rem;
    max-width: 5.25rem;
    justify-self: end;
  }
}

@media (max-width: 420px) {
  #constructor_block_4.catalogs-section .swiper-slide {
    width: calc(100vw - 1.25rem) !important;
    min-width: calc(100vw - 1.25rem) !important;
    max-width: calc(100vw - 1.25rem) !important;
    -webkit-box-flex: 0 !important;
        -ms-flex: 0 0 calc(100vw - 1.25rem) !important;
            flex: 0 0 calc(100vw - 1.25rem) !important;
  }
  #constructor_block_4.catalogs-section .catalog-card {
    grid-template-columns: minmax(9.25rem, 1fr) minmax(4.25rem, 4.75rem);
    gap: 0.625rem;
    padding: 1.25rem;
  }
  #constructor_block_4.catalogs-section .catalog-card__content {
    min-width: 9.25rem;
  }
  #constructor_block_4.catalogs-section .catalog-card__image {
    min-width: 4.25rem;
    max-width: 4.75rem;
  }
}

/* /codex-home-catalog-mobile-card-width-v2 */

/* codex-home-catalog-mobile-peek-v1 */

@media (max-width: 767px) {
  #constructor_block_4.catalogs-section .swiper-slide {
    width: clamp(17rem, 100vw - 4.5rem, 22rem) !important;
    min-width: clamp(17rem, 100vw - 4.5rem, 22rem) !important;
    max-width: clamp(17rem, 100vw - 4.5rem, 22rem) !important;
    -webkit-box-flex: 0 !important;
        -ms-flex: 0 0 clamp(17rem, 100vw - 4.5rem, 22rem) !important;
            flex: 0 0 clamp(17rem, 100vw - 4.5rem, 22rem) !important;
  }
  #constructor_block_4.catalogs-section .catalog-card,
  #constructor_block_4.catalogs-section .swiper-slide .catalog-card {
    grid-template-columns: minmax(8.5rem, 1fr) minmax(4rem, 4.75rem);
    gap: 0.625rem;
    min-height: 16.25rem;
    padding: 1.25rem;
  }
  #constructor_block_4.catalogs-section .catalog-card__content {
    min-width: 8.5rem;
  }
  #constructor_block_4.catalogs-section .catalog-card__button.button {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    min-width: 8.25rem;
    max-width: 100%;
    white-space: nowrap;
  }
  #constructor_block_4.catalogs-section .catalog-card__image {
    min-width: 4rem;
    max-width: 4.75rem;
    justify-self: end;
  }
}

@media (max-width: 360px) {
  #constructor_block_4.catalogs-section .swiper-slide {
    width: clamp(16.5rem, 100vw - 3.5rem, 18rem) !important;
    min-width: clamp(16.5rem, 100vw - 3.5rem, 18rem) !important;
    max-width: clamp(16.5rem, 100vw - 3.5rem, 18rem) !important;
    -ms-flex-preferred-size: clamp(16.5rem, 100vw - 3.5rem, 18rem) !important;
        flex-basis: clamp(16.5rem, 100vw - 3.5rem, 18rem) !important;
  }
  #constructor_block_4.catalogs-section .catalog-card,
  #constructor_block_4.catalogs-section .swiper-slide .catalog-card {
    grid-template-columns: minmax(8.25rem, 1fr) minmax(3.75rem, 4.25rem);
    gap: 0.5rem;
  }
  #constructor_block_4.catalogs-section .catalog-card__content {
    min-width: 8.25rem;
  }
  #constructor_block_4.catalogs-section .catalog-card__image {
    min-width: 3.75rem;
    max-width: 4.25rem;
  }
}

/* /codex-home-catalog-mobile-peek-v1 */

/* codex-home-catalog-small-mobile-fit-v1 */

@media (max-width: 375px) {
  #constructor_block_4.catalogs-section .catalog-card,
  #constructor_block_4.catalogs-section .swiper-slide .catalog-card {
    grid-template-columns: minmax(8.5rem, 1fr) minmax(3.25rem, 3.75rem);
    gap: 0.5rem;
  }
  #constructor_block_4.catalogs-section .catalog-card__content {
    min-width: 8.5rem;
  }
  #constructor_block_4.catalogs-section .catalog-card__image {
    min-width: 3.25rem;
    max-width: 3.75rem;
  }
}

@media (max-width: 340px) {
  #constructor_block_4.catalogs-section .swiper-slide {
    width: clamp(16.75rem, 100vw - 2.75rem, 17.5rem) !important;
    min-width: clamp(16.75rem, 100vw - 2.75rem, 17.5rem) !important;
    max-width: clamp(16.75rem, 100vw - 2.75rem, 17.5rem) !important;
    -ms-flex-preferred-size: clamp(16.75rem, 100vw - 2.75rem, 17.5rem) !important;
        flex-basis: clamp(16.75rem, 100vw - 2.75rem, 17.5rem) !important;
  }
  #constructor_block_4.catalogs-section .catalog-card,
  #constructor_block_4.catalogs-section .swiper-slide .catalog-card {
    grid-template-columns: minmax(8.5rem, 1fr) minmax(3rem, 3.5rem);
    gap: 0.4375rem;
    padding-inline: 1rem;
  }
  #constructor_block_4.catalogs-section .catalog-card__image {
    min-width: 3rem;
    max-width: 3.5rem;
  }
}

/* /codex-home-catalog-small-mobile-fit-v1 */

/* codex-home-catalog-tablet-fit-start */

@media (min-width: 768px) and (max-width: 1160px) {
  #constructor_block_4.catalogs-section .catalogs-section__slider {
    overflow: visible;
  }
  #constructor_block_4.catalogs-section .swiper-wrapper {
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
  }
  #constructor_block_4.catalogs-section .swiper-slide {
    width: calc(100% - 40px) !important;
    max-width: 920px;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% - 40px);
            flex: 0 0 calc(100% - 40px);
    height: auto;
  }
  #constructor_block_4.catalogs-section .catalog-card,
  #constructor_block_4.catalogs-section .swiper-slide .catalog-card {
    width: 100%;
    min-height: clamp(340px, 34vw, 400px);
    grid-template-columns: minmax(240px, 1fr) minmax(210px, 300px);
    gap: clamp(20px, 2.8vw, 32px);
    padding: clamp(28px, 3vw, 40px);
  }
  #constructor_block_4.catalogs-section .catalog-card__content {
    min-width: 240px;
  }
  #constructor_block_4.catalogs-section .catalog-card__button.button {
    width: min(100%, 240px);
  }
  #constructor_block_4.catalogs-section .catalog-card__image {
    width: 100%;
    min-width: 210px;
    max-width: 300px;
    height: clamp(260px, 28vw, 330px);
    justify-self: end;
    -ms-flex-item-align: center;
        align-self: center;
  }
  #constructor_block_4.catalogs-section .catalog-card__image img {
    -o-object-fit: contain;
       object-fit: contain;
  }
}

@media (min-width: 768px) and (max-width: 860px) {
  #constructor_block_4.catalogs-section .swiper-slide {
    width: calc(100% - 28px) !important;
    -ms-flex-preferred-size: calc(100% - 28px);
        flex-basis: calc(100% - 28px);
  }
  #constructor_block_4.catalogs-section .catalog-card,
  #constructor_block_4.catalogs-section .swiper-slide .catalog-card {
    grid-template-columns: minmax(220px, 1fr) minmax(180px, 240px);
    min-height: 330px;
    padding: 28px;
  }
  #constructor_block_4.catalogs-section .catalog-card__content {
    min-width: 220px;
  }
  #constructor_block_4.catalogs-section .catalog-card__image {
    min-width: 180px;
    max-width: 240px;
    height: 280px;
  }
}

/* codex-home-catalog-tablet-fit-end */

/* codex-home-catalog-tablet-scroll-fit-v2-start */

@media (min-width: 767px) and (max-width: 1160px) {
  #constructor_block_4.catalogs-section .swiper {
    overflow: hidden;
    padding: 0 0 0.625rem;
    -webkit-overflow-scrolling: touch;
    -ms-scroll-snap-type: x proximity;
        scroll-snap-type: x proximity;
  }
  #constructor_block_4.catalogs-section .swiper-wrapper {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    gap: 0;
  }
  #constructor_block_4.catalogs-section .swiper-slide {
    width: clamp(30rem, 62vw, 34rem) !important;
    min-width: clamp(30rem, 62vw, 34rem) !important;
    max-width: clamp(30rem, 62vw, 34rem) !important;
    -webkit-box-flex: 0 !important;
        -ms-flex: 0 0 clamp(30rem, 62vw, 34rem) !important;
            flex: 0 0 clamp(30rem, 62vw, 34rem) !important;
    margin-right: 0 !important;
    scroll-snap-align: start;
  }
  #constructor_block_4.catalogs-section .catalog-card,
  #constructor_block_4.catalogs-section .swiper-slide .catalog-card {
    width: 100%;
    min-width: 0;
    grid-template-columns: minmax(12.75rem, 1fr) minmax(8.5rem, 10rem);
    gap: clamp(1rem, 2vw, 1.5rem);
    min-height: clamp(20.5rem, 36vw, 25rem);
    padding: clamp(1.5rem, 2.8vw, 2rem);
    overflow: visible;
  }
  #constructor_block_4.catalogs-section .catalog-card__content {
    min-width: 12.75rem;
  }
  #constructor_block_4.catalogs-section .catalog-card__button.button {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    min-width: 11.875rem;
    max-width: 100%;
    white-space: nowrap;
  }
  #constructor_block_4.catalogs-section .catalog-card__image {
    width: 100%;
    min-width: 8.5rem;
    max-width: 10rem;
    justify-self: end;
    -ms-flex-item-align: center;
        align-self: center;
    overflow: visible;
  }
  #constructor_block_4.catalogs-section .catalog-card__image img {
    width: 100%;
    height: auto;
    -o-object-fit: contain;
       object-fit: contain;
  }
}

/* codex-home-catalog-tablet-scroll-fit-v2-end */

/* codex-home-catalog-hide-description-v1 */

#constructor_block_4.catalogs-section .section__description {
  display: none;
}

/* /codex-home-catalog-hide-description-v1 */

/* codex-catalog-card-desktop-equal-columns-v1 */

@media (min-width: 1161px) {
  .catalog-card,
  .catalogs-section .swiper-slide .catalog-card,
  .catalogs-section__grid .catalog-card {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }
  .catalog-card__content {
    min-width: 0;
  }
  .catalog-card__image {
    width: 100%;
    min-width: 0;
    max-width: none;
    justify-self: stretch;
  }
}

/* /codex-catalog-card-desktop-equal-columns-v1 */

/* codex-home-catalog-bg-position-v1 */

@media (min-width: 1161px) {
  #constructor_block_4.catalogs-section::before {
    top: -106px;
    left: -465px;
    width: 825.308px;
    height: 401.041px;
    -webkit-transform: rotate(10.955deg);
        -ms-transform: rotate(10.955deg);
            transform: rotate(10.955deg);
  }
  #constructor_block_4.catalogs-section::after {
    right: -66.771px;
    bottom: -66.17px;
    width: 1066px;
    height: 518px;
    -webkit-transform: rotate(4.957deg);
        -ms-transform: rotate(4.957deg);
            transform: rotate(4.957deg);
  }
}

@media (min-width: 1921px) {
  #constructor_block_4.catalogs-section::before {
    top: -5.5208333333vw;
    left: -24.21875vw;
    width: 42.9847916667vw;
    height: 20.8875520833vw;
  }
  #constructor_block_4.catalogs-section::after {
    right: -3.47765625vw;
    bottom: -3.4463541667vw;
    width: 55.5208333333vw;
    height: 26.9791666667vw;
  }
}

/* /codex-home-catalog-bg-position-v1 */

/* codex-catalog-card-image-full-height-v1 */

.catalog-card {
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}

.catalog-card__image {
  width: 100%;
  min-width: 0;
  max-width: none;
  height: 100%;
  min-height: 0;
  aspect-ratio: auto;
  -ms-flex-item-align: stretch;
      align-self: stretch;
  justify-self: stretch;
}

.catalog-card__image img {
  width: 100%;
  height: 100%;
  max-height: none;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

/* /codex-catalog-card-image-full-height-v1 */

/* codex-catalog-card-image-frame-v1 */

.catalog-card__image {
  overflow: hidden;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 1px solid rgba(2, 27, 48, 0.15);
  border-radius: 8px;
  background: #f7f9fb;
}

/* /codex-catalog-card-image-frame-v1 */

/* codex-home-catalog-bg-figma-v2 */

@media (min-width: 1161px) {
  #constructor_block_4.catalogs-section::before,
  #constructor_block_4.catalogs-section::after {
    -webkit-transform-origin: center;
        -ms-transform-origin: center;
            transform-origin: center;
  }
  #constructor_block_4.catalogs-section::before {
    top: -31.231px;
    left: -434.413px;
    width: 825.308px;
    height: 401.041px;
    -webkit-transform: rotate(10.955deg);
        -ms-transform: rotate(10.955deg);
            transform: rotate(10.955deg);
  }
  #constructor_block_4.catalogs-section::after {
    right: -46.386px;
    bottom: -21.085px;
    width: 1066px;
    height: 518px;
    -webkit-transform: rotate(4.957deg);
        -ms-transform: rotate(4.957deg);
            transform: rotate(4.957deg);
  }
}

@media (min-width: 1921px) {
  #constructor_block_4.catalogs-section::before {
    top: -1.6266145833vw;
    left: -22.6256770833vw;
    width: 42.9847916667vw;
    height: 20.8875520833vw;
  }
  #constructor_block_4.catalogs-section::after {
    right: -2.4159375vw;
    bottom: -1.0981770833vw;
    width: 55.5208333333vw;
    height: 26.9791666667vw;
  }
}

/* /codex-home-catalog-bg-figma-v2 */

/* codex-catalog-card-a4-image-ratio-v1 */

@media (max-width: 1800px) {
  .catalog-card,
  .catalogs-section .swiper-slide .catalog-card,
  .catalogs-section__grid .catalog-card {
    grid-template-columns: minmax(0, 7fr) minmax(0, 2fr);
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: start;
    height: auto;
    min-height: 0;
  }
  .catalog-card__content {
    min-width: 0;
    height: auto;
    -ms-flex-item-align: stretch;
        align-self: stretch;
  }
  .catalog-card__image {
    width: 100%;
    min-width: 0;
    max-width: none;
    height: auto;
    min-height: 0;
    aspect-ratio: 210/297;
    -ms-flex-item-align: start;
        align-self: start;
    justify-self: stretch;
  }
  .catalog-card__image img {
    width: 100%;
    height: 100%;
    max-height: none;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center;
       object-position: center;
  }
}

/* /codex-catalog-card-a4-image-ratio-v1 */

/* codex-home-catalog-left-bg-right-v1 */

@media (min-width: 1161px) {
  #constructor_block_4.catalogs-section::before {
    left: -275px;
  }
}

@media (min-width: 1921px) {
  #constructor_block_4.catalogs-section::before {
    left: -14.3229166667vw;
  }
}

/* /codex-home-catalog-left-bg-right-v1 */

/* codex-home-catalog-tablet-a4-scrollbar-v1 */

@media (min-width: 767px) and (max-width: 1160px) {
  #constructor_block_4.catalogs-section .swiper {
    scrollbar-width: none;
    -ms-overflow-style: none;
  }
  #constructor_block_4.catalogs-section .swiper::-webkit-scrollbar {
    display: none;
    width: 0;
    height: 0;
  }
  #constructor_block_4.catalogs-section .catalog-card,
  #constructor_block_4.catalogs-section .swiper-slide .catalog-card {
    grid-template-columns: minmax(0, 7fr) minmax(0, 2fr);
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: start;
    min-height: 0;
    height: auto;
    overflow: hidden;
  }
  #constructor_block_4.catalogs-section .catalog-card__content {
    min-width: 0;
    height: auto;
    -ms-flex-item-align: stretch;
        align-self: stretch;
  }
  #constructor_block_4.catalogs-section .catalog-card__image {
    width: 100%;
    min-width: 0;
    max-width: none;
    height: auto;
    min-height: 0;
    aspect-ratio: 210/297;
    -ms-flex-item-align: start;
        align-self: start;
    justify-self: stretch;
    overflow: hidden;
  }
  #constructor_block_4.catalogs-section .catalog-card__image img {
    width: 100%;
    height: 100%;
    max-height: none;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center;
       object-position: center;
  }
}

/* /codex-home-catalog-tablet-a4-scrollbar-v1 */

/* codex-catalog-card-desktop-fluid-image-v1 */

@media (min-width: 1161px) and (max-width: 1800px) {
  .catalog-card,
  .catalogs-section .swiper-slide .catalog-card,
  .catalogs-section__grid .catalog-card {
    grid-template-columns: minmax(0, calc(100% - clamp(28%, 0.03443 * (100vw - 1161px) + 28%, 50%))) minmax(0, clamp(28%, 0.03443 * (100vw - 1161px) + 28%, 50%));
  }
  .catalog-card__image {
    width: 100%;
    min-width: 0;
    max-width: none;
    height: auto;
    aspect-ratio: 210/297;
  }
}

/* /codex-catalog-card-desktop-fluid-image-v1 */

/* codex-catalog-left-bg-asset-v2 */

@media (min-width: 1161px) {
  #constructor_block_4.catalogs-section::before {
    top: -106px;
    left: -465px;
    width: 887px;
    height: 551px;
    background-image: url("/content/targus/catalog/catalog-bg-left-custom-v2.svg");
    background-size: contain;
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
  }
}

@media (min-width: 1921px) {
  #constructor_block_4.catalogs-section::before {
    top: -5.5208333333vw;
    left: -24.21875vw;
    width: 46.1979166667vw;
    height: 28.6979166667vw;
  }
}

/* /codex-catalog-left-bg-asset-v2 */

/* codex-home-catalog-left-bg-adaptive-scale-v1 */

#constructor_block_4.catalogs-section::before {
  -webkit-transform-origin: left top;
      -ms-transform-origin: left top;
          transform-origin: left top;
  background-position: left top;
}

@media (max-width: 1800px) {
  #constructor_block_4.catalogs-section::before {
    --catalog-left-bg-width: clamp(34rem, 46.1979166667vw, 51.9375rem);
    top: calc(var(--catalog-left-bg-width) * -0.1195);
    left: calc(var(--catalog-left-bg-width) * -0.5242);
    width: var(--catalog-left-bg-width);
    height: calc(var(--catalog-left-bg-width) * 0.621195);
  }
}

@media (max-width: 1160px) {
  #constructor_block_4.catalogs-section::before {
    --catalog-left-bg-width: clamp(22rem, 48vw, 34rem);
  }
}

@media (max-width: 767px) {
  #constructor_block_4.catalogs-section::before {
    --catalog-left-bg-width: clamp(16rem, 56vw, 24rem);
  }
}

/* /codex-home-catalog-left-bg-adaptive-scale-v1 */

/* codex-home-catalog-left-bg-no-jump-v1 */

@media (max-width: 1160px) {
  #constructor_block_4.catalogs-section::before {
    top: calc(var(--catalog-left-bg-width) * -0.1195);
    left: calc(var(--catalog-left-bg-width) * -0.5242);
  }
}

/* /codex-home-catalog-left-bg-no-jump-v1 */

/* codex-home-catalog-standard-laptop-padding-v1 */

@media (max-width: 1600px) {
  #constructor_block_4.catalogs-section {
    padding-top: var(--section-padding);
    padding-bottom: var(--section-padding);
  }
}

/* /codex-home-catalog-standard-laptop-padding-v1 */

/* codex-home-catalog-desktop-viewport-v1 */

@media (min-width: 1161px) {
  #constructor_block_4.catalogs-section .section__content,
  #constructor_block_4.catalogs-section .catalogs-section__slider {
    overflow: visible;
  }
  #constructor_block_4.catalogs-section .swiper {
    overflow: hidden;
    padding-top: 0.75rem;
    padding-bottom: 2.75rem;
    margin-top: -0.75rem;
    margin-bottom: -2.75rem;
  }
  #constructor_block_4.catalogs-section .swiper-wrapper,
  #constructor_block_4.catalogs-section .swiper-slide {
    overflow: visible;
  }
  #constructor_block_4.catalogs-section .catalog-card {
    position: relative;
    z-index: 0;
    overflow: visible;
  }
  #constructor_block_4.catalogs-section .catalog-card:hover {
    z-index: 2;
  }
}

/* /codex-home-catalog-desktop-viewport-v1 */

/* codex-home-catalog-tablet-scroll-restore-v1 */

@media (min-width: 767px) and (max-width: 1160px) {
  #constructor_block_4.catalogs-section {
    overflow: hidden;
  }
  #constructor_block_4.catalogs-section .section__content,
  #constructor_block_4.catalogs-section .catalogs-section__slider {
    overflow: visible;
  }
  #constructor_block_4.catalogs-section .swiper {
    margin-right: calc(0px - var(--container-offset));
    margin-left: calc(0px - var(--container-offset));
    padding-right: var(--container-offset);
    padding-bottom: 0.75rem;
    padding-left: var(--container-offset);
    overflow: hidden;
    -webkit-overflow-scrolling: touch;
    scroll-padding-left: var(--container-offset);
    -ms-scroll-snap-type: x proximity;
        scroll-snap-type: x proximity;
  }
  #constructor_block_4.catalogs-section .swiper-wrapper {
    width: auto;
    min-width: 0;
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    gap: 0;
  }
  #constructor_block_4.catalogs-section .swiper-slide {
    width: clamp(26.5rem, 58vw, 34rem) !important;
    min-width: clamp(26.5rem, 58vw, 34rem) !important;
    max-width: clamp(26.5rem, 58vw, 34rem) !important;
    -webkit-box-flex: 0 !important;
        -ms-flex: 0 0 clamp(26.5rem, 58vw, 34rem) !important;
            flex: 0 0 clamp(26.5rem, 58vw, 34rem) !important;
    margin-right: 0 !important;
    height: auto;
    scroll-snap-align: start;
  }
  #constructor_block_4.catalogs-section .catalog-card,
  #constructor_block_4.catalogs-section .swiper-slide .catalog-card {
    width: 100%;
    height: 100%;
    min-width: 0;
  }
}

@media (min-width: 767px) and (max-width: 860px) {
  #constructor_block_4.catalogs-section .swiper-slide {
    width: clamp(24rem, 72vw, 30rem) !important;
    min-width: clamp(24rem, 72vw, 30rem) !important;
    max-width: clamp(24rem, 72vw, 30rem) !important;
    -ms-flex-preferred-size: clamp(24rem, 72vw, 30rem) !important;
        flex-basis: clamp(24rem, 72vw, 30rem) !important;
  }
}

/* /codex-home-catalog-tablet-scroll-restore-v1 */

/* codex-home-catalog-tablet-swiper-restore-v2 */

@media (min-width: 767px) and (max-width: 1160px) {
  #constructor_block_4.catalogs-section .swiper {
    margin-right: calc(0px - var(--container-offset));
    margin-left: 0;
    padding-right: var(--container-offset);
    padding-bottom: 0.75rem;
    overflow: hidden;
  }
  #constructor_block_4.catalogs-section .swiper-wrapper {
    width: auto;
    min-width: 0;
    gap: 0;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
    -webkit-transition-property: -webkit-transform;
    transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
  }
  #constructor_block_4.catalogs-section .swiper-slide {
    width: clamp(26rem, 62vw, 34rem) !important;
    min-width: clamp(26rem, 62vw, 34rem) !important;
    max-width: clamp(26rem, 62vw, 34rem) !important;
    -webkit-box-flex: 0 !important;
        -ms-flex: 0 0 clamp(26rem, 62vw, 34rem) !important;
            flex: 0 0 clamp(26rem, 62vw, 34rem) !important;
  }
}

@media (min-width: 767px) and (max-width: 860px) {
  #constructor_block_4.catalogs-section .swiper-slide {
    width: clamp(23rem, 100vw - 5rem, 28rem) !important;
    min-width: clamp(23rem, 100vw - 5rem, 28rem) !important;
    max-width: clamp(23rem, 100vw - 5rem, 28rem) !important;
    -ms-flex-preferred-size: clamp(23rem, 100vw - 5rem, 28rem) !important;
        flex-basis: clamp(23rem, 100vw - 5rem, 28rem) !important;
  }
}

/* /codex-home-catalog-tablet-swiper-restore-v2 */

/* codex-home-catalog-tablet-overflow-contained-v5 */

@media (min-width: 767px) and (max-width: 1160px) {
  #constructor_block_4.catalogs-section {
    width: 100%;
    max-width: 100%;
    overflow: hidden !important;
  }
  #constructor_block_4.catalogs-section .container,
  #constructor_block_4.catalogs-section .section__content,
  #constructor_block_4.catalogs-section .catalogs-section__slider {
    min-width: 0;
    max-width: 100%;
    overflow: visible !important;
  }
  #constructor_block_4.catalogs-section .swiper {
    width: calc(100% + var(--container-offset) * 2);
    max-width: calc(100% + var(--container-offset) * 2);
    margin-right: calc(0px - var(--container-offset));
    margin-left: calc(0px - var(--container-offset));
    padding-top: 0.75rem;
    padding-right: var(--container-offset);
    padding-bottom: 1rem;
    padding-left: var(--container-offset);
    overflow: hidden !important;
    scroll-padding-left: var(--container-offset);
  }
  #constructor_block_4.catalogs-section .swiper-wrapper,
  #constructor_block_4.catalogs-section .swiper-slide {
    overflow: visible !important;
  }
}

/* /codex-home-catalog-tablet-overflow-contained-v5 */
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvc2VjdGlvbnMvY2F0YWxvZ3Mtc2VjdGlvbi9jYXRhbG9ncy1zZWN0aW9uLnNjc3MlMjNzYXNzIiwiY29tcG9uZW50cy9zZWN0aW9ucy9jYXRhbG9ncy1zZWN0aW9uL2NhdGFsb2dzLXNlY3Rpb24uc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNFLGtCQUFBO0FDQ0Y7O0FERUE7RUFDRSxnQkFBQTtFQUNBLGlCQUFBO0VBQ0Esa0JBQUE7RUFDQSxxQkFBQTtBQ0NGOztBREVBOztFQUVFLFdBQUE7RUFDQSxrQkFBQTtFQUNBLFVBQUE7RUFDQSxjQUFBO0VBQ0Esb0JBQUE7RUFDQSw0QkFBQTtFQUNBLDJCQUFBO0VBQ0EsMEJBQUE7QUNDRjs7QURFQTtFQUNFLFdBQUE7RUFDQSxZQUFBO0VBQ0EsWUFBQTtFQUNBLGFBQUE7RUFDQSw4RUFBQTtBQ0NGOztBREVBO0VBQ0UsWUFBQTtFQUNBLFNBQUE7RUFDQSxhQUFBO0VBQ0EsYUFBQTtFQUNBLDJFQUFBO0FDQ0Y7O0FERUE7Ozs7RUFJRSxrQkFBQTtFQUNBLFVBQUE7QUNDRjs7QURFQTtFQUNFLGdCQUFBO0FDQ0Y7O0FERUE7RUFDRSxTQUFBO0FDQ0Y7O0FERUE7RUFDRSxZQUFBO0VBQ0EsWUFBQTtBQ0NGOztBREVBO0VBQ0UsV0FBQTtFQUNBLFlBQUE7QUNDRjs7QURFQTtFQUNFLFlBQUE7RUFDQSxnQkFBQTtBQ0NGOztBREVBO0VBQ0UsWUFBQTtBQ0NGOztBREVBO0VBQ0UsYUFBQTtFQUNBLGdEQUFBO0VBQ0EsU0FBQTtBQ0NGOztBREVBO0VBQ0UsZUFBQTtBQ0NGOztBREVBO0VBQ0UsYUFBQTtFQUNBLHdEQUFBO0VBQ0EsU0FBQTtFQUNBLGlCQUFBO0VBQ0Esa0JBQUE7RUFDQSx1Q0FBQTtFQUNBLG1CQUFBO0VBQ0EsZ0JBQUE7RUFDQSxjQUFBO0VBQ0EscUJBQUE7RUFDQSxxREFBQTtVQUFBLDZDQUFBO0VBQ0EscUdBQUE7RUFBQSw2RkFBQTtFQUFBLDZFQUFBO0VBQUEsd0lBQUE7RUFDQSxZQUFBO0FDQ0Y7O0FERUE7RUFDRSxxQkFBQTtFQUNBLHFEQUFBO1VBQUEsNkNBQUE7RUFDQSxtQ0FBQTtNQUFBLCtCQUFBO1VBQUEsMkJBQUE7QUNDRjs7QURFQTtFQUNFLG9CQUFBO0VBQUEsb0JBQUE7RUFBQSxhQUFBO0VBQ0EsWUFBQTtFQUNBLDRCQUFBO0VBQUEsNkJBQUE7TUFBQSwwQkFBQTtVQUFBLHNCQUFBO0VBQ0EseUJBQUE7TUFBQSxzQkFBQTtVQUFBLDhCQUFBO0VBQ0EsU0FBQTtBQ0NGOztBREVBO0VBQ0Usb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSxZQUFBO0VBQ0EsNEJBQUE7RUFBQSw2QkFBQTtNQUFBLDBCQUFBO1VBQUEsc0JBQUE7RUFDQSx3QkFBQTtNQUFBLHFCQUFBO1VBQUEsdUJBQUE7RUFDQSxTQUFBO0FDQ0Y7O0FERUE7RUFDRSxvQkFBQTtFQUFBLG9CQUFBO0VBQUEsYUFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0Esd0JBQUE7TUFBQSxxQkFBQTtVQUFBLHVCQUFBO0VBQ0EsdUJBQUE7TUFBQSxvQkFBQTtVQUFBLDJCQUFBO0VBQ0EsbUJBQUE7QUNDRjs7QURFQTtFQUNFLGNBQUE7RUFDQSxXQUFBO0VBQ0EsZ0JBQUE7RUFDQSxnQkFBQTtFQUNBLHNCQUFBO0tBQUEsbUJBQUE7QUNDRjs7QURFQTtFQUNFLGVBQUE7RUFDQSxnQkFBQTtFQUNBLGNBQUE7QUNDRjs7QURFQTtFQUNFLGVBQUE7RUFDQSxnQkFBQTtFQUNBLGdCQUFBO0VBQ0EsaUJBQUE7RUFDQSw0QkFBQTtBQ0NGOztBREVBO0VBQ0UsV0FBQTtFQUNBLGdCQUFBO0VBQ0EseUJBQUE7TUFBQSxzQkFBQTtVQUFBLDhCQUFBO0VBQ0Esa0JBQUE7RUFDQSxvQ0FBQTtFQUNBLHNCQUFBO0VBQ0EseUJBQUE7QUNDRjs7QURFQTtFQUNFLG9DQUFBO0FDQ0Y7O0FERUE7RUFDRSxvQkFBQTtFQUFBLG9CQUFBO0VBQUEsYUFBQTtFQUNBLFlBQUE7RUFDQSxhQUFBO0VBQ0EseUJBQUE7TUFBQSxzQkFBQTtVQUFBLG1CQUFBO0VBQ0Esd0JBQUE7TUFBQSxxQkFBQTtVQUFBLHVCQUFBO0VBQ0EsU0FBQTtFQUNBLGdCQUFBO0VBQ0Esc0NBQUE7RUFDQSxrQkFBQTtFQUNBLG1CQUFBO0FDQ0Y7O0FERUE7RUFDRSxjQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxvQkFBQTtLQUFBLGlCQUFBO0FDQ0Y7O0FERUE7RUFDRSx5SEFBQTtBQ0NGOztBRElBOztFQ0FBLGdCQUFBO0FBQ0E7O0FESUE7RUFDRTtJQ0RGLGdCQUFBO0VBQ0U7RURJQTtJQ0ZBLFlBQUE7RUFDQTtFREtBO0lBQ0UsYUFBQTtJQ0hGLFlBQUE7RUFDQTtBQUNGOztBRE1BO0VBQ0U7SUNKQSxnREFBQTtFQUNGO0FBQ0E7O0FET0E7RUFDRTtJQUNFLDBCQUFBO0VDTEY7RUFDRjtJRFFJLGlCQUFBO0lDTkosb0JBQUE7RUFDRTtFRFNBO0lDUEEsZ0JBQUE7RUFDQTtFRFVBO0lBQ0UsMEJBQUE7UUFBQSx1QkFBQTtZQUFBLG9CQUFBO0VDUkY7RURXQTtJQUNFLFdBQUE7RUNURjtFRFlBO0lDVkEscUNBQUE7SURZRSxhQUFBO0lDVkYsYUFBQTtFQUNBO0VEYUE7SUFDRSxZQUFBO0lDWEYscUJBQUE7RUFDQTtFRGNBO0lBQ0UsVUFBQTtJQ1pGLFlBQUE7SURjRSxZQUFBO0lBQ0EsYUFBQTtFQ1pGO0VEZUE7SUFDRSxhQUFBO0lDYkYsWUFBQTtJRGVFLFlBQUE7SUFDQSxhQUFBO0VDYkY7QUFDRjs7QURnQkEsc0NBQUE7O0FBQ0E7RUFDRSw0REFBQTtFQUNBLGtDQUFBO0VBQ0Esc0VBQUE7RUFDQSxnQkFBQTtBQ2RGOztBRGlCQTs7RUFFRSxZQUFBO0FDZEY7O0FEaUJBO0VBQ0UsdUNBQUE7QUNkRjs7QURpQkE7RUFDRSw2QkFBQTtFQUNBLDJDQUFBO0FDZEY7O0FEaUJBO0VDZEEsMENBQUE7RURnQkUsaUJBQUE7QUNkRjs7QURpQkE7RUNkQSwwQ0FBQTtFRGdCRSxpQkFBQTtFQ2RGLHVCQUFBO0FBQ0E7O0FEaUJBO0VBQ0UsdUNBQUE7QUNkRjs7QURpQkE7RUFDRSxXQUFBO0VBQ0EsbUJBQUE7RUNkRixZQUFBO0VEZ0JFLHFCQUFBO0VDZEYsMkJBQUE7TUFBQSxrQkFBQTtFRGdCRSxpQkFBQTtFQUNBLGlCQUFBO0VBQ0EsdUJBQUE7QUNkRjs7QURpQkE7RUFDRSxXQUFBO0VDZEYsWUFBQTtFRGdCRSxnQkFBQTtFQ2RGLHNCQUFBO0tBQUEsbUJBQUE7QUFDQTs7QURpQkE7RUFDRTtJQ2RBLDhERGVFO0VDZEY7RURpQkE7SUNmQSxtQkFBQTtFQUNGO0FBQ0E7O0FEa0JBO0VBQ0U7SUNoQkEsYURpQkU7SUNoQkYsc0JEaUJFO0lDaEJGLHNDRGlCRTtJQ2hCSiwyQkFBQTtJRGtCSSxZQUFBO0lDaEJKLGdCQUFBO0lBQ0Usa0JBQUE7SURrQkUsd0JBQUE7SUNoQkYsaUNBQUE7SURrQkUsaUNBQUE7UUFBQSw2QkFBQTtFQ2hCRjtFRG1CQTs7SUNoQkYsd0JBQUE7RUFDRTtFQUNGO0lBQ0UsMERBQUE7SURvQkUsWUFBQTtFQ2xCRjtBQUNGOztBRHFCQTtFQUNFO0lBQ0Usd0NBQUE7SUFDQSwyQkFBQTtFQ25CRjtFRHNCQTtJQUNFLDZEQUFBO0lDcEJGLGlCQUFBO0lEc0JFLGVBQUE7RUNwQkY7RUR1QkE7SUFDRSxtQkFBQTtJQ3JCRixxQkFBQTtFQUNBO0FBQ0Y7O0FEd0JBO0VBQ0U7SUN0QkEsOERBQUE7SUFDRixhQUFBO0VBQ0U7RUFDRjtJQUNFLG9CQUFBO0VBQ0E7QUFDRjs7QUR5QkEsb0NBQUE7O0FBRUEsNkNBQUE7O0FBQ0E7RUFDRSw4Q0FBQTtBQ3hCRjs7QUQyQkE7RUFDRTtJQ3hCQSx5Q0FBQTtFQUNBO0VEMkJBO0lDekJBLCtCQUFBO0VBQ0Y7RUQ0QkU7SUMxQkYsV0FBQTtFQUNFO0FBQ0Y7O0FENkJBO0VBQ0U7SUFDRSwyQ0FBQTtFQzNCRjtFRDhCQTtJQzVCQSxhQUFBO0VBQ0Y7QUFDQTs7QUQrQkE7RUM3QkE7SUFDQSx1Q0FBQTtJQUNFLHNCQUFBO0VBQ0Y7RURnQ0U7SUM5QkYsU0FBQTtFQUNFO0VEaUNBO0lDL0JBLFdBQUE7RUFDQTtBQUNGOztBRGtDQTtFQUNFO0lBQ0UseUNBQUE7SUNoQ0YsdUJBQUE7RUFDQTtBQUNGOztBRGtDQSwyQ0FBQTs7QUFHQSx5Q0FBQTs7QUFDQTtFQUNFLGtFQUFBO0FDbENGOztBRHFDQTtFQUNFLGtCQUFBO0FDbENGOztBRHFDQTtFQUNFLFdBQUE7RUNsQ0YsWUFBQTtFRG9DRSwrQ0FBQTtFQUNBLHlFQUFBO0VBQ0EsK0VBQUE7RUFDQSxpRkFBQTtFQUNBLGtGQUFBO0FDbENGOztBRHFDQTtFQUNFO0lDbENBLG9FQUFBO0VBQ0E7RURxQ0E7SUNuQ0YsbUJBQUE7RUFDRTtBQUNGOztBRHNDQTtFQUNFO0lBQ0Usc0NBQUE7RUNwQ0Y7RUFDRjtJQUNBLG9FRHNDSTtFQ3JDRjtFRHdDQTtJQ3RDRixtQkFBQTtFQUNBO0FBQ0E7O0FEeUNBO0VBQ0U7SUN2Q0Ysd0NBQUE7RUFDRTtFQUNGO0lEMENJLG1FQUFBO0VDeENKO0VEMkNFO0lDekNBLGtCRDBDRTtFQ3pDRjtBQUNGOztBRDJDQSx1Q0FBQTs7QUFHQSxvQ0FBQTs7QUFDQTtFQzNDQSxnQkFBQTtBQUNBOztBRDhDQTtFQUNFLGtDQUFBO0VBQ0Esc0NBQUE7RUFDQSxnQ0FBQTtFQUNBLDRDQUFBO0FDM0NGOztBRDhDQTtFQUNFLG9DQUFBO0VDM0NGLFlBQUE7RUQ2Q0Usb0NBQUE7RUFDQSwyQ0FBQTtBQzNDRjs7QUQ4Q0E7RUFDRTtJQzNDQSxvQ0FBQTtJRDZDRSxrQ0FBQTtJQzNDRixnQ0FBQTtJRDZDRSwyQ0FBQTtFQzNDRjtFQUNGO0lEOENJLHNDQUFBO0lDNUNKLFlBQUE7SUFDRSxnQ0FBQTtJRDhDRSwwQ0FBQTtFQzVDRjtBQUNGOztBRCtDQTtFQUNFO0lDN0NBLGFBQUE7SUQrQ0UsY0FBQTtJQzdDRiwrQkFBQTtJRCtDRSwwQ0FBQTtFQzdDRjtFQUNGO0lBQ0EsZUFBQTtJRGdESSxZQUFBO0lBQ0EsZ0NBQUE7SUM5Q0osd0NEK0NJO0VDOUNKO0FBQ0E7O0FEZ0RBLGtDQUFBOztBQUdBLHFDQUFBOztBQUNBO0VBQ0U7SUNoREEseUNEaURFO0VDaERGO0VEbURBO0lDakRGLGtFQUFBO0lEbURJLGFBQUE7SUNqREosc0JBQUE7RUFDRTtFRG9EQTtJQ2xEQSxrQkFBQTtFQUNBO0VBQ0Y7SURxREksa0JBQUE7SUNuREosa0JBQUE7SUFDRSxpQkFBQTtFQUNBO0FBQ0Y7O0FEc0RBO0VBQ0U7SUNwREEsd0NBQUE7RUFDQTtFRHVEQTtJQUNFLGlFQUFBO0lBQ0EsU0FBQTtJQUNBLHVCQUFBO0VDckRGO0VEd0RBO0lDdERGLGdCQUFBO0VBQ0U7RUFDRjtJQUNFLGVBQUE7SUR5REUsa0JBQUE7RUN2REY7QUFDRjs7QUR5REEsbUNBQUE7O0FBR0EsNENBQUE7O0FBQ0E7RUFDRTtJQUNFLDBCQUFBO0lBQ0EsbUJBQUE7SUFDQSxtQkFBQTtRQUFBLHNCQUFBO1lBQUEsa0JBQUE7RUN6REY7RUQ0REE7SUMxREYsV0FBQTtFQUNBO0FBQ0E7O0FENkRBO0VDM0RBO0lBQ0EseUJBQUE7SUFDRSxrQkFBQTtJRDZERSxnQ0FBQTtRQUFBLG1CQUFBO0VDM0RGO0FBQ0Y7O0FENkRBLDBDQUFBOztBQUdBLHdDQUFBOztBQUNBO0VBQ0U7SUM3REEseURBQUE7RUFDQTtFRGdFQTtJQUNFLHNDQUFBO0lDOURGLGdCQUFBO0lEZ0VFLG1CQUFBO0lDOURGLG1CQUFBO1FBQUEsa0NBQUE7WUFBQSw4QkFBQTtFQUNBO0VEaUVBOztJQzlEQSxXQUFBO0lBQ0YsbUVBQUE7SURpRUksWUFBQTtJQy9ESixnQkFBQTtFQUNFO0VEa0VBO0lDaEVBLGlCQUFBO0VBQ0E7RURtRUE7SUFDRSxrQkFBQTtJQUNBLGtCQUFBO0lBQ0EsaUJBQUE7SUNqRUYsMkJBQUE7UUFBQSxrQkFBQTtFQUNBO0VEb0VBO0lBQ0UsK0NBQUE7RUNsRUY7QUFDRjs7QURxRUE7RUFDRTtJQUNFLGVBQUE7RUNuRUY7RUFDRjs7SUR1RUksOERBQUE7SUFDQSxhQUFBO0lDcEVKLGdCQUFBO0VBQ0E7RUR1RUU7SUFDRSxlQUFBO0VDckVGO0VEd0VBO0lDdEVBLGtCQUFBO0lEd0VFLGVBQUE7RUN0RUY7QUFDRjs7QUR3RUEsc0NBQUE7O0FBR0EscUNBQUE7O0FBQ0E7RUN4RUEsaUJBQUE7QUFDQTs7QUQyRUE7RUFDRSx3QkFBQTtBQ3hFRjs7QUQyRUE7RUFDRSxxQkFBQTtBQ3hFRjs7QUQyRUE7RUFDRTtJQUNFLGFBQUE7SUN4RUYsbUJBQUE7SUQwRUUsMEJBQUE7SUN4RUYsZ0RBQUE7SUQwRUUsWUFBQTtJQUNBLGlCQUFBO0lBQ0EsaUJBQUE7SUFDQSwwQkFBQTtRQUFBLHNCQUFBO0VDeEVGO0VEMkVBOztJQUVFLFdBQUE7SUFDQSxZQUFBO0lBQ0EsdUJBQUE7RUN6RUY7QUFDRjs7QUQ0RUE7RUFDRTtJQzFFQSwwQkFBQTtJRDRFRSxZQUFBO0VDMUVGO0VENkVBOztJQUVFLG1FQUFBO0lBQ0EsZ0JBQUE7RUMzRUY7RUQ4RUE7SUM1RUEsa0JBQUE7RUFDQTtBQUNGOztBRDhFQSxtQ0FBQTs7QUFHQSx5Q0FBQTs7QUFDQTs7RUM3RUEsd0JBQUE7QUFDQTs7QURnRkEsdUNBQUE7O0FBRUEsK0NBQUE7O0FBQ0E7RUFDRTtJQUNFLGtDQUFBO0lBQ0EsMkJBQUE7SUFDQSxnQkFBQTtJQzlFRixtQkFBQTtRQUFBLDhCQUFBO1lBQUEsMEJBQUE7RUFDQTtFRGlGQTs7SUM5RUEsbUVBQUE7SURpRkUsWUFBQTtJQy9FRixnQkFBQTtFQUNBO0VEa0ZBO0lDaEZBLGtCQUFBO0VBQ0Y7RUFDQTtJRG1GSSxpQkFBQTtJQUNBLGtCQUFBO0VDakZKO0VBQ0E7SUFDRSwwQkRtRkU7SUNuRkYsdUJEbUZFO0lDbkZGLGtCRG1GRTtJQ2xGSixlQUFBO0lEb0ZJLGVBQUE7SUNsRkosb0JBQUE7UUFBQSxjQUFBO0lBQ0UsbUJBQUE7RUFDRjtBQUNBOztBRHFGQTtFQUNFO0lDbkZGLHFDQUFBO0lEcUZJLDhCQUFBO0lDbkZKLG1CQUFBO0lBQ0UsNENBQUE7UUFBQSwrQkFBQTtFQUNBO0VEc0ZBOztJQUVFLGlFQUFBO0lBQ0EsYUFBQTtFQ3BGRjtFRHVGQTtJQUNFLGVBQUE7RUNyRkY7RUR3RkE7SUN0RkEsa0JBQUE7SUR3RkUsa0JBQUE7RUN0RkY7QUFDRjs7QUR3RkEsNkNBQUE7O0FBRUEsOENBQUE7O0FBQ0E7RUFDRTtJQ3ZGRiwwQ0FBQTtJQUNFLDhDQUFBO0lEeUZFLDhDQUFBO0lBQ0EsOEJBQUE7UUFBQSxpREFBQTtZQUFBLDZDQUFBO0VDdkZGO0VEMEZBOztJQUVFLG1FQUFBO0VDeEZGO0VEMkZBO0lDekZBLGlCQUFBO0lEMkZFLGtCQUFBO0VDekZGO0FBQ0Y7O0FEMkZBLDRDQUFBOztBQUVBLDRDQUFBOztBQUNBO0VBQ0U7SUFDRSxrQ0FBQTtJQzFGSixzQ0QyRkk7SUMxRkosc0NBQUE7SUQ0RkksOEJBQUE7UUFBQSx5Q0FBQTtZQUFBLHFDQUFBO0VDMUZGO0VBQ0Y7SUFDQSxxRUQ0Rkk7SUFDQSxhQUFBO0lDM0ZKLFdBQUE7SUFDQSxvQkFBQTtJQUNFLGdCQUFBO0VBQ0E7RUQ4RkE7SUFDRSxtQkFBQTtFQzVGRjtFRCtGQTtJQUNFLDBCQUFBO0lBQUEsdUJBQUE7SUFBQSxrQkFBQTtJQzdGRixpQkFBQTtJRCtGRSxlQUFBO0lBQ0EsbUJBQUE7RUM3RkY7RURnR0E7SUM5RkEsa0JBQUE7SURnR0Usa0JBQUE7SUM5RkYsaUJBQUE7RUFDQTtBQUNGOztBRGlHQTtFQUNFO0lBQ0UsdUNBQUE7SUFDQSwyQ0FBQTtJQy9GRiwyQ0FBQTtJRGlHRSw4QkFBQTtRQUFBLDhDQUFBO1lBQUEsMENBQUE7RUMvRkY7RURrR0E7SUFDRSxvRUFBQTtJQUNBLGFBQUE7SUFDQSxnQkFBQTtFQ2hHRjtFRG1HQTtJQ2pHRixrQkFBQTtFQUNFO0VBQ0Y7SUFDRSxrQkFBQTtJRG9HRSxrQkFBQTtFQ2xHRjtBQUNGOztBRG9HQSw2Q0FBQTs7QUFFQSxzQ0FBQTs7QUFDQTtFQUNFO0lBQ0UscURBQUE7SUFDQSx5REFBQTtJQUNBLHlEQUFBO0lDbkdGLDhCQUFBO1FBQUEsNERBQUE7WUFBQSx3REFBQTtFQUNBO0VEc0dBOztJQ25HQSxnRUFBQTtJRHNHRSxhQUFBO0lDcEdGLG9CQUFBO0lEc0dFLGdCQUFBO0VDcEdGO0VEdUdBO0lDckdGLGlCQUFBO0VBQ0E7RUR3R0U7SUN0R0YsMEJBQUE7SUFBQSx1QkFBQTtJQUFBLGtCQUFBO0lBQ0Esa0JBQUE7SUFDRSxlQUFBO0lEd0dFLG1CQUFBO0VDdEdGO0VEeUdBO0lBQ0UsZUFBQTtJQ3ZHRixrQkFBQTtJRHlHRSxpQkFBQTtFQ3ZHRjtBQUNGOztBRDBHQTtFQUNFO0lBQ0UsdURBQUE7SUN4R0YsMkRBQUE7SUQwR0UsMkRBQUE7SUFDQSx5RUFBQTtRQUFBLDREQUFBO0VDeEdGO0VBQ0Y7O0lENEdJLG9FQUFBO0lDekdKLFdBQUE7RUFDQTtFRDRHRTtJQUNFLGtCQUFBO0VDMUdGO0VENkdBO0lBQ0Usa0JBQUE7SUMzR0Ysa0JBQUE7RUFDQTtBQUNGOztBRDZHQSx1Q0FBQTs7QUFHQSwyQ0FBQTs7QUFDQTtFQUNFOztJQzVHQSxtRUFBQTtJRCtHRSxXQUFBO0VDN0dGO0VEZ0hBO0lDOUdBLGlCQUFBO0VBQ0E7RURpSEE7SUFDRSxrQkFBQTtJQUNBLGtCQUFBO0VDL0dGO0FBQ0Y7O0FEa0hBO0VBQ0U7SUNoSEEsMkRBQUE7SURrSEUsK0RBQUE7SUFDQSwrREFBQTtJQUNBLDZFQUFBO1FBQUEsZ0VBQUE7RUNoSEY7RUFDRjs7SUFFQSwrREFBQTtJQUNFLGNBQUE7SURtSEUsb0JBQUE7RUNqSEY7RURvSEE7SUFDRSxlQUFBO0lDbEhGLGlCQUFBO0VBQ0E7QUFDRjs7QURvSEEsNENBQUE7O0FBRUEsd0NBQUE7O0FBQ0E7RUFDRTtJQUNFLGlCQUFBO0VDbkhGO0VEc0hBO0lDcEhBLDBCQUFBO1FBQUEsdUJBQUE7WUFBQSxvQkFBQTtFQUNBO0VEdUhBO0lBQ0UsbUNBQUE7SUFDQSxnQkFBQTtJQ3JIRixtQkFBQTtRQUFBLCtCQUFBO1lBQUEsMkJBQUE7SUFDRixZQUFBO0VBQ0E7RUR3SEU7O0lDckhGLFdBQUE7SUFDRSxxQ0FBQTtJRHdIRSw4REFBQTtJQUNBLDZCQUFBO0lBQ0EsK0JBQUE7RUN0SEY7RUR5SEE7SUFDRSxnQkFBQTtFQ3ZIRjtFRDBIQTtJQUNFLHVCQUFBO0VDeEhGO0VEMkhBO0lBQ0UsV0FBQTtJQ3pIRixnQkFBQTtJRDJIRSxnQkFBQTtJQ3pIRixpQ0FBQTtJRDJIRSxpQkFBQTtJQ3pIRiwyQkFBQTtRQUFBLGtCQUFBO0VBQ0E7RUQ0SEE7SUFDRSxzQkFBQTtPQUFBLG1CQUFBO0VDMUhGO0FBQ0Y7O0FENkhBO0VBQ0U7SUFDRSxtQ0FBQTtJQzNIRiwwQ0FBQTtRQUFBLDZCQUFBO0VBQ0E7RUQ4SEE7O0lDM0hBLDhEQUFBO0lBQ0YsaUJBQUE7SUQ4SEksYUFBQTtFQzVISjtFRCtIRTtJQUNFLGdCQUFBO0VDN0hGO0VEZ0lBO0lBQ0UsZ0JBQUE7SUM5SEYsZ0JBQUE7SURnSUUsYUFBQTtFQzlIRjtBQUNGOztBRGdJQSxzQ0FBQTs7QUFDQSxrREFBQTs7QUFDQTtFQUNFO0lDOUhBLGdCQUFBO0lEZ0lFLHFCQUFBO0lDOUhGLGlDQUFBO0lEZ0lFLGlDQUFBO1FBQUEsNkJBQUE7RUM5SEY7RURpSUE7SUFDRSwrQkFBQTtJQUFBLCtCQUFBO0lBQUEsd0JBQUE7SUMvSEYsTUFBQTtFQUNGO0VBQ0E7SURrSUksMkNBQUE7SUFDQSwrQ0FBQTtJQ2hJSiwrQ0RpSUk7SUNoSUosOEJBQUE7UUFBQSxrREFBQTtZQUFBLDhDQUFBO0lBQ0UsMEJBQUE7SURrSUUsd0JBQUE7RUNoSUY7RURtSUE7O0lBRUUsV0FBQTtJQ2pJRixZQUFBO0lEbUlFLGtFQUFBO0lDaklGLDZCQUFBO0lEbUlFLHVDQUFBO0lDaklGLG1DQUFBO0lEbUlFLGlCQUFBO0VDaklGO0VEb0lBO0lDbElGLG1CQUFBO0VBQ0U7RUFDRjtJQUNFLDBCQUFBO0lBQUEsdUJBQUE7SUFBQSxrQkFBQTtJRHFJRSxvQkFBQTtJQUNBLGVBQUE7SUFDQSxtQkFBQTtFQ25JRjtFRHNJQTtJQUNFLFdBQUE7SUNwSUYsaUJBQUE7SURzSUUsZ0JBQUE7SUFDQSxpQkFBQTtJQUNBLDJCQUFBO1FBQUEsa0JBQUE7SUFDQSxpQkFBQTtFQ3BJRjtFRHVJQTtJQ3JJQSxXQUFBO0lEdUlFLFlBQUE7SUFDQSxzQkFBQTtPQUFBLG1CQUFBO0VDcklGO0FBQ0Y7O0FEdUlBLGdEQUFBOztBQUVBLDJDQUFBOztBQUNBO0VDdElBLGFBQUE7QUFDQTs7QUR3SUEsNENBQUE7O0FBRUEsZ0RBQUE7O0FBQ0E7RUFDRTs7O0lDcElBLG9EQUFBO0VBQ0E7RUR5SUE7SUFDRSxZQUFBO0VDdklGO0VEMElBO0lBQ0UsV0FBQTtJQ3hJRixZQUFBO0lEMElFLGVBQUE7SUFDQSxxQkFBQTtFQ3hJRjtBQUNGOztBRDBJQSxpREFBQTs7QUFFQSxzQ0FBQTs7QUFDQTtFQUNFO0lDeklBLFdBQUE7SUQySUUsWUFBQTtJQ3pJRixnQkFBQTtJRDJJRSxpQkFBQTtJQ3pJRixvQ0FBQTtRQUFBLGdDQUFBO1lBQUEsNEJBQUE7RUFDQTtFRDRJQTtJQUNFLGdCQUFBO0lDMUlGLGdCQUFBO0lENElFLGFBQUE7SUFDQSxhQUFBO0lBQ0EsbUNBQUE7UUFBQSwrQkFBQTtZQUFBLDJCQUFBO0VDMUlGO0FBQ0Y7O0FENklBO0VBQ0U7SUFDRSxvQkFBQTtJQzNJRixpQkFBQTtJRDZJRSxzQkFBQTtJQzNJRix1QkFBQTtFQUNGO0VEOElFO0lDNUlGLG9CQUFBO0lBQ0UsdUJBQUE7SUQ4SUUsc0JBQUE7SUFDQSx1QkFBQTtFQzVJRjtBQUNGOztBRDhJQSx1Q0FBQTs7QUFFQSw0Q0FBQTs7QUFDQTtFQUNFLDBCQUFBO01BQUEsdUJBQUE7VUFBQSxvQkFBQTtBQzdJRjs7QURnSkE7RUFDRSxXQUFBO0VBQ0EsWUFBQTtFQUNBLGVBQUE7RUFDQSxZQUFBO0VBQ0EsYUFBQTtFQUNBLGtCQUFBO0VBQ0EsNEJBQUE7TUFBQSxtQkFBQTtFQUNBLHFCQUFBO0FDN0lGOztBRGdKQTtFQzdJQSxXQUFBO0VBQ0EsWUFBQTtFRCtJRSxnQkFBQTtFQUNBLG9CQUFBO0tBQUEsaUJBQUE7RUFDQSwwQkFBQTtLQUFBLHVCQUFBO0FDN0lGOztBRCtJQSw2Q0FBQTs7QUFFQSxzQ0FBQTs7QUFDQTtFQUNFLGdCQUFBO0VBQ0EsOEJBQUE7VUFBQSxzQkFBQTtFQUNBLHVDQUFBO0VBQ0Esa0JBQUE7RUFDQSxtQkFBQTtBQzdJRjs7QUQrSUEsdUNBQUE7O0FBRUEsbUNBQUE7O0FBQ0E7RUFDRTs7SUFFRSxnQ0FBQTtRQUFBLDRCQUFBO1lBQUEsd0JBQUE7RUM3SUY7RURnSkE7SUFDRSxjQUFBO0lBQ0EsZ0JBQUE7SUFDQSxnQkFBQTtJQUNBLGlCQUFBO0lBQ0Esb0NBQUE7UUFBQSxnQ0FBQTtZQUFBLDRCQUFBO0VDOUlGO0VEaUpBO0lDL0lBLGdCQUFBO0lEaUpFLGlCQUFBO0lDL0lGLGFBQUE7SURpSkUsYUFBQTtJQy9JRixtQ0FBQTtRQUFBLCtCQUFBO1lBQUEsMkJBQUE7RUFDQTtBQUNGOztBRGtKQTtFQUNFO0lBQ0Usb0JBQUE7SUFDQSxzQkFBQTtJQ2hKRixzQkFBQTtJRGtKRSx1QkFBQTtFQ2hKRjtFRG1KQTtJQUNFLG1CQUFBO0lBQ0EsdUJBQUE7SUFDQSxzQkFBQTtJQUNBLHVCQUFBO0VDakpGO0FBQ0Y7O0FEbUpBLG9DQUFBOztBQUVBLHlDQUFBOztBQUNBO0VBQ0U7OztJQ2hKRixvREFBQTtJQUNBLHdCQUFBO1FBQUEscUJBQUE7WUFBQSxrQkFBQTtJRG9KSSxZQUFBO0lDbEpKLGFBQUE7RUFDQTtFRHFKRTtJQ25KRixZQUFBO0lBQ0EsWUFBQTtJRHFKSSw0QkFBQTtRQUFBLG1CQUFBO0VDbkpKO0VBQ0E7SUFDRSxXQUFBO0lEc0pFLFlBQUE7SUFDQSxlQUFBO0lBQ0EsWUFBQTtJQ3BKRixhQUFBO0lEc0pFLHFCQUFBO0lDcEpGLDBCQUFBO1FBQUEsaUJBQUE7SURzSkUscUJBQUE7RUNwSkY7RUR1SkE7SUNySkEsV0FBQTtJRHVKRSxZQUFBO0lBQ0EsZ0JBQUE7SUFDQSxvQkFBQTtPQUFBLGlCQUFBO0lBQ0EsMEJBQUE7T0FBQSx1QkFBQTtFQ3JKRjtBQUNGOztBRHVKQSwwQ0FBQTs7QUFFQSx3Q0FBQTs7QUFDQTtFQ3RKQTtJQUNFLFlBQUE7RUFDQTtBQUNGOztBRHlKQTtFQUNFO0lBQ0Usc0JBQUE7RUN2SkY7QUFDRjs7QUR5SkEseUNBQUE7O0FBRUEsOENBQUE7O0FBQ0E7RUFDRTtJQUNFLHFCQUFBO0lBQ0Esd0JBQUE7RUN4SkY7RUFDRjtJRDJKSSxhQUFBO0lDekpKLFFBQUE7SUFDRSxTQUFBO0VBQ0E7RUQ0SkE7O0lBRUUsb0RBQUE7SUMxSkYsd0JBQUE7UUFBQSxxQkFBQTtZQUFBLGtCQUFBO0lENEpFLGFBQUE7SUMxSkYsWUFBQTtJRDRKRSxnQkFBQTtFQzFKRjtFRDZKQTtJQUNFLFlBQUE7SUMzSkYsWUFBQTtJQUNGLDRCQUFBO1FBQUEsbUJBQUE7RUFDQTtFRDhKRTtJQzVKRixXQUFBO0lBQ0EsWUFBQTtJQUNFLGVBQUE7SUFDRixZQUFBO0lEOEpJLGFBQUE7SUM1SkoscUJBQUE7SUFDRSwwQkQ2SkU7UUM3SkYsaUJENkpFO0lDNUpGLHFCRDZKRTtJQzVKRixnQkQ2SkU7RUM1SkY7RUQrSkE7SUM3SkEsV0FBQTtJQUNBLFlBQUE7SUFDQSxnQkFBQTtJQUNGLG9CQUFBO09BQUEsaUJBQUE7SUQrSkksMEJBQUE7T0FBQSx1QkFBQTtFQzdKSjtBQUNBOztBRCtKQSwrQ0FBQTs7QUFFQSw4Q0FBQTs7QUFDQTtFQUNFOzs7SUFHRSw2SkFDRTtFQy9KTjtFQUNBO0lBQ0UsV0FBQTtJQUNBLFlBQUE7SUFDQSxlQUFBO0lBQ0EsWUFBQTtJQUNBLHFCRGtLRTtFQ2pLSjtBQUNBOztBRG1LQSwrQ0FBQTs7QUFFQSxtQ0FBQTs7QUFDQTtFQUNFO0lBQ0UsV0FBQTtJQUNBLFlBQUE7SUNsS0YsWUFBQTtJRG9LRSxhQUFBO0lDbEtGLDhFQUFBO0lEb0tFLHdCQUFBO0lBQ0EsdUJBQUE7UUFBQSxtQkFBQTtZQUFBLGVBQUE7RUNsS0Y7QUFDRjs7QURxS0E7RUFDRTtJQUNFLG9CQUFBO0lDbktGLGlCQUFBO0lEcUtFLHNCQUFBO0lBQ0EsdUJBQUE7RUNuS0Y7QUFDRjs7QURxS0Esb0NBQUE7O0FBRUEsaURBQUE7O0FBQ0E7RUFDRSxrQ0FBQTtNQUFBLDhCQUFBO1VBQUEsMEJBQUE7RUNwS0YsNkJBQUE7QUFDQTs7QUR1S0E7RUFDRTtJQUNFLGtFQUFBO0lDcEtGLGlEQUFBO0lEc0tFLGtEQUFBO0lDcEtGLG1DQUFBO0lEc0tFLHFEQUFBO0VDcEtGO0FBQ0Y7O0FEdUtBO0VBQ0U7SUNyS0Ysa0RBQUE7RUFDQTtBQUNBOztBRHdLQTtFQ3RLQTtJQUNFLGtEQUFBO0VBQ0E7QUFDRjs7QUR3S0Esa0RBQUE7O0FBRUEsMENBQUE7O0FBQ0E7RUFDRTtJQ3ZLQSxpREFBQTtJRHlLRSxrREFBQTtFQ3ZLRjtBQUNGOztBRHlLQSwyQ0FBQTs7QUFFQSxrREFBQTs7QUFDQTtFQUNFO0lDeEtBLG1DQUFBO0lEMEtFLHNDQUFBO0VDeEtGO0FBQ0Y7O0FEMEtBLG1EQUFBOztBQUVBLDJDQUFBOztBQUNBO0VBQ0U7O0lDeEtBLGlCQUFBO0VBQ0E7RUQ0S0E7SUFDRSxnQkFBQTtJQUNBLG9CQUFBO0lBQ0EsdUJBQUE7SUFDQSxvQkFBQTtJQUNBLHVCQUFBO0VDMUtGO0VBQ0Y7O0lEOEtJLGlCQUFBO0VDM0tKO0VBQ0E7SUFDRSxrQkFBQTtJRDhLRSxVQUFBO0lDNUtGLGlCQUFBO0VBQ0Y7RUQrS0U7SUM3S0YsVUFBQTtFQUNFO0FBQ0Y7O0FEK0tBLDRDQUFBOztBQUVBLGdEQUFBOztBQUNBO0VBQ0U7SUM5S0YsZ0JBQUE7RUFDQTtFRGlMRTs7SUFFRSxpQkFBQTtFQy9LRjtFRGtMQTtJQ2hMQSxpREFBQTtJRGtMRSxnREFBQTtJQUNBLHNDQUFBO0lBQ0EsdUJBQUE7SUNoTEYscUNBQUE7SURrTEUsZ0JBQUE7SUNoTEYsaUNBQUE7SURrTEUsNENBQUE7SUFDQSxpQ0FBQTtRQUFBLDZCQUFBO0VDaExGO0VEbUxBO0lBQ0UsV0FBQTtJQUNBLFlBQUE7SUNqTEYsK0JBQUE7SUFBQSwrQkFBQTtJQUFBLHdCQUFBO0lEbUxFLDBCQUFBO1FBQUEsdUJBQUE7WUFBQSxvQkFBQTtJQ2pMRixNQUFBO0VBQ0E7RURvTEE7SUFDRSw2Q0FBQTtJQ2xMRixpREFBQTtJRG9MRSxpREFBQTtJQ2xMRiw4QkFBQTtRQUFBLG9EQUFBO1lBQUEsZ0RBQUE7SURvTEUsMEJBQUE7SUFDQSxZQUFBO0lBQ0Esd0JBQUE7RUNsTEY7RURxTEE7O0lBRUUsV0FBQTtJQUNBLFlBQUE7SUFDQSxZQUFBO0VDbkxGO0FBQ0Y7O0FEc0xBO0VBQ0U7SUFDRSwyQ0FBQTtJQUNBLCtDQUFBO0lBQ0EsK0NBQUE7SUFDQSw2REFBQTtRQUFBLGdEQUFBO0VDcExGO0FBQ0Y7O0FEc0xBLGlEQUFBOztBQUVBLGdEQUFBOztBQUNBO0VDckxBO0lBQ0UsaURBQUE7SUR1TEUsY0FBQTtJQUNBLHNDQUFBO0lBQ0EsdUJBQUE7SUFDQSxnQkFBQTtFQ3JMRjtFRHdMQTtJQUNFLFdBQUE7SUN0TEYsWUFBQTtJRHdMRSxNQUFBO0lBQ0EsdUNBQUE7WUFBQSwrQkFBQTtJQUNBLDhDQUFBO0lBQUEsc0NBQUE7SUFBQSw4QkFBQTtJQUFBLGlEQUFBO0VDdExGO0VEeUxBO0lDdkxBLDJDQUFBO0lBQ0YsK0NBQUE7SUFDQSwrQ0R3TEk7SUFDQSw4QkFBQTtRQUFBLGtEQUFBO1lBQUEsOENBQUE7RUN2TEo7QUFDQTs7QUQwTEE7RUFDRTtJQUNFLG1EQUFBO0lBQ0EsdURBQUE7SUFDQSx1REFBQTtJQUNBLHFFQUFBO1FBQUEsd0RBQUE7RUN4TEY7QUFDRjs7QUQwTEEsaURBQUE7O0FBRUEsb0RBQUE7O0FBQ0E7RUN6TEE7SUFDRSxXQUFBO0lEMkxFLGVBQUE7SUFDQSwyQkFBQTtFQ3pMRjtFRDRMQTs7O0lDeExGLFlBQUE7SUQ0TEksZUFBQTtJQzFMSiw0QkFBQTtFQUNBO0VENkxFO0lDM0xBLCtDRDRMRTtJQzNMSixtREFBQTtJRDZMSSxpREFBQTtJQzNMSixnREFBQTtJQUNFLG9CQUFBO0lENkxFLHNDQUFBO0lBQ0Esb0JBQUE7SUFDQSxxQ0FBQTtJQUNBLDJCQUFBO0lBQ0EsNENBQUE7RUMzTEY7RUFDRjs7SUFFQSw0QkFBQTtFQUNFO0FBQ0Y7O0FEOExBLHFEQUFBIiwiZmlsZSI6ImNvbXBvbmVudHMvc2VjdGlvbnMvY2F0YWxvZ3Mtc2VjdGlvbi9jYXRhbG9ncy1zZWN0aW9uLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi5jYXRhbG9ncy1zZWN0aW9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4jY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWluLWhlaWdodDogNzk1cHg7XG4gIHBhZGRpbmctdG9wOiAxMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDEyMHB4O1xufVxuXG4jY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uOjpiZWZvcmUsXG4jY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xufVxuXG4jY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uOjpiZWZvcmUge1xuICB0b3A6IC0xMDZweDtcbiAgbGVmdDogLTM1MHB4O1xuICB3aWR0aDogODI2cHg7XG4gIGhlaWdodDogNDAycHg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9jb250ZW50L3Rhcmd1cy9jYXRhbG9nL2NhdGFsb2ctYmctbGVmdC1jdXN0b20tdjEuc3ZnXCIpO1xufVxuXG4jY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uOjphZnRlciB7XG4gIHJpZ2h0OiAtNzFweDtcbiAgYm90dG9tOiAwO1xuICB3aWR0aDogMTA2NnB4O1xuICBoZWlnaHQ6IDUxOHB4O1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvY29udGVudC90YXJndXMvY2F0YWxvZy9jYXRhbG9nLWJnLXJpZ2h0LWZpZ21hLnN2Z1wiKTtcbn1cblxuI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuY29udGFpbmVyLFxuI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuc2VjdGlvbl9faGVhZCxcbiNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLnNlY3Rpb25fX2NvbnRlbnQsXG4jY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5zd2lwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG59XG5cbiNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLnNlY3Rpb25fX2hlYWQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4jY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5zZWN0aW9uX19tZW51IHtcbiAgZ2FwOiAyMHB4O1xufVxuXG4jY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5zd2lwZXItbmF2aWdhdGlvbiB7XG4gIHdpZHRoOiAxMjBweDtcbiAgaGVpZ2h0OiA2MHB4O1xufVxuXG4jY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5zd2lwZXItbmF2aWdhdGlvbl9fYnV0dG9uIHtcbiAgd2lkdGg6IDYwcHg7XG4gIGhlaWdodDogNjBweDtcbn1cblxuI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuc2VjdGlvbl9fbW9yZS5idXR0b25fc2Vjb25kYXJ5IHtcbiAgd2lkdGg6IDIxNXB4O1xuICBtaW4taGVpZ2h0OiA2MHB4O1xufVxuXG4jY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5zd2lwZXItc2xpZGUge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi5jYXRhbG9ncy1zZWN0aW9uX19ncmlkIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgbWlubWF4KDAsIDFmcikpO1xuICBnYXA6IDIwcHg7XG59XG5cbi5jYXRhbG9ncy1zZWN0aW9uX19ncmlkIC5jYXRhbG9nLWNhcmQge1xuICBtYXgtd2lkdGg6IG5vbmU7XG59XG5cbi5jYXRhbG9nLWNhcmQge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgwLCAxZnIpIG1pbm1heCgxNTBweCwgMWZyKTtcbiAgZ2FwOiAyOXB4O1xuICBtaW4taGVpZ2h0OiA0MzNweDtcbiAgcGFkZGluZzogNDBweCAzMXB4O1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDIsIDI3LCA0OCwgMC4yNSk7XG4gIGJvcmRlci1yYWRpdXM6IDE2cHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGNvbG9yOiAjMTIxYjIxO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJveC1zaGFkb3c6IDAgMThweCA0OHB4IHJnYmEoOSwgNDgsIDc4LCAwLjA0KTtcbiAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIC4ycyBlYXNlLCBib3gtc2hhZG93IC4ycyBlYXNlLCB0cmFuc2Zvcm0gLjJzIGVhc2U7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLmNhdGFsb2ctY2FyZDpob3ZlciB7XG4gIGJvcmRlci1jb2xvcjogIzQwYWRlMztcbiAgYm94LXNoYWRvdzogMCAyNHB4IDYycHggcmdiYSg5LCA0OCwgNzgsIDAuMDkpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XG59XG5cbi5jYXRhbG9nLWNhcmRfX2NvbnRlbnQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBtaW4td2lkdGg6IDA7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZ2FwOiAyOHB4O1xufVxuXG4uY2F0YWxvZy1jYXJkX19icmFuZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1pbi13aWR0aDogMDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGdhcDogMTBweDtcbn1cblxuLmNhdGFsb2ctY2FyZF9fbG9nbyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDY1cHg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cbi5jYXRhbG9nLWNhcmRfX2xvZ28gaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXgtd2lkdGg6IDIzMnB4O1xuICBtYXgtaGVpZ2h0OiA2NXB4O1xuICBvYmplY3QtZml0OiBjb250YWluO1xufVxuXG4uY2F0YWxvZy1jYXJkX190aXRsZSB7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICMxMjFiMjE7XG59XG5cbi5jYXRhbG9nLWNhcmRfX2Rlc2NyaXB0aW9uIHtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBsZXR0ZXItc3BhY2luZzogMDtcbiAgY29sb3I6IHJnYmEoMTgsIDI3LCAzMywgMC44KTtcbn1cblxuLmNhdGFsb2ctY2FyZF9fYnV0dG9uLmJ1dHRvbiB7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiA2MHB4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzQwYWRlMyAhaW1wb3J0YW50O1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uY2F0YWxvZy1jYXJkX19idXR0b24uYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwOGNkMSAhaW1wb3J0YW50O1xufVxuXG4uY2F0YWxvZy1jYXJkX19pbWFnZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1pbi13aWR0aDogMDtcbiAgaGVpZ2h0OiAzNTNweDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1hcmdpbjogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyLCAyNywgNDgsIDAuMSk7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgYmFja2dyb3VuZDogI2Y3ZjlmYjtcbn1cblxuLmNhdGFsb2ctY2FyZF9faW1hZ2UgaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuXG4jY29uc3RydWN0b3JfYmxvY2tfMy5jdGEtc2VjdGlvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6XG4gICAgbGluZWFyLWdyYWRpZW50KDQ5ZGVnLCAjYjdkMmU5IDMxJSwgI2UwZWRmOCA3MCUpLFxuICAgIGxpbmVhci1ncmFkaWVudCg5MGRlZywgI2ZmZiAwJSwgI2ZmZiAxMDAlKSAhaW1wb3J0YW50O1xufVxuXG4jY29uc3RydWN0b3JfYmxvY2tfMyAuc2VjdGlvbl9fdGl0bGUgLmgyLFxuI2NvbnN0cnVjdG9yX2Jsb2NrXzMgLnNlY3Rpb25fX3RpdGxlIHtcbiAgbWF4LXdpZHRoOiA3MDVweDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDE0MzlweCkge1xuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIHtcbiAgICBtaW4taGVpZ2h0OiBhdXRvO1xuICB9XG5cbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbjo6YmVmb3JlIHtcbiAgICBsZWZ0OiAtNTIwcHg7XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uOjphZnRlciB7XG4gICAgcmlnaHQ6IC00MjBweDtcbiAgICBib3R0b206IDQwcHg7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDExNjBweCkge1xuICAuY2F0YWxvZ3Mtc2VjdGlvbl9fZ3JpZCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgbWlubWF4KDAsIDFmcikpO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuY2F0YWxvZ3Mtc2VjdGlvbl9fZ3JpZCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIHtcbiAgICBwYWRkaW5nLXRvcDogNzBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNzBweDtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLnNlY3Rpb25fX2hlYWQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5zZWN0aW9uX19tZW51IHtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLnNlY3Rpb25fX21vcmUuYnV0dG9uX3NlY29uZGFyeSB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cblxuICAuY2F0YWxvZy1jYXJkIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgwLCAxZnIpO1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgcGFkZGluZzogMjRweDtcbiAgfVxuXG4gIC5jYXRhbG9nLWNhcmRfX2ltYWdlIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYXNwZWN0LXJhdGlvOiAyMjAgLyAzMTA7XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uOjpiZWZvcmUge1xuICAgIHRvcDogLTgwcHg7XG4gICAgbGVmdDogLTU2MHB4O1xuICAgIHdpZHRoOiA3NjBweDtcbiAgICBoZWlnaHQ6IDM3MHB4O1xuICB9XG5cbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbjo6YWZ0ZXIge1xuICAgIHJpZ2h0OiAtNjEwcHg7XG4gICAgYm90dG9tOiA2MHB4O1xuICAgIHdpZHRoOiA4ODBweDtcbiAgICBoZWlnaHQ6IDQyOHB4O1xuICB9XG59XG5cbi8qIGNvZGV4LWNhdGFsb2ctY2FyZC1hZGFwdGl2ZS1zdGFydCAqL1xuLmNhdGFsb2ctY2FyZCB7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDAsIDFmcikgbWlubWF4KDcuNXJlbSwgMC44NmZyKTtcbiAgZ2FwOiBjbGFtcCgxcmVtLCAxLjh2dywgMS44MTI1cmVtKTtcbiAgcGFkZGluZzogY2xhbXAoMS41cmVtLCAyLjF2dywgMi41cmVtKSBjbGFtcCgxLjI1cmVtLCAxLjd2dywgMS45Mzc1cmVtKTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmNhdGFsb2ctY2FyZF9fY29udGVudCxcbi5jYXRhbG9nLWNhcmRfX2JyYW5kIHtcbiAgbWluLXdpZHRoOiAwO1xufVxuXG4uY2F0YWxvZy1jYXJkX19sb2dvIHtcbiAgaGVpZ2h0OiBjbGFtcCgyLjYyNXJlbSwgNHZ3LCA0LjA2MjVyZW0pO1xufVxuXG4uY2F0YWxvZy1jYXJkX19sb2dvIGltZyB7XG4gIG1heC13aWR0aDogbWluKDEwMCUsIDE0LjVyZW0pO1xuICBtYXgtaGVpZ2h0OiBjbGFtcCgyLjYyNXJlbSwgNHZ3LCA0LjA2MjVyZW0pO1xufVxuXG4uY2F0YWxvZy1jYXJkX190aXRsZSB7XG4gIGZvbnQtc2l6ZTogY2xhbXAoMS4xMjVyZW0sIDEuMjV2dywgMS41cmVtKTtcbiAgbGluZS1oZWlnaHQ6IDEuMzU7XG59XG5cbi5jYXRhbG9nLWNhcmRfX2Rlc2NyaXB0aW9uIHtcbiAgZm9udC1zaXplOiBjbGFtcCgwLjkzNzVyZW0sIDF2dywgMS4xMjVyZW0pO1xuICBsaW5lLWhlaWdodDogMS40NTtcbiAgb3ZlcmZsb3ctd3JhcDogYW55d2hlcmU7XG59XG5cbi5jYXRhbG9nLWNhcmRfX2J1dHRvbi5idXR0b24ge1xuICBtaW4taGVpZ2h0OiBjbGFtcCgzcmVtLCAzLjJ2dywgMy43NXJlbSk7XG59XG5cbi5jYXRhbG9nLWNhcmRfX2ltYWdlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTMuNzVyZW07XG4gIGhlaWdodDogYXV0bztcbiAgYXNwZWN0LXJhdGlvOiAyMjAgLyAzMTA7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAganVzdGlmeS1zZWxmOiBlbmQ7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuLmNhdGFsb2ctY2FyZF9faW1hZ2UgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgbWF4LWhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY29udGFpbjtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDE0MzlweCkgYW5kIChtaW4td2lkdGg6IDExNjFweCkge1xuICAuY2F0YWxvZy1jYXJkIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgwLCAxZnIpIG1pbm1heCg2Ljg3NXJlbSwgMC43MmZyKTtcbiAgfVxuXG4gIC5jYXRhbG9nLWNhcmRfX2ltYWdlIHtcbiAgICBtYXgtd2lkdGg6IDExLjI1cmVtO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTYwcHgpIHtcbiAgLmNhdGFsb2dzLXNlY3Rpb25fX2dyaWQge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC1hdXRvLWZsb3c6IGNvbHVtbjtcbiAgICBncmlkLWF1dG8tY29sdW1uczogbWlubWF4KDIwcmVtLCA3MnZ3KTtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG5vbmU7XG4gICAgZ2FwOiAxLjI1cmVtO1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgb3ZlcmZsb3cteTogaGlkZGVuO1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjYyNXJlbTtcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgc2Nyb2xsLXNuYXAtdHlwZTogeCBwcm94aW1pdHk7XG4gIH1cblxuICAuY2F0YWxvZ3Mtc2VjdGlvbl9fZ3JpZCAuY2F0YWxvZy1jYXJkLFxuICAuY2F0YWxvZ3Mtc2VjdGlvbiAuc3dpcGVyLXNsaWRlIHtcbiAgICBzY3JvbGwtc25hcC1hbGlnbjogc3RhcnQ7XG4gIH1cblxuICAuY2F0YWxvZy1jYXJkIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgwLCAxZnIpIG1pbm1heCg3cmVtLCAwLjcyZnIpO1xuICAgIG1pbi13aWR0aDogMDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmNhdGFsb2dzLXNlY3Rpb25fX2dyaWQge1xuICAgIGdyaWQtYXV0by1jb2x1bW5zOiBtaW5tYXgoMTcuNXJlbSwgODR2dyk7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBub25lO1xuICB9XG5cbiAgLmNhdGFsb2ctY2FyZCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoMCwgMWZyKSBtaW5tYXgoNi4yNXJlbSwgMC42OGZyKTtcbiAgICBtaW4taGVpZ2h0OiAyNHJlbTtcbiAgICBwYWRkaW5nOiAxLjVyZW07XG4gIH1cblxuICAuY2F0YWxvZy1jYXJkX19pbWFnZSB7XG4gICAgbWF4LXdpZHRoOiA5LjM3NXJlbTtcbiAgICBhc3BlY3QtcmF0aW86IDIyMCAvIDMxMDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgLmNhdGFsb2ctY2FyZCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoMCwgMWZyKSBtaW5tYXgoNS42MjVyZW0sIDAuNjJmcik7XG4gICAgZ2FwOiAwLjg3NXJlbTtcbiAgfVxuXG4gIC5jYXRhbG9nLWNhcmRfX2J1dHRvbi5idXR0b24ge1xuICAgIG1pbi1oZWlnaHQ6IDIuODc1cmVtO1xuICB9XG59XG4vKiBjb2RleC1jYXRhbG9nLWNhcmQtYWRhcHRpdmUtZW5kICovXG5cbi8qIGNvZGV4LWNhdGFsb2ctY2FyZC1oZWlnaHQtYWRhcHRpdmUtc3RhcnQgKi9cbi5jYXRhbG9nLWNhcmQge1xuICBtaW4taGVpZ2h0OiBjbGFtcCgyMC41cmVtLCAyNS41dncsIDI3LjA2MjVyZW0pO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTQzOXB4KSBhbmQgKG1pbi13aWR0aDogMTE2MXB4KSB7XG4gIC5jYXRhbG9nLWNhcmQge1xuICAgIG1pbi1oZWlnaHQ6IGNsYW1wKDE5LjVyZW0sIDI0dncsIDIzLjVyZW0pO1xuICB9XG5cbiAgLmNhdGFsb2ctY2FyZF9fY29udGVudCB7XG4gICAgZ2FwOiBjbGFtcCgxcmVtLCAxLjd2dywgMS41cmVtKTtcbiAgfVxuXG4gIC5jYXRhbG9nLWNhcmRfX2JyYW5kIHtcbiAgICBnYXA6IDAuNXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTE2MHB4KSB7XG4gIC5jYXRhbG9nLWNhcmQge1xuICAgIG1pbi1oZWlnaHQ6IGNsYW1wKDE4Ljc1cmVtLCAzNXZ3LCAyMS4yNXJlbSk7XG4gIH1cblxuICAuY2F0YWxvZy1jYXJkX19jb250ZW50IHtcbiAgICBnYXA6IDEuMTI1cmVtO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuY2F0YWxvZy1jYXJkIHtcbiAgICBtaW4taGVpZ2h0OiBjbGFtcCgxNy41cmVtLCA3OHZ3LCAyMHJlbSk7XG4gICAgcGFkZGluZy1ibG9jazogMS4yNXJlbTtcbiAgfVxuXG4gIC5jYXRhbG9nLWNhcmRfX2NvbnRlbnQge1xuICAgIGdhcDogMXJlbTtcbiAgfVxuXG4gIC5jYXRhbG9nLWNhcmRfX2JyYW5kIHtcbiAgICBnYXA6IDAuNXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgLmNhdGFsb2ctY2FyZCB7XG4gICAgbWluLWhlaWdodDogY2xhbXAoMTYuODc1cmVtLCA4MnZ3LCAxOXJlbSk7XG4gICAgcGFkZGluZy1ibG9jazogMS4xMjVyZW07XG4gIH1cbn1cbi8qIGNvZGV4LWNhdGFsb2ctY2FyZC1oZWlnaHQtYWRhcHRpdmUtZW5kICovXG5cblxuLyogY29kZXgtY2F0YWxvZy1jYXJkLWJ1dHRvbi1zaXplLXN0YXJ0ICovXG4uY2F0YWxvZy1jYXJkIHtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoMTAuNXJlbSwgMWZyKSBtaW5tYXgoNy41cmVtLCAwLjgyZnIpO1xufVxuXG4uY2F0YWxvZy1jYXJkX19jb250ZW50IHtcbiAgbWluLXdpZHRoOiAxMC41cmVtO1xufVxuXG4uY2F0YWxvZy1jYXJkX19idXR0b24uYnV0dG9uIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi13aWR0aDogMDtcbiAgbWluLWhlaWdodDogdmFyKC0tYnV0dG9uLW1pbi1oZWlnaHQpICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctdG9wOiBjYWxjKHZhcigtLWJ1dHRvbi1wYWRkaW5nLXRvcCkgLSB2YXIoLS1idXR0b24tYm9yZGVyLXdpZHRoKSk7XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKHZhcigtLWJ1dHRvbi1wYWRkaW5nLWJvdHRvbSkgLSB2YXIoLS1idXR0b24tYm9yZGVyLXdpZHRoKSk7XG4gIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1idXR0b24tcGFkZGluZy1ob3Jpem9udGFsKSAtIHZhcigtLWJ1dHRvbi1ib3JkZXItd2lkdGgpKTtcbiAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS1idXR0b24tcGFkZGluZy1ob3Jpem9udGFsKSAtIHZhcigtLWJ1dHRvbi1ib3JkZXItd2lkdGgpKTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDE0MzlweCkgYW5kIChtaW4td2lkdGg6IDExNjFweCkge1xuICAuY2F0YWxvZy1jYXJkIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgxMC4yNXJlbSwgMWZyKSBtaW5tYXgoNi43NXJlbSwgMC43MmZyKTtcbiAgfVxuXG4gIC5jYXRhbG9nLWNhcmRfX2NvbnRlbnQge1xuICAgIG1pbi13aWR0aDogMTAuMjVyZW07XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDExNjBweCkge1xuICAuY2F0YWxvZ3Mtc2VjdGlvbl9fZ3JpZCB7XG4gICAgZ3JpZC1hdXRvLWNvbHVtbnM6IG1pbm1heCgyMnJlbSwgNzJ2dyk7XG4gIH1cblxuICAuY2F0YWxvZy1jYXJkIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgxMC4yNXJlbSwgMWZyKSBtaW5tYXgoNi43NXJlbSwgMC43MmZyKTtcbiAgfVxuXG4gIC5jYXRhbG9nLWNhcmRfX2NvbnRlbnQge1xuICAgIG1pbi13aWR0aDogMTAuMjVyZW07XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5jYXRhbG9ncy1zZWN0aW9uX19ncmlkIHtcbiAgICBncmlkLWF1dG8tY29sdW1uczogbWlubWF4KDIwLjVyZW0sIDg0dncpO1xuICB9XG5cbiAgLmNhdGFsb2ctY2FyZCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoOS43NXJlbSwgMWZyKSBtaW5tYXgoNS43NXJlbSwgMC42MmZyKTtcbiAgfVxuXG4gIC5jYXRhbG9nLWNhcmRfX2NvbnRlbnQge1xuICAgIG1pbi13aWR0aDogOS43NXJlbTtcbiAgfVxufVxuLyogY29kZXgtY2F0YWxvZy1jYXJkLWJ1dHRvbi1zaXplLWVuZCAqL1xuXG5cbi8qIGNvZGV4LWNhdGFsb2ctYmctYWRhcHRpdmUtc3RhcnQgKi9cbiNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24ge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4jY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uOjpiZWZvcmUge1xuICB0b3A6IGNsYW1wKC0ycmVtLCAtMi40dncsIC0wLjVyZW0pO1xuICBsZWZ0OiBjbGFtcCgtMy41cmVtLCAtMy42dncsIC0wLjc1cmVtKTtcbiAgd2lkdGg6IGNsYW1wKDE0cmVtLCAzMXZ3LCAzMnJlbSk7XG4gIGhlaWdodDogY2xhbXAoNi44MTI1cmVtLCAxNS4xdncsIDE1LjU2MjVyZW0pO1xufVxuXG4jY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uOjphZnRlciB7XG4gIHJpZ2h0OiBjbGFtcCgtNS41cmVtLCAtNS40dncsIC0xcmVtKTtcbiAgYm90dG9tOiAtMXB4O1xuICB3aWR0aDogY2xhbXAoMjZyZW0sIDU4dncsIDY2LjYyNXJlbSk7XG4gIGhlaWdodDogY2xhbXAoMTIuNjI1cmVtLCAyOC4ydncsIDMyLjM3NXJlbSk7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTYwcHgpIHtcbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbjo6YmVmb3JlIHtcbiAgICB0b3A6IGNsYW1wKC0xLjVyZW0sIC0yLjh2dywgLTAuNXJlbSk7XG4gICAgbGVmdDogY2xhbXAoLTNyZW0sIC00dncsIC0wLjc1cmVtKTtcbiAgICB3aWR0aDogY2xhbXAoMTFyZW0sIDMzdncsIDIycmVtKTtcbiAgICBoZWlnaHQ6IGNsYW1wKDUuMzc1cmVtLCAxNi4xdncsIDEwLjY4NzVyZW0pO1xuICB9XG5cbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbjo6YWZ0ZXIge1xuICAgIHJpZ2h0OiBjbGFtcCgtNC4yNXJlbSwgLTZ2dywgLTAuNzVyZW0pO1xuICAgIGJvdHRvbTogLTFweDtcbiAgICB3aWR0aDogY2xhbXAoMjByZW0sIDYydncsIDQycmVtKTtcbiAgICBoZWlnaHQ6IGNsYW1wKDkuNzVyZW0sIDMwLjF2dywgMjAuNDM3NXJlbSk7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb246OmJlZm9yZSB7XG4gICAgdG9wOiAtMC43NXJlbTtcbiAgICBsZWZ0OiAtMi4yNXJlbTtcbiAgICB3aWR0aDogY2xhbXAoOXJlbSwgNDV2dywgMTVyZW0pO1xuICAgIGhlaWdodDogY2xhbXAoNC4zNzVyZW0sIDIxLjl2dywgNy4zMTI1cmVtKTtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb246OmFmdGVyIHtcbiAgICByaWdodDogLTMuMjVyZW07XG4gICAgYm90dG9tOiAtMXB4O1xuICAgIHdpZHRoOiBjbGFtcCgxN3JlbSwgNzR2dywgMjRyZW0pO1xuICAgIGhlaWdodDogY2xhbXAoOC4yNXJlbSwgMzZ2dywgMTEuNjg3NXJlbSk7XG4gIH1cbn1cbi8qIGNvZGV4LWNhdGFsb2ctYmctYWRhcHRpdmUtZW5kICovXG5cblxuLyogY29kZXgtY2F0YWxvZy1tb2JpbGUtd2lkdGgtc3RhcnQgKi9cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuY2F0YWxvZ3Mtc2VjdGlvbl9fZ3JpZCB7XG4gICAgZ3JpZC1hdXRvLWNvbHVtbnM6IG1pbm1heCgyMy43NXJlbSwgOTJ2dyk7XG4gIH1cblxuICAuY2F0YWxvZy1jYXJkIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgxMC41cmVtLCAxZnIpIG1pbm1heCg2Ljc1cmVtLCAwLjdmcik7XG4gICAgZ2FwOiAxLjEyNXJlbTtcbiAgICBwYWRkaW5nLWlubGluZTogMS41cmVtO1xuICB9XG5cbiAgLmNhdGFsb2ctY2FyZF9fY29udGVudCB7XG4gICAgbWluLXdpZHRoOiAxMC41cmVtO1xuICB9XG5cbiAgLmNhdGFsb2ctY2FyZF9faW1hZ2Uge1xuICAgIG1pbi13aWR0aDogNi4yNXJlbTtcbiAgICBtYXgtd2lkdGg6IDguMjVyZW07XG4gICAganVzdGlmeS1zZWxmOiBlbmQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQyMHB4KSB7XG4gIC5jYXRhbG9ncy1zZWN0aW9uX19ncmlkIHtcbiAgICBncmlkLWF1dG8tY29sdW1uczogbWlubWF4KDIyLjVyZW0sIDk0dncpO1xuICB9XG5cbiAgLmNhdGFsb2ctY2FyZCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoMTByZW0sIDFmcikgbWlubWF4KDYuMjVyZW0sIDAuNjVmcik7XG4gICAgZ2FwOiAxcmVtO1xuICAgIHBhZGRpbmctaW5saW5lOiAxLjI1cmVtO1xuICB9XG5cbiAgLmNhdGFsb2ctY2FyZF9fY29udGVudCB7XG4gICAgbWluLXdpZHRoOiAxMHJlbTtcbiAgfVxuXG4gIC5jYXRhbG9nLWNhcmRfX2ltYWdlIHtcbiAgICBtaW4td2lkdGg6IDZyZW07XG4gICAgbWF4LXdpZHRoOiA3Ljc1cmVtO1xuICB9XG59XG4vKiBjb2RleC1jYXRhbG9nLW1vYmlsZS13aWR0aC1lbmQgKi9cblxuXG4vKiBjb2RleC1jYXRhbG9nLW1vYmlsZS1zd2lwZXItd2lkdGgtc3RhcnQgKi9cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuY2F0YWxvZ3Mtc2VjdGlvbiAuc3dpcGVyLXNsaWRlIHtcbiAgICB3aWR0aDogMjMuNzVyZW0gIWltcG9ydGFudDtcbiAgICBtaW4td2lkdGg6IDIzLjc1cmVtO1xuICAgIGZsZXg6IDAgMCAyMy43NXJlbTtcbiAgfVxuXG4gIC5jYXRhbG9ncy1zZWN0aW9uIC5zd2lwZXItc2xpZGUgLmNhdGFsb2ctY2FyZCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQyMHB4KSB7XG4gIC5jYXRhbG9ncy1zZWN0aW9uIC5zd2lwZXItc2xpZGUge1xuICAgIHdpZHRoOiAyMi41cmVtICFpbXBvcnRhbnQ7XG4gICAgbWluLXdpZHRoOiAyMi41cmVtO1xuICAgIGZsZXgtYmFzaXM6IDIyLjVyZW07XG4gIH1cbn1cbi8qIGNvZGV4LWNhdGFsb2ctbW9iaWxlLXN3aXBlci13aWR0aC1lbmQgKi9cblxuXG4vKiBjb2RleC1jYXRhbG9nLW1vYmlsZS1wZWVrLWZpdC1zdGFydCAqL1xuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5jYXRhbG9ncy1zZWN0aW9uX19ncmlkIHtcbiAgICBncmlkLWF1dG8tY29sdW1uczogbWlubWF4KDE4Ljc1cmVtLCBjYWxjKDEwMHZ3IC0gMi41cmVtKSk7XG4gIH1cblxuICAuY2F0YWxvZ3Mtc2VjdGlvbiAuc3dpcGVyLXNsaWRlIHtcbiAgICB3aWR0aDogY2FsYygxMDB2dyAtIDIuNXJlbSkgIWltcG9ydGFudDtcbiAgICBtYXgtd2lkdGg6IDIxcmVtO1xuICAgIG1pbi13aWR0aDogMTguNzVyZW07XG4gICAgZmxleDogMCAwIGNhbGMoMTAwdncgLSAyLjVyZW0pO1xuICB9XG5cbiAgLmNhdGFsb2ctY2FyZCxcbiAgLmNhdGFsb2dzLXNlY3Rpb24gLnN3aXBlci1zbGlkZSAuY2F0YWxvZy1jYXJkIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCg4LjVyZW0sIDFmcikgbWlubWF4KDQuNzVyZW0sIDUuNzVyZW0pO1xuICAgIGdhcDogMC43NXJlbTtcbiAgICBwYWRkaW5nOiAxLjI1cmVtO1xuICB9XG5cbiAgLmNhdGFsb2ctY2FyZF9fY29udGVudCB7XG4gICAgbWluLXdpZHRoOiA4LjVyZW07XG4gIH1cblxuICAuY2F0YWxvZy1jYXJkX19pbWFnZSB7XG4gICAgbWluLXdpZHRoOiA0Ljc1cmVtO1xuICAgIG1heC13aWR0aDogNS43NXJlbTtcbiAgICBqdXN0aWZ5LXNlbGY6IGVuZDtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gIH1cblxuICAuY2F0YWxvZy1jYXJkX19idXR0b24uYnV0dG9uIHtcbiAgICBtaW4taGVpZ2h0OiB2YXIoLS1idXR0b24tbWluLWhlaWdodCkgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMzgwcHgpIHtcbiAgLmNhdGFsb2dzLXNlY3Rpb24gLnN3aXBlci1zbGlkZSB7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICB9XG5cbiAgLmNhdGFsb2ctY2FyZCxcbiAgLmNhdGFsb2dzLXNlY3Rpb24gLnN3aXBlci1zbGlkZSAuY2F0YWxvZy1jYXJkIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCg4cmVtLCAxZnIpIG1pbm1heCg0LjI1cmVtLCA1cmVtKTtcbiAgICBnYXA6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmc6IDEuMjVyZW07XG4gIH1cblxuICAuY2F0YWxvZy1jYXJkX19jb250ZW50IHtcbiAgICBtaW4td2lkdGg6IDhyZW07XG4gIH1cblxuICAuY2F0YWxvZy1jYXJkX19pbWFnZSB7XG4gICAgbWluLXdpZHRoOiA0LjI1cmVtO1xuICAgIG1heC13aWR0aDogNXJlbTtcbiAgfVxufVxuLyogY29kZXgtY2F0YWxvZy1tb2JpbGUtcGVlay1maXQtZW5kICovXG5cblxuLyogY29kZXgtY2F0YWxvZy1wYWdlLWxpc3Rpbmctc3RhcnQgKi9cbi5wYWdlX19ib2R5X2NhdGFsb2cgLmNhdGFsb2dzLXNlY3Rpb25fX2dyaWQge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLnBhZ2VfX2JvZHlfY2F0YWxvZyAuY2F0YWxvZy1jYXJkLmlzLWhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLnBhZ2VfX2JvZHlfY2F0YWxvZyAuY2F0YWxvZ3Mtc2VjdGlvbl9fc2hvdy1tb3JlIHtcbiAgbWFyZ2luOiAyLjVyZW0gYXV0byAwO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTE2MHB4KSB7XG4gIC5wYWdlX19ib2R5X2NhdGFsb2cgLmNhdGFsb2dzLXNlY3Rpb25fX2dyaWQge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC1hdXRvLWZsb3c6IHJvdztcbiAgICBncmlkLWF1dG8tY29sdW1uczogaW5pdGlhbDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCBtaW5tYXgoMCwgMWZyKSk7XG4gICAgZ2FwOiAxLjI1cmVtO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIHNjcm9sbC1zbmFwLXR5cGU6IG5vbmU7XG4gIH1cblxuICAucGFnZV9fYm9keV9jYXRhbG9nIC5jYXRhbG9nLWNhcmQsXG4gIC5wYWdlX19ib2R5X2NhdGFsb2cgLmNhdGFsb2dzLXNlY3Rpb25fX2dyaWQgLmNhdGFsb2ctY2FyZCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIHNjcm9sbC1zbmFwLWFsaWduOiBub25lO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA2MzBweCkge1xuICAucGFnZV9fYm9keV9jYXRhbG9nIC5jYXRhbG9ncy1zZWN0aW9uX19ncmlkIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICBnYXA6IDEuMjVyZW07XG4gIH1cblxuICAucGFnZV9fYm9keV9jYXRhbG9nIC5jYXRhbG9nLWNhcmQsXG4gIC5wYWdlX19ib2R5X2NhdGFsb2cgLmNhdGFsb2dzLXNlY3Rpb25fX2dyaWQgLmNhdGFsb2ctY2FyZCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoOC41cmVtLCAxZnIpIG1pbm1heCg0Ljc1cmVtLCA1Ljc1cmVtKTtcbiAgICBwYWRkaW5nOiAxLjI1cmVtO1xuICB9XG5cbiAgLnBhZ2VfX2JvZHlfY2F0YWxvZyAuY2F0YWxvZ3Mtc2VjdGlvbl9fc2hvdy1tb3JlIHtcbiAgICBtYXJnaW4tdG9wOiAxLjVyZW07XG4gIH1cbn1cbi8qIGNvZGV4LWNhdGFsb2ctcGFnZS1saXN0aW5nLWVuZCAqL1xuXG5cbi8qIGNvZGV4LWNhdGFsb2ctc2hvdy1tb3JlLWhpZGRlbi1zdGFydCAqL1xuLnBhZ2VfX2JvZHlfY2F0YWxvZyAuY2F0YWxvZ3Mtc2VjdGlvbl9fc2hvdy1tb3JlW2hpZGRlbl0sXG4ucGFnZV9fYm9keV9jYXRhbG9nIC5jYXRhbG9ncy1zZWN0aW9uX19zaG93LW1vcmUuaXMtaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuLyogY29kZXgtY2F0YWxvZy1zaG93LW1vcmUtaGlkZGVuLWVuZCAqL1xuXG4vKiBjb2RleC1ob21lLWNhdGFsb2ctbW9iaWxlLWNhcmQtd2lkdGgtc3RhcnQgKi9cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5zd2lwZXItc2xpZGUge1xuICAgIHdpZHRoOiBtaW4oODZ2dywgMThyZW0pICFpbXBvcnRhbnQ7XG4gICAgbWluLXdpZHRoOiBtaW4oODZ2dywgMThyZW0pO1xuICAgIG1heC13aWR0aDogMThyZW07XG4gICAgZmxleDogMCAwIG1pbig4NnZ3LCAxOHJlbSk7XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5jYXRhbG9nLWNhcmQsXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLnN3aXBlci1zbGlkZSAuY2F0YWxvZy1jYXJkIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCg5LjI1cmVtLCAxZnIpIG1pbm1heCg0LjVyZW0sIDUuMjVyZW0pO1xuICAgIGdhcDogMC43NXJlbTtcbiAgICBwYWRkaW5nOiAxLjI1cmVtO1xuICB9XG5cbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuY2F0YWxvZy1jYXJkX19jb250ZW50IHtcbiAgICBtaW4td2lkdGg6IDkuMjVyZW07XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5jYXRhbG9nLWNhcmRfX2ltYWdlIHtcbiAgICBtaW4td2lkdGg6IDQuNXJlbTtcbiAgICBtYXgtd2lkdGg6IDUuMjVyZW07XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5jYXRhbG9nLWNhcmRfX2J1dHRvbi5idXR0b24ge1xuICAgIHdpZHRoOiBtYXgtY29udGVudDtcbiAgICBtaW4td2lkdGg6IDhyZW07XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDM2MHB4KSB7XG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLnN3aXBlci1zbGlkZSB7XG4gICAgd2lkdGg6IG1pbig4OHZ3LCAxNy4yNXJlbSkgIWltcG9ydGFudDtcbiAgICBtaW4td2lkdGg6IG1pbig4OHZ3LCAxNy4yNXJlbSk7XG4gICAgbWF4LXdpZHRoOiAxNy4yNXJlbTtcbiAgICBmbGV4LWJhc2lzOiBtaW4oODh2dywgMTcuMjVyZW0pO1xuICB9XG5cbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuY2F0YWxvZy1jYXJkLFxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5zd2lwZXItc2xpZGUgLmNhdGFsb2ctY2FyZCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoOXJlbSwgMWZyKSBtaW5tYXgoNC4yNXJlbSwgNC43NXJlbSk7XG4gICAgZ2FwOiAwLjYyNXJlbTtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLmNhdGFsb2ctY2FyZF9fY29udGVudCB7XG4gICAgbWluLXdpZHRoOiA5cmVtO1xuICB9XG5cbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuY2F0YWxvZy1jYXJkX19pbWFnZSB7XG4gICAgbWluLXdpZHRoOiA0LjI1cmVtO1xuICAgIG1heC13aWR0aDogNC43NXJlbTtcbiAgfVxufVxuLyogY29kZXgtaG9tZS1jYXRhbG9nLW1vYmlsZS1jYXJkLXdpZHRoLWVuZCAqL1xuXG4vKiBjb2RleC1ob21lLWNhdGFsb2ctbW9iaWxlLXV0cC13aWR0aC1zdGFydCAqL1xuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLnN3aXBlci1zbGlkZSB7XG4gICAgd2lkdGg6IG1pbigyOTBweCwgY2FsYygxMDB2dyAtIDMwcHgpKSAhaW1wb3J0YW50O1xuICAgIG1pbi13aWR0aDogbWluKDI5MHB4LCBjYWxjKDEwMHZ3IC0gMzBweCkpICFpbXBvcnRhbnQ7XG4gICAgbWF4LXdpZHRoOiBtaW4oMjkwcHgsIGNhbGMoMTAwdncgLSAzMHB4KSkgIWltcG9ydGFudDtcbiAgICBmbGV4OiAwIDAgbWluKDI5MHB4LCBjYWxjKDEwMHZ3IC0gMzBweCkpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5jYXRhbG9nLWNhcmQsXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLnN3aXBlci1zbGlkZSAuY2F0YWxvZy1jYXJkIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCg5LjI1cmVtLCAxZnIpIG1pbm1heCg0LjVyZW0sIDUuMjVyZW0pO1xuICB9XG5cbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuY2F0YWxvZy1jYXJkX19pbWFnZSB7XG4gICAgbWluLXdpZHRoOiA0LjVyZW07XG4gICAgbWF4LXdpZHRoOiA1LjI1cmVtO1xuICB9XG59XG4vKiBjb2RleC1ob21lLWNhdGFsb2ctbW9iaWxlLXV0cC13aWR0aC1lbmQgKi9cblxuLyogY29kZXgtaG9tZS1jYXRhbG9nLW1vYmlsZS1jYXJkLXdpZHRoLXYyICovXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuc3dpcGVyLXNsaWRlIHtcbiAgICB3aWR0aDogbWluKDkydncsIDIycmVtKSAhaW1wb3J0YW50O1xuICAgIG1pbi13aWR0aDogbWluKDkydncsIDIycmVtKSAhaW1wb3J0YW50O1xuICAgIG1heC13aWR0aDogbWluKDkydncsIDIycmVtKSAhaW1wb3J0YW50O1xuICAgIGZsZXg6IDAgMCBtaW4oOTJ2dywgMjJyZW0pICFpbXBvcnRhbnQ7XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5jYXRhbG9nLWNhcmQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDEwLjI1cmVtLCAxZnIpIG1pbm1heCg0Ljc1cmVtLCA1LjI1cmVtKTtcbiAgICBnYXA6IDAuODc1cmVtO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDE3LjI1cmVtO1xuICAgIHBhZGRpbmc6IDEuMjVyZW07XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5jYXRhbG9nLWNhcmRfX2NvbnRlbnQge1xuICAgIG1pbi13aWR0aDogMTAuMjVyZW07XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5jYXRhbG9nLWNhcmRfX2J1dHRvbi5idXR0b24ge1xuICAgIHdpZHRoOiBmaXQtY29udGVudDtcbiAgICBtaW4td2lkdGg6IDguNXJlbTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLmNhdGFsb2ctY2FyZF9faW1hZ2Uge1xuICAgIG1pbi13aWR0aDogNC43NXJlbTtcbiAgICBtYXgtd2lkdGg6IDUuMjVyZW07XG4gICAganVzdGlmeS1zZWxmOiBlbmQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQyMHB4KSB7XG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLnN3aXBlci1zbGlkZSB7XG4gICAgd2lkdGg6IGNhbGMoMTAwdncgLSAxLjI1cmVtKSAhaW1wb3J0YW50O1xuICAgIG1pbi13aWR0aDogY2FsYygxMDB2dyAtIDEuMjVyZW0pICFpbXBvcnRhbnQ7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMHZ3IC0gMS4yNXJlbSkgIWltcG9ydGFudDtcbiAgICBmbGV4OiAwIDAgY2FsYygxMDB2dyAtIDEuMjVyZW0pICFpbXBvcnRhbnQ7XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5jYXRhbG9nLWNhcmQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDkuMjVyZW0sIDFmcikgbWlubWF4KDQuMjVyZW0sIDQuNzVyZW0pO1xuICAgIGdhcDogMC42MjVyZW07XG4gICAgcGFkZGluZzogMS4yNXJlbTtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLmNhdGFsb2ctY2FyZF9fY29udGVudCB7XG4gICAgbWluLXdpZHRoOiA5LjI1cmVtO1xuICB9XG5cbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuY2F0YWxvZy1jYXJkX19pbWFnZSB7XG4gICAgbWluLXdpZHRoOiA0LjI1cmVtO1xuICAgIG1heC13aWR0aDogNC43NXJlbTtcbiAgfVxufVxuLyogL2NvZGV4LWhvbWUtY2F0YWxvZy1tb2JpbGUtY2FyZC13aWR0aC12MiAqL1xuXG4vKiBjb2RleC1ob21lLWNhdGFsb2ctbW9iaWxlLXBlZWstdjEgKi9cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5zd2lwZXItc2xpZGUge1xuICAgIHdpZHRoOiBjbGFtcCgxN3JlbSwgY2FsYygxMDB2dyAtIDQuNXJlbSksIDIycmVtKSAhaW1wb3J0YW50O1xuICAgIG1pbi13aWR0aDogY2xhbXAoMTdyZW0sIGNhbGMoMTAwdncgLSA0LjVyZW0pLCAyMnJlbSkgIWltcG9ydGFudDtcbiAgICBtYXgtd2lkdGg6IGNsYW1wKDE3cmVtLCBjYWxjKDEwMHZ3IC0gNC41cmVtKSwgMjJyZW0pICFpbXBvcnRhbnQ7XG4gICAgZmxleDogMCAwIGNsYW1wKDE3cmVtLCBjYWxjKDEwMHZ3IC0gNC41cmVtKSwgMjJyZW0pICFpbXBvcnRhbnQ7XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5jYXRhbG9nLWNhcmQsXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLnN3aXBlci1zbGlkZSAuY2F0YWxvZy1jYXJkIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCg4LjVyZW0sIDFmcikgbWlubWF4KDRyZW0sIDQuNzVyZW0pO1xuICAgIGdhcDogMC42MjVyZW07XG4gICAgbWluLWhlaWdodDogMTYuMjVyZW07XG4gICAgcGFkZGluZzogMS4yNXJlbTtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLmNhdGFsb2ctY2FyZF9fY29udGVudCB7XG4gICAgbWluLXdpZHRoOiA4LjVyZW07XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5jYXRhbG9nLWNhcmRfX2J1dHRvbi5idXR0b24ge1xuICAgIHdpZHRoOiBmaXQtY29udGVudDtcbiAgICBtaW4td2lkdGg6IDguMjVyZW07XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5jYXRhbG9nLWNhcmRfX2ltYWdlIHtcbiAgICBtaW4td2lkdGg6IDRyZW07XG4gICAgbWF4LXdpZHRoOiA0Ljc1cmVtO1xuICAgIGp1c3RpZnktc2VsZjogZW5kO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAzNjBweCkge1xuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5zd2lwZXItc2xpZGUge1xuICAgIHdpZHRoOiBjbGFtcCgxNi41cmVtLCBjYWxjKDEwMHZ3IC0gMy41cmVtKSwgMThyZW0pICFpbXBvcnRhbnQ7XG4gICAgbWluLXdpZHRoOiBjbGFtcCgxNi41cmVtLCBjYWxjKDEwMHZ3IC0gMy41cmVtKSwgMThyZW0pICFpbXBvcnRhbnQ7XG4gICAgbWF4LXdpZHRoOiBjbGFtcCgxNi41cmVtLCBjYWxjKDEwMHZ3IC0gMy41cmVtKSwgMThyZW0pICFpbXBvcnRhbnQ7XG4gICAgZmxleC1iYXNpczogY2xhbXAoMTYuNXJlbSwgY2FsYygxMDB2dyAtIDMuNXJlbSksIDE4cmVtKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuY2F0YWxvZy1jYXJkLFxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5zd2lwZXItc2xpZGUgLmNhdGFsb2ctY2FyZCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoOC4yNXJlbSwgMWZyKSBtaW5tYXgoMy43NXJlbSwgNC4yNXJlbSk7XG4gICAgZ2FwOiAwLjVyZW07XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5jYXRhbG9nLWNhcmRfX2NvbnRlbnQge1xuICAgIG1pbi13aWR0aDogOC4yNXJlbTtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLmNhdGFsb2ctY2FyZF9faW1hZ2Uge1xuICAgIG1pbi13aWR0aDogMy43NXJlbTtcbiAgICBtYXgtd2lkdGg6IDQuMjVyZW07XG4gIH1cbn1cbi8qIC9jb2RleC1ob21lLWNhdGFsb2ctbW9iaWxlLXBlZWstdjEgKi9cblxuXG4vKiBjb2RleC1ob21lLWNhdGFsb2ctc21hbGwtbW9iaWxlLWZpdC12MSAqL1xuQG1lZGlhIChtYXgtd2lkdGg6IDM3NXB4KSB7XG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLmNhdGFsb2ctY2FyZCxcbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuc3dpcGVyLXNsaWRlIC5jYXRhbG9nLWNhcmQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDguNXJlbSwgMWZyKSBtaW5tYXgoMy4yNXJlbSwgMy43NXJlbSk7XG4gICAgZ2FwOiAwLjVyZW07XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5jYXRhbG9nLWNhcmRfX2NvbnRlbnQge1xuICAgIG1pbi13aWR0aDogOC41cmVtO1xuICB9XG5cbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuY2F0YWxvZy1jYXJkX19pbWFnZSB7XG4gICAgbWluLXdpZHRoOiAzLjI1cmVtO1xuICAgIG1heC13aWR0aDogMy43NXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMzQwcHgpIHtcbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuc3dpcGVyLXNsaWRlIHtcbiAgICB3aWR0aDogY2xhbXAoMTYuNzVyZW0sIGNhbGMoMTAwdncgLSAyLjc1cmVtKSwgMTcuNXJlbSkgIWltcG9ydGFudDtcbiAgICBtaW4td2lkdGg6IGNsYW1wKDE2Ljc1cmVtLCBjYWxjKDEwMHZ3IC0gMi43NXJlbSksIDE3LjVyZW0pICFpbXBvcnRhbnQ7XG4gICAgbWF4LXdpZHRoOiBjbGFtcCgxNi43NXJlbSwgY2FsYygxMDB2dyAtIDIuNzVyZW0pLCAxNy41cmVtKSAhaW1wb3J0YW50O1xuICAgIGZsZXgtYmFzaXM6IGNsYW1wKDE2Ljc1cmVtLCBjYWxjKDEwMHZ3IC0gMi43NXJlbSksIDE3LjVyZW0pICFpbXBvcnRhbnQ7XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5jYXRhbG9nLWNhcmQsXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLnN3aXBlci1zbGlkZSAuY2F0YWxvZy1jYXJkIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCg4LjVyZW0sIDFmcikgbWlubWF4KDNyZW0sIDMuNXJlbSk7XG4gICAgZ2FwOiAwLjQzNzVyZW07XG4gICAgcGFkZGluZy1pbmxpbmU6IDFyZW07XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5jYXRhbG9nLWNhcmRfX2ltYWdlIHtcbiAgICBtaW4td2lkdGg6IDNyZW07XG4gICAgbWF4LXdpZHRoOiAzLjVyZW07XG4gIH1cbn1cbi8qIC9jb2RleC1ob21lLWNhdGFsb2ctc21hbGwtbW9iaWxlLWZpdC12MSAqL1xuXG4vKiBjb2RleC1ob21lLWNhdGFsb2ctdGFibGV0LWZpdC1zdGFydCAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogMTE2MHB4KSB7XG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLmNhdGFsb2dzLXNlY3Rpb25fX3NsaWRlciB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5zd2lwZXItd3JhcHBlciB7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5zd2lwZXItc2xpZGUge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA0MHB4KSAhaW1wb3J0YW50O1xuICAgIG1heC13aWR0aDogOTIwcHg7XG4gICAgZmxleDogMCAwIGNhbGMoMTAwJSAtIDQwcHgpO1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLmNhdGFsb2ctY2FyZCxcbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuc3dpcGVyLXNsaWRlIC5jYXRhbG9nLWNhcmQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IGNsYW1wKDM0MHB4LCAzNHZ3LCA0MDBweCk7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoMjQwcHgsIDFmcikgbWlubWF4KDIxMHB4LCAzMDBweCk7XG4gICAgZ2FwOiBjbGFtcCgyMHB4LCAyLjh2dywgMzJweCk7XG4gICAgcGFkZGluZzogY2xhbXAoMjhweCwgM3Z3LCA0MHB4KTtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLmNhdGFsb2ctY2FyZF9fY29udGVudCB7XG4gICAgbWluLXdpZHRoOiAyNDBweDtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLmNhdGFsb2ctY2FyZF9fYnV0dG9uLmJ1dHRvbiB7XG4gICAgd2lkdGg6IG1pbigxMDAlLCAyNDBweCk7XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5jYXRhbG9nLWNhcmRfX2ltYWdlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtaW4td2lkdGg6IDIxMHB4O1xuICAgIG1heC13aWR0aDogMzAwcHg7XG4gICAgaGVpZ2h0OiBjbGFtcCgyNjBweCwgMjh2dywgMzMwcHgpO1xuICAgIGp1c3RpZnktc2VsZjogZW5kO1xuICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLmNhdGFsb2ctY2FyZF9faW1hZ2UgaW1nIHtcbiAgICBvYmplY3QtZml0OiBjb250YWluO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDg2MHB4KSB7XG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLnN3aXBlci1zbGlkZSB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDI4cHgpICFpbXBvcnRhbnQ7XG4gICAgZmxleC1iYXNpczogY2FsYygxMDAlIC0gMjhweCk7XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5jYXRhbG9nLWNhcmQsXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLnN3aXBlci1zbGlkZSAuY2F0YWxvZy1jYXJkIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgyMjBweCwgMWZyKSBtaW5tYXgoMTgwcHgsIDI0MHB4KTtcbiAgICBtaW4taGVpZ2h0OiAzMzBweDtcbiAgICBwYWRkaW5nOiAyOHB4O1xuICB9XG5cbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuY2F0YWxvZy1jYXJkX19jb250ZW50IHtcbiAgICBtaW4td2lkdGg6IDIyMHB4O1xuICB9XG5cbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuY2F0YWxvZy1jYXJkX19pbWFnZSB7XG4gICAgbWluLXdpZHRoOiAxODBweDtcbiAgICBtYXgtd2lkdGg6IDI0MHB4O1xuICAgIGhlaWdodDogMjgwcHg7XG4gIH1cbn1cbi8qIGNvZGV4LWhvbWUtY2F0YWxvZy10YWJsZXQtZml0LWVuZCAqL1xuLyogY29kZXgtaG9tZS1jYXRhbG9nLXRhYmxldC1zY3JvbGwtZml0LXYyLXN0YXJ0ICovXG5AbWVkaWEgKG1pbi13aWR0aDogNzY3cHgpIGFuZCAobWF4LXdpZHRoOiAxMTYwcHgpIHtcbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuc3dpcGVyIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmc6IDAgMCAwLjYyNXJlbTtcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgc2Nyb2xsLXNuYXAtdHlwZTogeCBwcm94aW1pdHk7XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5zd2lwZXItd3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgIGdhcDogMDtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLnN3aXBlci1zbGlkZSB7XG4gICAgd2lkdGg6IGNsYW1wKDMwcmVtLCA2MnZ3LCAzNHJlbSkgIWltcG9ydGFudDtcbiAgICBtaW4td2lkdGg6IGNsYW1wKDMwcmVtLCA2MnZ3LCAzNHJlbSkgIWltcG9ydGFudDtcbiAgICBtYXgtd2lkdGg6IGNsYW1wKDMwcmVtLCA2MnZ3LCAzNHJlbSkgIWltcG9ydGFudDtcbiAgICBmbGV4OiAwIDAgY2xhbXAoMzByZW0sIDYydncsIDM0cmVtKSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICAgIHNjcm9sbC1zbmFwLWFsaWduOiBzdGFydDtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLmNhdGFsb2ctY2FyZCxcbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuc3dpcGVyLXNsaWRlIC5jYXRhbG9nLWNhcmQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgxMi43NXJlbSwgMWZyKSBtaW5tYXgoOC41cmVtLCAxMHJlbSk7XG4gICAgZ2FwOiBjbGFtcCgxcmVtLCAydncsIDEuNXJlbSk7XG4gICAgbWluLWhlaWdodDogY2xhbXAoMjAuNXJlbSwgMzZ2dywgMjVyZW0pO1xuICAgIHBhZGRpbmc6IGNsYW1wKDEuNXJlbSwgMi44dncsIDJyZW0pO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICB9XG5cbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuY2F0YWxvZy1jYXJkX19jb250ZW50IHtcbiAgICBtaW4td2lkdGg6IDEyLjc1cmVtO1xuICB9XG5cbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuY2F0YWxvZy1jYXJkX19idXR0b24uYnV0dG9uIHtcbiAgICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gICAgbWluLXdpZHRoOiAxMS44NzVyZW07XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5jYXRhbG9nLWNhcmRfX2ltYWdlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtaW4td2lkdGg6IDguNXJlbTtcbiAgICBtYXgtd2lkdGg6IDEwcmVtO1xuICAgIGp1c3RpZnktc2VsZjogZW5kO1xuICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLmNhdGFsb2ctY2FyZF9faW1hZ2UgaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgfVxufVxuLyogY29kZXgtaG9tZS1jYXRhbG9nLXRhYmxldC1zY3JvbGwtZml0LXYyLWVuZCAqL1xuXG4vKiBjb2RleC1ob21lLWNhdGFsb2ctaGlkZS1kZXNjcmlwdGlvbi12MSAqL1xuI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuc2VjdGlvbl9fZGVzY3JpcHRpb24ge1xuICBkaXNwbGF5OiBub25lO1xufVxuLyogL2NvZGV4LWhvbWUtY2F0YWxvZy1oaWRlLWRlc2NyaXB0aW9uLXYxICovXG5cbi8qIGNvZGV4LWNhdGFsb2ctY2FyZC1kZXNrdG9wLWVxdWFsLWNvbHVtbnMtdjEgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAxMTYxcHgpIHtcbiAgLmNhdGFsb2ctY2FyZCxcbiAgLmNhdGFsb2dzLXNlY3Rpb24gLnN3aXBlci1zbGlkZSAuY2F0YWxvZy1jYXJkLFxuICAuY2F0YWxvZ3Mtc2VjdGlvbl9fZ3JpZCAuY2F0YWxvZy1jYXJkIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgwLCAxZnIpIG1pbm1heCgwLCAxZnIpO1xuICB9XG5cbiAgLmNhdGFsb2ctY2FyZF9fY29udGVudCB7XG4gICAgbWluLXdpZHRoOiAwO1xuICB9XG5cbiAgLmNhdGFsb2ctY2FyZF9faW1hZ2Uge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAganVzdGlmeS1zZWxmOiBzdHJldGNoO1xuICB9XG59XG4vKiAvY29kZXgtY2F0YWxvZy1jYXJkLWRlc2t0b3AtZXF1YWwtY29sdW1ucy12MSAqL1xuXG4vKiBjb2RleC1ob21lLWNhdGFsb2ctYmctcG9zaXRpb24tdjEgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAxMTYxcHgpIHtcbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbjo6YmVmb3JlIHtcbiAgICB0b3A6IC0xMDZweDtcbiAgICBsZWZ0OiAtNDY1cHg7XG4gICAgd2lkdGg6IDgyNS4zMDhweDtcbiAgICBoZWlnaHQ6IDQwMS4wNDFweDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxMC45NTVkZWcpO1xuICB9XG5cbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbjo6YWZ0ZXIge1xuICAgIHJpZ2h0OiAtNjYuNzcxcHg7XG4gICAgYm90dG9tOiAtNjYuMTdweDtcbiAgICB3aWR0aDogMTA2NnB4O1xuICAgIGhlaWdodDogNTE4cHg7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNC45NTdkZWcpO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxOTIxcHgpIHtcbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbjo6YmVmb3JlIHtcbiAgICB0b3A6IC01LjUyMDgzMzMzMzN2dztcbiAgICBsZWZ0OiAtMjQuMjE4NzV2dztcbiAgICB3aWR0aDogNDIuOTg0NzkxNjY2N3Z3O1xuICAgIGhlaWdodDogMjAuODg3NTUyMDgzM3Z3O1xuICB9XG5cbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbjo6YWZ0ZXIge1xuICAgIHJpZ2h0OiAtMy40Nzc2NTYyNXZ3O1xuICAgIGJvdHRvbTogLTMuNDQ2MzU0MTY2N3Z3O1xuICAgIHdpZHRoOiA1NS41MjA4MzMzMzMzdnc7XG4gICAgaGVpZ2h0OiAyNi45NzkxNjY2NjY3dnc7XG4gIH1cbn1cbi8qIC9jb2RleC1ob21lLWNhdGFsb2ctYmctcG9zaXRpb24tdjEgKi9cblxuLyogY29kZXgtY2F0YWxvZy1jYXJkLWltYWdlLWZ1bGwtaGVpZ2h0LXYxICovXG4uY2F0YWxvZy1jYXJkIHtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG59XG5cbi5jYXRhbG9nLWNhcmRfX2ltYWdlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi13aWR0aDogMDtcbiAgbWF4LXdpZHRoOiBub25lO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDA7XG4gIGFzcGVjdC1yYXRpbzogYXV0bztcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAganVzdGlmeS1zZWxmOiBzdHJldGNoO1xufVxuXG4uY2F0YWxvZy1jYXJkX19pbWFnZSBpbWcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXgtaGVpZ2h0OiBub25lO1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgb2JqZWN0LXBvc2l0aW9uOiBjZW50ZXI7XG59XG4vKiAvY29kZXgtY2F0YWxvZy1jYXJkLWltYWdlLWZ1bGwtaGVpZ2h0LXYxICovXG5cbi8qIGNvZGV4LWNhdGFsb2ctY2FyZC1pbWFnZS1mcmFtZS12MSAqL1xuLmNhdGFsb2ctY2FyZF9faW1hZ2Uge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDIsIDI3LCA0OCwgMC4xNSk7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgYmFja2dyb3VuZDogI2Y3ZjlmYjtcbn1cbi8qIC9jb2RleC1jYXRhbG9nLWNhcmQtaW1hZ2UtZnJhbWUtdjEgKi9cblxuLyogY29kZXgtaG9tZS1jYXRhbG9nLWJnLWZpZ21hLXYyICovXG5AbWVkaWEgKG1pbi13aWR0aDogMTE2MXB4KSB7XG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb246OmJlZm9yZSxcbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbjo6YWZ0ZXIge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb246OmJlZm9yZSB7XG4gICAgdG9wOiAtMzEuMjMxcHg7XG4gICAgbGVmdDogLTQzNC40MTNweDtcbiAgICB3aWR0aDogODI1LjMwOHB4O1xuICAgIGhlaWdodDogNDAxLjA0MXB4O1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDEwLjk1NWRlZyk7XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uOjphZnRlciB7XG4gICAgcmlnaHQ6IC00Ni4zODZweDtcbiAgICBib3R0b206IC0yMS4wODVweDtcbiAgICB3aWR0aDogMTA2NnB4O1xuICAgIGhlaWdodDogNTE4cHg7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNC45NTdkZWcpO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxOTIxcHgpIHtcbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbjo6YmVmb3JlIHtcbiAgICB0b3A6IC0xLjYyNjYxNDU4MzN2dztcbiAgICBsZWZ0OiAtMjIuNjI1Njc3MDgzM3Z3O1xuICAgIHdpZHRoOiA0Mi45ODQ3OTE2NjY3dnc7XG4gICAgaGVpZ2h0OiAyMC44ODc1NTIwODMzdnc7XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uOjphZnRlciB7XG4gICAgcmlnaHQ6IC0yLjQxNTkzNzV2dztcbiAgICBib3R0b206IC0xLjA5ODE3NzA4MzN2dztcbiAgICB3aWR0aDogNTUuNTIwODMzMzMzM3Z3O1xuICAgIGhlaWdodDogMjYuOTc5MTY2NjY2N3Z3O1xuICB9XG59XG4vKiAvY29kZXgtaG9tZS1jYXRhbG9nLWJnLWZpZ21hLXYyICovXG5cbi8qIGNvZGV4LWNhdGFsb2ctY2FyZC1hNC1pbWFnZS1yYXRpby12MSAqL1xuQG1lZGlhIChtYXgtd2lkdGg6IDE4MDBweCkge1xuICAuY2F0YWxvZy1jYXJkLFxuICAuY2F0YWxvZ3Mtc2VjdGlvbiAuc3dpcGVyLXNsaWRlIC5jYXRhbG9nLWNhcmQsXG4gIC5jYXRhbG9ncy1zZWN0aW9uX19ncmlkIC5jYXRhbG9nLWNhcmQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDAsIDdmcikgbWlubWF4KDAsIDJmcik7XG4gICAgYWxpZ24taXRlbXM6IHN0YXJ0O1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtaW4taGVpZ2h0OiAwO1xuICB9XG5cbiAgLmNhdGFsb2ctY2FyZF9fY29udGVudCB7XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICB9XG5cbiAgLmNhdGFsb2ctY2FyZF9faW1hZ2Uge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgYXNwZWN0LXJhdGlvOiAyMTAgLyAyOTc7XG4gICAgYWxpZ24tc2VsZjogc3RhcnQ7XG4gICAganVzdGlmeS1zZWxmOiBzdHJldGNoO1xuICB9XG5cbiAgLmNhdGFsb2ctY2FyZF9faW1hZ2UgaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWF4LWhlaWdodDogbm9uZTtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICBvYmplY3QtcG9zaXRpb246IGNlbnRlcjtcbiAgfVxufVxuLyogL2NvZGV4LWNhdGFsb2ctY2FyZC1hNC1pbWFnZS1yYXRpby12MSAqL1xuXG4vKiBjb2RleC1ob21lLWNhdGFsb2ctbGVmdC1iZy1yaWdodC12MSAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDExNjFweCkge1xuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uOjpiZWZvcmUge1xuICAgIGxlZnQ6IC0yNzVweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTkyMXB4KSB7XG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb246OmJlZm9yZSB7XG4gICAgbGVmdDogLTE0LjMyMjkxNjY2Njd2dztcbiAgfVxufVxuLyogL2NvZGV4LWhvbWUtY2F0YWxvZy1sZWZ0LWJnLXJpZ2h0LXYxICovXG5cbi8qIGNvZGV4LWhvbWUtY2F0YWxvZy10YWJsZXQtYTQtc2Nyb2xsYmFyLXYxICovXG5AbWVkaWEgKG1pbi13aWR0aDogNzY3cHgpIGFuZCAobWF4LXdpZHRoOiAxMTYwcHgpIHtcbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuc3dpcGVyIHtcbiAgICBzY3JvbGxiYXItd2lkdGg6IG5vbmU7XG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lO1xuICB9XG5cbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuc3dpcGVyOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5jYXRhbG9nLWNhcmQsXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLnN3aXBlci1zbGlkZSAuY2F0YWxvZy1jYXJkIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgwLCA3ZnIpIG1pbm1heCgwLCAyZnIpO1xuICAgIGFsaWduLWl0ZW1zOiBzdGFydDtcbiAgICBtaW4taGVpZ2h0OiAwO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuY2F0YWxvZy1jYXJkX19jb250ZW50IHtcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5jYXRhbG9nLWNhcmRfX2ltYWdlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtaW4taGVpZ2h0OiAwO1xuICAgIGFzcGVjdC1yYXRpbzogMjEwIC8gMjk3O1xuICAgIGFsaWduLXNlbGY6IHN0YXJ0O1xuICAgIGp1c3RpZnktc2VsZjogc3RyZXRjaDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuY2F0YWxvZy1jYXJkX19pbWFnZSBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtYXgtaGVpZ2h0OiBub25lO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIG9iamVjdC1wb3NpdGlvbjogY2VudGVyO1xuICB9XG59XG4vKiAvY29kZXgtaG9tZS1jYXRhbG9nLXRhYmxldC1hNC1zY3JvbGxiYXItdjEgKi9cblxuLyogY29kZXgtY2F0YWxvZy1jYXJkLWRlc2t0b3AtZmx1aWQtaW1hZ2UtdjEgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAxMTYxcHgpIGFuZCAobWF4LXdpZHRoOiAxODAwcHgpIHtcbiAgLmNhdGFsb2ctY2FyZCxcbiAgLmNhdGFsb2dzLXNlY3Rpb24gLnN3aXBlci1zbGlkZSAuY2F0YWxvZy1jYXJkLFxuICAuY2F0YWxvZ3Mtc2VjdGlvbl9fZ3JpZCAuY2F0YWxvZy1jYXJkIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6XG4gICAgICBtaW5tYXgoMCwgY2FsYygxMDAlIC0gY2xhbXAoMjglLCBjYWxjKDAuMDM0NDMgKiAoMTAwdncgLSAxMTYxcHgpICsgMjglKSwgNTAlKSkpXG4gICAgICBtaW5tYXgoMCwgY2xhbXAoMjglLCBjYWxjKDAuMDM0NDMgKiAoMTAwdncgLSAxMTYxcHgpICsgMjglKSwgNTAlKSk7XG4gIH1cblxuICAuY2F0YWxvZy1jYXJkX19pbWFnZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYXNwZWN0LXJhdGlvOiAyMTAgLyAyOTc7XG4gIH1cbn1cbi8qIC9jb2RleC1jYXRhbG9nLWNhcmQtZGVza3RvcC1mbHVpZC1pbWFnZS12MSAqL1xuXG4vKiBjb2RleC1jYXRhbG9nLWxlZnQtYmctYXNzZXQtdjIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAxMTYxcHgpIHtcbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbjo6YmVmb3JlIHtcbiAgICB0b3A6IC0xMDZweDtcbiAgICBsZWZ0OiAtNDY1cHg7XG4gICAgd2lkdGg6IDg4N3B4O1xuICAgIGhlaWdodDogNTUxcHg7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2NvbnRlbnQvdGFyZ3VzL2NhdGFsb2cvY2F0YWxvZy1iZy1sZWZ0LWN1c3RvbS12Mi5zdmdcIik7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTkyMXB4KSB7XG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb246OmJlZm9yZSB7XG4gICAgdG9wOiAtNS41MjA4MzMzMzMzdnc7XG4gICAgbGVmdDogLTI0LjIxODc1dnc7XG4gICAgd2lkdGg6IDQ2LjE5NzkxNjY2Njd2dztcbiAgICBoZWlnaHQ6IDI4LjY5NzkxNjY2Njd2dztcbiAgfVxufVxuLyogL2NvZGV4LWNhdGFsb2ctbGVmdC1iZy1hc3NldC12MiAqL1xuXG4vKiBjb2RleC1ob21lLWNhdGFsb2ctbGVmdC1iZy1hZGFwdGl2ZS1zY2FsZS12MSAqL1xuI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbjo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3A7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgdG9wO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTgwMHB4KSB7XG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb246OmJlZm9yZSB7XG4gICAgLS1jYXRhbG9nLWxlZnQtYmctd2lkdGg6IGNsYW1wKDM0cmVtLCA0Ni4xOTc5MTY2NjY3dncsIDUxLjkzNzVyZW0pO1xuICAgIHRvcDogY2FsYyh2YXIoLS1jYXRhbG9nLWxlZnQtYmctd2lkdGgpICogLTAuMTE5NSk7XG4gICAgbGVmdDogY2FsYyh2YXIoLS1jYXRhbG9nLWxlZnQtYmctd2lkdGgpICogLTAuNTI0Mik7XG4gICAgd2lkdGg6IHZhcigtLWNhdGFsb2ctbGVmdC1iZy13aWR0aCk7XG4gICAgaGVpZ2h0OiBjYWxjKHZhcigtLWNhdGFsb2ctbGVmdC1iZy13aWR0aCkgKiAwLjYyMTE5NSk7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDExNjBweCkge1xuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uOjpiZWZvcmUge1xuICAgIC0tY2F0YWxvZy1sZWZ0LWJnLXdpZHRoOiBjbGFtcCgyMnJlbSwgNDh2dywgMzRyZW0pO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uOjpiZWZvcmUge1xuICAgIC0tY2F0YWxvZy1sZWZ0LWJnLXdpZHRoOiBjbGFtcCgxNnJlbSwgNTZ2dywgMjRyZW0pO1xuICB9XG59XG4vKiAvY29kZXgtaG9tZS1jYXRhbG9nLWxlZnQtYmctYWRhcHRpdmUtc2NhbGUtdjEgKi9cblxuLyogY29kZXgtaG9tZS1jYXRhbG9nLWxlZnQtYmctbm8tanVtcC12MSAqL1xuQG1lZGlhIChtYXgtd2lkdGg6IDExNjBweCkge1xuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uOjpiZWZvcmUge1xuICAgIHRvcDogY2FsYyh2YXIoLS1jYXRhbG9nLWxlZnQtYmctd2lkdGgpICogLTAuMTE5NSk7XG4gICAgbGVmdDogY2FsYyh2YXIoLS1jYXRhbG9nLWxlZnQtYmctd2lkdGgpICogLTAuNTI0Mik7XG4gIH1cbn1cbi8qIC9jb2RleC1ob21lLWNhdGFsb2ctbGVmdC1iZy1uby1qdW1wLXYxICovXG5cbi8qIGNvZGV4LWhvbWUtY2F0YWxvZy1zdGFuZGFyZC1sYXB0b3AtcGFkZGluZy12MSAqL1xuQG1lZGlhIChtYXgtd2lkdGg6IDE2MDBweCkge1xuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tc2VjdGlvbi1wYWRkaW5nKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc2VjdGlvbi1wYWRkaW5nKTtcbiAgfVxufVxuLyogL2NvZGV4LWhvbWUtY2F0YWxvZy1zdGFuZGFyZC1sYXB0b3AtcGFkZGluZy12MSAqL1xuXG4vKiBjb2RleC1ob21lLWNhdGFsb2ctZGVza3RvcC12aWV3cG9ydC12MSAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDExNjFweCkge1xuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5zZWN0aW9uX19jb250ZW50LFxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5jYXRhbG9ncy1zZWN0aW9uX19zbGlkZXIge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICB9XG5cbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuc3dpcGVyIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmctdG9wOiAwLjc1cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAyLjc1cmVtO1xuICAgIG1hcmdpbi10b3A6IC0wLjc1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IC0yLjc1cmVtO1xuICB9XG5cbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuc3dpcGVyLXdyYXBwZXIsXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLnN3aXBlci1zbGlkZSB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5jYXRhbG9nLWNhcmQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAwO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICB9XG5cbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuY2F0YWxvZy1jYXJkOmhvdmVyIHtcbiAgICB6LWluZGV4OiAyO1xuICB9XG59XG4vKiAvY29kZXgtaG9tZS1jYXRhbG9nLWRlc2t0b3Atdmlld3BvcnQtdjEgKi9cblxuLyogY29kZXgtaG9tZS1jYXRhbG9nLXRhYmxldC1zY3JvbGwtcmVzdG9yZS12MSAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDc2N3B4KSBhbmQgKG1heC13aWR0aDogMTE2MHB4KSB7XG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24ge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5zZWN0aW9uX19jb250ZW50LFxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5jYXRhbG9ncy1zZWN0aW9uX19zbGlkZXIge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICB9XG5cbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuc3dpcGVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoMHB4IC0gdmFyKC0tY29udGFpbmVyLW9mZnNldCkpO1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDBweCAtIHZhcigtLWNvbnRhaW5lci1vZmZzZXQpKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1jb250YWluZXItb2Zmc2V0KTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC43NXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLWNvbnRhaW5lci1vZmZzZXQpO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIHNjcm9sbC1wYWRkaW5nLWxlZnQ6IHZhcigtLWNvbnRhaW5lci1vZmZzZXQpO1xuICAgIHNjcm9sbC1zbmFwLXR5cGU6IHggcHJveGltaXR5O1xuICB9XG5cbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuc3dpcGVyLXdyYXBwZXIge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgZ2FwOiAwO1xuICB9XG5cbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuc3dpcGVyLXNsaWRlIHtcbiAgICB3aWR0aDogY2xhbXAoMjYuNXJlbSwgNTh2dywgMzRyZW0pICFpbXBvcnRhbnQ7XG4gICAgbWluLXdpZHRoOiBjbGFtcCgyNi41cmVtLCA1OHZ3LCAzNHJlbSkgIWltcG9ydGFudDtcbiAgICBtYXgtd2lkdGg6IGNsYW1wKDI2LjVyZW0sIDU4dncsIDM0cmVtKSAhaW1wb3J0YW50O1xuICAgIGZsZXg6IDAgMCBjbGFtcCgyNi41cmVtLCA1OHZ3LCAzNHJlbSkgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgc2Nyb2xsLXNuYXAtYWxpZ246IHN0YXJ0O1xuICB9XG5cbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuY2F0YWxvZy1jYXJkLFxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5zd2lwZXItc2xpZGUgLmNhdGFsb2ctY2FyZCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi13aWR0aDogMDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY3cHgpIGFuZCAobWF4LXdpZHRoOiA4NjBweCkge1xuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5zd2lwZXItc2xpZGUge1xuICAgIHdpZHRoOiBjbGFtcCgyNHJlbSwgNzJ2dywgMzByZW0pICFpbXBvcnRhbnQ7XG4gICAgbWluLXdpZHRoOiBjbGFtcCgyNHJlbSwgNzJ2dywgMzByZW0pICFpbXBvcnRhbnQ7XG4gICAgbWF4LXdpZHRoOiBjbGFtcCgyNHJlbSwgNzJ2dywgMzByZW0pICFpbXBvcnRhbnQ7XG4gICAgZmxleC1iYXNpczogY2xhbXAoMjRyZW0sIDcydncsIDMwcmVtKSAhaW1wb3J0YW50O1xuICB9XG59XG4vKiAvY29kZXgtaG9tZS1jYXRhbG9nLXRhYmxldC1zY3JvbGwtcmVzdG9yZS12MSAqL1xuXG4vKiBjb2RleC1ob21lLWNhdGFsb2ctdGFibGV0LXN3aXBlci1yZXN0b3JlLXYyICovXG5AbWVkaWEgKG1pbi13aWR0aDogNzY3cHgpIGFuZCAobWF4LXdpZHRoOiAxMTYwcHgpIHtcbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuc3dpcGVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoMHB4IC0gdmFyKC0tY29udGFpbmVyLW9mZnNldCkpO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLWNvbnRhaW5lci1vZmZzZXQpO1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjc1cmVtO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5zd2lwZXItd3JhcHBlciB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIGdhcDogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLnN3aXBlci1zbGlkZSB7XG4gICAgd2lkdGg6IGNsYW1wKDI2cmVtLCA2MnZ3LCAzNHJlbSkgIWltcG9ydGFudDtcbiAgICBtaW4td2lkdGg6IGNsYW1wKDI2cmVtLCA2MnZ3LCAzNHJlbSkgIWltcG9ydGFudDtcbiAgICBtYXgtd2lkdGg6IGNsYW1wKDI2cmVtLCA2MnZ3LCAzNHJlbSkgIWltcG9ydGFudDtcbiAgICBmbGV4OiAwIDAgY2xhbXAoMjZyZW0sIDYydncsIDM0cmVtKSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjdweCkgYW5kIChtYXgtd2lkdGg6IDg2MHB4KSB7XG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLnN3aXBlci1zbGlkZSB7XG4gICAgd2lkdGg6IGNsYW1wKDIzcmVtLCBjYWxjKDEwMHZ3IC0gNXJlbSksIDI4cmVtKSAhaW1wb3J0YW50O1xuICAgIG1pbi13aWR0aDogY2xhbXAoMjNyZW0sIGNhbGMoMTAwdncgLSA1cmVtKSwgMjhyZW0pICFpbXBvcnRhbnQ7XG4gICAgbWF4LXdpZHRoOiBjbGFtcCgyM3JlbSwgY2FsYygxMDB2dyAtIDVyZW0pLCAyOHJlbSkgIWltcG9ydGFudDtcbiAgICBmbGV4LWJhc2lzOiBjbGFtcCgyM3JlbSwgY2FsYygxMDB2dyAtIDVyZW0pLCAyOHJlbSkgIWltcG9ydGFudDtcbiAgfVxufVxuLyogL2NvZGV4LWhvbWUtY2F0YWxvZy10YWJsZXQtc3dpcGVyLXJlc3RvcmUtdjIgKi9cblxuLyogY29kZXgtaG9tZS1jYXRhbG9nLXRhYmxldC1vdmVyZmxvdy1jb250YWluZWQtdjUgKi9cbkBtZWRpYSAobWluLXdpZHRoOiA3NjdweCkgYW5kIChtYXgtd2lkdGg6IDExNjBweCkge1xuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICB9XG5cbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuY29udGFpbmVyLFxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5zZWN0aW9uX19jb250ZW50LFxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5jYXRhbG9ncy1zZWN0aW9uX19zbGlkZXIge1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLnN3aXBlciB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSArICh2YXIoLS1jb250YWluZXItb2Zmc2V0KSAqIDIpKTtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSArICh2YXIoLS1jb250YWluZXItb2Zmc2V0KSAqIDIpKTtcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoMHB4IC0gdmFyKC0tY29udGFpbmVyLW9mZnNldCkpO1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDBweCAtIHZhcigtLWNvbnRhaW5lci1vZmZzZXQpKTtcbiAgICBwYWRkaW5nLXRvcDogMC43NXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1jb250YWluZXItb2Zmc2V0KTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLWNvbnRhaW5lci1vZmZzZXQpO1xuICAgIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgICBzY3JvbGwtcGFkZGluZy1sZWZ0OiB2YXIoLS1jb250YWluZXItb2Zmc2V0KTtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLnN3aXBlci13cmFwcGVyLFxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5zd2lwZXItc2xpZGUge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi8qIC9jb2RleC1ob21lLWNhdGFsb2ctdGFibGV0LW92ZXJmbG93LWNvbnRhaW5lZC12NSAqL1xuIiwiLmNhdGFsb2dzLXNlY3Rpb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbiNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24ge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtaW4taGVpZ2h0OiA3OTVweDtcbiAgcGFkZGluZy10b3A6IDEyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTIwcHg7XG59XG5cbiNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb246OmJlZm9yZSxcbiNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb246OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XG59XG5cbiNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb246OmJlZm9yZSB7XG4gIHRvcDogLTEwNnB4O1xuICBsZWZ0OiAtMzUwcHg7XG4gIHdpZHRoOiA4MjZweDtcbiAgaGVpZ2h0OiA0MDJweDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2NvbnRlbnQvdGFyZ3VzL2NhdGFsb2cvY2F0YWxvZy1iZy1sZWZ0LWN1c3RvbS12MS5zdmdcIik7XG59XG5cbiNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb246OmFmdGVyIHtcbiAgcmlnaHQ6IC03MXB4O1xuICBib3R0b206IDA7XG4gIHdpZHRoOiAxMDY2cHg7XG4gIGhlaWdodDogNTE4cHg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9jb250ZW50L3Rhcmd1cy9jYXRhbG9nL2NhdGFsb2ctYmctcmlnaHQtZmlnbWEuc3ZnXCIpO1xufVxuXG4jY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5jb250YWluZXIsXG4jY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5zZWN0aW9uX19oZWFkLFxuI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuc2VjdGlvbl9fY29udGVudCxcbiNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLnN3aXBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbn1cblxuI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuc2VjdGlvbl9faGVhZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbiNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLnNlY3Rpb25fX21lbnUge1xuICBnYXA6IDIwcHg7XG59XG5cbiNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLnN3aXBlci1uYXZpZ2F0aW9uIHtcbiAgd2lkdGg6IDEyMHB4O1xuICBoZWlnaHQ6IDYwcHg7XG59XG5cbiNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLnN3aXBlci1uYXZpZ2F0aW9uX19idXR0b24ge1xuICB3aWR0aDogNjBweDtcbiAgaGVpZ2h0OiA2MHB4O1xufVxuXG4jY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5zZWN0aW9uX19tb3JlLmJ1dHRvbl9zZWNvbmRhcnkge1xuICB3aWR0aDogMjE1cHg7XG4gIG1pbi1oZWlnaHQ6IDYwcHg7XG59XG5cbiNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLnN3aXBlci1zbGlkZSB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLmNhdGFsb2dzLXNlY3Rpb25fX2dyaWQge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCBtaW5tYXgoMCwgMWZyKSk7XG4gIGdhcDogMjBweDtcbn1cblxuLmNhdGFsb2dzLXNlY3Rpb25fX2dyaWQgLmNhdGFsb2ctY2FyZCB7XG4gIG1heC13aWR0aDogbm9uZTtcbn1cblxuLmNhdGFsb2ctY2FyZCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDAsIDFmcikgbWlubWF4KDE1MHB4LCAxZnIpO1xuICBnYXA6IDI5cHg7XG4gIG1pbi1oZWlnaHQ6IDQzM3B4O1xuICBwYWRkaW5nOiA0MHB4IDMxcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMiwgMjcsIDQ4LCAwLjI1KTtcbiAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgY29sb3I6ICMxMjFiMjE7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYm94LXNoYWRvdzogMCAxOHB4IDQ4cHggcmdiYSg5LCA0OCwgNzgsIDAuMDQpO1xuICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgLjJzIGVhc2UsIGJveC1zaGFkb3cgLjJzIGVhc2UsIHRyYW5zZm9ybSAuMnMgZWFzZTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uY2F0YWxvZy1jYXJkOmhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjNDBhZGUzO1xuICBib3gtc2hhZG93OiAwIDI0cHggNjJweCByZ2JhKDksIDQ4LCA3OCwgMC4wOSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTtcbn1cblxuLmNhdGFsb2ctY2FyZF9fY29udGVudCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1pbi13aWR0aDogMDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBnYXA6IDI4cHg7XG59XG5cbi5jYXRhbG9nLWNhcmRfX2JyYW5kIHtcbiAgZGlzcGxheTogZmxleDtcbiAgbWluLXdpZHRoOiAwO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgZ2FwOiAxMHB4O1xufVxuXG4uY2F0YWxvZy1jYXJkX19sb2dvIHtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNjVweDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuLmNhdGFsb2ctY2FyZF9fbG9nbyBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IGF1dG87XG4gIG1heC13aWR0aDogMjMycHg7XG4gIG1heC1oZWlnaHQ6IDY1cHg7XG4gIG9iamVjdC1maXQ6IGNvbnRhaW47XG59XG5cbi5jYXRhbG9nLWNhcmRfX3RpdGxlIHtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogIzEyMWIyMTtcbn1cblxuLmNhdGFsb2ctY2FyZF9fZGVzY3JpcHRpb24ge1xuICBmb250LXNpemU6IDE4cHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGxldHRlci1zcGFjaW5nOiAwO1xuICBjb2xvcjogcmdiYSgxOCwgMjcsIDMzLCAwLjgpO1xufVxuXG4uY2F0YWxvZy1jYXJkX19idXR0b24uYnV0dG9uIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDYwcHg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDBhZGUzICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5jYXRhbG9nLWNhcmRfX2J1dHRvbi5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA4Y2QxICFpbXBvcnRhbnQ7XG59XG5cbi5jYXRhbG9nLWNhcmRfX2ltYWdlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgbWluLXdpZHRoOiAwO1xuICBoZWlnaHQ6IDM1M3B4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWFyZ2luOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDIsIDI3LCA0OCwgMC4xKTtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBiYWNrZ3JvdW5kOiAjZjdmOWZiO1xufVxuXG4uY2F0YWxvZy1jYXJkX19pbWFnZSBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG59XG5cbiNjb25zdHJ1Y3Rvcl9ibG9ja18zLmN0YS1zZWN0aW9uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTpcbiAgICBsaW5lYXItZ3JhZGllbnQoNDlkZWcsICNiN2QyZTkgMzElLCAjZTBlZGY4IDcwJSksXG4gICAgbGluZWFyLWdyYWRpZW50KDkwZGVnLCAjZmZmIDAlLCAjZmZmIDEwMCUpICFpbXBvcnRhbnQ7XG59XG5cbiNjb25zdHJ1Y3Rvcl9ibG9ja18zIC5zZWN0aW9uX190aXRsZSAuaDIsXG4jY29uc3RydWN0b3JfYmxvY2tfMyAuc2VjdGlvbl9fdGl0bGUge1xuICBtYXgtd2lkdGg6IDcwNXB4O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTQzOXB4KSB7XG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24ge1xuICAgIG1pbi1oZWlnaHQ6IGF1dG87XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uOjpiZWZvcmUge1xuICAgIGxlZnQ6IC01MjBweDtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb246OmFmdGVyIHtcbiAgICByaWdodDogLTQyMHB4O1xuICAgIGJvdHRvbTogNDBweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTE2MHB4KSB7XG4gIC5jYXRhbG9ncy1zZWN0aW9uX19ncmlkIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCBtaW5tYXgoMCwgMWZyKSk7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5jYXRhbG9ncy1zZWN0aW9uX19ncmlkIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24ge1xuICAgIHBhZGRpbmctdG9wOiA3MHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA3MHB4O1xuICB9XG5cbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuc2VjdGlvbl9faGVhZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLnNlY3Rpb25fX21lbnUge1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB9XG5cbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuc2VjdGlvbl9fbW9yZS5idXR0b25fc2Vjb25kYXJ5IHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuXG4gIC5jYXRhbG9nLWNhcmQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDAsIDFmcik7XG4gICAgbWluLWhlaWdodDogMDtcbiAgICBwYWRkaW5nOiAyNHB4O1xuICB9XG5cbiAgLmNhdGFsb2ctY2FyZF9faW1hZ2Uge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBhc3BlY3QtcmF0aW86IDIyMCAvIDMxMDtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb246OmJlZm9yZSB7XG4gICAgdG9wOiAtODBweDtcbiAgICBsZWZ0OiAtNTYwcHg7XG4gICAgd2lkdGg6IDc2MHB4O1xuICAgIGhlaWdodDogMzcwcHg7XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uOjphZnRlciB7XG4gICAgcmlnaHQ6IC02MTBweDtcbiAgICBib3R0b206IDYwcHg7XG4gICAgd2lkdGg6IDg4MHB4O1xuICAgIGhlaWdodDogNDI4cHg7XG4gIH1cbn1cblxuLyogY29kZXgtY2F0YWxvZy1jYXJkLWFkYXB0aXZlLXN0YXJ0ICovXG4uY2F0YWxvZy1jYXJkIHtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoMCwgMWZyKSBtaW5tYXgoNy41cmVtLCAwLjg2ZnIpO1xuICBnYXA6IGNsYW1wKDFyZW0sIDEuOHZ3LCAxLjgxMjVyZW0pO1xuICBwYWRkaW5nOiBjbGFtcCgxLjVyZW0sIDIuMXZ3LCAyLjVyZW0pIGNsYW1wKDEuMjVyZW0sIDEuN3Z3LCAxLjkzNzVyZW0pO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uY2F0YWxvZy1jYXJkX19jb250ZW50LFxuLmNhdGFsb2ctY2FyZF9fYnJhbmQge1xuICBtaW4td2lkdGg6IDA7XG59XG5cbi5jYXRhbG9nLWNhcmRfX2xvZ28ge1xuICBoZWlnaHQ6IGNsYW1wKDIuNjI1cmVtLCA0dncsIDQuMDYyNXJlbSk7XG59XG5cbi5jYXRhbG9nLWNhcmRfX2xvZ28gaW1nIHtcbiAgbWF4LXdpZHRoOiBtaW4oMTAwJSwgMTQuNXJlbSk7XG4gIG1heC1oZWlnaHQ6IGNsYW1wKDIuNjI1cmVtLCA0dncsIDQuMDYyNXJlbSk7XG59XG5cbi5jYXRhbG9nLWNhcmRfX3RpdGxlIHtcbiAgZm9udC1zaXplOiBjbGFtcCgxLjEyNXJlbSwgMS4yNXZ3LCAxLjVyZW0pO1xuICBsaW5lLWhlaWdodDogMS4zNTtcbn1cblxuLmNhdGFsb2ctY2FyZF9fZGVzY3JpcHRpb24ge1xuICBmb250LXNpemU6IGNsYW1wKDAuOTM3NXJlbSwgMXZ3LCAxLjEyNXJlbSk7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ1O1xuICBvdmVyZmxvdy13cmFwOiBhbnl3aGVyZTtcbn1cblxuLmNhdGFsb2ctY2FyZF9fYnV0dG9uLmJ1dHRvbiB7XG4gIG1pbi1oZWlnaHQ6IGNsYW1wKDNyZW0sIDMuMnZ3LCAzLjc1cmVtKTtcbn1cblxuLmNhdGFsb2ctY2FyZF9faW1hZ2Uge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMy43NXJlbTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBhc3BlY3QtcmF0aW86IDIyMCAvIDMxMDtcbiAgYWxpZ24tc2VsZjogY2VudGVyO1xuICBqdXN0aWZ5LXNlbGY6IGVuZDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuXG4uY2F0YWxvZy1jYXJkX19pbWFnZSBpbWcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb250YWluO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTQzOXB4KSBhbmQgKG1pbi13aWR0aDogMTE2MXB4KSB7XG4gIC5jYXRhbG9nLWNhcmQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDAsIDFmcikgbWlubWF4KDYuODc1cmVtLCAwLjcyZnIpO1xuICB9XG5cbiAgLmNhdGFsb2ctY2FyZF9faW1hZ2Uge1xuICAgIG1heC13aWR0aDogMTEuMjVyZW07XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDExNjBweCkge1xuICAuY2F0YWxvZ3Mtc2VjdGlvbl9fZ3JpZCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLWF1dG8tZmxvdzogY29sdW1uO1xuICAgIGdyaWQtYXV0by1jb2x1bW5zOiBtaW5tYXgoMjByZW0sIDcydncpO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbm9uZTtcbiAgICBnYXA6IDEuMjVyZW07XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICBvdmVyZmxvdy15OiBoaWRkZW47XG4gICAgcGFkZGluZy1ib3R0b206IDAuNjI1cmVtO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICBzY3JvbGwtc25hcC10eXBlOiB4IHByb3hpbWl0eTtcbiAgfVxuXG4gIC5jYXRhbG9ncy1zZWN0aW9uX19ncmlkIC5jYXRhbG9nLWNhcmQsXG4gIC5jYXRhbG9ncy1zZWN0aW9uIC5zd2lwZXItc2xpZGUge1xuICAgIHNjcm9sbC1zbmFwLWFsaWduOiBzdGFydDtcbiAgfVxuXG4gIC5jYXRhbG9nLWNhcmQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDAsIDFmcikgbWlubWF4KDdyZW0sIDAuNzJmcik7XG4gICAgbWluLXdpZHRoOiAwO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuY2F0YWxvZ3Mtc2VjdGlvbl9fZ3JpZCB7XG4gICAgZ3JpZC1hdXRvLWNvbHVtbnM6IG1pbm1heCgxNy41cmVtLCA4NHZ3KTtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG5vbmU7XG4gIH1cblxuICAuY2F0YWxvZy1jYXJkIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgwLCAxZnIpIG1pbm1heCg2LjI1cmVtLCAwLjY4ZnIpO1xuICAgIG1pbi1oZWlnaHQ6IDI0cmVtO1xuICAgIHBhZGRpbmc6IDEuNXJlbTtcbiAgfVxuXG4gIC5jYXRhbG9nLWNhcmRfX2ltYWdlIHtcbiAgICBtYXgtd2lkdGg6IDkuMzc1cmVtO1xuICAgIGFzcGVjdC1yYXRpbzogMjIwIC8gMzEwO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAuY2F0YWxvZy1jYXJkIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgwLCAxZnIpIG1pbm1heCg1LjYyNXJlbSwgMC42MmZyKTtcbiAgICBnYXA6IDAuODc1cmVtO1xuICB9XG5cbiAgLmNhdGFsb2ctY2FyZF9fYnV0dG9uLmJ1dHRvbiB7XG4gICAgbWluLWhlaWdodDogMi44NzVyZW07XG4gIH1cbn1cbi8qIGNvZGV4LWNhdGFsb2ctY2FyZC1hZGFwdGl2ZS1lbmQgKi9cblxuLyogY29kZXgtY2F0YWxvZy1jYXJkLWhlaWdodC1hZGFwdGl2ZS1zdGFydCAqL1xuLmNhdGFsb2ctY2FyZCB7XG4gIG1pbi1oZWlnaHQ6IGNsYW1wKDIwLjVyZW0sIDI1LjV2dywgMjcuMDYyNXJlbSk7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxNDM5cHgpIGFuZCAobWluLXdpZHRoOiAxMTYxcHgpIHtcbiAgLmNhdGFsb2ctY2FyZCB7XG4gICAgbWluLWhlaWdodDogY2xhbXAoMTkuNXJlbSwgMjR2dywgMjMuNXJlbSk7XG4gIH1cblxuICAuY2F0YWxvZy1jYXJkX19jb250ZW50IHtcbiAgICBnYXA6IGNsYW1wKDFyZW0sIDEuN3Z3LCAxLjVyZW0pO1xuICB9XG5cbiAgLmNhdGFsb2ctY2FyZF9fYnJhbmQge1xuICAgIGdhcDogMC41cmVtO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTYwcHgpIHtcbiAgLmNhdGFsb2ctY2FyZCB7XG4gICAgbWluLWhlaWdodDogY2xhbXAoMTguNzVyZW0sIDM1dncsIDIxLjI1cmVtKTtcbiAgfVxuXG4gIC5jYXRhbG9nLWNhcmRfX2NvbnRlbnQge1xuICAgIGdhcDogMS4xMjVyZW07XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5jYXRhbG9nLWNhcmQge1xuICAgIG1pbi1oZWlnaHQ6IGNsYW1wKDE3LjVyZW0sIDc4dncsIDIwcmVtKTtcbiAgICBwYWRkaW5nLWJsb2NrOiAxLjI1cmVtO1xuICB9XG5cbiAgLmNhdGFsb2ctY2FyZF9fY29udGVudCB7XG4gICAgZ2FwOiAxcmVtO1xuICB9XG5cbiAgLmNhdGFsb2ctY2FyZF9fYnJhbmQge1xuICAgIGdhcDogMC41cmVtO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAuY2F0YWxvZy1jYXJkIHtcbiAgICBtaW4taGVpZ2h0OiBjbGFtcCgxNi44NzVyZW0sIDgydncsIDE5cmVtKTtcbiAgICBwYWRkaW5nLWJsb2NrOiAxLjEyNXJlbTtcbiAgfVxufVxuLyogY29kZXgtY2F0YWxvZy1jYXJkLWhlaWdodC1hZGFwdGl2ZS1lbmQgKi9cblxuXG4vKiBjb2RleC1jYXRhbG9nLWNhcmQtYnV0dG9uLXNpemUtc3RhcnQgKi9cbi5jYXRhbG9nLWNhcmQge1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgxMC41cmVtLCAxZnIpIG1pbm1heCg3LjVyZW0sIDAuODJmcik7XG59XG5cbi5jYXRhbG9nLWNhcmRfX2NvbnRlbnQge1xuICBtaW4td2lkdGg6IDEwLjVyZW07XG59XG5cbi5jYXRhbG9nLWNhcmRfX2J1dHRvbi5idXR0b24ge1xuICB3aWR0aDogMTAwJTtcbiAgbWluLXdpZHRoOiAwO1xuICBtaW4taGVpZ2h0OiB2YXIoLS1idXR0b24tbWluLWhlaWdodCkgIWltcG9ydGFudDtcbiAgcGFkZGluZy10b3A6IGNhbGModmFyKC0tYnV0dG9uLXBhZGRpbmctdG9wKSAtIHZhcigtLWJ1dHRvbi1ib3JkZXItd2lkdGgpKTtcbiAgcGFkZGluZy1ib3R0b206IGNhbGModmFyKC0tYnV0dG9uLXBhZGRpbmctYm90dG9tKSAtIHZhcigtLWJ1dHRvbi1ib3JkZXItd2lkdGgpKTtcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLWJ1dHRvbi1wYWRkaW5nLWhvcml6b250YWwpIC0gdmFyKC0tYnV0dG9uLWJvcmRlci13aWR0aCkpO1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKHZhcigtLWJ1dHRvbi1wYWRkaW5nLWhvcml6b250YWwpIC0gdmFyKC0tYnV0dG9uLWJvcmRlci13aWR0aCkpO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTQzOXB4KSBhbmQgKG1pbi13aWR0aDogMTE2MXB4KSB7XG4gIC5jYXRhbG9nLWNhcmQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDEwLjI1cmVtLCAxZnIpIG1pbm1heCg2Ljc1cmVtLCAwLjcyZnIpO1xuICB9XG5cbiAgLmNhdGFsb2ctY2FyZF9fY29udGVudCB7XG4gICAgbWluLXdpZHRoOiAxMC4yNXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTE2MHB4KSB7XG4gIC5jYXRhbG9ncy1zZWN0aW9uX19ncmlkIHtcbiAgICBncmlkLWF1dG8tY29sdW1uczogbWlubWF4KDIycmVtLCA3MnZ3KTtcbiAgfVxuXG4gIC5jYXRhbG9nLWNhcmQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDEwLjI1cmVtLCAxZnIpIG1pbm1heCg2Ljc1cmVtLCAwLjcyZnIpO1xuICB9XG5cbiAgLmNhdGFsb2ctY2FyZF9fY29udGVudCB7XG4gICAgbWluLXdpZHRoOiAxMC4yNXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmNhdGFsb2dzLXNlY3Rpb25fX2dyaWQge1xuICAgIGdyaWQtYXV0by1jb2x1bW5zOiBtaW5tYXgoMjAuNXJlbSwgODR2dyk7XG4gIH1cblxuICAuY2F0YWxvZy1jYXJkIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCg5Ljc1cmVtLCAxZnIpIG1pbm1heCg1Ljc1cmVtLCAwLjYyZnIpO1xuICB9XG5cbiAgLmNhdGFsb2ctY2FyZF9fY29udGVudCB7XG4gICAgbWluLXdpZHRoOiA5Ljc1cmVtO1xuICB9XG59XG4vKiBjb2RleC1jYXRhbG9nLWNhcmQtYnV0dG9uLXNpemUtZW5kICovXG5cblxuLyogY29kZXgtY2F0YWxvZy1iZy1hZGFwdGl2ZS1zdGFydCAqL1xuI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbiNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb246OmJlZm9yZSB7XG4gIHRvcDogY2xhbXAoLTJyZW0sIC0yLjR2dywgLTAuNXJlbSk7XG4gIGxlZnQ6IGNsYW1wKC0zLjVyZW0sIC0zLjZ2dywgLTAuNzVyZW0pO1xuICB3aWR0aDogY2xhbXAoMTRyZW0sIDMxdncsIDMycmVtKTtcbiAgaGVpZ2h0OiBjbGFtcCg2LjgxMjVyZW0sIDE1LjF2dywgMTUuNTYyNXJlbSk7XG59XG5cbiNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb246OmFmdGVyIHtcbiAgcmlnaHQ6IGNsYW1wKC01LjVyZW0sIC01LjR2dywgLTFyZW0pO1xuICBib3R0b206IC0xcHg7XG4gIHdpZHRoOiBjbGFtcCgyNnJlbSwgNTh2dywgNjYuNjI1cmVtKTtcbiAgaGVpZ2h0OiBjbGFtcCgxMi42MjVyZW0sIDI4LjJ2dywgMzIuMzc1cmVtKTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDExNjBweCkge1xuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uOjpiZWZvcmUge1xuICAgIHRvcDogY2xhbXAoLTEuNXJlbSwgLTIuOHZ3LCAtMC41cmVtKTtcbiAgICBsZWZ0OiBjbGFtcCgtM3JlbSwgLTR2dywgLTAuNzVyZW0pO1xuICAgIHdpZHRoOiBjbGFtcCgxMXJlbSwgMzN2dywgMjJyZW0pO1xuICAgIGhlaWdodDogY2xhbXAoNS4zNzVyZW0sIDE2LjF2dywgMTAuNjg3NXJlbSk7XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uOjphZnRlciB7XG4gICAgcmlnaHQ6IGNsYW1wKC00LjI1cmVtLCAtNnZ3LCAtMC43NXJlbSk7XG4gICAgYm90dG9tOiAtMXB4O1xuICAgIHdpZHRoOiBjbGFtcCgyMHJlbSwgNjJ2dywgNDJyZW0pO1xuICAgIGhlaWdodDogY2xhbXAoOS43NXJlbSwgMzAuMXZ3LCAyMC40Mzc1cmVtKTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbjo6YmVmb3JlIHtcbiAgICB0b3A6IC0wLjc1cmVtO1xuICAgIGxlZnQ6IC0yLjI1cmVtO1xuICAgIHdpZHRoOiBjbGFtcCg5cmVtLCA0NXZ3LCAxNXJlbSk7XG4gICAgaGVpZ2h0OiBjbGFtcCg0LjM3NXJlbSwgMjEuOXZ3LCA3LjMxMjVyZW0pO1xuICB9XG5cbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbjo6YWZ0ZXIge1xuICAgIHJpZ2h0OiAtMy4yNXJlbTtcbiAgICBib3R0b206IC0xcHg7XG4gICAgd2lkdGg6IGNsYW1wKDE3cmVtLCA3NHZ3LCAyNHJlbSk7XG4gICAgaGVpZ2h0OiBjbGFtcCg4LjI1cmVtLCAzNnZ3LCAxMS42ODc1cmVtKTtcbiAgfVxufVxuLyogY29kZXgtY2F0YWxvZy1iZy1hZGFwdGl2ZS1lbmQgKi9cblxuXG4vKiBjb2RleC1jYXRhbG9nLW1vYmlsZS13aWR0aC1zdGFydCAqL1xuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5jYXRhbG9ncy1zZWN0aW9uX19ncmlkIHtcbiAgICBncmlkLWF1dG8tY29sdW1uczogbWlubWF4KDIzLjc1cmVtLCA5MnZ3KTtcbiAgfVxuXG4gIC5jYXRhbG9nLWNhcmQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDEwLjVyZW0sIDFmcikgbWlubWF4KDYuNzVyZW0sIDAuN2ZyKTtcbiAgICBnYXA6IDEuMTI1cmVtO1xuICAgIHBhZGRpbmctaW5saW5lOiAxLjVyZW07XG4gIH1cblxuICAuY2F0YWxvZy1jYXJkX19jb250ZW50IHtcbiAgICBtaW4td2lkdGg6IDEwLjVyZW07XG4gIH1cblxuICAuY2F0YWxvZy1jYXJkX19pbWFnZSB7XG4gICAgbWluLXdpZHRoOiA2LjI1cmVtO1xuICAgIG1heC13aWR0aDogOC4yNXJlbTtcbiAgICBqdXN0aWZ5LXNlbGY6IGVuZDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDIwcHgpIHtcbiAgLmNhdGFsb2dzLXNlY3Rpb25fX2dyaWQge1xuICAgIGdyaWQtYXV0by1jb2x1bW5zOiBtaW5tYXgoMjIuNXJlbSwgOTR2dyk7XG4gIH1cblxuICAuY2F0YWxvZy1jYXJkIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgxMHJlbSwgMWZyKSBtaW5tYXgoNi4yNXJlbSwgMC42NWZyKTtcbiAgICBnYXA6IDFyZW07XG4gICAgcGFkZGluZy1pbmxpbmU6IDEuMjVyZW07XG4gIH1cblxuICAuY2F0YWxvZy1jYXJkX19jb250ZW50IHtcbiAgICBtaW4td2lkdGg6IDEwcmVtO1xuICB9XG5cbiAgLmNhdGFsb2ctY2FyZF9faW1hZ2Uge1xuICAgIG1pbi13aWR0aDogNnJlbTtcbiAgICBtYXgtd2lkdGg6IDcuNzVyZW07XG4gIH1cbn1cbi8qIGNvZGV4LWNhdGFsb2ctbW9iaWxlLXdpZHRoLWVuZCAqL1xuXG5cbi8qIGNvZGV4LWNhdGFsb2ctbW9iaWxlLXN3aXBlci13aWR0aC1zdGFydCAqL1xuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5jYXRhbG9ncy1zZWN0aW9uIC5zd2lwZXItc2xpZGUge1xuICAgIHdpZHRoOiAyMy43NXJlbSAhaW1wb3J0YW50O1xuICAgIG1pbi13aWR0aDogMjMuNzVyZW07XG4gICAgZmxleDogMCAwIDIzLjc1cmVtO1xuICB9XG5cbiAgLmNhdGFsb2dzLXNlY3Rpb24gLnN3aXBlci1zbGlkZSAuY2F0YWxvZy1jYXJkIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDIwcHgpIHtcbiAgLmNhdGFsb2dzLXNlY3Rpb24gLnN3aXBlci1zbGlkZSB7XG4gICAgd2lkdGg6IDIyLjVyZW0gIWltcG9ydGFudDtcbiAgICBtaW4td2lkdGg6IDIyLjVyZW07XG4gICAgZmxleC1iYXNpczogMjIuNXJlbTtcbiAgfVxufVxuLyogY29kZXgtY2F0YWxvZy1tb2JpbGUtc3dpcGVyLXdpZHRoLWVuZCAqL1xuXG5cbi8qIGNvZGV4LWNhdGFsb2ctbW9iaWxlLXBlZWstZml0LXN0YXJ0ICovXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmNhdGFsb2dzLXNlY3Rpb25fX2dyaWQge1xuICAgIGdyaWQtYXV0by1jb2x1bW5zOiBtaW5tYXgoMTguNzVyZW0sIGNhbGMoMTAwdncgLSAyLjVyZW0pKTtcbiAgfVxuXG4gIC5jYXRhbG9ncy1zZWN0aW9uIC5zd2lwZXItc2xpZGUge1xuICAgIHdpZHRoOiBjYWxjKDEwMHZ3IC0gMi41cmVtKSAhaW1wb3J0YW50O1xuICAgIG1heC13aWR0aDogMjFyZW07XG4gICAgbWluLXdpZHRoOiAxOC43NXJlbTtcbiAgICBmbGV4OiAwIDAgY2FsYygxMDB2dyAtIDIuNXJlbSk7XG4gIH1cblxuICAuY2F0YWxvZy1jYXJkLFxuICAuY2F0YWxvZ3Mtc2VjdGlvbiAuc3dpcGVyLXNsaWRlIC5jYXRhbG9nLWNhcmQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDguNXJlbSwgMWZyKSBtaW5tYXgoNC43NXJlbSwgNS43NXJlbSk7XG4gICAgZ2FwOiAwLjc1cmVtO1xuICAgIHBhZGRpbmc6IDEuMjVyZW07XG4gIH1cblxuICAuY2F0YWxvZy1jYXJkX19jb250ZW50IHtcbiAgICBtaW4td2lkdGg6IDguNXJlbTtcbiAgfVxuXG4gIC5jYXRhbG9nLWNhcmRfX2ltYWdlIHtcbiAgICBtaW4td2lkdGg6IDQuNzVyZW07XG4gICAgbWF4LXdpZHRoOiA1Ljc1cmVtO1xuICAgIGp1c3RpZnktc2VsZjogZW5kO1xuICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgfVxuXG4gIC5jYXRhbG9nLWNhcmRfX2J1dHRvbi5idXR0b24ge1xuICAgIG1pbi1oZWlnaHQ6IHZhcigtLWJ1dHRvbi1taW4taGVpZ2h0KSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAzODBweCkge1xuICAuY2F0YWxvZ3Mtc2VjdGlvbiAuc3dpcGVyLXNsaWRlIHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gIH1cblxuICAuY2F0YWxvZy1jYXJkLFxuICAuY2F0YWxvZ3Mtc2VjdGlvbiAuc3dpcGVyLXNsaWRlIC5jYXRhbG9nLWNhcmQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDhyZW0sIDFmcikgbWlubWF4KDQuMjVyZW0sIDVyZW0pO1xuICAgIGdhcDogMC42MjVyZW07XG4gICAgcGFkZGluZzogMS4yNXJlbTtcbiAgfVxuXG4gIC5jYXRhbG9nLWNhcmRfX2NvbnRlbnQge1xuICAgIG1pbi13aWR0aDogOHJlbTtcbiAgfVxuXG4gIC5jYXRhbG9nLWNhcmRfX2ltYWdlIHtcbiAgICBtaW4td2lkdGg6IDQuMjVyZW07XG4gICAgbWF4LXdpZHRoOiA1cmVtO1xuICB9XG59XG4vKiBjb2RleC1jYXRhbG9nLW1vYmlsZS1wZWVrLWZpdC1lbmQgKi9cblxuXG4vKiBjb2RleC1jYXRhbG9nLXBhZ2UtbGlzdGluZy1zdGFydCAqL1xuLnBhZ2VfX2JvZHlfY2F0YWxvZyAuY2F0YWxvZ3Mtc2VjdGlvbl9fZ3JpZCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4ucGFnZV9fYm9keV9jYXRhbG9nIC5jYXRhbG9nLWNhcmQuaXMtaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ucGFnZV9fYm9keV9jYXRhbG9nIC5jYXRhbG9ncy1zZWN0aW9uX19zaG93LW1vcmUge1xuICBtYXJnaW46IDIuNXJlbSBhdXRvIDA7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTYwcHgpIHtcbiAgLnBhZ2VfX2JvZHlfY2F0YWxvZyAuY2F0YWxvZ3Mtc2VjdGlvbl9fZ3JpZCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLWF1dG8tZmxvdzogcm93O1xuICAgIGdyaWQtYXV0by1jb2x1bW5zOiBpbml0aWFsO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIG1pbm1heCgwLCAxZnIpKTtcbiAgICBnYXA6IDEuMjVyZW07XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgc2Nyb2xsLXNuYXAtdHlwZTogbm9uZTtcbiAgfVxuXG4gIC5wYWdlX19ib2R5X2NhdGFsb2cgLmNhdGFsb2ctY2FyZCxcbiAgLnBhZ2VfX2JvZHlfY2F0YWxvZyAuY2F0YWxvZ3Mtc2VjdGlvbl9fZ3JpZCAuY2F0YWxvZy1jYXJkIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgc2Nyb2xsLXNuYXAtYWxpZ246IG5vbmU7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDYzMHB4KSB7XG4gIC5wYWdlX19ib2R5X2NhdGFsb2cgLmNhdGFsb2dzLXNlY3Rpb25fX2dyaWQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgIGdhcDogMS4yNXJlbTtcbiAgfVxuXG4gIC5wYWdlX19ib2R5X2NhdGFsb2cgLmNhdGFsb2ctY2FyZCxcbiAgLnBhZ2VfX2JvZHlfY2F0YWxvZyAuY2F0YWxvZ3Mtc2VjdGlvbl9fZ3JpZCAuY2F0YWxvZy1jYXJkIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCg4LjVyZW0sIDFmcikgbWlubWF4KDQuNzVyZW0sIDUuNzVyZW0pO1xuICAgIHBhZGRpbmc6IDEuMjVyZW07XG4gIH1cblxuICAucGFnZV9fYm9keV9jYXRhbG9nIC5jYXRhbG9ncy1zZWN0aW9uX19zaG93LW1vcmUge1xuICAgIG1hcmdpbi10b3A6IDEuNXJlbTtcbiAgfVxufVxuLyogY29kZXgtY2F0YWxvZy1wYWdlLWxpc3RpbmctZW5kICovXG5cblxuLyogY29kZXgtY2F0YWxvZy1zaG93LW1vcmUtaGlkZGVuLXN0YXJ0ICovXG4ucGFnZV9fYm9keV9jYXRhbG9nIC5jYXRhbG9ncy1zZWN0aW9uX19zaG93LW1vcmVbaGlkZGVuXSxcbi5wYWdlX19ib2R5X2NhdGFsb2cgLmNhdGFsb2dzLXNlY3Rpb25fX3Nob3ctbW9yZS5pcy1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG4vKiBjb2RleC1jYXRhbG9nLXNob3ctbW9yZS1oaWRkZW4tZW5kICovXG5cbi8qIGNvZGV4LWhvbWUtY2F0YWxvZy1tb2JpbGUtY2FyZC13aWR0aC1zdGFydCAqL1xuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLnN3aXBlci1zbGlkZSB7XG4gICAgd2lkdGg6IG1pbig4NnZ3LCAxOHJlbSkgIWltcG9ydGFudDtcbiAgICBtaW4td2lkdGg6IG1pbig4NnZ3LCAxOHJlbSk7XG4gICAgbWF4LXdpZHRoOiAxOHJlbTtcbiAgICBmbGV4OiAwIDAgbWluKDg2dncsIDE4cmVtKTtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLmNhdGFsb2ctY2FyZCxcbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuc3dpcGVyLXNsaWRlIC5jYXRhbG9nLWNhcmQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDkuMjVyZW0sIDFmcikgbWlubWF4KDQuNXJlbSwgNS4yNXJlbSk7XG4gICAgZ2FwOiAwLjc1cmVtO1xuICAgIHBhZGRpbmc6IDEuMjVyZW07XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5jYXRhbG9nLWNhcmRfX2NvbnRlbnQge1xuICAgIG1pbi13aWR0aDogOS4yNXJlbTtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLmNhdGFsb2ctY2FyZF9faW1hZ2Uge1xuICAgIG1pbi13aWR0aDogNC41cmVtO1xuICAgIG1heC13aWR0aDogNS4yNXJlbTtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLmNhdGFsb2ctY2FyZF9fYnV0dG9uLmJ1dHRvbiB7XG4gICAgd2lkdGg6IG1heC1jb250ZW50O1xuICAgIG1pbi13aWR0aDogOHJlbTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMzYwcHgpIHtcbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuc3dpcGVyLXNsaWRlIHtcbiAgICB3aWR0aDogbWluKDg4dncsIDE3LjI1cmVtKSAhaW1wb3J0YW50O1xuICAgIG1pbi13aWR0aDogbWluKDg4dncsIDE3LjI1cmVtKTtcbiAgICBtYXgtd2lkdGg6IDE3LjI1cmVtO1xuICAgIGZsZXgtYmFzaXM6IG1pbig4OHZ3LCAxNy4yNXJlbSk7XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5jYXRhbG9nLWNhcmQsXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLnN3aXBlci1zbGlkZSAuY2F0YWxvZy1jYXJkIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCg5cmVtLCAxZnIpIG1pbm1heCg0LjI1cmVtLCA0Ljc1cmVtKTtcbiAgICBnYXA6IDAuNjI1cmVtO1xuICB9XG5cbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuY2F0YWxvZy1jYXJkX19jb250ZW50IHtcbiAgICBtaW4td2lkdGg6IDlyZW07XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5jYXRhbG9nLWNhcmRfX2ltYWdlIHtcbiAgICBtaW4td2lkdGg6IDQuMjVyZW07XG4gICAgbWF4LXdpZHRoOiA0Ljc1cmVtO1xuICB9XG59XG4vKiBjb2RleC1ob21lLWNhdGFsb2ctbW9iaWxlLWNhcmQtd2lkdGgtZW5kICovXG5cbi8qIGNvZGV4LWhvbWUtY2F0YWxvZy1tb2JpbGUtdXRwLXdpZHRoLXN0YXJ0ICovXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuc3dpcGVyLXNsaWRlIHtcbiAgICB3aWR0aDogbWluKDI5MHB4LCBjYWxjKDEwMHZ3IC0gMzBweCkpICFpbXBvcnRhbnQ7XG4gICAgbWluLXdpZHRoOiBtaW4oMjkwcHgsIGNhbGMoMTAwdncgLSAzMHB4KSkgIWltcG9ydGFudDtcbiAgICBtYXgtd2lkdGg6IG1pbigyOTBweCwgY2FsYygxMDB2dyAtIDMwcHgpKSAhaW1wb3J0YW50O1xuICAgIGZsZXg6IDAgMCBtaW4oMjkwcHgsIGNhbGMoMTAwdncgLSAzMHB4KSkgIWltcG9ydGFudDtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLmNhdGFsb2ctY2FyZCxcbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuc3dpcGVyLXNsaWRlIC5jYXRhbG9nLWNhcmQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDkuMjVyZW0sIDFmcikgbWlubWF4KDQuNXJlbSwgNS4yNXJlbSk7XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5jYXRhbG9nLWNhcmRfX2ltYWdlIHtcbiAgICBtaW4td2lkdGg6IDQuNXJlbTtcbiAgICBtYXgtd2lkdGg6IDUuMjVyZW07XG4gIH1cbn1cbi8qIGNvZGV4LWhvbWUtY2F0YWxvZy1tb2JpbGUtdXRwLXdpZHRoLWVuZCAqL1xuXG4vKiBjb2RleC1ob21lLWNhdGFsb2ctbW9iaWxlLWNhcmQtd2lkdGgtdjIgKi9cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5zd2lwZXItc2xpZGUge1xuICAgIHdpZHRoOiBtaW4oOTJ2dywgMjJyZW0pICFpbXBvcnRhbnQ7XG4gICAgbWluLXdpZHRoOiBtaW4oOTJ2dywgMjJyZW0pICFpbXBvcnRhbnQ7XG4gICAgbWF4LXdpZHRoOiBtaW4oOTJ2dywgMjJyZW0pICFpbXBvcnRhbnQ7XG4gICAgZmxleDogMCAwIG1pbig5MnZ3LCAyMnJlbSkgIWltcG9ydGFudDtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLmNhdGFsb2ctY2FyZCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoMTAuMjVyZW0sIDFmcikgbWlubWF4KDQuNzVyZW0sIDUuMjVyZW0pO1xuICAgIGdhcDogMC44NzVyZW07XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMTcuMjVyZW07XG4gICAgcGFkZGluZzogMS4yNXJlbTtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLmNhdGFsb2ctY2FyZF9fY29udGVudCB7XG4gICAgbWluLXdpZHRoOiAxMC4yNXJlbTtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLmNhdGFsb2ctY2FyZF9fYnV0dG9uLmJ1dHRvbiB7XG4gICAgd2lkdGg6IGZpdC1jb250ZW50O1xuICAgIG1pbi13aWR0aDogOC41cmVtO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB9XG5cbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuY2F0YWxvZy1jYXJkX19pbWFnZSB7XG4gICAgbWluLXdpZHRoOiA0Ljc1cmVtO1xuICAgIG1heC13aWR0aDogNS4yNXJlbTtcbiAgICBqdXN0aWZ5LXNlbGY6IGVuZDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDIwcHgpIHtcbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuc3dpcGVyLXNsaWRlIHtcbiAgICB3aWR0aDogY2FsYygxMDB2dyAtIDEuMjVyZW0pICFpbXBvcnRhbnQ7XG4gICAgbWluLXdpZHRoOiBjYWxjKDEwMHZ3IC0gMS4yNXJlbSkgIWltcG9ydGFudDtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwdncgLSAxLjI1cmVtKSAhaW1wb3J0YW50O1xuICAgIGZsZXg6IDAgMCBjYWxjKDEwMHZ3IC0gMS4yNXJlbSkgIWltcG9ydGFudDtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLmNhdGFsb2ctY2FyZCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoOS4yNXJlbSwgMWZyKSBtaW5tYXgoNC4yNXJlbSwgNC43NXJlbSk7XG4gICAgZ2FwOiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nOiAxLjI1cmVtO1xuICB9XG5cbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuY2F0YWxvZy1jYXJkX19jb250ZW50IHtcbiAgICBtaW4td2lkdGg6IDkuMjVyZW07XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5jYXRhbG9nLWNhcmRfX2ltYWdlIHtcbiAgICBtaW4td2lkdGg6IDQuMjVyZW07XG4gICAgbWF4LXdpZHRoOiA0Ljc1cmVtO1xuICB9XG59XG4vKiAvY29kZXgtaG9tZS1jYXRhbG9nLW1vYmlsZS1jYXJkLXdpZHRoLXYyICovXG5cbi8qIGNvZGV4LWhvbWUtY2F0YWxvZy1tb2JpbGUtcGVlay12MSAqL1xuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLnN3aXBlci1zbGlkZSB7XG4gICAgd2lkdGg6IGNsYW1wKDE3cmVtLCBjYWxjKDEwMHZ3IC0gNC41cmVtKSwgMjJyZW0pICFpbXBvcnRhbnQ7XG4gICAgbWluLXdpZHRoOiBjbGFtcCgxN3JlbSwgY2FsYygxMDB2dyAtIDQuNXJlbSksIDIycmVtKSAhaW1wb3J0YW50O1xuICAgIG1heC13aWR0aDogY2xhbXAoMTdyZW0sIGNhbGMoMTAwdncgLSA0LjVyZW0pLCAyMnJlbSkgIWltcG9ydGFudDtcbiAgICBmbGV4OiAwIDAgY2xhbXAoMTdyZW0sIGNhbGMoMTAwdncgLSA0LjVyZW0pLCAyMnJlbSkgIWltcG9ydGFudDtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLmNhdGFsb2ctY2FyZCxcbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuc3dpcGVyLXNsaWRlIC5jYXRhbG9nLWNhcmQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDguNXJlbSwgMWZyKSBtaW5tYXgoNHJlbSwgNC43NXJlbSk7XG4gICAgZ2FwOiAwLjYyNXJlbTtcbiAgICBtaW4taGVpZ2h0OiAxNi4yNXJlbTtcbiAgICBwYWRkaW5nOiAxLjI1cmVtO1xuICB9XG5cbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuY2F0YWxvZy1jYXJkX19jb250ZW50IHtcbiAgICBtaW4td2lkdGg6IDguNXJlbTtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLmNhdGFsb2ctY2FyZF9fYnV0dG9uLmJ1dHRvbiB7XG4gICAgd2lkdGg6IGZpdC1jb250ZW50O1xuICAgIG1pbi13aWR0aDogOC4yNXJlbTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLmNhdGFsb2ctY2FyZF9faW1hZ2Uge1xuICAgIG1pbi13aWR0aDogNHJlbTtcbiAgICBtYXgtd2lkdGg6IDQuNzVyZW07XG4gICAganVzdGlmeS1zZWxmOiBlbmQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDM2MHB4KSB7XG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLnN3aXBlci1zbGlkZSB7XG4gICAgd2lkdGg6IGNsYW1wKDE2LjVyZW0sIGNhbGMoMTAwdncgLSAzLjVyZW0pLCAxOHJlbSkgIWltcG9ydGFudDtcbiAgICBtaW4td2lkdGg6IGNsYW1wKDE2LjVyZW0sIGNhbGMoMTAwdncgLSAzLjVyZW0pLCAxOHJlbSkgIWltcG9ydGFudDtcbiAgICBtYXgtd2lkdGg6IGNsYW1wKDE2LjVyZW0sIGNhbGMoMTAwdncgLSAzLjVyZW0pLCAxOHJlbSkgIWltcG9ydGFudDtcbiAgICBmbGV4LWJhc2lzOiBjbGFtcCgxNi41cmVtLCBjYWxjKDEwMHZ3IC0gMy41cmVtKSwgMThyZW0pICFpbXBvcnRhbnQ7XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5jYXRhbG9nLWNhcmQsXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLnN3aXBlci1zbGlkZSAuY2F0YWxvZy1jYXJkIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCg4LjI1cmVtLCAxZnIpIG1pbm1heCgzLjc1cmVtLCA0LjI1cmVtKTtcbiAgICBnYXA6IDAuNXJlbTtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLmNhdGFsb2ctY2FyZF9fY29udGVudCB7XG4gICAgbWluLXdpZHRoOiA4LjI1cmVtO1xuICB9XG5cbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuY2F0YWxvZy1jYXJkX19pbWFnZSB7XG4gICAgbWluLXdpZHRoOiAzLjc1cmVtO1xuICAgIG1heC13aWR0aDogNC4yNXJlbTtcbiAgfVxufVxuLyogL2NvZGV4LWhvbWUtY2F0YWxvZy1tb2JpbGUtcGVlay12MSAqL1xuXG5cbi8qIGNvZGV4LWhvbWUtY2F0YWxvZy1zbWFsbC1tb2JpbGUtZml0LXYxICovXG5AbWVkaWEgKG1heC13aWR0aDogMzc1cHgpIHtcbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuY2F0YWxvZy1jYXJkLFxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5zd2lwZXItc2xpZGUgLmNhdGFsb2ctY2FyZCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoOC41cmVtLCAxZnIpIG1pbm1heCgzLjI1cmVtLCAzLjc1cmVtKTtcbiAgICBnYXA6IDAuNXJlbTtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLmNhdGFsb2ctY2FyZF9fY29udGVudCB7XG4gICAgbWluLXdpZHRoOiA4LjVyZW07XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5jYXRhbG9nLWNhcmRfX2ltYWdlIHtcbiAgICBtaW4td2lkdGg6IDMuMjVyZW07XG4gICAgbWF4LXdpZHRoOiAzLjc1cmVtO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAzNDBweCkge1xuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5zd2lwZXItc2xpZGUge1xuICAgIHdpZHRoOiBjbGFtcCgxNi43NXJlbSwgY2FsYygxMDB2dyAtIDIuNzVyZW0pLCAxNy41cmVtKSAhaW1wb3J0YW50O1xuICAgIG1pbi13aWR0aDogY2xhbXAoMTYuNzVyZW0sIGNhbGMoMTAwdncgLSAyLjc1cmVtKSwgMTcuNXJlbSkgIWltcG9ydGFudDtcbiAgICBtYXgtd2lkdGg6IGNsYW1wKDE2Ljc1cmVtLCBjYWxjKDEwMHZ3IC0gMi43NXJlbSksIDE3LjVyZW0pICFpbXBvcnRhbnQ7XG4gICAgZmxleC1iYXNpczogY2xhbXAoMTYuNzVyZW0sIGNhbGMoMTAwdncgLSAyLjc1cmVtKSwgMTcuNXJlbSkgIWltcG9ydGFudDtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLmNhdGFsb2ctY2FyZCxcbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuc3dpcGVyLXNsaWRlIC5jYXRhbG9nLWNhcmQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDguNXJlbSwgMWZyKSBtaW5tYXgoM3JlbSwgMy41cmVtKTtcbiAgICBnYXA6IDAuNDM3NXJlbTtcbiAgICBwYWRkaW5nLWlubGluZTogMXJlbTtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLmNhdGFsb2ctY2FyZF9faW1hZ2Uge1xuICAgIG1pbi13aWR0aDogM3JlbTtcbiAgICBtYXgtd2lkdGg6IDMuNXJlbTtcbiAgfVxufVxuLyogL2NvZGV4LWhvbWUtY2F0YWxvZy1zbWFsbC1tb2JpbGUtZml0LXYxICovXG5cbi8qIGNvZGV4LWhvbWUtY2F0YWxvZy10YWJsZXQtZml0LXN0YXJ0ICovXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiAxMTYwcHgpIHtcbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuY2F0YWxvZ3Mtc2VjdGlvbl9fc2xpZGVyIHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLnN3aXBlci13cmFwcGVyIHtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLnN3aXBlci1zbGlkZSB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpICFpbXBvcnRhbnQ7XG4gICAgbWF4LXdpZHRoOiA5MjBweDtcbiAgICBmbGV4OiAwIDAgY2FsYygxMDAlIC0gNDBweCk7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG5cbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuY2F0YWxvZy1jYXJkLFxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5zd2lwZXItc2xpZGUgLmNhdGFsb2ctY2FyZCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLWhlaWdodDogY2xhbXAoMzQwcHgsIDM0dncsIDQwMHB4KTtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgyNDBweCwgMWZyKSBtaW5tYXgoMjEwcHgsIDMwMHB4KTtcbiAgICBnYXA6IGNsYW1wKDIwcHgsIDIuOHZ3LCAzMnB4KTtcbiAgICBwYWRkaW5nOiBjbGFtcCgyOHB4LCAzdncsIDQwcHgpO1xuICB9XG5cbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuY2F0YWxvZy1jYXJkX19jb250ZW50IHtcbiAgICBtaW4td2lkdGg6IDI0MHB4O1xuICB9XG5cbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuY2F0YWxvZy1jYXJkX19idXR0b24uYnV0dG9uIHtcbiAgICB3aWR0aDogbWluKDEwMCUsIDI0MHB4KTtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLmNhdGFsb2ctY2FyZF9faW1hZ2Uge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi13aWR0aDogMjEwcHg7XG4gICAgbWF4LXdpZHRoOiAzMDBweDtcbiAgICBoZWlnaHQ6IGNsYW1wKDI2MHB4LCAyOHZ3LCAzMzBweCk7XG4gICAganVzdGlmeS1zZWxmOiBlbmQ7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICB9XG5cbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuY2F0YWxvZy1jYXJkX19pbWFnZSBpbWcge1xuICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogODYwcHgpIHtcbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuc3dpcGVyLXNsaWRlIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMjhweCkgIWltcG9ydGFudDtcbiAgICBmbGV4LWJhc2lzOiBjYWxjKDEwMCUgLSAyOHB4KTtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLmNhdGFsb2ctY2FyZCxcbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuc3dpcGVyLXNsaWRlIC5jYXRhbG9nLWNhcmQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDIyMHB4LCAxZnIpIG1pbm1heCgxODBweCwgMjQwcHgpO1xuICAgIG1pbi1oZWlnaHQ6IDMzMHB4O1xuICAgIHBhZGRpbmc6IDI4cHg7XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5jYXRhbG9nLWNhcmRfX2NvbnRlbnQge1xuICAgIG1pbi13aWR0aDogMjIwcHg7XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5jYXRhbG9nLWNhcmRfX2ltYWdlIHtcbiAgICBtaW4td2lkdGg6IDE4MHB4O1xuICAgIG1heC13aWR0aDogMjQwcHg7XG4gICAgaGVpZ2h0OiAyODBweDtcbiAgfVxufVxuLyogY29kZXgtaG9tZS1jYXRhbG9nLXRhYmxldC1maXQtZW5kICovXG4vKiBjb2RleC1ob21lLWNhdGFsb2ctdGFibGV0LXNjcm9sbC1maXQtdjItc3RhcnQgKi9cbkBtZWRpYSAobWluLXdpZHRoOiA3NjdweCkgYW5kIChtYXgtd2lkdGg6IDExNjBweCkge1xuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5zd2lwZXIge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZzogMCAwIDAuNjI1cmVtO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICBzY3JvbGwtc25hcC10eXBlOiB4IHByb3hpbWl0eTtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLnN3aXBlci13cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gICAgZ2FwOiAwO1xuICB9XG5cbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuc3dpcGVyLXNsaWRlIHtcbiAgICB3aWR0aDogY2xhbXAoMzByZW0sIDYydncsIDM0cmVtKSAhaW1wb3J0YW50O1xuICAgIG1pbi13aWR0aDogY2xhbXAoMzByZW0sIDYydncsIDM0cmVtKSAhaW1wb3J0YW50O1xuICAgIG1heC13aWR0aDogY2xhbXAoMzByZW0sIDYydncsIDM0cmVtKSAhaW1wb3J0YW50O1xuICAgIGZsZXg6IDAgMCBjbGFtcCgzMHJlbSwgNjJ2dywgMzRyZW0pICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgc2Nyb2xsLXNuYXAtYWxpZ246IHN0YXJ0O1xuICB9XG5cbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuY2F0YWxvZy1jYXJkLFxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5zd2lwZXItc2xpZGUgLmNhdGFsb2ctY2FyZCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDEyLjc1cmVtLCAxZnIpIG1pbm1heCg4LjVyZW0sIDEwcmVtKTtcbiAgICBnYXA6IGNsYW1wKDFyZW0sIDJ2dywgMS41cmVtKTtcbiAgICBtaW4taGVpZ2h0OiBjbGFtcCgyMC41cmVtLCAzNnZ3LCAyNXJlbSk7XG4gICAgcGFkZGluZzogY2xhbXAoMS41cmVtLCAyLjh2dywgMnJlbSk7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5jYXRhbG9nLWNhcmRfX2NvbnRlbnQge1xuICAgIG1pbi13aWR0aDogMTIuNzVyZW07XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5jYXRhbG9nLWNhcmRfX2J1dHRvbi5idXR0b24ge1xuICAgIHdpZHRoOiBmaXQtY29udGVudDtcbiAgICBtaW4td2lkdGg6IDExLjg3NXJlbTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLmNhdGFsb2ctY2FyZF9faW1hZ2Uge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi13aWR0aDogOC41cmVtO1xuICAgIG1heC13aWR0aDogMTByZW07XG4gICAganVzdGlmeS1zZWxmOiBlbmQ7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICB9XG5cbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuY2F0YWxvZy1jYXJkX19pbWFnZSBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBvYmplY3QtZml0OiBjb250YWluO1xuICB9XG59XG4vKiBjb2RleC1ob21lLWNhdGFsb2ctdGFibGV0LXNjcm9sbC1maXQtdjItZW5kICovXG5cbi8qIGNvZGV4LWhvbWUtY2F0YWxvZy1oaWRlLWRlc2NyaXB0aW9uLXYxICovXG4jY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5zZWN0aW9uX19kZXNjcmlwdGlvbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4vKiAvY29kZXgtaG9tZS1jYXRhbG9nLWhpZGUtZGVzY3JpcHRpb24tdjEgKi9cblxuLyogY29kZXgtY2F0YWxvZy1jYXJkLWRlc2t0b3AtZXF1YWwtY29sdW1ucy12MSAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDExNjFweCkge1xuICAuY2F0YWxvZy1jYXJkLFxuICAuY2F0YWxvZ3Mtc2VjdGlvbiAuc3dpcGVyLXNsaWRlIC5jYXRhbG9nLWNhcmQsXG4gIC5jYXRhbG9ncy1zZWN0aW9uX19ncmlkIC5jYXRhbG9nLWNhcmQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDAsIDFmcikgbWlubWF4KDAsIDFmcik7XG4gIH1cblxuICAuY2F0YWxvZy1jYXJkX19jb250ZW50IHtcbiAgICBtaW4td2lkdGg6IDA7XG4gIH1cblxuICAuY2F0YWxvZy1jYXJkX19pbWFnZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBqdXN0aWZ5LXNlbGY6IHN0cmV0Y2g7XG4gIH1cbn1cbi8qIC9jb2RleC1jYXRhbG9nLWNhcmQtZGVza3RvcC1lcXVhbC1jb2x1bW5zLXYxICovXG5cbi8qIGNvZGV4LWhvbWUtY2F0YWxvZy1iZy1wb3NpdGlvbi12MSAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDExNjFweCkge1xuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uOjpiZWZvcmUge1xuICAgIHRvcDogLTEwNnB4O1xuICAgIGxlZnQ6IC00NjVweDtcbiAgICB3aWR0aDogODI1LjMwOHB4O1xuICAgIGhlaWdodDogNDAxLjA0MXB4O1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDEwLjk1NWRlZyk7XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uOjphZnRlciB7XG4gICAgcmlnaHQ6IC02Ni43NzFweDtcbiAgICBib3R0b206IC02Ni4xN3B4O1xuICAgIHdpZHRoOiAxMDY2cHg7XG4gICAgaGVpZ2h0OiA1MThweDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0Ljk1N2RlZyk7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDE5MjFweCkge1xuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uOjpiZWZvcmUge1xuICAgIHRvcDogLTUuNTIwODMzMzMzM3Z3O1xuICAgIGxlZnQ6IC0yNC4yMTg3NXZ3O1xuICAgIHdpZHRoOiA0Mi45ODQ3OTE2NjY3dnc7XG4gICAgaGVpZ2h0OiAyMC44ODc1NTIwODMzdnc7XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uOjphZnRlciB7XG4gICAgcmlnaHQ6IC0zLjQ3NzY1NjI1dnc7XG4gICAgYm90dG9tOiAtMy40NDYzNTQxNjY3dnc7XG4gICAgd2lkdGg6IDU1LjUyMDgzMzMzMzN2dztcbiAgICBoZWlnaHQ6IDI2Ljk3OTE2NjY2Njd2dztcbiAgfVxufVxuLyogL2NvZGV4LWhvbWUtY2F0YWxvZy1iZy1wb3NpdGlvbi12MSAqL1xuXG4vKiBjb2RleC1jYXRhbG9nLWNhcmQtaW1hZ2UtZnVsbC1oZWlnaHQtdjEgKi9cbi5jYXRhbG9nLWNhcmQge1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbn1cblxuLmNhdGFsb2ctY2FyZF9faW1hZ2Uge1xuICB3aWR0aDogMTAwJTtcbiAgbWluLXdpZHRoOiAwO1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMDtcbiAgYXNwZWN0LXJhdGlvOiBhdXRvO1xuICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICBqdXN0aWZ5LXNlbGY6IHN0cmV0Y2g7XG59XG5cbi5jYXRhbG9nLWNhcmRfX2ltYWdlIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1heC1oZWlnaHQ6IG5vbmU7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBvYmplY3QtcG9zaXRpb246IGNlbnRlcjtcbn1cbi8qIC9jb2RleC1jYXRhbG9nLWNhcmQtaW1hZ2UtZnVsbC1oZWlnaHQtdjEgKi9cblxuLyogY29kZXgtY2F0YWxvZy1jYXJkLWltYWdlLWZyYW1lLXYxICovXG4uY2F0YWxvZy1jYXJkX19pbWFnZSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMiwgMjcsIDQ4LCAwLjE1KTtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBiYWNrZ3JvdW5kOiAjZjdmOWZiO1xufVxuLyogL2NvZGV4LWNhdGFsb2ctY2FyZC1pbWFnZS1mcmFtZS12MSAqL1xuXG4vKiBjb2RleC1ob21lLWNhdGFsb2ctYmctZmlnbWEtdjIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAxMTYxcHgpIHtcbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbjo6YmVmb3JlLFxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uOjphZnRlciB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICB9XG5cbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbjo6YmVmb3JlIHtcbiAgICB0b3A6IC0zMS4yMzFweDtcbiAgICBsZWZ0OiAtNDM0LjQxM3B4O1xuICAgIHdpZHRoOiA4MjUuMzA4cHg7XG4gICAgaGVpZ2h0OiA0MDEuMDQxcHg7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTAuOTU1ZGVnKTtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb246OmFmdGVyIHtcbiAgICByaWdodDogLTQ2LjM4NnB4O1xuICAgIGJvdHRvbTogLTIxLjA4NXB4O1xuICAgIHdpZHRoOiAxMDY2cHg7XG4gICAgaGVpZ2h0OiA1MThweDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0Ljk1N2RlZyk7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDE5MjFweCkge1xuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uOjpiZWZvcmUge1xuICAgIHRvcDogLTEuNjI2NjE0NTgzM3Z3O1xuICAgIGxlZnQ6IC0yMi42MjU2NzcwODMzdnc7XG4gICAgd2lkdGg6IDQyLjk4NDc5MTY2Njd2dztcbiAgICBoZWlnaHQ6IDIwLjg4NzU1MjA4MzN2dztcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb246OmFmdGVyIHtcbiAgICByaWdodDogLTIuNDE1OTM3NXZ3O1xuICAgIGJvdHRvbTogLTEuMDk4MTc3MDgzM3Z3O1xuICAgIHdpZHRoOiA1NS41MjA4MzMzMzMzdnc7XG4gICAgaGVpZ2h0OiAyNi45NzkxNjY2NjY3dnc7XG4gIH1cbn1cbi8qIC9jb2RleC1ob21lLWNhdGFsb2ctYmctZmlnbWEtdjIgKi9cblxuLyogY29kZXgtY2F0YWxvZy1jYXJkLWE0LWltYWdlLXJhdGlvLXYxICovXG5AbWVkaWEgKG1heC13aWR0aDogMTgwMHB4KSB7XG4gIC5jYXRhbG9nLWNhcmQsXG4gIC5jYXRhbG9ncy1zZWN0aW9uIC5zd2lwZXItc2xpZGUgLmNhdGFsb2ctY2FyZCxcbiAgLmNhdGFsb2dzLXNlY3Rpb25fX2dyaWQgLmNhdGFsb2ctY2FyZCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoMCwgN2ZyKSBtaW5tYXgoMCwgMmZyKTtcbiAgICBhbGlnbi1pdGVtczogc3RhcnQ7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gIH1cblxuICAuY2F0YWxvZy1jYXJkX19jb250ZW50IHtcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gIH1cblxuICAuY2F0YWxvZy1jYXJkX19pbWFnZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWluLWhlaWdodDogMDtcbiAgICBhc3BlY3QtcmF0aW86IDIxMCAvIDI5NztcbiAgICBhbGlnbi1zZWxmOiBzdGFydDtcbiAgICBqdXN0aWZ5LXNlbGY6IHN0cmV0Y2g7XG4gIH1cblxuICAuY2F0YWxvZy1jYXJkX19pbWFnZSBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtYXgtaGVpZ2h0OiBub25lO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIG9iamVjdC1wb3NpdGlvbjogY2VudGVyO1xuICB9XG59XG4vKiAvY29kZXgtY2F0YWxvZy1jYXJkLWE0LWltYWdlLXJhdGlvLXYxICovXG5cbi8qIGNvZGV4LWhvbWUtY2F0YWxvZy1sZWZ0LWJnLXJpZ2h0LXYxICovXG5AbWVkaWEgKG1pbi13aWR0aDogMTE2MXB4KSB7XG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb246OmJlZm9yZSB7XG4gICAgbGVmdDogLTI3NXB4O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxOTIxcHgpIHtcbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbjo6YmVmb3JlIHtcbiAgICBsZWZ0OiAtMTQuMzIyOTE2NjY2N3Z3O1xuICB9XG59XG4vKiAvY29kZXgtaG9tZS1jYXRhbG9nLWxlZnQtYmctcmlnaHQtdjEgKi9cblxuLyogY29kZXgtaG9tZS1jYXRhbG9nLXRhYmxldC1hNC1zY3JvbGxiYXItdjEgKi9cbkBtZWRpYSAobWluLXdpZHRoOiA3NjdweCkgYW5kIChtYXgtd2lkdGg6IDExNjBweCkge1xuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5zd2lwZXIge1xuICAgIHNjcm9sbGJhci13aWR0aDogbm9uZTtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5zd2lwZXI6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLmNhdGFsb2ctY2FyZCxcbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuc3dpcGVyLXNsaWRlIC5jYXRhbG9nLWNhcmQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDAsIDdmcikgbWlubWF4KDAsIDJmcik7XG4gICAgYWxpZ24taXRlbXM6IHN0YXJ0O1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5jYXRhbG9nLWNhcmRfX2NvbnRlbnQge1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLmNhdGFsb2ctY2FyZF9faW1hZ2Uge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgYXNwZWN0LXJhdGlvOiAyMTAgLyAyOTc7XG4gICAgYWxpZ24tc2VsZjogc3RhcnQ7XG4gICAganVzdGlmeS1zZWxmOiBzdHJldGNoO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5jYXRhbG9nLWNhcmRfX2ltYWdlIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1heC1oZWlnaHQ6IG5vbmU7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgb2JqZWN0LXBvc2l0aW9uOiBjZW50ZXI7XG4gIH1cbn1cbi8qIC9jb2RleC1ob21lLWNhdGFsb2ctdGFibGV0LWE0LXNjcm9sbGJhci12MSAqL1xuXG4vKiBjb2RleC1jYXRhbG9nLWNhcmQtZGVza3RvcC1mbHVpZC1pbWFnZS12MSAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDExNjFweCkgYW5kIChtYXgtd2lkdGg6IDE4MDBweCkge1xuICAuY2F0YWxvZy1jYXJkLFxuICAuY2F0YWxvZ3Mtc2VjdGlvbiAuc3dpcGVyLXNsaWRlIC5jYXRhbG9nLWNhcmQsXG4gIC5jYXRhbG9ncy1zZWN0aW9uX19ncmlkIC5jYXRhbG9nLWNhcmQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczpcbiAgICAgIG1pbm1heCgwLCBjYWxjKDEwMCUgLSBjbGFtcCgyOCUsIGNhbGMoMC4wMzQ0MyAqICgxMDB2dyAtIDExNjFweCkgKyAyOCUpLCA1MCUpKSlcbiAgICAgIG1pbm1heCgwLCBjbGFtcCgyOCUsIGNhbGMoMC4wMzQ0MyAqICgxMDB2dyAtIDExNjFweCkgKyAyOCUpLCA1MCUpKTtcbiAgfVxuXG4gIC5jYXRhbG9nLWNhcmRfX2ltYWdlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBhc3BlY3QtcmF0aW86IDIxMCAvIDI5NztcbiAgfVxufVxuLyogL2NvZGV4LWNhdGFsb2ctY2FyZC1kZXNrdG9wLWZsdWlkLWltYWdlLXYxICovXG5cbi8qIGNvZGV4LWNhdGFsb2ctbGVmdC1iZy1hc3NldC12MiAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDExNjFweCkge1xuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uOjpiZWZvcmUge1xuICAgIHRvcDogLTEwNnB4O1xuICAgIGxlZnQ6IC00NjVweDtcbiAgICB3aWR0aDogODg3cHg7XG4gICAgaGVpZ2h0OiA1NTFweDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvY29udGVudC90YXJndXMvY2F0YWxvZy9jYXRhbG9nLWJnLWxlZnQtY3VzdG9tLXYyLnN2Z1wiKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxOTIxcHgpIHtcbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbjo6YmVmb3JlIHtcbiAgICB0b3A6IC01LjUyMDgzMzMzMzN2dztcbiAgICBsZWZ0OiAtMjQuMjE4NzV2dztcbiAgICB3aWR0aDogNDYuMTk3OTE2NjY2N3Z3O1xuICAgIGhlaWdodDogMjguNjk3OTE2NjY2N3Z3O1xuICB9XG59XG4vKiAvY29kZXgtY2F0YWxvZy1sZWZ0LWJnLWFzc2V0LXYyICovXG5cbi8qIGNvZGV4LWhvbWUtY2F0YWxvZy1sZWZ0LWJnLWFkYXB0aXZlLXNjYWxlLXYxICovXG4jY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uOjpiZWZvcmUge1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCB0b3A7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxODAwcHgpIHtcbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbjo6YmVmb3JlIHtcbiAgICAtLWNhdGFsb2ctbGVmdC1iZy13aWR0aDogY2xhbXAoMzRyZW0sIDQ2LjE5NzkxNjY2Njd2dywgNTEuOTM3NXJlbSk7XG4gICAgdG9wOiBjYWxjKHZhcigtLWNhdGFsb2ctbGVmdC1iZy13aWR0aCkgKiAtMC4xMTk1KTtcbiAgICBsZWZ0OiBjYWxjKHZhcigtLWNhdGFsb2ctbGVmdC1iZy13aWR0aCkgKiAtMC41MjQyKTtcbiAgICB3aWR0aDogdmFyKC0tY2F0YWxvZy1sZWZ0LWJnLXdpZHRoKTtcbiAgICBoZWlnaHQ6IGNhbGModmFyKC0tY2F0YWxvZy1sZWZ0LWJnLXdpZHRoKSAqIDAuNjIxMTk1KTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTE2MHB4KSB7XG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb246OmJlZm9yZSB7XG4gICAgLS1jYXRhbG9nLWxlZnQtYmctd2lkdGg6IGNsYW1wKDIycmVtLCA0OHZ3LCAzNHJlbSk7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb246OmJlZm9yZSB7XG4gICAgLS1jYXRhbG9nLWxlZnQtYmctd2lkdGg6IGNsYW1wKDE2cmVtLCA1NnZ3LCAyNHJlbSk7XG4gIH1cbn1cbi8qIC9jb2RleC1ob21lLWNhdGFsb2ctbGVmdC1iZy1hZGFwdGl2ZS1zY2FsZS12MSAqL1xuXG4vKiBjb2RleC1ob21lLWNhdGFsb2ctbGVmdC1iZy1uby1qdW1wLXYxICovXG5AbWVkaWEgKG1heC13aWR0aDogMTE2MHB4KSB7XG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb246OmJlZm9yZSB7XG4gICAgdG9wOiBjYWxjKHZhcigtLWNhdGFsb2ctbGVmdC1iZy13aWR0aCkgKiAtMC4xMTk1KTtcbiAgICBsZWZ0OiBjYWxjKHZhcigtLWNhdGFsb2ctbGVmdC1iZy13aWR0aCkgKiAtMC41MjQyKTtcbiAgfVxufVxuLyogL2NvZGV4LWhvbWUtY2F0YWxvZy1sZWZ0LWJnLW5vLWp1bXAtdjEgKi9cblxuLyogY29kZXgtaG9tZS1jYXRhbG9nLXN0YW5kYXJkLWxhcHRvcC1wYWRkaW5nLXYxICovXG5AbWVkaWEgKG1heC13aWR0aDogMTYwMHB4KSB7XG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24ge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoLS1zZWN0aW9uLXBhZGRpbmcpO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zZWN0aW9uLXBhZGRpbmcpO1xuICB9XG59XG4vKiAvY29kZXgtaG9tZS1jYXRhbG9nLXN0YW5kYXJkLWxhcHRvcC1wYWRkaW5nLXYxICovXG5cbi8qIGNvZGV4LWhvbWUtY2F0YWxvZy1kZXNrdG9wLXZpZXdwb3J0LXYxICovXG5AbWVkaWEgKG1pbi13aWR0aDogMTE2MXB4KSB7XG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLnNlY3Rpb25fX2NvbnRlbnQsXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLmNhdGFsb2dzLXNlY3Rpb25fX3NsaWRlciB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5zd2lwZXIge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZy10b3A6IDAuNzVyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDIuNzVyZW07XG4gICAgbWFyZ2luLXRvcDogLTAuNzVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogLTIuNzVyZW07XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5zd2lwZXItd3JhcHBlcixcbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuc3dpcGVyLXNsaWRlIHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLmNhdGFsb2ctY2FyZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDA7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5jYXRhbG9nLWNhcmQ6aG92ZXIge1xuICAgIHotaW5kZXg6IDI7XG4gIH1cbn1cbi8qIC9jb2RleC1ob21lLWNhdGFsb2ctZGVza3RvcC12aWV3cG9ydC12MSAqL1xuXG4vKiBjb2RleC1ob21lLWNhdGFsb2ctdGFibGV0LXNjcm9sbC1yZXN0b3JlLXYxICovXG5AbWVkaWEgKG1pbi13aWR0aDogNzY3cHgpIGFuZCAobWF4LXdpZHRoOiAxMTYwcHgpIHtcbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLnNlY3Rpb25fX2NvbnRlbnQsXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLmNhdGFsb2dzLXNlY3Rpb25fX3NsaWRlciB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5zd2lwZXIge1xuICAgIG1hcmdpbi1yaWdodDogY2FsYygwcHggLSB2YXIoLS1jb250YWluZXItb2Zmc2V0KSk7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMHB4IC0gdmFyKC0tY29udGFpbmVyLW9mZnNldCkpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLWNvbnRhaW5lci1vZmZzZXQpO1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tY29udGFpbmVyLW9mZnNldCk7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgc2Nyb2xsLXBhZGRpbmctbGVmdDogdmFyKC0tY29udGFpbmVyLW9mZnNldCk7XG4gICAgc2Nyb2xsLXNuYXAtdHlwZTogeCBwcm94aW1pdHk7XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5zd2lwZXItd3JhcHBlciB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICBnYXA6IDA7XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5zd2lwZXItc2xpZGUge1xuICAgIHdpZHRoOiBjbGFtcCgyNi41cmVtLCA1OHZ3LCAzNHJlbSkgIWltcG9ydGFudDtcbiAgICBtaW4td2lkdGg6IGNsYW1wKDI2LjVyZW0sIDU4dncsIDM0cmVtKSAhaW1wb3J0YW50O1xuICAgIG1heC13aWR0aDogY2xhbXAoMjYuNXJlbSwgNTh2dywgMzRyZW0pICFpbXBvcnRhbnQ7XG4gICAgZmxleDogMCAwIGNsYW1wKDI2LjVyZW0sIDU4dncsIDM0cmVtKSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogYXV0bztcbiAgICBzY3JvbGwtc25hcC1hbGlnbjogc3RhcnQ7XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5jYXRhbG9nLWNhcmQsXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLnN3aXBlci1zbGlkZSAuY2F0YWxvZy1jYXJkIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWluLXdpZHRoOiAwO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjdweCkgYW5kIChtYXgtd2lkdGg6IDg2MHB4KSB7XG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLnN3aXBlci1zbGlkZSB7XG4gICAgd2lkdGg6IGNsYW1wKDI0cmVtLCA3MnZ3LCAzMHJlbSkgIWltcG9ydGFudDtcbiAgICBtaW4td2lkdGg6IGNsYW1wKDI0cmVtLCA3MnZ3LCAzMHJlbSkgIWltcG9ydGFudDtcbiAgICBtYXgtd2lkdGg6IGNsYW1wKDI0cmVtLCA3MnZ3LCAzMHJlbSkgIWltcG9ydGFudDtcbiAgICBmbGV4LWJhc2lzOiBjbGFtcCgyNHJlbSwgNzJ2dywgMzByZW0pICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi8qIC9jb2RleC1ob21lLWNhdGFsb2ctdGFibGV0LXNjcm9sbC1yZXN0b3JlLXYxICovXG5cbi8qIGNvZGV4LWhvbWUtY2F0YWxvZy10YWJsZXQtc3dpcGVyLXJlc3RvcmUtdjIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiA3NjdweCkgYW5kIChtYXgtd2lkdGg6IDExNjBweCkge1xuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5zd2lwZXIge1xuICAgIG1hcmdpbi1yaWdodDogY2FsYygwcHggLSB2YXIoLS1jb250YWluZXItb2Zmc2V0KSk7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tY29udGFpbmVyLW9mZnNldCk7XG4gICAgcGFkZGluZy1ib3R0b206IDAuNzVyZW07XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLnN3aXBlci13cmFwcGVyIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgZ2FwOiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICB9XG5cbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuc3dpcGVyLXNsaWRlIHtcbiAgICB3aWR0aDogY2xhbXAoMjZyZW0sIDYydncsIDM0cmVtKSAhaW1wb3J0YW50O1xuICAgIG1pbi13aWR0aDogY2xhbXAoMjZyZW0sIDYydncsIDM0cmVtKSAhaW1wb3J0YW50O1xuICAgIG1heC13aWR0aDogY2xhbXAoMjZyZW0sIDYydncsIDM0cmVtKSAhaW1wb3J0YW50O1xuICAgIGZsZXg6IDAgMCBjbGFtcCgyNnJlbSwgNjJ2dywgMzRyZW0pICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2N3B4KSBhbmQgKG1heC13aWR0aDogODYwcHgpIHtcbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuc3dpcGVyLXNsaWRlIHtcbiAgICB3aWR0aDogY2xhbXAoMjNyZW0sIGNhbGMoMTAwdncgLSA1cmVtKSwgMjhyZW0pICFpbXBvcnRhbnQ7XG4gICAgbWluLXdpZHRoOiBjbGFtcCgyM3JlbSwgY2FsYygxMDB2dyAtIDVyZW0pLCAyOHJlbSkgIWltcG9ydGFudDtcbiAgICBtYXgtd2lkdGg6IGNsYW1wKDIzcmVtLCBjYWxjKDEwMHZ3IC0gNXJlbSksIDI4cmVtKSAhaW1wb3J0YW50O1xuICAgIGZsZXgtYmFzaXM6IGNsYW1wKDIzcmVtLCBjYWxjKDEwMHZ3IC0gNXJlbSksIDI4cmVtKSAhaW1wb3J0YW50O1xuICB9XG59XG4vKiAvY29kZXgtaG9tZS1jYXRhbG9nLXRhYmxldC1zd2lwZXItcmVzdG9yZS12MiAqL1xuXG4vKiBjb2RleC1ob21lLWNhdGFsb2ctdGFibGV0LW92ZXJmbG93LWNvbnRhaW5lZC12NSAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDc2N3B4KSBhbmQgKG1heC13aWR0aDogMTE2MHB4KSB7XG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG4gIH1cblxuICAjY29uc3RydWN0b3JfYmxvY2tfNC5jYXRhbG9ncy1zZWN0aW9uIC5jb250YWluZXIsXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLnNlY3Rpb25fX2NvbnRlbnQsXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLmNhdGFsb2dzLXNlY3Rpb25fX3NsaWRlciB7XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuc3dpcGVyIHtcbiAgICB3aWR0aDogY2FsYygxMDAlICsgKHZhcigtLWNvbnRhaW5lci1vZmZzZXQpICogMikpO1xuICAgIG1heC13aWR0aDogY2FsYygxMDAlICsgKHZhcigtLWNvbnRhaW5lci1vZmZzZXQpICogMikpO1xuICAgIG1hcmdpbi1yaWdodDogY2FsYygwcHggLSB2YXIoLS1jb250YWluZXItb2Zmc2V0KSk7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMHB4IC0gdmFyKC0tY29udGFpbmVyLW9mZnNldCkpO1xuICAgIHBhZGRpbmctdG9wOiAwLjc1cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLWNvbnRhaW5lci1vZmZzZXQpO1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tY29udGFpbmVyLW9mZnNldCk7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICAgIHNjcm9sbC1wYWRkaW5nLWxlZnQ6IHZhcigtLWNvbnRhaW5lci1vZmZzZXQpO1xuICB9XG5cbiAgI2NvbnN0cnVjdG9yX2Jsb2NrXzQuY2F0YWxvZ3Mtc2VjdGlvbiAuc3dpcGVyLXdyYXBwZXIsXG4gICNjb25zdHJ1Y3Rvcl9ibG9ja180LmNhdGFsb2dzLXNlY3Rpb24gLnN3aXBlci1zbGlkZSB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcbiAgfVxufVxuLyogL2NvZGV4LWhvbWUtY2F0YWxvZy10YWJsZXQtb3ZlcmZsb3ctY29udGFpbmVkLXY1ICovXG4iXX0= */
