/*-- this is for webpage restae page desigm --*/
* {
  margin: 0;
  padding: 0;
  outline: 0;
  font-family: "Inter", sans-serif; }

ul {
  margin: 0;
  padding: 0;
  font-family: "Inter", sans-serif; }
  ul li {
    margin: 0;
    padding: 0;
    list-style: none;
    font-family: "Inter", sans-serif; }

a {
  text-decoration: none;
  color: #000000;
  transition: 0.4s;
  font-family: "Inter", sans-serif; }

a:hover {
  text-decoration: none;
  color: #000000; }

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  padding: 0;
  font-family: "Inter", sans-serif;
  color: #000000; }

body {
  position: relative;
  font-family: "Inter", sans-serif; }

p {
  margin: 0;
  padding: 0;
  color: #666666;
  font-family: "Inter", sans-serif; }

.text-muted {
  color: #B8B8B8 !important; }

.btn {
  height: 49px;
  border-radius: 8px;
  font-weight: 600;
  font-size: 16px !important;
  font-family: "Inter", system-ui;
  transition: 0.3s;
  padding-left: 20px;
  padding-right: 20px;
  display: inline-flex;
  align-items: center;
  column-gap: 10px; }

.btn-primary {
  background-color: #262D7D;
  border-color: #262D7D; }
  .btn-primary:hover, .btn-primary:focus, .btn-primary:active {
    background-color: #262D7D !important;
    border-color: #262D7D !important; }

.btn-warning {
  background-color: #F3CA00;
  border-color: #F3CA00;
  color: #262D7D; }
  .btn-warning:hover, .btn-warning:focus, .btn-warning:active {
    background-color: #F3CA00;
    border-color: #F3CA00;
    color: #262D7D; }

.split-line {
  overflow: hidden; }

.split-parent {
  overflow: hidden; }

.quote {
  overflow: hidden; }

@media (min-width: 1200px) {
  .container,
  .container-lg,
  .container-md,
  .container-sm,
  .container-xl,
  .container-xxl {
    max-width: 95%; } }

@media (min-width: 1400px) {
  .container,
  .container-lg,
  .container-md,
  .container-sm,
  .container-xl,
  .container-xxl {
    max-width: 1384px; } }

.sectionTitle {
  text-align: center;
  max-width: 820px;
  margin: 0 auto; }
  .sectionTitle h4 {
    color: #B8B8B8;
    font-size: 20px;
    text-transform: uppercase;
    font-weight: 500;
    overflow: hidden;
    letter-spacing: 3.4px; }
  .sectionTitle h3 {
    font-weight: 700;
    font-size: 38px;
    margin-top: 18px;
    overflow: hidden; }
  .sectionTitle p {
    font-size: 20px;
    font-weight: 200;
    margin-top: 20px;
    overflow: hidden; }

.AppHeader {
  padding: 20px 0px;
  transition: all .4s;
  background-color: #fff;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 999999999; }
  .AppHeader .logoBox img {
    height: 70px; }
  .AppHeader .rightContent {
    display: flex;
    justify-content: end;
    align-items: center; }
    .AppHeader .rightContent .nav ul li {
      display: inline-block;
      margin-left: 22px; }
      .AppHeader .rightContent .nav ul li .searchButton i {
        font-size: 17px;
        color: #000000; }
      .AppHeader .rightContent .nav ul li a {
        font-size: 16px;
        color: #000000;
        padding: 0px 10px; }
        .AppHeader .rightContent .nav ul li a:hover {
          color: #888888; }
        .AppHeader .rightContent .nav ul li a.active {
          color: #888888; }
      .AppHeader .rightContent .nav ul li .loginButton {
        color: #fff;
        width: 118px;
        text-align: center;
        justify-content: center;
        border: 1px solid #000000; }
        .AppHeader .rightContent .nav ul li .loginButton:hover {
          background-color: #F3CA00 !important;
          border-color: #F3CA00 !important;
          color: #262D7D; }

.header--scrolled {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  background-color: #fff;
  z-index: 999999999;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);
  padding-top: 10px; }

.mobileHeader {
  padding: 13px 0px;
  display: none;
  transition: all .4s;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  background-color: #fff;
  z-index: 999999999; }
  .mobileHeader .mobileLogo img {
    height: 50px; }
  .mobileHeader .rightMenuContent {
    display: flex;
    justify-content: end;
    align-items: center;
    column-gap: 3px; }
  .mobileHeader .toggleMobile {
    text-align: end; }
    .mobileHeader .toggleMobile button {
      height: 40px;
      width: 40px;
      background-color: transparent;
      border: none;
      outline: none;
      border-radius: 100%; }

.offcanvas-backdrop.show {
  opacity: .7; }

.mobileOffcanvas {
  max-width: 97%;
  background-color: #262D7D;
  z-index: 999999999999999; }
  .mobileOffcanvas .mobileOverLay {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 70%;
    z-index: -1; }
  .mobileOffcanvas .offcanvas-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 20px; }
    .mobileOffcanvas .offcanvas-header button {
      height: 40px;
      width: 40px;
      border-radius: 100%;
      border: none;
      background-color: transparent;
      font-size: 22px;
      outline: none;
      box-shadow: none; }
      .mobileOffcanvas .offcanvas-header button i {
        color: #ffffff73; }
      .mobileOffcanvas .offcanvas-header button:hover i, .mobileOffcanvas .offcanvas-header button:focus i, .mobileOffcanvas .offcanvas-header button:active i {
        color: #fff; }
  .mobileOffcanvas .offcanvas-body {
    padding: 50px 40px;
    display: flex;
    flex-direction: column;
    justify-content: space-between; }
    .mobileOffcanvas .offcanvas-body .nav {
      flex: 1;
      width: 100%; }
      .mobileOffcanvas .offcanvas-body .nav ul {
        width: 100%; }
        .mobileOffcanvas .offcanvas-body .nav ul li {
          display: block;
          margin-bottom: 20px; }
          .mobileOffcanvas .offcanvas-body .nav ul li a {
            display: block;
            color: #fff;
            padding: 5px 0px;
            font-size: 18px;
            font-weight: 300; }
          .mobileOffcanvas .offcanvas-body .nav ul li .loginButton {
            background-color: #F3CA00;
            width: 100%;
            align-items: center;
            display: flex;
            justify-content: center;
            margin-top: 50px;
            color: #000000;
            font-weight: 600;
            font-size: 16px; }
            .mobileOffcanvas .offcanvas-body .nav ul li .loginButton:hover {
              background-color: #fff !important;
              opacity: 1; }
    .mobileOffcanvas .offcanvas-body .bottomSocial button {
      border: none;
      outline: none;
      box-shadow: none;
      background-color: transparent; }

.searchCanvas {
  z-index: 999999999999999;
  padding: 0px 40px;
  min-height: 380px; }
  .searchCanvas .offcanvas-header {
    padding-top: 10px;
    padding-bottom: 0px;
    display: flex;
    justify-content: end; }
    .searchCanvas .offcanvas-header img {
      display: none; }
    .searchCanvas .offcanvas-header button {
      height: 40px;
      width: 40px;
      border-radius: 100%;
      border: none;
      background-color: transparent;
      font-size: 22px;
      outline: none;
      box-shadow: none; }
  .searchCanvas .offcanvas-body {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0; }
    .searchCanvas .offcanvas-body h3 {
      font-weight: 500;
      text-align: center;
      color: #000000;
      font-size: 38px; }
    .searchCanvas .offcanvas-body .searchForm {
      margin-top: 20px; }
      .searchCanvas .offcanvas-body .searchForm .input-group {
        border-bottom: 1px solid #e5e5e5; }
        .searchCanvas .offcanvas-body .searchForm .input-group .form-control {
          border: none;
          border-radius: 0px;
          padding-left: 0px;
          padding-right: 0px;
          outline: none;
          box-shadow: none;
          font-weight: 400;
          color: #000000;
          font-size: 15px; }
        .searchCanvas .offcanvas-body .searchForm .input-group .btn {
          padding-right: 0px;
          outline: none;
          border: none; }
          .searchCanvas .offcanvas-body .searchForm .input-group .btn i {
            font-size: 17px;
            color: #000000; }
          .searchCanvas .offcanvas-body .searchForm .input-group .btn:focus, .searchCanvas .offcanvas-body .searchForm .input-group .btn:active {
            outline: none;
            box-shadow: none; }

.heroBanner {
  padding-top: 110px; }
  .heroBanner .bannerWrapper {
    min-height: 506px;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    border-radius: 20px;
    padding: 0px 70px;
    display: flex;
    align-items: center;
    background-image: url("../img/hero.png"); }
    .heroBanner .bannerWrapper .bannerOverLay {
      display: none; }
    .heroBanner .bannerWrapper .content h4 {
      font-size: 27px;
      margin-bottom: 13px;
      overflow: hidden; }
    .heroBanner .bannerWrapper .content h2 {
      font-weight: 700;
      font-size: 50px;
      margin-bottom: 20px;
      overflow: hidden; }
    .heroBanner .bannerWrapper .content p {
      max-width: 520px;
      font-size: 20px;
      color: #000000;
      overflow: hidden; }
    .heroBanner .bannerWrapper .content .btn {
      margin-top: 45px;
      min-width: 153px;
      justify-content: center; }
      .heroBanner .bannerWrapper .content .btn:hover {
        background-color: #F3CA00 !important;
        border-color: #F3CA00 !important;
        color: #262D7D; }

.aboutUsSection {
  padding: 96px 0px 100px 0px; }
  .aboutUsSection .aboutContent {
    margin-top: 42px; }
    .aboutUsSection .aboutContent .aboutItem {
      background-color: #F4F4F8;
      padding: 39px 43px;
      text-align: center;
      border-radius: 11px;
      transition: 0.4s;
      cursor: pointer;
      height: 100%; }
      .aboutUsSection .aboutContent .aboutItem .icon {
        height: 70px;
        width: 70px;
        background-color: #262D7D;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 70px;
        margin: 0 auto;
        transition: 0.4s; }
        .aboutUsSection .aboutContent .aboutItem .icon svg path {
          transition: 0.4s; }
      .aboutUsSection .aboutContent .aboutItem .content {
        margin-top: 25px; }
        .aboutUsSection .aboutContent .aboutItem .content h3 {
          font-weight: 700;
          font-size: 20px;
          margin-bottom: 6px; }
        .aboutUsSection .aboutContent .aboutItem .content p {
          font-size: 14px;
          color: #000000;
          font-weight: 300;
          line-height: 22px; }
      .aboutUsSection .aboutContent .aboutItem:hover {
        background-color: #262D7D; }
        .aboutUsSection .aboutContent .aboutItem:hover .icon {
          background-color: #F3CA00; }
          .aboutUsSection .aboutContent .aboutItem:hover .icon svg path {
            stroke: #000000; }
        .aboutUsSection .aboutContent .aboutItem:hover .fill svg path {
          stroke: #000000;
          fill: #000000; }
        .aboutUsSection .aboutContent .aboutItem:hover .content h3 {
          color: #FFFFFF; }
        .aboutUsSection .aboutContent .aboutItem:hover .content p {
          color: #ffffffbd; }

.howWorkSection {
  padding-bottom: 113px; }
  .howWorkSection .howWorkContent {
    margin-top: 40px; }
    .howWorkSection .howWorkContent .singleItem {
      position: relative; }
      .howWorkSection .howWorkContent .singleItem .arrow1 {
        position: absolute;
        top: 12%;
        left: -17%;
        width: 107px; }
      .howWorkSection .howWorkContent .singleItem .arrow2 {
        position: absolute;
        top: 12%;
        left: -17%;
        width: 107px; }
      .howWorkSection .howWorkContent .singleItem .imageBox {
        height: 155px;
        width: 155px;
        position: relative;
        margin: 0 auto; }
        .howWorkSection .howWorkContent .singleItem .imageBox img {
          border-radius: 100%; }
        .howWorkSection .howWorkContent .singleItem .imageBox .count {
          height: 56px;
          width: 56px;
          background-color: #F3CA00;
          border-radius: 100%;
          display: flex;
          justify-content: center;
          align-items: center;
          position: absolute;
          bottom: 0;
          left: 0; }
          .howWorkSection .howWorkContent .singleItem .imageBox .count h4 {
            font-weight: 700;
            font-size: 20px;
            color: #262D7D; }
      .howWorkSection .howWorkContent .singleItem .content {
        margin-top: 50px;
        text-align: center; }
        .howWorkSection .howWorkContent .singleItem .content h4 {
          font-weight: 700;
          font-size: 24px; }
        .howWorkSection .howWorkContent .singleItem .content p {
          font-size: 18px;
          font-weight: 300;
          max-width: 317px;
          margin: 0 auto;
          margin-top: 12px; }

.featureSection {
  padding-bottom: 100px; }
  .featureSection .featuresWrapper {
    margin-top: 40px; }
    .featureSection .featuresWrapper .singleItem {
      border: 2px solid #EDEDED;
      border-radius: 20px;
      text-align: center;
      padding: 0px 25px 0px 25px;
      min-height: 326px;
      display: flex;
      justify-content: center;
      align-items: center;
      flex-direction: column;
      position: relative;
      transition: all 0.3s;
      overflow: hidden;
      margin-bottom: 24px;
      cursor: pointer; }
      .featureSection .featuresWrapper .singleItem .content {
        transition: 0.5s; }
        .featureSection .featuresWrapper .singleItem .content .icon {
          height: 71px;
          width: 71px;
          background-color: #262D7D;
          border-radius: 100%;
          margin: 0 auto;
          display: flex;
          justify-content: center;
          align-items: center; }
        .featureSection .featuresWrapper .singleItem .content h3 {
          font-weight: 700;
          font-size: 22px;
          margin-top: 32px;
          transition: 0.3s; }
      .featureSection .featuresWrapper .singleItem .content2 {
        position: absolute;
        bottom: 30px;
        display: flex;
        padding: 0px 20px; }
        .featureSection .featuresWrapper .singleItem .content2 p {
          transform: translateY(20px);
          transition: 0.5s;
          opacity: 0;
          font-size: 16px;
          color: #000000;
          font-weight: 300; }
      .featureSection .featuresWrapper .singleItem:hover {
        background-color: #F3CA00;
        border-color: #F3CA00; }
        .featureSection .featuresWrapper .singleItem:hover .content {
          transform: translateY(-40px); }
          .featureSection .featuresWrapper .singleItem:hover .content h3 {
            margin-top: 15px; }
        .featureSection .featuresWrapper .singleItem:hover .content2 p {
          transform: translateY(0px);
          opacity: 1;
          transition-delay: 0.2s; }
    .featureSection .featuresWrapper .imageBoxFull {
      border-radius: 15px;
      overflow: hidden;
      min-height: 326px; }
      .featureSection .featuresWrapper .imageBoxFull img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        min-height: 326px; }

.productGallery {
  padding-bottom: 100px; }
  .productGallery .topTitle {
    text-align: center; }
    .productGallery .topTitle h3 {
      font-weight: 700;
      font-size: 38px; }
  .productGallery .galleryWrapper {
    margin-top: 40px; }
    .productGallery .galleryWrapper .gallerySlider .singleItem {
      border-radius: 10px; }
      .productGallery .galleryWrapper .gallerySlider .singleItem img {
        width: 100%;
        height: 100%;
        border-radius: 10px; }
    .productGallery .galleryWrapper .slick-slide {
      padding: 0 35px; }

.contactSection {
  padding-bottom: 100px; }
  .contactSection .contactWrapper {
    margin-top: 46px; }
    .contactSection .contactWrapper .leftInfo .top h3 {
      font-weight: 700;
      font-size: 28px;
      margin-bottom: 30px; }
    .contactSection .contactWrapper .leftInfo .top p {
      font-size: 18px;
      font-weight: 300;
      margin-bottom: 20px;
      max-width: 492px;
      line-height: 26px; }
      .contactSection .contactWrapper .leftInfo .top p:last-child {
        margin-bottom: 0px; }
    .contactSection .contactWrapper .leftInfo .bottom {
      margin-top: 42px; }
      .contactSection .contactWrapper .leftInfo .bottom h5 {
        font-weight: 700;
        font-size: 18px; }
      .contactSection .contactWrapper .leftInfo .bottom p {
        font-weight: 300;
        font-size: 18px;
        margin-top: 8px; }
    .contactSection .contactWrapper .formBox {
      border: 2px solid #EDEDED;
      padding: 50px 59px;
      border-radius: 20px; }
      .contactSection .contactWrapper .formBox .form-floating {
        margin-bottom: 41px; }
      .contactSection .contactWrapper .formBox .form-control {
        padding-left: 0px;
        font-weight: 600;
        font-size: 16px;
        color: #000000;
        border: none;
        outline: none;
        border-radius: 0px;
        border-bottom: 2px solid #EDEDED;
        resize: none; }
        .contactSection .contactWrapper .formBox .form-control:focus {
          box-shadow: none; }
      .contactSection .contactWrapper .formBox label {
        padding-left: 0px;
        font-weight: 500;
        font-size: 15px;
        color: #000000; }
      .contactSection .contactWrapper .formBox .form-floating > .form-control-plaintext ~ label,
      .contactSection .contactWrapper .formBox .form-floating > .form-control:focus ~ label,
      .contactSection .contactWrapper .formBox .form-floating > .form-control:not(:placeholder-shown) ~ label,
      .contactSection .contactWrapper .formBox .form-floating > .form-select ~ label {
        transform: scale(0.85) translateY(-1.3rem) translateX(0rem);
        color: #999999;
        opacity: 1;
        font-size: 16px; }
      .contactSection .contactWrapper .formBox .submitButton {
        width: 154px;
        justify-content: center;
        font-size: 16px !important; }
        .contactSection .contactWrapper .formBox .submitButton .loading {
          display: none; }
        .contactSection .contactWrapper .formBox .submitButton i {
          display: none; }
        .contactSection .contactWrapper .formBox .submitButton.sending {
          opacity: 0.7;
          pointer-events: none; }
          .contactSection .contactWrapper .formBox .submitButton.sending i {
            display: block; }
          .contactSection .contactWrapper .formBox .submitButton.sending .default {
            display: none; }
          .contactSection .contactWrapper .formBox .submitButton.sending .loading {
            display: block; }
      .contactSection .contactWrapper .formBox .feedbackMessage {
        text-align: center;
        margin-top: 15px; }
        .contactSection .contactWrapper .formBox .feedbackMessage h4 {
          font-weight: 600;
          font-size: 20px; }
        .contactSection .contactWrapper .formBox .feedbackMessage.success h4 {
          color: green; }
        .contactSection .contactWrapper .formBox .feedbackMessage.error h4 {
          color: red; }

.ctaBox {
  padding-bottom: 100px; }
  .ctaBox .ctaWrapper {
    min-height: 366px;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    border-radius: 20px;
    position: relative;
    z-index: 1;
    padding: 50px 60px;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center; }
    .ctaBox .ctaWrapper .ctaOverlay {
      position: absolute;
      height: 100%;
      width: 100%;
      top: 0;
      left: 0;
      z-index: -1;
      border-radius: 20px; }
    .ctaBox .ctaWrapper .content h5 {
      color: #fff;
      font-size: 24px;
      margin-bottom: 16px; }
    .ctaBox .ctaWrapper .content h3 {
      color: #fff;
      font-size: 38px;
      font-weight: 700;
      margin-bottom: 56px; }
    .ctaBox .ctaWrapper .content .btn {
      min-width: 153px;
      justify-content: center; }
      .ctaBox .ctaWrapper .content .btn:hover {
        border-color: #fff;
        background-color: #fff;
        color: #262D7D; }

.footerTop {
  padding-bottom: 80px; }
  .footerTop .footerLogo img {
    height: 70px; }
  .footerTop .footerLink nav ul li {
    display: inline-block;
    margin: 0px 27px; }
    .footerTop .footerLink nav ul li a {
      display: block;
      font-size: 16px;
      color: #000000; }
      .footerTop .footerLink nav ul li a:hover, .footerTop .footerLink nav ul li a:focus, .footerTop .footerLink nav ul li a:active {
        color: #888888; }
  .footerTop .socialBox ul li {
    display: inline-block; }
    .footerTop .socialBox ul li a {
      height: 36px;
      width: 36px;
      background-color: #F4F4F8;
      display: flex;
      align-items: center;
      justify-content: center;
      color: #000000;
      border-radius: 8px; }
      .footerTop .socialBox ul li a i {
        font-size: 20px; }
      .footerTop .socialBox ul li a:hover {
        background-color: #262D7D;
        color: #fff; }

.copyrightInfo .content {
  border-top: 1px solid #666666;
  padding: 32px 0px;
  text-align: center; }
  .copyrightInfo .content p {
    color: #666666;
    font-size: 16px; }
    .copyrightInfo .content p a {
      color: #666666; }
      .copyrightInfo .content p a:hover {
        color: #262D7D;
        text-decoration: underline; }

@media (max-width: 1399px) {
  .aboutUsSection .aboutContent .aboutItem {
    margin-bottom: 15px;
    height: auto;
    min-height: 269px; } }

@media (max-width: 991px) {
  .container,
  .container-md,
  .container-sm {
    max-width: 97%; } }

@media (min-width: 992px) and (max-width: 1199px) {
  .heroBanner .bannerWrapper {
    padding: 0px 50px; }
  .heroBanner .bannerWrapper .content h4 {
    font-size: 22px; }
  .heroBanner .bannerWrapper .content h2 {
    font-size: 40px; }
  .heroBanner .bannerWrapper .content p {
    font-size: 18px; }
  .aboutUsSection {
    padding: 70px 0px 70px 0px; }
  .howWorkSection {
    padding-bottom: 70px; }
  .featureSection {
    padding-bottom: 70px; }
  .productGallery {
    padding-bottom: 70px; }
  .contactSection .contactWrapper .formBox {
    padding: 30px 39px; }
  .contactSection {
    padding-bottom: 70px; }
  .ctaBox {
    padding-bottom: 50px; }
  .footerTop {
    padding-bottom: 40px; } }

@media (min-width: 768px) and (max-width: 991px) {
  .sectionTitle h4 {
    font-size: 15px; }
  .sectionTitle h3 {
    font-size: 27px; }
  .sectionTitle p {
    font-size: 16px;
    margin-top: 13px; }
  .mobileHeader .mobileLogo img {
    height: 60px; }
  .heroBanner .bannerWrapper {
    padding: 0px 50px; }
  .heroBanner .bannerWrapper .content h4 {
    font-size: 22px; }
  .heroBanner .bannerWrapper .content h2 {
    font-size: 40px; }
  .heroBanner .bannerWrapper .content p {
    font-size: 18px; }
  .aboutUsSection {
    padding: 50px 0px 50px 0px; }
  .aboutUsSection .aboutContent .aboutItem {
    margin-bottom: 15px;
    height: auto;
    min-height: 306px; }
  .howWorkSection {
    padding-bottom: 50px; }
  .howWorkSection .howWorkContent .singleItem .imageBox {
    height: 105px;
    width: 105px;
    position: relative;
    margin: 0 auto; }
  .howWorkSection .howWorkContent .singleItem .imageBox .count {
    height: 40px;
    width: 40px; }
  .howWorkSection .howWorkContent .singleItem .imageBox .count h4 {
    font-size: 15px; }
  .howWorkSection .howWorkContent .singleItem .arrow1 {
    position: absolute;
    top: 10%;
    left: -21%;
    width: 82px; }
  .howWorkSection .howWorkContent .singleItem .arrow2 {
    width: 82px; }
  .howWorkSection .howWorkContent .singleItem .content p {
    font-size: 16px; }
  .featureSection {
    padding-bottom: 50px; }
  .featureSection .featuresWrapper .singleItem .content h3 {
    font-size: 18px; }
  .productGallery {
    padding-bottom: 70px; }
  .productGallery .galleryWrapper .slick-slide {
    padding: 0 20px; }
  .contactSection .contactWrapper .formBox {
    padding: 30px 39px; }
  .contactSection {
    padding-bottom: 50px; }
  .contactSection .contactWrapper .formBox {
    margin-top: 40px; }
  .contactSection .contactWrapper .leftInfo .top p {
    max-width: 100%; }
  .ctaBox {
    padding-bottom: 30px; }
  .footerTop {
    padding-bottom: 40px; }
  .footerTop .footerLink {
    text-align: left; }
  .footerLogo {
    text-align: center;
    margin-bottom: 40px; }
  .copyrightInfo .content p {
    font-size: 14px; } }

@media (min-width: 576px) and (max-width: 767px) {
  .sectionTitle h4 {
    font-size: 15px; }
  .sectionTitle h3 {
    font-size: 27px; }
  .sectionTitle p {
    font-size: 16px;
    margin-top: 13px; }
  .heroBanner .bannerWrapper {
    padding: 0px 30px;
    position: relative;
    z-index: 1; }
    .heroBanner .bannerWrapper::after {
      height: 100%;
      width: 100%;
      content: "";
      top: 0;
      left: 0;
      position: absolute;
      background-color: #ffffffad;
      z-index: -1;
      border-radius: 20px; }
  .heroBanner .bannerWrapper .content h4 {
    font-size: 22px; }
  .heroBanner .bannerWrapper .content h2 {
    font-size: 40px; }
  .heroBanner .bannerWrapper .content p {
    font-size: 18px; }
  .aboutUsSection {
    padding: 50px 0px 50px 0px; }
  .aboutUsSection .aboutContent .aboutItem {
    margin-bottom: 15px;
    height: auto;
    min-height: 306px; }
  .howWorkSection {
    padding-bottom: 50px; }
  .howWorkSection .howWorkContent .singleItem .imageBox {
    height: 155px;
    width: 155px;
    position: relative;
    margin: 0 auto; }
  .howWorkSection .howWorkContent .singleItem .imageBox .count {
    height: 56px;
    width: 56px; }
  .howWorkSection .howWorkContent .singleItem .imageBox .count h4 {
    font-size: 20px; }
  .howWorkSection .howWorkContent .singleItem {
    margin-bottom: 30px; }
  .howWorkSection .howWorkContent .singleItem .content {
    margin-top: 30px; }
  .howWorkSection .howWorkContent .singleItem .arrow1 {
    display: none; }
  .howWorkSection .howWorkContent .singleItem .arrow2 {
    display: none; }
  .howWorkSection .howWorkContent .singleItem .content p {
    font-size: 16px; }
  .featureSection {
    padding-bottom: 50px; }
  .featureSection .featuresWrapper .singleItem .content h3 {
    font-size: 18px; }
  .productGallery {
    padding-bottom: 70px; }
  .productGallery .galleryWrapper .slick-slide {
    padding: 0 10px; }
  .contactSection .contactWrapper .formBox {
    padding: 30px 39px; }
  .contactSection {
    padding-bottom: 50px; }
  .contactSection .contactWrapper .formBox {
    margin-top: 40px; }
  .contactSection .contactWrapper .leftInfo .top p {
    max-width: 100%; }
  .ctaBox {
    padding-bottom: 30px; }
  .footerTop {
    padding-bottom: 30px; }
  .footerTop .footerLink {
    text-align: center;
    margin-bottom: 20px; }
  .footerLogo {
    text-align: center;
    margin-bottom: 20px; }
  .footerTop .socialBox {
    text-align: center !important; }
  .copyrightInfo .content p {
    font-size: 13px; }
  .copyrightInfo .content {
    padding: 20px 0px; }
  .ctaBox .ctaWrapper {
    padding: 30px 30px;
    overflow: hidden; } }

@media (max-width: 991px) {
  .AppHeader {
    display: none; }
  .mobileHeader {
    display: block; }
  .heroBanner {
    padding-top: 86px; }
  .searchCanvas {
    background-color: #262D7D;
    padding: 0px 0px;
    min-height: inherit; }
    .searchCanvas .offcanvas-header {
      justify-content: space-between; }
      .searchCanvas .offcanvas-header img {
        display: block;
        height: 55px; }
      .searchCanvas .offcanvas-header button i {
        color: #ffffff73; }
      .searchCanvas .offcanvas-header button:hover i {
        color: #fff; }
    .searchCanvas .offcanvas-body h3 {
      color: #fff;
      font-size: 18px;
      font-weight: 300; }
    .searchCanvas .offcanvas-body .searchForm {
      margin-top: 20px; }
      .searchCanvas .offcanvas-body .searchForm .input-group {
        border-bottom: 1px solid #ffffff73; }
        .searchCanvas .offcanvas-body .searchForm .input-group .form-control {
          background-color: transparent;
          font-weight: 400;
          color: #fff;
          font-size: 13px; }
        .searchCanvas .offcanvas-body .searchForm .input-group ::placeholder {
          color: #ffffffa4; }
        .searchCanvas .offcanvas-body .searchForm .input-group .btn i {
          color: #ffffff73;
          font-size: 16px; }
        .searchCanvas .offcanvas-body .searchForm .input-group .btn:focus i, .searchCanvas .offcanvas-body .searchForm .input-group .btn:hover i, .searchCanvas .offcanvas-body .searchForm .input-group .btn:active i {
          color: #fff; } }

@media (max-width: 575px) {
  .heroBanner .bannerWrapper {
    background-position: 22%;
    position: relative;
    z-index: 1;
    padding: 20px;
    align-items: flex-start;
    min-height: 690px;
    padding-top: 33px;
    padding-left: 24px;
    background-image: url("../img/mobile-banner.png");
    z-index: 1; }
    .heroBanner .bannerWrapper .bannerOverLay {
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      z-index: -1; }
    .heroBanner .bannerWrapper .content h4 {
      font-size: 22px;
      margin-bottom: 13px; }
    .heroBanner .bannerWrapper .content h2 {
      font-size: 41px;
      margin-bottom: 10px;
      font-weight: 700; }
    .heroBanner .bannerWrapper .content p {
      font-size: 16px;
      max-width: 111px; }
  .sectionTitle h4 {
    font-size: 15px; }
  .aboutUsSection {
    padding: 40px 0px; }
  .sectionTitle h3 {
    font-size: 26px;
    margin-top: 10px; }
  .sectionTitle p {
    font-size: 15px;
    margin-top: 12px; }
  .aboutUsSection .aboutContent {
    margin-top: 20px; }
  .howWorkSection .howWorkContent .singleItem {
    margin-bottom: 30px; }
  .howWorkSection .howWorkContent .singleItem .content {
    margin-top: 30px; }
  .howWorkSection .howWorkContent .singleItem .arrow1 {
    display: none; }
  .howWorkSection .howWorkContent .singleItem .arrow2 {
    display: none; }
  .howWorkSection {
    padding-bottom: 20px; }
  .featureSection .featuresWrapper .singleItem {
    margin-bottom: 15px; }
  .featureSection .featuresWrapper .singleItem .content h3 {
    font-size: 20px;
    margin-top: 20px; }
  .featureSection {
    padding-bottom: 40px; }
  .productGallery .galleryWrapper .slick-slide {
    padding: 0px 10px 0px 0px; }
  .productGallery .galleryWrapper .gallerySlider .singleItem img {
    min-height: 250px;
    object-fit: cover; }
  .productGallery {
    padding-bottom: 40px; }
  .contactSection .contactWrapper .leftInfo .top h3 {
    font-size: 19px;
    margin-bottom: 17px; }
  .contactSection .contactWrapper .leftInfo .top p {
    font-size: 14px;
    margin-bottom: 12px;
    line-height: 23px; }
  .contactSection .contactWrapper .leftInfo .bottom {
    margin-top: 28px; }
  .contactSection .contactWrapper .leftInfo .bottom h5 {
    font-size: 15px; }
  .contactSection .contactWrapper .leftInfo .bottom p {
    font-size: 15px;
    margin-top: 5px; }
  .contactSection .contactWrapper .formBox {
    margin-top: 30px;
    padding: 20px; }
  .contactSection .contactWrapper .formBox .form-control {
    font-size: 14px; }
  .contactSection .contactWrapper .formBox .form-floating > .form-control-plaintext ~ label,
  .contactSection .contactWrapper .formBox .form-floating > .form-control:focus ~ label,
  .contactSection .contactWrapper .formBox .form-floating > .form-control:not(:placeholder-shown) ~ label,
  .contactSection .contactWrapper .formBox .form-floating > .form-select ~ label {
    transform: scale(0.85) translateY(-1rem) translateX(0rem);
    font-size: 14px; }
  .contactSection .contactWrapper .formBox .submitButton {
    width: 100%;
    margin-top: -15px; }
  .contactSection {
    padding-bottom: 20px; }
  .ctaBox .ctaWrapper {
    padding: 30px 20px; }
  .ctaBox .ctaWrapper .content h5 {
    font-size: 19px;
    margin-bottom: 11px; }
  .ctaBox .ctaWrapper .content h3 {
    font-size: 22px;
    margin-bottom: 30px; }
  .ctaBox .ctaWrapper .content .btn {
    width: 100%; }
  .ctaBox {
    padding-bottom: 30px; }
  .footerTop .footerLogo {
    text-align: center;
    margin-bottom: 20px; }
  .footerTop .footerLink {
    text-align: center; }
  .footerTop .footerLink nav ul li {
    display: block;
    margin: 10px 0px;
    margin-bottom: 20px; }
  .footerTop .socialBox {
    text-align: center !important;
    margin-top: 10px; }
  .footerTop {
    padding-bottom: 25px; }
  .copyrightInfo .content {
    padding: 15px 0px; }
  .copyrightInfo .content p {
    font-size: 14px; } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUuY3NzIiwic291cmNlcyI6WyJzdHlsZS5zY3NzIiwiaW1wb3J0L3Jlc2V0LnNjc3MiLCJpbXBvcnQvX2NvbG9yLnNjc3MiLCJpbXBvcnQvX191dGlscy5zY3NzIiwiX19yZXNwb25zaXZlLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiQGltcG9ydCAnaW1wb3J0L3Jlc2V0LnNjc3MnO1xyXG5AaW1wb3J0ICdpbXBvcnQvX2NvbG9yLnNjc3MnO1xyXG5AaW1wb3J0ICdpbXBvcnQvX3V0aWxzJztcclxuXHJcbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcclxuXHJcbiAgICAuY29udGFpbmVyLFxyXG4gICAgLmNvbnRhaW5lci1sZyxcclxuICAgIC5jb250YWluZXItbWQsXHJcbiAgICAuY29udGFpbmVyLXNtLFxyXG4gICAgLmNvbnRhaW5lci14bCxcclxuICAgIC5jb250YWluZXIteHhsIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDk1JTtcclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhIChtaW4td2lkdGg6IDE0MDBweCkge1xyXG5cclxuICAgIC5jb250YWluZXIsXHJcbiAgICAuY29udGFpbmVyLWxnLFxyXG4gICAgLmNvbnRhaW5lci1tZCxcclxuICAgIC5jb250YWluZXItc20sXHJcbiAgICAuY29udGFpbmVyLXhsLFxyXG4gICAgLmNvbnRhaW5lci14eGwge1xyXG4gICAgICAgIG1heC13aWR0aDogMTM4NHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuXHJcbi8vIHNlY3Rpb25UaXRsZVxyXG4uc2VjdGlvblRpdGxlIHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIG1heC13aWR0aDogODIwcHg7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuXHJcbiAgICBoNCB7XHJcbiAgICAgICAgY29sb3I6ICNCOEI4Qjg7XHJcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAzLjRweDtcclxuICAgIH1cclxuXHJcbiAgICBoMyB7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICBmb250LXNpemU6IDM4cHg7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMThweDtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgfVxyXG5cclxuICAgIHAge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICBmb250LXdlaWdodDogMjAwO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIH1cclxufVxyXG5cclxuLy8gQXBwSGVhZGVyXHJcbi5BcHBIZWFkZXIge1xyXG4gICAgcGFkZGluZzogMjBweCAwcHg7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjRzO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIHotaW5kZXg6IDk5OTk5OTk5OTtcclxuXHJcbiAgICAubG9nb0JveCB7XHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiA3MHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAucmlnaHRDb250ZW50IHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogZW5kO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgICAgIC5uYXYge1xyXG4gICAgICAgICAgICB1bCB7XHJcbiAgICAgICAgICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMnB4O1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAuc2VhcmNoQnV0dG9uIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE3cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHRpdGxlQ29sb3I7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdGl0bGVDb2xvcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMHB4IDEwcHg7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjODg4ODg4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzg4ODg4ODtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgLmxvZ2luQnV0dG9uIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMThweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHRpdGxlQ29sb3I7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3cgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJHllbGxvdyAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRicmFuZENvbG9yO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uaGVhZGVyLS1zY3JvbGxlZCB7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gICAgei1pbmRleDogOTk5OTk5OTk5O1xyXG4gICAgYm94LXNoYWRvdzogMHB4IDBweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcclxuICAgIHBhZGRpbmctdG9wOiAxMHB4O1xyXG59XHJcblxyXG4vLyBtb2JpbGVIZWFkZXJcclxuLm1vYmlsZUhlYWRlciB7XHJcbiAgICBwYWRkaW5nOiAxM3B4IDBweDtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjRzO1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICAgIHotaW5kZXg6IDk5OTk5OTk5OTtcclxuXHJcbiAgICAubW9iaWxlTG9nbyB7XHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiA1MHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAucmlnaHRNZW51Q29udGVudCB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGVuZDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGNvbHVtbi1nYXA6IDNweDtcclxuICAgIH1cclxuXHJcbiAgICAudG9nZ2xlTW9iaWxlIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBlbmQ7XHJcblxyXG4gICAgICAgIGJ1dHRvbiB7XHJcbiAgICAgICAgICAgIGhlaWdodDogNDBweDtcclxuICAgICAgICAgICAgd2lkdGg6IDQwcHg7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ub2ZmY2FudmFzLWJhY2tkcm9wLnNob3cge1xyXG4gICAgb3BhY2l0eTogLjc7XHJcbn1cclxuXHJcbi8vIG9mZmNhbnZhc1xyXG4ubW9iaWxlT2ZmY2FudmFzIHtcclxuICAgIG1heC13aWR0aDogOTclO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kQ29sb3I7XHJcbiAgICB6LWluZGV4OiA5OTk5OTk5OTk5OTk5OTk7XHJcblxyXG4gICAgLm1vYmlsZU92ZXJMYXkge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgd2lkdGg6IDcwJTtcclxuICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgIH1cclxuXHJcbiAgICAub2ZmY2FudmFzLWhlYWRlciB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XHJcblxyXG4gICAgICAgIGJ1dHRvbiB7XHJcbiAgICAgICAgICAgIGhlaWdodDogNDBweDtcclxuICAgICAgICAgICAgd2lkdGg6IDQwcHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XHJcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcclxuICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcclxuXHJcbiAgICAgICAgICAgIGkge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICNmZmZmZmY3MztcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAgICAgJjpmb2N1cyxcclxuICAgICAgICAgICAgJjphY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5vZmZjYW52YXMtYm9keSB7XHJcblxyXG4gICAgICAgIHBhZGRpbmc6IDUwcHggNDBweDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cclxuICAgICAgICAubmF2IHtcclxuICAgICAgICAgICAgZmxleDogMTtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAgICAgICB1bCB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICAgICAgICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHJcblxyXG4gICAgICAgICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVweCAwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIC5sb2dpbkJ1dHRvbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3c7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNTBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR0aXRsZUNvbG9yO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5ib3R0b21Tb2NpYWwge1xyXG4gICAgICAgICAgICBidXR0b24ge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy8gc2VhcmNoQ2FudmFzXHJcbi5zZWFyY2hDYW52YXMge1xyXG4gICAgei1pbmRleDogOTk5OTk5OTk5OTk5OTk5O1xyXG4gICAgcGFkZGluZzogMHB4IDQwcHg7XHJcbiAgICBtaW4taGVpZ2h0OiAzODBweDtcclxuXHJcbiAgICAub2ZmY2FudmFzLWhlYWRlciB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDEwcHg7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDBweDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogZW5kO1xyXG5cclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgYnV0dG9uIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgICAgICAgICB3aWR0aDogNDBweDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgICAgICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAub2ZmY2FudmFzLWJvZHkge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgICAgICBoMyB7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgY29sb3I6ICR0aXRsZUNvbG9yO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDM4cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc2VhcmNoRm9ybSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcblxyXG4gICAgICAgICAgICAuaW5wdXQtZ3JvdXAge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNWU1ZTU7XHJcblxyXG4gICAgICAgICAgICAgICAgLmZvcm0tY29udHJvbCB7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDBweDtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDBweDtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR0aXRsZUNvbG9yO1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAuYnRuIHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIGkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE3cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdGl0bGVDb2xvcjtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICY6Zm9jdXMsXHJcbiAgICAgICAgICAgICAgICAgICAgJjphY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy8gI2hlYWRlci5maXgge1xyXG4vLyAgICAgcG9zaXRpb246IGZpeGVkO1xyXG4vLyAgICAgdG9wOiAwO1xyXG4vLyAgICAgbGVmdDogMDtcclxuLy8gICAgIHdpZHRoOiAxMDAlO1xyXG4vLyAgICAgYmFja2dyb3VuZDogI2ZmZjtcclxuLy8gICAgIHotaW5kZXg6IDk5OTk5OTk5OTk7XHJcbi8vICAgICBib3gtc2hhZG93OiAwcHggMHB4IDIzcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xyXG4vLyAgICAgcGFkZGluZzogMTVweCAwcHg7XHJcbi8vIH1cclxuXHJcbi8vIGhlcm9CYW5uZXJcclxuLmhlcm9CYW5uZXIge1xyXG4gICAgcGFkZGluZy10b3A6IDExMHB4O1xyXG5cclxuICAgIC5iYW5uZXJXcmFwcGVyIHtcclxuICAgICAgICBtaW4taGVpZ2h0OiA1MDZweDtcclxuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDBweCA3MHB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9oZXJvLnBuZycpO1xyXG5cclxuICAgICAgICAuYmFubmVyT3ZlckxheSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY29udGVudCB7XHJcbiAgICAgICAgICAgIGg0IHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjdweDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEzcHg7XHJcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiA1MHB4O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHAge1xyXG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA1MjBweDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGl0bGVDb2xvcjtcclxuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5idG4ge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNDVweDtcclxuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMTUzcHg7XHJcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHJcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkeWVsbG93ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkeWVsbG93ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRicmFuZENvbG9yO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLyBhYm91dFVzU2VjdGlvblxyXG4uYWJvdXRVc1NlY3Rpb24ge1xyXG4gICAgcGFkZGluZzogOTZweCAwcHggMTAwcHggMHB4O1xyXG5cclxuICAgIC5hYm91dENvbnRlbnQge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDQycHg7XHJcblxyXG4gICAgICAgIC5hYm91dEl0ZW0ge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjRGNEY4O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAzOXB4IDQzcHg7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTFweDtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogMC40cztcclxuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcblxyXG4gICAgICAgICAgICAuaWNvbiB7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDcwcHg7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogNzBweDtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZENvbG9yO1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDcwcHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNHM7XHJcblxyXG4gICAgICAgICAgICAgICAgc3ZnIHtcclxuICAgICAgICAgICAgICAgICAgICBwYXRoIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC40cztcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5jb250ZW50IHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDI1cHg7XHJcblxyXG4gICAgICAgICAgICAgICAgaDMge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDZweDtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICBwIHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR0aXRsZUNvbG9yO1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XHJcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIycHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kQ29sb3I7XHJcblxyXG4gICAgICAgICAgICAgICAgLmljb24ge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3c7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIHN2ZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhdGgge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlOiAkdGl0bGVDb2xvcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAuZmlsbCB7XHJcbiAgICAgICAgICAgICAgICAgICAgc3ZnIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGF0aCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U6ICR0aXRsZUNvbG9yO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogJHRpdGxlQ29sb3I7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgLmNvbnRlbnQge1xyXG4gICAgICAgICAgICAgICAgICAgIGgzIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNGRkZGRkY7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICBwIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmZmZmZiZDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIGhvd1dvcmtTZWN0aW9uXHJcbi5ob3dXb3JrU2VjdGlvbiB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMTEzcHg7XHJcblxyXG4gICAgLmhvd1dvcmtDb250ZW50IHtcclxuICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xyXG5cclxuICAgICAgICAuc2luZ2xlSXRlbSB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgICAgIC5hcnJvdzEge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgdG9wOiAxMiU7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiAtMTclO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwN3B4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuYXJyb3cyIHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIHRvcDogMTIlO1xyXG4gICAgICAgICAgICAgICAgbGVmdDogLTE3JTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDdweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmltYWdlQm94IHtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMTU1cHg7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTU1cHg7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuXHJcbiAgICAgICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgLmNvdW50IHtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDU2cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDU2cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHllbGxvdztcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIGg0IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJyYW5kQ29sb3I7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuY29udGVudCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA1MHB4O1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgICAgICAgICAgICAgIGg0IHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICBwIHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcclxuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDMxN3B4O1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEycHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIGZlYXR1cmVTZWN0aW9uXHJcbi5mZWF0dXJlU2VjdGlvbiB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMTAwcHg7XHJcblxyXG4gICAgLmZlYXR1cmVzV3JhcHBlciB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcclxuXHJcbiAgICAgICAgLnNpbmdsZUl0ZW0ge1xyXG5cclxuICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgI0VERURFRDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwcHggMjVweCAwcHggMjVweDtcclxuICAgICAgICAgICAgbWluLWhlaWdodDogMzI2cHg7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzO1xyXG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNHB4O1xyXG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG4gICAgICAgICAgICAuY29udGVudCB7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjVzO1xyXG5cclxuICAgICAgICAgICAgICAgIC5pY29uIHtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDcxcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDcxcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kQ29sb3I7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgaDMge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDMycHg7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC4zcztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmNvbnRlbnQyIHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIGJvdHRvbTogMzBweDtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwcHggMjBweDtcclxuXHJcbiAgICAgICAgICAgICAgICBwIHtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjBweCk7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cztcclxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHRpdGxlQ29sb3I7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuXHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3c7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICR5ZWxsb3c7XHJcblxyXG4gICAgICAgICAgICAgICAgLmNvbnRlbnQge1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNDBweCk7XHJcbiAgICAgICAgICAgICAgICAgICAgaDN7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIC5jb250ZW50MiB7XHJcbiAgICAgICAgICAgICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjJzO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmltYWdlQm94RnVsbCB7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDE1cHg7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDMyNnB4O1xyXG5cclxuICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAzMjZweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy8gcHJvZHVjdEdhbGxlcnlcclxuLnByb2R1Y3RHYWxsZXJ5IHtcclxuICAgIHBhZGRpbmctYm90dG9tOiAxMDBweDtcclxuXHJcbiAgICAudG9wVGl0bGUge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICAgICAgaDMge1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDM4cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5nYWxsZXJ5V3JhcHBlciB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcclxuXHJcbiAgICAgICAgLmdhbGxlcnlTbGlkZXIge1xyXG4gICAgICAgICAgICAuc2luZ2xlSXRlbSB7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xyXG5cclxuICAgICAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5zbGljay1zbGlkZSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMzVweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgfVxyXG59XHJcblxyXG4vLyBjb250YWN0U2VjdGlvblxyXG4uY29udGFjdFNlY3Rpb24ge1xyXG4gICAgcGFkZGluZy1ib3R0b206IDEwMHB4O1xyXG5cclxuICAgIC5jb250YWN0V3JhcHBlciB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogNDZweDtcclxuXHJcbiAgICAgICAgLmxlZnRJbmZvIHtcclxuICAgICAgICAgICAgLnRvcCB7XHJcbiAgICAgICAgICAgICAgICBoMyB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDI4cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICBwIHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogNDkycHg7XHJcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI2cHg7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDBweDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5ib3R0b20ge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNDJweDtcclxuXHJcbiAgICAgICAgICAgICAgICBoNSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogOHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZm9ybUJveCB7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNFREVERUQ7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDUwcHggNTlweDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcclxuXHJcbiAgICAgICAgICAgIC5mb3JtLWZsb2F0aW5nIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQxcHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5mb3JtLWNvbnRyb2wge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwcHg7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICR0aXRsZUNvbG9yO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDBweDtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjRURFREVEO1xyXG4gICAgICAgICAgICAgICAgcmVzaXplOiBub25lO1xyXG5cclxuICAgICAgICAgICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGxhYmVsIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMHB4O1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGl0bGVDb2xvcjtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmZvcm0tZmxvYXRpbmc+LmZvcm0tY29udHJvbC1wbGFpbnRleHR+bGFiZWwsXHJcbiAgICAgICAgICAgIC5mb3JtLWZsb2F0aW5nPi5mb3JtLWNvbnRyb2w6Zm9jdXN+bGFiZWwsXHJcbiAgICAgICAgICAgIC5mb3JtLWZsb2F0aW5nPi5mb3JtLWNvbnRyb2w6bm90KDpwbGFjZWhvbGRlci1zaG93bil+bGFiZWwsXHJcbiAgICAgICAgICAgIC5mb3JtLWZsb2F0aW5nPi5mb3JtLXNlbGVjdH5sYWJlbCB7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKC44NSkgdHJhbnNsYXRlWSgtMS4zcmVtKSB0cmFuc2xhdGVYKC4wcmVtKTtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjOTk5OTk5O1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLnN1Ym1pdEJ1dHRvbiB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTU0cHg7XHJcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweCAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICAgICAgICAgIC5sb2FkaW5nIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIGkge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJi5zZW5kaW5nIHtcclxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjc7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIGkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIC5kZWZhdWx0IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIC5sb2FkaW5nIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuZmVlZGJhY2tNZXNzYWdlIHtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XHJcblxyXG4gICAgICAgICAgICAgICAgaDQge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICYuc3VjY2VzcyB7XHJcbiAgICAgICAgICAgICAgICAgICAgaDQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogZ3JlZW47XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICYuZXJyb3Ige1xyXG4gICAgICAgICAgICAgICAgICAgIGg0IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHJlZDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIGN0YUJveFxyXG4uY3RhQm94IHtcclxuICAgIHBhZGRpbmctYm90dG9tOiAxMDBweDtcclxuXHJcbiAgICAuY3RhV3JhcHBlciB7XHJcbiAgICAgICAgbWluLWhlaWdodDogMzY2cHg7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICBwYWRkaW5nOiA1MHB4IDYwcHg7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICAgICAgLmN0YU92ZXJsYXkge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY29udGVudCB7XHJcbiAgICAgICAgICAgIGg1IHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgaDMge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDM4cHg7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNTZweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmJ0biB7XHJcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDE1M3B4O1xyXG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblxyXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRicmFuZENvbG9yO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLyBmb290ZXJUb3BcclxuLmZvb3RlclRvcCB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogODBweDtcclxuXHJcbiAgICAuZm9vdGVyTG9nbyB7XHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiA3MHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZm9vdGVyTGluayB7XHJcblxyXG4gICAgICAgIG5hdiB7XHJcbiAgICAgICAgICAgIHVsIHtcclxuICAgICAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwcHggMjdweDtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdGl0bGVDb2xvcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciwmOmZvY3VzLCY6YWN0aXZle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICM4ODg4ODg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnNvY2lhbEJveCB7XHJcbiAgICAgICAgdWwge1xyXG4gICAgICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblxyXG4gICAgICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzNnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzNnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGNEY0Rjg7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdGl0bGVDb2xvcjtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgaXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kQ29sb3I7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy8gY29weXJpZ2h0SW5mb1xyXG4uY29weXJpZ2h0SW5mbyB7XHJcbiAgICAuY29udGVudCB7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM2NjY2NjY7XHJcbiAgICAgICAgcGFkZGluZzogMzJweCAwcHg7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgICAgICBwIHtcclxuICAgICAgICAgICAgY29sb3I6ICM2NjY2NjY7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuXHJcbiAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICM2NjY2NjY7XHJcblxyXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRicmFuZENvbG9yO1xyXG4gICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLyBpbXBvcnQgcmVzcG9uc2l2ZVxyXG5AaW1wb3J0ICcuL19yZXNwb25zaXZlJztcclxuIiwiLyotLSB0aGlzIGlzIGZvciB3ZWJwYWdlIHJlc3RhZSBwYWdlIGRlc2lnbSAtLSovXHJcbkBpbXBvcnQgJ2NvbG9yLnNjc3MnO1xyXG4kbWFpbmZvbnQ6ICdJbnRlcicsXHJcbnNhbnMtc2VyaWY7XHJcblxyXG4qIHtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBvdXRsaW5lOiAwO1xyXG4gICAgZm9udC1mYW1pbHk6ICRtYWluZm9udDtcclxufVxyXG5cclxudWwge1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIGZvbnQtZmFtaWx5OiAkbWFpbmZvbnQ7XHJcblxyXG4gICAgbGkge1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6ICRtYWluZm9udDtcclxuICAgIH1cclxufVxyXG5cclxuYSB7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICBjb2xvcjogJHRpdGxlQ29sb3I7XHJcbiAgICB0cmFuc2l0aW9uOiAwLjRzO1xyXG4gICAgZm9udC1mYW1pbHk6ICRtYWluZm9udDtcclxufVxyXG5cclxuYTpob3ZlciB7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICBjb2xvcjogJHRpdGxlQ29sb3I7XHJcbn1cclxuXHJcbmgxLFxyXG5oMixcclxuaDMsXHJcbmg0LFxyXG5oNSxcclxuaDYge1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIGZvbnQtZmFtaWx5OiAkbWFpbmZvbnQ7XHJcbiAgICBjb2xvcjogJHRpdGxlQ29sb3I7XHJcbn1cclxuXHJcbmJvZHkge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgZm9udC1mYW1pbHk6ICRtYWluZm9udDtcclxufVxyXG5cclxucCB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgY29sb3I6ICRib2R5Q29sb3I7XHJcbiAgICBmb250LWZhbWlseTogJG1haW5mb250O1xyXG59IiwiLy8gcHV0IHlvdXIgYnJhbmQgY29sb3IgaGVyZSBcclxuXHJcbiR0aXRsZUNvbG9yOiAjMDAwMDAwO1xyXG4kYnJhbmRDb2xvciA6ICMyNjJEN0Q7XHJcbiRib2R5Q29sb3I6ICM2NjY2NjY7XHJcbiRob3ZlcjogIzA0MzI2NztcclxuJHRiZzogI0U0RjlFRDtcclxuJHllbGxvdzogI0YzQ0EwMDsiLCIudGV4dC1tdXRlZCB7XHJcbiAgICBjb2xvcjogI0I4QjhCOCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uYnRuIHtcclxuICAgIGhlaWdodDogNDlweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICBmb250LXNpemU6IDE2cHggIWltcG9ydGFudDtcclxuICAgIGZvbnQtZmFtaWx5OiBcIkludGVyXCIsIHN5c3RlbS11aTtcclxuICAgIHRyYW5zaXRpb246IDAuM3M7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xyXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgY29sdW1uLWdhcDogMTBweDtcclxufVxyXG5cclxuLmJ0bi1wcmltYXJ5IHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZENvbG9yO1xyXG4gICAgYm9yZGVyLWNvbG9yOiAkYnJhbmRDb2xvcjtcclxuXHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyxcclxuICAgICY6YWN0aXZlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmRDb2xvciAhaW1wb3J0YW50O1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJyYW5kQ29sb3IgIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG5cclxuLmJ0bi13YXJuaW5nIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3c7XHJcbiAgICBib3JkZXItY29sb3I6ICR5ZWxsb3c7XHJcbiAgICBjb2xvcjogJGJyYW5kQ29sb3I7XHJcblxyXG4gICAgJjpob3ZlcixcclxuICAgICY6Zm9jdXMsXHJcbiAgICAmOmFjdGl2ZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHllbGxvdztcclxuICAgICAgICBib3JkZXItY29sb3I6ICR5ZWxsb3c7XHJcbiAgICAgICAgY29sb3I6ICRicmFuZENvbG9yO1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLnNwbGl0LWxpbmUge1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLnNwbGl0LXBhcmVudCB7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4ucXVvdGUge1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufSIsIkBtZWRpYSAobWF4LXdpZHRoOiAxMzk5cHgpIHtcclxuICAgIC5hYm91dFVzU2VjdGlvbiAuYWJvdXRDb250ZW50IC5hYm91dEl0ZW0ge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDI2OXB4O1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcclxuXHJcbiAgICAuY29udGFpbmVyLFxyXG4gICAgLmNvbnRhaW5lci1tZCxcclxuICAgIC5jb250YWluZXItc20ge1xyXG4gICAgICAgIG1heC13aWR0aDogOTclO1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHtcclxuICAgIC5oZXJvQmFubmVyIC5iYW5uZXJXcmFwcGVyIHtcclxuICAgICAgICBwYWRkaW5nOiAwcHggNTBweDtcclxuICAgIH1cclxuXHJcbiAgICAuaGVyb0Jhbm5lciAuYmFubmVyV3JhcHBlciAuY29udGVudCBoNCB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5oZXJvQmFubmVyIC5iYW5uZXJXcmFwcGVyIC5jb250ZW50IGgyIHtcclxuICAgICAgICBmb250LXNpemU6IDQwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmhlcm9CYW5uZXIgLmJhbm5lcldyYXBwZXIgLmNvbnRlbnQgcCB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC8vIGFib3V0XHJcbiAgICAuYWJvdXRVc1NlY3Rpb24ge1xyXG4gICAgICAgIHBhZGRpbmc6IDcwcHggMHB4IDcwcHggMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC8vIGhvdyB3b3JrXHJcbiAgICAuaG93V29ya1NlY3Rpb24ge1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA3MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC8vIGZlYXR1cmVzXHJcbiAgICAuZmVhdHVyZVNlY3Rpb24ge1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA3MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5wcm9kdWN0R2FsbGVyeSB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDcwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmNvbnRhY3RTZWN0aW9uIC5jb250YWN0V3JhcHBlciAuZm9ybUJveCB7XHJcbiAgICAgICAgcGFkZGluZzogMzBweCAzOXB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5jb250YWN0U2VjdGlvbiB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDcwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmN0YUJveCB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDUwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmZvb3RlclRvcCB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDQwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XHJcbiAgICAuc2VjdGlvblRpdGxlIGg0IHtcclxuICAgICAgICBmb250LXNpemU6IDE1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLnNlY3Rpb25UaXRsZSBoMyB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyN3B4O1xyXG4gICAgfVxyXG5cclxuICAgIC5zZWN0aW9uVGl0bGUgcCB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDEzcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLm1vYmlsZUhlYWRlciAubW9iaWxlTG9nbyBpbWcge1xyXG4gICAgICAgIGhlaWdodDogNjBweDtcclxuICAgIH1cclxuXHJcbiAgICAuaGVyb0Jhbm5lciAuYmFubmVyV3JhcHBlciB7XHJcbiAgICAgICAgcGFkZGluZzogMHB4IDUwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmhlcm9CYW5uZXIgLmJhbm5lcldyYXBwZXIgLmNvbnRlbnQgaDQge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjJweDtcclxuICAgIH1cclxuXHJcbiAgICAuaGVyb0Jhbm5lciAuYmFubmVyV3JhcHBlciAuY29udGVudCBoMiB7XHJcbiAgICAgICAgZm9udC1zaXplOiA0MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5oZXJvQmFubmVyIC5iYW5uZXJXcmFwcGVyIC5jb250ZW50IHAge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgIH1cclxuXHJcbiAgICAvLyBhYm91dFxyXG4gICAgLmFib3V0VXNTZWN0aW9uIHtcclxuICAgICAgICBwYWRkaW5nOiA1MHB4IDBweCA1MHB4IDBweDtcclxuICAgIH1cclxuXHJcbiAgICAuYWJvdXRVc1NlY3Rpb24gLmFib3V0Q29udGVudCAuYWJvdXRJdGVtIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG4gICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICBtaW4taGVpZ2h0OiAzMDZweDtcclxuICAgIH1cclxuXHJcbiAgICAvLyBob3cgd29ya1xyXG4gICAgLmhvd1dvcmtTZWN0aW9uIHtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcclxuICAgIH1cclxuXHJcbiAgICAuaG93V29ya1NlY3Rpb24gLmhvd1dvcmtDb250ZW50IC5zaW5nbGVJdGVtIC5pbWFnZUJveCB7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDVweDtcclxuICAgICAgICB3aWR0aDogMTA1cHg7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgfVxyXG5cclxuICAgIC5ob3dXb3JrU2VjdGlvbiAuaG93V29ya0NvbnRlbnQgLnNpbmdsZUl0ZW0gLmltYWdlQm94IC5jb3VudCB7XHJcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgICAgIHdpZHRoOiA0MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5ob3dXb3JrU2VjdGlvbiAuaG93V29ya0NvbnRlbnQgLnNpbmdsZUl0ZW0gLmltYWdlQm94IC5jb3VudCBoNCB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5ob3dXb3JrU2VjdGlvbiAuaG93V29ya0NvbnRlbnQgLnNpbmdsZUl0ZW0gLmFycm93MSB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMTAlO1xyXG4gICAgICAgIGxlZnQ6IC0yMSU7XHJcbiAgICAgICAgd2lkdGg6IDgycHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmhvd1dvcmtTZWN0aW9uIC5ob3dXb3JrQ29udGVudCAuc2luZ2xlSXRlbSAuYXJyb3cyIHtcclxuICAgICAgICB3aWR0aDogODJweDtcclxuICAgIH1cclxuXHJcbiAgICAuaG93V29ya1NlY3Rpb24gLmhvd1dvcmtDb250ZW50IC5zaW5nbGVJdGVtIC5jb250ZW50IHAge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIH1cclxuXHJcbiAgICAvLyBmZWF0dXJlc1xyXG4gICAgLmZlYXR1cmVTZWN0aW9uIHtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcclxuICAgIH1cclxuXHJcbiAgICAuZmVhdHVyZVNlY3Rpb24gLmZlYXR1cmVzV3JhcHBlciAuc2luZ2xlSXRlbSAuY29udGVudCBoMyB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5wcm9kdWN0R2FsbGVyeSB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDcwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLnByb2R1Y3RHYWxsZXJ5IC5nYWxsZXJ5V3JhcHBlciAuc2xpY2stc2xpZGUge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMjBweDtcclxuICAgIH1cclxuXHJcbiAgICAuY29udGFjdFNlY3Rpb24gLmNvbnRhY3RXcmFwcGVyIC5mb3JtQm94IHtcclxuICAgICAgICBwYWRkaW5nOiAzMHB4IDM5cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmNvbnRhY3RTZWN0aW9uIHtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcclxuICAgIH1cclxuXHJcbiAgICAuY29udGFjdFNlY3Rpb24gLmNvbnRhY3RXcmFwcGVyIC5mb3JtQm94IHtcclxuICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5jb250YWN0U2VjdGlvbiAuY29udGFjdFdyYXBwZXIgLmxlZnRJbmZvIC50b3AgcCB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgIC5jdGFCb3gge1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5mb290ZXJUb3Age1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5mb290ZXJUb3AgLmZvb3Rlckxpbmsge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLmZvb3RlckxvZ28ge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5jb3B5cmlnaHRJbmZvIC5jb250ZW50IHAge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAgIC5zZWN0aW9uVGl0bGUgaDQge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcclxuICAgIH1cclxuXHJcbiAgICAuc2VjdGlvblRpdGxlIGgzIHtcclxuICAgICAgICBmb250LXNpemU6IDI3cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLnNlY3Rpb25UaXRsZSBwIHtcclxuICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTNweDtcclxuICAgIH1cclxuXHJcbiAgICAuaGVyb0Jhbm5lciAuYmFubmVyV3JhcHBlciB7XHJcbiAgICAgICAgcGFkZGluZzogMHB4IDMwcHg7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcblxyXG4gICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmZhZDtcclxuICAgICAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5oZXJvQmFubmVyIC5iYW5uZXJXcmFwcGVyIC5jb250ZW50IGg0IHtcclxuICAgICAgICBmb250LXNpemU6IDIycHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmhlcm9CYW5uZXIgLmJhbm5lcldyYXBwZXIgLmNvbnRlbnQgaDIge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogNDBweDtcclxuICAgIH1cclxuXHJcbiAgICAuaGVyb0Jhbm5lciAuYmFubmVyV3JhcHBlciAuY29udGVudCBwIHtcclxuICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gYWJvdXRcclxuICAgIC5hYm91dFVzU2VjdGlvbiB7XHJcbiAgICAgICAgcGFkZGluZzogNTBweCAwcHggNTBweCAwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmFib3V0VXNTZWN0aW9uIC5hYm91dENvbnRlbnQgLmFib3V0SXRlbSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcclxuICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgbWluLWhlaWdodDogMzA2cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gaG93IHdvcmtcclxuICAgIC5ob3dXb3JrU2VjdGlvbiB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDUwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmhvd1dvcmtTZWN0aW9uIC5ob3dXb3JrQ29udGVudCAuc2luZ2xlSXRlbSAuaW1hZ2VCb3gge1xyXG4gICAgICAgIGhlaWdodDogMTU1cHg7XHJcbiAgICAgICAgd2lkdGg6IDE1NXB4O1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIH1cclxuXHJcbiAgICAuaG93V29ya1NlY3Rpb24gLmhvd1dvcmtDb250ZW50IC5zaW5nbGVJdGVtIC5pbWFnZUJveCAuY291bnQge1xyXG4gICAgICAgIGhlaWdodDogNTZweDtcclxuICAgICAgICB3aWR0aDogNTZweDtcclxuICAgIH1cclxuXHJcbiAgICAuaG93V29ya1NlY3Rpb24gLmhvd1dvcmtDb250ZW50IC5zaW5nbGVJdGVtIC5pbWFnZUJveCAuY291bnQgaDQge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgIH1cclxuXHJcbiAgICAuaG93V29ya1NlY3Rpb24gLmhvd1dvcmtDb250ZW50IC5zaW5nbGVJdGVtIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5ob3dXb3JrU2VjdGlvbiAuaG93V29ya0NvbnRlbnQgLnNpbmdsZUl0ZW0gLmNvbnRlbnQge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmhvd1dvcmtTZWN0aW9uIC5ob3dXb3JrQ29udGVudCAuc2luZ2xlSXRlbSAuYXJyb3cxIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIC5ob3dXb3JrU2VjdGlvbiAuaG93V29ya0NvbnRlbnQgLnNpbmdsZUl0ZW0gLmFycm93MiB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAuaG93V29ya1NlY3Rpb24gLmhvd1dvcmtDb250ZW50IC5zaW5nbGVJdGVtIC5jb250ZW50IHAge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIH1cclxuXHJcbiAgICAvLyBmZWF0dXJlc1xyXG4gICAgLmZlYXR1cmVTZWN0aW9uIHtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcclxuICAgIH1cclxuXHJcbiAgICAuZmVhdHVyZVNlY3Rpb24gLmZlYXR1cmVzV3JhcHBlciAuc2luZ2xlSXRlbSAuY29udGVudCBoMyB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5wcm9kdWN0R2FsbGVyeSB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDcwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLnByb2R1Y3RHYWxsZXJ5IC5nYWxsZXJ5V3JhcHBlciAuc2xpY2stc2xpZGUge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMTBweDtcclxuICAgIH1cclxuXHJcbiAgICAuY29udGFjdFNlY3Rpb24gLmNvbnRhY3RXcmFwcGVyIC5mb3JtQm94IHtcclxuICAgICAgICBwYWRkaW5nOiAzMHB4IDM5cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmNvbnRhY3RTZWN0aW9uIHtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcclxuICAgIH1cclxuXHJcbiAgICAuY29udGFjdFNlY3Rpb24gLmNvbnRhY3RXcmFwcGVyIC5mb3JtQm94IHtcclxuICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5jb250YWN0U2VjdGlvbiAuY29udGFjdFdyYXBwZXIgLmxlZnRJbmZvIC50b3AgcCB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgIC5jdGFCb3gge1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5mb290ZXJUb3Age1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5mb290ZXJUb3AgLmZvb3Rlckxpbmsge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5mb290ZXJMb2dvIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgIH1cclxuXHJcbiAgICAuZm9vdGVyVG9wIC5zb2NpYWxCb3gge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIC5jb3B5cmlnaHRJbmZvIC5jb250ZW50IHAge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDtcclxuICAgIH1cclxuXHJcbiAgICAuY29weXJpZ2h0SW5mbyAuY29udGVudCB7XHJcbiAgICAgICAgcGFkZGluZzogMjBweCAwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmN0YUJveCAuY3RhV3JhcHBlciB7XHJcbiAgICAgICAgcGFkZGluZzogMzBweCAzMHB4O1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xyXG4gICAgLkFwcEhlYWRlciB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAubW9iaWxlSGVhZGVyIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxuXHJcbiAgICAuaGVyb0Jhbm5lciB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDg2cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLnNlYXJjaENhbnZhcyB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kQ29sb3I7XHJcbiAgICAgICAgcGFkZGluZzogMHB4IDBweDtcclxuICAgICAgICBtaW4taGVpZ2h0OiBpbmhlcml0O1xyXG5cclxuICAgICAgICAub2ZmY2FudmFzLWhlYWRlciB7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHJcbiAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgIGhlaWdodDogNTVweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgYnV0dG9uIHtcclxuICAgICAgICAgICAgICAgIGkge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmZmZmNzM7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5vZmZjYW52YXMtYm9keSB7XHJcblxyXG4gICAgICAgICAgICBoMyB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5zZWFyY2hGb3JtIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcblxyXG4gICAgICAgICAgICAgICAgLmlucHV0LWdyb3VwIHtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2ZmZmZmZjczO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAuZm9ybS1jb250cm9sIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICA6OnBsYWNlaG9sZGVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmZmZmZhNDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIC5idG4ge1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZmZmZjczO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmZvY3VzLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XHJcbiAgICAuaGVyb0Jhbm5lciB7XHJcbiAgICAgICAgLmJhbm5lcldyYXBwZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAyMiU7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICAgICAgcGFkZGluZzogMjBweDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDY5MHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMzNweDtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyNHB4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9tb2JpbGUtYmFubmVyLnBuZycpO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAxO1xyXG5cclxuICAgICAgICAgICAgLmJhbm5lck92ZXJMYXkge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmNvbnRlbnQge1xyXG5cclxuICAgICAgICAgICAgICAgIGg0IHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIycHg7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTNweDtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiA0MXB4O1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICBwIHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMTFweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc2VjdGlvblRpdGxlIGg0IHtcclxuICAgICAgICBmb250LXNpemU6IDE1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmFib3V0VXNTZWN0aW9uIHtcclxuICAgICAgICBwYWRkaW5nOiA0MHB4IDBweDtcclxuICAgIH1cclxuXHJcbiAgICAuc2VjdGlvblRpdGxlIGgzIHtcclxuICAgICAgICBmb250LXNpemU6IDI2cHg7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgIH1cclxuXHJcbiAgICAuc2VjdGlvblRpdGxlIHAge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxMnB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5hYm91dFVzU2VjdGlvbiAuYWJvdXRDb250ZW50IHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5ob3dXb3JrU2VjdGlvbiAuaG93V29ya0NvbnRlbnQgLnNpbmdsZUl0ZW0ge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmhvd1dvcmtTZWN0aW9uIC5ob3dXb3JrQ29udGVudCAuc2luZ2xlSXRlbSAuY29udGVudCB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcclxuICAgIH1cclxuXHJcbiAgICAuaG93V29ya1NlY3Rpb24gLmhvd1dvcmtDb250ZW50IC5zaW5nbGVJdGVtIC5hcnJvdzEge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgLmhvd1dvcmtTZWN0aW9uIC5ob3dXb3JrQ29udGVudCAuc2luZ2xlSXRlbSAuYXJyb3cyIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIC5ob3dXb3JrU2VjdGlvbiB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmZlYXR1cmVTZWN0aW9uIC5mZWF0dXJlc1dyYXBwZXIgLnNpbmdsZUl0ZW0ge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmZlYXR1cmVTZWN0aW9uIC5mZWF0dXJlc1dyYXBwZXIgLnNpbmdsZUl0ZW0gLmNvbnRlbnQgaDMge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5mZWF0dXJlU2VjdGlvbiB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDQwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLnByb2R1Y3RHYWxsZXJ5IC5nYWxsZXJ5V3JhcHBlciAuc2xpY2stc2xpZGUge1xyXG4gICAgICAgIHBhZGRpbmc6IDBweCAxMHB4IDBweCAwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLnByb2R1Y3RHYWxsZXJ5IC5nYWxsZXJ5V3JhcHBlciAuZ2FsbGVyeVNsaWRlciAuc2luZ2xlSXRlbSBpbWcge1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDI1MHB4O1xyXG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gICAgfVxyXG5cclxuICAgIC5wcm9kdWN0R2FsbGVyeSB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDQwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmNvbnRhY3RTZWN0aW9uIC5jb250YWN0V3JhcHBlciAubGVmdEluZm8gLnRvcCBoMyB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxOXB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE3cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmNvbnRhY3RTZWN0aW9uIC5jb250YWN0V3JhcHBlciAubGVmdEluZm8gLnRvcCBwIHtcclxuICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTJweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMjNweDtcclxuICAgIH1cclxuXHJcbiAgICAuY29udGFjdFNlY3Rpb24gLmNvbnRhY3RXcmFwcGVyIC5sZWZ0SW5mbyAuYm90dG9tIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAyOHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5jb250YWN0U2VjdGlvbiAuY29udGFjdFdyYXBwZXIgLmxlZnRJbmZvIC5ib3R0b20gaDUge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcclxuICAgIH1cclxuXHJcbiAgICAuY29udGFjdFNlY3Rpb24gLmNvbnRhY3RXcmFwcGVyIC5sZWZ0SW5mbyAuYm90dG9tIHAge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcclxuICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmNvbnRhY3RTZWN0aW9uIC5jb250YWN0V3JhcHBlciAuZm9ybUJveCB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcclxuICAgICAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5jb250YWN0U2VjdGlvbiAuY29udGFjdFdyYXBwZXIgLmZvcm1Cb3ggLmZvcm0tY29udHJvbCB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5jb250YWN0U2VjdGlvbiAuY29udGFjdFdyYXBwZXIgLmZvcm1Cb3ggLmZvcm0tZmxvYXRpbmc+LmZvcm0tY29udHJvbC1wbGFpbnRleHR+bGFiZWwsXHJcbiAgICAuY29udGFjdFNlY3Rpb24gLmNvbnRhY3RXcmFwcGVyIC5mb3JtQm94IC5mb3JtLWZsb2F0aW5nPi5mb3JtLWNvbnRyb2w6Zm9jdXN+bGFiZWwsXHJcbiAgICAuY29udGFjdFNlY3Rpb24gLmNvbnRhY3RXcmFwcGVyIC5mb3JtQm94IC5mb3JtLWZsb2F0aW5nPi5mb3JtLWNvbnRyb2w6bm90KDpwbGFjZWhvbGRlci1zaG93bil+bGFiZWwsXHJcbiAgICAuY29udGFjdFNlY3Rpb24gLmNvbnRhY3RXcmFwcGVyIC5mb3JtQm94IC5mb3JtLWZsb2F0aW5nPi5mb3JtLXNlbGVjdH5sYWJlbCB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjg1KSB0cmFuc2xhdGVZKC0xcmVtKSB0cmFuc2xhdGVYKDByZW0pO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIH1cclxuXHJcbiAgICAuY29udGFjdFNlY3Rpb24gLmNvbnRhY3RXcmFwcGVyIC5mb3JtQm94IC5zdWJtaXRCdXR0b24ge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IC0xNXB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5jb250YWN0U2VjdGlvbiB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmN0YUJveCAuY3RhV3JhcHBlciB7XHJcbiAgICAgICAgcGFkZGluZzogMzBweCAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5jdGFCb3ggLmN0YVdyYXBwZXIgLmNvbnRlbnQgaDUge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTlweDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMXB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5jdGFCb3ggLmN0YVdyYXBwZXIgLmNvbnRlbnQgaDMge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjJweDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5jdGFCb3ggLmN0YVdyYXBwZXIgLmNvbnRlbnQgLmJ0biB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcblxyXG4gICAgLmN0YUJveCB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDMwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmZvb3RlclRvcCAuZm9vdGVyTG9nbyB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmZvb3RlclRvcCAuZm9vdGVyTGluayB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgfVxyXG5cclxuICAgIC5mb290ZXJUb3AgLmZvb3RlckxpbmsgbmF2IHVsIGxpIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBtYXJnaW46IDEwcHggMHB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmZvb3RlclRvcCAuc29jaWFsQm94IHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5mb290ZXJUb3Age1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyNXB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5jb3B5cmlnaHRJbmZvIC5jb250ZW50IHtcclxuICAgICAgICBwYWRkaW5nOiAxNXB4IDBweDtcclxuICAgIH1cclxuXHJcbiAgICAuY29weXJpZ2h0SW5mbyAuY29udGVudCBwIHtcclxuICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmN0YUJveCB7fVxyXG59Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQ0FBLGdEQUFnRDtBQUtoRCxBQUFBLENBQUMsQ0FBQztFQUNFLE1BQU0sRUFBRSxDQUFDO0VBQ1QsT0FBTyxFQUFFLENBQUM7RUFDVixPQUFPLEVBQUUsQ0FBQztFQUNWLFdBQVcsRUFQSixPQUFPLEVBQ2xCLFVBQVUsR0FPVDs7QUFFRCxBQUFBLEVBQUUsQ0FBQztFQUNDLE1BQU0sRUFBRSxDQUFDO0VBQ1QsT0FBTyxFQUFFLENBQUM7RUFDVixXQUFXLEVBYkosT0FBTyxFQUNsQixVQUFVLEdBb0JUO0VBWEQsQUFLSSxFQUxGLENBS0UsRUFBRSxDQUFDO0lBQ0MsTUFBTSxFQUFFLENBQUM7SUFDVCxPQUFPLEVBQUUsQ0FBQztJQUNWLFVBQVUsRUFBRSxJQUFJO0lBQ2hCLFdBQVcsRUFuQlIsT0FBTyxFQUNsQixVQUFVLEdBbUJMOztBQUdMLEFBQUEsQ0FBQyxDQUFDO0VBQ0UsZUFBZSxFQUFFLElBQUk7RUFDckIsS0FBSyxFQ3pCSSxPQUFPO0VEMEJo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 */
