.header-top {
  margin: 60px 0 100px 0;
  width: 100%;
  height: 120px;
  font-size: 0; }
  @media (max-width: 900px) {
    .header-top {
      margin: 0 0 100px 0;
      height: auto; } }
  @media (max-width: 650px) {
    .header-top {
      padding-left: 60px;
      width: calc(100% - 60px); } }

  .page .header-top {
    position: fixed;
    top: 60px;
    left: 0;
    z-index: 3;
    background-color: transparent;
    transition: top 1s, background-color 1s, height 1s, margin 1s; }
    @media (max-width: 900px) {
      .page .header-top {
        position: absolute;
        top: 20px; } }

  .home .header-top {
    margin: 0;
    top: 80px; }
    @media (max-width: 900px) {
      .home .header-top {
        position: absolute;
        top: 20px; } }

  .page-template-template-presentation .header-top,
  .page-template-template-legal .header-top,
  .page-template-template-services .header-top,
  .page-template-template-contact .header-top {
    /*margin: 0;*/
    top: 0;
  }
  @media (max-width: 650px) {
    .page-template-template-presentation .header-top,
    .page-template-template-legal .header-top,
    .page-template-template-services .header-top,
    .page-template-template-contact .header-top,
    .parent-pageid-9 .header-top,
    .single-project .header-top {
      /*margin: 0;*/
      top: 20px !important;
    }
  }

  .parent-pageid-9 .header-top,
  .single-project .header-top {
    top: 0;
    position: fixed !important;
    transition: top 1s, background-color 1s, height 1s, margin 1s;
  }
  @media (max-width: 900px) {
    .parent-pageid-9 .header-top,
    .single-project .header-top {
      position: absolute !important;
    }
  }
  @media (max-width: 650px) {
    .parent-pageid-9 .header-top,
    .single-project .header-top {
      position: absolute !important;
    }
  }

  .is-header-small .header-top {
    margin: 0;
  }

  .page-template-template-presentation section.text,
  .page-template-template-legal section.text,
  .page-template-template-contact section.text,
  .page section.text-centered {
    padding-top: 280px;
  }
  @media (max-width: 1200px) {
    .page-template-template-presentation section.text,
    .page-template-template-legal section.text,
    .page-template-template-contact section.text,
    .page section.text-centered {
      padding-top: 280px;
    }
  }
  @media (max-width: 900px) {
    .page-template-template-presentation section.text,
    .page-template-template-legal section.text,
    .page-template-template-contact section.text,
    .page section.text-centered {
      padding-top: 220px;
    }
  }
  @media (max-width: 650px) {
    .page-template-template-presentation section.text,
    .page-template-template-legal section.text,
    .page-template-template-contact section.text {
      padding-top: 20%;
      margin-top: 80px !important;
    }
    .page section.text-centered {
      padding-top: 20%;
      margin-top: 80px !important;
    }
  }

  .page-template-template-presentation section.text::before,
  .page-template-template-legal section.text::before,
  .page-template-template-contact section.text::before,
  .page section.text-centered::before {
    content: '';
    width: 100%;
    height: 280px;
    background: #fff;
    position: absolute;
    top: 0;
    left: 0; }
    @media (max-width: 1200px) {
      .page-template-template-presentation section.text::before,
      .page-template-template-legal section.text::before,
      .page-template-template-contact section.text::before,
      .page section.text-centered::before {
        height: 280px;
        /*border: 1px solid red;*/
      }
    }
    @media (max-width: 900px) {
      .page-template-template-presentation section.text::before,
      .page-template-template-legal section.text::before,
      .page-template-template-contact section.text::before,
      .page section.text-centered::before {
        height: 200px;
        /*border: 1px solid orange;*/
      }
    }
    @media (max-width: 650px) {
      .page-template-template-presentation section.text::before,
      .page-template-template-legal section.text::before,
      .page-template-template-contact section.text::before {
        height: 100px;
      }
      .page section.text-centered::before {
        height: 100px;
        /*border: 1px solid yellow;*/
      }
    }

  .page-template-template-service-maitrise .header-top,
  .page-template-template-service-management .header-top,
  .page-template-template-service-immobilier .header-top,
  .single-project .header-top,
  .service .header-top {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 3; }
  .header-top > .container {
    height: 100%; }
  .is-header-small .header-top {
    top: 0;
    height: 80px;
    border-bottom: solid 1px rgba(0, 0, 0, 0.1);
    background-color: #fff; }
    @media (max-width: 900px) {
      .is-header-small .header-top {
        height: auto;
        background-color: transparent;
        box-shadow: none; } }

.logo {
  position: relative;
  display: inline-block;
  overflow: hidden;
  width: 400px;
  height: 100%;
  vertical-align: middle; }
  .home .logo {
    width: 400px; }
    @media (max-width: 1200px) {
      .home .logo {
        width: 300px; } }
    @media (max-width: 900px) {
      .home .logo {
        display: block;
        margin: 0 auto;
        width: 200px;
        height: 100px; } }
    @media (max-width: 650px) {
      .home .logo {
        width: 100%;
        height: 100px; } }
  @media (max-width: 1200px) {
    .logo {
      width: 300px; } }
  @media (max-width: 900px) {
    .logo {
      display: block;
      margin: 0 auto;
      width: 200px;
      height: 100px; } }
  @media (max-width: 650px) {
    .logo {
      width: 100%;
      height: 100px; } }
  .logo:before, .logo:after {
    position: absolute;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background: no-repeat left center;
    background-size: contain;
    content: '';
    transition: opacity 1s; }
    @media (max-width: 900px) {
      .logo:before, .logo:after {
        background-position: right center; } }
  .logo:before {
    background-image: url("../images/logo-white.png");
    opacity: 0; }
    .home .logo:before,
    .service .logo:before,
    .page-template-template-service-maitrise .logo:before,
    .page-template-template-service-management .logo:before,
    .page-template-template-service-immobilier .logo:before,
    .single-project .logo:before {
      opacity: 1; }
    .is-header-small .logo:before {
      opacity: 0; }
      @media (max-width: 900px) {
        .is-header-small .logo:before {
          opacity: 1; } }
  .logo:after {
    background-image: url("../images/logo-grey.png");
    opacity: 1; }
    .home .logo:after,
    .service .logo:after,
    .page-template-template-service-maitrise .logo:after,
    .page-template-template-service-management .logo:after,
    .page-template-template-service-immobilier .logo:after,
    .single-project .logo:after {
      opacity: 0; }
    .is-header-small .logo:after {
      opacity: 1; }
      @media (max-width: 900px) {
        .is-header-small .logo:after {
          opacity: 0; } }

.main-menu {
  display: inline-block;
  width: calc(100% - 400px);
  vertical-align: middle; }
  .home .main-menu {
    width: calc(100% - 400px); }
    @media (max-width: 1200px) {
      .home .main-menu {
        width: calc(100% - 300px); } }
    @media (max-width: 900px) {
      .home .main-menu {
        width: 100%; } }
  @media (max-width: 1200px) {
    .main-menu {
      width: calc(100% - 300px); } }
  @media (max-width: 900px) {
    .main-menu {
      width: 100%; } }
  @media (max-width: 650px) {
    .main-menu {
      position: fixed;
      top: 0;
      right: -100%;
      z-index: 10;
      overflow-y: auto;
      padding: 2rem 0;
      max-width: 250px;
      width: calc(100% - 80px) !important;
      height: 100%;
      background-color: #ff9251;
      font-size: 0;
      transition: right 0.4s; }
      .is-menu-visible .main-menu {
        right: 0;
        box-shadow: 0 0 30px rgba(0, 0, 0, 0.3); }
      .main-menu:before {
        display: inline-block;
        height: 100%;
        content: '';
        vertical-align: middle; } }
  .main-menu > ul {
    width: 100%;
    text-align: right;
    font-size: 0; }
    @media (max-width: 900px) {
      .main-menu > ul {
        text-align: center; } }
    @media (max-width: 650px) {
      .main-menu > ul {
        display: inline-block;
        vertical-align: middle;
        text-align: left; } }
    .main-menu > ul > li {
      position: relative;
      display: inline-block;
      padding-left: 20px; }
      @media (max-width: 650px) {
        .main-menu > ul > li {
          display: block;
          padding: 0; } }
      .main-menu > ul > li > a {
        display: block;
        padding: 5px 0;
        color: #504d4d;
        text-decoration: none;
        text-transform: uppercase;
        letter-spacing: 2px;
        font-weight: 600;
        font-size: 18px;
        transition: color 1s; }
        @media (max-width: 650px) {
          .main-menu > ul > li > a {
            padding: 10px 15px;
            color: #fff; } }
        .home .main-menu > ul > li > a,
        .service .main-menu > ul > li > a,
        .page-template-template-service-maitrise .main-menu > ul > li > a,
        .page-template-template-service-management .main-menu > ul > li > a,
        .page-template-template-service-immobilier .main-menu > ul > li > a,
        .single-project .main-menu > ul > li > a {
          color: #fff; }
          @media (max-width: 650px) {
            .home .main-menu > ul > li > a,
            .service .main-menu > ul > li > a,
            .page-template-template-service-maitrise .main-menu > ul > li > a,
            .page-template-template-service-management .main-menu > ul > li > a,
            .page-template-template-service-immobilier .main-menu > ul > li > a,
            .single-project .main-menu > ul > li > a {
              color: #fff; } }
        .is-header-small .main-menu > ul > li > a {
          color: #504d4d; }
          @media (max-width: 900px) {
            .is-header-small .main-menu > ul > li > a {
              color: #fff; } }
      @media (max-width: 650px) {
        .main-menu > ul > li:last-child {
          padding: 30px 15px 0 15px;
          text-align: center; } }
      .main-menu > ul > li:last-child a {
        padding: 5px 10px;
        border-bottom: none !important;
        border-radius: 3px;
        background-color: #ff863e;
        color: #fff !important; }
        @media (max-width: 650px) {
          .main-menu > ul > li:last-child a {
            display: inline-block;
            padding: 10px 15px;
            background-color: #fff;
            color: #504d4d !important; } }
      .main-menu > ul > li > .sub-menu {
        position: absolute;
        top: 34px;
        left: 50%;
        z-index: 4;
        display: block;
        margin-left: -110px;
        padding-top: 13px;
        width: 240px;
        list-style-type: none;
        text-align: center;
        font-size: 1rem;
        opacity: 0;
        transition: opacity 0.3s, -webkit-transform 0.3s;
        transition: opacity 0.3s, transform 0.3s;
        transition: opacity 0.3s, transform 0.3s, -webkit-transform 0.3s;
        -webkit-transform: scaleY(0);
            -ms-transform: scaleY(0);
                transform: scaleY(0);
        -webkit-transform-origin: top center;
            -ms-transform-origin: top center;
                transform-origin: top center; }
        .main-menu > ul > li > .sub-menu:before {
          display: block;
          margin: 0 auto;
          width: 0;
          height: 0;
          border-width: 0 10px 10px 10px;
          border-style: solid;
          border-color: transparent transparent #ff863e transparent;
          content: ''; }
          @media (max-width: 650px) {
            .main-menu > ul > li > .sub-menu:before {
              display: none; } }
        .main-menu > ul > li > .sub-menu > li {
          border-top: solid 1px rgba(255, 255, 255, 0.3);
          background-color: #ff863e; }
          .main-menu > ul > li > .sub-menu > li:first-child {
            border-top: none; }
          .main-menu > ul > li > .sub-menu > li > a {
            display: block;
            padding: 8px 15px;
            color: #fff;
            text-decoration: none;
            font-size: 0.9em;
            transition: background-color 0.4s; }
            .no-touchevents .main-menu > ul > li > .sub-menu > li > a:hover {
              background-color: #ff660b; }
        @media (max-width: 650px) {
          .main-menu > ul > li > .sub-menu {
            position: static;
            display: block;
            margin-bottom: 1rem;
            padding-left: 1rem;
            font-size: 1rem;
            opacity: 1;
            -webkit-transform: scaleY(1);
                -ms-transform: scaleY(1);
                    transform: scaleY(1);
            margin-left: 0;
            text-align: left; }
            .main-menu > ul > li > .sub-menu > li {
              display: block;
              border-left: solid 1px #fff;
              border-top: none;
              background-color: transparent; }
              .main-menu > ul > li > .sub-menu > li > a {
                padding: 5px 15px; } }
      .main-menu > ul > li.current-menu-item > a, .main-menu > ul > li.current-menu-ancestor > a {
        border-bottom: solid 3px #ff863e; }
        @media (max-width: 650px) {
          .main-menu > ul > li.current-menu-item > a, .main-menu > ul > li.current-menu-ancestor > a {
            border-bottom: none;
            background-color: #fff;
            color: #ff863e; } }
      .no-touchevents .main-menu > ul > li:hover > .sub-menu {
        opacity: 1;
        -webkit-transform: scaleY(1);
            -ms-transform: scaleY(1);
                transform: scaleY(1); }

.container-header {
  overflow: hidden; }

.bg-header {
  -webkit-animation: header-bg 15s ease-in-out infinite alternate;
          animation: header-bg 15s ease-in-out infinite alternate; }

@-webkit-keyframes header-bg {
  0% {
    -webkit-transform: scale(1) rotate(0deg);
            transform: scale(1) rotate(0deg); }
  100% {
    -webkit-transform: scale(1.2) rotate(2deg);
            transform: scale(1.2) rotate(2deg); } }

@keyframes header-bg {
  0% {
    -webkit-transform: scale(1) rotate(0deg);
            transform: scale(1) rotate(0deg); }
  100% {
    -webkit-transform: scale(1.2) rotate(2deg);
            transform: scale(1.2) rotate(2deg); } }

.csstransitions .animation {
  opacity: 0;
  transition: opacity 1.4s, -webkit-transform 1.4s;
  transition: transform 1.4s, opacity 1.4s;
  transition: transform 1.4s, opacity 1.4s, -webkit-transform 1.4s;
  -webkit-transform: translateY(50%);
      -ms-transform: translateY(50%);
          transform: translateY(50%); }
  .csstransitions .animation.animated {
    opacity: 1;
    -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
            transform: translateY(0); }

.items {
  padding: 80px 0; }

.items-list {
  list-style-type: none; }
  .items-list:after {
    display: table;
    clear: both;
    width: 100%;
    content: ''; }
  .items-list > li {
    padding: 15px; }
    .items-list > li > a {
      position: relative;
      display: block; }
      .items-list > li > a .overlay {
        position: absolute;
        top: 0;
        left: 0;
        overflow: hidden;
        width: 100%;
        height: 100%; }
        .items-list > li > a .overlay:before {
          position: absolute;
          top: 0;
          left: 0;
          z-index: 2;
          width: 100%;
          height: 100%;
          background-color: rgba(255, 134, 62, 0.9);
          content: '';
          opacity: 0;
          transition: opacity 0.4s, -webkit-transform 0.4s;
          transition: transform 0.4s, opacity 0.4s;
          transition: transform 0.4s, opacity 0.4s, -webkit-transform 0.4s; }
        .items-list > li > a .overlay:after {
          position: absolute;
          top: 50%;
          left: 50%;
          z-index: 3;
          color: #fff;
          content: '+';
          font-size: 80px;
          opacity: 0;
          transition: opacity 0.4s, -webkit-transform 0.4s;
          transition: transform 0.4s, opacity 0.4s;
          transition: transform 0.4s, opacity 0.4s, -webkit-transform 0.4s;
          -webkit-transform: translate(-50%, 0) scale(0.5);
              -ms-transform: translate(-50%, 0) scale(0.5);
                  transform: translate(-50%, 0) scale(0.5); }
        .items-list > li > a .overlay h4 {
          position: absolute;
          bottom: 0;
          left: 0;
          z-index: 2;
          margin: 0;
          padding: 5px 10px;
          max-width: 100%;
          background-color: rgba(0, 0, 0, 0.5);
          color: #fff;
          text-transform: uppercase;
          font-weight: bold;
          transition: color 0.4s, background-color 0.4s; }
      .no-touchevents .items-list > li > a:hover .overlay:before {
        opacity: 1;
        -webkit-transform: translateY(0);
            -ms-transform: translateY(0);
                transform: translateY(0); }
      .no-touchevents .items-list > li > a:hover .overlay:after {
        opacity: 1;
        -webkit-transform: translate(-50%, -50%) scale(1);
            -ms-transform: translate(-50%, -50%) scale(1);
                transform: translate(-50%, -50%) scale(1); }
      .no-touchevents .items-list > li > a:hover .overlay h4 {
        background-color: transparent; }
    .items-list > li.cta > a {
      background-color: #ff863e;
      color: #fff;
      text-decoration: none;
      padding-top: 50%;
      position: relative; }
      .items-list > li.cta > a h4 {
        position: absolute;
        left: 50%;
        top: 50%;
        width: 100%;
        -webkit-transform: translate(-50%, -50%);
            -ms-transform: translate(-50%, -50%);
                transform: translate(-50%, -50%);
        margin: 0;
        padding: 1rem;
        text-align: center;
        text-transform: uppercase;
        box-sizing: border-box; }
        .items-list > li.cta > a h4 strong {
          font-size: 1.4em; }

.domaines-action li figure {
  transition: -webkit-transform 0.4s;
  transition: transform 0.4s;
  transition: transform 0.4s, -webkit-transform 0.4s;
  -webkit-transform: translateY(0) rotate(0);
      -ms-transform: translateY(0) rotate(0);
          transform: translateY(0) rotate(0); }

.no-touchevents .domaines-action li:hover figure {
  -webkit-transform: translateY(-10px) rotate(20deg);
      -ms-transform: translateY(-10px) rotate(20deg);
          transform: translateY(-10px) rotate(20deg); }

.btn {
  transition: opacity 1.4s, background-color 0.6s, -webkit-transform 1.4s !important;
  transition: transform 1.4s, opacity 1.4s, background-color 0.6s !important;
  transition: transform 1.4s, opacity 1.4s, background-color 0.6s, -webkit-transform 1.4s !important; }
  .no-touchevents .btn:hover {
    background-color: #ff660b; }

.service-btn {
  transition: opacity 1.4s, color 0.6s, -webkit-transform 1.4s !important;
  transition: transform 1.4s, opacity 1.4s, color 0.6s !important;
  transition: transform 1.4s, opacity 1.4s, color 0.6s, -webkit-transform 1.4s !important; }
  .no-touchevents .service-btn:hover {
    color: #000 !important; }

.toggle-menu {
  display: none; }
  @media (max-width: 650px) {
    .toggle-menu {
      position: absolute;
      top: 25px;
      left: 15px;
      z-index: 4;
      display: block;
      width: 50px;
      height: 50px; }
      .toggle-menu:before, .toggle-menu:after,
      .toggle-menu span {
        position: absolute;
        left: 50%;
        display: block;
        width: 30px;
        height: 2px;
        background-color: #504d4d;
        content: '';
        text-indent: -9999px;
        -webkit-transform: translate(-50%, -50%);
            -ms-transform: translate(-50%, -50%);
                transform: translate(-50%, -50%); }
        .home .toggle-menu:before,
        .service .toggle-menu:before,
        .page-template-template-service-maitrise .toggle-menu:before,
        .page-template-template-service-management .toggle-menu:before,
        .page-template-template-service-immobilier .toggle-menu:before,
        .single-project .toggle-menu:before, .home .toggle-menu:after,
        .service .toggle-menu:after,
        .page-template-template-service-maitrise .toggle-menu:after,
        .page-template-template-service-management .toggle-menu:after,
        .page-template-template-service-immobilier .toggle-menu:after,
        .single-project .toggle-menu:after, .home
        .toggle-menu span,
        .service
        .toggle-menu span,
        .page-template-template-service-maitrise
        .toggle-menu span,
        .page-template-template-service-management
        .toggle-menu span,
        .page-template-template-service-immobilier
        .toggle-menu span,
        .single-project
        .toggle-menu span {
          background-color: #fff; }
      .toggle-menu:before {
        top: calc(50% - 8px);
        transition: top 0.4s, -webkit-transform 0.4s;
        transition: transform 0.4s, top 0.4s;
        transition: transform 0.4s, top 0.4s, -webkit-transform 0.4s; }
      .toggle-menu:after {
        top: calc(50% + 8px);
        transition: top 0.4s, -webkit-transform 0.4s;
        transition: transform 0.4s, top 0.4s;
        transition: transform 0.4s, top 0.4s, -webkit-transform 0.4s; }
      .toggle-menu span {
        top: 50%;
        transition: opacity 0.4s; }
      .is-menu-visible .toggle-menu:before {
        top: 50%;
        -webkit-transform: translate(-50%, -50%) rotate(45deg);
            -ms-transform: translate(-50%, -50%) rotate(45deg);
                transform: translate(-50%, -50%) rotate(45deg); }
      .is-menu-visible .toggle-menu:after {
        top: 50%;
        -webkit-transform: translate(-50%, -50%) rotate(-45deg);
            -ms-transform: translate(-50%, -50%) rotate(-45deg);
                transform: translate(-50%, -50%) rotate(-45deg); }
      .is-menu-visible .toggle-menu span {
        opacity: 0; } }

.slclasses {
  position: relative;
  z-index: 3; }
  .slclasses .owl-controls .owl-pagination {
    padding: 1rem 0 3rem 0;
    text-align: center; }
    .slclasses .owl-controls .owl-pagination .owl-page {
      display: inline-block;
      margin: 0 10px;
      width: 12px;
      height: 12px;
      border-radius: 10px;
      background-color: rgba(255, 255, 255, 0.3);
      transition: background-color 0.4s; }
      .slclasses .owl-controls .owl-pagination .owl-page.active {
        background-color: #fff; }
  .slclasses .slclasse {
    padding: 50px 0 50px 0 }
    .slclasses .slclasse + .slclasse {
      display: none; }

#outdated p {
  text-align: center; }

.projects-nav {
  position: relative;
  padding-top: 2rem;
  padding-bottom: 2rem;
  text-align: center; }
  .projects-nav:after {
    content: '';
    display: table;
    width: 100%;
    clear: both; }
  .projects-nav .btn {
    margin: 0.5rem; }
  .projects-nav .btn-list {
    min-width: 30%;
    max-width: 320px; }
  .projects-nav .btn-prev-container,
  .projects-nav .btn-next-container {
    width: 50%; }
  .projects-nav .btn-prev-container {
    float: left;
    text-align: right; }
  .projects-nav .btn-next-container {
    float: right;
    text-align: left; }
  .projects-nav .btn-next,
  .projects-nav .btn-prev {
    width: 3rem;
    height: 3rem;
    padding: 0;
    overflow: hidden;
    background-size: auto 60%;
    background-position: center center;
    background-repeat: no-repeat; }
    .projects-nav .btn-next span,
    .projects-nav .btn-prev span {
      display: none; }
  .projects-nav .btn-next {
    background-image: url("../images/icon-right.png"); }
  .projects-nav .btn-prev {
    background-image: url("../images/icon-left.png"); }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,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RUFYTDtJQWFRLGVBQWUsRUFDbEI7RUFkTDtJQWlCUSxlQUFlO0lBQ2YsaUJBQWlCLEVBQ3BCO0VBbkJMOztJQXVCUSxXQUFXLEVBQ2Q7RUF4Qkw7SUEyQlEsWUFBWTtJQUNaLGtCQUFrQixFQUNyQjtFQTdCTDtJQWdDUSxhQUFhO0lBQ2IsaUJBQWlCLEVBQ3BCO0VBbENMOztJQXNDUSxZQUFZO0lBQ1osYUFBYTtJQUNiLFdBQVc7SUFDWCxpQkFBaUI7SUFDakIsMEJBQTBCO0lBQzFCLG1DQUFtQztJQUNuQyw2QkFBNkIsRUFLaEM7SUFqREw7O01BK0NZLGNBQWMsRUFDakI7RUFoRFQ7SUFvRFEsa0RBQXFCLEVBRXhCO0VBdERMO0lBeURRLGlEQUFxQixFQUN4QiIsImZpbGUiOiJzdHlsZXMtcmQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiJG1xLXhsOiBzY3JlZW4gYW5kIChtYXgtd2lkdGg6MTIwMHB4KTtcbiRtcS1sOiBzY3JlZW4gYW5kIChtYXgtd2lkdGg6OTAwcHgpO1xuJG1xLW06IHNjcmVlbiBhbmQgKG1heC13aWR0aDo4MDBweCk7XG4kbXEtczogc2NyZWVuIGFuZCAobWF4LXdpZHRoOjc1MHB4KTtcbiRtcS14czogc2NyZWVuIGFuZCAobWF4LXdpZHRoOjY1MHB4KTtcblxuXG5cbi5oZWFkZXItdG9wIHtcbiAgICBtYXJnaW46IDYwcHggMCAxMDBweCAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTIwcHg7XG4gICAgZm9udC1zaXplOiAwO1xuXG4gICAgQG1lZGlhICN7JG1xLWx9IHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMTAwcHggMDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cblxuICAgIEBtZWRpYSAjeyRtcS14c30ge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDYwcHg7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA2MHB4KTtcbiAgICB9XG5cbiAgICAuaG9tZSAmIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIHRvcDogODBweDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgei1pbmRleDogMztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIHRyYW5zaXRpb246IHRvcCAxcywgYmFja2dyb3VuZC1jb2xvciAxcywgaGVpZ2h0IDFzO1xuXG4gICAgICAgIEBtZWRpYSAjeyRtcS1sfSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucGFnZS10ZW1wbGF0ZS10ZW1wbGF0ZS1zZXJ2aWNlLW1haXRyaXNlICYsXG4gICAgLnBhZ2UtdGVtcGxhdGUtdGVtcGxhdGUtc2VydmljZS1tYW5hZ2VtZW50ICYsXG4gICAgLnBhZ2UtdGVtcGxhdGUtdGVtcGxhdGUtc2VydmljZS1pbW1vYmlsaWVyICYsXG4gICAgLnNpbmdsZS1wcm9qZWN0ICYsXG4gICAgLnNlcnZpY2UgJiB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB6LWluZGV4OiAzO1xuICAgICAgICAvL21hcmdpbjogMDtcbiAgICB9XG5cbiAgICA+IC5jb250YWluZXIge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgLmhvbWUuaXMtaGVhZGVyLXNtYWxsICYge1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGhlaWdodDogODBweDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4IHJnYmEoIzAwMCwgMC4xKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcblxuICAgICAgICBAbWVkaWEgI3skbXEtbH0ge1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubG9nbyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHdpZHRoOiA0MDBweDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgIC5ob21lICYge1xuICAgICAgICB3aWR0aDogNDAwcHg7XG5cbiAgICAgICAgQG1lZGlhICN7JG1xLXhsfSB7XG4gICAgICAgICAgICB3aWR0aDogMzAwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgI3skbXEtbH0ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgIHdpZHRoOiAyMDBweDtcbiAgICAgICAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgI3skbXEteHN9IHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSAjeyRtcS14bH0ge1xuICAgICAgICB3aWR0aDogMzAwcHg7XG4gICAgfVxuXG4gICAgQG1lZGlhICN7JG1xLWx9IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICB3aWR0aDogMjAwcHg7XG4gICAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgfVxuXG4gICAgQG1lZGlhICN7JG1xLXhzfSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgIH1cblxuICAgICY6YmVmb3JlLFxuICAgICY6YWZ0ZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiBuby1yZXBlYXQgbGVmdCBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIC8vdHJhbnNpdGlvbjogdG9wIDAuNHM7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMXM7XG5cbiAgICAgICAgQG1lZGlhICN7JG1xLWx9IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNlbnRlcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvbG9nby13aGl0ZS5wbmcnKTtcbiAgICAgICAgLy90b3A6IC0xMDAlO1xuICAgICAgICBvcGFjaXR5OiAwO1xuXG4gICAgICAgIC5ob21lICYsXG4gICAgICAgIC5zZXJ2aWNlICYsXG4gICAgICAgIC5wYWdlLXRlbXBsYXRlLXRlbXBsYXRlLXNlcnZpY2UtbWFpdHJpc2UgJixcbiAgICAgICAgLnBhZ2UtdGVtcGxhdGUtdGVtcGxhdGUtc2VydmljZS1tYW5hZ2VtZW50ICYsXG4gICAgICAgIC5wYWdlLXRlbXBsYXRlLXRlbXBsYXRlLXNlcnZpY2UtaW1tb2JpbGllciAmLFxuICAgICAgICAuc2luZ2xlLXByb2plY3QgJiB7XG4gICAgICAgICAgICAvL3RvcDogMDtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cblxuICAgICAgICAuaG9tZS5pcy1oZWFkZXItc21hbGwgJiB7XG4gICAgICAgICAgICAvL3RvcDogLTEwMCU7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuXG4gICAgICAgICAgICBAbWVkaWEgI3skbXEtbH0ge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvbG9nby1ncmV5LnBuZycpO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAvL3RvcDogMDtcblxuICAgICAgICAuaG9tZSAmLFxuICAgICAgICAuc2VydmljZSAmLFxuICAgICAgICAucGFnZS10ZW1wbGF0ZS10ZW1wbGF0ZS1zZXJ2aWNlLW1haXRyaXNlICYsXG4gICAgICAgIC5wYWdlLXRlbXBsYXRlLXRlbXBsYXRlLXNlcnZpY2UtbWFuYWdlbWVudCAmLFxuICAgICAgICAucGFnZS10ZW1wbGF0ZS10ZW1wbGF0ZS1zZXJ2aWNlLWltbW9iaWxpZXIgJixcbiAgICAgICAgLnNpbmdsZS1wcm9qZWN0ICYge1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIC8vdG9wOiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgLmhvbWUuaXMtaGVhZGVyLXNtYWxsICYge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcblxuICAgICAgICAgICAgQG1lZGlhICN7JG1xLWx9IHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy90b3A6IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5tYWluLW1lbnUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gNDAwcHgpO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAuaG9tZSAmIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDQwMHB4KTtcblxuICAgICAgICBAbWVkaWEgI3skbXEteGx9IHtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAzMDBweCk7XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgI3skbXEtbH0ge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgI3skbXEteGx9IHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDMwMHB4KTtcbiAgICB9XG5cbiAgICBAbWVkaWEgI3skbXEtbH0ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICBAbWVkaWEgI3skbXEteHN9IHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAtMTAwJTtcbiAgICAgICAgei1pbmRleDogMTA7XG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDJyZW0gMDtcbiAgICAgICAgbWF4LXdpZHRoOiAyNTBweDtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDgwcHgpICFpbXBvcnRhbnQ7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmOTI1MTtcbiAgICAgICAgZm9udC1zaXplOiAwO1xuICAgICAgICB0cmFuc2l0aW9uOiByaWdodCAwLjRzO1xuXG4gICAgICAgIC5pcy1tZW51LXZpc2libGUgJiB7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAzMHB4IHJnYmEoIzAwMCwgMC4zKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgID4gdWwge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgLy9vdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgZm9udC1zaXplOiAwO1xuXG4gICAgICAgIEBtZWRpYSAjeyRtcS1sfSB7XG4gICAgICAgICAgICAvL292ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgI3skbXEteHN9IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB9XG5cbiAgICAgICAgPiBsaXtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcblxuICAgICAgICAgICAgQG1lZGlhICN7JG1xLXhzfSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA1cHggMDtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzUwNGQ0ZDtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMnB4O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIDFzO1xuXG4gICAgICAgICAgICAgICAgQG1lZGlhICN7JG1xLXhzfSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmhvbWUgJixcbiAgICAgICAgICAgICAgICAuc2VydmljZSAmLFxuICAgICAgICAgICAgICAgIC5wYWdlLXRlbXBsYXRlLXRlbXBsYXRlLXNlcnZpY2UtbWFpdHJpc2UgJixcbiAgICAgICAgICAgICAgICAucGFnZS10ZW1wbGF0ZS10ZW1wbGF0ZS1zZXJ2aWNlLW1hbmFnZW1lbnQgJixcbiAgICAgICAgICAgICAgICAucGFnZS10ZW1wbGF0ZS10ZW1wbGF0ZS1zZXJ2aWNlLWltbW9iaWxpZXIgJixcbiAgICAgICAgICAgICAgICAuc2luZ2xlLXByb2plY3QgJiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuXG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSAjeyRtcS14c30ge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuaG9tZS5pcy1oZWFkZXItc21hbGwgJiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjNTA0ZDRkO1xuXG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSAjeyRtcS1sfSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcblxuXG4gICAgICAgICAgICAgICAgQG1lZGlhICN7JG1xLXhzfSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDMwcHggMTVweCAwIDE1cHg7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBhe1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOjNweDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmODYzZTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAgICAgICBAbWVkaWEgI3skbXEteHN9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzUwNGQ0ZCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICA+IC5zdWItbWVudSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMzRweDtcbiAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICAgICAgei1pbmRleDogNDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTExMHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxM3B4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyNDBweDtcbiAgICAgICAgICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcywgdHJhbnNmb3JtIDAuM3M7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVkoMCk7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGNlbnRlcjtcblxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItd2lkdGg6IDAgMTBweCAxMHB4IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgI2ZmODYzZSB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG5cbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhICN7JG1xLXhzfSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG5cbiAgICAgICAgICAgICAgICA+IGxpIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogc29saWQgMXB4IHJnYmEoI2ZmZiwgMC4zKTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmODYzZTtcblxuICAgICAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA4cHggMTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjllbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC40cztcblxuICAgICAgICAgICAgICAgICAgICAgICAgLm5vLXRvdWNoZXZlbnRzICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigjZmY4NjNlLCAxMCUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQG1lZGlhICN7JG1xLXhzfSB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVkoMSk7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgICAgICAgICAgICAgICAgID4gbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogc29saWQgMXB4ICNmZmY7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogNXB4IDE1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5jdXJyZW50LW1lbnUtaXRlbSxcbiAgICAgICAgICAgICYuY3VycmVudC1tZW51LWFuY2VzdG9yIHtcblxuICAgICAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDNweCAjZmY4NjNlO1xuXG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSAjeyRtcS14c30ge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmODYzZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLm5vLXRvdWNoZXZlbnRzICY6aG92ZXIge1xuICAgICAgICAgICAgICAgID4gLnN1Yi1tZW51IHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVkoMSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uY29udGFpbmVyLWhlYWRlciB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmJnLWhlYWRlciB7XG4gICAgYW5pbWF0aW9uOiBoZWFkZXItYmcgMTVzIGVhc2UtaW4tb3V0IGluZmluaXRlIGFsdGVybmF0ZTtcbn1cblxuXG5Aa2V5ZnJhbWVzIGhlYWRlci1iZyB7XG4gICAgMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpIHJvdGF0ZSgwZGVnKTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjIpIHJvdGF0ZSgyZGVnKTtcbiAgICB9XG59XG5cblxuLmFuaW1hdGlvbntcbiAgICAuY3NzdHJhbnNpdGlvbnMgJiB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAxLjRzLCBvcGFjaXR5IDEuNHM7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg1MCUpO1xuXG4gICAgICAgICYuYW5pbWF0ZWQge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLml0ZW1zIHtcbiAgICBwYWRkaW5nOiA4MHB4IDA7XG59XG5cblxuLml0ZW1zLWxpc3Qge1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICB9XG5cbiAgICA+IGxpIHtcbiAgICAgICAgcGFkZGluZzogMTVweDtcblxuICAgICAgICA+IGEge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgIC5vdmVybGF5IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCNmZjg2M2UsIDAuOSk7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC40cywgb3BhY2l0eSAwLjRzO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDM7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnKyc7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogODBweDtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNHMsIG9wYWNpdHkgMC40cztcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCkgc2NhbGUoMC41KTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBoNCB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoIzAwMCwgMC41KTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjRzLCBiYWNrZ3JvdW5kLWNvbG9yIDAuNHM7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubm8tdG91Y2hldmVudHMgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgLm92ZXJsYXkge1xuICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgc2NhbGUoMSk7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBoNCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAvL2NvbG9yOiAjMDAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmN0YSB7XG4gICAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZjg2M2U7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxMDAlIC8gNjcwICogMzM1O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXG4gICAgICAgICAgICAgICAgaDQge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cbiAgICAgICAgICAgICAgICAgICAgc3Ryb25nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40ZW07XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5kb21haW5lcy1hY3Rpb24ge1xuICAgIGxpIHtcbiAgICAgICAgZmlndXJlIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjRzO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApIHJvdGF0ZSgwKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5uby10b3VjaGV2ZW50cyAmOmhvdmVyIHtcbiAgICAgICAgICAgIGZpZ3VyZSB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KSByb3RhdGUoMjBkZWcpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uYnRuIHtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMS40cywgb3BhY2l0eSAxLjRzLCBiYWNrZ3JvdW5kLWNvbG9yIDAuNnMgIWltcG9ydGFudDtcblxuICAgIC5uby10b3VjaGV2ZW50cyAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCNmZjg2M2UsIDEwJSk7XG4gICAgfVxufVxuXG4uc2VydmljZS1idG4ge1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAxLjRzLCBvcGFjaXR5IDEuNHMsIGNvbG9yIDAuNnMgIWltcG9ydGFudDtcblxuICAgIC5uby10b3VjaGV2ZW50cyAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICMwMDAgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi50b2dnbGUtbWVudSB7XG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgIEBtZWRpYSAjeyRtcS14c30ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMjVweDtcbiAgICAgICAgbGVmdDogMTVweDtcbiAgICAgICAgei1pbmRleDogNDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICBoZWlnaHQ6IDUwcHg7XG5cbiAgICAgICAgJjpiZWZvcmUsXG4gICAgICAgICY6YWZ0ZXIsXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzUwNGQ0ZDtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcblxuICAgICAgICAgICAgLmhvbWUgJixcbiAgICAgICAgICAgIC5zZXJ2aWNlICYsXG4gICAgICAgICAgICAucGFnZS10ZW1wbGF0ZS10ZW1wbGF0ZS1zZXJ2aWNlLW1haXRyaXNlICYsXG4gICAgICAgICAgICAucGFnZS10ZW1wbGF0ZS10ZW1wbGF0ZS1zZXJ2aWNlLW1hbmFnZW1lbnQgJixcbiAgICAgICAgICAgIC5wYWdlLXRlbXBsYXRlLXRlbXBsYXRlLXNlcnZpY2UtaW1tb2JpbGllciAmLFxuICAgICAgICAgICAgLnNpbmdsZS1wcm9qZWN0ICYge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICB0b3A6IGNhbGMoNTAlIC0gOHB4KTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjRzLCB0b3AgMC40cztcbiAgICAgICAgfVxuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgdG9wOiBjYWxjKDUwJSArIDhweCk7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC40cywgdG9wIDAuNHM7XG4gICAgICAgIH1cblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjRzO1xuICAgICAgICB9XG5cbiAgICAgICAgLmlzLW1lbnUtdmlzaWJsZSAmIHtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoNDVkZWcpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4uc2xjbGFzc2VzIHtcbiAgICAvL2hlaWdodDogMTAwJTtcbiAgICAvL292ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDM7XG5cbiAgICAub3dsLXdyYXBwZXItb3V0ZXIge1xuICAgICAgICAvL2hlaWdodDogY2FsYygxMDAlIC0gNHJlbSk7XG4gICAgfVxuXG4gICAgLm93bC13cmFwcGVyIHtcbiAgICAgICAgLy9oZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgLm93bC1pdGVtIHtcbiAgICAgICAgLy9oZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgLm93bC1jb250cm9scyB7XG4gICAgICAgIC5vd2wtcGFnaW5hdGlvbiB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxcmVtIDAgM3JlbSAwO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICAub3dsLXBhZ2Uge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAvL2JhY2tncm91bmQtY29sb3I6IHJlZDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMTBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTJweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEycHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCNmZmYsIDAuMyk7XG4gICAgICAgICAgICAgICAgLy9ib3JkZXI6IHNvbGlkIDJweCByZ2JhKCNmZmYsIDAuNSk7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjRzO1xuXG4gICAgICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zbGNsYXNzZSB7XG4gICAgICAgIC8vaGVpZ2h0OiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAzcmVtIDAgMXJlbSAwO1xuXG4gICAgICAgICsgLnNsY2xhc3NlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuI291dGRhdGVkIHtcbiAgICBwIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbn1cblxuXG4ucHJvamVjdHMtbmF2IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy10b3A6IDJyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDJyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cbiAgICAuYnRuIHtcbiAgICAgICAgbWFyZ2luOiAwLjVyZW07XG4gICAgfVxuXG4gICAgLmJ0bi1saXN0IHtcbiAgICAgICAgbWluLXdpZHRoOiAzMCU7XG4gICAgICAgIG1heC13aWR0aDogMzIwcHg7XG4gICAgfVxuXG4gICAgLmJ0bi1wcmV2LWNvbnRhaW5lcixcbiAgICAuYnRuLW5leHQtY29udGFpbmVyIHtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICB9XG5cbiAgICAuYnRuLXByZXYtY29udGFpbmVyIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cblxuICAgIC5idG4tbmV4dC1jb250YWluZXIge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxuXG4gICAgLmJ0bi1uZXh0LFxuICAgIC5idG4tcHJldiB7XG4gICAgICAgIHdpZHRoOiAzcmVtO1xuICAgICAgICBoZWlnaHQ6IDNyZW07XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byA2MCU7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmJ0bi1uZXh0IHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvaWNvbi1yaWdodC5wbmcnKTtcblxuICAgIH1cblxuICAgIC5idG4tcHJldiB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL2ljb24tbGVmdC5wbmcnKTtcbiAgICB9XG59XG4iXX0= */
