@charset "UTF-8";
/*------------------------------------------------------------
	Media
------------------------------------------------------------*/
/*------------------------------------------------------------
	Flex Box
------------------------------------------------------------*/
:root {
  --font-pri: "Mona Sans", sans-serif;
  --font-title: "TASA Lexend", sans-serif;
  --header-index: 99;
  --header-fixed: 8rem;
  --header-height: 9.6rem; }

.type {
  margin: 4rem 0rem 12rem; }
  @media screen and (max-width: 992px) {
    .type {
      margin: 6rem 0rem; } }
  @media screen and (max-width: 576px) {
    .type {
      margin: 4rem 0rem; } }
  .type-list {
    --letter-spacing: 0.8rem;
    display: flex;
    flex-wrap: wrap;
    row-gap: 1.6rem;
    margin: 0 calc(-1 * var(--letter-spacing)); }
    @media screen and (max-width: 767px) {
      .type-list {
        row-gap: 0.8rem;
        --letter-spacing: 0.4rem; } }
  .type-item {
    width: calc(100% / 4);
    padding: 0 var(--letter-spacing); }
    @media screen and (max-width: 991px) {
      .type-item {
        width: calc(100% / 3); } }
    @media screen and (max-width: 767px) {
      .type-item {
        width: calc(100% / 2); } }
  .type-box {
    height: 100%;
    overflow: hidden;
    transition: 0.4s ease-in-out;
    border-radius: 0.2rem; }
    @media screen and (min-width: 1201px) {
      .type-box:hover {
        box-shadow: 0 0.8rem 2.4rem 0 rgba(0, 0, 0, 0.1); }
        .type-box:hover img {
          transform: translate(-50%, -50%) scale(1.05); }
        .type-box:hover .type-content .title-24 {
          font-weight: 500;
          color: #96171a; } }
  .type-img {
    overflow: hidden;
    position: relative;
    padding-top: calc(1 / 1 * 100%); }
    .type-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; }
  .type-content {
    height: 100%;
    text-align: center;
    padding: 1.6rem 2rem;
    background-color: #f0f0f0; }
    @media screen and (max-width: 1200px) {
      .type-content {
        padding: 1.2rem; } }
    .type-content .title-24 {
      line-height: 133%;
      transition: 0.4s ease-in-out; }
      @media screen and (max-width: 576px) {
        .type-content .title-24 {
          font-size: 1.4rem; } }

.m-news {
  padding: 10rem 0rem 10rem; }
  @media screen and (max-width: 992px) {
    .m-news {
      padding: 6rem 0rem; } }
  @media screen and (max-width: 576px) {
    .m-news {
      padding: 4rem 0rem; } }
  .m-news-heading {
    gap: 4rem;
    display: flex;
    align-items: center; }
    @media screen and (max-width: 1024px) {
      .m-news-heading {
        gap: 2.4rem; } }
    @media screen and (max-width: 991px) {
      .m-news-heading {
        flex-direction: column; } }
    .m-news-heading_tab {
      gap: 4rem;
      user-select: none;
      margin-left: auto;
      display: flex;
      align-items: center; }
      @media screen and (min-width: 577px) {
        .m-news-heading_tab {
          justify-content: center; } }
      @media screen and (max-width: 1024px) {
        .m-news-heading_tab {
          gap: 2.4rem; } }
      @media screen and (max-width: 991px) {
        .m-news-heading_tab {
          width: 100%;
          margin-right: auto;
          white-space: nowrap;
          overflow: auto hidden; }
          .m-news-heading_tab::-webkit-scrollbar {
            display: none; } }
      .m-news-heading_tab .text-12 {
        line-height: 133%;
        position: relative;
        transition: 0.4s ease-in-out;
        padding-bottom: 0.6rem; }
        @media screen and (min-width: 1201px) {
          .m-news-heading_tab .text-12:hover {
            color: #96171a; }
            .m-news-heading_tab .text-12:hover::before {
              width: 2.8rem; } }
        @media screen and (max-width: 576px) {
          .m-news-heading_tab .text-12 {
            text-align: center; } }
        .m-news-heading_tab .text-12::before {
          content: "";
          width: 0;
          bottom: 0;
          left: 50%;
          height: 0.1rem;
          position: absolute;
          transition: 0.4s ease-in-out;
          transform: translateX(-50%);
          background-color: #96171a; }
      .m-news-heading_tab .active .text-12 {
        font-weight: 600;
        color: #96171a; }
        .m-news-heading_tab .active .text-12::before {
          width: 2.8rem; }
    @media screen and (max-width: 576px) {
      .m-news-heading_btn {
        flex: 1; } }
    @media screen and (max-width: 991px) {
      .m-news-heading .title-with-desc {
        text-align: center; } }
    @media screen and (max-width: 410px) {
      .m-news-heading .title-with-desc .title-40 {
        margin: 0 auto;
        max-width: 28rem; } }
    @media screen and (max-width: 991px) {
      .m-news-heading .title-with-desc .text-12 {
        margin: 0 auto; } }
    @media screen and (max-width: 991px) {
      .m-news-heading > .btn {
        display: none; } }
  .m-news-box {
    height: 100%; }
    @media screen and (min-width: 1201px) {
      .m-news-box:hover .img img {
        transform: translate(-50%, -50%) scale(1.05); }
      .m-news-box:hover .m-news-content .text-20 {
        color: #96171a; } }
    @media screen and (max-width: 767px) {
      .m-news-box {
        row-gap: 1.6rem; } }
  .m-news-img {
    position: relative; }
    .m-news-img .img {
      display: block;
      overflow: hidden;
      position: relative;
      padding-top: calc(412 / 656 * 100%); }
      .m-news-img .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; }
    .m-news-img .cate {
      top: 0;
      left: 0;
      display: block;
      margin: 0.8rem;
      padding: 0.8rem;
      width: fit-content;
      position: absolute;
      backdrop-filter: blur(2rem);
      background: rgba(255, 255, 255, 0.25); }
      @media screen and (max-width: 576px) {
        .m-news-img .cate {
          padding: 0.4rem; } }
      .m-news-img .cate .text-14 {
        color: white;
        line-height: 130%;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        overflow: hidden;
        line-clamp: 1;
        -webkit-line-clamp: 1;
        font-family: var(--font-title); }
        @media screen and (max-width: 576px) {
          .m-news-img .cate .text-14 {
            font-size: 1.2rem; } }
  @media screen and (max-width: 576px) {
    .m-news-content {
      row-gap: 1.2rem; } }
  .m-news-content .calendar {
    gap: 0.8rem;
    display: flex;
    align-items: center; }
    .m-news-content .calendar img {
      object-fit: cover;
      width: 1.6rem;
      height: 1.6rem; }
    .m-news-content .calendar .text-12 {
      color: #656565; }
  .m-news-content .text-20 {
    line-height: 140%;
    transition: 0.4s ease-in-out; }
    @media screen and (max-width: 576px) {
      .m-news-content .text-20 {
        font-size: 1.4rem; } }
  .m-news-swiper .swiper {
    margin: 0 -0.8rem; }
    .m-news-swiper .swiper-slide {
      height: auto;
      padding: 0 0.8rem;
      width: calc(100% / 3); }
      @media screen and (max-width: 991px) {
        .m-news-swiper .swiper-slide {
          width: calc(100% / 2.5); } }
      @media screen and (max-width: 767px) {
        .m-news-swiper .swiper-slide {
          width: calc(100% / 2); } }
      @media screen and (max-width: 576px) {
        .m-news-swiper .swiper-slide {
          width: calc(100% / 1.5); } }
    @media screen and (min-width: 1201px) {
      .m-news-swiper .swiper-pagination {
        display: none; } }
  .m-news-swiper > .btn {
    margin-top: 4rem; }
    @media screen and (min-width: 992px) {
      .m-news-swiper > .btn {
        display: none; } }
    @media screen and (max-width: 576px) {
      .m-news-swiper > .btn {
        margin-top: 2.4rem; } }
  .m-news .btn {
    border-color: #96171a; }

.popup {
  inset: 0;
  z-index: 101;
  position: fixed;
  visibility: hidden; }
  .popup.open .popup-overlay {
    opacity: 1;
    visibility: visible; }
  .popup.open .popup-main {
    opacity: 1;
    visibility: visible; }
  .popup .wpcf7-response-output {
    text-align: center; }
  .popup-close {
    top: 2rem;
    z-index: 5;
    right: 2rem;
    cursor: pointer;
    user-select: none;
    position: absolute;
    border-radius: 50%;
    backdrop-filter: blur(0.5rem);
    background-color: rgba(255, 255, 255, 0.25); }
    @media screen and (max-width: 1200px) {
      .popup-close {
        top: 1rem;
        right: 1rem;
        background-color: #131313; } }
    .popup-close img {
      width: 2rem;
      height: 2rem;
      filter: brightness(0) invert(1); }
  .popup-overlay {
    inset: 0;
    z-index: 1;
    opacity: 0;
    visibility: hidden;
    position: absolute;
    transition: 0.4s ease-in-out;
    background-color: rgba(0, 0, 0, 0.8); }
  .popup-main {
    top: 50%;
    left: 50%;
    z-index: 2;
    opacity: 0;
    width: 100%;
    display: flex;
    padding: 1.6rem;
    position: absolute;
    visibility: hidden;
    max-width: 124.6rem;
    height: fit-content;
    transition: 0.4s ease-in-out;
    overflow: hidden auto;
    flex-direction: column;
    transform: translate(-50%, -50%); }
  .popup-wrap {
    width: 100%;
    position: relative; }
    @media screen and (max-width: 1200px) {
      .popup-wrap .m-contact-wrap {
        border-radius: 0; } }
  .popup-over {
    min-height: 80vh;
    max-height: 85vh;
    position: relative;
    overflow: hidden auto; }
    @media screen and (max-width: 1024px) {
      .popup-over:has(.popup-noti) {
        min-height: 65vh; } }
    @media screen and (max-width: 767px) {
      .popup-over:has(.popup-noti) {
        min-height: 45vh; } }
  .popup-contact {
    overflow: hidden;
    position: relative;
    isolation: isolate;
    border-radius: 1.6rem;
    padding-bottom: 5.6rem;
    background-color: #fdfdfd; }
    @media screen and (max-width: 1200px) {
      .popup-contact {
        padding-bottom: 2.4rem; } }
    .popup-contact-bg {
      z-index: -1;
      position: relative;
      padding-top: calc(420 / 1216 * 100%); }
      .popup-contact-bg::before {
        content: "";
        left: 0;
        z-index: 1;
        width: 100%;
        height: 100%;
        bottom: -0.2rem;
        position: absolute;
        pointer-events: none;
        background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, #fff 100%); }
      .popup-contact-bg img {
        top: 50%;
        left: 50%;
        width: 100%;
        height: 100%;
        object-fit: cover;
        position: absolute;
        transform: translate(-50%, -50%); }
    .popup-contact-position {
      z-index: 3;
      padding: 0 5.6rem;
      margin-top: -16rem;
      position: relative; }
      @media screen and (max-width: 1200px) {
        .popup-contact-position {
          padding: 0 2.4rem;
          margin-top: -10rem; } }
      @media screen and (max-width: 576px) {
        .popup-contact-position {
          padding: 0 1.6rem;
          margin-top: -5rem; } }
    .popup-contact-row {
      align-items: end; }
    @media screen and (max-width: 767px) {
      .popup-contact-col {
        width: 100%; } }
    .popup-contact-info_heading .title-40 {
      line-height: 140%; }
      .popup-contact-info_heading .title-40 span {
        color: #96171a; }
    .popup-contact-info_img {
      max-width: 10rem;
      user-select: none; }
      .popup-contact-info_img img {
        width: 100%;
        object-fit: cover;
        filter: brightness(0) saturate(100%) invert(18%) sepia(55%) saturate(2914%) hue-rotate(339deg) brightness(89%) contrast(105%); }
    @media screen and (max-width: 767px) {
      .popup-contact-info > .btn {
        display: none; } }
    .popup-contact-form {
      max-width: 52rem;
      margin-left: auto; }
      @media screen and (max-width: 767px) {
        .popup-contact-form {
          max-width: 100%; } }
      @media screen and (min-width: 768px) {
        .popup-contact-form form .form-action {
          display: none; } }
    .popup-contact-product_box {
      gap: 1.2rem;
      display: flex;
      align-items: center; }
    .popup-contact-product_img {
      flex-shrink: 0; }
      .popup-contact-product_img .img {
        overflow: hidden;
        user-select: none;
        width: 8rem;
        height: 8rem;
        border-radius: 0.2rem; }
        .popup-contact-product_img .img img {
          width: 100%;
          height: 100%;
          object-fit: cover; }
    .popup-contact-product_content > * {
      line-height: 175%; }
    .popup-contact-product_content .name {
      color: #96171a; }
      @media screen and (min-width: 1201px) {
        .popup-contact-product_content .name:hover {
          text-decoration: underline; } }
  .popup-noti {
    overflow: hidden;
    isolation: isolate;
    border-radius: 1.6rem;
    padding-bottom: 13rem;
    background-color: #fdfdfd; }
    @media screen and (max-width: 992px) {
      .popup-noti {
        padding-bottom: 8rem; } }
    @media screen and (max-width: 767px) {
      .popup-noti {
        padding-bottom: 4rem; } }
    .popup-noti-content_heading .title-32 {
      line-height: 150%; }
      @media screen and (max-width: 400px) {
        .popup-noti-content_heading .title-32 br {
          display: none; } }
      .popup-noti-content_heading .title-32 span {
        color: #96171a; }
    .popup-noti-content_img {
      margin: 0 auto;
      max-width: 10rem; }
      .popup-noti-content_img img {
        width: 100%;
        object-fit: cover;
        filter: brightness(0) saturate(100%) invert(18%) sepia(55%) saturate(2914%) hue-rotate(339deg) brightness(89%) contrast(105%); }
    .popup-noti .popup-contact-position {
      margin-top: -8rem; }
  .popup-product form .form-action {
    display: block; }
  .popup:has(.popup-project) .popup-main {
    max-width: 132.6rem; }
  .popup:has(.popup-project) .popup-close {
    top: -1rem;
    right: -1rem; }
  .popup:has(.popup-project) .popup-over {
    overflow: unset; }
  .popup-project-slide {
    --letter-spacing: 0.8rem; }
    .popup-project-slide .swiper {
      margin: 0 calc(-1 * var(--letter-spacing)); }
      .popup-project-slide .swiper-slide {
        padding: 0 var(--letter-spacing); }
  .popup-project-main .popup-project-img {
    padding-top: calc(600 / 1328 * 100%); }
  .popup-project-thumb {
    width: 100%;
    margin: 0 auto;
    position: relative;
    max-width: 76.8rem; }
    .popup-project-thumb .swiper-slide {
      width: calc(100% / 3); }
      @media screen and (max-width: 576px) {
        .popup-project-thumb .swiper-slide {
          width: calc(100% / 2); } }
    @media screen and (max-width: 1200px) {
      .popup-project-thumb .swiper-navigation {
        display: none; } }
    .popup-project-thumb .swiper-navigation-prev {
      left: -5.2rem; }
      @media screen and (max-width: 1366px) {
        .popup-project-thumb .swiper-navigation-prev {
          left: -1.6rem; } }
      .popup-project-thumb .swiper-navigation-prev::after {
        transform: rotate(90deg); }
    .popup-project-thumb .swiper-navigation-next {
      right: -5.2rem; }
      @media screen and (max-width: 1366px) {
        .popup-project-thumb .swiper-navigation-next {
          right: -1.6rem; } }
      .popup-project-thumb .swiper-navigation-next::after {
        transform: rotate(-90deg); }
    .popup-project-thumb .swiper-navigation > * {
      top: 50%;
      z-index: 5;
      position: absolute;
      border-color: transparent;
      transform: translateY(-50%); }
      .popup-project-thumb .swiper-navigation > *:after {
        width: 2.4rem;
        height: 2.4rem;
        filter: brightness(0) invert(1);
        background-image: url("../../assets/images/icons/icon-chevron.svg"); }
    .popup-project-thumb .popup-project-img {
      padding-top: calc(118 / 208 * 100%); }
  .popup-project-img {
    overflow: hidden;
    position: relative; }
    .popup-project-img img {
      top: 50%;
      left: 50%;
      width: 100%;
      height: 100%;
      object-fit: cover;
      position: absolute;
      transform: translate(-50%, -50%); }

.m-des {
  margin: 12rem 0rem 12rem; }
  @media screen and (max-width: 992px) {
    .m-des {
      margin: 6rem 0rem; } }
  @media screen and (max-width: 576px) {
    .m-des {
      margin: 4rem 0rem; } }
  @media screen and (max-width: 410px) {
    .m-des-heading .title-with-desc .title-40 {
      margin: 0 auto;
      max-width: 32rem; } }
  @media screen and (max-width: 991px) {
    .m-des-dropdown_position {
      display: flex;
      row-gap: 1.6rem;
      flex-direction: column; } }
  @media screen and (min-width: 992px) {
    .m-des-dropdown_position > .text-16 {
      display: none; } }
  @media screen and (max-width: 991px) {
    .m-des-dropdown_position > form {
      display: flex;
      row-gap: 2.4rem;
      flex-direction: column; } }
  .m-des-dropdown_list {
    display: flex;
    flex-wrap: wrap;
    margin: 0 auto;
    user-select: none; }
    @media screen and (min-width: 992px) {
      .m-des-dropdown_list {
        box-shadow: 0 0.8rem 2.4rem 0 rgba(0, 0, 0, 0.1);
        width: fit-content;
        align-items: center;
        border-radius: 10rem;
        justify-content: center; } }
    @media screen and (max-width: 991px) {
      .m-des-dropdown_list {
        gap: 1.2rem;
        width: 100%; } }
  .m-des-dropdown_item {
    cursor: pointer;
    position: relative; }
    @media screen and (min-width: 1201px) {
      .m-des-dropdown_item {
        width: fit-content; }
        .m-des-dropdown_item:hover .m-dropdown {
          box-shadow: 0 0.8rem 2.4rem 0 rgba(0, 0, 0, 0.1); }
          .m-des-dropdown_item:hover .m-dropdown-list {
            opacity: 1;
            pointer-events: auto;
            transform: translateY(1.2rem); } }
    @media screen and (max-width: 991px) {
      .m-des-dropdown_item {
        width: calc(100% / 4 - 0.9rem); } }
    @media screen and (max-width: 767px) {
      .m-des-dropdown_item {
        width: calc(100% / 3 - 0.8rem); } }
    @media screen and (max-width: 576px) {
      .m-des-dropdown_item {
        width: calc(100% / 2 - 0.6rem); } }
    @media screen and (min-width: 992px) {
      .m-des-dropdown_item:not(:last-child)::before {
        content: "";
        top: 50%;
        right: 0;
        height: 4rem;
        width: 0.1rem;
        position: absolute;
        transform: translateY(-50%);
        background-color: #f0f0f0; }
      .m-des-dropdown_item:after {
        content: "";
        left: 0;
        top: 100%;
        width: 100%;
        height: 1.2rem;
        position: absolute;
        background-color: transparent; } }
    @media screen and (min-width: 992px) {
      .m-des-dropdown_item:last-child .m-dropdown {
        padding: 1.3rem 0.8rem 1.3rem 4rem; } }
  @media screen and (min-width: 992px) and (max-width: 1200px) {
    .m-des-dropdown_item:last-child .m-dropdown {
      padding: 0.8rem 0.8rem 0.8rem 1.6rem; } }
    .m-des-dropdown_item.active .m-dropdown {
      box-shadow: 0 0.8rem 2.4rem 0 rgba(0, 0, 0, 0.1); }
      .m-des-dropdown_item.active .m-dropdown::before {
        transform: translateY(-50%) rotate(180deg); }
      .m-des-dropdown_item.active .m-dropdown-list {
        opacity: 1;
        pointer-events: auto;
        transform: translateY(1.2rem); }
  .m-des-dropdown_action {
    gap: 1.6rem;
    display: flex;
    align-items: center; }
    @media screen and (min-width: 992px) {
      .m-des-dropdown_action {
        display: none; } }
    .m-des-dropdown_action .btn {
      width: calc(100% / 2 - 0.8rem); }
      .m-des-dropdown_action .btn-pri {
        border-color: #96171a; }
  .m-des-box {
    position: relative; }
    @media screen and (min-width: 1201px) {
      .m-des-box:hover .m-des-bg img {
        transform: translate(-50%, -50%) scale(1.05); } }
  .m-des-bg {
    display: block;
    overflow: hidden;
    position: relative;
    padding-top: calc(400 / 592 * 100%); }
    .m-des-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; }
  .m-des-content {
    left: 2rem;
    right: 2rem;
    gap: 1.2rem;
    bottom: 2rem;
    padding: 0.8rem;
    min-width: 24.3rem;
    width: fit-content;
    position: absolute;
    max-width: 25.4rem;
    display: flex;
    align-items: center;
    border-radius: 0.4rem;
    background-color: white; }
    @media screen and (max-width: 1200px) {
      .m-des-content {
        left: 0.8rem;
        bottom: 0.8rem; } }
    @media screen and (max-width: 576px) {
      .m-des-content {
        left: 0;
        bottom: 0;
        border-radius: 0 0.4rem 0 0ƒ; } }
  .m-des-img {
    display: block;
    flex-shrink: 0;
    box-shadow: 0 0.8rem 2.4rem 0 rgba(0, 0, 0, 0.1);
    overflow: hidden;
    width: 5.6rem;
    height: 5.6rem;
    border-radius: 0.4rem; }
    .m-des-img img {
      width: 100%;
      height: 100%;
      object-fit: cover; }
  .m-des-info .text-12,
  .m-des-info .text-14 {
    line-height: 133%; }
  .m-des-info .text-12 {
    color: #999; }
  .m-des-info .text-14 {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    line-clamp: 2;
    -webkit-line-clamp: 2; }
  .m-des-info .text-14 {
    transition: 0.4s ease-in-out; }
    @media screen and (min-width: 1201px) {
      .m-des-info .text-14:hover {
        color: #96171a; } }
  .m-des-filter {
    gap: 0.8rem;
    padding: 0.8rem;
    margin-left: auto;
    width: fit-content;
    display: flex;
    align-items: center;
    border-radius: 0.6rem;
    background-color: white;
    border: 0.1rem solid #96171a; }
    @media screen and (min-width: 992px) {
      .m-des-filter {
        display: none; } }
    .m-des-filter img {
      object-fit: cover;
      width: 1.6rem;
      height: 1.6rem; }
  .m-des-icon {
    top: 2rem;
    right: 2rem;
    border-radius: 50%;
    position: absolute;
    transition: 0.4s ease-in-out;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    width: 3.2rem;
    height: 3.2rem;
    background-color: white; }
    @media screen and (min-width: 1201px) {
      .m-des-icon:hover {
        background-color: #96171a; }
        .m-des-icon:hover img {
          transform: rotate(45deg);
          filter: brightness(0) invert(1); } }
    @media screen and (max-width: 1200px) {
      .m-des-icon {
        top: 0.8rem;
        right: 0.8rem; } }
    .m-des-icon img {
      transition: 0.4s ease-in-out;
      object-fit: contain;
      width: 1.6rem;
      height: 1.6rem; }
  .m-des .m-dropdown {
    gap: 4rem;
    transition: 0.4s ease-in-out;
    border-radius: 10rem;
    display: flex;
    align-items: center;
    padding: 1.6rem 4rem; }
    @media screen and (max-width: 1200px) {
      .m-des .m-dropdown {
        padding: 0.8rem 2.4rem; } }
    @media screen and (max-width: 991px) {
      .m-des .m-dropdown {
        border-radius: 0.8rem;
        border: 0.1rem solid #f0f0f0;
        padding: 0.8rem 3.2rem 0.8rem 2.4rem; }
        .m-des .m-dropdown::before {
          content: "";
          top: 50%;
          right: 1rem;
          position: absolute;
          transition: 0.4s ease-in-out;
          width: 1.6rem;
          height: 1.6rem;
          transform: translateY(-50%);
          background-size: contain;
          background-repeat: no-repeat;
          background-position: top;
          background-image: url("../../assets/images/icons/icon-chevron.svg"); } }
    .m-des .m-dropdown-list {
      z-index: 5;
      gap: 1.2rem;
      display: flex;
      transition: 0.4s ease-in-out;
      left: 0;
      top: 100%;
      opacity: 0;
      padding: 2rem;
      box-shadow: 0 0.8rem 2.4rem 0 rgba(0, 0, 0, 0.1);
      max-width: 25rem;
      min-width: 16.5rem;
      width: max-content;
      position: absolute;
      pointer-events: none;
      border-radius: 0.8rem;
      flex-direction: column;
      background-color: white;
      transform: translateY(3.2rem); }
      @media screen and (max-width: 991px) {
        .m-des .m-dropdown-list {
          width: 100%; } }
    @media screen and (min-width: 1201px) {
      .m-des .m-dropdown-item:hover .text-12 {
        color: #96171a; }
        .m-des .m-dropdown-item:hover .text-12::before {
          width: 2.4rem; } }
    .m-des .m-dropdown-item.active .text-12 {
      color: #96171a; }
      @media screen and (max-width: 991px) {
        .m-des .m-dropdown-item.active .text-12 {
          font-weight: 600; } }
      .m-des .m-dropdown-item.active .text-12::before {
        width: 2.4rem; }
    .m-des .m-dropdown-item.is-hidden {
      display: none; }
    .m-des .m-dropdown-item .text-12 {
      line-height: 133%;
      column-gap: 1.2rem;
      position: relative;
      transition: 0.4s ease-in-out;
      display: flex;
      align-items: center; }
      .m-des .m-dropdown-item .text-12::before {
        content: "";
        width: 0;
        height: 0.1rem;
        transition: 0.4s ease-in-out;
        display: inline-block;
        background-color: #96171a; }
        @media screen and (max-width: 991px) {
          .m-des .m-dropdown-item .text-12::before {
            display: none;
            width: 2.4rem; } }
    .m-des .m-dropdown-text {
      min-width: 10rem;
      max-width: 10rem; }
      .m-des .m-dropdown-text > * {
        display: -webkit-box;
        -webkit-box-orient: vertical;
        overflow: hidden;
        line-clamp: 1;
        -webkit-line-clamp: 1; }
      .m-des .m-dropdown-text span {
        font-weight: 300;
        font-size: 1.2rem; }
    .m-des .m-dropdown .btn {
      flex-direction: row-reverse; }
      @media screen and (max-width: 1200px) {
        .m-des .m-dropdown .btn {
          padding: 0.8rem 1.6rem; } }
      @media screen and (max-width: 991px) {
        .m-des .m-dropdown .btn {
          display: none; } }
      .m-des .m-dropdown .btn img {
        width: 2rem;
        height: 2rem; }

.banner-pri {
  position: relative; }
  .banner-pri-bg {
    inset: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
    position: absolute; }
    .banner-pri-bg::before {
      content: "";
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      position: absolute;
      background: linear-gradient(0deg, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0.65) 100%); }
    .banner-pri-bg img {
      width: 100%;
      object-fit: cover;
      height: 100% !important; }
  .banner-pri-position {
    z-index: 3;
    padding: 20rem 0;
    position: relative; }
    @media screen and (max-width: 576px) {
      .banner-pri-position {
        padding: 10rem 0; } }
  .banner-pri-content .title-40 {
    color: white;
    line-height: 140%; }
  .banner-pri-content .text-16 {
    color: white; }
  @media screen and (max-width: 1024px) {
    .banner-pri-row {
      row-gap: 3.2rem; } }
  @media screen and (max-width: 1024px) {
    .banner-pri-col {
      width: 100%; } }
  .banner-pri-video {
    gap: 0.8rem;
    margin-top: 2.4rem;
    display: flex;
    align-items: center; }
    .banner-pri-video .video-play {
      top: unset;
      left: unset;
      transform: unset;
      position: relative; }
      @media screen and (min-width: 768px) {
        .banner-pri-video .video-play {
          width: 5.6rem;
          height: 5.6rem; } }
      .banner-pri-video .video-play img {
        margin-left: 0.4rem;
        width: 2.1rem;
        height: 2.1rem; }
        @media screen and (max-width: 767px) {
          .banner-pri-video .video-play img {
            width: 1.6rem;
            height: 1.6rem; } }
    .banner-pri-video .text-18 {
      color: white; }
  .banner-pri-img {
    overflow: hidden;
    position: relative;
    padding-top: calc(332 / 592 * 100%); }
    @media screen and (min-width: 1201px) {
      .banner-pri-img:hover img {
        transform: translate(-50%, -50%) scale(1.05); } }
    .banner-pri-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; }

.banner-news {
  position: relative;
  height: calc(100vh - 14.6rem); }
  @media screen and (max-width: 1200px) {
    .banner-news {
      height: auto; } }
  .banner-news .swiper {
    height: 100%; }
    .banner-news .swiper-pagination {
      margin-top: 2rem; }
  .banner-news-home,
  .banner-news .banner-home {
    height: 100%;
    display: flex;
    position: relative; }
    .banner-news-home::before,
    .banner-news .banner-home::before {
      content: "";
      width: 100%;
      display: block;
      padding-top: 56.25%; }
      @media screen and (max-width: 767px) {
        .banner-news-home::before,
        .banner-news .banner-home::before {
          padding-top: 80%; } }
      @media screen and (max-width: 576px) {
        .banner-news-home::before,
        .banner-news .banner-home::before {
          padding-top: 100%; } }
  .banner-news-bg,
  .banner-news .banner-video {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: block;
    position: absolute; }
    .banner-news-bg img,
    .banner-news-bg video,
    .banner-news-bg iframe,
    .banner-news .banner-video img,
    .banner-news .banner-video video,
    .banner-news .banner-video iframe {
      width: 100%;
      object-fit: cover;
      height: 100% !important; }
  .banner-news-position {
    inset: 0;
    z-index: 3;
    width: 100%;
    height: 100%;
    position: absolute; }
  .banner-news-content {
    width: 100%;
    height: 100%;
    color: white;
    text-align: center;
    align-items: center;
    padding-bottom: 6.4rem;
    justify-content: flex-end; }
    @media screen and (max-width: 1024px) {
      .banner-news-content {
        padding-bottom: 3.2rem; } }
    .banner-news-content > * {
      line-height: normal; }
    .banner-news-content .title-80 {
      font-size: 8rem; }
      @media screen and (max-width: 1200px) {
        .banner-news-content .title-80 {
          font-size: 6.4rem; } }
      @media screen and (max-width: 767px) {
        .banner-news-content .title-80 {
          font-size: 4.8rem; } }
      @media screen and (max-width: 576px) {
        .banner-news-content .title-80 {
          font-size: 3.2rem; } }
    @media screen and (max-width: 767px) {
      .banner-news-content .title-40 {
        font-size: 2.4rem; } }
    @media screen and (max-width: 576px) {
      .banner-news-content .title-40 {
        font-size: 2rem; } }
    .banner-news-content .view-link {
      color: white;
      font-size: 2rem;
      margin-top: 2rem; }
      @media only screen and (max-width: 1200px) {
        .banner-news-content .view-link {
          font-size: 1.8rem; } }
      @media only screen and (max-width: 800px) {
        .banner-news-content .view-link {
          font-size: 1.6rem; } }
      @media screen and (max-width: 1200px) {
        .banner-news-content .view-link {
          margin-top: 1.2rem; } }
      .banner-news-content .view-link:after {
        background-color: white; }

.m-info {
  margin: 12rem 0rem 12rem; }
  @media screen and (max-width: 992px) {
    .m-info {
      margin: 6rem 0rem; } }
  @media screen and (max-width: 576px) {
    .m-info {
      margin: 4rem 0rem; } }
  .m-info-slide {
    overflow: hidden;
    position: relative; }
  .m-info-main .m-info-bg {
    padding-top: calc(800 / 1728 * 100%); }
  .m-info-thumb {
    width: 100%;
    cursor: pointer; }
    @media screen and (min-width: 1025px) {
      .m-info-thumb {
        left: 50%;
        z-index: 3;
        bottom: 3.2rem;
        margin: 0 auto;
        max-width: 73.4rem;
        position: absolute;
        transform: translateX(-50%); } }
  @media screen and (min-width: 1025px) and (max-width: 1200px) {
    .m-info-thumb {
      bottom: 1.6rem; } }
    @media screen and (max-width: 1024px) {
      .m-info-thumb {
        padding-top: 1.6rem; } }
    .m-info-thumb .swiper {
      margin: 0 -0.8rem; }
      .m-info-thumb .swiper-slide {
        padding: 0 0.8rem;
        width: calc(100% / 3); }
        @media screen and (max-width: 767px) {
          .m-info-thumb .swiper-slide {
            width: calc(100% / 2.5); } }
        @media screen and (max-width: 576px) {
          .m-info-thumb .swiper-slide {
            width: calc(100% / 1.5); } }
        .m-info-thumb .swiper-slide-thumb-active .m-info-bg {
          opacity: 1;
          border-color: white; }
    .m-info-thumb .m-info-bg {
      opacity: 0.6;
      transition: 0.4s ease-in-out;
      border-radius: 0.4rem;
      padding-top: calc(104 / 226 * 100%); }
      @media screen and (min-width: 1201px) {
        .m-info-thumb .m-info-bg:hover {
          opacity: 1; } }
      @media screen and (min-width: 1025px) {
        .m-info-thumb .m-info-bg {
          border: 0.4rem solid white; } }
  .m-info-bg {
    display: block;
    overflow: hidden;
    position: relative; }
    .m-info-bg img {
      top: 50%;
      left: 50%;
      width: 100%;
      height: 100%;
      object-fit: cover;
      position: absolute;
      transform: translate(-50%, -50%); }

.product-box {
  height: 100%; }
  @media screen and (min-width: 1201px) {
    .product-box:hover .img {
      opacity: 0; }
      .product-box:hover .img-hover {
        opacity: 1; } }
  @media screen and (max-width: 576px) {
    .product-box {
      row-gap: 0.8rem; } }
  .product-box-img {
    display: block;
    position: relative; }
    .product-box-img .img {
      box-shadow: 0 0.8rem 2.4rem 0 rgba(0, 0, 0, 0.1);
      overflow: hidden;
      user-select: none;
      position: relative;
      border-radius: 0.2rem;
      transition: opacity 0.4s;
      padding-top: calc(1 / 1 * 100%); }
      .product-box-img .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; }
      .product-box-img .img-hover {
        top: 0;
        opacity: 0;
        width: 100%;
        position: absolute; }
    .product-box-img .hot {
      top: 0.8rem;
      left: 0.8rem;
      right: 0.8rem;
      padding: 0.8rem;
      position: absolute;
      width: fit-content;
      background-color: #96171a; }
      @media screen and (max-width: 767px) {
        .product-box-img .hot {
          padding: 0.4rem; } }
      .product-box-img .hot .text-14 {
        color: white;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        overflow: hidden;
        line-clamp: 1;
        -webkit-line-clamp: 1; }
        @media screen and (max-width: 767px) {
          .product-box-img .hot .text-14 {
            font-size: 1.2rem; } }
  .product-box-content {
    height: 100%; }
    .product-box-content .title-28 {
      line-height: 130%;
      width: fit-content;
      transition: 0.4s ease-in-out; }
      @media screen and (min-width: 1201px) {
        .product-box-content .title-28:hover {
          color: #96171a; } }
      @media screen and (max-width: 576px) {
        .product-box-content .title-28 {
          font-size: 1.8rem; } }
    .product-box-content .text-18 {
      color: #999;
      line-height: 150%; }
      @media screen and (max-width: 576px) {
        .product-box-content .text-18 {
          font-size: 1.4rem; } }

.list-project {
  padding: 6rem 0rem 6rem; }
  @media screen and (max-width: 992px) {
    .list-project {
      padding: 6rem 0rem; } }
  @media screen and (max-width: 576px) {
    .list-project {
      padding: 4rem 0rem; } }
  .list-project-list {
    --letter-spacing: 1.6rem;
    display: flex;
    flex-wrap: wrap;
    row-gap: 3.2rem;
    margin: 0 calc(-1 * var(--letter-spacing)); }
    @media screen and (max-width: 1200px) {
      .list-project-list {
        row-gap: 1.6rem;
        --letter-spacing: 0.8rem; } }
    @media screen and (max-width: 576px) {
      .list-project-list {
        row-gap: 0.8rem;
        --letter-spacing: 0.4rem; } }
  .list-project-item {
    width: calc(100% / 3);
    padding: 0 var(--letter-spacing); }
    @media screen and (max-width: 1024px) {
      .list-project-item {
        width: calc(100% / 2); } }
  .list-project-box {
    height: 100%;
    cursor: pointer; }
    @media screen and (min-width: 1201px) {
      .list-project-box:hover img {
        transform: translate(-50%, -50%) scale(1.05); } }
  .list-project-img {
    display: block;
    overflow: hidden;
    position: relative;
    padding-top: calc(272 / 432 * 100%); }
    .list-project-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; }
  .list-project-content {
    row-gap: 0.2rem; }
    .list-project-content .text-20 {
      line-height: 140%;
      transition: 0.4s ease-in-out; }
      @media screen and (min-width: 1201px) {
        .list-project-content .text-20:hover {
          color: #96171a; } }
    .list-project-content .text-16 {
      line-height: 160%; }

.related-project {
  margin: 12rem 0rem 6rem; }
  @media screen and (max-width: 992px) {
    .related-project {
      margin: 6rem 0rem; } }
  @media screen and (max-width: 576px) {
    .related-project {
      margin: 4rem 0rem; } }
  .related-project-heading {
    gap: 1.6rem;
    display: flex;
    align-items: center;
    justify-content: space-between; }
    @media screen and (max-width: 991px) {
      .related-project-heading {
        justify-content: center; } }
    @media screen and (max-width: 991px) {
      .related-project-heading > .btn,
      .related-project-heading .swiper-navigation {
        display: none; } }
  .related-project-swiper {
    position: relative;
    --letter-spacing: 0.8rem; }
    @media screen and (max-width: 767px) {
      .related-project-swiper {
        --letter-spacing: 0.4rem; } }
    .related-project-swiper .swiper {
      margin: 0 calc(-1 * var(--letter-spacing)); }
      .related-project-swiper .swiper-slide {
        height: auto;
        width: calc(100% / 4);
        padding: 0 var(--letter-spacing); }
        @media screen and (max-width: 1200px) {
          .related-project-swiper .swiper-slide {
            width: calc(100% / 3); } }
        @media screen and (max-width: 767px) {
          .related-project-swiper .swiper-slide {
            width: calc(100% / 1.5); } }
  @media screen and (min-width: 992px) {
    .related-project-inner > .btn {
      display: none; } }
  .related-project .btn {
    border-color: #96171a; }
  .related-project .list-project-img {
    padding-top: calc(400 / 320 * 100%); }

.p-home .m-news {
  padding: 0;
  margin: 12rem 0rem 12rem; }
  @media screen and (max-width: 992px) {
    .p-home .m-news {
      margin: 6rem 0rem; } }
  @media screen and (max-width: 576px) {
    .p-home .m-news {
      margin: 4rem 0rem; } }

.p-home .m-product-list {
  --letter-spacing: 0.8rem;
  display: flex;
  flex-wrap: wrap;
  row-gap: 2.4rem;
  margin: 0 calc(-1 * var(--letter-spacing)); }
  @media screen and (max-width: 767px) {
    .p-home .m-product-list {
      --letter-spacing: 0.4rem; } }

.p-home .m-product-item {
  width: calc(100% / 4);
  padding: 0 var(--letter-spacing); }
  @media screen and (max-width: 1200px) {
    .p-home .m-product-item {
      width: calc(100% / 3); } }
  @media screen and (max-width: 576px) {
    .p-home .m-product-item {
      width: calc(100% / 2); } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9tZS5jc3MiLCJzb3VyY2VzIjpbImhvbWUuc2NzcyIsIl9jb3JlL19mb250LnNjc3MiLCJfY29yZS9fbWl4aW4uc2NzcyIsIl9jb3JlL192YXJpYWJsZS5zY3NzIiwiX2xheW91dHMvX3R5cGUuc2NzcyIsIl9sYXlvdXRzL19uZXdzLnNjc3MiLCJfbGF5b3V0cy9fcG9wdXAuc2NzcyIsIl9sYXlvdXRzL19maWx0ZXIuc2NzcyIsIl9sYXlvdXRzL19iYW5uZXIuc2NzcyIsIl9sYXlvdXRzL19tLWluZm8uc2NzcyIsIl9sYXlvdXRzL19wcm9kdWN0LnNjc3MiLCJfbGF5b3V0cy9fbGlzdC1wcm9qZWN0LnNjc3MiLCJfbGF5b3V0cy9fcmVsYXRlZC1wcm9qZWN0LnNjc3MiLCJfcGFnZXMvX2hvbWUuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3JlXHJcbkBpbXBvcnQgXCJfY29yZS9mb250XCI7XHJcbkBpbXBvcnQgXCJfY29yZS9taXhpblwiO1xyXG5AaW1wb3J0IFwiX2NvcmUvdmFyaWFibGVcIjtcclxuXHJcbi8vIExheW91dFxyXG5AaW1wb3J0IFwiX2xheW91dHMvdHlwZVwiO1xyXG5AaW1wb3J0IFwiX2xheW91dHMvbmV3c1wiO1xyXG5AaW1wb3J0IFwiX2xheW91dHMvcG9wdXBcIjtcclxuQGltcG9ydCBcIl9sYXlvdXRzL2ZpbHRlclwiO1xyXG5AaW1wb3J0IFwiX2xheW91dHMvYmFubmVyXCI7XHJcbkBpbXBvcnQgXCJfbGF5b3V0cy9tLWluZm9cIjtcclxuQGltcG9ydCBcIl9sYXlvdXRzL3Byb2R1Y3RcIjtcclxuQGltcG9ydCBcIl9sYXlvdXRzL2xpc3QtcHJvamVjdFwiO1xyXG5AaW1wb3J0IFwiX2xheW91dHMvcmVsYXRlZC1wcm9qZWN0XCI7XHJcblxyXG4vLyBQYWdlc1xyXG5AaW1wb3J0IFwiX3BhZ2VzL2hvbWVcIjtcclxuIiwiQG1peGluIGZ6LTIwMCB7XG4gIGZvbnQtc2l6ZTogMjByZW07XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICBmb250LXNpemU6IDE1cmVtO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGZvbnQtc2l6ZTogMTByZW07XG4gIH1cbn1cblxuQG1peGluIGZ6LTkwIHtcbiAgZm9udC1zaXplOiA5cmVtO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgZm9udC1zaXplOiA2cmVtO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGZvbnQtc2l6ZTogNC41cmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei03MiB7XG4gIGZvbnQtc2l6ZTogNy4ycmVtO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgZm9udC1zaXplOiA1cmVtO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGZvbnQtc2l6ZTogNHJlbTtcbiAgfVxufVxuXG5AbWl4aW4gZnotNjUge1xuICBmb250LXNpemU6IDYuNXJlbTtcblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIGZvbnQtc2l6ZTogNHJlbTtcbiAgfVxuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcbiAgICBmb250LXNpemU6IDNyZW07XG4gIH1cbn1cblxuQG1peGluIGZ6LTY0IHtcbiAgZm9udC1zaXplOiA2LjRyZW07XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICBmb250LXNpemU6IDMuOXJlbTtcbiAgfVxuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcbiAgICBmb250LXNpemU6IDIuOXJlbTtcbiAgfVxufVxuXG5AbWl4aW4gZnotNjAge1xuICBmb250LXNpemU6IDZyZW07XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICBmb250LXNpemU6IDMuNXJlbTtcbiAgfVxuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcbiAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgfVxufVxuXG5AbWl4aW4gZnotNTYge1xuICBmb250LXNpemU6IDUuNnJlbTtcblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIGZvbnQtc2l6ZTogNS4xcmVtO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGZvbnQtc2l6ZTogNHJlbTtcbiAgfVxufVxuXG5AbWl4aW4gZnotNTUge1xuICBmb250LXNpemU6IDUuNXJlbTtcblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIGZvbnQtc2l6ZTogNXJlbTtcbiAgfVxuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcbiAgICBmb250LXNpemU6IDMuOXJlbTtcbiAgfVxufVxuXG5AbWl4aW4gZnotNTAge1xuICBmb250LXNpemU6IDVyZW07XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICBmb250LXNpemU6IDQuNXJlbTtcbiAgfVxuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcbiAgICBmb250LXNpemU6IDMuNHJlbTtcbiAgfVxufVxuXG5AbWl4aW4gZnotNDgge1xuICBmb250LXNpemU6IDQuOHJlbTtcblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIGZvbnQtc2l6ZTogNC4zcmVtO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGZvbnQtc2l6ZTogMy4zcmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei00NSB7XG4gIGZvbnQtc2l6ZTogNC41cmVtO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgZm9udC1zaXplOiA0cmVtO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgfVxufVxuXG5AbWl4aW4gZnotNDIge1xuICBmb250LXNpemU6IDQuMnJlbTtcblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIGZvbnQtc2l6ZTogMy41cmVtO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGZvbnQtc2l6ZTogMi43cmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei00MCB7XG4gIGZvbnQtc2l6ZTogNHJlbTtcblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIGZvbnQtc2l6ZTogMy41cmVtO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGZvbnQtc2l6ZTogMi43cmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei0zOCB7XG4gIGZvbnQtc2l6ZTogMy44cmVtO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgZm9udC1zaXplOiAzLjRyZW07XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gICAgZm9udC1zaXplOiAyLjZyZW07XG4gIH1cbn1cblxuQG1peGluIGZ6LTM2IHtcbiAgZm9udC1zaXplOiAzLjZyZW07XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICBmb250LXNpemU6IDMuMXJlbTtcbiAgfVxuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcbiAgICBmb250LXNpemU6IDIuNnJlbTtcbiAgfVxufVxuXG5AbWl4aW4gZnotMzUge1xuICBmb250LXNpemU6IDMuNXJlbTtcblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgfVxuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcbiAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgfVxufVxuXG5AbWl4aW4gZnotMzQge1xuICBmb250LXNpemU6IDMuNHJlbTtcblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIGZvbnQtc2l6ZTogMi45cmVtO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGZvbnQtc2l6ZTogMi40cmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei0zMiB7XG4gIGZvbnQtc2l6ZTogMy4ycmVtO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgZm9udC1zaXplOiAyLjdyZW07XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gICAgZm9udC1zaXplOiAyLjJyZW07XG4gIH1cbn1cblxuQG1peGluIGZ6LTMwIHtcbiAgZm9udC1zaXplOiAzcmVtO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgZm9udC1zaXplOiAyLjdyZW07XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gICAgZm9udC1zaXplOiAyLjRyZW07XG4gIH1cbn1cblxuQG1peGluIGZ6LTI5IHtcbiAgZm9udC1zaXplOiAyLjlyZW07XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICBmb250LXNpemU6IDIuNnJlbTtcbiAgfVxuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcbiAgICBmb250LXNpemU6IDIuM3JlbTtcbiAgfVxufVxuXG5AbWl4aW4gZnotMjgge1xuICBmb250LXNpemU6IDIuOHJlbTtcblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIGZvbnQtc2l6ZTogMi40cmVtO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGZvbnQtc2l6ZTogMi4xcmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei0yNiB7XG4gIGZvbnQtc2l6ZTogMi42cmVtO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgZm9udC1zaXplOiAyLjJyZW07XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gICAgZm9udC1zaXplOiAxLjlyZW07XG4gIH1cbn1cblxuQG1peGluIGZ6LTI1IHtcbiAgZm9udC1zaXplOiAyLjVyZW07XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICBmb250LXNpemU6IDIuMXJlbTtcbiAgfVxuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcbiAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgfVxufVxuXG5AbWl4aW4gZnotMjQge1xuICBmb250LXNpemU6IDIuNHJlbTtcblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgfVxuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcbiAgICBmb250LXNpemU6IDEuN3JlbTtcbiAgfVxufVxuXG5AbWl4aW4gZnotMjIge1xuICBmb250LXNpemU6IDIuMnJlbTtcblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgfVxuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcbiAgICBmb250LXNpemU6IDEuOXJlbTtcbiAgfVxufVxuXG5AbWl4aW4gZnotMjAge1xuICBmb250LXNpemU6IDJyZW07XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgfVxuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcbiAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgfVxufVxuXG5AbWl4aW4gZnotMTkge1xuICBmb250LXNpemU6IDEuOXJlbTtcblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIGZvbnQtc2l6ZTogMS43cmVtO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei0xOCB7XG4gIGZvbnQtc2l6ZTogMS44cmVtO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgZm9udC1zaXplOiAxLjZyZW07XG4gIH1cbn1cblxuQG1peGluIGZ6LTE2IHtcbiAgZm9udC1zaXplOiAxLjZyZW07XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei0xNSB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xufVxuXG5AbWl4aW4gZnotMTQge1xuICBmb250LXNpemU6IDEuNHJlbTtcbn1cblxuQG1peGluIGZ6LTEzIHtcbiAgZm9udC1zaXplOiAxLjNyZW07XG59XG5cbkBtaXhpbiBmei0xMiB7XG4gIGZvbnQtc2l6ZTogMS4ycmVtO1xufVxuXG5AbWl4aW4gZnotMTEge1xuICBmb250LXNpemU6IDEuMXJlbTtcbn1cblxuQG1peGluIGZ6LTEwIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG5AbWl4aW4gZnotOSB7XG4gIGZvbnQtc2l6ZTogMC45cmVtO1xufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHRNZWRpYVxyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG5AbWl4aW4gbWF4KCRwb2ludCkge1xyXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRwb2ludCkge1xyXG4gICAgQGNvbnRlbnQ7XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gbWluKCRwb2ludCkge1xyXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRwb2ludCkge1xyXG4gICAgQGNvbnRlbnQ7XHJcbiAgfVxyXG59XHJcblxyXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cdEZsZXggQm94XHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbkBtaXhpbiBmbGV4IHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtd3JhcDogd3JhcDtcclxufVxyXG5cclxuQG1peGluIGZsZXgtY2VudGVyIHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtd3JhcDogd3JhcDtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG5AbWl4aW4gZmxleC1pY2VudGVyIHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuXHJcbkBtaXhpbiBmbGV4LWpjZW50ZXIge1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbn1cclxuXHJcbkBtaXhpbiBmbGV4LWpiZXR3ZWVuIHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxufVxyXG5cclxuQG1peGluIGJnSW1hZ2UoJHBvc2l0aW9uOiBjZW50ZXIsICRzaXplOiBjb3ZlciwgJHJlcGVhdDogbm8tcmVwZWF0KSB7XHJcbiAgYmFja2dyb3VuZC1zaXplOiAkc2l6ZTtcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogJHJlcGVhdDtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkcG9zaXRpb247XHJcbn1cclxuXHJcbkBtaXhpbiB0cmFuc2l0aW9uKCRzOiAwLjRzKSB7XHJcbiAgdHJhbnNpdGlvbjogJHMgZWFzZS1pbi1vdXQ7XHJcbn1cclxuXHJcbkBtaXhpbiBib3goJHdpZHRoLCAkaGVpZ2h0OiAkd2lkdGgpIHtcclxuICB3aWR0aDogJHdpZHRoO1xyXG4gIGhlaWdodDogJGhlaWdodDtcclxufVxyXG5cclxuQG1peGluIGltZ0NvdmVyIHtcclxuICB0b3A6IDUwJTtcclxuICBsZWZ0OiA1MCU7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG4gIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxufVxyXG5cclxuQG1peGluIGltZ0NvbnRhaW4ge1xyXG4gIHRvcDogNTAlO1xyXG4gIGxlZnQ6IDUwJTtcclxuICB3aWR0aDogMTAwJTtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIG9iamVjdC1maXQ6IGNvbnRhaW47XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbn1cclxuXHJcbkBtaXhpbiBsaW5lQ2xhbXAoJGxpbmU6IDIsICRkaXNwbGF5OiB0cnVlKSB7XHJcbiAgQGlmICRkaXNwbGF5IHtcclxuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xyXG4gICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgfVxyXG5cclxuICBsaW5lLWNsYW1wOiAkbGluZTtcclxuICAtd2Via2l0LWxpbmUtY2xhbXA6ICRsaW5lO1xyXG59XHJcblxyXG5AbWl4aW4gc2hhZG93IHtcclxuICBib3gtc2hhZG93OiAwIDAuOHJlbSAyLjRyZW0gMCByZ2JhKDAsIDAsIDAsIDAuMSk7XHJcbn1cclxuXHJcbkBtaXhpbiBmaWx0ZXItcHJpIHtcclxuICBmaWx0ZXI6IGJyaWdodG5lc3MoMCkgc2F0dXJhdGUoMTAwJSkgaW52ZXJ0KDE4JSkgc2VwaWEoNTUlKSBzYXR1cmF0ZSgyOTE0JSkgaHVlLXJvdGF0ZSgzMzlkZWcpIGJyaWdodG5lc3MoODklKVxyXG4gICAgY29udHJhc3QoMTA1JSk7XHJcbn1cclxuXHJcbkBtaXhpbiBmaWx0ZXItYmxhY2sge1xyXG4gIGZpbHRlcjogYnJpZ2h0bmVzcygwKSBzYXR1cmF0ZSgxMDAlKSBpbnZlcnQoNiUpIHNlcGlhKDAlKSBzYXR1cmF0ZSgyOTk2JSkgaHVlLXJvdGF0ZSg1ZGVnKSBicmlnaHRuZXNzKDk2JSlcclxuICAgIGNvbnRyYXN0KDk2JSk7XHJcbn1cclxuXHJcbkBtaXhpbiBwb3NDZW50ZXIge1xyXG4gIHRvcDogNTAlO1xyXG4gIGxlZnQ6IDUwJTtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbn1cclxuXHJcbkBtaXhpbiBtYXJnaW4oJG1hcmdpbjEsICRtYXJnaW4yOiAkbWFyZ2luMSkge1xyXG4gIG1hcmdpbjogJG1hcmdpbjEgMHJlbSAkbWFyZ2luMjtcclxuXHJcbiAgQGluY2x1ZGUgbWF4KDk5MnB4KSB7XHJcbiAgICBtYXJnaW46IDZyZW0gMHJlbTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1heCg1NzZweCkge1xyXG4gICAgbWFyZ2luOiA0cmVtIDByZW07XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gcGFkZGluZygkcGFkZGluZzEsICRwYWRkaW5nMjogJHBhZGRpbmcxKSB7XHJcbiAgcGFkZGluZzogJHBhZGRpbmcxIDByZW0gJHBhZGRpbmcyO1xyXG5cclxuICBAaW5jbHVkZSBtYXgoOTkycHgpIHtcclxuICAgIHBhZGRpbmc6IDZyZW0gMHJlbTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1heCg1NzZweCkge1xyXG4gICAgcGFkZGluZzogNHJlbSAwcmVtO1xyXG4gIH1cclxufVxyXG4iLCI6cm9vdCB7XHJcbiAgLS1mb250LXByaTogXCJNb25hIFNhbnNcIiwgc2Fucy1zZXJpZjtcclxuICAtLWZvbnQtdGl0bGU6IFwiVEFTQSBMZXhlbmRcIiwgc2Fucy1zZXJpZjtcclxuXHJcbiAgLS1oZWFkZXItaW5kZXg6IDk5O1xyXG4gIC0taGVhZGVyLWZpeGVkOiA4cmVtO1xyXG4gIC0taGVhZGVyLWhlaWdodDogOS42cmVtO1xyXG59XHJcblxyXG4kY29sb3ItcHJpOiAjOTYxNzFhO1xyXG4kY29sb3Itc2VjOiAjZWMxZDIzO1xyXG4kY29sb3ItdGV4dDogIzEzMTMxMztcclxuJGNvbG9yLWJnOiAjZmRmZGZkO1xyXG5cclxuJGNvbG9yLWJsYWNrOiBibGFjaztcclxuJGNvbG9yLXdoaXRlOiB3aGl0ZTtcclxuIiwiLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi50eXBlIHtcbiAgQGluY2x1ZGUgbWFyZ2luKDRyZW0sIDEycmVtKTtcblxuICAmLWxpc3Qge1xuICAgIC0tbGV0dGVyLXNwYWNpbmc6IDAuOHJlbTtcblxuICAgIEBpbmNsdWRlIGZsZXg7XG4gICAgcm93LWdhcDogMS42cmVtO1xuICAgIG1hcmdpbjogMCBjYWxjKC0xICogdmFyKC0tbGV0dGVyLXNwYWNpbmcpKTtcblxuICAgIEBpbmNsdWRlIG1heCg3NjdweCkge1xuICAgICAgcm93LWdhcDogMC44cmVtO1xuICAgICAgLS1sZXR0ZXItc3BhY2luZzogMC40cmVtO1xuICAgIH1cbiAgfVxuXG4gICYtaXRlbSB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAvIDQpO1xuICAgIHBhZGRpbmc6IDAgdmFyKC0tbGV0dGVyLXNwYWNpbmcpO1xuXG4gICAgQGluY2x1ZGUgbWF4KDk5MXB4KSB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC8gMyk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWF4KDc2N3B4KSB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC8gMik7XG4gICAgfVxuICB9XG5cbiAgJi1ib3gge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgYm9yZGVyLXJhZGl1czogMC4ycmVtO1xuXG4gICAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIEBpbmNsdWRlIHNoYWRvdztcblxuICAgICAgICBpbWcge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHNjYWxlKDEuMDUpO1xuICAgICAgICB9XG5cbiAgICAgICAgLnR5cGUtY29udGVudCAudGl0bGUtMjQge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgY29sb3I6ICRjb2xvci1wcmk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLWltZyB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy10b3A6IGNhbGMoMSAvIDEgKiAxMDAlKTtcblxuICAgIGltZyB7XG4gICAgICBAaW5jbHVkZSBpbWdDb3ZlcjtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgfVxuICB9XG5cbiAgJi1jb250ZW50IHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDEuNnJlbSAycmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMGYwZjA7XG5cbiAgICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XG4gICAgICBwYWRkaW5nOiAxLjJyZW07XG4gICAgfVxuXG4gICAgLnRpdGxlLTI0IHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxMzMlO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcblxuICAgICAgQGluY2x1ZGUgbWF4KDU3NnB4KSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5tLW5ld3Mge1xuICBAaW5jbHVkZSBwYWRkaW5nKDEwcmVtKTtcblxuICAmLWhlYWRpbmcge1xuICAgIGdhcDogNHJlbTtcbiAgICBAaW5jbHVkZSBmbGV4LWljZW50ZXI7XG5cbiAgICBAaW5jbHVkZSBtYXgoMTAyNHB4KSB7XG4gICAgICBnYXA6IDIuNHJlbTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtYXgoOTkxcHgpIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgfVxuXG4gICAgJl90YWIge1xuICAgICAgZ2FwOiA0cmVtO1xuICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIEBpbmNsdWRlIGZsZXgtaWNlbnRlcjtcblxuICAgICAgQGluY2x1ZGUgbWluKDU3N3B4KSB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtYXgoMTAyNHB4KSB7XG4gICAgICAgIGdhcDogMi40cmVtO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtYXgoOTkxcHgpIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgb3ZlcmZsb3c6IGF1dG8gaGlkZGVuO1xuXG4gICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC50ZXh0LTEyIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEzMyU7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDAuNnJlbTtcblxuICAgICAgICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLXByaTtcblxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDIuOHJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtYXgoNTc2cHgpIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICBoZWlnaHQ6IDAuMXJlbTtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXByaTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuYWN0aXZlIHtcbiAgICAgICAgLnRleHQtMTIge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgY29sb3I6ICRjb2xvci1wcmk7XG5cbiAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgd2lkdGg6IDIuOHJlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX2J0biB7XG4gICAgICBAaW5jbHVkZSBtYXgoNTc2cHgpIHtcbiAgICAgICAgZmxleDogMTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGl0bGUtd2l0aC1kZXNjIHtcbiAgICAgIEBpbmNsdWRlIG1heCg5OTFweCkge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG5cbiAgICAgIC50aXRsZS00MCB7XG4gICAgICAgIEBpbmNsdWRlIG1heCg0MTBweCkge1xuICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgIG1heC13aWR0aDogMjhyZW07XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnRleHQtMTIge1xuICAgICAgICBAaW5jbHVkZSBtYXgoOTkxcHgpIHtcbiAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgID4gLmJ0biB7XG4gICAgICBAaW5jbHVkZSBtYXgoOTkxcHgpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLWJveCB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIC5pbWcgaW1nIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSBzY2FsZSgxLjA1KTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5tLW5ld3MtY29udGVudCAudGV4dC0yMCB7XG4gICAgICAgICAgY29sb3I6ICRjb2xvci1wcmk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtYXgoNzY3cHgpIHtcbiAgICAgIHJvdy1nYXA6IDEuNnJlbTtcbiAgICB9XG4gIH1cblxuICAmLWltZyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgLmltZyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nLXRvcDogY2FsYyg0MTIgLyA2NTYgKiAxMDAlKTtcblxuICAgICAgaW1nIHtcbiAgICAgICAgQGluY2x1ZGUgaW1nQ292ZXI7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNhdGUge1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luOiAwLjhyZW07XG4gICAgICBwYWRkaW5nOiAwLjhyZW07XG4gICAgICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMnJlbSk7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjUpO1xuXG4gICAgICBAaW5jbHVkZSBtYXgoNTc2cHgpIHtcbiAgICAgICAgcGFkZGluZzogMC40cmVtO1xuICAgICAgfVxuXG4gICAgICAudGV4dC0xNCB7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEzMCU7XG4gICAgICAgIEBpbmNsdWRlIGxpbmVDbGFtcCgxKTtcbiAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtdGl0bGUpO1xuXG4gICAgICAgIEBpbmNsdWRlIG1heCg1NzZweCkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBtYXgoNTc2cHgpIHtcbiAgICAgIHJvdy1nYXA6IDEuMnJlbTtcbiAgICB9XG5cbiAgICAuY2FsZW5kYXIge1xuICAgICAgZ2FwOiAwLjhyZW07XG4gICAgICBAaW5jbHVkZSBmbGV4LWljZW50ZXI7XG5cbiAgICAgIGltZyB7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICBAaW5jbHVkZSBib3goMS42cmVtKTtcbiAgICAgIH1cblxuICAgICAgLnRleHQtMTIge1xuICAgICAgICBjb2xvcjogIzY1NjU2NTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGV4dC0yMCB7XG4gICAgICBsaW5lLWhlaWdodDogMTQwJTtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG5cbiAgICAgIEBpbmNsdWRlIG1heCg1NzZweCkge1xuICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLXN3aXBlciB7XG4gICAgLnN3aXBlciB7XG4gICAgICBtYXJnaW46IDAgLTAuOHJlbTtcblxuICAgICAgJi1zbGlkZSB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgcGFkZGluZzogMCAwLjhyZW07XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAzKTtcblxuICAgICAgICBAaW5jbHVkZSBtYXgoOTkxcHgpIHtcbiAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC8gMi41KTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1heCg3NjdweCkge1xuICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAyKTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1heCg1NzZweCkge1xuICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAxLjUpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYtcGFnaW5hdGlvbiB7XG4gICAgICAgIEBpbmNsdWRlIG1pbigxMjAxcHgpIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgPiAuYnRuIHtcbiAgICAgIG1hcmdpbi10b3A6IDRyZW07XG5cbiAgICAgIEBpbmNsdWRlIG1pbig5OTJweCkge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtYXgoNTc2cHgpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMi40cmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5idG4ge1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLXByaTtcbiAgfVxufVxuIiwiLnBvcHVwIHtcbiAgaW5zZXQ6IDA7XG4gIHotaW5kZXg6IDEwMTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgJi5vcGVuIHtcbiAgICAucG9wdXAtb3ZlcmxheSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB9XG5cbiAgICAucG9wdXAtbWFpbiB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB9XG4gIH1cblxuICAud3BjZjctcmVzcG9uc2Utb3V0cHV0IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICAmLWNsb3NlIHtcbiAgICB0b3A6IDJyZW07XG4gICAgei1pbmRleDogNTtcbiAgICByaWdodDogMnJlbTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMC41cmVtKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjUpO1xuXG4gICAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xuICAgICAgdG9wOiAxcmVtO1xuICAgICAgcmlnaHQ6IDFyZW07XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItdGV4dDtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgQGluY2x1ZGUgYm94KDJyZW0pO1xuICAgICAgZmlsdGVyOiBicmlnaHRuZXNzKDApIGludmVydCgxKTtcbiAgICB9XG4gIH1cblxuICAmLW92ZXJsYXkge1xuICAgIGluc2V0OiAwO1xuICAgIHotaW5kZXg6IDE7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xuICB9XG5cbiAgJi1tYWluIHtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgei1pbmRleDogMjtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgcGFkZGluZzogMS42cmVtO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgbWF4LXdpZHRoOiAxMjQuNnJlbTtcbiAgICBoZWlnaHQ6IGZpdC1jb250ZW50O1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgb3ZlcmZsb3c6IGhpZGRlbiBhdXRvO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIH1cblxuICAmLXdyYXAge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC5tLWNvbnRhY3Qtd3JhcCB7XG4gICAgICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi1vdmVyIHtcbiAgICBtaW4taGVpZ2h0OiA4MHZoO1xuICAgIG1heC1oZWlnaHQ6IDg1dmg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW4gYXV0bztcblxuICAgICY6aGFzKC5wb3B1cC1ub3RpKSB7XG4gICAgICBAaW5jbHVkZSBtYXgoMTAyNHB4KSB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDY1dmg7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1heCg3NjdweCkge1xuICAgICAgICBtaW4taGVpZ2h0OiA0NXZoO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYtY29udGFjdCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaXNvbGF0aW9uOiBpc29sYXRlO1xuICAgIGJvcmRlci1yYWRpdXM6IDEuNnJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogNS42cmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1iZztcblxuICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyLjRyZW07XG4gICAgfVxuXG4gICAgJi1iZyB7XG4gICAgICB6LWluZGV4OiAtMTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHBhZGRpbmctdG9wOiBjYWxjKDQyMCAvIDEyMTYgKiAxMDAlKTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYm90dG9tOiAtMC4ycmVtO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDAlLCAjZmZmIDEwMCUpO1xuICAgICAgfVxuXG4gICAgICBpbWcge1xuICAgICAgICBAaW5jbHVkZSBpbWdDb3ZlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLXBvc2l0aW9uIHtcbiAgICAgIHotaW5kZXg6IDM7XG4gICAgICBwYWRkaW5nOiAwIDUuNnJlbTtcbiAgICAgIG1hcmdpbi10b3A6IC0xNnJlbTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xuICAgICAgICBwYWRkaW5nOiAwIDIuNHJlbTtcbiAgICAgICAgbWFyZ2luLXRvcDogLTEwcmVtO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtYXgoNTc2cHgpIHtcbiAgICAgICAgcGFkZGluZzogMCAxLjZyZW07XG4gICAgICAgIG1hcmdpbi10b3A6IC01cmVtO1xuICAgICAgfVxuICAgIH1cblxuICAgICYtcm93IHtcbiAgICAgIGFsaWduLWl0ZW1zOiBlbmQ7XG4gICAgfVxuXG4gICAgJi1jb2wge1xuICAgICAgQGluY2x1ZGUgbWF4KDc2N3B4KSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgIH1cblxuICAgICYtaW5mbyB7XG4gICAgICAmX2hlYWRpbmcge1xuICAgICAgICAudGl0bGUtNDAge1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNDAlO1xuXG4gICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLXByaTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJl9pbWcge1xuICAgICAgICBtYXgtd2lkdGg6IDEwcmVtO1xuICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgIEBpbmNsdWRlIGZpbHRlci1wcmk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgPiAuYnRuIHtcbiAgICAgICAgQGluY2x1ZGUgbWF4KDc2N3B4KSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYtZm9ybSB7XG4gICAgICBtYXgtd2lkdGg6IDUycmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG5cbiAgICAgIEBpbmNsdWRlIG1heCg3NjdweCkge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICB9XG5cbiAgICAgIGZvcm0ge1xuICAgICAgICAuZm9ybS1hY3Rpb24ge1xuICAgICAgICAgIEBpbmNsdWRlIG1pbig3NjhweCkge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLXByb2R1Y3Qge1xuICAgICAgJl9ib3gge1xuICAgICAgICBnYXA6IDEuMnJlbTtcbiAgICAgICAgQGluY2x1ZGUgZmxleC1pY2VudGVyO1xuICAgICAgfVxuXG4gICAgICAmX2ltZyB7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuXG4gICAgICAgIC5pbWcge1xuICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgICAgQGluY2x1ZGUgYm94KDhyZW0pO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAuMnJlbTtcblxuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmX2NvbnRlbnQge1xuICAgICAgICA+ICoge1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNzUlO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5hbWUge1xuICAgICAgICAgIGNvbG9yOiAkY29sb3ItcHJpO1xuXG4gICAgICAgICAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYtbm90aSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBpc29sYXRpb246IGlzb2xhdGU7XG4gICAgYm9yZGVyLXJhZGl1czogMS42cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAxM3JlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYmc7XG5cbiAgICBAaW5jbHVkZSBtYXgoOTkycHgpIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA4cmVtO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1heCg3NjdweCkge1xuICAgICAgcGFkZGluZy1ib3R0b206IDRyZW07XG4gICAgfVxuXG4gICAgJi1jb250ZW50IHtcbiAgICAgICZfaGVhZGluZyB7XG4gICAgICAgIC50aXRsZS0zMiB7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE1MCU7XG5cbiAgICAgICAgICBAaW5jbHVkZSBtYXgoNDAwcHgpIHtcbiAgICAgICAgICAgIGJyIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItcHJpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmX2ltZyB7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBtYXgtd2lkdGg6IDEwcmVtO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgQGluY2x1ZGUgZmlsdGVyLXByaTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5wb3B1cC1jb250YWN0LXBvc2l0aW9uIHtcbiAgICAgIG1hcmdpbi10b3A6IC04cmVtO1xuICAgIH1cbiAgfVxuXG4gICYtcHJvZHVjdCB7XG4gICAgZm9ybSB7XG4gICAgICAuZm9ybS1hY3Rpb24ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmOmhhcygucG9wdXAtcHJvamVjdCkge1xuICAgIC5wb3B1cC1tYWluIHtcbiAgICAgIG1heC13aWR0aDogMTMyLjZyZW07XG4gICAgfVxuXG4gICAgLnBvcHVwLWNsb3NlIHtcbiAgICAgIHRvcDogLTFyZW07XG4gICAgICByaWdodDogLTFyZW07XG4gICAgfVxuXG4gICAgLnBvcHVwLW92ZXIge1xuICAgICAgb3ZlcmZsb3c6IHVuc2V0O1xuICAgIH1cbiAgfVxuXG4gICYtcHJvamVjdCB7XG4gICAgJi1zbGlkZSB7XG4gICAgICAtLWxldHRlci1zcGFjaW5nOiAwLjhyZW07XG5cbiAgICAgIC5zd2lwZXIge1xuICAgICAgICBtYXJnaW46IDAgY2FsYygtMSAqIHZhcigtLWxldHRlci1zcGFjaW5nKSk7XG5cbiAgICAgICAgJi1zbGlkZSB7XG4gICAgICAgICAgcGFkZGluZzogMCB2YXIoLS1sZXR0ZXItc3BhY2luZyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLW1haW4ge1xuICAgICAgLnBvcHVwLXByb2plY3QtaW1nIHtcbiAgICAgICAgcGFkZGluZy10b3A6IGNhbGMoNjAwIC8gMTMyOCAqIDEwMCUpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYtdGh1bWIge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1heC13aWR0aDogNzYuOHJlbTtcblxuICAgICAgLnN3aXBlciB7XG4gICAgICAgICYtc2xpZGUge1xuICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAzKTtcblxuICAgICAgICAgIEBpbmNsdWRlIG1heCg1NzZweCkge1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDIpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtbmF2aWdhdGlvbiB7XG4gICAgICAgICAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLXByZXYge1xuICAgICAgICAgICAgbGVmdDogLTUuMnJlbTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWF4KDEzNjZweCkge1xuICAgICAgICAgICAgICBsZWZ0OiAtMS42cmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLW5leHQge1xuICAgICAgICAgICAgcmlnaHQ6IC01LjJyZW07XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1heCgxMzY2cHgpIHtcbiAgICAgICAgICAgICAgcmlnaHQ6IC0xLjZyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICA+ICoge1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICB6LWluZGV4OiA1O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcblxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGJveCgyLjRyZW0pO1xuICAgICAgICAgICAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMCkgaW52ZXJ0KDEpO1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi8uLi9hc3NldHMvaW1hZ2VzL2ljb25zL2ljb24tY2hldnJvbi5zdmdcIik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5wb3B1cC1wcm9qZWN0LWltZyB7XG4gICAgICAgIHBhZGRpbmctdG9wOiBjYWxjKDExOCAvIDIwOCAqIDEwMCUpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYtaW1nIHtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgIGltZyB7XG4gICAgICAgIEBpbmNsdWRlIGltZ0NvdmVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLm0tZGVzIHtcbiAgQGluY2x1ZGUgbWFyZ2luKDEycmVtKTtcblxuICAmLWhlYWRpbmcge1xuICAgIC50aXRsZS13aXRoLWRlc2MgLnRpdGxlLTQwIHtcbiAgICAgIEBpbmNsdWRlIG1heCg0MTBweCkge1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgbWF4LXdpZHRoOiAzMnJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLWRyb3Bkb3duIHtcbiAgICAmX3Bvc2l0aW9uIHtcbiAgICAgIEBpbmNsdWRlIG1heCg5OTFweCkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICByb3ctZ2FwOiAxLjZyZW07XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICB9XG5cbiAgICAgID4gLnRleHQtMTYge1xuICAgICAgICBAaW5jbHVkZSBtaW4oOTkycHgpIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgID4gZm9ybSB7XG4gICAgICAgIEBpbmNsdWRlIG1heCg5OTFweCkge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgcm93LWdhcDogMi40cmVtO1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX2xpc3Qge1xuICAgICAgQGluY2x1ZGUgZmxleDtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG5cbiAgICAgIEBpbmNsdWRlIG1pbig5OTJweCkge1xuICAgICAgICBAaW5jbHVkZSBzaGFkb3c7XG4gICAgICAgIHdpZHRoOiBmaXQtY29udGVudDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTByZW07XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtYXgoOTkxcHgpIHtcbiAgICAgICAgZ2FwOiAxLjJyZW07XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAvLyAgIHBhZGRpbmc6IDEuMnJlbTtcbiAgICAgICAgLy8gICBtYXgtaGVpZ2h0OiAzMHJlbTtcbiAgICAgICAgLy8gICBvdmVyZmxvdzogaGlkZGVuIGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgJl9pdGVtIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xuICAgICAgICB3aWR0aDogZml0LWNvbnRlbnQ7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgLm0tZHJvcGRvd24ge1xuICAgICAgICAgICAgQGluY2x1ZGUgc2hhZG93O1xuXG4gICAgICAgICAgICAmLWxpc3Qge1xuICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEuMnJlbSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1heCg5OTFweCkge1xuICAgICAgICAvLyAgIHdpZHRoOiBjYWxjKDEwMCUgLyA0IC0gMS44cmVtKTtcblxuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC8gNCAtIDAuOXJlbSk7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1heCg3NjdweCkge1xuICAgICAgICAvLyB3aWR0aDogY2FsYygxMDAlIC8gMyAtIDEuNnJlbSk7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAzIC0gMC44cmVtKTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWF4KDU3NnB4KSB7XG4gICAgICAgIC8vICAgd2lkdGg6IGNhbGMoMTAwJSAvIDIgLSAxcmVtKTtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDIgLSAwLjZyZW0pO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtaW4oOTkycHgpIHtcbiAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICBoZWlnaHQ6IDRyZW07XG4gICAgICAgICAgICB3aWR0aDogMC4xcmVtO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjBmMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogMS4ycmVtO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAubS1kcm9wZG93biB7XG4gICAgICAgICAgQGluY2x1ZGUgbWluKDk5MnB4KSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxLjNyZW0gMC44cmVtIDEuM3JlbSA0cmVtO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDAuOHJlbSAwLjhyZW0gMC44cmVtIDEuNnJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICAubS1kcm9wZG93biB7XG4gICAgICAgICAgQGluY2x1ZGUgc2hhZG93O1xuXG4gICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLWxpc3Qge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEuMnJlbSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJl9hY3Rpb24ge1xuICAgICAgZ2FwOiAxLjZyZW07XG4gICAgICAvLyBwYWRkaW5nOiAxLjJyZW07XG4gICAgICBAaW5jbHVkZSBmbGV4LWljZW50ZXI7XG4gICAgICAvLyBib3JkZXItdG9wOiAwLjFyZW0gc29saWQgI2QwZDBkMDtcblxuICAgICAgQGluY2x1ZGUgbWluKDk5MnB4KSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIC5idG4ge1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC8gMiAtIDAuOHJlbSk7XG5cbiAgICAgICAgJi1wcmkge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLXByaTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYtYm94IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgLm0tZGVzLWJnIGltZyB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgc2NhbGUoMS4wNSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLWJnIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLXRvcDogY2FsYyg0MDAgLyA1OTIgKiAxMDAlKTtcblxuICAgIGltZyB7XG4gICAgICBAaW5jbHVkZSBpbWdDb3ZlcjtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgfVxuICB9XG5cbiAgJi1jb250ZW50IHtcbiAgICBsZWZ0OiAycmVtO1xuICAgIHJpZ2h0OiAycmVtO1xuICAgIGdhcDogMS4ycmVtO1xuICAgIGJvdHRvbTogMnJlbTtcbiAgICBwYWRkaW5nOiAwLjhyZW07XG4gICAgbWluLXdpZHRoOiAyNC4zcmVtO1xuICAgIHdpZHRoOiBmaXQtY29udGVudDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbWF4LXdpZHRoOiAyNS40cmVtO1xuICAgIEBpbmNsdWRlIGZsZXgtaWNlbnRlcjtcbiAgICBib3JkZXItcmFkaXVzOiAwLjRyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG5cbiAgICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XG4gICAgICBsZWZ0OiAwLjhyZW07XG4gICAgICBib3R0b206IDAuOHJlbTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtYXgoNTc2cHgpe1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAgMC40cmVtIDAgMMaSO1xuICAgIH1cbiAgfVxuXG4gICYtaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBAaW5jbHVkZSBzaGFkb3c7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBAaW5jbHVkZSBib3goNS42cmVtKTtcbiAgICBib3JkZXItcmFkaXVzOiAwLjRyZW07XG5cbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICB9XG4gIH1cblxuICAmLWluZm8ge1xuICAgIC50ZXh0LTEyLFxuICAgIC50ZXh0LTE0IHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxMzMlO1xuICAgIH1cblxuICAgIC50ZXh0LTEyIHtcbiAgICAgIGNvbG9yOiAjOTk5O1xuICAgIH1cblxuICAgIC50ZXh0LTE0IHtcbiAgICAgIEBpbmNsdWRlIGxpbmVDbGFtcCgyKTtcbiAgICB9XG5cbiAgICAudGV4dC0xNCB7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuXG4gICAgICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiAkY29sb3ItcHJpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi1maWx0ZXIge1xuICAgIGdhcDogMC44cmVtO1xuICAgIHBhZGRpbmc6IDAuOHJlbTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gICAgQGluY2x1ZGUgZmxleC1pY2VudGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDAuNnJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICBib3JkZXI6IDAuMXJlbSBzb2xpZCAkY29sb3ItcHJpO1xuXG4gICAgQGluY2x1ZGUgbWluKDk5MnB4KSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIGltZyB7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIEBpbmNsdWRlIGJveCgxLjZyZW0pO1xuICAgIH1cbiAgfVxuXG4gICYtaWNvbiB7XG4gICAgdG9wOiAycmVtO1xuICAgIHJpZ2h0OiAycmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICBAaW5jbHVkZSBmbGV4LWNlbnRlcjtcbiAgICBAaW5jbHVkZSBib3goMy4ycmVtKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcblxuICAgIEBpbmNsdWRlIG1pbigxMjAxcHgpIHtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwKSBpbnZlcnQoMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XG4gICAgICB0b3A6IDAuOHJlbTtcbiAgICAgIHJpZ2h0OiAwLjhyZW07XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgICAgQGluY2x1ZGUgYm94KDEuNnJlbSk7XG4gICAgfVxuICB9XG5cbiAgLm0tZHJvcGRvd24ge1xuICAgIGdhcDogNHJlbTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcmVtO1xuICAgIEBpbmNsdWRlIGZsZXgtaWNlbnRlcjtcblxuICAgIC8vIEBpbmNsdWRlIG1pbig5OTJweCkge1xuICAgIHBhZGRpbmc6IDEuNnJlbSA0cmVtO1xuXG4gICAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xuICAgICAgcGFkZGluZzogMC44cmVtIDIuNHJlbTtcbiAgICB9XG4gICAgLy8gfVxuXG4gICAgQGluY2x1ZGUgbWF4KDk5MXB4KSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwLjhyZW07XG4gICAgICBib3JkZXI6IDAuMXJlbSBzb2xpZCAjZjBmMGYwO1xuICAgICAgcGFkZGluZzogMC44cmVtIDMuMnJlbSAwLjhyZW0gMi40cmVtO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgcmlnaHQ6IDFyZW07XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICAgICAgQGluY2x1ZGUgYm94KDEuNnJlbSk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgQGluY2x1ZGUgYmdJbWFnZSh0b3AsIGNvbnRhaW4pO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi8uLi9hc3NldHMvaW1hZ2VzL2ljb25zL2ljb24tY2hldnJvbi5zdmdcIik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi1saXN0IHtcbiAgICAgIHotaW5kZXg6IDU7XG4gICAgICBnYXA6IDEuMnJlbTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuXG4gICAgICAvLyBAaW5jbHVkZSBtaW4oOTkycHgpIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0b3A6IDEwMCU7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgcGFkZGluZzogMnJlbTtcbiAgICAgIEBpbmNsdWRlIHNoYWRvdztcbiAgICAgIG1heC13aWR0aDogMjVyZW07XG4gICAgICBtaW4td2lkdGg6IDE2LjVyZW07XG4gICAgICB3aWR0aDogbWF4LWNvbnRlbnQ7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAuOHJlbTtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgzLjJyZW0pO1xuICAgICAgLy8gfVxuXG4gICAgICBAaW5jbHVkZSBtYXgoOTkxcHgpIHtcbiAgICAgICAgLy8gICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIC8vICAgbWFyZ2luLXRvcDogMS4ycmVtO1xuXG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgIH1cblxuICAgICYtaXRlbSB7XG4gICAgICAvLyBAaW5jbHVkZSBtYXgoOTkxcHgpIHtcbiAgICAgIC8vICAgd2lkdGg6IGNhbGMoMTAwJSAvIDIgLSAwLjZyZW0pO1xuICAgICAgLy8gfVxuXG4gICAgICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIC50ZXh0LTEyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItcHJpO1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICB3aWR0aDogMi40cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgIC50ZXh0LTEyIHtcbiAgICAgICAgICBjb2xvcjogJGNvbG9yLXByaTtcblxuICAgICAgICAgIEBpbmNsdWRlIG1heCg5OTFweCkge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgd2lkdGg6IDIuNHJlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5pcy1oaWRkZW4ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICAudGV4dC0xMiB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxMzMlO1xuICAgICAgICBjb2x1bW4tZ2FwOiAxLjJyZW07XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICAgICAgQGluY2x1ZGUgZmxleC1pY2VudGVyO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICBoZWlnaHQ6IDAuMXJlbTtcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpO1xuXG4gICAgICAgICAgQGluY2x1ZGUgbWF4KDk5MXB4KSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgd2lkdGg6IDIuNHJlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLXRleHQge1xuICAgICAgbWluLXdpZHRoOiAxMHJlbTtcbiAgICAgIG1heC13aWR0aDogMTByZW07XG5cbiAgICAgID4gKiB7XG4gICAgICAgIEBpbmNsdWRlIGxpbmVDbGFtcCgxKTtcbiAgICAgIH1cblxuICAgICAgcCB7XG4gICAgICAgIC8vIEBpbmNsdWRlIG1heCg5OTFweCkge1xuICAgICAgICAvLyAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIC8vICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgIC8vICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgLy8gfVxuICAgICAgfVxuXG4gICAgICBzcGFuIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG5cbiAgICAgICAgLy8gQGluY2x1ZGUgbWF4KDk5MXB4KSB7XG4gICAgICAgIC8vICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgLy8gfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5idG4ge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuXG4gICAgICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XG4gICAgICAgIHBhZGRpbmc6IDAuOHJlbSAxLjZyZW07XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1heCg5OTFweCkge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICBpbWcge1xuICAgICAgICBAaW5jbHVkZSBib3goMnJlbSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmJhbm5lci1wcmkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgJi1iZyB7XG4gICAgaW5zZXQ6IDA7XG4gICAgei1pbmRleDogLTE7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDBkZWcsIHJnYmEoMCwgMCwgMCwgMC42NSkgMCUsIHJnYmEoMCwgMCwgMCwgMC42NSkgMTAwJSk7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAmLXBvc2l0aW9uIHtcbiAgICB6LWluZGV4OiAzO1xuICAgIHBhZGRpbmc6IDIwcmVtIDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgQGluY2x1ZGUgbWF4KDU3NnB4KSB7XG4gICAgICBwYWRkaW5nOiAxMHJlbSAwO1xuICAgIH1cbiAgfVxuXG4gICYtY29udGVudCB7XG4gICAgLnRpdGxlLTQwIHtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxNDAlO1xuICAgIH1cblxuICAgIC50ZXh0LTE2IHtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICB9XG4gIH1cblxuICAmLXJvdyB7XG4gICAgQGluY2x1ZGUgbWF4KDEwMjRweCkge1xuICAgICAgcm93LWdhcDogMy4ycmVtO1xuICAgIH1cbiAgfVxuXG4gICYtY29sIHtcbiAgICBAaW5jbHVkZSBtYXgoMTAyNHB4KSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAmLXZpZGVvIHtcbiAgICBnYXA6IDAuOHJlbTtcbiAgICBtYXJnaW4tdG9wOiAyLjRyZW07XG4gICAgQGluY2x1ZGUgZmxleC1pY2VudGVyO1xuXG4gICAgLnZpZGVvLXBsYXkge1xuICAgICAgdG9wOiB1bnNldDtcbiAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgdHJhbnNmb3JtOiB1bnNldDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgQGluY2x1ZGUgbWluKDc2OHB4KSB7XG4gICAgICAgIEBpbmNsdWRlIGJveCg1LjZyZW0pO1xuICAgICAgfVxuXG4gICAgICBpbWcge1xuICAgICAgICBtYXJnaW4tbGVmdDogMC40cmVtO1xuICAgICAgICBAaW5jbHVkZSBib3goMi4xcmVtKTtcblxuICAgICAgICBAaW5jbHVkZSBtYXgoNzY3cHgpIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3goMS42cmVtKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC50ZXh0LTE4IHtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICB9XG4gIH1cblxuICAmLWltZyB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy10b3A6IGNhbGMoMzMyIC8gNTkyICogMTAwJSk7XG5cbiAgICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgICAmOmhvdmVyIGltZyB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHNjYWxlKDEuMDUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGltZyB7XG4gICAgICBAaW5jbHVkZSBpbWdDb3ZlcjtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgfVxuICB9XG59XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uYmFubmVyLW5ld3Mge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogY2FsYygxMDB2aCAtIDE0LjZyZW0pO1xuXG4gIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cblxuICAuc3dpcGVyIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAmLXBhZ2luYXRpb24ge1xuICAgICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICB9XG4gIH1cblxuICAmLWhvbWUsXG4gIC5iYW5uZXItaG9tZSB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcGFkZGluZy10b3A6IDU2LjI1JTtcblxuICAgICAgQGluY2x1ZGUgbWF4KDc2N3B4KSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA4MCU7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1heCg1NzZweCkge1xuICAgICAgICBwYWRkaW5nLXRvcDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLWJnLFxuICAuYmFubmVyLXZpZGVvIHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuXG4gICAgaW1nLFxuICAgIHZpZGVvLFxuICAgIGlmcmFtZSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgJi1wb3NpdGlvbiB7XG4gICAgaW5zZXQ6IDA7XG4gICAgei1pbmRleDogMztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICB9XG5cbiAgJi1jb250ZW50IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmctYm90dG9tOiA2LjRyZW07XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblxuICAgIEBpbmNsdWRlIG1heCgxMDI0cHgpIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAzLjJyZW07XG4gICAgfVxuXG4gICAgPiAqIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgfVxuXG4gICAgLnRpdGxlLTgwIHtcbiAgICAgIGZvbnQtc2l6ZTogOHJlbTtcblxuICAgICAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xuICAgICAgICBmb250LXNpemU6IDYuNHJlbTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWF4KDc2N3B4KSB7XG4gICAgICAgIGZvbnQtc2l6ZTogNC44cmVtO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtYXgoNTc2cHgpIHtcbiAgICAgICAgZm9udC1zaXplOiAzLjJyZW07XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRpdGxlLTQwIHtcbiAgICAgIEBpbmNsdWRlIG1heCg3NjdweCkge1xuICAgICAgICBmb250LXNpemU6IDIuNHJlbTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWF4KDU3NnB4KSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudmlldy1saW5rIHtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgIEBpbmNsdWRlIGZ6LTIwO1xuICAgICAgbWFyZ2luLXRvcDogMnJlbTtcblxuICAgICAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xuICAgICAgICBtYXJnaW4tdG9wOiAxLjJyZW07XG4gICAgICB9XG5cbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4ubS1pbmZvIHtcbiAgQGluY2x1ZGUgbWFyZ2luKDEycmVtKTtcblxuICAmLXNsaWRlIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gICYtbWFpbiB7XG4gICAgLm0taW5mby1iZyB7XG4gICAgICBwYWRkaW5nLXRvcDogY2FsYyg4MDAgLyAxNzI4ICogMTAwJSk7XG4gICAgfVxuICB9XG5cbiAgJi10aHVtYiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgQGluY2x1ZGUgbWluKDEwMjVweCkge1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgei1pbmRleDogMztcbiAgICAgIGJvdHRvbTogMy4ycmVtO1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICBtYXgtd2lkdGg6IDczLjRyZW07XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG5cbiAgICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcbiAgICAgICAgYm90dG9tOiAxLjZyZW07XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWF4KDEwMjRweCkge1xuICAgICAgcGFkZGluZy10b3A6IDEuNnJlbTtcbiAgICB9XG5cbiAgICAuc3dpcGVyIHtcbiAgICAgIG1hcmdpbjogMCAtMC44cmVtO1xuXG4gICAgICAmLXNsaWRlIHtcbiAgICAgICAgcGFkZGluZzogMCAwLjhyZW07XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAzKTtcblxuICAgICAgICBAaW5jbHVkZSBtYXgoNzY3cHgpIHtcbiAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC8gMi41KTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1heCg1NzZweCkge1xuICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAxLjUpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi10aHVtYi1hY3RpdmUge1xuICAgICAgICAgIC5tLWluZm8tYmcge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLXdoaXRlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5tLWluZm8tYmcge1xuICAgICAgb3BhY2l0eTogMC42O1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAuNHJlbTtcbiAgICAgIHBhZGRpbmctdG9wOiBjYWxjKDEwNCAvIDIyNiAqIDEwMCUpO1xuXG4gICAgICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWluKDEwMjVweCkge1xuICAgICAgICBib3JkZXI6IDAuNHJlbSBzb2xpZCB3aGl0ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLWJnIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIGltZyB7XG4gICAgICBAaW5jbHVkZSBpbWdDb3ZlcjtcbiAgICB9XG4gIH1cbn1cbiIsIi5wcm9kdWN0LWJveCB7XG4gIGhlaWdodDogMTAwJTtcblxuICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgJjpob3ZlciB7XG4gICAgICAuaW1nIHtcbiAgICAgICAgb3BhY2l0eTogMDtcblxuICAgICAgICAmLWhvdmVyIHtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgbWF4KDU3NnB4KSB7XG4gICAgcm93LWdhcDogMC44cmVtO1xuICB9XG5cbiAgJi1pbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC5pbWcge1xuICAgICAgQGluY2x1ZGUgc2hhZG93O1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgYm9yZGVyLXJhZGl1czogMC4ycmVtO1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjRzO1xuICAgICAgcGFkZGluZy10b3A6IGNhbGMoMSAvIDEgKiAxMDAlKTtcblxuICAgICAgaW1nIHtcbiAgICAgICAgQGluY2x1ZGUgaW1nQ292ZXI7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgICB9XG5cbiAgICAgICYtaG92ZXIge1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmhvdCB7XG4gICAgICB0b3A6IDAuOHJlbTtcbiAgICAgIGxlZnQ6IDAuOHJlbTtcbiAgICAgIHJpZ2h0OiAwLjhyZW07XG4gICAgICBwYWRkaW5nOiAwLjhyZW07XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpO1xuXG4gICAgICBAaW5jbHVkZSBtYXgoNzY3cHgpIHtcbiAgICAgICAgcGFkZGluZzogMC40cmVtO1xuICAgICAgfVxuXG4gICAgICAudGV4dC0xNCB7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgQGluY2x1ZGUgbGluZUNsYW1wKDEpO1xuXG4gICAgICAgIEBpbmNsdWRlIG1heCg3NjdweCkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi1jb250ZW50IHtcbiAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAudGl0bGUtMjgge1xuICAgICAgbGluZS1oZWlnaHQ6IDEzMCU7XG4gICAgICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuXG4gICAgICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiAkY29sb3ItcHJpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1heCg1NzZweCkge1xuICAgICAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGV4dC0xOCB7XG4gICAgICBjb2xvcjogIzk5OTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xuXG4gICAgICBAaW5jbHVkZSBtYXgoNTc2cHgpIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIubGlzdC1wcm9qZWN0IHtcbiAgQGluY2x1ZGUgcGFkZGluZyg2cmVtKTtcblxuICAmLWxpc3Qge1xuICAgIC0tbGV0dGVyLXNwYWNpbmc6IDEuNnJlbTtcblxuICAgIEBpbmNsdWRlIGZsZXg7XG4gICAgcm93LWdhcDogMy4ycmVtO1xuICAgIG1hcmdpbjogMCBjYWxjKC0xICogdmFyKC0tbGV0dGVyLXNwYWNpbmcpKTtcblxuICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcbiAgICAgIHJvdy1nYXA6IDEuNnJlbTtcbiAgICAgIC0tbGV0dGVyLXNwYWNpbmc6IDAuOHJlbTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtYXgoNTc2cHgpIHtcbiAgICAgIHJvdy1nYXA6IDAuOHJlbTtcbiAgICAgIC0tbGV0dGVyLXNwYWNpbmc6IDAuNHJlbTtcbiAgICB9XG4gIH1cblxuICAmLWl0ZW0ge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAzKTtcbiAgICBwYWRkaW5nOiAwIHZhcigtLWxldHRlci1zcGFjaW5nKTtcblxuICAgIEBpbmNsdWRlIG1heCgxMDI0cHgpIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAyKTtcbiAgICB9XG4gIH1cblxuICAmLWJveCB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgIEBpbmNsdWRlIG1pbigxMjAxcHgpIHtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBpbWcge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHNjYWxlKDEuMDUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi1pbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctdG9wOiBjYWxjKDI3MiAvIDQzMiAqIDEwMCUpO1xuXG4gICAgaW1nIHtcbiAgICAgIEBpbmNsdWRlIGltZ0NvdmVyO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICB9XG4gIH1cblxuICAmLWNvbnRlbnQge1xuICAgIHJvdy1nYXA6IDAuMnJlbTtcblxuICAgIC50ZXh0LTIwIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxNDAlO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcblxuICAgICAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogJGNvbG9yLXByaTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC50ZXh0LTE2IHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxNjAlO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5yZWxhdGVkLXByb2plY3Qge1xuICBAaW5jbHVkZSBtYXJnaW4oMTJyZW0sIDZyZW0pO1xuXG4gICYtaGVhZGluZyB7XG4gICAgZ2FwOiAxLjZyZW07XG4gICAgQGluY2x1ZGUgZmxleC1pY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgIEBpbmNsdWRlIG1heCg5OTFweCkge1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuXG4gICAgPiAuYnRuLFxuICAgIC5zd2lwZXItbmF2aWdhdGlvbiB7XG4gICAgICBAaW5jbHVkZSBtYXgoOTkxcHgpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLXN3aXBlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC0tbGV0dGVyLXNwYWNpbmc6IDAuOHJlbTtcblxuICAgIEBpbmNsdWRlIG1heCg3NjdweCkge1xuICAgICAgLS1sZXR0ZXItc3BhY2luZzogMC40cmVtO1xuICAgIH1cblxuICAgIC5zd2lwZXIge1xuICAgICAgbWFyZ2luOiAwIGNhbGMoLTEgKiB2YXIoLS1sZXR0ZXItc3BhY2luZykpO1xuXG4gICAgICAmLXNsaWRlIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC8gNCk7XG4gICAgICAgIHBhZGRpbmc6IDAgdmFyKC0tbGV0dGVyLXNwYWNpbmcpO1xuXG4gICAgICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcbiAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC8gMyk7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtYXgoNzY3cHgpIHtcbiAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC8gMS41KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYtaW5uZXIge1xuICAgID4gLmJ0biB7XG4gICAgICBAaW5jbHVkZSBtaW4oOTkycHgpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuYnRuIHtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvci1wcmk7XG4gIH1cblxuICAubGlzdC1wcm9qZWN0LWltZyB7XG4gICAgcGFkZGluZy10b3A6IGNhbGMoNDAwIC8gMzIwICogMTAwJSk7XG4gIH1cbn1cbiIsIi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4ucC1ob21lIHtcbiAgLm0tbmV3cyB7XG4gICAgcGFkZGluZzogMDtcbiAgICBAaW5jbHVkZSBtYXJnaW4oMTJyZW0pO1xuICB9XG5cbiAgLm0tcHJvZHVjdC1saXN0IHtcbiAgICAtLWxldHRlci1zcGFjaW5nOiAwLjhyZW07XG5cbiAgICBAaW5jbHVkZSBtYXgoNzY3cHgpIHtcbiAgICAgIC0tbGV0dGVyLXNwYWNpbmc6IDAuNHJlbTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBmbGV4O1xuICAgIHJvdy1nYXA6IDIuNHJlbTtcbiAgICBtYXJnaW46IDAgY2FsYygtMSAqIHZhcigtLWxldHRlci1zcGFjaW5nKSk7XG4gIH1cblxuICAubS1wcm9kdWN0LWl0ZW0ge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLyA0KTtcbiAgICBwYWRkaW5nOiAwIHZhcigtLWxldHRlci1zcGFjaW5nKTtcblxuICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAzKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtYXgoNTc2cHgpIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAyKTtcbiAgICB9XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FFQUE7OzhEQUU4RDtBQWE5RDs7OERBRThEO0FDakI5RCxBQUFBLEtBQUssQ0FBQztFQUNKLFVBQVUsQ0FBQSx3QkFBQztFQUNYLFlBQVksQ0FBQSwwQkFBQztFQUViLGNBQWMsQ0FBQSxHQUFDO0VBQ2YsY0FBYyxDQUFBLEtBQUM7RUFDZixlQUFlLENBQUEsT0FBQyxHQUNqQjs7QUNORCxBQUFBLEtBQUssQ0FBQztFRmdISixNQUFNLEVFL0dVLElBQUksQ0YrR0gsSUFBSSxDRS9HQyxLQUFLLEdBZ0Y1QjtFRjlFQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0lFSHJDLEFBQUEsS0FBSyxDQUFDO01GbUhGLE1BQU0sRUFBRSxTQUFTLEdFbENwQjtFRjlFQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0lFSHJDLEFBQUEsS0FBSyxDQUFDO01GdUhGLE1BQU0sRUFBRSxTQUFTLEdFdENwQjtFQTlFRSxBQUFELFVBQU0sQ0FBQztJQUNMLGdCQUFnQixDQUFBLE9BQUM7SUZjbkIsT0FBTyxFQUFFLElBQUk7SUFDYixTQUFTLEVBQUUsSUFBSTtJRVpiLE9BQU8sRUFBRSxNQUFNO0lBQ2YsTUFBTSxFQUFFLENBQUMsQ0FBQyxnQ0FBZ0MsR0FNM0M7SUZYRCxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO01FQWxDLEFBQUQsVUFBTSxDQUFDO1FBUUgsT0FBTyxFQUFFLE1BQU07UUFDZixnQkFBZ0IsQ0FBQSxPQUFDLEdBRXBCO0VBRUEsQUFBRCxVQUFNLENBQUM7SUFDTCxLQUFLLEVBQUUsY0FBYztJQUNyQixPQUFPLEVBQUUsQ0FBQyxDQUFDLHFCQUFxQixHQVNqQztJRnhCRCxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMs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 */
