/*
    Velocity Transitions List
     .velocity('transition.fadeIn')
    .velocity('transition.fadeOut')
    .velocity('transition.flipXIn')
    .velocity('transition.flipXOut')
    .velocity('transition.flipYIn')
    .velocity('transition.flipYOut')
    .velocity('transition.flipBounceXIn')
    .velocity('transition.flipBounceXOut')
    .velocity('transition.flipBounceYIn')
    .velocity('transition.flipBounceYOut')
    .velocity('transition.swoopIn')
    .velocity('transition.swoopOut')
    .velocity('transition.whirlIn')
    .velocity('transition.whirlOut')
    .velocity('transition.shrinkIn')
    .velocity('transition.shrinkOut')
    .velocity('transition.expandIn')
    .velocity('transition.expandOut')
    .velocity('transition.bounceIn')
    .velocity('transition.bounceOut')
    .velocity('transition.bounceUpIn')
    .velocity('transition.bounceUpOut')
    .velocity('transition.bounceDownIn')
    .velocity('transition.bounceDownOut')
    .velocity('transition.bounceLeftIn')
    .velocity('transition.bounceLeftOut')
    .velocity('transition.bounceRightIn')
    .velocity('transition.bounceRightOut')
    .velocity('transition.slideUpIn')
    .velocity('transition.slideUpOut')
    .velocity('transition.slideDownIn')
    .velocity('transition.slideDownOut')
    .velocity('transition.slideLeftIn')
    .velocity('transition.slideLeftOut')
    .velocity('transition.slideRightIn')
    .velocity('transition.slideRightOut')
    .velocity('transition.slideUpBigIn')
    .velocity('transition.slideUpBigOut')
    .velocity('transition.slideDownBigIn')
    .velocity('transition.slideDownBigOut')
    .velocity('transition.slideLeftBigIn')
    .velocity('transition.slideLeftBigOut')
    .velocity('transition.slideRightBigIn')
    .velocity('transition.slideRightBigOut')
    .velocity('transition.perspectiveUpIn')
    .velocity('transition.perspectiveUpOut')
    .velocity('transition.perspectiveDownIn')
    .velocity('transition.perspectiveDownOut')
    .velocity('transition.perspectiveLeftIn')
    .velocity('transition.perspectiveLeftOut')
    .velocity('transition.perspectiveRightIn')
    .velocity('transition.perspectiveRightOut'); 

*/
/* Mixins
--------------------------------------------------------------- */
#header-spacer,
.footer_bottom.new:before {
  display: none; }

.tgc24_wrapper {
  background-color: #F6F4F0; }
  .tgc24_wrapper .page-natevents-save-date {
    min-height: 100vh; }
  @media (min-width: 1270px) {
    .tgc24_wrapper .container_wide {
      max-width: 1689px; } }
  .tgc24_wrapper .btn-primary {
    background-color: #435F64;
    border-color: #435F64;
    color: #fff;
    text-align: center;
    font-family: "ibm-plex-sans", sans-serif;
    font-size: 12px;
    font-style: normal;
    font-weight: 700;
    line-height: 11px;
    letter-spacing: 1.04px;
    text-transform: uppercase; }
    .tgc24_wrapper .btn-primary:hover, .tgc24_wrapper .btn-primary:active {
      background-color: #2f4245 !important;
      border-color: #2f4245 !important; }
  .tgc24_wrapper .btn-green {
    background-color: #435F64;
    border-color: #435F64;
    color: #fff;
    text-align: center;
    font-family: "ibm-plex-sans", sans-serif;
    font-size: 14px;
    font-style: normal;
    font-weight: 700;
    line-height: 24px;
    letter-spacing: 1.04px;
    text-transform: uppercase;
    font-size: clamp(14px, 1.04167vw, 20px);
    line-height: clamp(24px, 1.25vw, 24px);
    padding: 16px;
    min-width: 218px; }
    .tgc24_wrapper .btn-green:hover, .tgc24_wrapper .btn-green:active {
      background-color: #2f4245 !important;
      border-color: #2f4245 !important; }
  .tgc24_wrapper .tgc24_header {
    background-color: #435F64;
    padding-top: clamp(25px, 1.5625vw, 30px);
    padding-bottom: clamp(14.39px, 1.5625vw, 30px); }
    .tgc24_wrapper .tgc24_header .container {
      max-width: 100%; }
      @media (min-width: 1270px) {
        .tgc24_wrapper .tgc24_header .container {
          max-width: 1689px; } }
    .tgc24_wrapper .tgc24_header .btn {
      font-family: "ibm-plex-sans", sans-serif;
      color: #FCF6F1;
      background-color: #E5726D;
      border-color: #E5726D;
      font-size: 14px;
      min-width: 100px;
      padding: 12px 10px;
      line-height: 1; }
      @media (min-width: 768px) {
        .tgc24_wrapper .tgc24_header .btn {
          padding: 10px 20px;
          font-size: 18px; } }
    .tgc24_wrapper .tgc24_header img {
      width: clamp(132px, 14.47917vw, 278px);
      max-width: 278px;
      height: auto; }
  @media (max-width: 1270px) {
    .tgc24_wrapper .tgc-25-content .container {
      max-width: 100%; } }
  .tgc24_wrapper .tgc-25-content .hero_section {
    background-color: #F6F4F0;
    padding-top: clamp(35px, 2.60417vw, 50px);
    padding-bottom: clamp(35px, 2.60417vw, 50px); }
    .tgc24_wrapper .tgc-25-content .hero_section .btn {
      border-radius: 30px !important;
      padding: 13px 15px; }
    .tgc24_wrapper .tgc-25-content .hero_section .content_wrap {
      opacity: 1;
      transition: opacity 0.5s; }
      .tgc24_wrapper .tgc-25-content .hero_section .content_wrap.is_ajaxing {
        pointer-events: none;
        opacity: 0.5; }
    .tgc24_wrapper .tgc-25-content .hero_section iframe {
      position: absolute;
      top: 0;
      left: 0;
      width: 100% !important;
      height: 100% !important; }
    .tgc24_wrapper .tgc-25-content .hero_section .video_subsection {
      display: flex; }
      .tgc24_wrapper .tgc-25-content .hero_section .video_subsection .video_info {
        padding: 20px; }
        .tgc24_wrapper .tgc-25-content .hero_section .video_subsection .video_info .session_type_time {
          color: #435F64;
          display: flex;
          text-transform: uppercase;
          font-size: 14px;
          margin-bottom: 15px;
          font-family: "Lato", sans-serif;
          font-weight: 500;
          line-height: 14px; }
          @media (min-width: 768px) {
            .tgc24_wrapper .tgc-25-content .hero_section .video_subsection .video_info .session_type_time {
              line-height: 16px;
              font-size: 16px; } }
        .tgc24_wrapper .tgc-25-content .hero_section .video_subsection .video_info .session_title {
          font-size: 18px;
          margin-bottom: 10px;
          line-height: 1; }
          @media (min-width: 768px) {
            .tgc24_wrapper .tgc-25-content .hero_section .video_subsection .video_info .session_title {
              font-size: 20px; } }
        .tgc24_wrapper .tgc-25-content .hero_section .video_subsection .video_info .session_speakers {
          font-style: italic;
          font-size: 12px;
          font-family: "Lato", sans-serif;
          text-transform: uppercase; }
          @media (min-width: 768px) {
            .tgc24_wrapper .tgc-25-content .hero_section .video_subsection .video_info .session_speakers {
              font-size: 14px; } }
      .tgc24_wrapper .tgc-25-content .hero_section .video_subsection .sponsor {
        text-align: center;
        color: #272727;
        padding: 20px;
        font-family: "Lato", sans-serif;
        font-size: 14px; }
        .tgc24_wrapper .tgc-25-content .hero_section .video_subsection .sponsor .sponsor-text {
          font-weight: 500; }
        .tgc24_wrapper .tgc-25-content .hero_section .video_subsection .sponsor img {
          width: 100%;
          height: auto; }
        .tgc24_wrapper .tgc-25-content .hero_section .video_subsection .sponsor::before {
          content: "";
          display: block;
          height: 1px;
          width: 90px;
          background-color: #272727;
          margin-left: auto;
          margin-right: auto;
          margin-top: -20px;
          margin-bottom: 20px; }
        @media (min-width: 768px) {
          .tgc24_wrapper .tgc-25-content .hero_section .video_subsection .sponsor {
            font-size: 14px; }
            .tgc24_wrapper .tgc-25-content .hero_section .video_subsection .sponsor::before {
              position: absolute;
              left: 0;
              top: 0;
              width: 1px;
              height: calc(100% - 64px);
              margin-top: 32px;
              margin-bottom: 0; } }
        .tgc24_wrapper .tgc-25-content .hero_section .video_subsection .sponsor img {
          margin-top: 15px;
          max-width: clamp(168px, 8.75vw, 168px); }
    .tgc24_wrapper .tgc-25-content .hero_section .schedule .schedule_list_btn {
      font-family: "PT Serif", serif;
      font-size: 22px;
      font-weight: 300;
      font-style: italic;
      color: #272727;
      margin-bottom: 20px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      position: relative; }
      @media (min-width: 768px) {
        .tgc24_wrapper .tgc-25-content .hero_section .schedule .schedule_list_btn {
          font-size: 32px; } }
      .tgc24_wrapper .tgc-25-content .hero_section .schedule .schedule_list_btn::after {
        content: "";
        position: absolute;
        bottom: 0;
        left: 0;
        right: 0;
        display: block;
        height: 1px;
        width: 100%;
        background-color: #272727; }
      .tgc24_wrapper .tgc-25-content .hero_section .schedule .schedule_list_btn .collapse_arrow {
        height: 7px;
        width: 16px;
        flex-shrink: 0;
        transition: transform 0.3s;
        transform: rotate(180deg); }
        @media (min-width: 768px) {
          .tgc24_wrapper .tgc-25-content .hero_section .schedule .schedule_list_btn .collapse_arrow {
            display: none; } }
      .tgc24_wrapper .tgc-25-content .hero_section .schedule .schedule_list_btn.open .collapse_arrow {
        transform: rotate(0deg); }
    .tgc24_wrapper .tgc-25-content .hero_section .schedule .schedule-list {
      font-family: "PT Serif", serif;
      height: auto;
      overflow-y: auto;
      position: relative;
      max-height: 580px;
      padding-right: 20px; }
      .tgc24_wrapper .tgc-25-content .hero_section .schedule .schedule-list::-webkit-scrollbar {
        width: 4px; }
      .tgc24_wrapper .tgc-25-content .hero_section .schedule .schedule-list::-webkit-scrollbar-track {
        background: #e4dbcb; }
      .tgc24_wrapper .tgc-25-content .hero_section .schedule .schedule-list::-webkit-scrollbar-thumb {
        background: #435F64;
        border-radius: 8px; }
      .tgc24_wrapper .tgc-25-content .hero_section .schedule .schedule-list .schedule-item {
        margin-bottom: 20px; }
        @media (min-width: 768px) {
          .tgc24_wrapper .tgc-25-content .hero_section .schedule .schedule-list .schedule-item {
            margin-bottom: 29px; } }
        .tgc24_wrapper .tgc-25-content .hero_section .schedule .schedule-list .schedule-item .when-type {
          display: flex;
          font-size: 12px;
          margin-bottom: 6px;
          font-family: "Lato", sans-serif;
          font-weight: 500; }
          @media (min-width: 768px) {
            .tgc24_wrapper .tgc-25-content .hero_section .schedule .schedule-list .schedule-item .when-type {
              font-size: 16px; } }
          .tgc24_wrapper .tgc-25-content .hero_section .schedule .schedule-list .schedule-item .when-type .when-type-seperator {
            margin: 5px 10px;
            width: 1px; }
        .tgc24_wrapper .tgc-25-content .hero_section .schedule .schedule-list .schedule-item .talk-title {
          font-size: 16px;
          margin-bottom: 4px; }
          @media (min-width: 768px) {
            .tgc24_wrapper .tgc-25-content .hero_section .schedule .schedule-list .schedule-item .talk-title {
              font-size: 20px; } }
        .tgc24_wrapper .tgc-25-content .hero_section .schedule .schedule-list .schedule-item .talk-who {
          font-style: italic;
          font-family: "Lato", sans-serif;
          font-size: 12px; }
          @media (min-width: 768px) {
            .tgc24_wrapper .tgc-25-content .hero_section .schedule .schedule-list .schedule-item .talk-who {
              font-size: 14px; } }
  .tgc24_wrapper .tgc-25-content .session_cards_section {
    background-color: #F6F4F0;
    padding-top: clamp(35px, 2.60417vw, 50px);
    padding-bottom: clamp(50px, 5.20833vw, 100px);
    position: relative; }
    .tgc24_wrapper .tgc-25-content .session_cards_section .snap_arrow {
      position: absolute;
      top: 28%;
      cursor: pointer;
      display: none; }
      @media (min-width: 1270px) {
        .tgc24_wrapper .tgc-25-content .session_cards_section .snap_arrow {
          display: block; } }
      @media (min-width: 1270px) {
        .tgc24_wrapper .tgc-25-content .session_cards_section .snap_arrow.prev_arrow {
          left: calc((100vw - 1240px) / 4.5); } }
      @media (min-width: 1500px) {
        .tgc24_wrapper .tgc-25-content .session_cards_section .snap_arrow.prev_arrow {
          left: calc((100vw - 1489px) / 4.5); } }
      @media (min-width: 1270px) {
        .tgc24_wrapper .tgc-25-content .session_cards_section .snap_arrow.next_arrow {
          right: calc((100vw - 1240px) / 4.5); } }
      @media (min-width: 1500px) {
        .tgc24_wrapper .tgc-25-content .session_cards_section .snap_arrow.next_arrow {
          right: calc((100vw - 1489px) / 4.5); } }
    .tgc24_wrapper .tgc-25-content .session_cards_section .session_cards_row {
      overflow-x: scroll;
      scroll-snap-type: x mandatory;
      scrollbar-width: none;
      -ms-overflow-style: none; }
      .tgc24_wrapper .tgc-25-content .session_cards_section .session_cards_row::-webkit-scrollbar {
        display: none; }
      .tgc24_wrapper .tgc-25-content .session_cards_section .session_cards_row .ls_card_col {
        scroll-snap-align: start; }
        @media (max-width: 1270px) {
          .tgc24_wrapper .tgc-25-content .session_cards_section .session_cards_row .ls_card_col {
            min-width: 400px;
            max-width: 400px;
            padding-right: 7px;
            padding-left: 7px; } }
        @media (max-width: 767px) {
          .tgc24_wrapper .tgc-25-content .session_cards_section .session_cards_row .ls_card_col {
            min-width: 307px;
            max-width: 307px; } }
    .tgc24_wrapper .tgc-25-content .session_cards_section .ls_card {
      background-color: #F6F4F0;
      border-radius: 25px;
      overflow: hidden;
      transition: background-color 0.5s;
      height: 100%; }
      .tgc24_wrapper .tgc-25-content .session_cards_section .ls_card:hover, .tgc24_wrapper .tgc-25-content .session_cards_section .ls_card.currently_active, .tgc24_wrapper .tgc-25-content .session_cards_section .ls_card.active {
        background-color: #ece7df; }
      .tgc24_wrapper .tgc-25-content .session_cards_section .ls_card .inner {
        position: relative;
        padding: 15px 15px 20px 15px; }
        .tgc24_wrapper .tgc-25-content .session_cards_section .ls_card .inner .inner_head {
          position: relative; }
          .tgc24_wrapper .tgc-25-content .session_cards_section .ls_card .inner .inner_head:before {
            display: block;
            content: "";
            width: 100%;
            padding-top: 55.55556%; }
          .tgc24_wrapper .tgc-25-content .session_cards_section .ls_card .inner .inner_head .bg_img {
            bottom: 0;
            left: 0;
            position: absolute;
            right: 0;
            top: 0;
            width: 100%;
            height: 100%;
            z-index: 0;
            border-radius: 25px;
            overflow: hidden; }
            .tgc24_wrapper .tgc-25-content .session_cards_section .ls_card .inner .inner_head .bg_img img {
              object-fit: cover;
              width: 100%;
              height: 100%;
              border-radius: 25px;
              overflow: hidden; }
          .tgc24_wrapper .tgc-25-content .session_cards_section .ls_card .inner .inner_head .play_btn {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            z-index: 1;
            width: auto;
            height: 40px; }
            .tgc24_wrapper .tgc-25-content .session_cards_section .ls_card .inner .inner_head .play_btn svg {
              width: 100%;
              height: auto; }
          .tgc24_wrapper .tgc-25-content .session_cards_section .ls_card .inner .inner_head .session_link {
            bottom: 0;
            left: 0;
            position: absolute;
            right: 0;
            top: 0;
            width: 100%;
            height: 100%;
            cursor: pointer;
            z-index: 2; }
          .tgc24_wrapper .tgc-25-content .session_cards_section .ls_card .inner .inner_head .vid_badge {
            position: absolute;
            top: 10px;
            left: 10px;
            border-radius: 14px;
            background: rgba(39, 39, 39, 0.81);
            text-align: center;
            color: #fff;
            font-size: 11px;
            font-style: normal;
            font-weight: 500;
            line-height: 11px;
            letter-spacing: 0.5px;
            text-transform: uppercase;
            padding: 8px 10px;
            font-family: "Lato", sans-serif; }
        .tgc24_wrapper .tgc-25-content .session_cards_section .ls_card .inner .inner_text {
          position: relative;
          z-index: 1; }
          .tgc24_wrapper .tgc-25-content .session_cards_section .ls_card .inner .inner_text .session_meta {
            padding-top: 10px;
            padding-bottom: 10px; }
            .tgc24_wrapper .tgc-25-content .session_cards_section .ls_card .inner .inner_text .session_meta h6 {
              color: #435F64;
              font-family: "Lato", sans-serif;
              font-size: 16px;
              line-height: 27px;
              font-style: normal;
              font-weight: 500;
              text-transform: uppercase;
              margin-bottom: 0;
              font-size: clamp(14px, 0.83333vw, 16px);
              line-height: clamp(20px, 1.40625vw, 27px); }
          .tgc24_wrapper .tgc-25-content .session_cards_section .ls_card .inner .inner_text h5 {
            font-size: 20px;
            line-height: 30px;
            font-style: normal;
            font-weight: 400;
            font-family: "PT Serif", serif;
            margin-bottom: 0;
            padding-bottom: 10px;
            color: #272727;
            font-size: clamp(16px, 1.04167vw, 20px);
            line-height: clamp(21px, 1.5625vw, 30px); }
          .tgc24_wrapper .tgc-25-content .session_cards_section .ls_card .inner .inner_text .speaker_wrap .speaker_name {
            color: #272727;
            font-family: "Lato", sans-serif;
            font-size: 14px;
            font-style: italic;
            font-weight: 400;
            line-height: 23.8px;
            text-transform: uppercase;
            font-size: clamp(12px, 0.72917vw, 14px);
            line-height: clamp(17px, 1.19792vw, 23px); }
  .tgc24_wrapper .tgc-25-content .playlist_feature_slides_section {
    background-color: #ece7df;
    padding-top: clamp(50px, 5.20833vw, 100px);
    padding-bottom: clamp(50px, 5.20833vw, 100px);
    position: relative; }
    .tgc24_wrapper .tgc-25-content .playlist_feature_slides_section .snap_arrow {
      position: absolute;
      top: 49%;
      top: calc(50% - 22.5px);
      cursor: pointer;
      display: none; }
      @media (min-width: 1270px) {
        .tgc24_wrapper .tgc-25-content .playlist_feature_slides_section .snap_arrow {
          display: block; } }
      @media (min-width: 1270px) {
        .tgc24_wrapper .tgc-25-content .playlist_feature_slides_section .snap_arrow.prev_arrow {
          left: calc((100vw - 1240px) / 4.5); } }
      @media (min-width: 1500px) {
        .tgc24_wrapper .tgc-25-content .playlist_feature_slides_section .snap_arrow.prev_arrow {
          left: calc((100vw - 1489px) / 4.5); } }
      @media (min-width: 1270px) {
        .tgc24_wrapper .tgc-25-content .playlist_feature_slides_section .snap_arrow.next_arrow {
          right: calc((100vw - 1240px) / 4.5); } }
      @media (min-width: 1500px) {
        .tgc24_wrapper .tgc-25-content .playlist_feature_slides_section .snap_arrow.next_arrow {
          right: calc((100vw - 1489px) / 4.5); } }
    .tgc24_wrapper .tgc-25-content .playlist_feature_slides_section .playlist_feature_slides_row {
      overflow-x: scroll;
      scroll-snap-type: x mandatory;
      scrollbar-width: none;
      -ms-overflow-style: none; }
      .tgc24_wrapper .tgc-25-content .playlist_feature_slides_section .playlist_feature_slides_row::-webkit-scrollbar {
        display: none; }
      .tgc24_wrapper .tgc-25-content .playlist_feature_slides_section .playlist_feature_slides_row .playlist_slide_col {
        scroll-snap-align: start; }
        .tgc24_wrapper .tgc-25-content .playlist_feature_slides_section .playlist_feature_slides_row .playlist_slide_col .img_wrap {
          max-width: 500px;
          margin: auto; }
          .tgc24_wrapper .tgc-25-content .playlist_feature_slides_section .playlist_feature_slides_row .playlist_slide_col .img_wrap img {
            width: 100%;
            height: auto; }
        .tgc24_wrapper .tgc-25-content .playlist_feature_slides_section .playlist_feature_slides_row .playlist_slide_col .subtitle {
          font-family: "PT Serif", serif;
          font-size: 22px;
          font-style: italic;
          font-weight: 300;
          line-height: 23px; }
          @media (min-width: 768px) {
            .tgc24_wrapper .tgc-25-content .playlist_feature_slides_section .playlist_feature_slides_row .playlist_slide_col .subtitle {
              font-size: 32px;
              line-height: 34px; } }
        @media (min-width: 1188px) {
          .tgc24_wrapper .tgc-25-content .playlist_feature_slides_section .playlist_feature_slides_row .playlist_slide_col .embed_code_wrap {
            position: relative; }
            .tgc24_wrapper .tgc-25-content .playlist_feature_slides_section .playlist_feature_slides_row .playlist_slide_col .embed_code_wrap:before {
              display: block;
              content: "";
              width: 100%;
              padding-top: 80%; }
            .tgc24_wrapper .tgc-25-content .playlist_feature_slides_section .playlist_feature_slides_row .playlist_slide_col .embed_code_wrap iframe {
              bottom: 0;
              left: 0;
              position: absolute;
              right: 0;
              top: 0;
              width: 100%;
              height: 100%; } }
        .tgc24_wrapper .tgc-25-content .playlist_feature_slides_section .playlist_feature_slides_row .playlist_slide_col .streaming_links_wrap img {
          width: auto;
          height: 41px;
          height: clamp(31px, 2.13542vw, 41px); }
  .tgc24_wrapper .tgc-25-content .bookstore_cta_section {
    background-color: #F6F4F0;
    padding-top: clamp(75px, 5.20833vw, 100px);
    padding-bottom: clamp(75px, 5.20833vw, 100px);
    position: relative; }
    .tgc24_wrapper .tgc-25-content .bookstore_cta_section .btn {
      font-weight: 400; }
    .tgc24_wrapper .tgc-25-content .bookstore_cta_section .book_slider_wrapper {
      position: relative; }
      @media (min-width: 1270px) {
        .tgc24_wrapper .tgc-25-content .bookstore_cta_section .book_slider_wrapper.more-than-three .snap_arrow {
          display: block; } }
      .tgc24_wrapper .tgc-25-content .bookstore_cta_section .book_slider_wrapper .snap_arrow {
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        cursor: pointer;
        display: none; }
        .tgc24_wrapper .tgc-25-content .bookstore_cta_section .book_slider_wrapper .snap_arrow.prev_arrow {
          left: 10px; }
        .tgc24_wrapper .tgc-25-content .bookstore_cta_section .book_slider_wrapper .snap_arrow.next_arrow {
          right: 10px; }
      .tgc24_wrapper .tgc-25-content .bookstore_cta_section .book_slider_wrapper .book_slider_row {
        display: flex;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        scrollbar-width: none;
        -ms-overflow-style: none;
        max-width: 1100px;
        margin-right: -24.5px;
        margin-left: -24.5px; }
        @media (max-width: 767px) {
          .tgc24_wrapper .tgc-25-content .bookstore_cta_section .book_slider_wrapper .book_slider_row {
            padding-right: 24.5px; } }
        @media (min-width: 768px) {
          .tgc24_wrapper .tgc-25-content .bookstore_cta_section .book_slider_wrapper .book_slider_row {
            margin: auto; } }
        .tgc24_wrapper .tgc-25-content .bookstore_cta_section .book_slider_wrapper .book_slider_row::-webkit-scrollbar {
          display: none; }
        .tgc24_wrapper .tgc-25-content .bookstore_cta_section .book_slider_wrapper .book_slider_row .book_card_col {
          scroll-snap-align: start; }
          @media (max-width: 767px) {
            .tgc24_wrapper .tgc-25-content .bookstore_cta_section .book_slider_wrapper .book_slider_row .book_card_col {
              flex: 0 0 auto;
              width: auto;
              min-width: 307px;
              max-width: 307px;
              padding-left: 24.5px;
              padding-right: 0; } }
          .tgc24_wrapper .tgc-25-content .bookstore_cta_section .book_slider_wrapper .book_slider_row .book_card_col .book_img_wrap {
            padding-bottom: clamp(25px, 2.60417vw, 50px); }
            .tgc24_wrapper .tgc-25-content .bookstore_cta_section .book_slider_wrapper .book_slider_row .book_card_col .book_img_wrap img {
              width: 100%;
              height: auto;
              aspect-ratio: 1 / 1.5;
              object-fit: cover; }
    .tgc24_wrapper .tgc-25-content .bookstore_cta_section .bookstore_cta_text h3 {
      font-family: "PT Serif", serif;
      font-size: 22px;
      font-style: italic;
      font-weight: 300;
      line-height: 23px;
      margin-bottom: 0; }
      @media (min-width: 768px) {
        .tgc24_wrapper .tgc-25-content .bookstore_cta_section .bookstore_cta_text h3 {
          font-size: 32px;
          line-height: 34px; } }
    .tgc24_wrapper .tgc-25-content .bookstore_cta_section .bookstore_cta_text hr {
      margin: 25px auto;
      width: 125px;
      height: 1px;
      background-color: #272727; }
    .tgc24_wrapper .tgc-25-content .bookstore_cta_section .bookstore_cta_text .text_wrap {
      margin-bottom: 50px; }
      .tgc24_wrapper .tgc-25-content .bookstore_cta_section .bookstore_cta_text .text_wrap p {
        text-align: center;
        font-family: "PT Serif", serif;
        font-size: 16px;
        font-style: normal;
        font-weight: 400;
        line-height: 21px;
        font-size: clamp(16px, 1.04167vw, 20px);
        line-height: clamp(21px, 1.5625vw, 30px); }
  .tgc24_wrapper .tgc-25-content .donate_section {
    background-color: #ece7df;
    padding-top: clamp(75px, 5.20833vw, 100px);
    padding-bottom: clamp(75px, 5.20833vw, 100px);
    position: relative;
    color: #272727; }
    .tgc24_wrapper .tgc-25-content .donate_section .btn {
      font-size: clamp(14px, 1.04167vw, 20px);
      line-height: clamp(24px, 1.25vw, 24px);
      padding: 16px;
      min-width: 218px;
      font-family: "ibm-plex-sans", sans-serif; }
    .tgc24_wrapper .tgc-25-content .donate_section .content_col h3 {
      font-family: "PT Serif", serif;
      font-size: 22px;
      font-style: italic;
      font-weight: 300;
      line-height: 23px;
      margin-bottom: 0; }
      @media (min-width: 768px) {
        .tgc24_wrapper .tgc-25-content .donate_section .content_col h3 {
          font-size: 32px;
          line-height: 34px; } }
    .tgc24_wrapper .tgc-25-content .donate_section .content_col hr {
      margin: 25px auto;
      width: 125px;
      height: 1px;
      background-color: #272727; }
    .tgc24_wrapper .tgc-25-content .donate_section .content_col .donate_text {
      margin-bottom: 50px; }
      .tgc24_wrapper .tgc-25-content .donate_section .content_col .donate_text p {
        text-align: center;
        font-family: "PT Serif", serif;
        font-size: 20px;
        font-style: normal;
        font-weight: 400;
        line-height: 30px; }
  .tgc24_wrapper .livestream_2022_footer {
    background-color: #001822;
    color: #ffffff;
    font-family: "gotham", sans-serif; }
    .tgc24_wrapper .livestream_2022_footer a {
      color: #ffffff; }
    .tgc24_wrapper .livestream_2022_footer .btn.btn-outline-light {
      background-color: transparent; }
      .tgc24_wrapper .livestream_2022_footer .btn.btn-outline-light:hover {
        background-color: #ffffff;
        color: #001822; }
    .tgc24_wrapper .livestream_2022_footer .footer_logo {
      max-width: 150px;
      width: 100%; }
    .tgc24_wrapper .livestream_2022_footer .container_footer {
      padding: 125px 10px;
      max-width: 1440px;
      margin: auto;
      width: 95%; }
      @media (max-width: 767.98px) {
        .tgc24_wrapper .livestream_2022_footer .container_footer {
          padding: 66px 10px; } }
      .tgc24_wrapper .livestream_2022_footer .container_footer .footer_about_text {
        font-size: 15px;
        line-height: 23px;
        margin: 15px 0 20px; }
        @media (min-width: 768px) {
          .tgc24_wrapper .livestream_2022_footer .container_footer .footer_about_text {
            max-width: 470px;
            margin: 20px 0 30px; } }
      .tgc24_wrapper .livestream_2022_footer .container_footer .sub_footer_links {
        text-transform: uppercase;
        margin: 0 0 30px;
        text-align: left; }
        @media (min-width: 768px) {
          .tgc24_wrapper .livestream_2022_footer .container_footer .sub_footer_links {
            text-align: right;
            margin: 20px 0 30px; } }
        .tgc24_wrapper .livestream_2022_footer .container_footer .sub_footer_links .d-inline-flex a {
          font-size: 14px;
          font-weight: 700;
          padding: 0;
          margin-bottom: 15px;
          display: block; }
          @media (min-width: 768px) {
            .tgc24_wrapper .livestream_2022_footer .container_footer .sub_footer_links .d-inline-flex a {
              display: inline-block; } }
          .tgc24_wrapper .livestream_2022_footer .container_footer .sub_footer_links .d-inline-flex a:hover {
            color: #435F64; }
        .tgc24_wrapper .livestream_2022_footer .container_footer .sub_footer_links .footer_social {
          font-size: 24px;
          letter-spacing: 7px;
          color: #ffffff;
          text-align: left; }
          @media (min-width: 768px) {
            .tgc24_wrapper .livestream_2022_footer .container_footer .sub_footer_links .footer_social {
              margin: 0 0 31px 0;
              text-align: right;
              font-size: 24px; } }
          .tgc24_wrapper .livestream_2022_footer .container_footer .sub_footer_links .footer_social a {
            text-decoration: none; }
            .tgc24_wrapper .livestream_2022_footer .container_footer .sub_footer_links .footer_social a:hover {
              text-decoration: none !important; }
            .tgc24_wrapper .livestream_2022_footer .container_footer .sub_footer_links .footer_social a .fa,
            .tgc24_wrapper .livestream_2022_footer .container_footer .sub_footer_links .footer_social a .fas,
            .tgc24_wrapper .livestream_2022_footer .container_footer .sub_footer_links .footer_social a .fab {
              -moz-transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1) 50ms;
              -ms-transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1) 50ms;
              -o-transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1) 50ms;
              -webkit-transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1) 50ms;
              transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1) 50ms;
              -webkit-backface-visibility: hidden;
              backface-visibility: hidden; }
              .tgc24_wrapper .livestream_2022_footer .container_footer .sub_footer_links .footer_social a .fa:hover,
              .tgc24_wrapper .livestream_2022_footer .container_footer .sub_footer_links .footer_social a .fas:hover,
              .tgc24_wrapper .livestream_2022_footer .container_footer .sub_footer_links .footer_social a .fab:hover {
                -moz-transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1) 50ms;
                -ms-transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1) 50ms;
                -o-transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1) 50ms;
                -webkit-transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1) 50ms;
                transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1) 50ms;
                -webkit-backface-visibility: hidden;
                backface-visibility: hidden;
                text-decoration: none; }
                .tgc24_wrapper .livestream_2022_footer .container_footer .sub_footer_links .footer_social a .fa:hover.fa-facebook-f, .tgc24_wrapper .livestream_2022_footer .container_footer .sub_footer_links .footer_social a .fa:hover.fa-facebook-square,
                .tgc24_wrapper .livestream_2022_footer .container_footer .sub_footer_links .footer_social a .fas:hover.fa-facebook-f,
                .tgc24_wrapper .livestream_2022_footer .container_footer .sub_footer_links .footer_social a .fas:hover.fa-facebook-square,
                .tgc24_wrapper .livestream_2022_footer .container_footer .sub_footer_links .footer_social a .fab:hover.fa-facebook-f,
                .tgc24_wrapper .livestream_2022_footer .container_footer .sub_footer_links .footer_social a .fab:hover.fa-facebook-square {
                  color: #365396; }
                .tgc24_wrapper .livestream_2022_footer .container_footer .sub_footer_links .footer_social a .fa:hover.fa-twitter,
                .tgc24_wrapper .livestream_2022_footer .container_footer .sub_footer_links .footer_social a .fas:hover.fa-twitter,
                .tgc24_wrapper .livestream_2022_footer .container_footer .sub_footer_links .footer_social a .fab:hover.fa-twitter {
                  color: #00a8f0; }
                .tgc24_wrapper .livestream_2022_footer .container_footer .sub_footer_links .footer_social a .fa:hover.fa-instagram,
                .tgc24_wrapper .livestream_2022_footer .container_footer .sub_footer_links .footer_social a .fas:hover.fa-instagram,
                .tgc24_wrapper .livestream_2022_footer .container_footer .sub_footer_links .footer_social a .fab:hover.fa-instagram {
                  color: #386c99; }
                .tgc24_wrapper .livestream_2022_footer .container_footer .sub_footer_links .footer_social a .fa:hover.fa-youtube, .tgc24_wrapper .livestream_2022_footer .container_footer .sub_footer_links .footer_social a .fa:hover.fa-youtube-play,
                .tgc24_wrapper .livestream_2022_footer .container_footer .sub_footer_links .footer_social a .fas:hover.fa-youtube,
                .tgc24_wrapper .livestream_2022_footer .container_footer .sub_footer_links .footer_social a .fas:hover.fa-youtube-play,
                .tgc24_wrapper .livestream_2022_footer .container_footer .sub_footer_links .footer_social a .fab:hover.fa-youtube,
                .tgc24_wrapper .livestream_2022_footer .container_footer .sub_footer_links .footer_social a .fab:hover.fa-youtube-play {
                  color: #ff3333; }
                .tgc24_wrapper .livestream_2022_footer .container_footer .sub_footer_links .footer_social a .fa:hover.fa-vimeo-v, .tgc24_wrapper .livestream_2022_footer .container_footer .sub_footer_links .footer_social a .fa:hover.fa-vimeo,
                .tgc24_wrapper .livestream_2022_footer .container_footer .sub_footer_links .footer_social a .fas:hover.fa-vimeo-v,
                .tgc24_wrapper .livestream_2022_footer .container_footer .sub_footer_links .footer_social a .fas:hover.fa-vimeo,
                .tgc24_wrapper .livestream_2022_footer .container_footer .sub_footer_links .footer_social a .fab:hover.fa-vimeo-v,
                .tgc24_wrapper .livestream_2022_footer .container_footer .sub_footer_links .footer_social a .fab:hover.fa-vimeo {
                  color: #4ab7ed; }
                .tgc24_wrapper .livestream_2022_footer .container_footer .sub_footer_links .footer_social a .fa:hover.fa-rss,
                .tgc24_wrapper .livestream_2022_footer .container_footer .sub_footer_links .footer_social a .fas:hover.fa-rss,
                .tgc24_wrapper .livestream_2022_footer .container_footer .sub_footer_links .footer_social a .fab:hover.fa-rss {
                  color: #435F64; }
                .tgc24_wrapper .livestream_2022_footer .container_footer .sub_footer_links .footer_social a .fa:hover.fa-pinterest, .tgc24_wrapper .livestream_2022_footer .container_footer .sub_footer_links .footer_social a .fa:hover.fa-pinterest-p,
                .tgc24_wrapper .livestream_2022_footer .container_footer .sub_footer_links .footer_social a .fas:hover.fa-pinterest,
                .tgc24_wrapper .livestream_2022_footer .container_footer .sub_footer_links .footer_social a .fas:hover.fa-pinterest-p,
                .tgc24_wrapper .livestream_2022_footer .container_footer .sub_footer_links .footer_social a .fab:hover.fa-pinterest,
                .tgc24_wrapper .livestream_2022_footer .container_footer .sub_footer_links .footer_social a .fab:hover.fa-pinterest-p {
                  color: #cc1919; }
      .tgc24_wrapper .livestream_2022_footer .container_footer .footer_copy {
        font-size: 12px;
        letter-spacing: 1px; }
        @media (max-width: 767.98px) {
          .tgc24_wrapper .livestream_2022_footer .container_footer .footer_copy {
            letter-spacing: normal;
            padding-top: 15px; } }
  .tgc24_wrapper .fluid-width-video-wrapper {
    padding-top: 56.2641% !important; }

html.popup-open,
body.popup-open {
  overflow: hidden;
  height: 100%; }

.popup-overlay {
  overscroll-behavior: contain;
  position: fixed;
  inset: 0;
  width: 100%;
  height: 100%;
  overflow-y: auto;
  display: none;
  z-index: 9999;
  background-color: #f4efe6;
  font-family: "PT Serif", serif;
  color: #435F64;
  text-align: center; }
  .popup-overlay.is-active {
    display: flex;
    flex-direction: column; }
  .popup-overlay .popup-content {
    display: flex;
    flex-direction: column;
    margin: 0;
    width: 100%;
    flex: 1;
    overflow: visible;
    padding: 0;
    align-items: stretch; }
    .popup-overlay .popup-content::-webkit-scrollbar {
      width: 4px; }
    .popup-overlay .popup-content::-webkit-scrollbar-track {
      background: #e4dbcb; }
    .popup-overlay .popup-content::-webkit-scrollbar-thumb {
      background: #435F64;
      border-radius: 8px; }
    @media (min-width: 768px) {
      .popup-overlay .popup-content {
        display: flex;
        flex-direction: row; } }
    .popup-overlay .popup-content .popup-main {
      display: flex;
      flex-direction: column;
      align-items: stretch;
      width: 100%;
      background-color: #f4efe6;
      padding: 40px; }
      .popup-overlay .popup-content .popup-main .popup-inner {
        width: 100%;
        max-width: 600px;
        margin: 90px auto 0; }
    .popup-overlay .popup-content .popup-schedule {
      height: auto;
      width: 100%;
      background-color: #435F64;
      display: flex;
      flex-direction: column;
      flex: 1 1 auto;
      padding: 0 20px; }
    @media (min-width: 768px) {
      .popup-overlay .popup-content .popup-main {
        flex: 0 0 60%;
        display: flex;
        flex-direction: column; }
      .popup-overlay .popup-content .popup-schedule {
        flex: 0 0 40%;
        display: flex;
        flex-direction: column; } }
    .popup-overlay .popup-content .register-text {
      margin-bottom: 15px;
      font-size: 16px;
      font-family: "Lato", sans-serif; }
      @media (min-width: 768px) {
        .popup-overlay .popup-content .register-text {
          font-size: 22px; } }
    .popup-overlay .popup-content img {
      width: 100%;
      height: auto;
      width: clamp(281px, 26.04167vw, 500px); }
      @media (min-width: 768px) {
        .popup-overlay .popup-content img {
          width: 500px;
          height: 100px; } }
    .popup-overlay .popup-content .livestream-title {
      font-size: 26px;
      font-style: italic;
      font-weight: 300; }
      @media (min-width: 768px) {
        .popup-overlay .popup-content .livestream-title {
          font-size: 42px; } }
    .popup-overlay .popup-content form {
      margin-top: 20px;
      text-align: left; }
      .popup-overlay .popup-content form .hs-form-field {
        width: 100% !important; }
      .popup-overlay .popup-content form input,
      .popup-overlay .popup-content form select {
        width: 100% !important;
        padding: 12px;
        border: 0;
        outline: 0;
        margin-right: 0; }
        .popup-overlay .popup-content form input::-webkit-input-placeholder,
        .popup-overlay .popup-content form select::-webkit-input-placeholder {
          color: rgba(22, 27, 29, 0.47); }
        .popup-overlay .popup-content form input::-moz-placeholder,
        .popup-overlay .popup-content form select::-moz-placeholder {
          color: rgba(22, 27, 29, 0.47); }
        .popup-overlay .popup-content form input:-ms-input-placeholder,
        .popup-overlay .popup-content form select:-ms-input-placeholder {
          color: rgba(22, 27, 29, 0.47); }
        .popup-overlay .popup-content form input:-moz-placeholder,
        .popup-overlay .popup-content form select:-moz-placeholder {
          color: rgba(22, 27, 29, 0.47); }
        .popup-overlay .popup-content form input option:first-child,
        .popup-overlay .popup-content form select option:first-child {
          color: rgba(22, 27, 29, 0.47); }
        .popup-overlay .popup-content form input:invalid,
        .popup-overlay .popup-content form select:invalid {
          color: rgba(22, 27, 29, 0.47); }
      .popup-overlay .popup-content form label {
        display: none !important; }
      .popup-overlay .popup-content form .legal-consent-container {
        display: none !important; }
      .popup-overlay .popup-content form input[type="submit"] {
        background-color: #fbb818;
        color: #001822;
        padding: 15px;
        text-transform: uppercase;
        text-wrap: initial;
        word-wrap: break-word;
        -webkit-hyphens: auto;
        -ms-hyphens: auto;
        -moz-hyphens: auto;
        hyphens: auto; }
      .popup-overlay .popup-content form .submit-btns input {
        color: white;
        padding: 15px;
        text-transform: uppercase;
        text-wrap: initial;
        word-wrap: break-word;
        -webkit-hyphens: auto;
        -ms-hyphens: auto;
        -moz-hyphens: auto;
        hyphens: auto; }
        .popup-overlay .popup-content form .submit-btns input:nth-child(1) {
          background-color: #435F64;
          margin-bottom: 25px; }
      .popup-overlay .popup-content form ul {
        list-style: none;
        padding: 0;
        margin: 0; }
        .popup-overlay .popup-content form ul li.hs-form-booleancheckbox {
          display: flex;
          margin-right: 10px; }
          .popup-overlay .popup-content form ul li.hs-form-booleancheckbox label {
            font-size: 14px;
            font-family: "Lato", sans-serif; }
            .popup-overlay .popup-content form ul li.hs-form-booleancheckbox label input {
              width: auto;
              margin-top: 5px;
              margin-right: 5px; }
    .popup-overlay .popup-content .hbspt-form .field {
      margin-bottom: 10px; }
      .popup-overlay .popup-content .hbspt-form .field label {
        margin-bottom: 4px; }
    .popup-overlay .popup-content .hbspt-form .hs-richtext {
      font-size: 14px;
      font-family: "Lato", sans-serif; }
    .popup-overlay .popup-content .popup-schedule .banner_sub_text {
      margin-top: 116px;
      text-align: center;
      display: block; }
    .popup-overlay .popup-content .popup-schedule .banner_sub_text * {
      color: white !important; }

@media (min-width: 1024px) {
  .page-natevents-save-date {
    display: flex; } }

.page-natevents-save-date .natevents-header {
  display: none; }
  .page-natevents-save-date .natevents-header.header_wrapper {
    height: 80px;
    max-height: 80px; }
    @media (max-width: 1269.98px) {
      .page-natevents-save-date .natevents-header.header_wrapper {
        height: 50px;
        max-height: 50px; } }
    .page-natevents-save-date .natevents-header.header_wrapper .header_contents {
      height: 80px; }
      @media (max-width: 1269.98px) {
        .page-natevents-save-date .natevents-header.header_wrapper .header_contents {
          height: 50px; } }
      .page-natevents-save-date .natevents-header.header_wrapper .header_contents .menu_btn_wrapper {
        background-color: #ecd2a0; }
      .page-natevents-save-date .natevents-header.header_wrapper .header_contents .brand {
        line-height: 80px;
        max-height: 80px; }
        .page-natevents-save-date .natevents-header.header_wrapper .header_contents .brand .nat_events_logo {
          max-height: 45px; }
  .page-natevents-save-date .natevents-header:not(.top) .nat_events_logo {
    filter: brightness(0) invert(1); }

.page-natevents-save-date .header {
  background-size: cover;
  background-repeat: no-repeat;
  width: 60%;
  display: inline-block;
  float: left; }
  @media (max-width: 1269.98px) {
    .page-natevents-save-date .header {
      width: 100%;
      display: block;
      float: none;
      min-height: 70vh; } }
  .page-natevents-save-date .header > .background {
    display: none; }

.page-natevents-save-date .std_section {
  width: 40%;
  display: inline-block;
  background-color: #435F64; }
  @media (max-width: 1269.98px) {
    .page-natevents-save-date .std_section {
      width: 100%;
      display: block;
      float: none;
      height: auto; } }
  .page-natevents-save-date .std_section img {
    max-width: 100%; }
  .page-natevents-save-date .std_section .stay_up_to_date_form_wrapper {
    align-self: baseline !important; }
  .page-natevents-save-date .std_section .std_title {
    text-align: center;
    font-family: "gotham", sans-serif;
    font-size: 48px;
    text-transform: uppercase;
    letter-spacing: 9.6px;
    font-weight: 600;
    color: #000; }
    @media (max-width: 1269.98px) {
      .page-natevents-save-date .std_section .std_title {
        margin-top: 48px;
        margin-bottom: 50px;
        font-size: 32px;
        letter-spacing: 5.4px; } }

@media (max-width: 1269.98px) {
  .page-natevents-save-date .nat_banner_container {
    height: auto; } }

.page-natevents-save-date .nat_banner_inner {
  margin-top: 200px;
  margin-bottom: 100px;
  margin: 0;
  padding-top: 0px; }
  .page-natevents-save-date .nat_banner_inner img {
    max-width: 100%; }
  .page-natevents-save-date .nat_banner_inner .banner_text {
    text-align: center;
    margin: auto;
    display: block;
    font-size: 24px; }

.page-natevents-save-date .banner_sub_text {
  text-align: center;
  margin: auto;
  margin-top: 40px;
  display: block;
  font-size: 16px;
  font-weight: 600; }
  @media (min-width: 1024px) {
    .page-natevents-save-date .banner_sub_text {
      margin-top: 116px; } }
  .page-natevents-save-date .banner_sub_text * {
    color: white !important; }

.page-natevents-save-date .video_play_btn_wrap {
  text-align: center; }
  .page-natevents-save-date .video_play_btn_wrap + .banner_sub_text {
    margin-top: 0px; }

.page-natevents-save-date .background {
  opacity: 1;
  height: 100%;
  background-size: cover;
  background-repeat: no-repeat; }

.page-natevents-save-date .stay_up_to_date_form {
  max-width: 326px;
  margin: 70px auto 20px; }
  @media (max-width: 1269.98px) {
    .page-natevents-save-date .stay_up_to_date_form {
      margin-top: 50px; } }
  .page-natevents-save-date .stay_up_to_date_form .newsletter_signup_form_text {
    text-align: center;
    font-size: 13px;
    color: #000;
    font-family: "gotham", sans-serif; }
    .page-natevents-save-date .stay_up_to_date_form .newsletter_signup_form_text .form-check {
      margin-bottom: 0;
      padding: 17px 0;
      margin-right: 0; }
  .page-natevents-save-date .stay_up_to_date_form .mc-col-email {
    position: relative; }
    .page-natevents-save-date .stay_up_to_date_form .mc-col-email label {
      font-family: "gotham", sans-serif;
      font-size: 12px;
      color: #000; }
  .page-natevents-save-date .stay_up_to_date_form input.email {
    padding: 10px 17px;
    border: none;
    border: 1px solid #c4c4c4;
    border-radius: 8px;
    margin-bottom: 20px;
    min-height: 48px;
    width: 100%;
    font-family: "gotham", sans-serif; }
    @media (max-width: 1269.98px) {
      .page-natevents-save-date .stay_up_to_date_form input.email {
        text-indent: 0px;
        font-size: 16px; } }
    .page-natevents-save-date .stay_up_to_date_form input.email::placeholder {
      /* Chrome, Firefox, Opera, Safari 10.1+ */
      color: #393939;
      opacity: 1;
      /* Firefox */
      font-style: italic; }
    .page-natevents-save-date .stay_up_to_date_form input.email:-ms-input-placeholder {
      /* Internet Explorer 10-11 */
      color: #393939;
      font-style: italic; }
    .page-natevents-save-date .stay_up_to_date_form input.email::-ms-input-placeholder {
      /* Microsoft Edge */
      color: #393939;
      font-style: italic; }
  .page-natevents-save-date .stay_up_to_date_form input.btn {
    width: 100%;
    height: 100%;
    border: none;
    border-radius: 8px !important;
    background-color: #00356a;
    color: #fff;
    font-family: "gotham", sans-serif;
    letter-spacing: 0.6px;
    font-weight: 700;
    font-size: 12px;
    text-transform: uppercase;
    font-weight: 500;
    line-height: 1;
    cursor: pointer;
    padding: 20px; }
  .page-natevents-save-date .stay_up_to_date_form .grecaptcha-badge {
    display: none; }
  .page-natevents-save-date .stay_up_to_date_form #mce-responses {
    top: 45px;
    position: absolute; }
    .page-natevents-save-date .stay_up_to_date_form #mce-responses .response {
      font-family: "gotham", sans-serif;
      font-size: 13px;
      padding-left: 18px; }

.page-natevents-save-date .save_date_footer_text {
  margin: 0;
  text-align: center;
  font-family: "gotham", sans-serif;
  font-size: 11px; }
  @media (max-width: 1269.98px) {
    .page-natevents-save-date .save_date_footer_text {
      margin-bottom: 50px; } }
  .page-natevents-save-date .save_date_footer_text p {
    color: white; }
  .page-natevents-save-date .save_date_footer_text a {
    color: white;
    text-decoration: underline; }

.page-natevents-save-date .natevents-footer {
  display: none; }

.page-natevents-save-date #qm {
  display: none; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS1saXZlc3RyZWFtLTIwMjYuY3NzIiwic291cmNlcyI6WyJwYWdlLWxpdmVzdHJlYW0tMjAyNi5zY3NzIiwiLi4vY29tbW9uL190aGVtZV92YXJpYWJsZXMuc2NzcyIsIi4uL2NvbW1vbi9fbWl4aW5zLnNjc3MiLCIuLi9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19mdW5jdGlvbnMuc2NzcyIsIi4uL21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3ZhcmlhYmxlcy5zY3NzIiwiLi4vbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbWl4aW5zLnNjc3MiLCIuLi9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3ZlbmRvci9fcmZzLnNjc3MiLCIuLi9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZGVwcmVjYXRlLnNjc3MiLCIuLi9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYnJlYWtwb2ludHMuc2NzcyIsIi4uL21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ob3Zlci5zY3NzIiwiLi4vbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2ltYWdlLnNjc3MiLCIuLi9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYmFkZ2Uuc2NzcyIsIi4uL21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19yZXNpemUuc2NzcyIsIi4uL21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19zY3JlZW4tcmVhZGVyLnNjc3MiLCIuLi9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fc2l6ZS5zY3NzIiwiLi4vbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3Jlc2V0LXRleHQuc2NzcyIsIi4uL21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190ZXh0LWVtcGhhc2lzLnNjc3MiLCIuLi9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGV4dC1oaWRlLnNjc3MiLCIuLi9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGV4dC10cnVuY2F0ZS5zY3NzIiwiLi4vbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3Zpc2liaWxpdHkuc2NzcyIsIi4uL21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19hbGVydC5zY3NzIiwiLi4vbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2J1dHRvbnMuc2NzcyIsIi4uL21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19jYXJldC5zY3NzIiwiLi4vbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3BhZ2luYXRpb24uc2NzcyIsIi4uL21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19saXN0cy5zY3NzIiwiLi4vbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2xpc3QtZ3JvdXAuc2NzcyIsIi4uL21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19uYXYtZGl2aWRlci5zY3NzIiwiLi4vbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2Zvcm1zLnNjc3MiLCIuLi9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGFibGUtcm93LnNjc3MiLCIuLi9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYmFja2dyb3VuZC12YXJpYW50LnNjc3MiLCIuLi9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYm9yZGVyLXJhZGl1cy5zY3NzIiwiLi4vbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JveC1zaGFkb3cuc2NzcyIsIi4uL21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ncmFkaWVudHMuc2NzcyIsIi4uL21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190cmFuc2l0aW9uLnNjc3MiLCIuLi9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fY2xlYXJmaXguc2NzcyIsIi4uL21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ncmlkLWZyYW1ld29yay5zY3NzIiwiLi4vbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2dyaWQuc2NzcyIsIi4uL21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19mbG9hdC5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIkBpbXBvcnQgXCIuLi9jb21tb24vdGhlbWVfdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwiLi4vY29tbW9uL21peGluc1wiO1xuQGltcG9ydCBcIi4uL21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZnVuY3Rpb25zXCI7XG5AaW1wb3J0IFwiLi4vbW9kdWxlcy9ib290c3RyYXAvc2Nzcy92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCIuLi9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGluc1wiO1xuJGFjY2VudF9jb2xvcjogIzQzNUY2NDtcbiRhY2NlbnRfY29sb3IyOiAjYjg4MjY0O1xuJGxzX2dyZWVuOiAjNDM1RjY0O1xuJGRhcms6ICMyNzI3Mjc7XG4kZm9udF9sYXRvOiBcIkxhdG9cIiwgc2Fucy1zZXJpZjtcbiRmb250X2libTogXCJpYm0tcGxleC1zYW5zXCIsIHNhbnMtc2VyaWY7XG4kZm9udF9wdF9zZXJpZjogXCJQVCBTZXJpZlwiLCBzZXJpZjtcbiNoZWFkZXItc3BhY2VyLFxuLmZvb3Rlcl9ib3R0b20ubmV3OmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4udGdjMjRfd3JhcHBlciB7XG5cbiAgLnBhZ2UtbmF0ZXZlbnRzLXNhdmUtZGF0ZSB7XG4gICAgbWluLWhlaWdodDogMTAwdmg7XG4gIH1cblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjZGNEYwO1xuICAuY29udGFpbmVyX3dpZGUge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcbiAgICAgIG1heC13aWR0aDogMTY4OXB4O1xuICAgIH1cbiAgfVxuICAuYnRuLXByaW1hcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY2NlbnRfY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkYWNjZW50X2NvbG9yO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LWZhbWlseTogJGZvbnRfaWJtO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsaW5lLWhlaWdodDogMTFweDtcbiAgICBsZXR0ZXItc3BhY2luZzogMS4wNHB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgJjpob3ZlcixcbiAgICAmOmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGFjY2VudF9jb2xvciwgMTAlKSAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGFjY2VudF9jb2xvciwgMTAlKSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuICAuYnRuLWdyZWVuIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbHNfZ3JlZW47XG4gICAgYm9yZGVyLWNvbG9yOiAkbHNfZ3JlZW47XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udF9pYm07XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAxLjA0cHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBAaW5jbHVkZSBjbGFtcEF1dG9Wdyhmb250LXNpemUsIDE0LCAyMCk7XG4gICAgQGluY2x1ZGUgY2xhbXBBdXRvVncobGluZS1oZWlnaHQsIDI0LCAyNCk7XG4gICAgcGFkZGluZzogMTZweDtcbiAgICBtaW4td2lkdGg6IDIxOHB4O1xuICAgICY6aG92ZXIsXG4gICAgJjphY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRsc19ncmVlbiwgMTAlKSAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGxzX2dyZWVuLCAxMCUpICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIC50Z2MyNF9oZWFkZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY2NlbnRfY29sb3I7XG4gICAgQGluY2x1ZGUgY2xhbXBBdXRvVncoXCJwYWRkaW5nLXRvcFwiLCAyNSwgMzApO1xuICAgIEBpbmNsdWRlIGNsYW1wQXV0b1Z3KFwicGFkZGluZy1ib3R0b21cIiwgMTQuMzksIDMwKTtcbiAgICAuY29udGFpbmVyIHtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxNjg5cHg7XG4gICAgICB9XG4gICAgfVxuICAgIC5idG4ge1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250X2libTtcbiAgICAgIGNvbG9yOiAjRkNGNkYxO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0U1NzI2RDtcbiAgICAgIGJvcmRlci1jb2xvcjogI0U1NzI2RDtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIG1pbi13aWR0aDogMTAwcHg7XG4gICAgICBwYWRkaW5nOiAxMnB4IDEwcHg7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIH1cbiAgICB9XG4gICAgaW1nIHtcbiAgICAgIEBpbmNsdWRlIGNsYW1wQXV0b1Z3KHdpZHRoLCAxMzIsIDI3OCk7XG4gICAgICBtYXgtd2lkdGg6IDI3OHB4O1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxuICAudGdjLTI1LWNvbnRlbnQge1xuICAgIC5jb250YWluZXIge1xuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDEyNzBweCkge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICAgIC5oZXJvX3NlY3Rpb24ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0Y2RjRGMDtcbiAgICAgIEBpbmNsdWRlIGNsYW1wQXV0b1Z3KFwicGFkZGluZy10b3BcIiwgMzUsIDUwKTtcbiAgICAgIEBpbmNsdWRlIGNsYW1wQXV0b1Z3KFwicGFkZGluZy1ib3R0b21cIiwgMzUsIDUwKTtcbiAgICAgIC5idG4ge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAzMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDEzcHggMTVweDtcbiAgICAgIH1cbiAgICAgIC5jb250ZW50X3dyYXAge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXM7XG4gICAgICAgICYuaXNfYWpheGluZyB7XG4gICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBpZnJhbWUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgICAudmlkZW9fc3Vic2VjdGlvbiB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIC8vYmFja2dyb3VuZC1jb2xvcjogI2VjZTdkZjtcbiAgICAgICAgLnZpZGVvX2luZm8ge1xuICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgICAgLnNlc3Npb25fdHlwZV90aW1lIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYWNjZW50X2NvbG9yO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7IC8vaW5jcmVhc2VkIGZyb20gMTJweCBwZXIgdGFzayByZXF1ZXN0XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250X2xhdG87XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE0cHg7IC8vaW5jcmVhc2VkIGZyb20gMTJweCBwZXIgdGFzayByZXF1ZXN0XG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIC5zZXNzaW9uX3R5cGVfdGltZV9zZXBlcmF0b3Ige1xuICAgICAgICAgICAgLy8gICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWNjZW50X2NvbG9yO1xuICAgICAgICAgICAgLy8gICBtYXJnaW46IDVweCAxMHB4O1xuICAgICAgICAgICAgLy8gICB3aWR0aDogMXB4O1xuICAgICAgICAgICAgLy8gfVxuICAgICAgICAgIH1cbiAgICAgICAgICAuc2Vzc2lvbl90aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7IC8vaW5jcmVhc2VkIGZyb20gMTRweCBwZXIgdGFzayByZXF1ZXN0XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAuc2Vzc2lvbl9zcGVha2VycyB7XG4gICAgICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICAgICAgICBmb250LXNpemU6IDEycHg7IC8vaW5jcmVhc2VkIGZyb20gMTBweCBwZXIgdGFzayByZXF1ZXN0XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnRfbGF0bztcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuc3BvbnNvciB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIGNvbG9yOiAkZGFyaztcbiAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9sYXRvO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDsgLy9pbmNyZWFzZWQgZnJvbSAxMnB4IHBlciB0YXNrIHJlcXVlc3RcbiAgICAgICAgICAuc3BvbnNvci10ZXh0IHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICB9XG4gICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICAgICAgd2lkdGg6IDkwcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyaztcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTIwcHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICB3aWR0aDogMXB4O1xuICAgICAgICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDY0cHgpO1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAzMnB4O1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGNsYW1wQXV0b1Z3KFwibWF4LXdpZHRoXCIsIDE2OCwgMTY4KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5zY2hlZHVsZSB7XG4gICAgICAgIC5zY2hlZHVsZV9saXN0X2J0biB7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250X3B0X3NlcmlmO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgICBjb2xvcjogJGRhcms7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzJweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuY29sbGFwc2VfYXJyb3cge1xuICAgICAgICAgICAgaGVpZ2h0OiA3cHg7XG4gICAgICAgICAgICB3aWR0aDogMTZweDtcbiAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3M7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAmLm9wZW4ge1xuICAgICAgICAgICAgLmNvbGxhcHNlX2Fycm93IHtcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5zY2hlZHVsZS1saXN0IHtcbiAgICAgICAgICBmb250LWZhbWlseTogJGZvbnRfcHRfc2VyaWY7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIG1heC1oZWlnaHQ6IDU4MHB4O1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgLy8gc3R5bGUgZm9yIHNjcm9sbGJhclxuICAgICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgICAgICAgIHdpZHRoOiA0cHg7XG4gICAgICAgICAgfVxuICAgICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNlNGRiY2I7XG4gICAgICAgICAgfVxuICAgICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRhY2NlbnRfY29sb3I7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLnNjaGVkdWxlLWl0ZW0ge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI5cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAud2hlbi10eXBlIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA2cHg7XG4gICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9sYXRvO1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgLndoZW4tdHlwZS1zZXBlcmF0b3Ige1xuICAgICAgICAgICAgICAgIG1hcmdpbjogNXB4IDEwcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDFweDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnRhbGstdGl0bGUge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7IC8vaW5jcmVhc2VkIGZyb20gMTRweCBwZXIgdGFzayByZXF1ZXN0XG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDRweDtcbiAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAudGFsay13aG8ge1xuICAgICAgICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9sYXRvO1xuICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7IC8vaW5jcmVhc2VkIGZyb20gMTBweCBwZXIgdGFzayByZXF1ZXN0XG4gICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuc2Vzc2lvbl9jYXJkc19zZWN0aW9uIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGNkY0RjA7XG4gICAgICBAaW5jbHVkZSBjbGFtcEF1dG9WdyhcInBhZGRpbmctdG9wXCIsIDM1LCA1MCk7XG4gICAgICBAaW5jbHVkZSBjbGFtcEF1dG9WdyhcInBhZGRpbmctYm90dG9tXCIsIDUwLCAxMDApO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAuc25hcF9hcnJvdyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAyOCU7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEyNzBweCkge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICAgICYucHJldl9hcnJvdyB7XG4gICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEyNzBweCkge1xuICAgICAgICAgICAgbGVmdDogY2FsYygoMTAwdncgLSAxMjQwcHgpIC8gNC41KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDE1MDBweCkge1xuICAgICAgICAgICAgbGVmdDogY2FsYygoMTAwdncgLSAxNDg5cHgpIC8gNC41KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5uZXh0X2Fycm93IHtcbiAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTI3MHB4KSB7XG4gICAgICAgICAgICByaWdodDogY2FsYygoMTAwdncgLSAxMjQwcHgpIC8gNC41KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDE1MDBweCkge1xuICAgICAgICAgICAgcmlnaHQ6IGNhbGMoKDEwMHZ3IC0gMTQ4OXB4KSAvIDQuNSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuc2Vzc2lvbl9jYXJkc19yb3cge1xuICAgICAgICBvdmVyZmxvdy14OiBzY3JvbGw7XG4gICAgICAgIHNjcm9sbC1zbmFwLXR5cGU6IHggbWFuZGF0b3J5O1xuICAgICAgICAvL2hpZGUgc2Nyb2xsYmFyXG4gICAgICAgIHNjcm9sbGJhci13aWR0aDogbm9uZTtcbiAgICAgICAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lO1xuICAgICAgICAmOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5sc19jYXJkX2NvbCB7XG4gICAgICAgICAgc2Nyb2xsLXNuYXAtYWxpZ246IHN0YXJ0O1xuXG4gICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDEyNzBweCkge1xuICAgICAgICAgICAgbWluLXdpZHRoOiA0MDBweDtcbiAgICAgICAgICAgIG1heC13aWR0aDogNDAwcHg7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA3cHg7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDdweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDMwN3B4O1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAzMDdweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5sc19jYXJkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0Y2RjRGMDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMjVweDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjVzO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICYuY3VycmVudGx5X2FjdGl2ZSxcbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlY2U3ZGY7XG4gICAgICAgIH1cbiAgICAgICAgLmlubmVyIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgcGFkZGluZzogMTVweCAxNXB4IDIwcHggMTVweDtcbiAgICAgICAgICAuaW5uZXJfaGVhZCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBhc3BlY3QtcmF0aW8oOSwgNSk7XG4gICAgICAgICAgICAuYmdfaW1nIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgYWJzb2x1dGUtY292ZXI7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgIHotaW5kZXg6IDA7XG4gICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDI1cHg7XG4gICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDI1cHg7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnBsYXlfYnRuIHtcbiAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5zZXNzaW9uX2xpbmsge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBhYnNvbHV0ZS1jb3ZlcjtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnZpZF9iYWRnZSB7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgICAgICAgICBsZWZ0OiAxMHB4O1xuICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxNHB4O1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDM5LCAzOSwgMzksIDAuODEpO1xuICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDExcHg7XG4gICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbiAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgcGFkZGluZzogOHB4IDEwcHg7XG4gICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9sYXRvO1xuICAgICAgICAgICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgICAgICAgICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiAkYWNjZW50X2NvbG9yO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmlubmVyX3RleHQge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgIC5zZXNzaW9uX21ldGEge1xuICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICAgIGg2IHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGFjY2VudF9jb2xvcjtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnRfbGF0bztcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI3cHg7XG4gICAgICAgICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGNsYW1wQXV0b1Z3KGZvbnQtc2l6ZSwgMTQsIDE2KTsgLy9pbmNyZWFzZWQgZnJvbSAxMnB4IHBlciB0YXNrIHJlcXVlc3RcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBjbGFtcEF1dG9WdyhsaW5lLWhlaWdodCwgMjAsIDI3KTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9wdF9zZXJpZjtcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICAgIGNvbG9yOiAkZGFyaztcbiAgICAgICAgICAgICAgQGluY2x1ZGUgY2xhbXBBdXRvVncoZm9udC1zaXplLCAxNiwgMjApOyAvL2luY3JlYXNlZCBmcm9tIDE0cHggcGVyIHRhc2sgcmVxdWVzdFxuICAgICAgICAgICAgICBAaW5jbHVkZSBjbGFtcEF1dG9WdyhsaW5lLWhlaWdodCwgMjEsIDMwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5zcGVha2VyX3dyYXAge1xuICAgICAgICAgICAgICAuc3BlYWtlcl9uYW1lIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGRhcms7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250X2xhdG87XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMy44cHg7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBjbGFtcEF1dG9Wdyhmb250LXNpemUsIDEyLCAxNCk7IC8vaW5jcmVhc2VkIGZyb20gMTBweCBwZXIgdGFzayByZXF1ZXN0XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgY2xhbXBBdXRvVncobGluZS1oZWlnaHQsIDE3LCAyMyk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAucGxheWxpc3RfZmVhdHVyZV9zbGlkZXNfc2VjdGlvbiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWNlN2RmO1xuICAgICAgQGluY2x1ZGUgY2xhbXBBdXRvVncoXCJwYWRkaW5nLXRvcFwiLCA1MCwgMTAwKTtcbiAgICAgIEBpbmNsdWRlIGNsYW1wQXV0b1Z3KFwicGFkZGluZy1ib3R0b21cIiwgNTAsIDEwMCk7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgIC5zbmFwX2Fycm93IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDQ5JTtcbiAgICAgICAgdG9wOiBjYWxjKDUwJSAtIDIyLjVweCk7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEyNzBweCkge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICAgICYucHJldl9hcnJvdyB7XG4gICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEyNzBweCkge1xuICAgICAgICAgICAgbGVmdDogY2FsYygoMTAwdncgLSAxMjQwcHgpIC8gNC41KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDE1MDBweCkge1xuICAgICAgICAgICAgbGVmdDogY2FsYygoMTAwdncgLSAxNDg5cHgpIC8gNC41KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5uZXh0X2Fycm93IHtcbiAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTI3MHB4KSB7XG4gICAgICAgICAgICByaWdodDogY2FsYygoMTAwdncgLSAxMjQwcHgpIC8gNC41KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDE1MDBweCkge1xuICAgICAgICAgICAgcmlnaHQ6IGNhbGMoKDEwMHZ3IC0gMTQ4OXB4KSAvIDQuNSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAucGxheWxpc3RfZmVhdHVyZV9zbGlkZXNfcm93IHtcbiAgICAgICAgb3ZlcmZsb3cteDogc2Nyb2xsO1xuICAgICAgICBzY3JvbGwtc25hcC10eXBlOiB4IG1hbmRhdG9yeTtcbiAgICAgICAgLy9oaWRlIHNjcm9sbGJhclxuICAgICAgICBzY3JvbGxiYXItd2lkdGg6IG5vbmU7XG4gICAgICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZTtcbiAgICAgICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAucGxheWxpc3Rfc2xpZGVfY29sIHtcbiAgICAgICAgICBzY3JvbGwtc25hcC1hbGlnbjogc3RhcnQ7XG4gICAgICAgICAgLmltZ193cmFwIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogNTAwcHg7XG4gICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAuc3VidGl0bGUge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250X3B0X3NlcmlmO1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyM3B4O1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDMycHg7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzNHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAuZW1iZWRfY29kZV93cmFwIHtcbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMTg4cHgpIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgYXNwZWN0LXJhdGlvKDUsIDQpO1xuXG4gICAgICAgICAgICAgIGlmcmFtZSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYWJzb2x1dGUtY292ZXI7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIC5zdHJlYW1pbmdfbGlua3Nfd3JhcCB7XG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgaGVpZ2h0OiA0MXB4O1xuICAgICAgICAgICAgICBAaW5jbHVkZSBjbGFtcEF1dG9WdyhoZWlnaHQsIDMxLCA0MSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5ib29rc3RvcmVfY3RhX3NlY3Rpb24ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0Y2RjRGMDtcbiAgICAgIEBpbmNsdWRlIGNsYW1wQXV0b1Z3KFwicGFkZGluZy10b3BcIiwgNzUsIDEwMCk7XG4gICAgICBAaW5jbHVkZSBjbGFtcEF1dG9WdyhcInBhZGRpbmctYm90dG9tXCIsIDc1LCAxMDApO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgLmJ0biB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICB9XG4gICAgICAuYm9va19zbGlkZXJfd3JhcHBlciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAvLyBBcnJvd3Mgd2lsbCBvbmx5IGRpc3BsYXkgb24gZGVza3RvcCBpZiB0aGUgd3JhcHBlciBoYXMgdGhlIGNsYXNzIGAubW9yZS10aGFuLXRocmVlYFxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTI3MHB4KSB7XG4gICAgICAgICAgJi5tb3JlLXRoYW4tdGhyZWUge1xuICAgICAgICAgICAgLnNuYXBfYXJyb3cge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc25hcF9hcnJvdyB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTsgLy8gaGlkZGVuIGJ5IGRlZmF1bHQgKHZpc2libGUgb25seSB3aGVuIC5tb3JlLXRoYW4tdGhyZWUgaXMgYWRkZWQgb24gZGVza3RvcClcbiAgICAgICAgICAvLyBBZGp1c3QgdGhlc2UgdmFsdWVzIGFzIG5lZWRlZFxuICAgICAgICAgICYucHJldl9hcnJvdyB7XG4gICAgICAgICAgICBsZWZ0OiAxMHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgICAmLm5leHRfYXJyb3cge1xuICAgICAgICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmJvb2tfc2xpZGVyX3JvdyB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgICAgICAgIHNjcm9sbC1zbmFwLXR5cGU6IHggbWFuZGF0b3J5O1xuICAgICAgICAgIHNjcm9sbGJhci13aWR0aDogbm9uZTtcbiAgICAgICAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxMTAwcHg7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMjQuNXB4O1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMjQuNXB4O1xuICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMjQuNXB4O1xuICAgICAgICAgIH1cbiAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgICB9XG4gICAgICAgICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuYm9va19jYXJkX2NvbCB7XG4gICAgICAgICAgICBzY3JvbGwtc25hcC1hbGlnbjogc3RhcnQ7XG5cbiAgICAgICAgICAgIC8vIE9uIHNtYWxsZXIgc2NyZWVucywgYWxsb3cgaG9yaXpvbnRhbCBzY3JvbGxpbmcgd2l0aCBhIGZpeGVkIHdpZHRoIHBlciBjYXJkLlxuICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgbWluLXdpZHRoOiAzMDdweDtcbiAgICAgICAgICAgICAgbWF4LXdpZHRoOiAzMDdweDtcbiAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyNC41cHg7XG4gICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYm9va19pbWdfd3JhcCB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGNsYW1wQXV0b1Z3KFwicGFkZGluZy1ib3R0b21cIiwgMjUsIDUwKTtcblxuICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICBhc3BlY3QtcmF0aW86IDEgLyAxLjU7XG4gICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5ib29rc3RvcmVfY3RhX3RleHQge1xuICAgICAgICBoMyB7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250X3B0X3NlcmlmO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjNweDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzJweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzNHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBociB7XG4gICAgICAgICAgbWFyZ2luOiAyNXB4IGF1dG87XG4gICAgICAgICAgd2lkdGg6IDEyNXB4O1xuICAgICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrO1xuICAgICAgICB9XG4gICAgICAgIC50ZXh0X3dyYXAge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gICAgICAgICAgcCB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnRfcHRfc2VyaWY7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7IC8vaW5jcmVhc2VkIGZyb20gMTRweCBwZXIgdGFzayByZXF1ZXN0XG4gICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIxcHg7XG4gICAgICAgICAgICBAaW5jbHVkZSBjbGFtcEF1dG9Wdyhmb250LXNpemUsIDE2LCAyMCk7IC8vaW5jcmVhc2VkIGZyb20gMTRweCBwZXIgdGFzayByZXF1ZXN0XG4gICAgICAgICAgICBAaW5jbHVkZSBjbGFtcEF1dG9WdyhsaW5lLWhlaWdodCwgMjEsIDMwKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmRvbmF0ZV9zZWN0aW9uIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlY2U3ZGY7XG4gICAgICBAaW5jbHVkZSBjbGFtcEF1dG9WdyhcInBhZGRpbmctdG9wXCIsIDc1LCAxMDApO1xuICAgICAgQGluY2x1ZGUgY2xhbXBBdXRvVncoXCJwYWRkaW5nLWJvdHRvbVwiLCA3NSwgMTAwKTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgY29sb3I6ICMyNzI3Mjc7XG5cbiAgICAgIC5idG4ge1xuICAgICAgICBAaW5jbHVkZSBjbGFtcEF1dG9Wdyhmb250LXNpemUsIDE0LCAyMCk7XG4gICAgICAgIEBpbmNsdWRlIGNsYW1wQXV0b1Z3KGxpbmUtaGVpZ2h0LCAyNCwgMjQpO1xuICAgICAgICBwYWRkaW5nOiAxNnB4O1xuICAgICAgICBtaW4td2lkdGg6IDIxOHB4O1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnRfaWJtO1xuICAgICAgfVxuICAgICAgLmNvbnRlbnRfY29sIHtcbiAgICAgICAgaDMge1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9wdF9zZXJpZjtcbiAgICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDIzcHg7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDMycHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMzRweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaHIge1xuICAgICAgICAgIG1hcmdpbjogMjVweCBhdXRvO1xuICAgICAgICAgIHdpZHRoOiAxMjVweDtcbiAgICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjcyNzI3O1xuICAgICAgICB9XG4gICAgICAgIC5kb25hdGVfdGV4dCB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgICAgICAgICBwIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9wdF9zZXJpZjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubGl2ZXN0cmVhbV8yMDIyX2Zvb3RlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMTgyMjtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBmb250LWZhbWlseTogXCJnb3RoYW1cIiwgc2Fucy1zZXJpZjtcbiAgICBhIHtcbiAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIH1cbiAgICAuYnRuLmJ0bi1vdXRsaW5lLWxpZ2h0IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgICAgIGNvbG9yOiAjMDAxODIyO1xuICAgICAgfVxuICAgIH1cbiAgICAuZm9vdGVyX2xvZ28ge1xuICAgICAgbWF4LXdpZHRoOiAxNTBweDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICAuY29udGFpbmVyX2Zvb3RlciB7XG4gICAgICBwYWRkaW5nOiAxMjVweCAxMHB4O1xuICAgICAgbWF4LXdpZHRoOiAxNDQwcHg7XG4gICAgICBtYXJnaW46IGF1dG87XG4gICAgICB3aWR0aDogOTUlO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICAgICAgcGFkZGluZzogNjZweCAxMHB4O1xuICAgICAgfVxuICAgICAgLmZvb3Rlcl9hYm91dF90ZXh0IHtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjNweDtcbiAgICAgICAgbWFyZ2luOiAxNXB4IDAgMjBweDtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgICAgbWF4LXdpZHRoOiA0NzBweDtcbiAgICAgICAgICBtYXJnaW46IDIwcHggMCAzMHB4O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5zdWJfZm9vdGVyX2xpbmtzIHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgbWFyZ2luOiAwIDAgMzBweDtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgIG1hcmdpbjogMjBweCAwIDMwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLmQtaW5saW5lLWZsZXgge1xuICAgICAgICAgIGEge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkYWNjZW50X2NvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5mb290ZXJfc29jaWFsIHtcbiAgICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDdweDtcbiAgICAgICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMzFweCAwO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmZhLFxuICAgICAgICAgICAgLmZhcyxcbiAgICAgICAgICAgIC5mYWIge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBUcmFuc2l0aW9uKCRjdWJpYy1mYXN0KTtcblxuICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBUcmFuc2l0aW9uKCRjdWJpYy1mYXN0KTtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAmLmZhLWZhY2Vib29rLWYsXG4gICAgICAgICAgICAgICAgJi5mYS1mYWNlYm9vay1zcXVhcmUge1xuICAgICAgICAgICAgICAgICAgY29sb3I6ICRmYWNlYm9va19jb2xvcjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmZhLXR3aXR0ZXIge1xuICAgICAgICAgICAgICAgICAgY29sb3I6ICR0d2l0dGVyX2NvbG9yO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuZmEtaW5zdGFncmFtIHtcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiAkaW5zdGFncmFtX2NvbG9yO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuZmEteW91dHViZSxcbiAgICAgICAgICAgICAgICAmLmZhLXlvdXR1YmUtcGxheSB7XG4gICAgICAgICAgICAgICAgICBjb2xvcjogJHlvdXR1YmVfY29sb3I7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5mYS12aW1lby12LFxuICAgICAgICAgICAgICAgICYuZmEtdmltZW8ge1xuICAgICAgICAgICAgICAgICAgY29sb3I6ICR2aW1lb19jb2xvcjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmZhLXJzcyB7XG4gICAgICAgICAgICAgICAgICBjb2xvcjogJGFjY2VudF9jb2xvcjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmZhLXBpbnRlcmVzdCxcbiAgICAgICAgICAgICAgICAmLmZhLXBpbnRlcmVzdC1wIHtcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiAkcGludGVyZXN0X2NvbG9yO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuZm9vdGVyX2NvcHkge1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDE1cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZmx1aWQtd2lkdGgtdmlkZW8td3JhcHBlciB7XG4gICAgcGFkZGluZy10b3A6IDU2LjI2NDElICFpbXBvcnRhbnQ7XG4gIH1cbn1cbmh0bWwucG9wdXAtb3BlbixcbmJvZHkucG9wdXAtb3BlbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGhlaWdodDogMTAwJTtcbn1cbi5wb3B1cC1vdmVybGF5IHtcbiAgb3ZlcnNjcm9sbC1iZWhhdmlvcjogY29udGFpbjtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBpbnNldDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgZGlzcGxheTogbm9uZTtcbiAgJi5pcy1hY3RpdmUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxuICB6LWluZGV4OiA5OTk5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjRlZmU2O1xuICBmb250LWZhbWlseTogJGZvbnRfcHRfc2VyaWY7XG4gIGNvbG9yOiAkYWNjZW50X2NvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIC5wb3B1cC1jb250ZW50IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgbWFyZ2luOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsZXg6IDE7IC8vIOKGkCBUSElTIElTIFRIRSBLRVlcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIC8vIHN0eWxlIGZvciBzY3JvbGxiYXJcbiAgICAmOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICB3aWR0aDogNHB4O1xuICAgIH1cbiAgICAmOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZTRkYmNiO1xuICAgIH1cbiAgICAmOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYWNjZW50X2NvbG9yO1xuICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgIH1cblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgLy9tYXgtd2lkdGg6IDkwMHB4O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAvL2dhcDogNDBweDtcbiAgICB9XG4gICAgLnBvcHVwLW1haW4ge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y0ZWZlNjtcbiAgICAgIHBhZGRpbmc6IDQwcHg7XG5cbiAgICAgIC5wb3B1cC1pbm5lciB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDYwMHB4O1xuICAgICAgICBtYXJnaW46IDkwcHggYXV0byAwO1xuICAgICAgfVxuICAgIH1cbiAgICAucG9wdXAtc2NoZWR1bGUge1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDM1RjY0O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAucG9wdXAtbWFpbiB7XG4gICAgICAgIGZsZXg6IDAgMCA2MCU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICB9XG5cbiAgICAgIC5wb3B1cC1zY2hlZHVsZSB7XG4gICAgICAgIGZsZXg6IDAgMCA0MCU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICB9XG4gICAgfVxuICAgIC5yZWdpc3Rlci10ZXh0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBmb250LWZhbWlseTogJGZvbnRfbGF0bztcbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICB9XG4gICAgfVxuICAgIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogYXV0bztcblxuICAgICAgQGluY2x1ZGUgY2xhbXBBdXRvVncoXCJ3aWR0aFwiLCAyODEsIDUwMCk7XG5cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICB3aWR0aDogNTAwcHg7XG4gICAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICB9XG4gICAgfVxuICAgIC5saXZlc3RyZWFtLXRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgZm9udC1zaXplOiA0MnB4O1xuICAgICAgfVxuICAgIH1cbiAgICBmb3JtIHtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgICAuaHMtZm9ybS1maWVsZCB7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgIGlucHV0LFxuICAgICAgc2VsZWN0IHtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMTJweDtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBvdXRsaW5lOiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICAgIGNvbG9yOiByZ2JhKDIyLCAyNywgMjksIDAuNDcpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgICAgICAgY29sb3I6IHJnYmEoMjIsIDI3LCAyOSwgMC40Nyk7XG4gICAgICAgIH1cblxuICAgICAgICAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgICAgICAgY29sb3I6IHJnYmEoMjIsIDI3LCAyOSwgMC40Nyk7XG4gICAgICAgIH1cblxuICAgICAgICAmOi1tb3otcGxhY2Vob2xkZXIge1xuICAgICAgICAgIGNvbG9yOiByZ2JhKDIyLCAyNywgMjksIDAuNDcpO1xuICAgICAgICB9XG4gICAgICAgIG9wdGlvbjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgY29sb3I6IHJnYmEoMjIsIDI3LCAyOSwgMC40Nyk7XG4gICAgICAgIH1cbiAgICAgICAgJjppbnZhbGlkIHtcbiAgICAgICAgICBjb2xvcjogcmdiYSgyMiwgMjcsIDI5LCAwLjQ3KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgICAubGVnYWwtY29uc2VudC1jb250YWluZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmJiODE4O1xuICAgICAgICBjb2xvcjogIzAwMTgyMjtcbiAgICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgdGV4dC13cmFwOiBpbml0aWFsO1xuICAgICAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gICAgICAgIC13ZWJraXQtaHlwaGVuczogYXV0bztcbiAgICAgICAgLW1zLWh5cGhlbnM6IGF1dG87XG4gICAgICAgIC1tb3otaHlwaGVuczogYXV0bztcbiAgICAgICAgaHlwaGVuczogYXV0bztcbiAgICAgIH1cbiAgICAgIC5zdWJtaXQtYnRucyB7XG4gICAgICAgIGlucHV0IHtcbiAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgIHRleHQtd3JhcDogaW5pdGlhbDtcbiAgICAgICAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gICAgICAgICAgLXdlYmtpdC1oeXBoZW5zOiBhdXRvO1xuICAgICAgICAgIC1tcy1oeXBoZW5zOiBhdXRvO1xuICAgICAgICAgIC1tb3otaHlwaGVuczogYXV0bztcbiAgICAgICAgICBoeXBoZW5zOiBhdXRvO1xuICAgICAgICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRhY2NlbnRfY29sb3I7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICB1bCB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgbGkuaHMtZm9ybS1ib29sZWFuY2hlY2tib3gge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9sYXRvO1xuICAgICAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmhic3B0LWZvcm0ge1xuICAgICAgLmZpZWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgbGFiZWwge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDRweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmhzLXJpY2h0ZXh0IHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnRfbGF0bztcbiAgICAgIH1cbiAgICB9XG4gICAgLnBvcHVwLXNjaGVkdWxlIC5iYW5uZXJfc3ViX3RleHQge1xuICAgICAgbWFyZ2luLXRvcDogMTE2cHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAucG9wdXAtc2NoZWR1bGUgLmJhbm5lcl9zdWJfdGV4dCAqIHtcbiAgICAgIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuLy8gU2F2ZSBUaGUgRGF0ZSBzdHlsZXMgZm9yIENvbWluZyBTb29uIFRlbXBsYXRlXG4kc2F2ZV9kYXRlX2JyZWFrcG9pbnQ6IGxnO1xuLnBhZ2UtbmF0ZXZlbnRzLXNhdmUtZGF0ZSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJHNhdmVfZGF0ZV9icmVha3BvaW50KSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuICAubmF0ZXZlbnRzLWhlYWRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICAmLmhlYWRlcl93cmFwcGVyIHtcbiAgICAgIGhlaWdodDogODBweDtcbiAgICAgIG1heC1oZWlnaHQ6IDgwcHg7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkc2F2ZV9kYXRlX2JyZWFrcG9pbnQpIHtcbiAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICBtYXgtaGVpZ2h0OiA1MHB4O1xuICAgICAgfVxuXG4gICAgICAuaGVhZGVyX2NvbnRlbnRzIHtcbiAgICAgICAgaGVpZ2h0OiA4MHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkc2F2ZV9kYXRlX2JyZWFrcG9pbnQpIHtcbiAgICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAubWVudV9idG5fd3JhcHBlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VjZDJhMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5icmFuZCB7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDgwcHg7XG4gICAgICAgICAgbWF4LWhlaWdodDogODBweDtcblxuICAgICAgICAgIC5uYXRfZXZlbnRzX2xvZ28ge1xuICAgICAgICAgICAgbWF4LWhlaWdodDogNDVweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJjpub3QoLnRvcCkge1xuICAgICAgLm5hdF9ldmVudHNfbG9nbyB7XG4gICAgICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwKSBpbnZlcnQoMSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmhlYWRlciB7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIHdpZHRoOiA2MCU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OiBsZWZ0O1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRzYXZlX2RhdGVfYnJlYWtwb2ludCkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgbWluLWhlaWdodDogNzB2aDtcbiAgICB9XG4gICAgJiA+IC5iYWNrZ3JvdW5kIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG4gIC5zdGRfc2VjdGlvbiB7XG4gICAgd2lkdGg6IDQwJTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzQzNUY2NDtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJHNhdmVfZGF0ZV9icmVha3BvaW50KSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuICAgIGltZyB7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIC5zdGF5X3VwX3RvX2RhdGVfZm9ybV93cmFwcGVyIHtcbiAgICAgIGFsaWduLXNlbGY6IGJhc2VsaW5lICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5zdGRfdGl0bGUge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgZm9udC1mYW1pbHk6ICRnb3RoYW07XG4gICAgICBmb250LXNpemU6IDQ4cHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDkuNnB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGNvbG9yOiAjMDAwO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJHNhdmVfZGF0ZV9icmVha3BvaW50KSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDQ4cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMzJweDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDUuNHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAubmF0X2Jhbm5lcl9jb250YWluZXIge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkc2F2ZV9kYXRlX2JyZWFrcG9pbnQpIHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG4gIH1cblxuICAubmF0X2Jhbm5lcl9pbm5lciB7XG4gICAgbWFyZ2luLXRvcDogMjAwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTAwcHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmctdG9wOiAwcHg7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJHNhdmVfZGF0ZV9icmVha3BvaW50KSB7XG4gICAgICAvLyBtYXJnaW4tdG9wOiAxMzBweDtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgLy9tYXJnaW46IDYycHggYXV0bztcbiAgICB9XG5cbiAgICAuYmFubmVyX3RleHQge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgfVxuICB9XG5cbiAgLmJhbm5lcl9zdWJfdGV4dCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJHNhdmVfZGF0ZV9icmVha3BvaW50KSB7XG4gICAgICBtYXJnaW4tdG9wOiAxMTZweDtcbiAgICB9XG4gICAgKiB7XG4gICAgICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAudmlkZW9fcGxheV9idG5fd3JhcCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgJiArIC5iYW5uZXJfc3ViX3RleHQge1xuICAgICAgbWFyZ2luLXRvcDogMHB4O1xuICAgIH1cbiAgfVxuXG4gIC5iYWNrZ3JvdW5kIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIH1cblxuICAuc3RheV91cF90b19kYXRlX2Zvcm0ge1xuICAgIG1heC13aWR0aDogMzI2cHg7XG4gICAgbWFyZ2luOiA3MHB4IGF1dG8gMjBweDtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkc2F2ZV9kYXRlX2JyZWFrcG9pbnQpIHtcbiAgICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgfVxuXG4gICAgLm5ld3NsZXR0ZXJfc2lnbnVwX2Zvcm1fdGV4dCB7XG4gICAgICAvL2JhY2tncm91bmQtY29sb3I6ICNFQ0QyQTA7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAvL3RleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBjb2xvcjogIzAwMDtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZ290aGFtO1xuXG4gICAgICAuZm9ybS1jaGVjayB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIHBhZGRpbmc6IDE3cHggMDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5tYy1jb2wtZW1haWwge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbGFiZWwge1xuICAgICAgICBmb250LWZhbWlseTogJGdvdGhhbTtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICBjb2xvcjogIzAwMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpbnB1dC5lbWFpbCB7XG4gICAgICBwYWRkaW5nOiAxMHB4IDE3cHg7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjYzRjNGM0O1xuICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgIG1pbi1oZWlnaHQ6IDQ4cHg7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZ290aGFtO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJHNhdmVfZGF0ZV9icmVha3BvaW50KSB7XG4gICAgICAgIHRleHQtaW5kZW50OiAwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIH1cblxuICAgICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgICAvKiBDaHJvbWUsIEZpcmVmb3gsIE9wZXJhLCBTYWZhcmkgMTAuMSsgKi9cbiAgICAgICAgY29sb3I6ICMzOTM5Mzk7XG4gICAgICAgIG9wYWNpdHk6IDE7IC8qIEZpcmVmb3ggKi9cbiAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgfVxuXG4gICAgICAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgICAgIC8qIEludGVybmV0IEV4cGxvcmVyIDEwLTExICovXG4gICAgICAgIGNvbG9yOiAjMzkzOTM5O1xuICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICB9XG5cbiAgICAgICY6Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgICAgIC8qIE1pY3Jvc29mdCBFZGdlICovXG4gICAgICAgIGNvbG9yOiAjMzkzOTM5O1xuICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaW5wdXQuYnRuIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgYm9yZGVyLXJhZGl1czogOHB4ICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAzNTZhO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBmb250LWZhbWlseTogJGdvdGhhbTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjZweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgcGFkZGluZzogMjBweDtcbiAgICB9XG5cbiAgICAuZ3JlY2FwdGNoYS1iYWRnZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAjbWNlLXJlc3BvbnNlcyB7XG4gICAgICB0b3A6IDQ1cHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAucmVzcG9uc2Uge1xuICAgICAgICBmb250LWZhbWlseTogJGdvdGhhbTtcbiAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDE4cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnNhdmVfZGF0ZV9mb290ZXJfdGV4dCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LWZhbWlseTogJGdvdGhhbTtcbiAgICBmb250LXNpemU6IDExcHg7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJHNhdmVfZGF0ZV9icmVha3BvaW50KSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICAgIH1cbiAgICBwIHtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICB9XG4gICAgYSB7XG4gICAgICBjb2xvcjogd2hpdGU7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG4gIH1cblxuICAubmF0ZXZlbnRzLWZvb3RlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gICNxbSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuIiwiLy8gVXNlIHRoaXMgZmlsZSB0byBvdmVyd3JpdGUgdGhlIGJhc2ljIEJvb3RzdHJhcCB2YXJpYWJsZXMgYW5kIGFkZCB5b3VyIG93biB2YXJpYWJsZXNcbi8vIFRvIG92ZXJ3cml0ZSBhIEJvb3RzdHJhcCB2YXJpYWJsZSB5b3UgZG9uwrR0IGhhdmUgdG8gdG91Y2ggdGhlIEJvb3RzdHJhcCBmb2xkZXIuXG4vLyBKdXN0IGNvcHkgYSB2YXJpYWJsZSBmcm9tIHNyYy9zYXNzL2Jvb3RzdHJhcDQvX3ZhcmlhYmxlcy5zY3NzLCBwYXN0ZSBpdCBoZXJlIGFuZCBlZGl0IHRoZSB2YWx1ZS5cblxuLy9Db250YWluZXIgd2lkdGhcbiRncmlkLWd1dHRlci13aWR0aDogNDlweCAhZGVmYXVsdDtcbiRncmlkLWJyZWFrcG9pbnRzOiAoIHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDEwMjRweCwgeGw6IDEyNzBweCwgeHhsOjE1MDBweCApICFkZWZhdWx0O1xuJGNvbnRhaW5lci1tYXgtd2lkdGhzOiAoIHNtOiA1NDBweCwgbWQ6IDc1MHB4LCBsZzogOTQycHgsIHhsOiAxMjQwcHgsIHh4bDogMTQ4OXB4ICkgIWRlZmF1bHQ7XG5cbi8vIENvbG9yc1xuJGJyYW5kLXByaW1hcnk6ICM3OUFFNEE7XG4kcHJpbWFyeTogIzc5QUU0QTtcbiRicmFuZC1wcmltYXJ5LXJnYmE6IHJnYmEoMTIxLCAxNzQsIDc0LCAxKTtcbiRib2R5LWNvbG9yOiAjMjcyNzI3O1xuJGJvZHktYmc6ICNmZmY7XG4kbGlnaHQ6ICNmZmY7XG4kbGlnaHRfZ3JleTogI0YxRjFGMTtcbiRncmV5OiAjZDhkOGQ4O1xuJGhlYWRpbmdfZ3JleTogI2E3YTdhNztcbiRkYXJrX2dyZXk6ICM1ODU4NUI7XG4kbWVudV9ncmV5OiAjNzA3MDcwO1xuJGJsYWNrOiAjMjcyNzI3O1xuJGdyZXlfYmdfYmxhY2s6IzE3MTcxNztcbiRibG9ja3F1b3RlX2dyZWVuOiAjNzdBRjQzO1xuXG4vL2ZvbnRzXG4kZ290aGFtOiBcImdvdGhhbVwiLCBzYW5zLXNlcmlmO1xuJGNoYXJ0ZXI6IFwiY2hhcnRlci1idC1wcm9cIjtcbiRub2U6IFwiTm9lIERpc3BsYXlcIjtcblxuXG4vL3NvY2lhbCBjb2xvcnNcbiRmYWNlYm9va19jb2xvcjogaHNsYSgyMjIsIDQ3JSwgNDAlLCAxKTsgLy8gIzM2NTM5N1xuJHR3aXR0ZXJfY29sb3I6IGhzbGEoMTk4LCAxMDAlLCA0NyUsIDEpOyAvLyAjMDBhOWYxXG4kbGlua2VkaW5fY29sb3I6IGhzbGEoMjAzLCAxMDAlLCAzNSUsIDEpOyAvLyAjMDA2ZGIzXG4kYXBwbGVfY29sb3I6IGhzbGEoMCwgMCUsIDQ1JSwgMSk7IC8vICM3MzczNzNcbiRnb29nbGVfY29sb3I6IGhzbGEoMjE3LCA4OSUsIDYxJSwgMSk7IC8vICM0Mjg1ZjRcbiRnb29nbGVfcGx1c19jb2xvcjogaHNsYSg4LCA3NCUsIDUzJSwgMSk7IC8vICNlMDQ1MmNcbiR5b3V0dWJlX2NvbG9yOiBoc2xhKDAsIDEwMCUsIDYwJSwgMSk7IC8vICNmZjMzMzNcbiR2aW1lb19jb2xvcjogaHNsYSgyMDAsIDgyJSwgNjElLCAxKTsgLy8gIzQ4YjZlZFxuJHBpbnRlcmVzdF9jb2xvcjogaHNsYSgwLCA3OCUsIDQ1JSwgMSk7IC8vICNjZTFhMTlcbiR5ZWxwX2NvbG9yOiBoc2xhKDUsIDEwMCUsIDM4JSwgMSk7IC8vICNjMzBmMDBcbiRkcmliYmJsZV9jb2xvcjogaHNsYSgzMzgsIDgyJSwgNjAlLCAxKTsgLy8gI2VkNDU4NFxuJGFtYXpvbl9jb2xvcjogaHNsYSgzNiwgMTAwJSwgNTAlLCAxKTsgLy8gI2ZmOTcwMFxuJGViYXlfY29sb3I6IGhzbGEoMjE5LCA4OSUsIDMwJSwgMSk7IC8vICMwODM3OTBcbiRza3lwZV9jb2xvcjogaHNsYSgxOTgsIDEwMCUsIDQ4JSwgMSk7IC8vICMwMGFjZjRcbiRpbnN0YWdyYW1fY29sb3I6IGhzbGEoMjA4LCA0NiUsIDQxJSwgMSk7IC8vICMzOTZkOWFcbiRkcm9wYm94X2NvbG9yOiBoc2xhKDIwNiwgODklLCA0NiUsIDEpOyAvLyAjMGQ4NGRlXG4kZmxpY2tyX2NvbG9yOiBoc2xhKDMzNCwgMTAwJSwgNDYlLCAxKTsgLy8gI2VhMDA2NlxuJGdpdGh1Yl9jb2xvcjogaHNsYSgwLCAwJSwgMTglLCAxKTsgLy8gIzJmMmYyZlxuJGJhc2VjYW1wX2NvbG9yOiBoc2xhKDEyMSwgMzglLCA1OCUsIDEpOyAvLyAjNmJiZDZkXG4kdHVtYmxyX2NvbG9yOiBoc2xhKDIxMCwgMzclLCAzMCUsIDEpOyAvLyAjMzA0YzY4XG4kZm91cnNxdWFyZV9jb2xvcjogaHNsYSgyMDYsIDcyJSwgNDUlLCAxKTsgLy8gIzIwN2RjNVxuJGJveF9jb2xvcjogaHNsYSgyMDQsIDgzJSwgNDAlLCAxKTsgLy8gIzEyNzdiY1xuXG4vL3RyYW5zaXRpb25zXG4kY3ViaWM6IGFsbCAuNnMgY3ViaWMtYmV6aWVyKC4xOSwxLC4yMiwxKSA1MG1zO1xuJGN1YmljLWZhc3Q6IGFsbCAuM3MgY3ViaWMtYmV6aWVyKC4xOSwxLC4yMiwxKSA1MG1zO1xuJGN1YmljLXNsb3c6IGFsbCAxLjVzIGN1YmljLWJlemllciguMTksMSwuMjIsMSkgNTBtcztcbiRlYXNlOiBhbGwgLjZzIGVhc2UtaW4tb3V0O1xuXG4vL2hlYWRlciBoZWlnaHRcbiRuYXZiYXJfaGVpZ2h0OiA1MHB4O1xuJG1vYmlsZV9uYXZiYXJfaGVpZ2h0OjQwcHg7XG5cblxuLypcbiAgICBWZWxvY2l0eSBUcmFuc2l0aW9ucyBMaXN0XG4gICAgIC52ZWxvY2l0eSgndHJhbnNpdGlvbi5mYWRlSW4nKVxuICAgIC52ZWxvY2l0eSgndHJhbnNpdGlvbi5mYWRlT3V0JylcbiAgICAudmVsb2NpdHkoJ3RyYW5zaXRpb24uZmxpcFhJbicpXG4gICAgLnZlbG9jaXR5KCd0cmFuc2l0aW9uLmZsaXBYT3V0JylcbiAgICAudmVsb2NpdHkoJ3RyYW5zaXRpb24uZmxpcFlJbicpXG4gICAgLnZlbG9jaXR5KCd0cmFuc2l0aW9uLmZsaXBZT3V0JylcbiAgICAudmVsb2NpdHkoJ3RyYW5zaXRpb24uZmxpcEJvdW5jZVhJbicpXG4gICAgLnZlbG9jaXR5KCd0cmFuc2l0aW9uLmZsaXBCb3VuY2VYT3V0JylcbiAgICAudmVsb2NpdHkoJ3RyYW5zaXRpb24uZmxpcEJvdW5jZVlJbicpXG4gICAgLnZlbG9jaXR5KCd0cmFuc2l0aW9uLmZsaXBCb3VuY2VZT3V0JylcbiAgICAudmVsb2NpdHkoJ3RyYW5zaXRpb24uc3dvb3BJbicpXG4gICAgLnZlbG9jaXR5KCd0cmFuc2l0aW9uLnN3b29wT3V0JylcbiAgICAudmVsb2NpdHkoJ3RyYW5zaXRpb24ud2hpcmxJbicpXG4gICAgLnZlbG9jaXR5KCd0cmFuc2l0aW9uLndoaXJsT3V0JylcbiAgICAudmVsb2NpdHkoJ3RyYW5zaXRpb24uc2hyaW5rSW4nKVxuICAgIC52ZWxvY2l0eSgndHJhbnNpdGlvbi5zaHJpbmtPdXQnKVxuICAgIC52ZWxvY2l0eSgndHJhbnNpdGlvbi5leHBhbmRJbicpXG4gICAgLnZlbG9jaXR5KCd0cmFuc2l0aW9uLmV4cGFuZE91dCcpXG4gICAgLnZlbG9jaXR5KCd0cmFuc2l0aW9uLmJvdW5jZUluJylcbiAgICAudmVsb2NpdHkoJ3RyYW5zaXRpb24uYm91bmNlT3V0JylcbiAgICAudmVsb2NpdHkoJ3RyYW5zaXRpb24uYm91bmNlVXBJbicpXG4gICAgLnZlbG9jaXR5KCd0cmFuc2l0aW9uLmJvdW5jZVVwT3V0JylcbiAgICAudmVsb2NpdHkoJ3RyYW5zaXRpb24uYm91bmNlRG93bkluJylcbiAgICAudmVsb2NpdHkoJ3RyYW5zaXRpb24uYm91bmNlRG93bk91dCcpXG4gICAgLnZlbG9jaXR5KCd0cmFuc2l0aW9uLmJvdW5jZUxlZnRJbicpXG4gICAgLnZlbG9jaXR5KCd0cmFuc2l0aW9uLmJvdW5jZUxlZnRPdXQnKVxuICAgIC52ZWxvY2l0eSgndHJhbnNpdGlvbi5ib3VuY2VSaWdodEluJylcbiAgICAudmVsb2NpdHkoJ3RyYW5zaXRpb24uYm91bmNlUmlnaHRPdXQnKVxuICAgIC52ZWxvY2l0eSgndHJhbnNpdGlvbi5zbGlkZVVwSW4nKVxuICAgIC52ZWxvY2l0eSgndHJhbnNpdGlvbi5zbGlkZVVwT3V0JylcbiAgICAudmVsb2NpdHkoJ3RyYW5zaXRpb24uc2xpZGVEb3duSW4nKVxuICAgIC52ZWxvY2l0eSgndHJhbnNpdGlvbi5zbGlkZURvd25PdXQnKVxuICAgIC52ZWxvY2l0eSgndHJhbnNpdGlvbi5zbGlkZUxlZnRJbicpXG4gICAgLnZlbG9jaXR5KCd0cmFuc2l0aW9uLnNsaWRlTGVmdE91dCcpXG4gICAgLnZlbG9jaXR5KCd0cmFuc2l0aW9uLnNsaWRlUmlnaHRJbicpXG4gICAgLnZlbG9jaXR5KCd0cmFuc2l0aW9uLnNsaWRlUmlnaHRPdXQnKVxuICAgIC52ZWxvY2l0eSgndHJhbnNpdGlvbi5zbGlkZVVwQmlnSW4nKVxuICAgIC52ZWxvY2l0eSgndHJhbnNpdGlvbi5zbGlkZVVwQmlnT3V0JylcbiAgICAudmVsb2NpdHkoJ3RyYW5zaXRpb24uc2xpZGVEb3duQmlnSW4nKVxuICAgIC52ZWxvY2l0eSgndHJhbnNpdGlvbi5zbGlkZURvd25CaWdPdXQnKVxuICAgIC52ZWxvY2l0eSgndHJhbnNpdGlvbi5zbGlkZUxlZnRCaWdJbicpXG4gICAgLnZlbG9jaXR5KCd0cmFuc2l0aW9uLnNsaWRlTGVmdEJpZ091dCcpXG4gICAgLnZlbG9jaXR5KCd0cmFuc2l0aW9uLnNsaWRlUmlnaHRCaWdJbicpXG4gICAgLnZlbG9jaXR5KCd0cmFuc2l0aW9uLnNsaWRlUmlnaHRCaWdPdXQnKVxuICAgIC52ZWxvY2l0eSgndHJhbnNpdGlvbi5wZXJzcGVjdGl2ZVVwSW4nKVxuICAgIC52ZWxvY2l0eSgndHJhbnNpdGlvbi5wZXJzcGVjdGl2ZVVwT3V0JylcbiAgICAudmVsb2NpdHkoJ3RyYW5zaXRpb24ucGVyc3BlY3RpdmVEb3duSW4nKVxuICAgIC52ZWxvY2l0eSgndHJhbnNpdGlvbi5wZXJzcGVjdGl2ZURvd25PdXQnKVxuICAgIC52ZWxvY2l0eSgndHJhbnNpdGlvbi5wZXJzcGVjdGl2ZUxlZnRJbicpXG4gICAgLnZlbG9jaXR5KCd0cmFuc2l0aW9uLnBlcnNwZWN0aXZlTGVmdE91dCcpXG4gICAgLnZlbG9jaXR5KCd0cmFuc2l0aW9uLnBlcnNwZWN0aXZlUmlnaHRJbicpXG4gICAgLnZlbG9jaXR5KCd0cmFuc2l0aW9uLnBlcnNwZWN0aXZlUmlnaHRPdXQnKTsgXG5cbiovXG4iLCIvKiBNaXhpbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vLy8vLy8vIEF2aWxhYmxlIEJvb3RzdHJhcCBNaXhpbnNcbi8vLy8gQWxlcnRzXG4vL0BpbmNsdWRlIGFsZXJ0LXZhcmlhbnQoJGJhY2tncm91bmQsICRib3JkZXIsICR0ZXh0LWNvbG9yKTtcbi8vXG4vLy8vIEJhY2tncm91bmQgVmFyaWFudFxuLy9AaW5jbHVkZSBiZy12YXJpYW50KCRwYXJlbnQsICRjb2xvcik7XG4vL1xuLy8vLyBCb3JkZXIgUmFkaXVzXG4vL0BpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRyYWRpdXMpO1xuLy9AaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKCRyYWRpdXMpO1xuLy9AaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkcmFkaXVzKTtcbi8vQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRyYWRpdXMpO1xuLy9cbi8vLy8gQnV0dG9uc1xuLy9AaW5jbHVkZSBidXR0b24tdmFyaWFudCgkY29sb3IsICRiYWNrZ3JvdW5kLCAkYm9yZGVyKTtcbi8vQGluY2x1ZGUgYnV0dG9uLXNpemUoJHBhZGRpbmctdmVydGljYWwsICRwYWRkaW5nLWhvcml6b250YWwsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpO1xuLy9cbi8vLy8gQ2VudGVyIEJsb2NrXG4vL0BpbmNsdWRlIGNlbnRlci1ibG9jaygpO1xuLy9cbi8vLy8gQ2xlYXJmaXhcbi8vQGluY2x1ZGUgY2xlYXJmaXgoKTtcbi8vXG4vLy8vIEZvcm1zXG4vL0BpbmNsdWRlIGZvcm0tY29udHJvbC12YWxpZGF0aW9uKCR0ZXh0LWNvbG9yOiAjNTU1LCAkYm9yZGVyLWNvbG9yOiAjY2NjLCAkYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNSk7XG4vL0BpbmNsdWRlIGZvcm0tY29udHJvbC1mb2N1cygkY29sb3I6ICRpbnB1dC1ib3JkZXItZm9jdXMpO1xuLy9AaW5jbHVkZSBpbnB1dC1zaXplKCRwYXJlbnQsICRpbnB1dC1oZWlnaHQsICRwYWRkaW5nLXZlcnRpY2FsLCAkcGFkZGluZy1ob3Jpem9udGFsLCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKTtcbi8vXG4vLy8vIEdyYWRpZW50c1xuLy9AaW5jbHVkZSBncmFkaWVudC1ob3Jpem9udGFsKCRzdGFydC1jb2xvcjogIzU1NSwgJGVuZC1jb2xvcjogIzMzMywgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpO1xuLy9AaW5jbHVkZSBncmFkaWVudC12ZXJ0aWNhbCgkc3RhcnQtY29sb3I6ICM1NTUsICRlbmQtY29sb3I6ICMzMzMsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKTtcbi8vQGluY2x1ZGUgZ3JhZGllbnQtZGlyZWN0aW9uYWwoJHN0YXJ0LWNvbG9yOiAjNTU1LCAkZW5kLWNvbG9yOiAjMzMzLCAkZGVnOiA0NWRlZyk7XG4vL0BpbmNsdWRlIGdyYWRpZW50LWhvcml6b250YWwtdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogIzAwYjNlZSwgJG1pZC1jb2xvcjogIzdhNDNiNiwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogI2MzMzI1Zik7XG4vL0BpbmNsdWRlIGdyYWRpZW50LXZlcnRpY2FsLXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICMwMGIzZWUsICRtaWQtY29sb3I6ICM3YTQzYjYsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICNjMzMyNWYpO1xuLy9AaW5jbHVkZSBncmFkaWVudC1yYWRpYWwoJGlubmVyLWNvbG9yOiAjNTU1LCAkb3V0ZXItY29sb3I6ICMzMzMpO1xuLy9AaW5jbHVkZSBncmFkaWVudC1zdHJpcGVkKCRjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwuMTUpLCAkYW5nbGU6IDQ1ZGVnKTtcbi8vXG4vLy8vIEdyaWQgRnJhbWV3b3JrXG4vL0BpbmNsdWRlIG1ha2UtZ3JpZC1jb2x1bW5zKCRpOiAxLCAkbGlzdDogXCIuY29sLXhzLSN7JGl9LCAuY29sLXNtLSN7JGl9LCAuY29sLW1kLSN7JGl9LCAuY29sLWxnLSN7JGl9XCIpO1xuLy9AaW5jbHVkZSBmbG9hdC1ncmlkLWNvbHVtbnMoJGNsYXNzLCAkaTogMSwgJGxpc3Q6IFwiLmNvbC0jeyRjbGFzc30tI3skaX1cIik7XG4vL0BpbmNsdWRlIGNhbGMtZ3JpZC1jb2x1bW4oJGluZGV4LCAkY2xhc3MsICR0eXBlKTtcbi8vQGluY2x1ZGUgbG9vcC1ncmlkLWNvbHVtbnMoJGNvbHVtbnMsICRjbGFzcywgJHR5cGUpO1xuLy9AaW5jbHVkZSBtYWtlLWdyaWQoJGNsYXNzKTtcbi8vXG4vLy8vIEdyaWRcbi8vQGluY2x1ZGUgY29udGFpbmVyLWZpeGVkKCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCk7XG4vL0BpbmNsdWRlIG1ha2Utcm93KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCk7XG4vL0BpbmNsdWRlIG1ha2UteHMtY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpO1xuLy9AaW5jbHVkZSBtYWtlLXhzLWNvbHVtbi1vZmZzZXQoJGNvbHVtbnMpO1xuLy9AaW5jbHVkZSBtYWtlLXhzLWNvbHVtbi1wdXNoKCRjb2x1bW5zKTtcbi8vQGluY2x1ZGUgbWFrZS14cy1jb2x1bW4tcHVsbCgkY29sdW1ucyk7XG4vL0BpbmNsdWRlIG1ha2Utc20tY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpO1xuLy9AaW5jbHVkZSBtYWtlLXNtLWNvbHVtbi1vZmZzZXQoJGNvbHVtbnMpO1xuLy9AaW5jbHVkZSBtYWtlLXNtLWNvbHVtbi1wdXNoKCRjb2x1bW5zKTtcbi8vQGluY2x1ZGUgbWFrZS1zbS1jb2x1bW4tcHVsbCgkY29sdW1ucyk7XG4vL0BpbmNsdWRlIG1ha2UtbWQtY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpO1xuLy9AaW5jbHVkZSBtYWtlLW1kLWNvbHVtbi1vZmZzZXQoJGNvbHVtbnMpO1xuLy9AaW5jbHVkZSBtYWtlLW1kLWNvbHVtbi1wdXNoKCRjb2x1bW5zKTtcbi8vQGluY2x1ZGUgbWFrZS1tZC1jb2x1bW4tcHVsbCgkY29sdW1ucyk7XG4vL0BpbmNsdWRlIG1ha2UtbGctY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpO1xuLy9AaW5jbHVkZSBtYWtlLWxnLWNvbHVtbi1vZmZzZXQoJGNvbHVtbnMpO1xuLy9AaW5jbHVkZSBtYWtlLWxnLWNvbHVtbi1wdXNoKCRjb2x1bW5zKTtcbi8vQGluY2x1ZGUgbWFrZS1sZy1jb2x1bW4tcHVsbCgkY29sdW1ucyk7XG4vL1xuLy8vLyBIaWRlIFRleHRcbi8vQGluY2x1ZGUgdGV4dC1oaWRlKCk7XG4vL1xuLy8vLyBJbWFnZVxuLy9AaW5jbHVkZSBpbWctcmVzcG9uc2l2ZSgkZGlzcGxheTogYmxvY2spO1xuLy9AaW5jbHVkZSBpbWctcmV0aW5hKCRmaWxlLTF4LCAkZmlsZS0yeCwgJHdpZHRoLTF4LCAkaGVpZ2h0LTF4KTtcbi8vXG4vLy8vIExhYmVsc1xuLy9AaW5jbHVkZSBsYWJlbC12YXJpYW50KCRjb2xvcik7XG4vL1xuLy8vLyBMaXN0IEdyb3VwXG4vL0BpbmNsdWRlIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQsICRjb2xvcik7XG4vL1xuLy8vLyBOYXYgRGl2aWRlclxuLy9AaW5jbHVkZSBuYXYtZGl2aWRlcigkY29sb3I6ICNlNWU1ZTUpO1xuLy9cbi8vLy8gTmF2IFZlcnRpY2FsIEFsaWduXG4vL0BpbmNsdWRlIG5hdmJhci12ZXJ0aWNhbC1hbGlnbigkZWxlbWVudC1oZWlnaHQpO1xuLy9cbi8vLy8gT3BhY2l0eVxuLy9AaW5jbHVkZSBvcGFjaXR5KCRvcGFjaXR5KTtcbi8vXG4vLy8vIFBhZ2luYXRpb25cbi8vQGluY2x1ZGUgcGFnaW5hdGlvbi1zaXplKCRwYWRkaW5nLXZlcnRpY2FsLCAkcGFkZGluZy1ob3Jpem9udGFsLCAkZm9udC1zaXplLCAkYm9yZGVyLXJhZGl1cyk7XG4vL1xuLy8vLyBQYW5lbHNcbi8vQGluY2x1ZGUgcGFuZWwtdmFyaWFudCgkYm9yZGVyLCAkaGVhZGluZy10ZXh0LWNvbG9yLCAkaGVhZGluZy1iZy1jb2xvciwgJGhlYWRpbmctYm9yZGVyKTtcbi8vXG4vLy8vIFByb2dyZXNzIEJhclxuLy9AaW5jbHVkZSBwcm9ncmVzcy1iYXItdmFyaWFudCgkY29sb3IpO1xuLy9cbi8vLy8gUmVzZXQgRmlsdGVyXG4vL0BpbmNsdWRlIHJlc2V0LWZpbHRlcigpO1xuLy9cbi8vLy8gUmVzaXplXG4vL0BpbmNsdWRlIHJlc2l6YWJsZSgkZGlyZWN0aW9uKTtcbi8vXG4vLy8vIFJlc3BvbnNpdmUgVmlzaWJpbGl0eVxuLy9AaW5jbHVkZSByZXNwb25zaXZlLXZpc2liaWxpdHkoJHBhcmVudCk7XG4vL0BpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCRwYXJlbnQpO1xuLy9cbi8vLy8gU2l6ZVxuLy9AaW5jbHVkZSBzaXplKCR3aWR0aCwgJGhlaWdodCk7XG4vL0BpbmNsdWRlIHNxdWFyZSgkc2l6ZSk7XG4vL1xuLy8vLyBUYWIgRm9jdXNcbi8vQGluY2x1ZGUgdGFiLWZvY3VzKCk7XG4vL1xuLy8vLyBUYWJsZSBSb3dcbi8vQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCk7XG4vL1xuLy8vLyBUZXh0IEVtcGhhc2lzXG4vL0BpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudCgkcGFyZW50LCAkY29sb3IpO1xuLy9cbi8vLy8gVGV4dCBPdmVyZmxvd1xuLy9AaW5jbHVkZSB0ZXh0LW92ZXJmbG93KCk7XG4vL1xuLy8vLyBWZW5kb3IgUHJlZml4ZXNcbi8vQGluY2x1ZGUgYW5pbWF0aW9uKCRhbmltYXRpb24pO1xuLy9AaW5jbHVkZSBhbmltYXRpb24tbmFtZSgkbmFtZSk7XG4vL0BpbmNsdWRlIGFuaW1hdGlvbi1kdXJhdGlvbigkZHVyYXRpb24pO1xuLy9AaW5jbHVkZSBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uKCR0aW1pbmctZnVuY3Rpb24pO1xuLy9AaW5jbHVkZSBhbmltYXRpb24tZGVsYXkoJGRlbGF5KTtcbi8vQGluY2x1ZGUgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCgkaXRlcmF0aW9uLWNvdW50KTtcbi8vQGluY2x1ZGUgYW5pbWF0aW9uLWRpcmVjdGlvbigkZGlyZWN0aW9uKTtcbi8vQGluY2x1ZGUgYW5pbWF0aW9uLWZpbGwtbW9kZSgkZmlsbC1tb2RlKTtcbi8vQGluY2x1ZGUgYmFja2ZhY2UtdmlzaWJpbGl0eSgkdmlzaWJpbGl0eSk7XG4vL0BpbmNsdWRlIGJveC1zaGFkb3coJHNoYWRvdy4uLik7XG4vL0BpbmNsdWRlIGJveC1zaXppbmcoJGJveG1vZGVsKTtcbi8vQGluY2x1ZGUgY29udGVudC1jb2x1bW5zKCRjb2x1bW4tY291bnQsICRjb2x1bW4tZ2FwOiAkZ3JpZC1ndXR0ZXItd2lkdGgpO1xuLy9AaW5jbHVkZSBoeXBoZW5zKCRtb2RlOiBhdXRvKTtcbi8vQGluY2x1ZGUgcGxhY2Vob2xkZXIoJGNvbG9yOiAkaW5wdXQtY29sb3ItcGxhY2Vob2xkZXIpO1xuLy9AaW5jbHVkZSBzY2FsZSgkcmF0aW8uLi4pO1xuLy9AaW5jbHVkZSBzY2FsZVgoJHJhdGlvKTtcbi8vQGluY2x1ZGUgc2NhbGVZKCRyYXRpbyk7XG4vL0BpbmNsdWRlIHNrZXcoJHgsICR5KTtcbi8vQGluY2x1ZGUgdHJhbnNsYXRlKCR4LCAkeSk7XG4vL0BpbmNsdWRlIHRyYW5zbGF0ZTNkKCR4LCAkeSwgJHopO1xuLy9AaW5jbHVkZSByb3RhdGUoJGRlZ3JlZXMpO1xuLy9AaW5jbHVkZSByb3RhdGVYKCRkZWdyZWVzKTtcbi8vQGluY2x1ZGUgcm90YXRlWSgkZGVncmVlcyk7XG4vL0BpbmNsdWRlIHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSk7XG4vL0BpbmNsdWRlIHBlcnNwZWN0aXZlLW9yaWdpbigkcGVyc3BlY3RpdmUpO1xuLy9AaW5jbHVkZSB0cmFuc2Zvcm0tb3JpZ2luKCRvcmlnaW4pO1xuLy9AaW5jbHVkZSB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLi4uKTtcbi8vQGluY2x1ZGUgdHJhbnNpdGlvbi1wcm9wZXJ0eSgkdHJhbnNpdGlvbi1wcm9wZXJ0eS4uLik7XG4vL0BpbmNsdWRlIHRyYW5zaXRpb24tZGVsYXkoJHRyYW5zaXRpb24tZGVsYXkpO1xuLy9AaW5jbHVkZSB0cmFuc2l0aW9uLWR1cmF0aW9uKCR0cmFuc2l0aW9uLWR1cmF0aW9uLi4uKTtcbi8vQGluY2x1ZGUgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24oJHRpbWluZy1mdW5jdGlvbik7XG4vL0BpbmNsdWRlIHRyYW5zaXRpb24tdHJhbnNmb3JtKCR0cmFuc2l0aW9uLi4uKTtcbi8vQGluY2x1ZGUgdXNlci1zZWxlY3QoJHNlbGVjdCk7XG5cbi8vLy8vLy9DdXN0b20gTWl4aW5zXG5AbWl4aW4gaGlkZS10ZXh0IHtcbiAgdGV4dC1pbmRlbnQ6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbkBtaXhpbiBoZWFkaW5ncygkZnJvbTogMSwgJHRvOiA2KSB7XG4gIEBmb3IgJGkgZnJvbSAkZnJvbSB0aHJvdWdoICR0byB7XG4gICAgaCN7JGl9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBBZGRzIGxldHRlciBzcGFjaW5nIHRvIG1hdGNoIHBob3Rvc2hvcCB0cmFja2luZ1xuQG1peGluIHRyYWNraW5nKCRwcy10cmFja2luZykge1xuICBsZXR0ZXItc3BhY2luZzogI3skcHMtdHJhY2tpbmd9cHg7XG59XG5cbkBtaXhpbiBzY3JvbGxfdHJhbnNpdGlvbiB7XG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcbiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0O1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG5AbWl4aW4gdHJhbnNmb3JtKCRlZmZlY3QuLi4pIHtcbiAgLW1vei10cmFuc2Zvcm06ICRlZmZlY3Q7XG4gIC1tcy10cmFuc2Zvcm06ICRlZmZlY3Q7XG4gIC1vLXRyYW5zZm9ybTogJGVmZmVjdDtcbiAgLXdlYmtpdC10cmFuc2Zvcm06ICRlZmZlY3Q7XG4gIHRyYW5zZm9ybTogJGVmZmVjdDtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi8vdGhpcyBtaXhpbiBieXBhc3NlcyB0aGUgYm9vdHN0cmFwIG1peGluIHRoYXQgaGFzIHRoZSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbikgY2hlY2tcbkBtaXhpbiBUcmFuc2l0aW9uKCRlZmZlY3QuLi4pIHtcbiAgLW1vei10cmFuc2l0aW9uOiAkZWZmZWN0O1xuICAtbXMtdHJhbnNpdGlvbjogJGVmZmVjdDtcbiAgLW8tdHJhbnNpdGlvbjogJGVmZmVjdDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAkZWZmZWN0O1xuICB0cmFuc2l0aW9uOiAkZWZmZWN0O1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG5AbWl4aW4gYXNwZWN0LXJhdGlvKCR3aWR0aCwgJGhlaWdodCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgJjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy10b3A6ICgkaGVpZ2h0IC8gJHdpZHRoKSAqIDEwMCU7XG4gIH1cbn1cblxuQG1peGluIGFzcGVjdF9yYXRpb19zZWN0aW9uKCR3aWR0aCwgJGhlaWdodCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgJjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy10b3A6ICgkaGVpZ2h0IC8gJHdpZHRoKSAqIDEwMCU7XG4gIH1cblxuICA+IC5hc3BlY3RfY29udGVudCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgfVxufVxuXG5AbWl4aW4gYWJzb2x1dGUtY292ZXIge1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbn1cblxuQG1peGluIGJhY2tncm91bmQtYmx1cigkc2l6ZSkge1xuICAtd2Via2l0LWZpbHRlcjogYmx1cigkc2l6ZSk7XG4gIC1tb3otZmlsdGVyOiBibHVyKCRzaXplKTtcbiAgLW8tZmlsdGVyOiBibHVyKCRzaXplKTtcbiAgLW1zLWZpbHRlcjogYmx1cigkc2l6ZSk7XG4gIGZpbHRlcjogYmx1cigkc2l6ZSk7XG59XG5cbkBtaXhpbiBiYWNrZ3JvdW5kLWZpeCB7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogc2Nyb2xsO1xuICB9XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEzNjZweCkge1xuICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogc2Nyb2xsICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1peGluIGJhY2tncm91bmQtY292ZXIge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xufVxuXG5AbWl4aW4gaG92ZXJfdHJhbnNpdGlvbiB7XG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4zcyBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSkgNTBtcztcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4zcyBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSkgNTBtcztcbiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuM3MgY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpIDUwbXM7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3MgY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpIDUwbXM7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKSA1MG1zO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG5AbWl4aW4gYWJzb2x1dGVfbWlkZGxlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpO1xuICB0b3A6IDUwJTtcbiAgd2lkdGg6IGF1dG87XG59XG5cbkBtaXhpbiBtaWRkbGVfdiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgdG9wOiA1MCU7XG59XG5cbkBtaXhpbiBtaWRkbGVfaCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xufVxuXG5AbWl4aW4gZ3JleXNjYWxlIHtcbiAgLXdlYmtpdC1maWx0ZXI6IGdyYXlzY2FsZSgxMDAlKTtcbiAgZmlsdGVyOiBncmF5c2NhbGUoMTAwJSk7XG59XG5cbkBtaXhpbiBib3JkZXItcmFkaXVzKCRyYWRpdXMpIHtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuICAtbW96LWJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG4gIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG59XG5cbkBmdW5jdGlvbiByYW5nZS1wcm9ncmVzcygkY29sb3IsICRkaXN0LCAkb2Zmc2V0KSB7XG4gICR2YWw6IC0jeyRkaXN0fSAwIDAgLSN7JG9mZnNldH0gJGNvbG9yO1xuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggMTUwIHtcbiAgICAkdmFsOiAjeyR2YWx9LFxuICAgICAgI3stJGRpc3QgLSAoKCRkaXN0IC0gJG9mZnNldCkgKiAkaSl9IDAgMCAtI3skb2Zmc2V0fSAjeyRjb2xvcn07XG4gIH1cblxuICBAcmV0dXJuICR2YWw7XG59XG5cbkBtaXhpbiBmb250LXJlc3BvbnNpdmUoJG1pbiwgJG1heCkge1xuICAkbWlucHg6ICRtaW4gKyBweDtcbiAgZm9udC1zaXplOiBjYWxjKFxuICAgICN7JG1pbnB4fSArICgjeyRtYXh9IC0gI3skbWlufSkgKiAoKDEwMHZ3IC0gMzAwcHgpIC8gKDE5MjAgLSAzMDApKVxuICApO1xuICBAbWVkaWEgKG1pbi13aWR0aDogMTkyMHB4KSB7XG4gICAgZm9udC1zaXplOiAkbWF4ICsgcHg7XG4gIH1cbn1cblxuQG1peGluIGxpbmUtaGVpZ2h0LXJlc3BvbnNpdmUoJG1pbiwgJG1heCkge1xuICAkbWlucHg6ICRtaW4gKyBweDtcbiAgbGluZS1oZWlnaHQ6IGNhbGMoXG4gICAgI3skbWlucHh9ICsgKCN7JG1heH0gLSAjeyRtaW59KSAqICgoMTAwdncgLSAzMDBweCkgLyAoMTkyMCAtIDMwMCkpXG4gICk7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6IDE5MjBweCkge1xuICAgIGxpbmUtaGVpZ2h0OiAkbWF4ICsgcHg7XG4gIH1cbn1cblxuQG1peGluIGNsYW1wQXV0b1Z3KCRwcm9wZXJ0eSwgJG1pbiwgJG1heCkge1xuICAkdndNYXg6IDE5MjA7IC8vIE1heGltdW0gc2NyZWVuIHdpZHRoXG4gICRtYXhWdzogKCRtYXggLyAkdndNYXgpICogMTAwOyAvLyBDYWxjdWxhdGUgbWF4IHZhbHVlIGluIHZ3IHVuaXRzXG4gICN7JHByb3BlcnR5fTogY2xhbXAoI3skbWlufXB4LCAjeyRtYXhWd312dywgI3skbWF4fXB4KTtcbn1cblxuJHZpZGVvLWljb246IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTUnIGhlaWdodD0nMTEnIHZpZXdCb3g9JzAgMCAxNSAxMScgZmlsbD0nbm9uZSclM0UlM0NwYXRoIGQ9J00zLjU0MTYxIDBDMi4wNzAwNyAwIDAuODc1IDEuMjcyMjggMC44NzUgMi44Mzg2OVY4LjE2MTMxQzAuODc1IDkuNzI3ODEgMi4wNzAxNiAxMSAzLjU0MTYxIDExSDEyLjIwODRDMTMuNjc5OSAxMSAxNC44NzUgOS43Mjc3MiAxNC44NzUgOC4xNjEzMVYyLjgzODY5QzE0Ljg3NSAxLjI3MjE5IDEzLjY3OTggMCAxMi4yMDg0IDBIMy41NDE2MVpNMy41NDE2MSAwLjcwOTczSDEyLjIwODRDMTMuMzIyMSAwLjcwOTczIDE0LjIwODUgMS42NTMxNiAxNC4yMDg1IDIuODM4ODdWOC4xNjE1QzE0LjIwODUgOS4zNDcxMiAxMy4zMjIyIDEwLjI5MDYgMTIuMjA4NCAxMC4yOTA2SDMuNTQxNjFDMi40Mjc4NiAxMC4yOTA2IDEuNTQxNTMgOS4zNDcyMiAxLjU0MTUzIDguMTYxNVYyLjgzODg3QzEuNTQxNTMgMS42NTMyNSAyLjQyNzc3IDAuNzA5NzMgMy41NDE2MSAwLjcwOTczWk02LjUxNTY3IDIuODM4ODdWMi44Mzg3OEM2LjQzMTg0IDIuODQ1NzUgNi4zNTM2MiAyLjg4NjIgNi4yOTY2NyAyLjk1MjA0QzYuMjM5NjQgMy4wMTc4IDYuMjA4MTEgMy4xMDQxIDYuMjA4MzcgMy4xOTM2MVY3LjgwNjc0QzYuMjA3MjUgNy44OTExMSA2LjIzNDM5IDcuOTczMjggNi4yODQ5NiA4LjAzODNDNi4zMzU1MyA4LjEwMzMyIDYuNDA2MjYgOC4xNDcwNyA2LjQ4NDQgOC4xNjE1NkM2LjU2MzMxIDguMTc2NiA2LjY0NDcyIDguMTYwODMgNi43MTM1NyA4LjExNzE3TDEwLjM4MDQgNS44MTA2OEMxMC40NDg1IDUuNzY5MDQgMTAuNTAwNiA1LjcwMzEgMTAuNTI3NSA1LjYyNDZDMTAuNTU0NSA1LjU0NiAxMC41NTQ1IDUuNDU5ODkgMTAuNTI3NSA1LjM4MTM5QzEwLjUwMDYgNS4zMDI4IDEwLjQ0ODUgNS4yMzY4NiAxMC4zODA0IDUuMTk1MjJMNi43MTM1NyAyLjg4ODczQzYuNjU0MTIgMi44NTA1OCA2LjU4NDk0IDIuODMzMTUgNi41MTU2OCAyLjgzODg0TDYuNTE1NjcgMi44Mzg4N1pNNi44NzUwOSAzLjgyMDI2TDkuNTQ3IDUuNTAwM0w2Ljg3NTA5IDcuMTg1ODRWMy44MjAyNlonIGZpbGw9J3doaXRlJy8lM0UlM0Mvc3ZnJTNFXCIpO1xuJGF1ZGlvLWljb246IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTUnIGhlaWdodD0nMTEnIHZpZXdCb3g9JzAgMCAxNSAxMScgZmlsbD0nbm9uZScgc3Ryb2tlPSd3aGl0ZScgc3Ryb2tlLXdpZHRoPScwLjgnIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCclM0UlM0NwYXRoIGQ9J00xIDRIMy41TDcgMVYxMEwzLjUgN0gxVjRaJy8lM0UlM0NsaW5lIHgxPSczLjUnIHkxPSc0JyB4Mj0nMy41JyB5Mj0nNycvJTNFJTNDcGF0aCBkPSdNOS41NTk3IDIuNzQ0N0MxMC41MjQ2IDMuMTk2NSAxMS4xNjkgNC4yODQ2IDExLjE2MjkgNS40NTNDMTEuMTY5IDYuNjIwOSAxMC41MjQ2IDcuNzA5IDkuNTU5NyA4LjE2MTgnLyUzRSUzQ3BhdGggZD0nTTEwLjQwMDIgMS4wNjA0QzExLjk2NTggMS43OTI5IDEzLjAxMDMgMy41NTggMTMuMDAwMiA1LjQ1MjNDMTMuMDEwNCA3LjM0NzIgMTEuOTY1OCA5LjExMjIgMTAuNDAwMiA5Ljg0NDknLyUzRSUzQy9zdmclM0VcIik7XG5cbkBtaXhpbiBtZWRpYUNhcmRCYWRnZVRvZ2dsZSgkaWNvbiwgJGljb24tc2l6ZTogbnVsbCkge1xuICBjb250YWluZXItdHlwZTogaW5saW5lLXNpemU7XG4gIEBjb250YWluZXIgKHdpZHRoID49IDQwMHB4KSB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbiAgQGNvbnRhaW5lciAod2lkdGggPCA0MDBweCkge1xuICAgIC52aWQtaWNvbjpiZWZvcmUsLnZpZF9pY29uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbiAgJjphZnRlciB7XG4gICAgY29udGVudDogYXR0cihkYXRhLXR5cGUpO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDUlO1xuICAgIHJpZ2h0OiA0JTtcbiAgICBmb250LWZhbWlseTogJGdvdGhhbTtcbiAgICBmb250LXNpemU6IDEwcHg7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIHotaW5kZXg6IDI7XG4gICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC43KTtcbiAgICBwYWRkaW5nOiA1cHggNnB4IDVweCAyOXB4O1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNnB4O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6ICRpY29uO1xuICAgIFxuICAgIEBpZiAkaWNvbi1zaXplIHtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogJGljb24tc2l6ZTtcbiAgICB9XG4gIH1cbn0iLCIvLyBCb290c3RyYXAgZnVuY3Rpb25zXG4vL1xuLy8gVXRpbGl0eSBtaXhpbnMgYW5kIGZ1bmN0aW9ucyBmb3IgZXZhbHVhdGluZyBzb3VyY2UgY29kZSBhY3Jvc3Mgb3VyIHZhcmlhYmxlcywgbWFwcywgYW5kIG1peGlucy5cblxuLy8gQXNjZW5kaW5nXG4vLyBVc2VkIHRvIGV2YWx1YXRlIFNhc3MgbWFwcyBsaWtlIG91ciBncmlkIGJyZWFrcG9pbnRzLlxuQG1peGluIF9hc3NlcnQtYXNjZW5kaW5nKCRtYXAsICRtYXAtbmFtZSkge1xuICAkcHJldi1rZXk6IG51bGw7XG4gICRwcmV2LW51bTogbnVsbDtcbiAgQGVhY2ggJGtleSwgJG51bSBpbiAkbWFwIHtcbiAgICBAaWYgJHByZXYtbnVtID09IG51bGwgb3IgdW5pdCgkbnVtKSA9PSBcIiVcIiB7XG4gICAgICAvLyBEbyBub3RoaW5nXG4gICAgfSBAZWxzZSBpZiBub3QgY29tcGFyYWJsZSgkcHJldi1udW0sICRudW0pIHtcbiAgICAgIEB3YXJuIFwiUG90ZW50aWFsbHkgaW52YWxpZCB2YWx1ZSBmb3IgI3skbWFwLW5hbWV9OiBUaGlzIG1hcCBtdXN0IGJlIGluIGFzY2VuZGluZyBvcmRlciwgYnV0IGtleSAnI3ska2V5fScgaGFzIHZhbHVlICN7JG51bX0gd2hvc2UgdW5pdCBtYWtlcyBpdCBpbmNvbXBhcmFibGUgdG8gI3skcHJldi1udW19LCB0aGUgdmFsdWUgb2YgdGhlIHByZXZpb3VzIGtleSAnI3skcHJldi1rZXl9JyAhXCI7XG4gICAgfSBAZWxzZSBpZiAkcHJldi1udW0gPj0gJG51bSB7XG4gICAgICBAd2FybiBcIkludmFsaWQgdmFsdWUgZm9yICN7JG1hcC1uYW1lfTogVGhpcyBtYXAgbXVzdCBiZSBpbiBhc2NlbmRpbmcgb3JkZXIsIGJ1dCBrZXkgJyN7JGtleX0nIGhhcyB2YWx1ZSAjeyRudW19IHdoaWNoIGlzbid0IGdyZWF0ZXIgdGhhbiAjeyRwcmV2LW51bX0sIHRoZSB2YWx1ZSBvZiB0aGUgcHJldmlvdXMga2V5ICcjeyRwcmV2LWtleX0nICFcIjtcbiAgICB9XG4gICAgJHByZXYta2V5OiAka2V5O1xuICAgICRwcmV2LW51bTogJG51bTtcbiAgfVxufVxuXG4vLyBTdGFydHMgYXQgemVyb1xuLy8gVXNlZCB0byBlbnN1cmUgdGhlIG1pbi13aWR0aCBvZiB0aGUgbG93ZXN0IGJyZWFrcG9pbnQgc3RhcnRzIGF0IDAuXG5AbWl4aW4gX2Fzc2VydC1zdGFydHMtYXQtemVybygkbWFwLCAkbWFwLW5hbWU6IFwiJGdyaWQtYnJlYWtwb2ludHNcIikge1xuICAkdmFsdWVzOiBtYXAtdmFsdWVzKCRtYXApO1xuICAkZmlyc3QtdmFsdWU6IG50aCgkdmFsdWVzLCAxKTtcbiAgQGlmICRmaXJzdC12YWx1ZSAhPSAwIHtcbiAgICBAd2FybiBcIkZpcnN0IGJyZWFrcG9pbnQgaW4gI3skbWFwLW5hbWV9IG11c3Qgc3RhcnQgYXQgMCwgYnV0IHN0YXJ0cyBhdCAjeyRmaXJzdC12YWx1ZX0uXCI7XG4gIH1cbn1cblxuLy8gUmVwbGFjZSBgJHNlYXJjaGAgd2l0aCBgJHJlcGxhY2VgIGluIGAkc3RyaW5nYFxuLy8gVXNlZCBvbiBvdXIgU1ZHIGljb24gYmFja2dyb3VuZHMgZm9yIGN1c3RvbSBmb3Jtcy5cbi8vXG4vLyBAYXV0aG9yIEh1Z28gR2lyYXVkZWxcbi8vIEBwYXJhbSB7U3RyaW5nfSAkc3RyaW5nIC0gSW5pdGlhbCBzdHJpbmdcbi8vIEBwYXJhbSB7U3RyaW5nfSAkc2VhcmNoIC0gU3Vic3RyaW5nIHRvIHJlcGxhY2Vcbi8vIEBwYXJhbSB7U3RyaW5nfSAkcmVwbGFjZSAoJycpIC0gTmV3IHZhbHVlXG4vLyBAcmV0dXJuIHtTdHJpbmd9IC0gVXBkYXRlZCBzdHJpbmdcbkBmdW5jdGlvbiBzdHItcmVwbGFjZSgkc3RyaW5nLCAkc2VhcmNoLCAkcmVwbGFjZTogXCJcIikge1xuICAkaW5kZXg6IHN0ci1pbmRleCgkc3RyaW5nLCAkc2VhcmNoKTtcblxuICBAaWYgJGluZGV4IHtcbiAgICBAcmV0dXJuIHN0ci1zbGljZSgkc3RyaW5nLCAxLCAkaW5kZXggLSAxKSArICRyZXBsYWNlICsgc3RyLXJlcGxhY2Uoc3RyLXNsaWNlKCRzdHJpbmcsICRpbmRleCArIHN0ci1sZW5ndGgoJHNlYXJjaCkpLCAkc2VhcmNoLCAkcmVwbGFjZSk7XG4gIH1cblxuICBAcmV0dXJuICRzdHJpbmc7XG59XG5cbi8vIENvbG9yIGNvbnRyYXN0XG5AZnVuY3Rpb24gY29sb3IteWlxKCRjb2xvciwgJGRhcms6ICR5aXEtdGV4dC1kYXJrLCAkbGlnaHQ6ICR5aXEtdGV4dC1saWdodCkge1xuICAkcjogcmVkKCRjb2xvcik7XG4gICRnOiBncmVlbigkY29sb3IpO1xuICAkYjogYmx1ZSgkY29sb3IpO1xuXG4gICR5aXE6ICgoJHIgKiAyOTkpICsgKCRnICogNTg3KSArICgkYiAqIDExNCkpIC8gMTAwMDtcblxuICBAaWYgKCR5aXEgPj0gJHlpcS1jb250cmFzdGVkLXRocmVzaG9sZCkge1xuICAgIEByZXR1cm4gJGRhcms7XG4gIH0gQGVsc2Uge1xuICAgIEByZXR1cm4gJGxpZ2h0O1xuICB9XG59XG5cbi8vIFJldHJpZXZlIGNvbG9yIFNhc3MgbWFwc1xuQGZ1bmN0aW9uIGNvbG9yKCRrZXk6IFwiYmx1ZVwiKSB7XG4gIEByZXR1cm4gbWFwLWdldCgkY29sb3JzLCAka2V5KTtcbn1cblxuQGZ1bmN0aW9uIHRoZW1lLWNvbG9yKCRrZXk6IFwicHJpbWFyeVwiKSB7XG4gIEByZXR1cm4gbWFwLWdldCgkdGhlbWUtY29sb3JzLCAka2V5KTtcbn1cblxuQGZ1bmN0aW9uIGdyYXkoJGtleTogXCIxMDBcIikge1xuICBAcmV0dXJuIG1hcC1nZXQoJGdyYXlzLCAka2V5KTtcbn1cblxuLy8gUmVxdWVzdCBhIHRoZW1lIGNvbG9yIGxldmVsXG5AZnVuY3Rpb24gdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLW5hbWU6IFwicHJpbWFyeVwiLCAkbGV2ZWw6IDApIHtcbiAgJGNvbG9yOiB0aGVtZS1jb2xvcigkY29sb3ItbmFtZSk7XG4gICRjb2xvci1iYXNlOiBpZigkbGV2ZWwgPiAwLCAkYmxhY2ssICR3aGl0ZSk7XG4gICRsZXZlbDogYWJzKCRsZXZlbCk7XG5cbiAgQHJldHVybiBtaXgoJGNvbG9yLWJhc2UsICRjb2xvciwgJGxldmVsICogJHRoZW1lLWNvbG9yLWludGVydmFsKTtcbn1cbiIsIi8vIFZhcmlhYmxlc1xuLy9cbi8vIFZhcmlhYmxlcyBzaG91bGQgZm9sbG93IHRoZSBgJGNvbXBvbmVudC1zdGF0ZS1wcm9wZXJ0eS1zaXplYCBmb3JtdWxhIGZvclxuLy8gY29uc2lzdGVudCBuYW1pbmcuIEV4OiAkbmF2LWxpbmstZGlzYWJsZWQtY29sb3IgYW5kICRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHMuXG5cbi8vIENvbG9yIHN5c3RlbVxuXG4kd2hpdGU6ICAgICNmZmYgIWRlZmF1bHQ7XG4kZ3JheS0xMDA6ICNmOGY5ZmEgIWRlZmF1bHQ7XG4kZ3JheS0yMDA6ICNlOWVjZWYgIWRlZmF1bHQ7XG4kZ3JheS0zMDA6ICNkZWUyZTYgIWRlZmF1bHQ7XG4kZ3JheS00MDA6ICNjZWQ0ZGEgIWRlZmF1bHQ7XG4kZ3JheS01MDA6ICNhZGI1YmQgIWRlZmF1bHQ7XG4kZ3JheS02MDA6ICM2Yzc1N2QgIWRlZmF1bHQ7XG4kZ3JheS03MDA6ICM0OTUwNTcgIWRlZmF1bHQ7XG4kZ3JheS04MDA6ICMzNDNhNDAgIWRlZmF1bHQ7XG4kZ3JheS05MDA6ICMyMTI1MjkgIWRlZmF1bHQ7XG4kYmxhY2s6ICAgICMwMDAgIWRlZmF1bHQ7XG5cbiRncmF5czogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJGdyYXlzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBcIjEwMFwiOiAkZ3JheS0xMDAsXG4gICAgXCIyMDBcIjogJGdyYXktMjAwLFxuICAgIFwiMzAwXCI6ICRncmF5LTMwMCxcbiAgICBcIjQwMFwiOiAkZ3JheS00MDAsXG4gICAgXCI1MDBcIjogJGdyYXktNTAwLFxuICAgIFwiNjAwXCI6ICRncmF5LTYwMCxcbiAgICBcIjcwMFwiOiAkZ3JheS03MDAsXG4gICAgXCI4MDBcIjogJGdyYXktODAwLFxuICAgIFwiOTAwXCI6ICRncmF5LTkwMFxuICApLFxuICAkZ3JheXNcbik7XG5cbiRibHVlOiAgICAjMDA3YmZmICFkZWZhdWx0O1xuJGluZGlnbzogICM2NjEwZjIgIWRlZmF1bHQ7XG4kcHVycGxlOiAgIzZmNDJjMSAhZGVmYXVsdDtcbiRwaW5rOiAgICAjZTgzZThjICFkZWZhdWx0O1xuJHJlZDogICAgICNkYzM1NDUgIWRlZmF1bHQ7XG4kb3JhbmdlOiAgI2ZkN2UxNCAhZGVmYXVsdDtcbiR5ZWxsb3c6ICAjZmZjMTA3ICFkZWZhdWx0O1xuJGdyZWVuOiAgICMyOGE3NDUgIWRlZmF1bHQ7XG4kdGVhbDogICAgIzIwYzk5NyAhZGVmYXVsdDtcbiRjeWFuOiAgICAjMTdhMmI4ICFkZWZhdWx0O1xuXG4kY29sb3JzOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kY29sb3JzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBcImJsdWVcIjogICAgICAgJGJsdWUsXG4gICAgXCJpbmRpZ29cIjogICAgICRpbmRpZ28sXG4gICAgXCJwdXJwbGVcIjogICAgICRwdXJwbGUsXG4gICAgXCJwaW5rXCI6ICAgICAgICRwaW5rLFxuICAgIFwicmVkXCI6ICAgICAgICAkcmVkLFxuICAgIFwib3JhbmdlXCI6ICAgICAkb3JhbmdlLFxuICAgIFwieWVsbG93XCI6ICAgICAkeWVsbG93LFxuICAgIFwiZ3JlZW5cIjogICAgICAkZ3JlZW4sXG4gICAgXCJ0ZWFsXCI6ICAgICAgICR0ZWFsLFxuICAgIFwiY3lhblwiOiAgICAgICAkY3lhbixcbiAgICBcIndoaXRlXCI6ICAgICAgJHdoaXRlLFxuICAgIFwiZ3JheVwiOiAgICAgICAkZ3JheS02MDAsXG4gICAgXCJncmF5LWRhcmtcIjogICRncmF5LTgwMFxuICApLFxuICAkY29sb3JzXG4pO1xuXG4kcHJpbWFyeTogICAgICAgJGJsdWUgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5OiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHN1Y2Nlc3M6ICAgICAgICRncmVlbiAhZGVmYXVsdDtcbiRpbmZvOiAgICAgICAgICAkY3lhbiAhZGVmYXVsdDtcbiR3YXJuaW5nOiAgICAgICAkeWVsbG93ICFkZWZhdWx0O1xuJGRhbmdlcjogICAgICAgICRyZWQgIWRlZmF1bHQ7XG4kbGlnaHQ6ICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuJGRhcms6ICAgICAgICAgICRncmF5LTgwMCAhZGVmYXVsdDtcblxuJHRoZW1lLWNvbG9yczogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJHRoZW1lLWNvbG9yczogbWFwLW1lcmdlKFxuICAoXG4gICAgXCJwcmltYXJ5XCI6ICAgICRwcmltYXJ5LFxuICAgIFwic2Vjb25kYXJ5XCI6ICAkc2Vjb25kYXJ5LFxuICAgIFwic3VjY2Vzc1wiOiAgICAkc3VjY2VzcyxcbiAgICBcImluZm9cIjogICAgICAgJGluZm8sXG4gICAgXCJ3YXJuaW5nXCI6ICAgICR3YXJuaW5nLFxuICAgIFwiZGFuZ2VyXCI6ICAgICAkZGFuZ2VyLFxuICAgIFwibGlnaHRcIjogICAgICAkbGlnaHQsXG4gICAgXCJkYXJrXCI6ICAgICAgICRkYXJrXG4gICksXG4gICR0aGVtZS1jb2xvcnNcbik7XG5cbi8vIFNldCBhIHNwZWNpZmljIGp1bXAgcG9pbnQgZm9yIHJlcXVlc3RpbmcgY29sb3IganVtcHNcbiR0aGVtZS1jb2xvci1pbnRlcnZhbDogICAgICA4JSAhZGVmYXVsdDtcblxuLy8gVGhlIHlpcSBsaWdodG5lc3MgdmFsdWUgdGhhdCBkZXRlcm1pbmVzIHdoZW4gdGhlIGxpZ2h0bmVzcyBvZiBjb2xvciBjaGFuZ2VzIGZyb20gXCJkYXJrXCIgdG8gXCJsaWdodFwiLiBBY2NlcHRhYmxlIHZhbHVlcyBhcmUgYmV0d2VlbiAwIGFuZCAyNTUuXG4keWlxLWNvbnRyYXN0ZWQtdGhyZXNob2xkOiAgMTUwICFkZWZhdWx0O1xuXG4vLyBDdXN0b21pemUgdGhlIGxpZ2h0IGFuZCBkYXJrIHRleHQgY29sb3JzIGZvciB1c2UgaW4gb3VyIFlJUSBjb2xvciBjb250cmFzdCBmdW5jdGlvbi5cbiR5aXEtdGV4dC1kYXJrOiAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4keWlxLXRleHQtbGlnaHQ6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG5cbi8vIE9wdGlvbnNcbi8vXG4vLyBRdWlja2x5IG1vZGlmeSBnbG9iYWwgc3R5bGluZyBieSBlbmFibGluZyBvciBkaXNhYmxpbmcgb3B0aW9uYWwgZmVhdHVyZXMuXG5cbiRlbmFibGUtY2FyZXQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1yb3VuZGVkOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXNoYWRvd3M6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLWdyYWRpZW50czogICAgICAgICAgICAgICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLXRyYW5zaXRpb25zOiAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcHJlZmVycy1yZWR1Y2VkLW1vdGlvbi1tZWRpYS1xdWVyeTogICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1ob3Zlci1tZWRpYS1xdWVyeTogICAgICAgICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkLCBubyBsb25nZXIgYWZmZWN0cyBhbnkgY29tcGlsZWQgQ1NTXG4kZW5hYmxlLWdyaWQtY2xhc3NlczogICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcG9pbnRlci1jdXJzb3ItZm9yLWJ1dHRvbnM6ICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1wcmludC1zdHlsZXM6ICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplczogICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLXZhbGlkYXRpb24taWNvbnM6ICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtZGVwcmVjYXRpb24tbWVzc2FnZXM6ICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuXG5cbi8vIFNwYWNpbmdcbi8vXG4vLyBDb250cm9sIHRoZSBkZWZhdWx0IHN0eWxpbmcgb2YgbW9zdCBCb290c3RyYXAgZWxlbWVudHMgYnkgbW9kaWZ5aW5nIHRoZXNlXG4vLyB2YXJpYWJsZXMuIE1vc3RseSBmb2N1c2VkIG9uIHNwYWNpbmcuXG4vLyBZb3UgY2FuIGFkZCBtb3JlIGVudHJpZXMgdG8gdGhlICRzcGFjZXJzIG1hcCwgc2hvdWxkIHlvdSBuZWVkIG1vcmUgdmFyaWF0aW9uLlxuXG4kc3BhY2VyOiAxcmVtICFkZWZhdWx0O1xuJHNwYWNlcnM6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRzcGFjZXJzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICAwOiAwLFxuICAgIDE6ICgkc3BhY2VyICogLjI1KSxcbiAgICAyOiAoJHNwYWNlciAqIC41KSxcbiAgICAzOiAkc3BhY2VyLFxuICAgIDQ6ICgkc3BhY2VyICogMS41KSxcbiAgICA1OiAoJHNwYWNlciAqIDMpXG4gICksXG4gICRzcGFjZXJzXG4pO1xuXG4vLyBUaGlzIHZhcmlhYmxlIGFmZmVjdHMgdGhlIGAuaC0qYCBhbmQgYC53LSpgIGNsYXNzZXMuXG4kc2l6ZXM6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRzaXplczogbWFwLW1lcmdlKFxuICAoXG4gICAgMjU6IDI1JSxcbiAgICA1MDogNTAlLFxuICAgIDc1OiA3NSUsXG4gICAgMTAwOiAxMDAlLFxuICAgIGF1dG86IGF1dG9cbiAgKSxcbiAgJHNpemVzXG4pO1xuXG5cbi8vIEJvZHlcbi8vXG4vLyBTZXR0aW5ncyBmb3IgdGhlIGA8Ym9keT5gIGVsZW1lbnQuXG5cbiRib2R5LWJnOiAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kYm9keS1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuXG5cbi8vIExpbmtzXG4vL1xuLy8gU3R5bGUgYW5jaG9yIGVsZW1lbnRzLlxuXG4kbGluay1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGVtZS1jb2xvcihcInByaW1hcnlcIikgIWRlZmF1bHQ7XG4kbGluay1kZWNvcmF0aW9uOiAgICAgICAgICAgICAgICAgICAgICAgICBub25lICFkZWZhdWx0O1xuJGxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRsaW5rLWNvbG9yLCAxNSUpICFkZWZhdWx0O1xuJGxpbmstaG92ZXItZGVjb3JhdGlvbjogICAgICAgICAgICAgICAgICAgdW5kZXJsaW5lICFkZWZhdWx0O1xuLy8gRGFya2VuIHBlcmNlbnRhZ2UgZm9yIGxpbmtzIHdpdGggYC50ZXh0LSpgIGNsYXNzIChlLmcuIGAudGV4dC1zdWNjZXNzYClcbiRlbXBoYXNpemVkLWxpbmstaG92ZXItZGFya2VuLXBlcmNlbnRhZ2U6IDE1JSAhZGVmYXVsdDtcblxuLy8gUGFyYWdyYXBoc1xuLy9cbi8vIFN0eWxlIHAgZWxlbWVudC5cblxuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAgIDFyZW0gIWRlZmF1bHQ7XG5cblxuLy8gR3JpZCBicmVha3BvaW50c1xuLy9cbi8vIERlZmluZSB0aGUgbWluaW11bSBkaW1lbnNpb25zIGF0IHdoaWNoIHlvdXIgbGF5b3V0IHdpbGwgY2hhbmdlLFxuLy8gYWRhcHRpbmcgdG8gZGlmZmVyZW50IHNjcmVlbiBzaXplcywgZm9yIHVzZSBpbiBtZWRpYSBxdWVyaWVzLlxuXG4kZ3JpZC1icmVha3BvaW50czogKFxuICB4czogMCxcbiAgc206IDU3NnB4LFxuICBtZDogNzY4cHgsXG4gIGxnOiA5OTJweCxcbiAgeGw6IDEyMDBweFxuKSAhZGVmYXVsdDtcblxuQGluY2x1ZGUgX2Fzc2VydC1hc2NlbmRpbmcoJGdyaWQtYnJlYWtwb2ludHMsIFwiJGdyaWQtYnJlYWtwb2ludHNcIik7XG5AaW5jbHVkZSBfYXNzZXJ0LXN0YXJ0cy1hdC16ZXJvKCRncmlkLWJyZWFrcG9pbnRzLCBcIiRncmlkLWJyZWFrcG9pbnRzXCIpO1xuXG5cbi8vIEdyaWQgY29udGFpbmVyc1xuLy9cbi8vIERlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiBgLmNvbnRhaW5lcmAgZm9yIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXG5cbiRjb250YWluZXItbWF4LXdpZHRoczogKFxuICBzbTogNTQwcHgsXG4gIG1kOiA3MjBweCxcbiAgbGc6IDk2MHB4LFxuICB4bDogMTE0MHB4XG4pICFkZWZhdWx0O1xuXG5AaW5jbHVkZSBfYXNzZXJ0LWFzY2VuZGluZygkY29udGFpbmVyLW1heC13aWR0aHMsIFwiJGNvbnRhaW5lci1tYXgtd2lkdGhzXCIpO1xuXG5cbi8vIEdyaWQgY29sdW1uc1xuLy9cbi8vIFNldCB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgYW5kIHNwZWNpZnkgdGhlIHdpZHRoIG9mIHRoZSBndXR0ZXJzLlxuXG4kZ3JpZC1jb2x1bW5zOiAgICAgICAgICAgICAgICAxMiAhZGVmYXVsdDtcbiRncmlkLWd1dHRlci13aWR0aDogICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG5cblxuLy8gQ29tcG9uZW50c1xuLy9cbi8vIERlZmluZSBjb21tb24gcGFkZGluZyBhbmQgYm9yZGVyIHJhZGl1cyBzaXplcyBhbmQgbW9yZS5cblxuJGxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuXG4kYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG4kYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbiRib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgIC4zcmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtc206ICAgICAgICAgICAgLjJyZW0gIWRlZmF1bHQ7XG5cbiRyb3VuZGVkLXBpbGw6ICAgICAgICAgICAgICAgIDUwcmVtICFkZWZhdWx0O1xuXG4kYm94LXNoYWRvdy1zbTogICAgICAgICAgICAgICAwIC4xMjVyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgIDAgLjVyZW0gMXJlbSByZ2JhKCRibGFjaywgLjE1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93LWxnOiAgICAgICAgICAgICAgIDAgMXJlbSAzcmVtIHJnYmEoJGJsYWNrLCAuMTc1KSAhZGVmYXVsdDtcblxuJGNvbXBvbmVudC1hY3RpdmUtY29sb3I6ICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNvbXBvbmVudC1hY3RpdmUtYmc6ICAgICAgICAgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpICFkZWZhdWx0O1xuXG4kY2FyZXQtd2lkdGg6ICAgICAgICAgICAgICAgICAuM2VtICFkZWZhdWx0O1xuJGNhcmV0LXZlcnRpY2FsLWFsaWduOiAgICAgICAgJGNhcmV0LXdpZHRoICogLjg1ICFkZWZhdWx0O1xuJGNhcmV0LXNwYWNpbmc6ICAgICAgICAgICAgICAgJGNhcmV0LXdpZHRoICogLjg1ICFkZWZhdWx0O1xuXG4kdHJhbnNpdGlvbi1iYXNlOiAgICAgICAgICAgICBhbGwgLjJzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuJHRyYW5zaXRpb24tZmFkZTogICAgICAgICAgICAgb3BhY2l0eSAuMTVzIGxpbmVhciAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWNvbGxhcHNlOiAgICAgICAgIGhlaWdodCAuMzVzIGVhc2UgIWRlZmF1bHQ7XG5cbiRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpb3M6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpb3M6IGpvaW4oXG4gIChcbiAgICAoMjEgOSksXG4gICAgKDE2IDkpLFxuICAgICg0IDMpLFxuICAgICgxIDEpLFxuICApLFxuICAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW9zXG4pO1xuXG4vLyBUeXBvZ3JhcGh5XG4vL1xuLy8gRm9udCwgbGluZS1oZWlnaHQsIGFuZCBjb2xvciBmb3IgYm9keSB0ZXh0LCBoZWFkaW5ncywgYW5kIG1vcmUuXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlIHZhbHVlLWtleXdvcmQtY2FzZVxuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICAgICAgLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgXCJOb3RvIFNhbnNcIiwgc2Fucy1zZXJpZiwgXCJBcHBsZSBDb2xvciBFbW9qaVwiLCBcIlNlZ29lIFVJIEVtb2ppXCIsIFwiU2Vnb2UgVUkgU3ltYm9sXCIsIFwiTm90byBDb2xvciBFbW9qaVwiICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogICAgICAgU0ZNb25vLVJlZ3VsYXIsIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1iYXNlOiAgICAgICAgICAgICRmb250LWZhbWlseS1zYW5zLXNlcmlmICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWVuYWJsZSB2YWx1ZS1rZXl3b3JkLWNhc2VcblxuJGZvbnQtc2l6ZS1iYXNlOiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDsgLy8gQXNzdW1lcyB0aGUgYnJvd3NlciBkZWZhdWx0LCB0eXBpY2FsbHkgYDE2cHhgXG4kZm9udC1zaXplLWxnOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1zbTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogLjg3NSAhZGVmYXVsdDtcblxuJGZvbnQtd2VpZ2h0LWxpZ2h0ZXI6ICAgICAgICAgbGlnaHRlciAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1saWdodDogICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ub3JtYWw6ICAgICAgICAgIDQwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ib2xkOiAgICAgICAgICAgIDcwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ib2xkZXI6ICAgICAgICAgIGJvbGRlciAhZGVmYXVsdDtcblxuJGZvbnQtd2VpZ2h0LWJhc2U6ICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1iYXNlOiAgICAgICAgICAgIDEuNSAhZGVmYXVsdDtcblxuJGgxLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMi41ICFkZWZhdWx0O1xuJGgyLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMiAhZGVmYXVsdDtcbiRoMy1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNzUgIWRlZmF1bHQ7XG4kaDQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjUgIWRlZmF1bHQ7XG4kaDUtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuJGg2LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuXG4kaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTogICAgICAkc3BhY2VyIC8gMiAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LWZhbWlseTogICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC13ZWlnaHQ6ICAgICAgICA1MDAgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtbGluZS1oZWlnaHQ6ICAgICAgICAxLjIgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtY29sb3I6ICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kZGlzcGxheTEtc2l6ZTogICAgICAgICAgICAgICA2cmVtICFkZWZhdWx0O1xuJGRpc3BsYXkyLXNpemU6ICAgICAgICAgICAgICAgNS41cmVtICFkZWZhdWx0O1xuJGRpc3BsYXkzLXNpemU6ICAgICAgICAgICAgICAgNC41cmVtICFkZWZhdWx0O1xuJGRpc3BsYXk0LXNpemU6ICAgICAgICAgICAgICAgMy41cmVtICFkZWZhdWx0O1xuXG4kZGlzcGxheTEtd2VpZ2h0OiAgICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheTItd2VpZ2h0OiAgICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheTMtd2VpZ2h0OiAgICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheTQtd2VpZ2h0OiAgICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheS1saW5lLWhlaWdodDogICAgICAgICAkaGVhZGluZ3MtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG5cbiRsZWFkLWZvbnQtc2l6ZTogICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kbGVhZC1mb250LXdlaWdodDogICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG5cbiRzbWFsbC1mb250LXNpemU6ICAgICAgICAgICAgIDgwJSAhZGVmYXVsdDtcblxuJHRleHQtbXV0ZWQ6ICAgICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kYmxvY2txdW90ZS1zbWFsbC1jb2xvcjogICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1zbWFsbC1mb250LXNpemU6ICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtZm9udC1zaXplOiAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcblxuJGhyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcbiRoci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRtYXJrLXBhZGRpbmc6ICAgICAgICAgICAgICAgIC4yZW0gIWRlZmF1bHQ7XG5cbiRkdC1mb250LXdlaWdodDogICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4ka2JkLWJveC1zaGFkb3c6ICAgICAgICAgICAgICBpbnNldCAwIC0uMXJlbSAwIHJnYmEoJGJsYWNrLCAuMjUpICFkZWZhdWx0O1xuJG5lc3RlZC1rYmQtZm9udC13ZWlnaHQ6ICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbiRsaXN0LWlubGluZS1wYWRkaW5nOiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kbWFyay1iZzogICAgICAgICAgICAgICAgICAgICAjZmNmOGUzICFkZWZhdWx0O1xuXG4kaHItbWFyZ2luLXk6ICAgICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG5cbi8vIFRhYmxlc1xuLy9cbi8vIEN1c3RvbWl6ZXMgdGhlIGAudGFibGVgIGNvbXBvbmVudCB3aXRoIGJhc2ljIHZhbHVlcywgZWFjaCB1c2VkIGFjcm9zcyBhbGwgdGFibGUgdmFyaWF0aW9ucy5cblxuJHRhYmxlLWNlbGwtcGFkZGluZzogICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHRhYmxlLWNlbGwtcGFkZGluZy1zbTogICAgICAgLjNyZW0gIWRlZmF1bHQ7XG5cbiR0YWJsZS1jb2xvcjogICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWJnOiAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiR0YWJsZS1hY2NlbnQtYmc6ICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMDUpICFkZWZhdWx0O1xuJHRhYmxlLWhvdmVyLWNvbG9yOiAgICAgICAgICAgJHRhYmxlLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWhvdmVyLWJnOiAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJHRhYmxlLWFjdGl2ZS1iZzogICAgICAgICAgICAgJHRhYmxlLWhvdmVyLWJnICFkZWZhdWx0O1xuXG4kdGFibGUtYm9yZGVyLXdpZHRoOiAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHRhYmxlLWJvcmRlci1jb2xvcjogICAgICAgICAgJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJHRhYmxlLWhlYWQtYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJHRhYmxlLWhlYWQtY29sb3I6ICAgICAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuXG4kdGFibGUtZGFyay1jb2xvcjogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1iZzogICAgICAgICAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1hY2NlbnQtYmc6ICAgICAgICByZ2JhKCR3aGl0ZSwgLjA1KSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWhvdmVyLWNvbG9yOiAgICAgICR0YWJsZS1kYXJrLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstaG92ZXItYmc6ICAgICAgICAgcmdiYSgkd2hpdGUsIC4wNzUpICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstYm9yZGVyLWNvbG9yOiAgICAgbGlnaHRlbigkdGFibGUtZGFyay1iZywgNy41JSkgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1jb2xvcjogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbiR0YWJsZS1zdHJpcGVkLW9yZGVyOiAgICAgICAgIG9kZCAhZGVmYXVsdDtcblxuJHRhYmxlLWNhcHRpb24tY29sb3I6ICAgICAgICAgJHRleHQtbXV0ZWQgIWRlZmF1bHQ7XG5cbiR0YWJsZS1iZy1sZXZlbDogICAgICAgICAgICAgIC05ICFkZWZhdWx0O1xuJHRhYmxlLWJvcmRlci1sZXZlbDogICAgICAgICAgLTYgIWRlZmF1bHQ7XG5cblxuLy8gQnV0dG9ucyArIEZvcm1zXG4vL1xuLy8gU2hhcmVkIHZhcmlhYmxlcyB0aGF0IGFyZSByZWFzc2lnbmVkIHRvIGAkaW5wdXQtYCBhbmQgYCRidG4tYCBzcGVjaWZpYyB2YXJpYWJsZXMuXG5cbiRpbnB1dC1idG4tcGFkZGluZy15OiAgICAgICAgIC4zNzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteDogICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtZmFtaWx5OiAgICAgICBudWxsICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemU6ICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodDogICAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tZm9jdXMtd2lkdGg6ICAgICAgIC4ycmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb2N1cy1jb2xvcjogICAgICAgcmdiYSgkY29tcG9uZW50LWFjdGl2ZS1iZywgLjI1KSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdzogIDAgMCAwICRpbnB1dC1idG4tZm9jdXMtd2lkdGggJGlucHV0LWJ0bi1mb2N1cy1jb2xvciAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1wYWRkaW5nLXktc206ICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXgtc206ICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbTogICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbTogICAgJGxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteS1sZzogICAgICAuNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14LWxnOiAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZzogICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodC1sZzogICAgJGxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLWJvcmRlci13aWR0aDogICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG5cbi8vIEJ1dHRvbnNcbi8vXG4vLyBGb3IgZWFjaCBvZiBCb290c3RyYXAncyBidXR0b25zLCBkZWZpbmUgdGV4dCwgYmFja2dyb3VuZCwgYW5kIGJvcmRlciBjb2xvci5cblxuJGJ0bi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteDogICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRidG4tZm9udC1mYW1pbHk6ICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG5cbiRidG4tcGFkZGluZy15LXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXgtc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZS1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQtc206ICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRidG4tcGFkZGluZy15LWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZS1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRidG4tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kYnRuLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGJ0bi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgaW5zZXQgMCAxcHggMCByZ2JhKCR3aGl0ZSwgLjE1KSwgMCAxcHggMXB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRidG4tZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kYnRuLWRpc2FibGVkLW9wYWNpdHk6ICAgICAgICAuNjUgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1ib3gtc2hhZG93OiAgICAgICBpbnNldCAwIDNweCA1cHggcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuXG4kYnRuLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRidG4tYmxvY2stc3BhY2luZy15OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4vLyBBbGxvd3MgZm9yIGN1c3RvbWl6aW5nIGJ1dHRvbiByYWRpdXMgaW5kZXBlbmRlbnRseSBmcm9tIGdsb2JhbCBib3JkZXIgcmFkaXVzXG4kYnRuLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAgJGJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG5cbiRidG4tdHJhbnNpdGlvbjogICAgICAgICAgICAgIGNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuXG4vLyBGb3Jtc1xuXG4kbGFiZWwtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRpbnB1dC1mb250LWZhbWlseTogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1iYXNlICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXktc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXgtc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemUtc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRpbnB1dC1saW5lLWhlaWdodC1zbTogICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15LWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14LWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplLWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGlucHV0LWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRpbnB1dC1kaXNhYmxlZC1iZzogICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cbiRpbnB1dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGdyYXktNDAwICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGlucHV0LWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgIGluc2V0IDAgMXB4IDFweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcblxuJGlucHV0LWZvY3VzLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICBsaWdodGVuKCRjb21wb25lbnQtYWN0aXZlLWJnLCAyNSUpICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy13aWR0aDogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAgICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRpbnB1dC1wbGFpbnRleHQtY29sb3I6ICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodC1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICRpbnB1dC1ib3JkZXItd2lkdGggKiAyICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0LWlubmVyOiAgICAgICAgICAgICAgICAgICAgY2FsYygjeyRpbnB1dC1saW5lLWhlaWdodCAqIDFlbX0gKyAjeyRpbnB1dC1wYWRkaW5nLXkgKiAyfSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGY6ICAgICAgICAgICAgICAgY2FsYygjeyRpbnB1dC1saW5lLWhlaWdodCAqIC41ZW19ICsgI3skaW5wdXQtcGFkZGluZy15fSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXI6ICAgICAgICAgICAgY2FsYygjeyRpbnB1dC1saW5lLWhlaWdodCAqIC4yNWVtfSArICN7JGlucHV0LXBhZGRpbmcteSAvIDJ9KSAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgIGNhbGMoI3skaW5wdXQtbGluZS1oZWlnaHQgKiAxZW19ICsgI3skaW5wdXQtcGFkZGluZy15ICogMn0gKyAjeyRpbnB1dC1oZWlnaHQtYm9yZGVyfSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgICAgICAgICAgY2FsYygjeyRpbnB1dC1saW5lLWhlaWdodC1zbSAqIDFlbX0gKyAjeyRpbnB1dC1idG4tcGFkZGluZy15LXNtICogMn0gKyAjeyRpbnB1dC1oZWlnaHQtYm9yZGVyfSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgICAgICAgICAgY2FsYygjeyRpbnB1dC1saW5lLWhlaWdodC1sZyAqIDFlbX0gKyAjeyRpbnB1dC1idG4tcGFkZGluZy15LWxnICogMn0gKyAjeyRpbnB1dC1oZWlnaHQtYm9yZGVyfSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4kZm9ybS10ZXh0LW1hcmdpbi10b3A6ICAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbnB1dC1ndXR0ZXI6ICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi15OiAgICAgICAgICAgICAuM3JlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi14OiAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlubGluZS1tYXJnaW4teDogICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbmxpbmUtaW5wdXQtbWFyZ2luLXg6ICAgICAgLjMxMjVyZW0gIWRlZmF1bHQ7XG5cbiRmb3JtLWdyaWQtZ3V0dGVyLXdpZHRoOiAgICAgICAgICAgICAgICAxMHB4ICFkZWZhdWx0O1xuJGZvcm0tZ3JvdXAtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRpbnB1dC1ncm91cC1hZGRvbi1jb2xvcjogICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYmc6ICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjogICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRjdXN0b20tZm9ybXMtdHJhbnNpdGlvbjogICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1ndXR0ZXI6ICAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1zcGFjZXIteDogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU6ICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmc6ICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmctc2l6ZTogICAgICA1MCUgNTAlICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3gtc2hhZG93OiAgICRpbnB1dC1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItY29sb3I6ICRncmF5LTUwMCAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWRpc2FibGVkLWJnOiAgICAgICAgICAkaW5wdXQtZGlzYWJsZWQtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtbGFiZWwtZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvcjogICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJnOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmc6ICByZ2JhKHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSwgLjUpICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJveC1zaGFkb3c6ICAgbm9uZSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1ib3JkZXItY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1mb2N1cy1ib3gtc2hhZG93OiAgICAgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJvcmRlci1jb2xvcjogICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1jb2xvcjogICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgICAgICAgICAgIGxpZ2h0ZW4oJGNvbXBvbmVudC1hY3RpdmUtYmcsIDM1JSkgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1ib3gtc2hhZG93OiAgICBub25lICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXM6ICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaWNvbi1jaGVja2VkOiAgICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA4IDgnJTNlJTNjcGF0aCBmaWxsPScjeyRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvcn0nIGQ9J002LjU2NC43NWwtMy41OSAzLjYxMi0xLjUzOC0xLjU1TDAgNC4yNiAyLjk3NCA3LjI1IDggMi4xOTN6Jy8lM2UlM2Mvc3ZnJTNlXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYmc6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtY29sb3I6ICAgICAgICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWluZGV0ZXJtaW5hdGU6ICAgICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA0IDQnJTNlJTNjcGF0aCBzdHJva2U9JyN7JGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1jb2xvcn0nIGQ9J00wIDJoNCcvJTNlJTNjL3N2ZyUzZVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1ib3gtc2hhZG93OiAgIG5vbmUgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJvcmRlci1jb2xvcjogJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1czogICAgICAgICAgNTAlICFkZWZhdWx0O1xuJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItaWNvbi1jaGVja2VkOiAgICAgICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCclM2UlM2NjaXJjbGUgcj0nMycgZmlsbD0nI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3J9Jy8lM2UlM2Mvc3ZnJTNlXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc3dpdGNoLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgICAgICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSAqIDEuNzUgIWRlZmF1bHQ7XG4kY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1czogICAgICAgICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUgLyAyICFkZWZhdWx0O1xuJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLXNpemU6ICAgICAgICAgICAgICAgICAgY2FsYygjeyRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZX0gLSAjeyRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoICogNH0pICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXk6ICAgICAgICAgICAkaW5wdXQtcGFkZGluZy15ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14OiAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvbnQtZmFtaWx5OiAgICAgICAgICRpbnB1dC1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZTogICAgICAgICAgICRpbnB1dC1mb250LXNpemUgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1oZWlnaHQ6ICAgICAgICAgICAgICAkaW5wdXQtaGVpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmc6ICAgMXJlbSAhZGVmYXVsdDsgLy8gRXh0cmEgcGFkZGluZyB0byBhY2NvdW50IGZvciB0aGUgcHJlc2VuY2Ugb2YgdGhlIGJhY2tncm91bmQtaW1hZ2UgYmFzZWQgaW5kaWNhdG9yXG4kY3VzdG9tLXNlbGVjdC1mb250LXdlaWdodDogICAgICAgICAkaW5wdXQtZm9udC13ZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1saW5lLWhlaWdodDogICAgICAgICAkaW5wdXQtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1jb2xvcjogICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1jb2xvcjogICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1iZzogICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1iZzogICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1iZy1zaXplOiAgICAgICAgICAgICA4cHggMTBweCAhZGVmYXVsdDsgLy8gSW4gcGl4ZWxzIGJlY2F1c2UgaW1hZ2UgZGltZW5zaW9uc1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yOiAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yOiAgICAgICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA0IDUnJTNlJTNjcGF0aCBmaWxsPScjeyRjdXN0b20tc2VsZWN0LWluZGljYXRvci1jb2xvcn0nIGQ9J00yIDBMMCAyaDR6bTAgNUwwIDNoNHonLyUzZSUzYy9zdmclM2VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJhY2tncm91bmQ6ICAgICAgICAgICRjdXN0b20tc2VsZWN0LWluZGljYXRvciBuby1yZXBlYXQgcmlnaHQgJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14IGNlbnRlciAvICRjdXN0b20tc2VsZWN0LWJnLXNpemUgIWRlZmF1bHQ7IC8vIFVzZWQgc28gd2UgY2FuIGhhdmUgbXVsdGlwbGUgYmFja2dyb3VuZCBlbGVtZW50cyAoZS5nLiwgYXJyb3cgYW5kIGZlZWRiYWNrIGljb24pXG5cbiRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tcGFkZGluZy1yaWdodDogY2FsYygoMWVtICsgI3syICogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15fSkgKiAzIC8gNCArICN7JGN1c3RvbS1zZWxlY3QtcGFkZGluZy14ICsgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmd9KSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tcG9zaXRpb246ICAgICAgY2VudGVyIHJpZ2h0ICgkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggKyAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZykgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXNpemU6ICAgICAgICAgICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LWJvcmRlci13aWR0aDogICAgICAgICRpbnB1dC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1ib3JkZXItY29sb3I6ICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1ib3gtc2hhZG93OiAgICAgICAgICBpbnNldCAwIDFweCAycHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3I6ICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9jdXMtd2lkdGg6ICAgICAgICAgJGlucHV0LWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdzogICAgMCAwIDAgJGN1c3RvbS1zZWxlY3QtZm9jdXMtd2lkdGggJGlucHV0LWJ0bi1mb2N1cy1jb2xvciAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LXNtOiAgICAgICAgJGlucHV0LXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteC1zbTogICAgICAgICRpbnB1dC1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb250LXNpemUtc206ICAgICAgICAkaW5wdXQtZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LXNtOiAgICAgICAgICAgJGlucHV0LWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LWxnOiAgICAgICAgJGlucHV0LXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteC1sZzogICAgICAgICRpbnB1dC1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb250LXNpemUtbGc6ICAgICAgICAkaW5wdXQtZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LWxnOiAgICAgICAgICAgJGlucHV0LWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1yYW5nZS10cmFjay13aWR0aDogICAgICAgICAgMTAwJSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2staGVpZ2h0OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1jdXJzb3I6ICAgICAgICAgcG9pbnRlciAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2stYmc6ICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1czogIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWJveC1zaGFkb3c6ICAgICBpbnNldCAwIC4yNXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcblxuJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aDogICAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0OiAgICAgICAgICAgICAgICAgICRjdXN0b20tcmFuZ2UtdGh1bWItd2lkdGggIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJnOiAgICAgICAgICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyOiAgICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgMCAuMXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzogICAgICAgIDAgMCAwIDFweCAkYm9keS1iZywgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3ctd2lkdGg6ICAkaW5wdXQtZm9jdXMtd2lkdGggIWRlZmF1bHQ7IC8vIEZvciBmb2N1cyBib3ggc2hhZG93IGlzc3VlIGluIElFL0VkZ2VcbiRjdXN0b20tcmFuZ2UtdGh1bWItYWN0aXZlLWJnOiAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGNvbXBvbmVudC1hY3RpdmUtYmcsIDM1JSkgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnOiAgICAgICAgICAgICAkZ3JheS01MDAgIWRlZmF1bHQ7XG5cbiRjdXN0b20tZmlsZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICRpbnB1dC1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtaGVpZ2h0LWlubmVyOiAgICAgICAgICAkaW5wdXQtaGVpZ2h0LWlubmVyICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvY3VzLWJvcmRlci1jb2xvcjogICAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb2N1cy1ib3gtc2hhZG93OiAgICAgICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWRpc2FibGVkLWJnOiAgICAgICAgICAgJGlucHV0LWRpc2FibGVkLWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLWZpbGUtcGFkZGluZy15OiAgICAgICAgICAgICAkaW5wdXQtcGFkZGluZy15ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLXBhZGRpbmcteDogICAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1saW5lLWhlaWdodDogICAgICAgICAgICRpbnB1dC1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb250LWZhbWlseTogICAgICAgICAgICRpbnB1dC1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb250LXdlaWdodDogICAgICAgICAgICRpbnB1dC1mb250LXdlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1jb2xvcjogICAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1iZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3JkZXItd2lkdGg6ICAgICAgICAgICRpbnB1dC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGlucHV0LWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm94LXNoYWRvdzogICAgICAgICAgICAkaW5wdXQtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1idXR0b24tY29sb3I6ICAgICAgICAgICRjdXN0b20tZmlsZS1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1idXR0b24tYmc6ICAgICAgICAgICAgICRpbnB1dC1ncm91cC1hZGRvbi1iZyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS10ZXh0OiAoXG4gIGVuOiBcIkJyb3dzZVwiXG4pICFkZWZhdWx0O1xuXG5cbi8vIEZvcm0gdmFsaWRhdGlvblxuXG4kZm9ybS1mZWVkYmFjay1tYXJnaW4tdG9wOiAgICAgICAgICAkZm9ybS10ZXh0LW1hcmdpbi10b3AgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1mb250LXNpemU6ICAgICAgICAgICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3I6ICAgICAgICAgdGhlbWUtY29sb3IoXCJzdWNjZXNzXCIpICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvcjogICAgICAgdGhlbWUtY29sb3IoXCJkYW5nZXJcIikgIWRlZmF1bHQ7XG5cbiRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQtY29sb3I6ICAgICRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZDogICAgICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA4IDgnJTNlJTNjcGF0aCBmaWxsPScjeyRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQtY29sb3J9JyBkPSdNMi4zIDYuNzNMLjYgNC41M2MtLjQtMS4wNC40Ni0xLjQgMS4xLS44bDEuMSAxLjQgMy40LTMuOGMuNi0uNjMgMS42LS4yNyAxLjIuN2wtNCA0LjZjLS40My41LS44LjQtMS4xLjF6Jy8lM2UlM2Mvc3ZnJTNlXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3I6ICAkZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkOiAgICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyN7JGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yfScgdmlld0JveD0nLTIgLTIgNyA3JyUzZSUzY3BhdGggc3Ryb2tlPScjeyRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcn0nIGQ9J00wIDBsMyAzbTAtM0wwIDMnLyUzZSUzY2NpcmNsZSByPScuNScvJTNlJTNjY2lyY2xlIGN4PSczJyByPScuNScvJTNlJTNjY2lyY2xlIGN5PSczJyByPScuNScvJTNlJTNjY2lyY2xlIGN4PSczJyBjeT0nMycgcj0nLjUnLyUzZSUzYy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcblxuJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXM6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRmb3JtLXZhbGlkYXRpb24tc3RhdGVzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBcInZhbGlkXCI6IChcbiAgICAgIFwiY29sb3JcIjogJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IsXG4gICAgICBcImljb25cIjogJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZFxuICAgICksXG4gICAgXCJpbnZhbGlkXCI6IChcbiAgICAgIFwiY29sb3JcIjogJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvcixcbiAgICAgIFwiaWNvblwiOiAkZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWRcbiAgICApLFxuICApLFxuICAkZm9ybS12YWxpZGF0aW9uLXN0YXRlc1xuKTtcblxuLy8gWi1pbmRleCBtYXN0ZXIgbGlzdFxuLy9cbi8vIFdhcm5pbmc6IEF2b2lkIGN1c3RvbWl6aW5nIHRoZXNlIHZhbHVlcy4gVGhleSdyZSB1c2VkIGZvciBhIGJpcmQncyBleWUgdmlld1xuLy8gb2YgY29tcG9uZW50cyBkZXBlbmRlbnQgb24gdGhlIHotYXhpcyBhbmQgYXJlIGRlc2lnbmVkIHRvIGFsbCB3b3JrIHRvZ2V0aGVyLlxuXG4kemluZGV4LWRyb3Bkb3duOiAgICAgICAgICAgICAgICAgICAxMDAwICFkZWZhdWx0O1xuJHppbmRleC1zdGlja3k6ICAgICAgICAgICAgICAgICAgICAgMTAyMCAhZGVmYXVsdDtcbiR6aW5kZXgtZml4ZWQ6ICAgICAgICAgICAgICAgICAgICAgIDEwMzAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsLWJhY2tkcm9wOiAgICAgICAgICAgICAxMDQwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbDogICAgICAgICAgICAgICAgICAgICAgMTA1MCAhZGVmYXVsdDtcbiR6aW5kZXgtcG9wb3ZlcjogICAgICAgICAgICAgICAgICAgIDEwNjAgIWRlZmF1bHQ7XG4kemluZGV4LXRvb2x0aXA6ICAgICAgICAgICAgICAgICAgICAxMDcwICFkZWZhdWx0O1xuXG5cbi8vIE5hdnNcblxuJG5hdi1saW5rLXBhZGRpbmcteTogICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstcGFkZGluZy14OiAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG5hdi10YWJzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAkZ3JheS0yMDAgJGdyYXktMjAwICRuYXYtdGFicy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I6ICRncmF5LTMwMCAkZ3JheS0zMDAgJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbmF2LXBpbGxzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRuYXYtZGl2aWRlci1jb2xvcjogICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRuYXYtZGl2aWRlci1tYXJnaW4teTogICAgICAgICAgICAgICRzcGFjZXIgLyAyICFkZWZhdWx0O1xuXG5cbi8vIE5hdmJhclxuXG4kbmF2YmFyLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAkc3BhY2VyIC8gMiAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbmF2LWxpbmstcGFkZGluZy14OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZTogICAgICAgICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuLy8gQ29tcHV0ZSB0aGUgbmF2YmFyLWJyYW5kIHBhZGRpbmcteSBzbyB0aGUgbmF2YmFyLWJyYW5kIHdpbGwgaGF2ZSB0aGUgc2FtZSBoZWlnaHQgYXMgbmF2YmFyLXRleHQgYW5kIG5hdi1saW5rXG4kbmF2LWxpbmstaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSArICRuYXYtbGluay1wYWRkaW5nLXkgKiAyICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1oZWlnaHQ6ICAgICAgICAgICAgICAgJG5hdmJhci1icmFuZC1mb250LXNpemUgKiAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRuYXZiYXItYnJhbmQtcGFkZGluZy15OiAgICAgICAgICAgICgkbmF2LWxpbmstaGVpZ2h0IC0gJG5hdmJhci1icmFuZC1oZWlnaHQpIC8gMiAhZGVmYXVsdDtcblxuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteTogICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteDogICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLWZvbnQtc2l6ZTogICAgICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzOiAgICAgICRidG4tYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJG5hdmJhci1kYXJrLWNvbG9yOiAgICAgICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC41KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1ob3Zlci1jb2xvcjogICAgICAgICAgIHJnYmEoJHdoaXRlLCAuNzUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjogICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWRpc2FibGVkLWNvbG9yOiAgICAgICAgcmdiYSgkd2hpdGUsIC4yNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstdG9nZ2xlci1pY29uLWJnOiAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHZpZXdCb3g9JzAgMCAzMCAzMCcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzZSUzY3BhdGggc3Ryb2tlPScjeyRuYXZiYXItZGFyay1jb2xvcn0nIHN0cm9rZS13aWR0aD0nMicgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8lM2UlM2Mvc3ZnJTNlXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstdG9nZ2xlci1ib3JkZXItY29sb3I6ICByZ2JhKCR3aGl0ZSwgLjEpICFkZWZhdWx0O1xuXG4kbmF2YmFyLWxpZ2h0LWNvbG9yOiAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjUpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1ob3Zlci1jb2xvcjogICAgICAgICAgcmdiYSgkYmxhY2ssIC43KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yOiAgICAgICAgIHJnYmEoJGJsYWNrLCAuOSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWRpc2FibGVkLWNvbG9yOiAgICAgICByZ2JhKCRibGFjaywgLjMpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWljb24tYmc6ICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB2aWV3Qm94PScwIDAgMzAgMzAnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM2UlM2NwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWxpZ2h0LWNvbG9yfScgc3Ryb2tlLXdpZHRoPScyJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLyUzZSUzYy9zdmclM2VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtdG9nZ2xlci1ib3JkZXItY29sb3I6IHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbGlnaHQtYnJhbmQtY29sb3I6ICAgICAgICAgICAgICAgICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICAgJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYnJhbmQtY29sb3I6ICAgICAgICAgICAgICAgICAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgICAgJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcblxuXG4vLyBEcm9wZG93bnNcbi8vXG4vLyBEcm9wZG93biBtZW51IGNvbnRhaW5lciBhbmQgY29udGVudHMuXG5cbiRkcm9wZG93bi1taW4td2lkdGg6ICAgICAgICAgICAgICAgIDEwcmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLXBhZGRpbmcteTogICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tc3BhY2VyOiAgICAgICAgICAgICAgICAgICAuMTI1cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJGRyb3Bkb3duLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYmc6ICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjE1KSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci13aWR0aDogICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRkcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgIGNhbGMoI3skZHJvcGRvd24tYm9yZGVyLXJhZGl1c30gLSAjeyRkcm9wZG93bi1ib3JkZXItd2lkdGh9KSAhZGVmYXVsdDtcbiRkcm9wZG93bi1kaXZpZGVyLWJnOiAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1kaXZpZGVyLW1hcmdpbi15OiAgICAgICAgICRuYXYtZGl2aWRlci1tYXJnaW4teSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgIDAgLjVyZW0gMXJlbSByZ2JhKCRibGFjaywgLjE3NSkgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgIGRhcmtlbigkZ3JheS05MDAsIDUlKSAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXk6ICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXg6ICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuXG4vLyBQYWdpbmF0aW9uXG5cbiRwYWdpbmF0aW9uLXBhZGRpbmcteTogICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14OiAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LXNtOiAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LXNtOiAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXktbGc6ICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1saW5lLWhlaWdodDogICAgICAgICAgICAxLjI1ICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAkbGluay1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJnOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci13aWR0aDogICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItY29sb3I6ICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWZvY3VzLW91dGxpbmU6ICAgICAgICAgIDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICRsaW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yOiAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcjogICAgJHBhZ2luYXRpb24tYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjogICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1iZzogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cblxuLy8gSnVtYm90cm9uXG5cbiRqdW1ib3Ryb24tcGFkZGluZzogICAgICAgICAgICAgICAgIDJyZW0gIWRlZmF1bHQ7XG4kanVtYm90cm9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1iZzogICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG5cbi8vIENhcmRzXG5cbiRjYXJkLXNwYWNlci15OiAgICAgICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRjYXJkLXNwYWNlci14OiAgICAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG4kY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgICAgICBjYWxjKCN7JGNhcmQtYm9yZGVyLXJhZGl1c30gLSAjeyRjYXJkLWJvcmRlci13aWR0aH0pICFkZWZhdWx0O1xuJGNhcmQtY2FwLWJnOiAgICAgICAgICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4wMykgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtY29sb3I6ICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuJGNhcmQtaW1nLW92ZXJsYXktcGFkZGluZzogICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcblxuJGNhcmQtZ3JvdXAtbWFyZ2luOiAgICAgICAgICAgICAgICAgJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMiAhZGVmYXVsdDtcbiRjYXJkLWRlY2stbWFyZ2luOiAgICAgICAgICAgICAgICAgICRjYXJkLWdyb3VwLW1hcmdpbiAhZGVmYXVsdDtcblxuJGNhcmQtY29sdW1ucy1jb3VudDogICAgICAgICAgICAgICAgMyAhZGVmYXVsdDtcbiRjYXJkLWNvbHVtbnMtZ2FwOiAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1jb2x1bW5zLW1hcmdpbjogICAgICAgICAgICAgICAkY2FyZC1zcGFjZXIteSAhZGVmYXVsdDtcblxuXG4vLyBUb29sdGlwc1xuXG4kdG9vbHRpcC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJHRvb2x0aXAtbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgMjAwcHggIWRlZmF1bHQ7XG4kdG9vbHRpcC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kdG9vbHRpcC1iZzogICAgICAgICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kdG9vbHRpcC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiR0b29sdGlwLW9wYWNpdHk6ICAgICAgICAgICAgICAgICAgIC45ICFkZWZhdWx0O1xuJHRvb2x0aXAtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1tYXJnaW46ICAgICAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuXG4kdG9vbHRpcC1hcnJvdy13aWR0aDogICAgICAgICAgICAgICAuOHJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLWFycm93LWhlaWdodDogICAgICAgICAgICAgIC40cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgJHRvb2x0aXAtYmcgIWRlZmF1bHQ7XG5cbi8vIEZvcm0gdG9vbHRpcHMgbXVzdCBjb21lIGFmdGVyIHJlZ3VsYXIgdG9vbHRpcHNcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy15OiAgICAgJHRvb2x0aXAtcGFkZGluZy15ICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXg6ICAgICAkdG9vbHRpcC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWZvbnQtc2l6ZTogICAgICR0b29sdGlwLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtbGluZS1oZWlnaHQ6ICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLW9wYWNpdHk6ICAgICAgICR0b29sdGlwLW9wYWNpdHkgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWJvcmRlci1yYWRpdXM6ICR0b29sdGlwLWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cblxuLy8gUG9wb3ZlcnNcblxuJHBvcG92ZXItZm9udC1zaXplOiAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwb3BvdmVyLW1heC13aWR0aDogICAgICAgICAgICAgICAgIDI3NnB4ICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRwb3BvdmVyLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgIDAgLjI1cmVtIC41cmVtIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWhlYWRlci1iZzogICAgICAgICAgICAgICAgIGRhcmtlbigkcG9wb3Zlci1iZywgMyUpICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAgJGhlYWRpbmdzLWNvbG9yICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteTogICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItcGFkZGluZy14OiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWJvZHktY29sb3I6ICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJHBvcG92ZXItYm9keS1wYWRkaW5nLXk6ICAgICAgICAgICAgJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvZHktcGFkZGluZy14OiAgICAgICAgICAgICRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXggIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1hcnJvdy1oZWlnaHQ6ICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICRwb3BvdmVyLWJnICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjogICAgICAgICBmYWRlLWluKCRwb3BvdmVyLWJvcmRlci1jb2xvciwgLjA1KSAhZGVmYXVsdDtcblxuXG4vLyBUb2FzdHNcblxuJHRvYXN0LW1heC13aWR0aDogICAgICAgICAgICAgICAgICAgMzUwcHggIWRlZmF1bHQ7XG4kdG9hc3QtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAuODc1cmVtICFkZWZhdWx0O1xuJHRvYXN0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiR0b2FzdC1iYWNrZ3JvdW5kLWNvbG9yOiAgICAgICAgICAgIHJnYmEoJHdoaXRlLCAuODUpICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgMXB4ICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgwLCAwLCAwLCAuMSkgIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAwIC4yNXJlbSAuNzVyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcblxuJHRvYXN0LWhlYWRlci1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHRvYXN0LWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yOiAgICAgcmdiYSgkd2hpdGUsIC44NSkgIWRlZmF1bHQ7XG4kdG9hc3QtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgICAgICByZ2JhKDAsIDAsIDAsIC4wNSkgIWRlZmF1bHQ7XG5cblxuLy8gQmFkZ2VzXG5cbiRiYWRnZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgIDc1JSAhZGVmYXVsdDtcbiRiYWRnZS1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGJhZGdlLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjI1ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAuNGVtICFkZWZhdWx0O1xuJGJhZGdlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbiRiYWRnZS10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgICRidG4tdHJhbnNpdGlvbiAhZGVmYXVsdDtcbiRiYWRnZS1mb2N1cy13aWR0aDogICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG5cbiRiYWRnZS1waWxsLXBhZGRpbmcteDogICAgICAgICAgICAgIC42ZW0gIWRlZmF1bHQ7XG4vLyBVc2UgYSBoaWdoZXIgdGhhbiBub3JtYWwgdmFsdWUgdG8gZW5zdXJlIGNvbXBsZXRlbHkgcm91bmRlZCBlZGdlcyB3aGVuXG4vLyBjdXN0b21pemluZyBwYWRkaW5nIG9yIGZvbnQtc2l6ZSBvbiBsYWJlbHMuXG4kYmFkZ2UtcGlsbC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAxMHJlbSAhZGVmYXVsdDtcblxuXG4vLyBNb2RhbHNcblxuLy8gUGFkZGluZyBhcHBsaWVkIHRvIHRoZSBtb2RhbCBib2R5XG4kbW9kYWwtaW5uZXItcGFkZGluZzogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuXG4kbW9kYWwtZGlhbG9nLW1hcmdpbjogICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXA6ICAgICAgIDEuNzVyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC10aXRsZS1saW5lLWhlaWdodDogICAgICAgICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4kbW9kYWwtY29udGVudC1jb2xvcjogICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYmc6ICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yOiAgICAgICAgcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aDogICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzOiAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHM6ICAgICAgIDAgLjI1cmVtIC41cmVtIHJnYmEoJGJsYWNrLCAuNSkgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXNtLXVwOiAgICAwIC41cmVtIDFyZW0gcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcblxuJG1vZGFsLWJhY2tkcm9wLWJnOiAgICAgICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk6ICAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgICAgICAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I6ICAgICAgICAgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aDogICAgICAgICAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aDogICAgICAgICAkbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZy15OiAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmcteDogICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nOiAgICAgICAgICAgICAgJG1vZGFsLWhlYWRlci1wYWRkaW5nLXkgJG1vZGFsLWhlYWRlci1wYWRkaW5nLXggIWRlZmF1bHQ7IC8vIEtlZXAgdGhpcyBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHlcblxuJG1vZGFsLXhsOiAgICAgICAgICAgICAgICAgICAgICAgICAgMTE0MHB4ICFkZWZhdWx0O1xuJG1vZGFsLWxnOiAgICAgICAgICAgICAgICAgICAgICAgICAgODAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbWQ6ICAgICAgICAgICAgICAgICAgICAgICAgICA1MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1zbTogICAgICAgICAgICAgICAgICAgICAgICAgIDMwMHB4ICFkZWZhdWx0O1xuXG4kbW9kYWwtZmFkZS10cmFuc2Zvcm06ICAgICAgICAgICAgICB0cmFuc2xhdGUoMCwgLTUwcHgpICFkZWZhdWx0O1xuJG1vZGFsLXNob3ctdHJhbnNmb3JtOiAgICAgICAgICAgICAgbm9uZSAhZGVmYXVsdDtcbiRtb2RhbC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAuM3MgZWFzZS1vdXQgIWRlZmF1bHQ7XG5cblxuLy8gQWxlcnRzXG4vL1xuLy8gRGVmaW5lIGFsZXJ0IGNvbG9ycywgYm9yZGVyIHJhZGl1cywgYW5kIHBhZGRpbmcuXG5cbiRhbGVydC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRhbGVydC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kYWxlcnQtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kYWxlcnQtbGluay1mb250LXdlaWdodDogICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRhbGVydC1iZy1sZXZlbDogICAgICAgICAgICAgICAgICAgIC0xMCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItbGV2ZWw6ICAgICAgICAgICAgICAgIC05ICFkZWZhdWx0O1xuJGFsZXJ0LWNvbG9yLWxldmVsOiAgICAgICAgICAgICAgICAgNiAhZGVmYXVsdDtcblxuXG4vLyBQcm9ncmVzcyBiYXJzXG5cbiRwcm9ncmVzcy1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAuNzUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmc6ICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRwcm9ncmVzcy1ib3gtc2hhZG93OiAgICAgICAgICAgICAgIGluc2V0IDAgLjFyZW0gLjFyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItY29sb3I6ICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItYmc6ICAgICAgICAgICAgICAgICAgIHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItYW5pbWF0aW9uLXRpbWluZzogICAgIDFzIGxpbmVhciBpbmZpbml0ZSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItdHJhbnNpdGlvbjogICAgICAgICAgIHdpZHRoIC42cyBlYXNlICFkZWZhdWx0O1xuXG5cbi8vIExpc3QgZ3JvdXBcblxuJGxpc3QtZ3JvdXAtY29sb3I6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJnOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci1jb2xvcjogICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMTI1KSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDogICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXk6ICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXg6ICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtaG92ZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtYmc6ICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAgICRsaXN0LWdyb3VwLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I6ICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc6ICAgICAgICAgICAgJGxpc3QtZ3JvdXAtYmcgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvcjogICAgICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcjogICAgICRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvciAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcjogICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWJnOiAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cblxuLy8gSW1hZ2UgdGh1bWJuYWlsc1xuXG4kdGh1bWJuYWlsLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJnOiAgICAgICAgICAgICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci1jb2xvcjogICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm94LXNoYWRvdzogICAgICAgICAgICAgIDAgMXB4IDJweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG5cblxuLy8gRmlndXJlc1xuXG4kZmlndXJlLWNhcHRpb24tZm9udC1zaXplOiAgICAgICAgICA5MCUgIWRlZmF1bHQ7XG4kZmlndXJlLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cblxuLy8gQnJlYWRjcnVtYnNcblxuJGJyZWFkY3J1bWItcGFkZGluZy15OiAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItcGFkZGluZy14OiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWl0ZW0tcGFkZGluZzogICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1tYXJnaW4tYm90dG9tOiAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1iZzogICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yOiAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyOiAgICAgICAgICAgICAgICBxdW90ZShcIi9cIikgIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG5cbi8vIENhcm91c2VsXG5cbiRjYXJvdXNlbC1jb250cm9sLWNvbG9yOiAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC13aWR0aDogICAgICAgICAgICAgMTUlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTogICAgICAgICAgIC41ICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtaG92ZXItb3BhY2l0eTogICAgIC45ICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtdHJhbnNpdGlvbjogICAgICAgIG9wYWNpdHkgLjE1cyBlYXNlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXdpZHRoOiAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItaGVpZ2h0OiAgICAgICAgICAzcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWhpdC1hcmVhLWhlaWdodDogMTBweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyOiAgICAgICAgICAzcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZzogICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci10cmFuc2l0aW9uOiAgICAgIG9wYWNpdHkgLjZzIGVhc2UgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoOiAgICAgICAgICAgICA3MCUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoOiAgICAgICAgMjBweCAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLWJnOiAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPScjeyRjYXJvdXNlbC1jb250cm9sLWNvbG9yfScgdmlld0JveD0nMCAwIDggOCclM2UlM2NwYXRoIGQ9J001LjI1IDBsLTQgNCA0IDQgMS41LTEuNS0yLjUtMi41IDIuNS0yLjUtMS41LTEuNXonLyUzZSUzYy9zdmclM2VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbi1iZzogICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nIHZpZXdCb3g9JzAgMCA4IDgnJTNlJTNjcGF0aCBkPSdNMi43NSAwbC0xLjUgMS41IDIuNSAyLjUtMi41IDIuNSAxLjUgMS41IDQtNC00LTR6Jy8lM2UlM2Mvc3ZnJTNlXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uOiAgICAgICAuNnMgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgdHJhbnNmb3JtICRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uIGVhc2UtaW4tb3V0ICFkZWZhdWx0OyAvLyBEZWZpbmUgdHJhbnNmb3JtIHRyYW5zaXRpb24gZmlyc3QgaWYgdXNpbmcgbXVsdGlwbGUgdHJhbnNpdGlvbnMgKGUuZy4sIGB0cmFuc2Zvcm0gMnMgZWFzZSwgb3BhY2l0eSAuNXMgZWFzZS1vdXRgKVxuXG5cbi8vIFNwaW5uZXJzXG5cbiRzcGlubmVyLXdpZHRoOiAgICAgICAgIDJyZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1oZWlnaHQ6ICAgICAgICAkc3Bpbm5lci13aWR0aCAhZGVmYXVsdDtcbiRzcGlubmVyLWJvcmRlci13aWR0aDogIC4yNWVtICFkZWZhdWx0O1xuXG4kc3Bpbm5lci13aWR0aC1zbTogICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1oZWlnaHQtc206ICAgICAgICRzcGlubmVyLXdpZHRoLXNtICFkZWZhdWx0O1xuJHNwaW5uZXItYm9yZGVyLXdpZHRoLXNtOiAuMmVtICFkZWZhdWx0O1xuXG5cbi8vIENsb3NlXG5cbiRjbG9zZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNSAhZGVmYXVsdDtcbiRjbG9zZS1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGNsb3NlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJGNsb3NlLXRleHQtc2hhZG93OiAgICAgICAgICAgICAgICAgMCAxcHggMCAkd2hpdGUgIWRlZmF1bHQ7XG5cblxuLy8gQ29kZVxuXG4kY29kZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICA4Ny41JSAhZGVmYXVsdDtcbiRjb2RlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICRwaW5rICFkZWZhdWx0O1xuXG4ka2JkLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAuMnJlbSAhZGVmYXVsdDtcbiRrYmQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAgIC40cmVtICFkZWZhdWx0O1xuJGtiZC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgJGNvZGUtZm9udC1zaXplICFkZWZhdWx0O1xuJGtiZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGtiZC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuXG4kcHJlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4kcHJlLXNjcm9sbGFibGUtbWF4LWhlaWdodDogICAgICAgICAzNDBweCAhZGVmYXVsdDtcblxuXG4vLyBVdGlsaXRpZXNcblxuJGRpc3BsYXlzOiBub25lLCBpbmxpbmUsIGlubGluZS1ibG9jaywgYmxvY2ssIHRhYmxlLCB0YWJsZS1yb3csIHRhYmxlLWNlbGwsIGZsZXgsIGlubGluZS1mbGV4ICFkZWZhdWx0O1xuJG92ZXJmbG93czogYXV0bywgaGlkZGVuICFkZWZhdWx0O1xuJHBvc2l0aW9uczogc3RhdGljLCByZWxhdGl2ZSwgYWJzb2x1dGUsIGZpeGVkLCBzdGlja3kgIWRlZmF1bHQ7XG5cblxuLy8gUHJpbnRpbmdcblxuJHByaW50LXBhZ2Utc2l6ZTogICAgICAgICAgICAgICAgICAgYTMgIWRlZmF1bHQ7XG4kcHJpbnQtYm9keS1taW4td2lkdGg6ICAgICAgICAgICAgICBtYXAtZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCBcImxnXCIpICFkZWZhdWx0O1xuIiwiLy8gVG9nZ2xlc1xuLy9cbi8vIFVzZWQgaW4gY29uanVuY3Rpb24gd2l0aCBnbG9iYWwgdmFyaWFibGVzIHRvIGVuYWJsZSBjZXJ0YWluIHRoZW1lIGZlYXR1cmVzLlxuXG4vLyBWZW5kb3JcbkBpbXBvcnQgXCJ2ZW5kb3IvcmZzXCI7XG5cbi8vIERlcHJlY2F0ZVxuQGltcG9ydCBcIm1peGlucy9kZXByZWNhdGVcIjtcblxuLy8gVXRpbGl0aWVzXG5AaW1wb3J0IFwibWl4aW5zL2JyZWFrcG9pbnRzXCI7XG5AaW1wb3J0IFwibWl4aW5zL2hvdmVyXCI7XG5AaW1wb3J0IFwibWl4aW5zL2ltYWdlXCI7XG5AaW1wb3J0IFwibWl4aW5zL2JhZGdlXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Jlc2l6ZVwiO1xuQGltcG9ydCBcIm1peGlucy9zY3JlZW4tcmVhZGVyXCI7XG5AaW1wb3J0IFwibWl4aW5zL3NpemVcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcmVzZXQtdGV4dFwiO1xuQGltcG9ydCBcIm1peGlucy90ZXh0LWVtcGhhc2lzXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RleHQtaGlkZVwiO1xuQGltcG9ydCBcIm1peGlucy90ZXh0LXRydW5jYXRlXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Zpc2liaWxpdHlcIjtcblxuLy8gLy8gQ29tcG9uZW50c1xuQGltcG9ydCBcIm1peGlucy9hbGVydFwiO1xuQGltcG9ydCBcIm1peGlucy9idXR0b25zXCI7XG5AaW1wb3J0IFwibWl4aW5zL2NhcmV0XCI7XG5AaW1wb3J0IFwibWl4aW5zL3BhZ2luYXRpb25cIjtcbkBpbXBvcnQgXCJtaXhpbnMvbGlzdHNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvbGlzdC1ncm91cFwiO1xuQGltcG9ydCBcIm1peGlucy9uYXYtZGl2aWRlclwiO1xuQGltcG9ydCBcIm1peGlucy9mb3Jtc1wiO1xuQGltcG9ydCBcIm1peGlucy90YWJsZS1yb3dcIjtcblxuLy8gLy8gU2tpbnNcbkBpbXBvcnQgXCJtaXhpbnMvYmFja2dyb3VuZC12YXJpYW50XCI7XG5AaW1wb3J0IFwibWl4aW5zL2JvcmRlci1yYWRpdXNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvYm94LXNoYWRvd1wiO1xuQGltcG9ydCBcIm1peGlucy9ncmFkaWVudHNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdHJhbnNpdGlvblwiO1xuXG4vLyAvLyBMYXlvdXRcbkBpbXBvcnQgXCJtaXhpbnMvY2xlYXJmaXhcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZ3JpZC1mcmFtZXdvcmtcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZ3JpZFwiO1xuQGltcG9ydCBcIm1peGlucy9mbG9hdFwiO1xuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktYmxhY2tsaXN0LCBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG5cbi8vIFNDU1MgUkZTIG1peGluXG4vL1xuLy8gQXV0b21hdGVkIGZvbnQtcmVzaXppbmdcbi8vXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvcmZzXG5cbi8vIENvbmZpZ3VyYXRpb25cblxuLy8gQmFzZSBmb250IHNpemVcbiRyZnMtYmFzZS1mb250LXNpemU6IDEuMjVyZW0gIWRlZmF1bHQ7XG4kcmZzLWZvbnQtc2l6ZS11bml0OiByZW0gIWRlZmF1bHQ7XG5cbi8vIEJyZWFrcG9pbnQgYXQgd2hlcmUgZm9udC1zaXplIHN0YXJ0cyBkZWNyZWFzaW5nIGlmIHNjcmVlbiB3aWR0aCBpcyBzbWFsbGVyXG4kcmZzLWJyZWFrcG9pbnQ6IDEyMDBweCAhZGVmYXVsdDtcbiRyZnMtYnJlYWtwb2ludC11bml0OiBweCAhZGVmYXVsdDtcblxuLy8gUmVzaXplIGZvbnQtc2l6ZSBiYXNlZCBvbiBzY3JlZW4gaGVpZ2h0IGFuZCB3aWR0aFxuJHJmcy10d28tZGltZW5zaW9uYWw6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBGYWN0b3Igb2YgZGVjcmVhc2VcbiRyZnMtZmFjdG9yOiAxMCAhZGVmYXVsdDtcblxuQGlmIHR5cGUtb2YoJHJmcy1mYWN0b3IpICE9IFwibnVtYmVyXCIgb3IgJHJmcy1mYWN0b3IgPD0gMSB7XG4gIEBlcnJvciBcImAjeyRyZnMtZmFjdG9yfWAgaXMgbm90IGEgdmFsaWQgICRyZnMtZmFjdG9yLCBpdCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiAxLlwiO1xufVxuXG4vLyBHZW5lcmF0ZSBlbmFibGUgb3IgZGlzYWJsZSBjbGFzc2VzLiBQb3NzaWJpbGl0aWVzOiBmYWxzZSwgXCJlbmFibGVcIiBvciBcImRpc2FibGVcIlxuJHJmcy1jbGFzczogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIDEgcmVtID0gJHJmcy1yZW0tdmFsdWUgcHhcbiRyZnMtcmVtLXZhbHVlOiAxNiAhZGVmYXVsdDtcblxuLy8gU2FmYXJpIGlmcmFtZSByZXNpemUgYnVnOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9yZnMvaXNzdWVzLzE0XG4kcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXg6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBEaXNhYmxlIFJGUyBieSBzZXR0aW5nICRlbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemVzIHRvIGZhbHNlXG4kZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8gQ2FjaGUgJHJmcy1iYXNlLWZvbnQtc2l6ZSB1bml0XG4kcmZzLWJhc2UtZm9udC1zaXplLXVuaXQ6IHVuaXQoJHJmcy1iYXNlLWZvbnQtc2l6ZSk7XG5cbi8vIFJlbW92ZSBweC11bml0IGZyb20gJHJmcy1iYXNlLWZvbnQtc2l6ZSBmb3IgY2FsY3VsYXRpb25zXG5AaWYgJHJmcy1iYXNlLWZvbnQtc2l6ZS11bml0ID09IFwicHhcIiB7XG4gICRyZnMtYmFzZS1mb250LXNpemU6ICRyZnMtYmFzZS1mb250LXNpemUgLyAoJHJmcy1iYXNlLWZvbnQtc2l6ZSAqIDAgKyAxKTtcbn1cbkBlbHNlIGlmICRyZnMtYmFzZS1mb250LXNpemUtdW5pdCA9PSBcInJlbVwiIHtcbiAgJHJmcy1iYXNlLWZvbnQtc2l6ZTogJHJmcy1iYXNlLWZvbnQtc2l6ZSAvICgkcmZzLWJhc2UtZm9udC1zaXplICogMCArIDEgLyAkcmZzLXJlbS12YWx1ZSk7XG59XG5cbi8vIENhY2hlICRyZnMtYnJlYWtwb2ludCB1bml0IHRvIHByZXZlbnQgbXVsdGlwbGUgY2FsbHNcbiRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlOiB1bml0KCRyZnMtYnJlYWtwb2ludCk7XG5cbi8vIFJlbW92ZSB1bml0IGZyb20gJHJmcy1icmVha3BvaW50IGZvciBjYWxjdWxhdGlvbnNcbkBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBcInB4XCIge1xuICAkcmZzLWJyZWFrcG9pbnQ6ICRyZnMtYnJlYWtwb2ludCAvICgkcmZzLWJyZWFrcG9pbnQgKiAwICsgMSk7XG59XG5AZWxzZSBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBcInJlbVwiIG9yICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFwiZW1cIiB7XG4gICRyZnMtYnJlYWtwb2ludDogJHJmcy1icmVha3BvaW50IC8gKCRyZnMtYnJlYWtwb2ludCAqIDAgKyAxIC8gJHJmcy1yZW0tdmFsdWUpO1xufVxuXG4vLyBSZXNwb25zaXZlIGZvbnQtc2l6ZSBtaXhpblxuQG1peGluIHJmcygkZnMsICRpbXBvcnRhbnQ6IGZhbHNlKSB7XG4gIC8vIENhY2hlICRmcyB1bml0XG4gICRmcy11bml0OiBpZih0eXBlLW9mKCRmcykgPT0gXCJudW1iZXJcIiwgdW5pdCgkZnMpLCBmYWxzZSk7XG5cbiAgLy8gQWRkICFpbXBvcnRhbnQgc3VmZml4IGlmIG5lZWRlZFxuICAkcmZzLXN1ZmZpeDogaWYoJGltcG9ydGFudCwgXCIgIWltcG9ydGFudFwiLCBcIlwiKTtcblxuICAvLyBJZiAkZnMgaXNuJ3QgYSBudW1iZXIgKGxpa2UgaW5oZXJpdCkgb3IgJGZzIGhhcyBhIHVuaXQgKG5vdCBweCBvciByZW0sIGxpa2UgMS41ZW0pIG9yICQgaXMgMCwganVzdCBwcmludCB0aGUgdmFsdWVcbiAgQGlmIG5vdCAkZnMtdW5pdCBvciAkZnMtdW5pdCAhPSBcIlwiIGFuZCAkZnMtdW5pdCAhPSBcInB4XCIgYW5kICRmcy11bml0ICE9IFwicmVtXCIgb3IgJGZzID09IDAge1xuICAgIGZvbnQtc2l6ZTogI3skZnN9I3skcmZzLXN1ZmZpeH07XG4gIH1cbiAgQGVsc2Uge1xuICAgIC8vIFZhcmlhYmxlcyBmb3Igc3RvcmluZyBzdGF0aWMgYW5kIGZsdWlkIHJlc2NhbGluZ1xuICAgICRyZnMtc3RhdGljOiBudWxsO1xuICAgICRyZnMtZmx1aWQ6IG51bGw7XG5cbiAgICAvLyBSZW1vdmUgcHgtdW5pdCBmcm9tICRmcyBmb3IgY2FsY3VsYXRpb25zXG4gICAgQGlmICRmcy11bml0ID09IFwicHhcIiB7XG4gICAgICAkZnM6ICRmcyAvICgkZnMgKiAwICsgMSk7XG4gICAgfVxuICAgIEBlbHNlIGlmICRmcy11bml0ID09IFwicmVtXCIge1xuICAgICAgJGZzOiAkZnMgLyAoJGZzICogMCArIDEgLyAkcmZzLXJlbS12YWx1ZSk7XG4gICAgfVxuXG4gICAgLy8gU2V0IGRlZmF1bHQgZm9udC1zaXplXG4gICAgQGlmICRyZnMtZm9udC1zaXplLXVuaXQgPT0gcmVtIHtcbiAgICAgICRyZnMtc3RhdGljOiAjeyRmcyAvICRyZnMtcmVtLXZhbHVlfXJlbSN7JHJmcy1zdWZmaXh9O1xuICAgIH1cbiAgICBAZWxzZSBpZiAkcmZzLWZvbnQtc2l6ZS11bml0ID09IHB4IHtcbiAgICAgICRyZnMtc3RhdGljOiAjeyRmc31weCN7JHJmcy1zdWZmaXh9O1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAZXJyb3IgXCJgI3skcmZzLWZvbnQtc2l6ZS11bml0fWAgaXMgbm90IGEgdmFsaWQgdW5pdCBmb3IgJHJmcy1mb250LXNpemUtdW5pdC4gVXNlIGBweGAgb3IgYHJlbWAuXCI7XG4gICAgfVxuXG4gICAgLy8gT25seSBhZGQgbWVkaWEgcXVlcnkgaWYgZm9udC1zaXplIGlzIGJpZ2dlciBhcyB0aGUgbWluaW11bSBmb250LXNpemVcbiAgICAvLyBJZiAkcmZzLWZhY3RvciA9PSAxLCBubyByZXNjYWxpbmcgd2lsbCB0YWtlIHBsYWNlXG4gICAgQGlmICRmcyA+ICRyZnMtYmFzZS1mb250LXNpemUgYW5kICRlbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemVzIHtcbiAgICAgICRtaW4td2lkdGg6IG51bGw7XG4gICAgICAkdmFyaWFibGUtdW5pdDogbnVsbDtcblxuICAgICAgLy8gQ2FsY3VsYXRlIG1pbmltdW0gZm9udC1zaXplIGZvciBnaXZlbiBmb250LXNpemVcbiAgICAgICRmcy1taW46ICRyZnMtYmFzZS1mb250LXNpemUgKyAoJGZzIC0gJHJmcy1iYXNlLWZvbnQtc2l6ZSkgLyAkcmZzLWZhY3RvcjtcblxuICAgICAgLy8gQ2FsY3VsYXRlIGRpZmZlcmVuY2UgYmV0d2VlbiBnaXZlbiBmb250LXNpemUgYW5kIG1pbmltdW0gZm9udC1zaXplIGZvciBnaXZlbiBmb250LXNpemVcbiAgICAgICRmcy1kaWZmOiAkZnMgLSAkZnMtbWluO1xuXG4gICAgICAvLyBCYXNlIGZvbnQtc2l6ZSBmb3JtYXR0aW5nXG4gICAgICAvLyBObyBuZWVkIHRvIGNoZWNrIGlmIHRoZSB1bml0IGlzIHZhbGlkLCBiZWNhdXNlIHdlIGRpZCB0aGF0IGJlZm9yZVxuICAgICAgJG1pbi13aWR0aDogaWYoJHJmcy1mb250LXNpemUtdW5pdCA9PSByZW0sICN7JGZzLW1pbiAvICRyZnMtcmVtLXZhbHVlfXJlbSwgI3skZnMtbWlufXB4KTtcblxuICAgICAgLy8gSWYgdHdvLWRpbWVuc2lvbmFsLCB1c2Ugc21hbGxlc3Qgb2Ygc2NyZWVuIHdpZHRoIGFuZCBoZWlnaHRcbiAgICAgICR2YXJpYWJsZS11bml0OiBpZigkcmZzLXR3by1kaW1lbnNpb25hbCwgdm1pbiwgdncpO1xuXG4gICAgICAvLyBDYWxjdWxhdGUgdGhlIHZhcmlhYmxlIHdpZHRoIGJldHdlZW4gMCBhbmQgJHJmcy1icmVha3BvaW50XG4gICAgICAkdmFyaWFibGUtd2lkdGg6ICN7JGZzLWRpZmYgKiAxMDAgLyAkcmZzLWJyZWFrcG9pbnR9I3skdmFyaWFibGUtdW5pdH07XG5cbiAgICAgIC8vIFNldCB0aGUgY2FsY3VsYXRlZCBmb250LXNpemUuXG4gICAgICAkcmZzLWZsdWlkOiBjYWxjKCN7JG1pbi13aWR0aH0gKyAjeyR2YXJpYWJsZS13aWR0aH0pICN7JHJmcy1zdWZmaXh9O1xuICAgIH1cblxuICAgIC8vIFJlbmRlcmluZ1xuICAgIEBpZiAkcmZzLWZsdWlkID09IG51bGwge1xuICAgICAgLy8gT25seSByZW5kZXIgc3RhdGljIGZvbnQtc2l6ZSBpZiBubyBmbHVpZCBmb250LXNpemUgaXMgYXZhaWxhYmxlXG4gICAgICBmb250LXNpemU6ICRyZnMtc3RhdGljO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkbXEtdmFsdWU6IG51bGw7XG5cbiAgICAgIC8vIFJGUyBicmVha3BvaW50IGZvcm1hdHRpbmdcbiAgICAgIEBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdCA9PSBlbSBvciAkcmZzLWJyZWFrcG9pbnQtdW5pdCA9PSByZW0ge1xuICAgICAgICAkbXEtdmFsdWU6ICN7JHJmcy1icmVha3BvaW50IC8gJHJmcy1yZW0tdmFsdWV9I3skcmZzLWJyZWFrcG9pbnQtdW5pdH07XG4gICAgICB9XG4gICAgICBAZWxzZSBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdCA9PSBweCB7XG4gICAgICAgICRtcS12YWx1ZTogI3skcmZzLWJyZWFrcG9pbnR9cHg7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIEBlcnJvciBcImAjeyRyZnMtYnJlYWtwb2ludC11bml0fWAgaXMgbm90IGEgdmFsaWQgdW5pdCBmb3IgJHJmcy1icmVha3BvaW50LXVuaXQuIFVzZSBgcHhgLCBgZW1gIG9yIGByZW1gLlwiO1xuICAgICAgfVxuXG4gICAgICBAaWYgJHJmcy1jbGFzcyA9PSBcImRpc2FibGVcIiB7XG4gICAgICAgIC8vIEFkZGluZyBhbiBleHRyYSBjbGFzcyBpbmNyZWFzZXMgc3BlY2lmaWNpdHksXG4gICAgICAgIC8vIHdoaWNoIHByZXZlbnRzIHRoZSBtZWRpYSBxdWVyeSB0byBvdmVycmlkZSB0aGUgZm9udCBzaXplXG4gICAgICAgICYsXG4gICAgICAgIC5kaXNhYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplICYsXG4gICAgICAgICYuZGlzYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAkcmZzLXN0YXRpYztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBmb250LXNpemU6ICRyZnMtc3RhdGljO1xuICAgICAgfVxuXG4gICAgICBAaWYgJHJmcy10d28tZGltZW5zaW9uYWwge1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogI3skbXEtdmFsdWV9KSwgKG1heC1oZWlnaHQ6ICN7JG1xLXZhbHVlfSkge1xuICAgICAgICAgIEBpZiAkcmZzLWNsYXNzID09IFwiZW5hYmxlXCIge1xuICAgICAgICAgICAgLmVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSAmLFxuICAgICAgICAgICAgJi5lbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemUge1xuICAgICAgICAgICAgICBmb250LXNpemU6ICRyZnMtZmx1aWQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJHJmcy1mbHVpZDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaWYgJHJmcy1zYWZhcmktaWZyYW1lLXJlc2l6ZS1idWctZml4IHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBsZW5ndGgtemVyby1uby11bml0XG4gICAgICAgICAgICBtaW4td2lkdGg6IDB2dztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICN7JG1xLXZhbHVlfSkge1xuICAgICAgICAgIEBpZiAkcmZzLWNsYXNzID09IFwiZW5hYmxlXCIge1xuICAgICAgICAgICAgLmVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSAmLFxuICAgICAgICAgICAgJi5lbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemUge1xuICAgICAgICAgICAgICBmb250LXNpemU6ICRyZnMtZmx1aWQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJHJmcy1mbHVpZDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaWYgJHJmcy1zYWZhcmktaWZyYW1lLXJlc2l6ZS1idWctZml4IHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBsZW5ndGgtemVyby1uby11bml0XG4gICAgICAgICAgICBtaW4td2lkdGg6IDB2dztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gVGhlIGZvbnQtc2l6ZSAmIHJlc3BvbnNpdmUtZm9udC1zaXplIG1peGluIHVzZXMgUkZTIHRvIHJlc2NhbGUgZm9udCBzaXplc1xuQG1peGluIGZvbnQtc2l6ZSgkZnMsICRpbXBvcnRhbnQ6IGZhbHNlKSB7XG4gIEBpbmNsdWRlIHJmcygkZnMsICRpbXBvcnRhbnQpO1xufVxuXG5AbWl4aW4gcmVzcG9uc2l2ZS1mb250LXNpemUoJGZzLCAkaW1wb3J0YW50OiBmYWxzZSkge1xuICBAaW5jbHVkZSByZnMoJGZzLCAkaW1wb3J0YW50KTtcbn1cbiIsIi8vIERlcHJlY2F0ZSBtaXhpblxuLy9cbi8vIFRoaXMgbWl4aW4gY2FuIGJlIHVzZWQgdG8gZGVwcmVjYXRlIG1peGlucyBvciBmdW5jdGlvbnMuXG4vLyBgJGVuYWJsZS1kZXByZWNhdGlvbi1tZXNzYWdlc2AgaXMgYSBnbG9iYWwgdmFyaWFibGUsIGAkaWdub3JlLXdhcm5pbmdgIGlzIGEgdmFyaWFibGUgdGhhdCBjYW4gYmUgcGFzc2VkIHRvXG4vLyBzb21lIGRlcHJlY2F0ZWQgbWl4aW5zIHRvIHN1cHByZXNzIHRoZSB3YXJuaW5nIChmb3IgZXhhbXBsZSBpZiB0aGUgbWl4aW4gaXMgc3RpbGwgYmUgdXNlZCBpbiB0aGUgY3VycmVudCB2ZXJzaW9uIG9mIEJvb3RzdHJhcClcbkBtaXhpbiBkZXByZWNhdGUoJG5hbWUsICRkZXByZWNhdGUtdmVyc2lvbiwgJHJlbW92ZS12ZXJzaW9uLCAkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gIEBpZiAoJGVuYWJsZS1kZXByZWNhdGlvbi1tZXNzYWdlcyAhPSBmYWxzZSBhbmQgJGlnbm9yZS13YXJuaW5nICE9IHRydWUpIHtcbiAgICBAd2FybiBcIiN7JG5hbWV9IGhhcyBiZWVuIGRlcHJlY2F0ZWQgYXMgb2YgI3skZGVwcmVjYXRlLXZlcnNpb259LiBJdCB3aWxsIGJlIHJlbW92ZWQgZW50aXJlbHkgaW4gI3skcmVtb3ZlLXZlcnNpb259LlwiO1xuICB9XG59XG4iLCIvLyBCcmVha3BvaW50IHZpZXdwb3J0IHNpemVzIGFuZCBtZWRpYSBxdWVyaWVzLlxuLy9cbi8vIEJyZWFrcG9pbnRzIGFyZSBkZWZpbmVkIGFzIGEgbWFwIG9mIChuYW1lOiBtaW5pbXVtIHdpZHRoKSwgb3JkZXIgZnJvbSBzbWFsbCB0byBsYXJnZTpcbi8vXG4vLyAgICAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpXG4vL1xuLy8gVGhlIG1hcCBkZWZpbmVkIGluIHRoZSBgJGdyaWQtYnJlYWtwb2ludHNgIGdsb2JhbCB2YXJpYWJsZSBpcyB1c2VkIGFzIHRoZSBgJGJyZWFrcG9pbnRzYCBhcmd1bWVudCBieSBkZWZhdWx0LlxuXG4vLyBOYW1lIG9mIHRoZSBuZXh0IGJyZWFrcG9pbnQsIG9yIG51bGwgZm9yIHRoZSBsYXN0IGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICRicmVha3BvaW50LW5hbWVzOiAoeHMgc20gbWQgbGcgeGwpKVxuLy8gICAgbWRcbkBmdW5jdGlvbiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMsICRicmVha3BvaW50LW5hbWVzOiBtYXAta2V5cygkYnJlYWtwb2ludHMpKSB7XG4gICRuOiBpbmRleCgkYnJlYWtwb2ludC1uYW1lcywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRuICE9IG51bGwgYW5kICRuIDwgbGVuZ3RoKCRicmVha3BvaW50LW5hbWVzKSwgbnRoKCRicmVha3BvaW50LW5hbWVzLCAkbiArIDEpLCBudWxsKTtcbn1cblxuLy8gTWluaW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgc21hbGxlc3QgKGZpcnN0KSBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWluKHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgNTc2cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtaW4gIT0gMCwgJG1pbiwgbnVsbCk7XG59XG5cbi8vIE1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIGxhcmdlc3QgKGxhc3QpIGJyZWFrcG9pbnQuXG4vLyBUaGUgbWF4aW11bSB2YWx1ZSBpcyBjYWxjdWxhdGVkIGFzIHRoZSBtaW5pbXVtIG9mIHRoZSBuZXh0IG9uZSBsZXNzIDAuMDJweFxuLy8gdG8gd29yayBhcm91bmQgdGhlIGxpbWl0YXRpb25zIG9mIGBtaW4tYCBhbmQgYG1heC1gIHByZWZpeGVzIGFuZCB2aWV3cG9ydHMgd2l0aCBmcmFjdGlvbmFsIHdpZHRocy5cbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvbWVkaWFxdWVyaWVzLTQvI21xLW1pbi1tYXhcbi8vIFVzZXMgMC4wMnB4IHJhdGhlciB0aGFuIDAuMDFweCB0byB3b3JrIGFyb3VuZCBhIGN1cnJlbnQgcm91bmRpbmcgYnVnIGluIFNhZmFyaS5cbi8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc4MjYxXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1tYXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICA3NjcuOThweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRuZXh0OiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEByZXR1cm4gaWYoJG5leHQsIGJyZWFrcG9pbnQtbWluKCRuZXh0LCAkYnJlYWtwb2ludHMpIC0gLjAyLCBudWxsKTtcbn1cblxuLy8gUmV0dXJucyBhIGJsYW5rIHN0cmluZyBpZiBzbWFsbGVzdCBicmVha3BvaW50LCBvdGhlcndpc2UgcmV0dXJucyB0aGUgbmFtZSB3aXRoIGEgZGFzaCBpbiBmcm9udC5cbi8vIFVzZWZ1bCBmb3IgbWFraW5nIHJlc3BvbnNpdmUgdXRpbGl0aWVzLlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoeHMsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIlwiICAoUmV0dXJucyBhIGJsYW5rIHN0cmluZylcbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIi1zbVwiXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAcmV0dXJuIGlmKGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpID09IG51bGwsIFwiXCIsIFwiLSN7JG5hbWV9XCIpO1xufVxuXG4vLyBNZWRpYSBvZiBhdCBsZWFzdCB0aGUgbWluaW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIHdpZGVyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWluIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSBvZiBhdCBtb3N0IHRoZSBtYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgbGFyZ2VzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWF4IHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSB0aGF0IHNwYW5zIG11bHRpcGxlIGJyZWFrcG9pbnQgd2lkdGhzLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IGJldHdlZW4gdGhlIG1pbiBhbmQgbWF4IGJyZWFrcG9pbnRzXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKCRsb3dlciwgJHVwcGVyLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRsb3dlciwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJHVwcGVyLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRsb3dlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJHVwcGVyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBNZWRpYSBiZXR3ZWVuIHRoZSBicmVha3BvaW50J3MgbWluaW11bSBhbmQgbWF4aW11bSB3aWR0aHMuXG4vLyBObyBtaW5pbXVtIGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludCwgYW5kIG5vIG1heGltdW0gZm9yIHRoZSBsYXJnZXN0IG9uZS5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBvbmx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50LCBub3Qgdmlld3BvcnRzIGFueSB3aWRlciBvciBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LW9ubHkoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEhvdmVyIG1peGluIGFuZCBgJGVuYWJsZS1ob3Zlci1tZWRpYS1xdWVyeWAgYXJlIGRlcHJlY2F0ZWQuXG4vL1xuLy8gT3JpZ2luYWxseSBhZGRlZCBkdXJpbmcgb3VyIGFscGhhcyBhbmQgbWFpbnRhaW5lZCBkdXJpbmcgYmV0YXMsIHRoaXMgbWl4aW4gd2FzXG4vLyBkZXNpZ25lZCB0byBwcmV2ZW50IGA6aG92ZXJgIHN0aWNraW5lc3Mgb24gaU9TLWFuIGlzc3VlIHdoZXJlIGhvdmVyIHN0eWxlc1xuLy8gd291bGQgcGVyc2lzdCBhZnRlciBpbml0aWFsIHRvdWNoLlxuLy9cbi8vIEZvciBiYWNrd2FyZCBjb21wYXRpYmlsaXR5LCB3ZSd2ZSBrZXB0IHRoZXNlIG1peGlucyBhbmQgdXBkYXRlZCB0aGVtIHRvXG4vLyBhbHdheXMgcmV0dXJuIHRoZWlyIHJlZ3VsYXIgcHNldWRvLWNsYXNzZXMgaW5zdGVhZCBvZiBhIHNoaW1tZWQgbWVkaWEgcXVlcnkuXG4vL1xuLy8gSXNzdWU6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjUxOTVcblxuQG1peGluIGhvdmVyIHtcbiAgJjpob3ZlciB7IEBjb250ZW50OyB9XG59XG5cbkBtaXhpbiBob3Zlci1mb2N1cyB7XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBwbGFpbi1ob3Zlci1mb2N1cyB7XG4gICYsXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBob3Zlci1mb2N1cy1hY3RpdmUge1xuICAmOmhvdmVyLFxuICAmOmZvY3VzLFxuICAmOmFjdGl2ZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vIEltYWdlIE1peGluc1xuLy8gLSBSZXNwb25zaXZlIGltYWdlXG4vLyAtIFJldGluYSBpbWFnZVxuXG5cbi8vIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vXG4vLyBLZWVwIGltYWdlcyBmcm9tIHNjYWxpbmcgYmV5b25kIHRoZSB3aWR0aCBvZiB0aGVpciBwYXJlbnRzLlxuXG5AbWl4aW4gaW1nLWZsdWlkIHtcbiAgLy8gUGFydCAxOiBTZXQgYSBtYXhpbXVtIHJlbGF0aXZlIHRvIHRoZSBwYXJlbnRcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICAvLyBQYXJ0IDI6IE92ZXJyaWRlIHRoZSBoZWlnaHQgdG8gYXV0bywgb3RoZXJ3aXNlIGltYWdlcyB3aWxsIGJlIHN0cmV0Y2hlZFxuICAvLyB3aGVuIHNldHRpbmcgYSB3aWR0aCBhbmQgaGVpZ2h0IGF0dHJpYnV0ZSBvbiB0aGUgaW1nIGVsZW1lbnQuXG4gIGhlaWdodDogYXV0bztcbn1cblxuXG4vLyBSZXRpbmEgaW1hZ2Vcbi8vXG4vLyBTaG9ydCByZXRpbmEgbWl4aW4gZm9yIHNldHRpbmcgYmFja2dyb3VuZC1pbWFnZSBhbmQgLXNpemUuXG5cbkBtaXhpbiBpbWctcmV0aW5hKCRmaWxlLTF4LCAkZmlsZS0yeCwgJHdpZHRoLTF4LCAkaGVpZ2h0LTF4KSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkZmlsZS0xeCk7XG5cbiAgLy8gQXV0b3ByZWZpeGVyIHRha2VzIGNhcmUgb2YgYWRkaW5nIC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbyBhbmQgLW8tbWluLWRldmljZS1waXhlbC1yYXRpbyxcbiAgLy8gYnV0IGRvZXNuJ3QgY29udmVydCBkcHB4PT5kcGkuXG4gIC8vIFRoZXJlJ3Mgbm8gc3VjaCB0aGluZyBhcyB1bnByZWZpeGVkIG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8gc2luY2UgaXQncyBub25zdGFuZGFyZC5cbiAgLy8gQ29tcGF0aWJpbGl0eSBpbmZvOiBodHRwczovL2Nhbml1c2UuY29tLyNmZWF0PWNzcy1tZWRpYS1yZXNvbHV0aW9uXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpLCAvLyBJRTktMTEgZG9uJ3Qgc3VwcG9ydCBkcHB4XG4gICAgb25seSBzY3JlZW4gYW5kIChtaW4tcmVzb2x1dGlvbjogMmRwcHgpIHsgLy8gU3RhbmRhcmRpemVkXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCRmaWxlLTJ4KTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6ICR3aWR0aC0xeCAkaGVpZ2h0LTF4O1xuICB9XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcImBpbWctcmV0aW5hKClgXCIsIFwidjQuMy4wXCIsIFwidjVcIik7XG59XG4iLCJAbWl4aW4gYmFkZ2UtdmFyaWFudCgkYmcpIHtcbiAgY29sb3I6IGNvbG9yLXlpcSgkYmcpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmc7XG5cbiAgQGF0LXJvb3QgYSN7Jn0ge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgIGNvbG9yOiBjb2xvci15aXEoJGJnKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmcsIDEwJSk7XG4gICAgfVxuXG4gICAgJjpmb2N1cyxcbiAgICAmLmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IDA7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAkYmFkZ2UtZm9jdXMtd2lkdGggcmdiYSgkYmcsIC41KTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIFJlc2l6ZSBhbnl0aGluZ1xuXG5AbWl4aW4gcmVzaXphYmxlKCRkaXJlY3Rpb24pIHtcbiAgb3ZlcmZsb3c6IGF1dG87IC8vIFBlciBDU1MzIFVJLCBgcmVzaXplYCBvbmx5IGFwcGxpZXMgd2hlbiBgb3ZlcmZsb3dgIGlzbid0IGB2aXNpYmxlYFxuICByZXNpemU6ICRkaXJlY3Rpb247IC8vIE9wdGlvbnM6IGhvcml6b250YWwsIHZlcnRpY2FsLCBib3RoXG59XG4iLCIvLyBPbmx5IGRpc3BsYXkgY29udGVudCB0byBzY3JlZW4gcmVhZGVyc1xuLy9cbi8vIFNlZTogaHR0cHM6Ly9hMTF5cHJvamVjdC5jb20vcG9zdHMvaG93LXRvLWhpZGUtY29udGVudC9cbi8vIFNlZTogaHR0cHM6Ly9odWdvZ2lyYXVkZWwuY29tLzIwMTYvMTAvMTMvY3NzLWhpZGUtYW5kLXNlZWsvXG5cbkBtaXhpbiBzci1vbmx5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyBVc2UgaW4gY29uanVuY3Rpb24gd2l0aCAuc3Itb25seSB0byBvbmx5IGRpc3BsYXkgY29udGVudCB3aGVuIGl0J3MgZm9jdXNlZC5cbi8vXG4vLyBVc2VmdWwgZm9yIFwiU2tpcCB0byBtYWluIGNvbnRlbnRcIiBsaW5rczsgc2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi8yMDEzL05PVEUtV0NBRzIwLVRFQ0hTLTIwMTMwOTA1L0cxXG4vL1xuLy8gQ3JlZGl0OiBIVE1MNSBCb2lsZXJwbGF0ZVxuXG5AbWl4aW4gc3Itb25seS1mb2N1c2FibGUge1xuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cyB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgY2xpcDogYXV0bztcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICB9XG59XG4iLCIvLyBTaXppbmcgc2hvcnRjdXRzXG5cbkBtaXhpbiBzaXplKCR3aWR0aCwgJGhlaWdodDogJHdpZHRoKSB7XG4gIHdpZHRoOiAkd2lkdGg7XG4gIGhlaWdodDogJGhlaWdodDtcbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiYHNpemUoKWBcIiwgXCJ2NC4zLjBcIiwgXCJ2NVwiKTtcbn1cbiIsIkBtaXhpbiByZXNldC10ZXh0IHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICAvLyBXZSBkZWxpYmVyYXRlbHkgZG8gTk9UIHJlc2V0IGZvbnQtc2l6ZSBvciB3b3JkLXdyYXAuXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRmFsbGJhY2sgZm9yIHdoZXJlIGBzdGFydGAgaXMgbm90IHN1cHBvcnRlZFxuICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgd29yZC1zcGFjaW5nOiBub3JtYWw7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIGxpbmUtYnJlYWs6IGF1dG87XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gVHlwb2dyYXBoeVxuXG5AbWl4aW4gdGV4dC1lbXBoYXNpcy12YXJpYW50KCRwYXJlbnQsICRjb2xvcikge1xuICAjeyRwYXJlbnR9IHtcbiAgICBjb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gIH1cbiAgQGlmICRlbXBoYXNpemVkLWxpbmstaG92ZXItZGFya2VuLXBlcmNlbnRhZ2UgIT0gMCB7XG4gICAgYSN7JHBhcmVudH0ge1xuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgICBjb2xvcjogZGFya2VuKCRjb2xvciwgJGVtcGhhc2l6ZWQtbGluay1ob3Zlci1kYXJrZW4tcGVyY2VudGFnZSkgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIENTUyBpbWFnZSByZXBsYWNlbWVudFxuQG1peGluIHRleHQtaGlkZSgkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBmb250LWZhbWlseS1uby1taXNzaW5nLWdlbmVyaWMtZmFtaWx5LWtleXdvcmRcbiAgZm9udDogMC8wIGE7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG5cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiYHRleHQtaGlkZSgpYFwiLCBcInY0LjEuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG4iLCIvLyBUZXh0IHRydW5jYXRlXG4vLyBSZXF1aXJlcyBpbmxpbmUtYmxvY2sgb3IgYmxvY2sgZm9yIHByb3BlciBzdHlsaW5nXG5cbkBtaXhpbiB0ZXh0LXRydW5jYXRlKCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBWaXNpYmlsaXR5XG5cbkBtaXhpbiBpbnZpc2libGUoJHZpc2liaWxpdHkpIHtcbiAgdmlzaWJpbGl0eTogJHZpc2liaWxpdHkgIWltcG9ydGFudDtcbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiYGludmlzaWJsZSgpYFwiLCBcInY0LjMuMFwiLCBcInY1XCIpO1xufVxuIiwiQG1peGluIGFsZXJ0LXZhcmlhbnQoJGJhY2tncm91bmQsICRib3JkZXIsICRjb2xvcikge1xuICBjb2xvcjogJGNvbG9yO1xuICBAaW5jbHVkZSBncmFkaWVudC1iZygkYmFja2dyb3VuZCk7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcblxuICBociB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogZGFya2VuKCRib3JkZXIsIDUlKTtcbiAgfVxuXG4gIC5hbGVydC1saW5rIHtcbiAgICBjb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKTtcbiAgfVxufVxuIiwiLy8gQnV0dG9uIHZhcmlhbnRzXG4vL1xuLy8gRWFzaWx5IHB1bXAgb3V0IGRlZmF1bHQgc3R5bGVzLCBhcyB3ZWxsIGFzIDpob3ZlciwgOmZvY3VzLCA6YWN0aXZlLFxuLy8gYW5kIGRpc2FibGVkIG9wdGlvbnMgZm9yIGFsbCBidXR0b25zXG5cbkBtaXhpbiBidXR0b24tdmFyaWFudCgkYmFja2dyb3VuZCwgJGJvcmRlciwgJGhvdmVyLWJhY2tncm91bmQ6IGRhcmtlbigkYmFja2dyb3VuZCwgNy41JSksICRob3Zlci1ib3JkZXI6IGRhcmtlbigkYm9yZGVyLCAxMCUpLCAkYWN0aXZlLWJhY2tncm91bmQ6IGRhcmtlbigkYmFja2dyb3VuZCwgMTAlKSwgJGFjdGl2ZS1ib3JkZXI6IGRhcmtlbigkYm9yZGVyLCAxMi41JSkpIHtcbiAgY29sb3I6IGNvbG9yLXlpcSgkYmFja2dyb3VuZCk7XG4gIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRiYWNrZ3JvdW5kKTtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYm94LXNoYWRvdyk7XG5cbiAgQGluY2x1ZGUgaG92ZXIge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGhvdmVyLWJhY2tncm91bmQpO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRob3Zlci1iYWNrZ3JvdW5kKTtcbiAgICBib3JkZXItY29sb3I6ICRob3Zlci1ib3JkZXI7XG4gIH1cblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBib3gtc2hhZG93OiAkYnRuLWJveC1zaGFkb3csIDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYShtaXgoY29sb3IteWlxKCRiYWNrZ3JvdW5kKSwgJGJvcmRlciwgMTUlKSwgLjUpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKG1peChjb2xvci15aXEoJGJhY2tncm91bmQpLCAkYm9yZGVyLCAxNSUpLCAuNSk7XG4gICAgfVxuICB9XG5cbiAgLy8gRGlzYWJsZWQgY29tZXMgZmlyc3Qgc28gYWN0aXZlIGNhbiBwcm9wZXJseSByZXN0eWxlXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGJhY2tncm91bmQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgICAvLyBSZW1vdmUgQ1NTIGdyYWRpZW50cyBpZiB0aGV5J3JlIGVuYWJsZWRcbiAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4gIC5zaG93ID4gJi5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGFjdGl2ZS1iYWNrZ3JvdW5kKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IC8vIFJlbW92ZSB0aGUgZ3JhZGllbnQgZm9yIHRoZSBwcmVzc2VkL2FjdGl2ZSBzdGF0ZVxuICAgIH1cbiAgICBib3JkZXItY29sb3I6ICRhY3RpdmUtYm9yZGVyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIGFuZCAkYnRuLWFjdGl2ZS1ib3gtc2hhZG93ICE9IG5vbmUge1xuICAgICAgICBib3gtc2hhZG93OiAkYnRuLWFjdGl2ZS1ib3gtc2hhZG93LCAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEobWl4KGNvbG9yLXlpcSgkYmFja2dyb3VuZCksICRib3JkZXIsIDE1JSksIC41KTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEobWl4KGNvbG9yLXlpcSgkYmFja2dyb3VuZCksICRib3JkZXIsIDE1JSksIC41KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoJGNvbG9yLCAkY29sb3ItaG92ZXI6IGNvbG9yLXlpcSgkY29sb3IpLCAkYWN0aXZlLWJhY2tncm91bmQ6ICRjb2xvciwgJGFjdGl2ZS1ib3JkZXI6ICRjb2xvcikge1xuICBjb2xvcjogJGNvbG9yO1xuICBib3JkZXItY29sb3I6ICRjb2xvcjtcblxuICBAaW5jbHVkZSBob3ZlciB7XG4gICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcbiAgfVxuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC41KTtcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4gIC5zaG93ID4gJi5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGFjdGl2ZS1iYWNrZ3JvdW5kKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgQGlmICRlbmFibGUtc2hhZG93cyBhbmQgJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyAhPSBub25lIHtcbiAgICAgICAgYm94LXNoYWRvdzogJGJ0bi1hY3RpdmUtYm94LXNoYWRvdywgMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC41KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gQnV0dG9uIHNpemVzXG5AbWl4aW4gYnV0dG9uLXNpemUoJHBhZGRpbmcteSwgJHBhZGRpbmcteCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkYm9yZGVyLXJhZGl1cykge1xuICBwYWRkaW5nOiAkcGFkZGluZy15ICRwYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgLy8gTWFudWFsbHkgZGVjbGFyZSB0byBwcm92aWRlIGFuIG92ZXJyaWRlIHRvIHRoZSBicm93c2VyIGRlZmF1bHRcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cywgMCk7XG59XG4iLCJAbWl4aW4gY2FyZXQtZG93biB7XG4gIGJvcmRlci10b3A6ICRjYXJldC13aWR0aCBzb2xpZDtcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJvcmRlci1sZWZ0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldC11cCB7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGggc29saWQ7XG4gIGJvcmRlci1sZWZ0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldC1yaWdodCB7XG4gIGJvcmRlci10b3A6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xuICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1sZWZ0OiAkY2FyZXQtd2lkdGggc29saWQ7XG59XG5cbkBtaXhpbiBjYXJldC1sZWZ0IHtcbiAgYm9yZGVyLXRvcDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6ICRjYXJldC13aWR0aCBzb2xpZDtcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQoJGRpcmVjdGlvbjogZG93bikge1xuICBAaWYgJGVuYWJsZS1jYXJldCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLWxlZnQ6ICRjYXJldC1zcGFjaW5nO1xuICAgICAgdmVydGljYWwtYWxpZ246ICRjYXJldC12ZXJ0aWNhbC1hbGlnbjtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBAaWYgJGRpcmVjdGlvbiA9PSBkb3duIHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtZG93bjtcbiAgICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSB1cCB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LXVwO1xuICAgICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IHJpZ2h0IHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtcmlnaHQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRkaXJlY3Rpb24gPT0gbGVmdCB7XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkY2FyZXQtc3BhY2luZztcbiAgICAgICAgdmVydGljYWwtYWxpZ246ICRjYXJldC12ZXJ0aWNhbC1hbGlnbjtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtbGVmdDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmVtcHR5OjphZnRlciB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIFBhZ2luYXRpb25cblxuQG1peGluIHBhZ2luYXRpb24tc2l6ZSgkcGFkZGluZy15LCAkcGFkZGluZy14LCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKSB7XG4gIC5wYWdlLWxpbmsge1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXkgJHBhZGRpbmcteDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZSk7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgfVxuXG4gIC5wYWdlLWl0ZW0ge1xuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgLnBhZ2UtbGluayB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAucGFnZS1saW5rIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBMaXN0c1xuXG4vLyBVbnN0eWxlZCBrZWVwcyBsaXN0IGl0ZW1zIGJsb2NrIGxldmVsLCBqdXN0IHJlbW92ZXMgZGVmYXVsdCBicm93c2VyIHBhZGRpbmcgYW5kIGxpc3Qtc3R5bGVcbkBtaXhpbiBsaXN0LXVuc3R5bGVkIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuIiwiLy8gTGlzdCBHcm91cHNcblxuQG1peGluIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQsICRjb2xvcikge1xuICAubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcblxuICAgICYubGlzdC1ncm91cC1pdGVtLWFjdGlvbiB7XG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgNSUpO1xuICAgICAgfVxuXG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBIb3Jpem9udGFsIGRpdmlkZXJzXG4vL1xuLy8gRGl2aWRlcnMgKGJhc2ljYWxseSBhbiBocikgd2l0aGluIGRyb3Bkb3ducyBhbmQgbmF2IGxpc3RzXG5cbkBtaXhpbiBuYXYtZGl2aWRlcigkY29sb3I6ICRuYXYtZGl2aWRlci1jb2xvciwgJG1hcmdpbi15OiAkbmF2LWRpdmlkZXItbWFyZ2luLXkpIHtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW46ICRtYXJnaW4teSAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgJGNvbG9yO1xufVxuIiwiLy8gRm9ybSBjb250cm9sIGZvY3VzIHN0YXRlXG4vL1xuLy8gR2VuZXJhdGUgYSBjdXN0b21pemVkIGZvY3VzIHN0YXRlIGFuZCBmb3IgYW55IGlucHV0IHdpdGggdGhlIHNwZWNpZmllZCBjb2xvcixcbi8vIHdoaWNoIGRlZmF1bHRzIHRvIHRoZSBgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcmAgdmFyaWFibGUuXG4vL1xuLy8gV2UgaGlnaGx5IGVuY291cmFnZSB5b3UgdG8gbm90IGN1c3RvbWl6ZSB0aGUgZGVmYXVsdCB2YWx1ZSwgYnV0IGluc3RlYWQgdXNlXG4vLyB0aGlzIHRvIHR3ZWFrIGNvbG9ycyBvbiBhbiBhcy1uZWVkZWQgYmFzaXMuIFRoaXMgYWVzdGhldGljIGNoYW5nZSBpcyBiYXNlZCBvblxuLy8gV2ViS2l0J3MgZGVmYXVsdCBzdHlsZXMsIGJ1dCBhcHBsaWNhYmxlIHRvIGEgd2lkZXIgcmFuZ2Ugb2YgYnJvd3NlcnMuIEl0c1xuLy8gdXNhYmlsaXR5IGFuZCBhY2Nlc3NpYmlsaXR5IHNob3VsZCBiZSB0YWtlbiBpbnRvIGFjY291bnQgd2l0aCBhbnkgY2hhbmdlLlxuLy9cbi8vIEV4YW1wbGUgdXNhZ2U6IGNoYW5nZSB0aGUgZGVmYXVsdCBibHVlIGJvcmRlciBhbmQgc2hhZG93IHRvIHdoaXRlIGZvciBiZXR0ZXJcbi8vIGNvbnRyYXN0IGFnYWluc3QgYSBkYXJrIGdyYXkgYmFja2dyb3VuZC5cbkBtaXhpbiBmb3JtLWNvbnRyb2wtZm9jdXMoKSB7XG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkaW5wdXQtZm9jdXMtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWZvY3VzLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgICBvdXRsaW5lOiAwO1xuICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIGJveC1zaGFkb3c6ICRpbnB1dC1ib3gtc2hhZG93LCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdztcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJveC1zaGFkb3c6ICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH1cbiAgfVxufVxuXG5cbkBtaXhpbiBmb3JtLXZhbGlkYXRpb24tc3RhdGUoJHN0YXRlLCAkY29sb3IsICRpY29uKSB7XG4gIC4jeyRzdGF0ZX0tZmVlZGJhY2sge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogJGZvcm0tZmVlZGJhY2stbWFyZ2luLXRvcDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tZmVlZGJhY2stZm9udC1zaXplKTtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG5cbiAgLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMDAlO1xuICAgIHotaW5kZXg6IDU7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IC8vIENvbnRhaW4gdG8gcGFyZW50IHdoZW4gcG9zc2libGVcbiAgICBwYWRkaW5nOiAkZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteSAkZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteDtcbiAgICBtYXJnaW4tdG9wOiAuMXJlbTtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1mb250LXNpemUpO1xuICAgIGxpbmUtaGVpZ2h0OiAkZm9ybS1mZWVkYmFjay10b29sdGlwLWxpbmUtaGVpZ2h0O1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvciwgJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1vcGFjaXR5KTtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAuZm9ybS1jb250cm9sIHtcbiAgICAud2FzLXZhbGlkYXRlZCAmOiN7JHN0YXRlfSxcbiAgICAmLmlzLSN7JHN0YXRlfSB7XG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcblxuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRpbnB1dC1oZWlnaHQtaW5uZXI7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6ICRpY29uO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgcmlnaHQgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGY7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuMjUpO1xuICAgICAgfVxuXG4gICAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcbiAgdGV4dGFyZWEuZm9ybS1jb250cm9sIHtcbiAgICAud2FzLXZhbGlkYXRlZCAmOiN7JHN0YXRlfSxcbiAgICAmLmlzLSN7JHN0YXRlfSB7XG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGlucHV0LWhlaWdodC1pbm5lcjtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlciByaWdodCAkaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1zZWxlY3Qge1xuICAgIC53YXMtdmFsaWRhdGVkICY6I3skc3RhdGV9LFxuICAgICYuaXMtI3skc3RhdGV9IHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wYWRkaW5nLXJpZ2h0O1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY3VzdG9tLXNlbGVjdC1iYWNrZ3JvdW5kLCAkaWNvbiAkY3VzdG9tLXNlbGVjdC1iZyBuby1yZXBlYXQgJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wb3NpdGlvbiAvICRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tc2l6ZTtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC4yNSk7XG4gICAgICB9XG5cbiAgICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcbiAgICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cblxuICAuZm9ybS1jb250cm9sLWZpbGUge1xuICAgIC53YXMtdmFsaWRhdGVkICY6I3skc3RhdGV9LFxuICAgICYuaXMtI3skc3RhdGV9IHtcbiAgICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcbiAgICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIC53YXMtdmFsaWRhdGVkICY6I3skc3RhdGV9LFxuICAgICYuaXMtI3skc3RhdGV9IHtcbiAgICAgIH4gLmZvcm0tY2hlY2stbGFiZWwge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgfVxuXG4gICAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dCB7XG4gICAgLndhcy12YWxpZGF0ZWQgJjojeyRzdGF0ZX0sXG4gICAgJi5pcy0jeyRzdGF0ZX0ge1xuICAgICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgICAgfiAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cblxuICAgICAgJjpjaGVja2VkIHtcbiAgICAgICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiBsaWdodGVuKCRjb2xvciwgMTAlKTtcbiAgICAgICAgICBAaW5jbHVkZSBncmFkaWVudC1iZyhsaWdodGVuKCRjb2xvciwgMTAlKSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bm90KDpjaGVja2VkKSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIGN1c3RvbSBmaWxlXG4gIC5jdXN0b20tZmlsZS1pbnB1dCB7XG4gICAgLndhcy12YWxpZGF0ZWQgJjojeyRzdGF0ZX0sXG4gICAgJi5pcy0jeyRzdGF0ZX0ge1xuICAgICAgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cblxuICAgICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgICAgfiAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC4yNSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIFRhYmxlc1xuXG5AbWl4aW4gdGFibGUtcm93LXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCwgJGJvcmRlcjogbnVsbCkge1xuICAvLyBFeGFjdCBzZWxlY3RvcnMgYmVsb3cgcmVxdWlyZWQgdG8gb3ZlcnJpZGUgYC50YWJsZS1zdHJpcGVkYCBhbmQgcHJldmVudFxuICAvLyBpbmhlcml0YW5jZSB0byBuZXN0ZWQgdGFibGVzLlxuICAudGFibGUtI3skc3RhdGV9IHtcbiAgICAmLFxuICAgID4gdGgsXG4gICAgPiB0ZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICB9XG5cbiAgICBAaWYgJGJvcmRlciAhPSBudWxsIHtcbiAgICAgIHRoLFxuICAgICAgdGQsXG4gICAgICB0aGVhZCB0aCxcbiAgICAgIHRib2R5ICsgdGJvZHkge1xuICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gSG92ZXIgc3RhdGVzIGZvciBgLnRhYmxlLWhvdmVyYFxuICAvLyBOb3RlOiB0aGlzIGlzIG5vdCBhdmFpbGFibGUgZm9yIGNlbGxzIG9yIHJvd3Mgd2l0aGluIGB0aGVhZGAgb3IgYHRmb290YC5cbiAgLnRhYmxlLWhvdmVyIHtcbiAgICAkaG92ZXItYmFja2dyb3VuZDogZGFya2VuKCRiYWNrZ3JvdW5kLCA1JSk7XG5cbiAgICAudGFibGUtI3skc3RhdGV9IHtcbiAgICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLWJhY2tncm91bmQ7XG5cbiAgICAgICAgPiB0ZCxcbiAgICAgICAgPiB0aCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLWJhY2tncm91bmQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBDb250ZXh0dWFsIGJhY2tncm91bmRzXG5cbkBtaXhpbiBiZy12YXJpYW50KCRwYXJlbnQsICRjb2xvcikge1xuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgfVxuICBhI3skcGFyZW50fSxcbiAgYnV0dG9uI3skcGFyZW50fSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYmctZ3JhZGllbnQtdmFyaWFudCgkcGFyZW50LCAkY29sb3IpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yIGxpbmVhci1ncmFkaWVudCgxODBkZWcsIG1peCgkYm9keS1iZywgJGNvbG9yLCAxNSUpLCAkY29sb3IpIHJlcGVhdC14ICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWJsYWNrbGlzdFxuLy8gU2luZ2xlIHNpZGUgYm9yZGVyLXJhZGl1c1xuXG5AbWl4aW4gYm9yZGVyLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cywgJGZhbGxiYWNrLWJvcmRlci1yYWRpdXM6IGZhbHNlKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG4gIH1cbiAgQGVsc2UgaWYgJGZhbGxiYWNrLWJvcmRlci1yYWRpdXMgIT0gZmFsc2Uge1xuICAgIGJvcmRlci1yYWRpdXM6ICRmYWxsYmFjay1ib3JkZXItcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItbGVmdC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtbGVmdC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgfVxufVxuIiwiQG1peGluIGJveC1zaGFkb3coJHNoYWRvdy4uLikge1xuICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAkcmVzdWx0OiAoKTtcblxuICAgIEBpZiAobGVuZ3RoKCRzaGFkb3cpID09IDEpIHtcbiAgICAgIC8vIFdlIGNhbiBwYXNzIGBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO2BcbiAgICAgICRyZXN1bHQ6ICRzaGFkb3c7XG4gICAgfSBAZWxzZSB7XG4gICAgICAvLyBGaWx0ZXIgdG8gYXZvaWQgaW52YWxpZCBwcm9wZXJ0aWVzIGZvciBleGFtcGxlIGBib3gtc2hhZG93OiBub25lLCAxcHggMXB4IGJsYWNrO2BcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggbGVuZ3RoKCRzaGFkb3cpIHtcbiAgICAgICAgQGlmIG50aCgkc2hhZG93LCAkaSkgIT0gXCJub25lXCIge1xuICAgICAgICAgICRyZXN1bHQ6IGFwcGVuZCgkcmVzdWx0LCBudGgoJHNoYWRvdywgJGkpLCBcImNvbW1hXCIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBpZiAobGVuZ3RoKCRyZXN1bHQpID4gMCkge1xuICAgICAgYm94LXNoYWRvdzogJHJlc3VsdDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEdyYWRpZW50c1xuXG5AbWl4aW4gZ3JhZGllbnQtYmcoJGNvbG9yKSB7XG4gIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yIGxpbmVhci1ncmFkaWVudCgxODBkZWcsIG1peCgkYm9keS1iZywgJGNvbG9yLCAxNSUpLCAkY29sb3IpIHJlcGVhdC14O1xuICB9IEBlbHNlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuLy8gSG9yaXpvbnRhbCBncmFkaWVudCwgZnJvbSBsZWZ0IHRvIHJpZ2h0XG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbkBtaXhpbiBncmFkaWVudC14KCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbn1cblxuLy8gVmVydGljYWwgZ3JhZGllbnQsIGZyb20gdG9wIHRvIGJvdHRvbVxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG5AbWl4aW4gZ3JhZGllbnQteSgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xufVxuXG5AbWl4aW4gZ3JhZGllbnQtZGlyZWN0aW9uYWwoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJGRlZzogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRkZWcsICRzdGFydC1jb2xvciwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbn1cbkBtaXhpbiBncmFkaWVudC14LXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICRibHVlLCAkbWlkLWNvbG9yOiAkcHVycGxlLCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAkcmVkKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBncmFkaWVudC15LXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICRibHVlLCAkbWlkLWNvbG9yOiAkcHVycGxlLCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAkcmVkKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXJhZGlhbCgkaW5uZXItY29sb3I6ICRncmF5LTcwMCwgJG91dGVyLWNvbG9yOiAkZ3JheS04MDApIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgJGlubmVyLWNvbG9yLCAkb3V0ZXItY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXN0cmlwZWQoJGNvbG9yOiByZ2JhKCR3aGl0ZSwgLjE1KSwgJGFuZ2xlOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGFuZ2xlLCAkY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgJGNvbG9yIDUwJSwgJGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1ibGFja2xpc3RcbkBtaXhpbiB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLi4uKSB7XG4gIEBpZiAkZW5hYmxlLXRyYW5zaXRpb25zIHtcbiAgICBAaWYgbGVuZ3RoKCR0cmFuc2l0aW9uKSA9PSAwIHtcbiAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uLWJhc2U7XG4gICAgfSBAZWxzZSB7XG4gICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbiAgICB9XG4gIH1cblxuICBAaWYgJGVuYWJsZS1wcmVmZXJzLXJlZHVjZWQtbW90aW9uLW1lZGlhLXF1ZXJ5IHtcbiAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIkBtaXhpbiBjbGVhcmZpeCgpIHtcbiAgJjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cbn1cbiIsIi8vIEZyYW1ld29yayBncmlkIGdlbmVyYXRpb25cbi8vXG4vLyBVc2VkIG9ubHkgYnkgQm9vdHN0cmFwIHRvIGdlbmVyYXRlIHRoZSBjb3JyZWN0IG51bWJlciBvZiBncmlkIGNsYXNzZXMgZ2l2ZW5cbi8vIGFueSB2YWx1ZSBvZiBgJGdyaWQtY29sdW1uc2AuXG5cbkBtaXhpbiBtYWtlLWdyaWQtY29sdW1ucygkY29sdW1uczogJGdyaWQtY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIC8vIENvbW1vbiBwcm9wZXJ0aWVzIGZvciBhbGwgYnJlYWtwb2ludHNcbiAgJWdyaWQtY29sdW1uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1yaWdodDogJGd1dHRlciAvIDI7XG4gICAgcGFkZGluZy1sZWZ0OiAkZ3V0dGVyIC8gMjtcbiAgfVxuXG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRicmVha3BvaW50cykge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKTtcblxuICAgIC8vIEFsbG93IGNvbHVtbnMgdG8gc3RyZXRjaCBmdWxsIHdpZHRoIGJlbG93IHRoZWlyIGJyZWFrcG9pbnRzXG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAuY29sI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgQGV4dGVuZCAlZ3JpZC1jb2x1bW47XG4gICAgICB9XG4gICAgfVxuICAgIC5jb2wjeyRpbmZpeH0sXG4gICAgLmNvbCN7JGluZml4fS1hdXRvIHtcbiAgICAgIEBleHRlbmQgJWdyaWQtY29sdW1uO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cykge1xuICAgICAgLy8gUHJvdmlkZSBiYXNpYyBgLmNvbC17YnB9YCBjbGFzc2VzIGZvciBlcXVhbC13aWR0aCBmbGV4Ym94IGNvbHVtbnNcbiAgICAgIC5jb2wjeyRpbmZpeH0ge1xuICAgICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICAgIC5jb2wjeyRpbmZpeH0tYXV0byB7XG4gICAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlOyAvLyBSZXNldCBlYXJsaWVyIGdyaWQgdGllcnNcbiAgICAgIH1cblxuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgIC5jb2wjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sKCRpLCAkY29sdW1ucyk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLm9yZGVyI3skaW5maXh9LWZpcnN0IHsgb3JkZXI6IC0xOyB9XG5cbiAgICAgIC5vcmRlciN7JGluZml4fS1sYXN0IHsgb3JkZXI6ICRjb2x1bW5zICsgMTsgfVxuXG4gICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgICAgLm9yZGVyI3skaW5maXh9LSN7JGl9IHsgb3JkZXI6ICRpOyB9XG4gICAgICB9XG5cbiAgICAgIC8vIGAkY29sdW1ucyAtIDFgIGJlY2F1c2Ugb2Zmc2V0dGluZyBieSB0aGUgd2lkdGggb2YgYW4gZW50aXJlIHJvdyBpc24ndCBwb3NzaWJsZVxuICAgICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAoJGNvbHVtbnMgLSAxKSB7XG4gICAgICAgIEBpZiBub3QgKCRpbmZpeCA9PSBcIlwiIGFuZCAkaSA9PSAwKSB7IC8vIEF2b2lkIGVtaXR0aW5nIHVzZWxlc3MgLm9mZnNldC0wXG4gICAgICAgICAgLm9mZnNldCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbC1vZmZzZXQoJGksICRjb2x1bW5zKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBHcmlkIHN5c3RlbVxuLy9cbi8vIEdlbmVyYXRlIHNlbWFudGljIGdyaWQgY29sdW1ucyB3aXRoIHRoZXNlIG1peGlucy5cblxuQG1peGluIG1ha2UtY29udGFpbmVyKCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogJGd1dHRlciAvIDI7XG4gIHBhZGRpbmctbGVmdDogJGd1dHRlciAvIDI7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG5cblxuLy8gRm9yIGVhY2ggYnJlYWtwb2ludCwgZGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIHRoZSBjb250YWluZXIgaW4gYSBtZWRpYSBxdWVyeVxuQG1peGluIG1ha2UtY29udGFpbmVyLW1heC13aWR0aHMoJG1heC13aWR0aHM6ICRjb250YWluZXItbWF4LXdpZHRocywgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAZWFjaCAkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJG1heC13aWR0aHMge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cykge1xuICAgICAgbWF4LXdpZHRoOiAkY29udGFpbmVyLW1heC13aWR0aDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1ha2Utcm93KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1yaWdodDogLSRndXR0ZXIgLyAyO1xuICBtYXJnaW4tbGVmdDogLSRndXR0ZXIgLyAyO1xufVxuXG5AbWl4aW4gbWFrZS1jb2wtcmVhZHkoJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLy8gUHJldmVudCBjb2x1bW5zIGZyb20gYmVjb21pbmcgdG9vIG5hcnJvdyB3aGVuIGF0IHNtYWxsZXIgZ3JpZCB0aWVycyBieVxuICAvLyBhbHdheXMgc2V0dGluZyBgd2lkdGg6IDEwMCU7YC4gVGhpcyB3b3JrcyBiZWNhdXNlIHdlIHVzZSBgZmxleGAgdmFsdWVzXG4gIC8vIGxhdGVyIG9uIHRvIG92ZXJyaWRlIHRoaXMgaW5pdGlhbCB3aWR0aC5cbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6ICRndXR0ZXIgLyAyO1xuICBwYWRkaW5nLWxlZnQ6ICRndXR0ZXIgLyAyO1xufVxuXG5AbWl4aW4gbWFrZS1jb2woJHNpemUsICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XG4gIGZsZXg6IDAgMCBwZXJjZW50YWdlKCRzaXplIC8gJGNvbHVtbnMpO1xuICAvLyBBZGQgYSBgbWF4LXdpZHRoYCB0byBlbnN1cmUgY29udGVudCB3aXRoaW4gZWFjaCBjb2x1bW4gZG9lcyBub3QgYmxvdyBvdXRcbiAgLy8gdGhlIHdpZHRoIG9mIHRoZSBjb2x1bW4uIEFwcGxpZXMgdG8gSUUxMCsgYW5kIEZpcmVmb3guIENocm9tZSBhbmQgU2FmYXJpXG4gIC8vIGRvIG5vdCBhcHBlYXIgdG8gcmVxdWlyZSB0aGlzLlxuICBtYXgtd2lkdGg6IHBlcmNlbnRhZ2UoJHNpemUgLyAkY29sdW1ucyk7XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1vZmZzZXQoJHNpemUsICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XG4gICRudW06ICRzaXplIC8gJGNvbHVtbnM7XG4gIG1hcmdpbi1sZWZ0OiBpZigkbnVtID09IDAsIDAsIHBlcmNlbnRhZ2UoJG51bSkpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbkBtaXhpbiBmbG9hdC1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBmbG9hdC1sZWZ0YCBtaXhpblwiLCBcInY0LjMuMFwiLCBcInY1XCIpO1xufVxuQG1peGluIGZsb2F0LXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgZmxvYXQtcmlnaHRgIG1peGluXCIsIFwidjQuMy4wXCIsIFwidjVcIik7XG59XG5AbWl4aW4gZmxvYXQtbm9uZSB7XG4gIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgZmxvYXQtbm9uZWAgbWl4aW5cIiwgXCJ2NC4zLjBcIiwgXCJ2NVwiKTtcbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUNrRUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUF1REU7QUN6SEY7a0VBQ2tFO0FGV2xFLEFBQUEsY0FBYztBQUNkLGNBQWMsQUFBQSxJQUFJLEFBQUEsT0FBTyxDQUFDO0VBQ3hCLE9BQU8sRUFBRSxJQUFJLEdBQ2Q7O0FBQ0QsQUFBQSxjQUFjLENBQUM7RUFNYixnQkFBZ0IsRUFBRSxPQUFPLEdBdTFCMUI7RUE3MUJELEFBRUUsY0FGWSxDQUVaLHlCQUF5QixDQUFDO0lBQ3hCLFVBQVUsRUFBRSxLQUFLLEdBQ2xCO0VRd0NDLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtJUjVDN0IsQUFPRSxjQVBZLENBT1osZUFBZSxDQUFDO01BRVosU0FB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 */
