/*------------------------------------------------------------
	Media
------------------------------------------------------------*/
/*------------------------------------------------------------
	Flex Box
------------------------------------------------------------*/
:root {
  --height-hd: 18rem;
  --menu-aside: 8rem;
  --menu-aside-hover: 33rem;
  --font-pri: "Roboto", sans-serif; }

.brand {
  margin: 8rem 0rem 8rem; }
  @media screen and (max-width: 992px) {
    .brand {
      margin: 6rem 0rem; } }
  @media screen and (max-width: 576px) {
    .brand {
      margin: 4rem 0rem; } }
  .brand-block {
    padding: 2.4rem;
    border-radius: 0.8rem;
    background-color: white;
    box-shadow: 0 0.2rem 2rem 0 rgba(0, 0, 0, 0.15); }
    @media screen and (max-width: 767px) {
      .brand-block {
        padding: 1.6rem; } }
  @media screen and (min-width: 1201px) {
    .brand-row {
      --rg: 4rem;
      --cg: 4rem; } }
  @media screen and (max-width: 1024px) {
    .brand-col {
      width: 100%; } }
  .brand-bg {
    overflow: hidden;
    user-select: none;
    position: relative;
    border-radius: 0.8rem;
    padding-top: calc(374 / 560 * 100%); }
    @media screen and (min-width: 1201px) {
      .brand-bg:hover img {
        transform: translate(-50%, -50%) scale(1.05); } }
    .brand-bg img {
      top: 50%;
      left: 50%;
      width: 100%;
      height: 100%;
      object-fit: cover;
      position: absolute;
      transform: translate(-50%, -50%);
      transition: 0.4s ease-in-out; }
  .brand-content .mona-content {
    color: #000; }
    .brand-content .mona-content p {
      font-size: 2rem;
      margin-bottom: 2.4rem; }
      @media only screen and (max-width: 1200px) {
        .brand-content .mona-content p {
          font-size: 1.8rem; } }
      @media only screen and (max-width: 800px) {
        .brand-content .mona-content p {
          font-size: 1.6rem; } }
  .brand-sw {
    position: relative; }
    .brand-sw .swiper {
      margin: 0 -1.6rem; }
      @media screen and (max-width: 1200px) {
        .brand-sw .swiper {
          margin: 0 -0.8rem; } }
      .brand-sw .swiper-wrapper {
        row-gap: 4rem;
        flex-wrap: wrap;
        min-width: 100%;
        flex-direction: row; }
      .brand-sw .swiper-slide {
        padding: 0 1.6rem;
        width: calc(100% / 6); }
        @media screen and (max-width: 1200px) {
          .brand-sw .swiper-slide {
            padding: 0 0.8rem; } }
        @media screen and (max-width: 1024px) {
          .brand-sw .swiper-slide {
            width: calc(100% / 4); } }
        @media screen and (max-width: 767px) {
          .brand-sw .swiper-slide {
            width: calc(100% / 3); } }
  .brand-img {
    padding: 2.4rem;
    user-select: none;
    border-radius: 50%;
    position: relative;
    background: linear-gradient(97deg, #c8ffcc -46.06%, #91dfb4 137.86%); }
    .brand-img .img {
      display: block;
      position: relative;
      padding-top: calc(1 / 1 * 100%); }
      @media screen and (min-width: 1201px) {
        .brand-img .img:hover img {
          transform: translate(-50%, -50%) scale(1.05); } }
      .brand-img .img img {
        top: 50%;
        left: 50%;
        width: 100%;
        height: 100%;
        position: absolute;
        object-fit: contain;
        transform: translate(-50%, -50%);
        transition: 0.4s ease-in-out; }
  .brand-info {
    text-align: center; }
    .brand-info .title-24 {
      transition: 0.4s ease-in-out; }
      @media screen and (min-width: 1201px) {
        .brand-info .title-24:hover {
          color: #db1f26; } }
  .brand-heading {
    display: flex;
    align-items: center;
    justify-content: space-between; }
    .brand-heading .btn-third {
      font-size: 1.6rem !important;
      padding: 1rem 3.2rem !important; }
  .brand-bg-sw {
    position: relative; }
    .brand-bg-sw_img {
      overflow: hidden;
      user-select: none;
      position: relative;
      border-radius: 0.8rem;
      padding-top: calc(450 / 1504 * 100%); }
      @media screen and (min-width: 1201px) {
        .brand-bg-sw_img:hover img {
          transform: translate(-50%, -50%) scale(1.05); } }
      @media screen and (max-width: 576px) {
        .brand-bg-sw_img {
          padding-top: calc(450 / 990 * 100%); } }
      .brand-bg-sw_img img {
        top: 50%;
        left: 50%;
        width: 100%;
        height: 100%;
        object-fit: cover;
        position: absolute;
        transform: translate(-50%, -50%);
        transition: 0.4s ease-in-out; }
    .brand-bg-sw .swiper-pagination {
      z-index: 3;
      bottom: 4.8rem;
      margin: 0 auto !important;
      position: absolute !important;
      transform: translateX(-50%) !important; }
      @media screen and (max-width: 1200px) {
        .brand-bg-sw .swiper-pagination {
          bottom: 1rem; } }
      .brand-bg-sw .swiper-pagination-bullet {
        opacity: 1;
        background-color: #d9d9d9; }
        .brand-bg-sw .swiper-pagination-bullet-active {
          background-color: #00a523; }
  .brand-extra .brand-img {
    background: linear-gradient(130deg, #87ffed -1.39%, #47a7ff 115.45%); }

.m-brand {
  margin: 8rem 0rem 8rem; }
  @media screen and (max-width: 992px) {
    .m-brand {
      margin: 6rem 0rem; } }
  @media screen and (max-width: 576px) {
    .m-brand {
      margin: 4rem 0rem; } }
  .m-brand-sw {
    position: relative; }
    .m-brand-sw .swiper {
      padding-block: 4rem;
      margin: -4rem -1.2rem; }
      @media screen and (max-width: 1200px) {
        .m-brand-sw .swiper {
          margin: -4rem -0.8rem; } }
      .m-brand-sw .swiper-slide {
        padding: 0 1.2rem;
        width: calc(100% / 6); }
        @media screen and (max-width: 1200px) {
          .m-brand-sw .swiper-slide {
            padding: 0 0.8rem;
            width: calc(100% / 5); } }
        @media screen and (max-width: 1024px) {
          .m-brand-sw .swiper-slide {
            width: calc(100% / 4); } }
        @media screen and (max-width: 767px) {
          .m-brand-sw .swiper-slide {
            width: calc(100% / 3); } }
        @media screen and (max-width: 576px) {
          .m-brand-sw .swiper-slide {
            width: calc(100% / 2); } }
    @media screen and (min-width: 1201px) {
      .m-brand-sw .swiper-pagination {
        display: none; } }
  .m-brand-img {
    overflow: hidden;
    user-select: none;
    position: relative;
    border-radius: 0.4rem;
    padding-top: calc(100 / 232 * 100%);
    box-shadow: 0.1rem 0.2rem 0.4rem 0 rgba(0, 0, 0, 0.25); }
    .m-brand-img img {
      top: 50%;
      left: 50%;
      width: 100%;
      height: 100%;
      object-fit: cover;
      position: absolute;
      transform: translate(-50%, -50%); }

.js-brand {
  position: relative; }
  .js-brand .swiper {
    padding-block: 4rem;
    margin: -4rem -1.2rem; }
    @media screen and (max-width: 1200px) {
      .js-brand .swiper {
        margin: -4rem -0.8rem; } }
    .js-brand .swiper-wrapper {
      row-gap: 4rem;
      min-width: 100%;
      flex-direction: row !important; }
      @media screen and (max-width: 1200px) {
        .js-brand .swiper-wrapper {
          row-gap: 1.6rem; } }
    .js-brand .swiper-slide {
      padding: 0 1.2rem; }
      @media screen and (max-width: 1200px) {
        .js-brand .swiper-slide {
          padding: 0 0.8rem; } }
    .js-brand .swiper-button-prev {
      left: 0; }
    .js-brand .swiper-button-next {
      right: 0; }
    @media screen and (min-width: 1201px) {
      .js-brand .swiper-pagination {
        display: none; } }

.support {
  margin: 8rem 0rem 8rem; }
  @media screen and (max-width: 992px) {
    .support {
      margin: 6rem 0rem; } }
  @media screen and (max-width: 576px) {
    .support {
      margin: 4rem 0rem; } }
  .support-heading .title-40 {
    color: #00a523; }
  .support-list {
    display: flex;
    flex-wrap: wrap;
    row-gap: 6.4rem;
    margin: 0 -3.2rem;
    justify-content: center; }
    @media screen and (max-width: 1200px) {
      .support-list {
        row-gap: 2.4rem;
        margin: 0 -1.2rem; } }
  .support-item {
    padding: 0 3.2rem;
    width: calc(100% / 4); }
    @media screen and (max-width: 1200px) {
      .support-item {
        padding: 0 1.2rem; } }
    @media screen and (max-width: 1024px) {
      .support-item {
        width: calc(100% / 3); } }
    @media screen and (max-width: 767px) {
      .support-item {
        width: calc(100% / 2); } }
    @media screen and (max-width: 576px) {
      .support-item {
        width: 100%; } }
  .support-box {
    height: 100%;
    padding: 4rem;
    transition: 0.4s ease-in-out;
    border-radius: 0.8rem;
    background-color: white;
    border: 0.1rem solid #00a523;
    box-shadow: 0.3rem 0.3rem 0.4rem 0 rgba(0, 107, 206, 0.3); }
    @media screen and (min-width: 1201px) {
      .support-box:hover {
        transform: scale(1.1);
        background-color: #00a523; }
        .support-box:hover img {
          filter: brightness(0) invert(1); }
        .support-box:hover .title-24 {
          color: white; } }
    @media screen and (max-width: 1200px) {
      .support-box {
        padding: 3.2rem; } }
    @media screen and (max-width: 767px) {
      .support-box {
        padding: 2.4rem;
        row-gap: 1.2rem; } }
  .support-img {
    margin: auto;
    display: block; }
  .support-content {
    display: flex;
    text-align: center;
    flex-direction: column; }
    .support-content .title-24 {
      margin-top: auto;
      line-height: 166%;
      transition: 0.4s ease-in-out; }
      @media screen and (max-width: 767px) {
        .support-content .title-24 br {
          display: none; } }

@media screen and (max-width: 1200px) {
  .p-product-col {
    width: 100%; } }

.p-product-left {
  display: flex;
  row-gap: 4rem;
  flex-direction: column; }
  @media screen and (max-width: 1200px) {
    .p-product-left {
      margin: 0 auto;
      row-gap: 3.2rem;
      max-width: 60rem; } }
  .p-product-left_action {
    gap: 2.4rem;
    flex-wrap: wrap;
    margin-left: auto;
    display: flex;
    align-items: center;
    width: calc(100% - 14.4rem); }
    @media screen and (max-width: 1200px) {
      .p-product-left_action {
        width: 100%; } }
    @media screen and (max-width: 767px) {
      .p-product-left_action {
        gap: 1.6rem; } }
    .p-product-left_action .btn {
      width: calc(100% / 2 - 1.2rem); }
      @media screen and (max-width: 767px) {
        .p-product-left_action .btn {
          width: calc(1005 / 2 - 0.8rem); } }
      .p-product-left_action .btn-pri {
        color: #006bce;
        border-color: #006bce;
        background-color: white !important; }
        @media screen and (min-width: 1201px) {
          .p-product-left_action .btn-pri:hover {
            color: white;
            border-color: white; }
            .p-product-left_action .btn-pri:hover::before {
              background-color: #006bce; } }
        .p-product-left_action .btn-pri::before {
          background-color: white; }
      @media screen and (min-width: 1201px) {
        .p-product-left_action .btn-sec:hover {
          color: white;
          border-color: #006bce; } }
      .p-product-left_action .btn-sec:before {
        background-color: #006bce; }
  .p-product-left > .btn {
    color: #01752f;
    margin-left: auto;
    border-radius: 0.4rem;
    border: 0.2rem solid #01752f;
    box-shadow: 0 0.4rem 0.4rem 0 rgba(0, 0, 0, 0.25); }
    @media screen and (min-width: 1201px) {
      .p-product-left > .btn {
        width: calc(100% - 14rem); }
        .p-product-left > .btn:hover {
          color: white;
          border-color: #db1f26; } }
    @media screen and (max-width: 1200px) {
      .p-product-left > .btn {
        width: 100%; } }

@media screen and (min-width: 1201px) {
  .p-product-slide {
    gap: 4rem;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    flex-direction: row-reverse; } }
  @media screen and (min-width: 1201px) and (max-width: 1200px) {
    .p-product-slide {
      gap: 3.2rem; } }

.p-product-slide .swiper-slide {
  width: 100%; }

.p-product-slide .swiper-button-next {
  right: 1rem; }

.p-product-slide .swiper-button-prev {
  left: 1rem; }

.p-product-slide .swiper-button-next, .p-product-slide .swiper-button-prev {
  box-shadow: 0 0.2rem 2rem 0 rgba(0, 0, 0, 0.15); }

.p-product-img {
  display: block;
  overflow: hidden;
  user-select: none;
  position: relative;
  border-radius: 0.8rem;
  border: 0.1rem solid #e4f2ff;
  padding-top: calc(1 / 1 * 100%); }
  .p-product-img img {
    top: 50%;
    left: 50%;
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    transform: translate(-50%, -50%);
    transition: 0.4s ease-in-out; }

.p-product-inner .in-stock {
  display: none !important; }

.p-product-review {
  gap: 0.8rem;
  display: flex;
  flex-wrap: wrap;
  padding-bottom: 1.6rem;
  border-bottom: 0.1rem solid rgba(0, 0, 0, 0.2); }
  @media screen and (max-width: 1200px) {
    .p-product-review {
      gap: 1.2rem; } }
  @media screen and (min-width: 577px) {
    .p-product-review .star {
      margin-left: auto; } }
  .p-product-review .brand {
    color: white;
    user-select: none;
    width: fit-content;
    line-height: normal;
    margin: 0 !important;
    border-radius: 0.5rem;
    align-content: center;
    padding: 0.95rem 1.6rem;
    background-color: #006bce; }
  .p-product-review .btn {
    pointer-events: none;
    font-size: 1.8rem !important;
    padding: 0.85rem 1.6rem !important; }
    @media screen and (min-width: 577px) {
      .p-product-review .btn {
        margin-left: auto; } }
  .p-product-review:has(~ .out-of-stock) .btn {
    color: #db1f26;
    border-color: #db1f26; }

.p-product-price {
  font-size: 2.4rem; }
  @media only screen and (max-width: 1200px) {
    .p-product-price {
      font-size: 2rem; } }
  @media only screen and (max-width: 800px) {
    .p-product-price {
      font-size: 1.7rem; } }
  .p-product-price del {
    font-size: 2.4rem; }
    @media only screen and (max-width: 1200px) {
      .p-product-price del {
        font-size: 2rem; } }
    @media only screen and (max-width: 800px) {
      .p-product-price del {
        font-size: 1.7rem; } }
  .p-product-price ins {
    font-size: 4.8rem; }
    @media only screen and (max-width: 1200px) {
      .p-product-price ins {
        font-size: 4.3rem; } }
    @media only screen and (max-width: 800px) {
      .p-product-price ins {
        font-size: 3.3rem; } }
  .p-product-price .price:has(.no-price-button) {
    align-items: stretch;
    flex-direction: column; }
  .p-product-price .quote-button-container {
    gap: 1.6rem;
    display: flex;
    flex-wrap: wrap; }
  .p-product-price .btn-quote-request {
    color: white;
    font-size: 2rem;
    font-weight: 700;
    text-align: center;
    transition: 0.4s ease-in-out;
    border-radius: 0.5rem;
    padding: 1.2rem 2.4rem;
    font-family: var(--font-pri);
    background-color: #00a523; }
    @media only screen and (max-width: 1200px) {
      .p-product-price .btn-quote-request {
        font-size: 1.8rem; } }
    @media only screen and (max-width: 800px) {
      .p-product-price .btn-quote-request {
        font-size: 1.6rem; } }
    @media screen and (min-width: 1201px) {
      .p-product-price .btn-quote-request:hover {
        color: white;
        border-color: #db1f26;
        background-color: #db1f26; } }

.p-product-stock .text-20 span {
  color: #00a523; }

.p-product-option {
  gap: 2.4rem;
  flex-wrap: wrap;
  display: flex;
  align-items: center;
  border-radius: 0.8rem;
  padding: 3.2rem 2.4rem;
  background-color: #e4f2ff; }
  @media screen and (max-width: 1200px) {
    .p-product-option {
      padding: 1.6rem; } }
  .p-product-option .option {
    gap: 2.4rem;
    display: flex;
    flex-wrap: wrap; }
    @media screen and (max-width: 1200px) {
      .p-product-option .option {
        gap: 1.6rem; } }
    .p-product-option .option-label {
      display: block;
      font-size: 1.8rem;
      padding: 1.6rem;
      cursor: pointer;
      user-select: none;
      text-align: center;
      min-width: 10.5rem;
      transition: 0.4s ease-in-out;
      border-radius: 0.5rem;
      background-color: white;
      border: 0.1rem solid #a3a3a3;
      box-shadow: 0.2rem 0.2rem 0.4rem rgba(0, 0, 0, 0.2); }
      @media only screen and (max-width: 1200px) {
        .p-product-option .option-label {
          font-size: 1.6rem; } }
      @media only screen and (max-width: 800px) {
        .p-product-option .option-label {
          font-size: 1.5rem; } }
      @media screen and (max-width: 1200px) {
        .p-product-option .option-label {
          gap: 1.6rem;
          padding: 1.2rem; } }
      .p-product-option .option-label:has(input[type="radio"]:checked) {
        color: white;
        font-weight: 700;
        background: linear-gradient(84deg, #ff8307 1.48%, #ff5900 99.11%); }

.p-product-action {
  gap: 1.8rem;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  padding-bottom: 1.6rem;
  border-bottom: 0.1rem solid rgba(0, 0, 0, 0.2); }
  .p-product-action_btn {
    gap: 1.8rem;
    display: flex;
    flex-wrap: wrap;
    width: calc(100% - 13.6rem); }
    @media screen and (max-width: 767px) {
      .p-product-action_btn {
        width: 100%; } }
    @media screen and (max-width: 576px) {
      .p-product-action_btn {
        gap: 1rem; } }
    .p-product-action_btn .btn {
      padding: 1.2rem !important;
      width: calc(100% / 2 - 0.9rem); }
      @media screen and (max-width: 576px) {
        .p-product-action_btn .btn {
          width: calc(100% / 2 - 0.5rem);
          padding: 1.2rem 0.7rem !important; } }
  .p-product-action .carts-counter {
    padding: 1.6rem;
    width: fit-content;
    column-gap: 1.6rem;
    border-radius: 0.4rem;
    border: 0.1rem solid rgba(36, 36, 36, 0.2); }
    @media screen and (max-width: 576px) {
      .p-product-action .carts-counter {
        padding: 0.8rem;
        column-gap: 0.8rem; } }
    .p-product-action .carts-counter button {
      column-gap: 0.4rem;
      display: flex;
      align-items: center; }
      .p-product-action .carts-counter button:first-child::after {
        content: "";
        width: 0.1rem;
        flex-shrink: 0;
        height: 3.2rem;
        display: inline-block;
        background-color: rgba(36, 36, 36, 0.2); }
      .p-product-action .carts-counter button:last-child::before {
        content: "";
        width: 0.1rem;
        flex-shrink: 0;
        height: 3.2rem;
        display: inline-block;
        background-color: rgba(36, 36, 36, 0.2); }
  .p-product-action .cart {
    width: 100%;
    gap: 1.8rem;
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 0 !important; }
    @media screen and (max-width: 450px) {
      .p-product-action .cart {
        flex-direction: column; }
        .p-product-action .cart .cart {
          flex-direction: column; } }
    .p-product-action .cart::before, .p-product-action .cart:after {
      content: unset !important; }
    .p-product-action .cart .p-product-action_btn {
      width: calc(100% - 16rem); }
      @media screen and (max-width: 450px) {
        .p-product-action .cart .p-product-action_btn {
          width: 100%; } }
      .p-product-action .cart .p-product-action_btn .added_to_cart {
        display: none !important; }
    .p-product-action .cart .vi-wpvs-variation-style {
      gap: 2.4rem;
      margin-bottom: 0;
      align-items: center;
      display: flex !important; }
    .p-product-action .cart .variations {
      gap: 2.4rem;
      width: 100%;
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      border-radius: 0.8rem;
      margin-bottom: 0 !important; }
      .p-product-action .cart .variations tbody {
        width: 100%;
        display: flex;
        row-gap: 2.4rem;
        flex-direction: column; }
        @media screen and (max-width: 767px) {
          .p-product-action .cart .variations tbody {
            row-gap: 1.6rem; } }
      .p-product-action .cart .variations .label {
        font-size: 2rem;
        flex-shrink: 0;
        text-align: left;
        line-height: normal !important; }
        @media only screen and (max-width: 1200px) {
          .p-product-action .cart .variations .label {
            font-size: 1.8rem; } }
        @media only screen and (max-width: 800px) {
          .p-product-action .cart .variations .label {
            font-size: 1.6rem; } }
      .p-product-action .cart .variations .value .vi-wpvs-variation-wrap {
        gap: 1.2rem 2.4rem; }
        .p-product-action .cart .variations .value .vi-wpvs-variation-wrap .vi-wpvs-option-wrap {
          margin: 0;
          font-size: 1.8rem;
          cursor: pointer;
          padding: 1.6rem;
          user-select: none;
          box-shadow: unset;
          min-width: 10.5rem;
          text-align: center;
          transition: 0.4s ease-in-out;
          border-radius: 0.5rem;
          border: 0.1rem solid #a3a3a3; }
          @media only screen and (max-width: 1200px) {
            .p-product-action .cart .variations .value .vi-wpvs-variation-wrap .vi-wpvs-option-wrap {
              font-size: 1.6rem; } }
          @media only screen and (max-width: 800px) {
            .p-product-action .cart .variations .value .vi-wpvs-variation-wrap .vi-wpvs-option-wrap {
              font-size: 1.5rem; } }
          .p-product-action .cart .variations .value .vi-wpvs-variation-wrap .vi-wpvs-option-wrap-hover, .p-product-action .cart .variations .value .vi-wpvs-variation-wrap .vi-wpvs-option-wrap-selected {
            border-color: #ff8307;
            background: linear-gradient(84deg, #ff8307 1.48%, #ff5900 99.11%); }
        .p-product-action .cart .variations .value .vi-wpvs-variation-wrap .vi-wpvs-option-wrap-out-of-stock-attribute {
          pointer-events: none !important; }
      .p-product-action .cart .variations .reset_variations {
        display: none !important; }
      .p-product-action .cart .variations .vi-wpvs-variation-style {
        width: 100%;
        border-radius: 0.8rem;
        padding: 3.2rem 2.4rem;
        background-color: #e4f2ff; }
    .p-product-action .cart .single_variation_wrap {
      width: 100%; }
      .p-product-action .cart .single_variation_wrap .woocommerce-variation-price,
      .p-product-action .cart .single_variation_wrap .woocommerce-variation-availability {
        display: none !important; }
      .p-product-action .cart .single_variation_wrap .woocommerce-variation > p {
        display: none; }
  .p-product-action .single_variation_wrap .woocommerce-variation-add-to-cart {
    gap: 1.8rem;
    display: flex;
    flex-wrap: wrap; }
    @media screen and (max-width: 576px) {
      .p-product-action .single_variation_wrap .woocommerce-variation-add-to-cart {
        gap: 1.2rem; } }
  .p-product-action .single_variation_wrap .p-product-action_btn {
    width: calc(100% - 16.6rem); }
    @media screen and (max-width: 576px) {
      .p-product-action .single_variation_wrap .p-product-action_btn {
        width: calc(100% - 12.2rem); } }
    .p-product-action .single_variation_wrap .p-product-action_btn .added_to_cart {
      display: none; }
    .p-product-action .single_variation_wrap .p-product-action_btn .btn-pri {
      opacity: 1 !important; }

.p-product-compare {
  gap: 1.2rem;
  flex-wrap: wrap;
  display: flex;
  align-items: center;
  justify-content: space-between; }
  .p-product-compare .link {
    font-size: 2rem;
    column-gap: 0.8rem;
    transition: 0.4s ease-in-out;
    display: flex;
    align-items: center;
    font-family: var(--font-pri); }
    @media only screen and (max-width: 1200px) {
      .p-product-compare .link {
        font-size: 1.8rem; } }
    @media only screen and (max-width: 800px) {
      .p-product-compare .link {
        font-size: 1.6rem; } }
    @media screen and (min-width: 1201px) {
      .p-product-compare .link:hover {
        color: #db1f26; } }
    .p-product-compare .link img {
      flex-shrink: 0;
      user-select: none;
      width: 2.6rem;
      height: 2.6rem; }
  .p-product-compare .social {
    gap: 0.8rem; }

.p-product-info ul {
  display: flex;
  row-gap: 2.4rem;
  flex-direction: column; }
  @media screen and (max-width: 1200px) {
    .p-product-info ul {
      row-gap: 1.6rem; } }
  .p-product-info ul li {
    gap: 2.4rem;
    display: flex; }
    .p-product-info ul li .text-20:first-child {
      min-width: 15rem; }

.p-product-desc, .p-product-info {
  padding: 2.4rem;
  border-radius: 0.8rem;
  background-color: #e4f2ff; }
  @media screen and (max-width: 1200px) {
    .p-product-desc, .p-product-info {
      padding: 2rem; } }
  @media screen and (max-width: 767px) {
    .p-product-desc, .p-product-info {
      padding: 1.6rem; } }
  .p-product-desc .mona-content h2, .p-product-info .mona-content h2 {
    font-size: 2rem;
    margin-bottom: 1.6rem; }
  .p-product-desc .mona-content li, .p-product-info .mona-content li {
    font-size: 2rem; }
  .p-product-desc .mona-content p, .p-product-info .mona-content p {
    font-size: 2rem; }
    @media only screen and (max-width: 1200px) {
      .p-product-desc .mona-content p, .p-product-info .mona-content p {
        font-size: 1.8rem; } }
    @media only screen and (max-width: 800px) {
      .p-product-desc .mona-content p, .p-product-info .mona-content p {
        font-size: 1.6rem; } }

@media screen and (min-width: 1201px) {
  .js-product-gallery {
    width: calc(100% - 14rem); } }

@media screen and (max-width: 1200px) {
  .js-product-gallery {
    margin-bottom: 2.4rem; } }

.js-product-thumbs {
  flex-shrink: 0; }
  @media screen and (min-width: 1201px) {
    .js-product-thumbs {
      width: 10rem;
      overflow: visible; } }
  @media screen and (max-width: 1200px) {
    .js-product-thumbs {
      margin: 0 -0.8rem; } }
  @media screen and (min-width: 1201px) {
    .js-product-thumbs .swiper-wrapper {
      row-gap: 1.6rem;
      flex-direction: column;
      transform: unset !important; } }
  @media screen and (min-width: 1201px) {
    .js-product-thumbs .swiper-slide {
      width: 10rem;
      height: 10rem; } }
  @media screen and (max-width: 1200px) {
    .js-product-thumbs .swiper-slide {
      padding: 0 0.8rem;
      width: calc(100% / 4); } }
  @media screen and (max-width: 576px) {
    .js-product-thumbs .swiper-slide {
      width: calc(100% / 3); } }
  @media screen and (min-width: 1201px) {
    .js-product-thumbs .swiper-slide-thumb-active .p-product-img {
      box-shadow: 0 0 1rem 0 rgba(0, 0, 0, 0.25); } }
  .js-product-thumbs .p-product-img {
    cursor: pointer; }

.product-content {
  margin: 8rem 0rem 8rem; }
  @media screen and (max-width: 992px) {
    .product-content {
      margin: 6rem 0rem; } }
  @media screen and (max-width: 576px) {
    .product-content {
      margin: 4rem 0rem; } }
  .product-content-content {
    padding: 4rem;
    position: relative;
    border-radius: 0.8rem;
    background-color: white; }
    @media screen and (max-width: 1200px) {
      .product-content-content {
        padding: 3.2rem; } }
    @media screen and (max-width: 767px) {
      .product-content-content {
        padding: 2.4rem; } }
    .product-content-content::after {
      content: "";
      left: 0;
      bottom: 0;
      width: 100%;
      height: 21rem;
      position: absolute;
      background: linear-gradient(180deg, rgba(255, 255, 255, 0) -14.46%, #fff 42.77%); }
    .product-content-content.is-none:after {
      content: unset; }
    .product-content-content:has(.is-full):after {
      content: unset; }
    .product-content-content:has(.is-full) .mona-content {
      max-height: 100% !important; }
    .product-content-content .mona-content {
      overflow: hidden; }
    .product-content-content #ez-toc-container {
      width: 100%;
      display: flex;
      padding: 3.2rem;
      row-gap: 2.4rem;
      background: white;
      border-radius: 0.8rem;
      flex-direction: column;
      border: 0.1rem solid rgba(0, 0, 0, 0.2); }
      @media screen and (max-width: 1200px) {
        .product-content-content #ez-toc-container {
          padding: 2.4rem; } }
      .product-content-content #ez-toc-container .ez-toc-title {
        font-size: 3.2rem;
        font-weight: 700; }
        @media only screen and (max-width: 1200px) {
          .product-content-content #ez-toc-container .ez-toc-title {
            font-size: 2.7rem; } }
        @media only screen and (max-width: 800px) {
          .product-content-content #ez-toc-container .ez-toc-title {
            font-size: 2.2rem; } }
      .product-content-content #ez-toc-container .ez-toc-title-container > p {
        display: none; }
      .product-content-content #ez-toc-container .ez-toc-title-toggle {
        display: none; }
      .product-content-content #ez-toc-container .ez-toc-list {
        display: flex;
        row-gap: 1.6rem;
        flex-direction: column; }
        .product-content-content #ez-toc-container .ez-toc-list .ez-toc-link {
          font-size: 2.4rem;
          line-height: 166%; }
          @media only screen and (max-width: 1200px) {
            .product-content-content #ez-toc-container .ez-toc-list .ez-toc-link {
              font-size: 2rem; } }
          @media only screen and (max-width: 800px) {
            .product-content-content #ez-toc-container .ez-toc-list .ez-toc-link {
              font-size: 1.7rem; } }

.p-product .brand {
  margin: 4rem 0rem 8rem; }
  @media screen and (max-width: 992px) {
    .p-product .brand {
      margin: 6rem 0rem; } }
  @media screen and (max-width: 576px) {
    .p-product .brand {
      margin: 4rem 0rem; } }
  @media screen and (min-width: 1201px) {
    .p-product .brand-sw .swiper-slide {
      width: calc(100% / 7); } }

.arrange {
  margin: 8rem 0rem 8rem; }
  @media screen and (max-width: 992px) {
    .arrange {
      margin: 6rem 0rem; } }
  @media screen and (max-width: 576px) {
    .arrange {
      margin: 4rem 0rem; } }
  .arrange-wrap .woocommerce-notices-wrapper {
    display: none; }
  .arrange-list {
    gap: 1.6rem;
    display: flex;
    position: relative; }
    @media screen and (max-width: 1200px) {
      .arrange-list {
        white-space: nowrap;
        overflow: auto hidden; }
        .arrange-list::-webkit-scrollbar {
          display: none; } }
  @media screen and (min-width: 1201px) {
    .arrange-item {
      position: relative; } }
  @media screen and (max-width: 1200px) {
    .arrange-item {
      width: auto;
      flex: 0 0 auto; } }
  .arrange-item.is-active .arrange-box {
    border-color: #01752f;
    background-color: #deeee1; }
    .arrange-item.is-active .arrange-box img {
      filter: brightness(0) saturate(100%) invert(11%) sepia(98%) saturate(7289%) hue-rotate(159deg) brightness(96%) contrast(99%); }
    .arrange-item.is-active .arrange-box .text-16 {
      color: #00a523; }
  .arrange-filter:has(.arrange-filter-item.active) .arrange-box {
    border-color: #01752f;
    background-color: #deeee1; }
    .arrange-filter:has(.arrange-filter-item.active) .arrange-box img {
      filter: brightness(0) saturate(100%) invert(11%) sepia(98%) saturate(7289%) hue-rotate(159deg) brightness(96%) contrast(99%); }
    .arrange-filter:has(.arrange-filter-item.active) .arrange-box .text-16 {
      color: #00a523; }
  .arrange-filter-inner {
    left: 0;
    z-index: 5;
    opacity: 0;
    width: 100vw;
    display: flex;
    flex-wrap: wrap;
    box-shadow: 0 0.2rem 2rem 0 rgba(0, 0, 0, 0.15);
    position: absolute;
    transition: 0.4s ease-in-out;
    pointer-events: none;
    border-radius: 0.8rem;
    background-color: white; }
    @media screen and (min-width: 1201px) {
      .arrange-filter-inner {
        gap: 2.4rem;
        padding: 2.4rem;
        max-width: 124.8rem;
        top: calc(100% + 2.4rem); } }
  @media screen and (min-width: 1201px) and (max-width: 1366px) {
    .arrange-filter-inner {
      max-width: 118rem; } }
    @media screen and (max-width: 1200px) {
      .arrange-filter-inner {
        bottom: 0;
        width: 100%;
        position: fixed; } }
    @media screen and (min-width: 1201px) {
      .arrange-filter-inner::before {
        content: "";
        width: 0;
        height: 0;
        left: 3%;
        top: -2rem;
        display: block;
        position: absolute;
        pointer-events: none;
        transform: translate(-50%, 0);
        border: 0 solid transparent;
        border-right-width: 1rem;
        border-left-width: 1rem;
        border-bottom: 2rem solid white; } }
  .arrange-filter-block {
    gap: 2.4rem;
    width: 100%;
    display: flex;
    flex-wrap: wrap; }
    @media screen and (max-width: 1200px) {
      .arrange-filter-block {
        padding: 1.6rem;
        gap: 2.4rem 1.2rem; } }
    @media screen and (max-width: 576px) {
      .arrange-filter-block {
        max-height: 40rem;
        overflow: hidden auto; } }
  .arrange-filter-box {
    gap: 2.4rem;
    display: flex;
    flex-direction: column;
    width: calc(100% / 3 - 1.6rem); }
    @media screen and (max-width: 1200px) {
      .arrange-filter-box {
        width: calc(100% / 3 - 0.8rem); } }
    @media screen and (max-width: 767px) {
      .arrange-filter-box {
        width: calc(100% / 2 - 0.6rem); } }
    @media screen and (max-width: 576px) {
      .arrange-filter-box {
        width: 100%;
        gap: 1.2rem; } }
  .arrange-filter-list {
    gap: 0.8rem;
    display: flex;
    flex-wrap: wrap; }
  .arrange-filter-item.active .arrange-filter-link {
    color: white;
    background-color: #00a523; }
  .arrange-filter-link {
    padding: 1rem;
    font-size: 2rem;
    display: block;
    cursor: pointer;
    font-weight: 500;
    width: fit-content;
    transition: 0.4s ease-in-out;
    border-radius: 10rem;
    background-color: #f6f6f6;
    border: 0.1rem solid #dadada; }
    @media only screen and (max-width: 1200px) {
      .arrange-filter-link {
        font-size: 1.8rem; } }
    @media only screen and (max-width: 800px) {
      .arrange-filter-link {
        font-size: 1.6rem; } }
    @media screen and (min-width: 1201px) {
      .arrange-filter-link:hover {
        color: white;
        background-color: #00a523; } }
    @media screen and (max-width: 767px) {
      .arrange-filter-link {
        font-size: 1.4rem; } }
  .arrange-filter-btn {
    gap: 1.6rem;
    width: 100%;
    flex-wrap: wrap;
    margin-left: auto;
    display: flex;
    align-items: center;
    justify-content: flex-end; }
    @media screen and (max-width: 1200px) {
      .arrange-filter-btn {
        padding: 1.6rem;
        justify-content: center; } }
    @media screen and (min-width: 1201px) {
      .arrange-filter-btn .btn {
        min-width: 18rem; } }
    @media screen and (max-width: 1200px) {
      .arrange-filter-btn .btn {
        width: calc(100% / 2 - 0.8rem); } }
  .arrange-filter.is-active .arrange-filter-inner {
    opacity: 1;
    pointer-events: auto; }
  @media screen and (max-width: 1200px) {
    .arrange-dropdown {
      display: none; } }
  .arrange-dropdown.is-active .arrange-box > img {
    transform: rotate(180deg); }
  .arrange-dropdown .arrange-box {
    padding: 1.05rem 2.4rem; }
    .arrange-dropdown .arrange-box > img {
      width: 1.6rem;
      height: 1.6rem; }
  .arrange-dropdown .arrange-filter-inner {
    max-width: 55rem; }
    @media screen and (max-width: 1200px) {
      .arrange-dropdown .arrange-filter-inner {
        top: 100%;
        width: 100vw; } }
    .arrange-dropdown .arrange-filter-inner::before {
      left: 5%; }
  .arrange-dropdown .arrange-filter-box {
    width: 100%; }
  .arrange-dropdown .arrange-filter-btn .btn {
    min-width: unset;
    width: calc(100% / 2 - 0.8rem); }
  .arrange-dropdown .arrange-filter-link.active {
    color: white;
    background-color: #00a523; }
  .arrange-box {
    gap: 0.8rem;
    display: flex;
    flex-wrap: wrap;
    cursor: pointer;
    user-select: none;
    position: relative;
    align-items: center;
    transition: 0.4s ease-in-out;
    border-radius: 0.5rem;
    padding: 0.8rem 2.4rem;
    background-color: #f6f6f6;
    border: 0.1rem solid #dadada; }
    @media screen and (min-width: 1201px) {
      .arrange-box:hover {
        border-color: #01752f;
        background-color: #deeee1; }
        .arrange-box:hover img {
          filter: brightness(0) saturate(100%) invert(11%) sepia(98%) saturate(7289%) hue-rotate(159deg) brightness(96%) contrast(99%); }
        .arrange-box:hover .text-16 {
          color: #01752f; } }
    @media screen and (max-width: 576px) {
      .arrange-box {
        padding: 0.8rem; } }
    .arrange-box.active {
      border-color: #01752f;
      background-color: #deeee1; }
      .arrange-box.active img {
        filter: brightness(0) saturate(100%) invert(11%) sepia(98%) saturate(7289%) hue-rotate(159deg) brightness(96%) contrast(99%); }
      .arrange-box.active .text-16 {
        color: #01752f; }
    .arrange-box:has(.arrange-dropdown-select) {
      padding: 1rem 2.4rem; }
    .arrange-box > img {
      flex-shrink: 0;
      transition: 0.4s ease-in-out;
      width: 2.4rem;
      height: 2.4rem; }
    .arrange-box .text-16 {
      font-size: 2rem;
      font-weight: 700;
      color: #242424;
      transition: 0.4s ease-in-out; }
      @media only screen and (max-width: 1200px) {
        .arrange-box .text-16 {
          font-size: 1.8rem; } }
      @media only screen and (max-width: 800px) {
        .arrange-box .text-16 {
          font-size: 1.6rem; } }
  .arrange-product-list {
    display: flex;
    flex-wrap: wrap;
    row-gap: 2.4rem;
    margin: 0 -1.2rem; }
    @media screen and (max-width: 1200px) {
      .arrange-product-list {
        row-gap: 1.6rem;
        margin: 0 -0.8rem; } }
    @media screen and (max-width: 767px) {
      .arrange-product-list {
        row-gap: 0.8rem;
        margin: 0 -0.4rem; } }
  .arrange-product-item {
    padding: 0 1.2rem;
    width: calc(100% / 5); }
    @media screen and (max-width: 1200px) {
      .arrange-product-item {
        padding: 0 0.8rem;
        width: calc(100% / 4); } }
    @media screen and (max-width: 1024px) {
      .arrange-product-item {
        width: calc(100% / 3); } }
    @media screen and (max-width: 767px) {
      .arrange-product-item {
        padding: 0 0.4rem;
        width: calc(100% / 2); } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC5jc3MiLCJzb3VyY2VzIjpbInByb2R1Y3Quc2NzcyIsIl9jb3JlL19mb250LnNjc3MiLCJfY29yZS9fbWl4aW4uc2NzcyIsIl9jb3JlL192YXJpYWJsZS5zY3NzIiwiX2xheW91dHMvX2JyYW5kLnNjc3MiLCJfbGF5b3V0cy9fbS1icmFuZC5zY3NzIiwiX2xheW91dHMvX3N1cHBvcnQuc2NzcyIsIl9sYXlvdXRzL19wcm9kdWN0LnNjc3MiLCJfcGFnZXMvX3Byb2R1Y3Quc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3JlXG5AaW1wb3J0IFwiX2NvcmUvZm9udFwiO1xuQGltcG9ydCBcIl9jb3JlL21peGluXCI7XG5AaW1wb3J0IFwiX2NvcmUvdmFyaWFibGVcIjtcblxuLy8gTGF5b3V0XG5AaW1wb3J0IFwiX2xheW91dHMvYnJhbmRcIjtcbkBpbXBvcnQgXCJfbGF5b3V0cy9tLWJyYW5kXCI7XG5AaW1wb3J0IFwiX2xheW91dHMvc3VwcG9ydFwiO1xuQGltcG9ydCBcIl9sYXlvdXRzL3Byb2R1Y3RcIjtcblxuLy8gTW9kdWxlc1xuXG4vLyBQYWdlc1xuQGltcG9ydCBcIl9wYWdlcy9wcm9kdWN0XCI7XG4iLCJAbWl4aW4gZnotMjAwIHtcbiAgZm9udC1zaXplOiAyMHJlbTtcblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIGZvbnQtc2l6ZTogMTVyZW07XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gICAgZm9udC1zaXplOiAxMHJlbTtcbiAgfVxufVxuXG5AbWl4aW4gZnotOTAge1xuICBmb250LXNpemU6IDlyZW07XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICBmb250LXNpemU6IDZyZW07XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gICAgZm9udC1zaXplOiA0LjVyZW07XG4gIH1cbn1cblxuQG1peGluIGZ6LTcyIHtcbiAgZm9udC1zaXplOiA3LjJyZW07XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICBmb250LXNpemU6IDVyZW07XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gICAgZm9udC1zaXplOiA0cmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei02NSB7XG4gIGZvbnQtc2l6ZTogNi41cmVtO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgZm9udC1zaXplOiA0cmVtO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgfVxufVxuXG5AbWl4aW4gZnotNjQge1xuICBmb250LXNpemU6IDYuNHJlbTtcblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIGZvbnQtc2l6ZTogMy45cmVtO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGZvbnQtc2l6ZTogMi45cmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei02MCB7XG4gIGZvbnQtc2l6ZTogNnJlbTtcblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIGZvbnQtc2l6ZTogMy41cmVtO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei01NiB7XG4gIGZvbnQtc2l6ZTogNS42cmVtO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgZm9udC1zaXplOiA1LjFyZW07XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gICAgZm9udC1zaXplOiA0cmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei01NSB7XG4gIGZvbnQtc2l6ZTogNS41cmVtO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgZm9udC1zaXplOiA1cmVtO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGZvbnQtc2l6ZTogMy45cmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei01MCB7XG4gIGZvbnQtc2l6ZTogNXJlbTtcblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIGZvbnQtc2l6ZTogNC41cmVtO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGZvbnQtc2l6ZTogMy40cmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei00OCB7XG4gIGZvbnQtc2l6ZTogNC44cmVtO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgZm9udC1zaXplOiA0LjNyZW07XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gICAgZm9udC1zaXplOiAzLjNyZW07XG4gIH1cbn1cblxuQG1peGluIGZ6LTQ1IHtcbiAgZm9udC1zaXplOiA0LjVyZW07XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICBmb250LXNpemU6IDRyZW07XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gICAgZm9udC1zaXplOiAzcmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei00MiB7XG4gIGZvbnQtc2l6ZTogNC4ycmVtO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgZm9udC1zaXplOiAzLjVyZW07XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gICAgZm9udC1zaXplOiAyLjdyZW07XG4gIH1cbn1cblxuQG1peGluIGZ6LTQwIHtcbiAgZm9udC1zaXplOiA0cmVtO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgZm9udC1zaXplOiAzLjVyZW07XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gICAgZm9udC1zaXplOiAyLjdyZW07XG4gIH1cbn1cblxuQG1peGluIGZ6LTM4IHtcbiAgZm9udC1zaXplOiAzLjhyZW07XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICBmb250LXNpemU6IDMuNHJlbTtcbiAgfVxuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcbiAgICBmb250LXNpemU6IDIuNnJlbTtcbiAgfVxufVxuXG5AbWl4aW4gZnotMzYge1xuICBmb250LXNpemU6IDMuNnJlbTtcblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIGZvbnQtc2l6ZTogMy4xcmVtO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGZvbnQtc2l6ZTogMi42cmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei0zNSB7XG4gIGZvbnQtc2l6ZTogMy41cmVtO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgZm9udC1zaXplOiAzcmVtO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei0zNCB7XG4gIGZvbnQtc2l6ZTogMy40cmVtO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgZm9udC1zaXplOiAyLjlyZW07XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gICAgZm9udC1zaXplOiAyLjRyZW07XG4gIH1cbn1cblxuQG1peGluIGZ6LTMyIHtcbiAgZm9udC1zaXplOiAzLjJyZW07XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICBmb250LXNpemU6IDIuN3JlbTtcbiAgfVxuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcbiAgICBmb250LXNpemU6IDIuMnJlbTtcbiAgfVxufVxuXG5AbWl4aW4gZnotMzAge1xuICBmb250LXNpemU6IDNyZW07XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICBmb250LXNpemU6IDIuN3JlbTtcbiAgfVxuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcbiAgICBmb250LXNpemU6IDIuNHJlbTtcbiAgfVxufVxuXG5AbWl4aW4gZnotMjkge1xuICBmb250LXNpemU6IDIuOXJlbTtcblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIGZvbnQtc2l6ZTogMi42cmVtO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGZvbnQtc2l6ZTogMi4zcmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei0yOCB7XG4gIGZvbnQtc2l6ZTogMi44cmVtO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgZm9udC1zaXplOiAyLjRyZW07XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gICAgZm9udC1zaXplOiAyLjFyZW07XG4gIH1cbn1cblxuQG1peGluIGZ6LTI2IHtcbiAgZm9udC1zaXplOiAyLjZyZW07XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICBmb250LXNpemU6IDIuMnJlbTtcbiAgfVxuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcbiAgICBmb250LXNpemU6IDEuOXJlbTtcbiAgfVxufVxuXG5AbWl4aW4gZnotMjUge1xuICBmb250LXNpemU6IDIuNXJlbTtcblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIGZvbnQtc2l6ZTogMi4xcmVtO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei0yNCB7XG4gIGZvbnQtc2l6ZTogMi40cmVtO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGZvbnQtc2l6ZTogMS43cmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei0yMiB7XG4gIGZvbnQtc2l6ZTogMi4ycmVtO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGZvbnQtc2l6ZTogMS45cmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei0yMCB7XG4gIGZvbnQtc2l6ZTogMnJlbTtcblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei0xOSB7XG4gIGZvbnQtc2l6ZTogMS45cmVtO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgZm9udC1zaXplOiAxLjdyZW07XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gICAgZm9udC1zaXplOiAxLjZyZW07XG4gIH1cbn1cblxuQG1peGluIGZ6LTE4IHtcbiAgZm9udC1zaXplOiAxLjhyZW07XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgfVxuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgfVxufVxuXG5AbWl4aW4gZnotMTcge1xuICBmb250LXNpemU6IDEuN3JlbTtcbn1cblxuQG1peGluIGZ6LTE2IHtcbiAgZm9udC1zaXplOiAxLjZyZW07XG59XG5cbkBtaXhpbiBmei0xNSB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xufVxuXG5AbWl4aW4gZnotMTQge1xuICBmb250LXNpemU6IDEuNHJlbTtcbn1cblxuQG1peGluIGZ6LTEzIHtcbiAgZm9udC1zaXplOiAxLjNyZW07XG59XG5cbkBtaXhpbiBmei0xMiB7XG4gIGZvbnQtc2l6ZTogMS4ycmVtO1xufVxuXG5AbWl4aW4gZnotMTEge1xuICBmb250LXNpemU6IDEuMXJlbTtcbn1cblxuQG1peGluIGZ6LTEwIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG5AbWl4aW4gZnotOSB7XG4gIGZvbnQtc2l6ZTogMC45cmVtO1xufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHRNZWRpYVxyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG5AbWl4aW4gbWF4KCRwb2ludCkge1xyXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRwb2ludCkge1xyXG4gICAgQGNvbnRlbnQ7XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gbWluKCRwb2ludCkge1xyXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRwb2ludCkge1xyXG4gICAgQGNvbnRlbnQ7XHJcbiAgfVxyXG59XHJcblxyXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cdEZsZXggQm94XHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbkBtaXhpbiBmbGV4IHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtd3JhcDogd3JhcDtcclxufVxyXG5cclxuQG1peGluIGZsZXgtY2VudGVyIHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtd3JhcDogd3JhcDtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG5AbWl4aW4gZmxleC1pY2VudGVyIHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuXHJcbkBtaXhpbiBmbGV4LWpjZW50ZXIge1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbn1cclxuXHJcbkBtaXhpbiBmbGV4LWpiZXR3ZWVuIHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxufVxyXG5cclxuQG1peGluIGJnSW1hZ2UoJHBvc2l0aW9uOiBjZW50ZXIsICRzaXplOiBjb3ZlciwgJHJlcGVhdDogbm8tcmVwZWF0KSB7XHJcbiAgYmFja2dyb3VuZC1zaXplOiAkc2l6ZTtcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogJHJlcGVhdDtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkcG9zaXRpb247XHJcbn1cclxuXHJcbkBtaXhpbiB0cmFuc2l0aW9uKCRzOiAwLjRzKSB7XHJcbiAgdHJhbnNpdGlvbjogJHMgZWFzZS1pbi1vdXQ7XHJcbn1cclxuXHJcbkBtaXhpbiBib3goJHdpZHRoLCAkaGVpZ2h0OiAkd2lkdGgpIHtcclxuICB3aWR0aDogJHdpZHRoO1xyXG4gIGhlaWdodDogJGhlaWdodDtcclxufVxyXG5cclxuQG1peGluIGltZ0NvdmVyIHtcclxuICB0b3A6IDUwJTtcclxuICBsZWZ0OiA1MCU7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG4gIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxufVxyXG5cclxuQG1peGluIGltZ0NvbnRhaW4ge1xyXG4gIHRvcDogNTAlO1xyXG4gIGxlZnQ6IDUwJTtcclxuICB3aWR0aDogMTAwJTtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIG9iamVjdC1maXQ6IGNvbnRhaW47XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbn1cclxuXHJcbkBtaXhpbiBsaW5lQ2xhbXAoJGxpbmU6IDIsICRkaXNwbGF5OiB0cnVlKSB7XHJcbiAgQGlmICRkaXNwbGF5IHtcclxuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xyXG4gICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgfVxyXG5cclxuICBsaW5lLWNsYW1wOiAkbGluZTtcclxuICAtd2Via2l0LWxpbmUtY2xhbXA6ICRsaW5lO1xyXG59XHJcblxyXG5AbWl4aW4gc2hhZG93IHtcclxuICBib3gtc2hhZG93OiAwIDAuMnJlbSAycmVtIDAgcmdiYSgwLCAwLCAwLCAwLjE1KTtcclxufVxyXG5cclxuQG1peGluIHBvc0NlbnRlciB7XHJcbiAgdG9wOiA1MCU7XHJcbiAgbGVmdDogNTAlO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxufVxyXG5cclxuQG1peGluIG1hcmdpbigkbWFyZ2luMSwgJG1hcmdpbjI6ICRtYXJnaW4xKSB7XHJcbiAgbWFyZ2luOiAkbWFyZ2luMSAwcmVtICRtYXJnaW4yO1xyXG5cclxuICBAaW5jbHVkZSBtYXgoOTkycHgpIHtcclxuICAgIG1hcmdpbjogNnJlbSAwcmVtO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWF4KDU3NnB4KSB7XHJcbiAgICBtYXJnaW46IDRyZW0gMHJlbTtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBwYWRkaW5nKCRwYWRkaW5nMSwgJHBhZGRpbmcyOiAkcGFkZGluZzEpIHtcclxuICBwYWRkaW5nOiAkcGFkZGluZzEgMHJlbSAkcGFkZGluZzI7XHJcblxyXG4gIEBpbmNsdWRlIG1heCg5OTJweCkge1xyXG4gICAgcGFkZGluZzogNnJlbSAwcmVtO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWF4KDU3NnB4KSB7XHJcbiAgICBwYWRkaW5nOiA0cmVtIDByZW07XHJcbiAgfVxyXG59XHJcbiIsIjpyb290IHtcclxuICAtLWhlaWdodC1oZDogMThyZW07XHJcbiAgLS1tZW51LWFzaWRlOiA4cmVtO1xyXG4gIC0tbWVudS1hc2lkZS1ob3ZlcjogMzNyZW07XHJcbiAgLS1mb250LXByaTogXCJSb2JvdG9cIiwgc2Fucy1zZXJpZjtcclxufVxyXG5cclxuJGNvbG9yLXByaTogI2RiMWYyNjtcclxuJGNvbG9yLXNlYzogIzAwYTUyMztcclxuJGNvbG9yLXRoaXJkOiAjMDA2YmNlO1xyXG4kY29sb3ItZm91cjogI2ZhZTgwMztcclxuJGNvbG9yLXRleHQ6ICMyNDI0MjQ7XHJcbiRjb2xvci1iZzogI2YwZjBmMDtcclxuIiwiLmJyYW5kIHtcbiAgQGluY2x1ZGUgbWFyZ2luKDhyZW0pO1xuXG4gICYtYmxvY2sge1xuICAgIHBhZGRpbmc6IDIuNHJlbTtcbiAgICBib3JkZXItcmFkaXVzOiAwLjhyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgYm94LXNoYWRvdzogMCAwLjJyZW0gMnJlbSAwIHJnYmEoMCwgMCwgMCwgMC4xNSk7XG5cbiAgICBAaW5jbHVkZSBtYXgoNzY3cHgpIHtcbiAgICAgIHBhZGRpbmc6IDEuNnJlbTtcbiAgICB9XG4gIH1cblxuICAmLXJvdyB7XG4gICAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xuICAgICAgLS1yZzogNHJlbTtcbiAgICAgIC0tY2c6IDRyZW07XG4gICAgfVxuICB9XG5cbiAgJi1jb2wge1xuICAgIEBpbmNsdWRlIG1heCgxMDI0cHgpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gICYtYmcge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJvcmRlci1yYWRpdXM6IDAuOHJlbTtcbiAgICBwYWRkaW5nLXRvcDogY2FsYygzNzQgLyA1NjAgKiAxMDAlKTtcblxuICAgIEBpbmNsdWRlIG1pbigxMjAxcHgpIHtcbiAgICAgICY6aG92ZXIgaW1nIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgc2NhbGUoMS4wNSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIEBpbmNsdWRlIGltZ0NvdmVyO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICB9XG4gIH1cblxuICAmLWNvbnRlbnQge1xuICAgIC5tb25hLWNvbnRlbnQge1xuICAgICAgY29sb3I6ICMwMDA7XG5cbiAgICAgIHAge1xuICAgICAgICBAaW5jbHVkZSBmei0yMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMi40cmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYtc3cge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC5zd2lwZXIge1xuICAgICAgbWFyZ2luOiAwIC0xLjZyZW07XG5cbiAgICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcbiAgICAgICAgbWFyZ2luOiAwIC0wLjhyZW07XG4gICAgICB9XG5cbiAgICAgICYtd3JhcHBlciB7XG4gICAgICAgIHJvdy1nYXA6IDRyZW07XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAvLyB0cmFuc2Zvcm06IHVuc2V0ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgLy8gQGluY2x1ZGUgbWF4KDEyMDBweCkge1xuICAgICAgICAvLyAgIHJvdy1nYXA6IDEuNnJlbTtcbiAgICAgICAgLy8gfVxuICAgICAgfVxuXG4gICAgICAmLXNsaWRlIHtcbiAgICAgICAgcGFkZGluZzogMCAxLjZyZW07XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyA2KTtcblxuICAgICAgICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XG4gICAgICAgICAgcGFkZGluZzogMCAwLjhyZW07XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtYXgoMTAyNHB4KSB7XG4gICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDQpO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWF4KDc2N3B4KSB7XG4gICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDMpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi1pbWcge1xuICAgIHBhZGRpbmc6IDIuNHJlbTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5N2RlZywgI2M4ZmZjYyAtNDYuMDYlLCAjOTFkZmI0IDEzNy44NiUpO1xuXG4gICAgLmltZyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHBhZGRpbmctdG9wOiBjYWxjKDEgLyAxICogMTAwJSk7XG5cbiAgICAgIEBpbmNsdWRlIG1pbigxMjAxcHgpIHtcbiAgICAgICAgJjpob3ZlciBpbWcge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHNjYWxlKDEuMDUpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGltZyB7XG4gICAgICAgIEBpbmNsdWRlIGltZ0NvbnRhaW47XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi1pbmZvIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAudGl0bGUtMjQge1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcblxuICAgICAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogJGNvbG9yLXByaTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYtaGVhZGluZyB7XG4gICAgQGluY2x1ZGUgZmxleC1pY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgIC5idG4tdGhpcmQge1xuICAgICAgZm9udC1zaXplOiAxLjZyZW0gIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDFyZW0gMy4ycmVtICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgJi1iZy1zdyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJl9pbWcge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgYm9yZGVyLXJhZGl1czogMC44cmVtO1xuICAgICAgcGFkZGluZy10b3A6IGNhbGMoNDUwIC8gMTUwNCAqIDEwMCUpO1xuXG4gICAgICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgICAgICY6aG92ZXIgaW1nIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSBzY2FsZSgxLjA1KTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtYXgoNTc2cHgpIHtcbiAgICAgICAgcGFkZGluZy10b3A6IGNhbGMoNDUwIC8gOTkwICogMTAwJSk7XG4gICAgICB9XG5cbiAgICAgIGltZyB7XG4gICAgICAgIEBpbmNsdWRlIGltZ0NvdmVyO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5zd2lwZXItcGFnaW5hdGlvbiB7XG4gICAgICB6LWluZGV4OiAzO1xuICAgICAgYm90dG9tOiA0LjhyZW07XG4gICAgICBtYXJnaW46IDAgYXV0byAhaW1wb3J0YW50O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgIWltcG9ydGFudDtcblxuICAgICAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xuICAgICAgICBib3R0b206IDFyZW07XG4gICAgICB9XG5cbiAgICAgICYtYnVsbGV0IHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMTcsIDIxNywgMjE3LCAxKTtcblxuICAgICAgICAmLWFjdGl2ZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXNlYztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYtZXh0cmEge1xuICAgIC5icmFuZC1pbWcge1xuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzMGRlZywgIzg3ZmZlZCAtMS4zOSUsICM0N2E3ZmYgMTE1LjQ1JSk7XG4gICAgfVxuICB9XG59XG4iLCIvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4ubS1icmFuZCB7XG4gIEBpbmNsdWRlIG1hcmdpbig4cmVtKTtcblxuICAmLXN3IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAuc3dpcGVyIHtcbiAgICAgIHBhZGRpbmctYmxvY2s6IDRyZW07XG4gICAgICBtYXJnaW46IC00cmVtIC0xLjJyZW07XG5cbiAgICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcbiAgICAgICAgbWFyZ2luOiAtNHJlbSAtMC44cmVtO1xuICAgICAgfVxuXG4gICAgICAmLXNsaWRlIHtcbiAgICAgICAgcGFkZGluZzogMCAxLjJyZW07XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyA2KTtcblxuICAgICAgICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XG4gICAgICAgICAgcGFkZGluZzogMCAwLjhyZW07XG4gICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDUpO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWF4KDEwMjRweCkge1xuICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyA0KTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1heCg3NjdweCkge1xuICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAzKTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1heCg1NzZweCkge1xuICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAyKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5zd2lwZXItcGFnaW5hdGlvbiB7XG4gICAgICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi1pbWcge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJvcmRlci1yYWRpdXM6IDAuNHJlbTtcbiAgICBwYWRkaW5nLXRvcDogY2FsYygxMDAgLyAyMzIgKiAxMDAlKTtcbiAgICBib3gtc2hhZG93OiAwLjFyZW0gMC4ycmVtIDAuNHJlbSAwIHJnYmEoMCwgMCwgMCwgMC4yNSk7XG5cbiAgICBpbWcge1xuICAgICAgQGluY2x1ZGUgaW1nQ292ZXI7XG4gICAgfVxuICB9XG59XG5cbi5qcy1icmFuZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAuc3dpcGVyIHtcbiAgICBwYWRkaW5nLWJsb2NrOiA0cmVtO1xuICAgIG1hcmdpbjogLTRyZW0gLTEuMnJlbTtcblxuICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcbiAgICAgIG1hcmdpbjogLTRyZW0gLTAuOHJlbTtcbiAgICB9XG5cbiAgICAmLXdyYXBwZXIge1xuICAgICAgcm93LWdhcDogNHJlbTtcbiAgICAgIG1pbi13aWR0aDogMTAwJTtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDtcblxuICAgICAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xuICAgICAgICByb3ctZ2FwOiAxLjZyZW07XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi1zbGlkZSB7XG4gICAgICBwYWRkaW5nOiAwIDEuMnJlbTtcblxuICAgICAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xuICAgICAgICBwYWRkaW5nOiAwIDAuOHJlbTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLWJ1dHRvbiB7XG4gICAgICAmLXByZXYge1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgfVxuXG4gICAgICAmLW5leHQge1xuICAgICAgICByaWdodDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLXBhZ2luYXRpb24ge1xuICAgICAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLnN1cHBvcnQge1xuICBAaW5jbHVkZSBtYXJnaW4oOHJlbSk7XG5cbiAgJi1oZWFkaW5nIHtcbiAgICAudGl0bGUtNDAge1xuICAgICAgY29sb3I6ICRjb2xvci1zZWM7XG4gICAgfVxuICB9XG5cbiAgJi1saXN0IHtcbiAgICBAaW5jbHVkZSBmbGV4O1xuICAgIHJvdy1nYXA6IDYuNHJlbTtcbiAgICBtYXJnaW46IDAgLTMuMnJlbTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcbiAgICAgIHJvdy1nYXA6IDIuNHJlbTtcbiAgICAgIG1hcmdpbjogMCAtMS4ycmVtO1xuICAgIH1cbiAgfVxuXG4gICYtaXRlbSB7XG4gICAgcGFkZGluZzogMCAzLjJyZW07XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAvIDQpO1xuXG4gICAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xuICAgICAgcGFkZGluZzogMCAxLjJyZW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWF4KDEwMjRweCkge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDMpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1heCg3NjdweCkge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDIpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1heCg1NzZweCkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgJi1ib3gge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwYWRkaW5nOiA0cmVtO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgYm9yZGVyLXJhZGl1czogMC44cmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgIGJvcmRlcjogMC4xcmVtIHNvbGlkICRjb2xvci1zZWM7XG4gICAgYm94LXNoYWRvdzogMC4zcmVtIDAuM3JlbSAwLjRyZW0gMCByZ2JhKDAsIDEwNywgMjA2LCAwLjMpO1xuXG4gICAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXNlYztcblxuICAgICAgICBpbWcge1xuICAgICAgICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwKSBpbnZlcnQoMSk7XG4gICAgICAgIH1cblxuICAgICAgICAudGl0bGUtMjQge1xuICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcbiAgICAgIHBhZGRpbmc6IDMuMnJlbTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtYXgoNzY3cHgpIHtcbiAgICAgIHBhZGRpbmc6IDIuNHJlbTtcbiAgICAgIHJvdy1nYXA6IDEuMnJlbTtcbiAgICB9XG4gIH1cblxuICAmLWltZyB7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgJi1jb250ZW50IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgLnRpdGxlLTI0IHtcbiAgICAgIG1hcmdpbi10b3A6IGF1dG87XG4gICAgICBsaW5lLWhlaWdodDogMTY2JTtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG5cbiAgICAgIEBpbmNsdWRlIG1heCg3NjdweCkge1xuICAgICAgICBiciB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLnAtcHJvZHVjdCB7XG4gICYtY29sIHtcbiAgICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAmLWxlZnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgcm93LWdhcDogNHJlbTtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICByb3ctZ2FwOiAzLjJyZW07XG4gICAgICBtYXgtd2lkdGg6IDYwcmVtO1xuICAgIH1cblxuICAgICZfYWN0aW9uIHtcbiAgICAgIGdhcDogMi40cmVtO1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBAaW5jbHVkZSBmbGV4LWljZW50ZXI7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTQuNHJlbSk7XG5cbiAgICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1heCg3NjdweCkge1xuICAgICAgICBnYXA6IDEuNnJlbTtcbiAgICAgIH1cblxuICAgICAgLmJ0biB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAyIC0gMS4ycmVtKTtcblxuICAgICAgICBAaW5jbHVkZSBtYXgoNzY3cHgpIHtcbiAgICAgICAgICB3aWR0aDogY2FsYygxMDA1IC8gMiAtIDAuOHJlbSk7XG4gICAgICAgIH1cblxuICAgICAgICAmLXByaSB7XG4gICAgICAgICAgY29sb3I6ICMwMDZiY2U7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAjMDA2YmNlO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHdoaXRlO1xuXG4gICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXRoaXJkO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtc2VjIHtcbiAgICAgICAgICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvci10aGlyZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItdGhpcmQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgPiAuYnRuIHtcbiAgICAgIGNvbG9yOiAjMDE3NTJmO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBib3JkZXItcmFkaXVzOiAwLjRyZW07XG4gICAgICBib3JkZXI6IDAuMnJlbSBzb2xpZCAjMDE3NTJmO1xuICAgICAgYm94LXNoYWRvdzogMCAwLjRyZW0gMC40cmVtIDAgcmdiYSgwLCAwLCAwLCAwLjI1KTtcblxuICAgICAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTRyZW0pO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvci1wcmk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLXNsaWRlIHtcbiAgICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgICBnYXA6IDRyZW07XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIEBpbmNsdWRlIGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG5cbiAgICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcbiAgICAgICAgZ2FwOiAzLjJyZW07XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnN3aXBlciB7XG4gICAgICAmLXNsaWRlIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG5cbiAgICAgICYtYnV0dG9uLW5leHQge1xuICAgICAgICByaWdodDogMXJlbTtcbiAgICAgIH1cblxuICAgICAgJi1idXR0b24tcHJldiB7XG4gICAgICAgIGxlZnQ6IDFyZW07XG4gICAgICB9XG5cbiAgICAgICYtYnV0dG9uLW5leHQsXG4gICAgICAmLWJ1dHRvbi1wcmV2IHtcbiAgICAgICAgQGluY2x1ZGUgc2hhZG93O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYtaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3JkZXItcmFkaXVzOiAwLjhyZW07XG4gICAgYm9yZGVyOiAwLjFyZW0gc29saWQgI2U0ZjJmZjtcbiAgICBwYWRkaW5nLXRvcDogY2FsYygxIC8gMSAqIDEwMCUpO1xuXG4gICAgaW1nIHtcbiAgICAgIEBpbmNsdWRlIGltZ0NvdmVyO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICB9XG4gIH1cblxuICAmLWlubmVyIHtcbiAgICAuaW4tc3RvY2sge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gICYtcmV2aWV3IHtcbiAgICBnYXA6IDAuOHJlbTtcbiAgICBAaW5jbHVkZSBmbGV4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxLjZyZW07XG4gICAgYm9yZGVyLWJvdHRvbTogMC4xcmVtIHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4yKTtcblxuICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcbiAgICAgIGdhcDogMS4ycmVtO1xuICAgIH1cblxuICAgIC5zdGFyIHtcbiAgICAgIEBpbmNsdWRlIG1pbig1NzdweCkge1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYnJhbmQge1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gICAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gICAgICBwYWRkaW5nOiAwLjk1cmVtIDEuNnJlbTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci10aGlyZDtcbiAgICB9XG5cbiAgICAuYnRuIHtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgZm9udC1zaXplOiAxLjhyZW0gIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDAuODVyZW0gMS42cmVtICFpbXBvcnRhbnQ7XG5cbiAgICAgIEBpbmNsdWRlIG1pbig1NzdweCkge1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmhhcyh+IC5vdXQtb2Ytc3RvY2spIHtcbiAgICAgIC5idG4ge1xuICAgICAgICBjb2xvcjogJGNvbG9yLXByaTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3ItcHJpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYtcHJpY2Uge1xuICAgIEBpbmNsdWRlIGZ6LTI0O1xuXG4gICAgZGVsIHtcbiAgICAgIEBpbmNsdWRlIGZ6LTI0O1xuICAgIH1cblxuICAgIGlucyB7XG4gICAgICBAaW5jbHVkZSBmei00ODtcbiAgICB9XG5cbiAgICAucHJpY2Uge1xuICAgICAgJjpoYXMoLm5vLXByaWNlLWJ1dHRvbikge1xuICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAucXVvdGUtYnV0dG9uLWNvbnRhaW5lciB7XG4gICAgICBnYXA6IDEuNnJlbTtcbiAgICAgIEBpbmNsdWRlIGZsZXg7XG4gICAgfVxuXG4gICAgLmJ0bi1xdW90ZS1yZXF1ZXN0IHtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgIEBpbmNsdWRlIGZ6LTIwO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gICAgICBwYWRkaW5nOiAxLjJyZW0gMi40cmVtO1xuICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcHJpKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zZWM7XG5cbiAgICAgIEBpbmNsdWRlIG1pbigxMjAxcHgpIHtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLXByaTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi1zdG9jayB7XG4gICAgLnRleHQtMjAge1xuICAgICAgc3BhbiB7XG4gICAgICAgIGNvbG9yOiAkY29sb3Itc2VjO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYtb3B0aW9uIHtcbiAgICBnYXA6IDIuNHJlbTtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgQGluY2x1ZGUgZmxleC1pY2VudGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDAuOHJlbTtcbiAgICBwYWRkaW5nOiAzLjJyZW0gMi40cmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlNGYyZmY7XG5cbiAgICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XG4gICAgICBwYWRkaW5nOiAxLjZyZW07XG4gICAgfVxuXG4gICAgLm9wdGlvbiB7XG4gICAgICBnYXA6IDIuNHJlbTtcbiAgICAgIEBpbmNsdWRlIGZsZXg7XG5cbiAgICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcbiAgICAgICAgZ2FwOiAxLjZyZW07XG4gICAgICB9XG5cbiAgICAgICYtbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgQGluY2x1ZGUgZnotMTg7XG4gICAgICAgIHBhZGRpbmc6IDEuNnJlbTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtaW4td2lkdGg6IDEwLjVyZW07XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgIGJvcmRlcjogMC4xcmVtIHNvbGlkICNhM2EzYTM7XG4gICAgICAgIGJveC1zaGFkb3c6IDAuMnJlbSAwLjJyZW0gMC40cmVtIHJnYmEoMCwgMCwgMCwgMC4yKTtcblxuICAgICAgICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XG4gICAgICAgICAgZ2FwOiAxLjZyZW07XG4gICAgICAgICAgcGFkZGluZzogMS4ycmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpoYXMoaW5wdXRbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQpIHtcbiAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoODRkZWcsICNmZjgzMDcgMS40OCUsICNmZjU5MDAgOTkuMTElKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYtYWN0aW9uIHtcbiAgICBnYXA6IDEuOHJlbTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBAaW5jbHVkZSBmbGV4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxLjZyZW07XG4gICAgYm9yZGVyLWJvdHRvbTogMC4xcmVtIHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4yKTtcblxuICAgICZfYnRuIHtcbiAgICAgIGdhcDogMS44cmVtO1xuICAgICAgQGluY2x1ZGUgZmxleDtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxMy42cmVtKTtcblxuICAgICAgQGluY2x1ZGUgbWF4KDc2N3B4KSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtYXgoNTc2cHgpIHtcbiAgICAgICAgZ2FwOiAxcmVtO1xuICAgICAgfVxuXG4gICAgICAuYnRuIHtcbiAgICAgICAgcGFkZGluZzogMS4ycmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAyIC0gMC45cmVtKTtcblxuICAgICAgICBAaW5jbHVkZSBtYXgoNTc2cHgpIHtcbiAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC8gMiAtIDAuNXJlbSk7XG4gICAgICAgICAgcGFkZGluZzogMS4ycmVtIDAuN3JlbSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNhcnRzLWNvdW50ZXIge1xuICAgICAgcGFkZGluZzogMS42cmVtO1xuICAgICAgd2lkdGg6IGZpdC1jb250ZW50O1xuICAgICAgY29sdW1uLWdhcDogMS42cmVtO1xuICAgICAgYm9yZGVyLXJhZGl1czogMC40cmVtO1xuICAgICAgYm9yZGVyOiAwLjFyZW0gc29saWQgcmdiYSgzNiwgMzYsIDM2LCAwLjIpO1xuXG4gICAgICBAaW5jbHVkZSBtYXgoNTc2cHgpIHtcbiAgICAgICAgcGFkZGluZzogMC44cmVtO1xuICAgICAgICBjb2x1bW4tZ2FwOiAwLjhyZW07XG4gICAgICB9XG5cbiAgICAgIGJ1dHRvbiB7XG4gICAgICAgIGNvbHVtbi1nYXA6IDAuNHJlbTtcbiAgICAgICAgQGluY2x1ZGUgZmxleC1pY2VudGVyO1xuXG4gICAgICAgICY6Zmlyc3QtY2hpbGQ6OmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgIHdpZHRoOiAwLjFyZW07XG4gICAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgICAgaGVpZ2h0OiAzLjJyZW07XG5cbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzNiwgMzYsIDM2LCAwLjIpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkOjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgd2lkdGg6IDAuMXJlbTtcbiAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgICBoZWlnaHQ6IDMuMnJlbTtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzNiwgMzYsIDM2LCAwLjIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNhcnQge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBnYXA6IDEuOHJlbTtcbiAgICAgIEBpbmNsdWRlIGZsZXg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgIEBpbmNsdWRlIG1heCg0NTBweCkge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICAgIC5jYXJ0IHtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6OmJlZm9yZSxcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICAucC1wcm9kdWN0LWFjdGlvbl9idG4ge1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTZyZW0pO1xuXG4gICAgICAgIEBpbmNsdWRlIG1heCg0NTBweCkge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgLmFkZGVkX3RvX2NhcnQge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAudmktd3B2cy12YXJpYXRpb24tc3R5bGUge1xuICAgICAgICBnYXA6IDIuNHJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICAudmFyaWF0aW9ucyB7XG4gICAgICAgIGdhcDogMi40cmVtO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgQGluY2x1ZGUgZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC44cmVtO1xuICAgICAgICAvLyBwYWRkaW5nOiAzLjJyZW0gMi40cmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIC8vIGJhY2tncm91bmQtY29sb3I6ICNlNGYyZmY7XG5cbiAgICAgICAgdGJvZHkge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgcm93LWdhcDogMi40cmVtO1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgICAgICBAaW5jbHVkZSBtYXgoNzY3cHgpIHtcbiAgICAgICAgICAgIHJvdy1nYXA6IDEuNnJlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubGFiZWwge1xuICAgICAgICAgIEBpbmNsdWRlIGZ6LTIwO1xuICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbCAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgLnZhbHVlIHtcbiAgICAgICAgICAudmktd3B2cy12YXJpYXRpb24td3JhcCB7XG4gICAgICAgICAgICBnYXA6IDEuMnJlbSAyLjRyZW07XG5cbiAgICAgICAgICAgIC52aS13cHZzLW9wdGlvbi13cmFwIHtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBmei0xODtcbiAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAxLjZyZW07XG4gICAgICAgICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAgICAgICBib3gtc2hhZG93OiB1bnNldDtcbiAgICAgICAgICAgICAgbWluLXdpZHRoOiAxMC41cmVtO1xuICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcbiAgICAgICAgICAgICAgYm9yZGVyOiAwLjFyZW0gc29saWQgI2EzYTNhMztcblxuICAgICAgICAgICAgICAmLWhvdmVyLFxuICAgICAgICAgICAgICAmLXNlbGVjdGVkIHtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICNmZjgzMDc7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDg0ZGVnLCAjZmY4MzA3IDEuNDglLCAjZmY1OTAwIDk5LjExJSk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnZpLXdwdnMtb3B0aW9uLXdyYXAtb3V0LW9mLXN0b2NrLWF0dHJpYnV0ZSB7XG4gICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnJlc2V0X3ZhcmlhdGlvbnMge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIC52aS13cHZzLXZhcmlhdGlvbi1zdHlsZSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMC44cmVtO1xuICAgICAgICAgIHBhZGRpbmc6IDMuMnJlbSAyLjRyZW07XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2U0ZjJmZjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuc2luZ2xlX3ZhcmlhdGlvbl93cmFwIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgLndvb2NvbW1lcmNlLXZhcmlhdGlvbi1wcmljZSxcbiAgICAgICAgLndvb2NvbW1lcmNlLXZhcmlhdGlvbi1hdmFpbGFiaWxpdHkge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIC53b29jb21tZXJjZS12YXJpYXRpb24ge1xuICAgICAgICAgID4gcCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5zaW5nbGVfdmFyaWF0aW9uX3dyYXAge1xuICAgICAgLndvb2NvbW1lcmNlLXZhcmlhdGlvbi1hZGQtdG8tY2FydCB7XG4gICAgICAgIGdhcDogMS44cmVtO1xuICAgICAgICBAaW5jbHVkZSBmbGV4O1xuXG4gICAgICAgIEBpbmNsdWRlIG1heCg1NzZweCkge1xuICAgICAgICAgIGdhcDogMS4ycmVtO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5wLXByb2R1Y3QtYWN0aW9uX2J0biB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxNi42cmVtKTtcblxuICAgICAgICBAaW5jbHVkZSBtYXgoNTc2cHgpIHtcbiAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTIuMnJlbSk7XG4gICAgICAgIH1cblxuICAgICAgICAuYWRkZWRfdG9fY2FydCB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5idG4tcHJpIHtcbiAgICAgICAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLWNvbXBhcmUge1xuICAgIGdhcDogMS4ycmVtO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBAaW5jbHVkZSBmbGV4LWljZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgLmxpbmsge1xuICAgICAgQGluY2x1ZGUgZnotMjA7XG4gICAgICBjb2x1bW4tZ2FwOiAwLjhyZW07XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgICAgQGluY2x1ZGUgZmxleC1pY2VudGVyO1xuICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcHJpKTtcblxuICAgICAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogJGNvbG9yLXByaTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpbWcge1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgIEBpbmNsdWRlIGJveCgyLjZyZW0pO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5zb2NpYWwge1xuICAgICAgZ2FwOiAwLjhyZW07XG4gICAgfVxuICB9XG5cbiAgJi1pbmZvIHtcbiAgICB1bCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgcm93LWdhcDogMi40cmVtO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xuICAgICAgICByb3ctZ2FwOiAxLjZyZW07XG4gICAgICB9XG5cbiAgICAgIGxpIHtcbiAgICAgICAgZ2FwOiAyLjRyZW07XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAgICAgLnRleHQtMjAge1xuICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgbWluLXdpZHRoOiAxNXJlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLWRlc2MsXG4gICYtaW5mbyB7XG4gICAgcGFkZGluZzogMi40cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDAuOHJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTRmMmZmO1xuXG4gICAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xuICAgICAgcGFkZGluZzogMnJlbTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtYXgoNzY3cHgpIHtcbiAgICAgIHBhZGRpbmc6IDEuNnJlbTtcbiAgICB9XG5cbiAgICAubW9uYS1jb250ZW50IHtcbiAgICAgIGgyIHtcbiAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjZyZW07XG4gICAgICB9XG5cbiAgICAgIGxpIHtcbiAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgfVxuXG4gICAgICBwIHtcbiAgICAgICAgQGluY2x1ZGUgZnotMjA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5qcy1wcm9kdWN0LWdhbGxlcnkge1xuICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDE0cmVtKTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyLjRyZW07XG4gIH1cbn1cblxuLmpzLXByb2R1Y3QtdGh1bWJzIHtcbiAgZmxleC1zaHJpbms6IDA7XG5cbiAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xuICAgIHdpZHRoOiAxMHJlbTtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcbiAgICBtYXJnaW46IDAgLTAuOHJlbTtcbiAgfVxuXG4gIC5zd2lwZXItd3JhcHBlciB7XG4gICAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xuICAgICAgcm93LWdhcDogMS42cmVtO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIHRyYW5zZm9ybTogdW5zZXQgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAuc3dpcGVyLXNsaWRlIHtcbiAgICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgICBAaW5jbHVkZSBib3goMTByZW0pO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcbiAgICAgIHBhZGRpbmc6IDAgMC44cmVtO1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDQpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1heCg1NzZweCkge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDMpO1xuICAgIH1cblxuICAgICYtdGh1bWItYWN0aXZlIHtcbiAgICAgIC5wLXByb2R1Y3QtaW1nIHtcbiAgICAgICAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAxcmVtIDAgcmdiYSgwLCAwLCAwLCAwLjI1KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5wLXByb2R1Y3QtaW1nIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cblxuLnByb2R1Y3QtY29udGVudCB7XG4gIEBpbmNsdWRlIG1hcmdpbig4cmVtKTtcblxuICAmLWNvbnRlbnQge1xuICAgIHBhZGRpbmc6IDRyZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJvcmRlci1yYWRpdXM6IDAuOHJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcblxuICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcbiAgICAgIHBhZGRpbmc6IDMuMnJlbTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtYXgoNzY3cHgpIHtcbiAgICAgIHBhZGRpbmc6IDIuNHJlbTtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAyMXJlbTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgLTE0LjQ2JSwgI2ZmZiA0Mi43NyUpO1xuICAgIH1cblxuICAgICYuaXMtbm9uZSB7XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogdW5zZXQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpoYXMoLmlzLWZ1bGwpIHtcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiB1bnNldDtcbiAgICAgIH1cblxuICAgICAgLm1vbmEtY29udGVudCB7XG4gICAgICAgIG1heC1oZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubW9uYS1jb250ZW50IHtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuXG4gICAgI2V6LXRvYy1jb250YWluZXIge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgcGFkZGluZzogMy4ycmVtO1xuICAgICAgcm93LWdhcDogMi40cmVtO1xuICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICBib3JkZXItcmFkaXVzOiAwLjhyZW07XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgYm9yZGVyOiAwLjFyZW0gc29saWQgcmdiYSgwLCAwLCAwLCAwLjIpO1xuXG4gICAgICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XG4gICAgICAgIHBhZGRpbmc6IDIuNHJlbTtcbiAgICAgIH1cblxuICAgICAgLmV6LXRvYy10aXRsZSB7XG4gICAgICAgIEBpbmNsdWRlIGZ6LTMyO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgfVxuXG4gICAgICAuZXotdG9jLXRpdGxlLWNvbnRhaW5lciA+IHAge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICAuZXotdG9jLXRpdGxlLXRvZ2dsZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIC5lei10b2MtbGlzdCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIHJvdy1nYXA6IDEuNnJlbTtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICAgICAuZXotdG9jLWxpbmsge1xuICAgICAgICAgIEBpbmNsdWRlIGZ6LTI0O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNjYlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIucC1wcm9kdWN0IHtcbiAgLmJyYW5kIHtcbiAgICBAaW5jbHVkZSBtYXJnaW4oNHJlbSwgOHJlbSk7XG5cbiAgICAmLXN3IC5zd2lwZXItc2xpZGUge1xuICAgICAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC8gNyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5hcnJhbmdlIHtcbiAgQGluY2x1ZGUgbWFyZ2luKDhyZW0pO1xuXG4gICYtd3JhcCB7XG4gICAgLndvb2NvbW1lcmNlLW5vdGljZXMtd3JhcHBlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gICYtbGlzdCB7XG4gICAgZ2FwOiAxLjZyZW07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgb3ZlcmZsb3c6IGF1dG8gaGlkZGVuO1xuXG4gICAgICAmOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi1pdGVtIHtcbiAgICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuYXJyYW5nZS1ib3gge1xuICAgICAgICBib3JkZXItY29sb3I6ICMwMTc1MmY7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkZWVlZTE7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMCkgc2F0dXJhdGUoMTAwJSkgaW52ZXJ0KDExJSkgc2VwaWEoOTglKSBzYXR1cmF0ZSg3Mjg5JSkgaHVlLXJvdGF0ZSgxNTlkZWcpIGJyaWdodG5lc3MoOTYlKVxuICAgICAgICAgICAgY29udHJhc3QoOTklKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC50ZXh0LTE2IHtcbiAgICAgICAgICBjb2xvcjogJGNvbG9yLXNlYztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYtZmlsdGVyIHtcbiAgICAmOmhhcyguYXJyYW5nZS1maWx0ZXItaXRlbS5hY3RpdmUpIHtcbiAgICAgIC5hcnJhbmdlLWJveCB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzAxNzUyZjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2RlZWVlMTtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwKSBzYXR1cmF0ZSgxMDAlKSBpbnZlcnQoMTElKSBzZXBpYSg5OCUpIHNhdHVyYXRlKDcyODklKSBodWUtcm90YXRlKDE1OWRlZykgYnJpZ2h0bmVzcyg5NiUpXG4gICAgICAgICAgICBjb250cmFzdCg5OSUpO1xuICAgICAgICB9XG5cbiAgICAgICAgLnRleHQtMTYge1xuICAgICAgICAgIGNvbG9yOiAkY29sb3Itc2VjO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi1pbm5lciB7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgei1pbmRleDogNTtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB3aWR0aDogMTAwdnc7XG4gICAgICBAaW5jbHVkZSBmbGV4O1xuICAgICAgQGluY2x1ZGUgc2hhZG93O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgYm9yZGVyLXJhZGl1czogMC44cmVtO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG5cbiAgICAgIEBpbmNsdWRlIG1pbigxMjAxcHgpIHtcbiAgICAgICAgZ2FwOiAyLjRyZW07XG4gICAgICAgIHBhZGRpbmc6IDIuNHJlbTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMjQuOHJlbTtcbiAgICAgICAgdG9wOiBjYWxjKDEwMCUgKyAyLjRyZW0pO1xuXG4gICAgICAgIEBpbmNsdWRlIG1heCgxMzY2cHgpIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDExOHJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgIGxlZnQ6IDMlO1xuICAgICAgICAgIHRvcDogLTJyZW07XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xuICAgICAgICAgIGJvcmRlcjogMCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICBib3JkZXItcmlnaHQtd2lkdGg6IDFyZW07XG4gICAgICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6IDFyZW07XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMnJlbSBzb2xpZCB3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYtYmxvY2sge1xuICAgICAgZ2FwOiAyLjRyZW07XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIEBpbmNsdWRlIGZsZXg7XG5cbiAgICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcbiAgICAgICAgcGFkZGluZzogMS42cmVtO1xuICAgICAgICBnYXA6IDIuNHJlbSAxLjJyZW07XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1heCg1NzZweCkge1xuICAgICAgICBtYXgtaGVpZ2h0OiA0MHJlbTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgICYtYm94IHtcbiAgICAgIGdhcDogMi40cmVtO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC8gMyAtIDEuNnJlbSk7XG5cbiAgICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDMgLSAwLjhyZW0pO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtYXgoNzY3cHgpIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDIgLSAwLjZyZW0pO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtYXgoNTc2cHgpIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGdhcDogMS4ycmVtO1xuICAgICAgfVxuICAgIH1cblxuICAgICYtbGlzdCB7XG4gICAgICBnYXA6IDAuOHJlbTtcbiAgICAgIEBpbmNsdWRlIGZsZXg7XG4gICAgfVxuXG4gICAgJi1pdGVtIHtcbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgLmFycmFuZ2UtZmlsdGVyLWxpbmsge1xuICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc2VjO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi1saW5rIHtcbiAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICBAaW5jbHVkZSBmei0yMDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIHdpZHRoOiBmaXQtY29udGVudDtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgICBib3JkZXItcmFkaXVzOiAxMHJlbTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmNmY2ZjY7XG4gICAgICBib3JkZXI6IDAuMXJlbSBzb2xpZCAjZGFkYWRhO1xuXG4gICAgICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc2VjO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1heCg3NjdweCkge1xuICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLWJ0biB7XG4gICAgICBnYXA6IDEuNnJlbTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBAaW5jbHVkZSBmbGV4LWljZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXG4gICAgICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XG4gICAgICAgIHBhZGRpbmc6IDEuNnJlbTtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICB9XG5cbiAgICAgIC5idG4ge1xuICAgICAgICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgICAgICAgbWluLXdpZHRoOiAxOHJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcbiAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC8gMiAtIDAuOHJlbSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuYXJyYW5nZS1maWx0ZXItaW5uZXIge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLWRyb3Bkb3duIHtcbiAgICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5hcnJhbmdlLWJveCA+IGltZyB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmFycmFuZ2UtYm94IHtcbiAgICAgIHBhZGRpbmc6IDEuMDVyZW0gMi40cmVtO1xuXG4gICAgICA+IGltZyB7XG4gICAgICAgIEBpbmNsdWRlIGJveCgxLjZyZW0pO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5hcnJhbmdlLWZpbHRlci1pbm5lciB7XG4gICAgICBtYXgtd2lkdGg6IDU1cmVtO1xuXG4gICAgICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgd2lkdGg6IDEwMHZ3O1xuICAgICAgfVxuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBsZWZ0OiA1JTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYXJyYW5nZS1maWx0ZXItYm94IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC5hcnJhbmdlLWZpbHRlci1idG4ge1xuICAgICAgLmJ0biB7XG4gICAgICAgIG1pbi13aWR0aDogdW5zZXQ7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAyIC0gMC44cmVtKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYXJyYW5nZS1maWx0ZXItbGluay5hY3RpdmUge1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXNlYztcbiAgICB9XG4gIH1cblxuICAmLWJveCB7XG4gICAgZ2FwOiAwLjhyZW07XG4gICAgQGluY2x1ZGUgZmxleDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gICAgcGFkZGluZzogMC44cmVtIDIuNHJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjZmNmY2O1xuICAgIGJvcmRlcjogMC4xcmVtIHNvbGlkICNkYWRhZGE7XG5cbiAgICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjMDE3NTJmO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGVlZWUxO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgZmlsdGVyOiBicmlnaHRuZXNzKDApIHNhdHVyYXRlKDEwMCUpIGludmVydCgxMSUpIHNlcGlhKDk4JSkgc2F0dXJhdGUoNzI4OSUpIGh1ZS1yb3RhdGUoMTU5ZGVnKSBicmlnaHRuZXNzKDk2JSlcbiAgICAgICAgICAgIGNvbnRyYXN0KDk5JSk7XG4gICAgICAgIH1cblxuICAgICAgICAudGV4dC0xNiB7XG4gICAgICAgICAgY29sb3I6ICMwMTc1MmY7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtYXgoNTc2cHgpIHtcbiAgICAgIHBhZGRpbmc6IDAuOHJlbTtcbiAgICB9XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICBib3JkZXItY29sb3I6ICMwMTc1MmY7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGVlZWUxO1xuXG4gICAgICBpbWcge1xuICAgICAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMCkgc2F0dXJhdGUoMTAwJSkgaW52ZXJ0KDExJSkgc2VwaWEoOTglKSBzYXR1cmF0ZSg3Mjg5JSkgaHVlLXJvdGF0ZSgxNTlkZWcpIGJyaWdodG5lc3MoOTYlKVxuICAgICAgICAgIGNvbnRyYXN0KDk5JSk7XG4gICAgICB9XG5cbiAgICAgIC50ZXh0LTE2IHtcbiAgICAgICAgY29sb3I6ICMwMTc1MmY7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpoYXMoLmFycmFuZ2UtZHJvcGRvd24tc2VsZWN0KSB7XG4gICAgICBwYWRkaW5nOiAxcmVtIDIuNHJlbTtcbiAgICB9XG5cbiAgICA+IGltZyB7XG4gICAgICBmbGV4LXNocmluazogMDtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgICBAaW5jbHVkZSBib3goMi40cmVtKTtcbiAgICB9XG5cbiAgICAudGV4dC0xNiB7XG4gICAgICBAaW5jbHVkZSBmei0yMDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBjb2xvcjogJGNvbG9yLXRleHQ7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgIH1cbiAgfVxuXG4gICYtcHJvZHVjdCB7XG4gICAgJi1saXN0IHtcbiAgICAgIEBpbmNsdWRlIGZsZXg7XG4gICAgICByb3ctZ2FwOiAyLjRyZW07XG4gICAgICBtYXJnaW46IDAgLTEuMnJlbTtcblxuICAgICAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xuICAgICAgICByb3ctZ2FwOiAxLjZyZW07XG4gICAgICAgIG1hcmdpbjogMCAtMC44cmVtO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtYXgoNzY3cHgpIHtcbiAgICAgICAgcm93LWdhcDogMC44cmVtO1xuICAgICAgICBtYXJnaW46IDAgLTAuNHJlbTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLWl0ZW0ge1xuICAgICAgcGFkZGluZzogMCAxLjJyZW07XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC8gNSk7XG5cbiAgICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcbiAgICAgICAgcGFkZGluZzogMCAwLjhyZW07XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyA0KTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWF4KDEwMjRweCkge1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC8gMyk7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1heCg3NjdweCkge1xuICAgICAgICBwYWRkaW5nOiAwIDAuNHJlbTtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBRUFBOzs4REFFOEQ7QUFhOUQ7OzhEQUU4RDtBQ2pCOUQsQUFBQSxLQUFLLENBQUM7RUFDSixXQUFXLENBQUEsTUFBQztFQUNaLFlBQVksQ0FBQSxLQUFDO0VBQ2Isa0JBQWtCLENBQUEsTUFBQztFQUNuQixVQUFVLENBQUEscUJBQUMsR0FDWjs7QUNMRCxBQUFBLE1BQU0sQ0FBQztFRnVHTCxNQUFNLEVFdEdVLElBQUksQ0ZzR0gsSUFBSSxDRXRHTCxJQUFJLEdBdU1yQjtFRnBNQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0lFSnJDLEFBQUEsTUFBTSxDQUFDO01GMEdILE1BQU0sRUFBRSxTQUFTLEdFOEZwQjtFRnBNQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0lFSnJDLEFBQUEsTUFBTSxDQUFDO01GOEdILE1BQU0sRUFBRSxTQUFTLEdFMEZwQjtFQXJNRSxBQUFELFlBQU8sQ0FBQztJQUNOLE9BQU8sRUFBRSxNQUFNO0lBQ2YsYUFBYSxFQUFFLE1BQU07SUFDckIsZ0JBQWdCLEVBQUUsS0FBSztJQUN2QixVQUFVLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLG1CQUFtQixHQUtoRDtJRlJELE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FB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 */
