.container {
  max-width: 120rem;
  width: 90%;
  margin: 0 auto; }

.container-alt {
  max-width: 120rem;
  width: 90%;
  margin: 0 auto; }
  @media (max-width: 767px) {
    .container-alt {
      width: 100%;
      margin: none; } }

.text-center {
  text-align: center; }

.text-transform {
  text-transform: uppercase; }

.section-title {
  font-size: 3rem;
  border-bottom: 1px solid #ccc;
  padding-bottom: 2rem;
  margin-bottom: 3.5rem; }

.btn {
  display: block;
  padding: 5px 12px;
  border-radius: 4px;
  background-color: #8ae4ff;
  color: #333;
  box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.4), 0 -2px 4px -1px rgba(0, 0, 0, 0.4);
  margin: 2rem auto;
  width: 40%;
  cursor: pointer;
  text-align: center; }

.clr {
  display: table;
  clear: both; }

.clearfix::after {
  content: '';
  display: table;
  clear: both; }

.without-mb {
  margin-bottom: 0 !important; }

.with-mb {
  margin-bottom: 3rem; }

.flex-control-paging li a {
  width: 16px !important;
  height: 16px !important; }

*,
*::after,
*::before {
  padding: 0;
  margin: 0;
  box-sizing: inherit; }

html {
  font-size: 62.5%;
  font-family: "Montserrat", sans-serif;
  line-height: 1.6;
  box-sizing: border-box; }
  @media (max-width: 850px) {
    html {
      font-size: 56%; } }
  @media (max-width: 550px) {
    html {
      font-size: 50%; } }

body,
input,
textarea,
button {
  font-size: 1.6rem;
  font-family: inherit;
  line-height: inherit; }

a {
  text-decoration: none; }

ul,
li {
  list-style: none outside; }

h1,
h2,
h3,
h4,
h5,
h6 {
  line-height: 1.1; }

#header .custom-logo-link:focus {
  outline: 2px solid #f4f4f4; }

footer .custom-logo-link:focus {
  outline: 2px solid #8ae4ff; }

#header nav a:focus {
  border: 1px solid #f4f4f4;
  outline: none; }

.flexslider a:focus,
.services-short a:focus,
.gallery a:focus,
.services-grid__child:focus {
  border: 3px solid #2bc1e2;
  outline: none; }

.gallery a:focus,
iframe:focus {
  box-shadow: 0 10px 6px rgba(43, 193, 226, 0.5); }

.wpcf7-submit:focus,
.footer__content-4 a:focus {
  border: 3px solid #fff !important; }

.footer__content-4 a:focus {
  outline: none; }

.footer__content-3 a:focus {
  border-top: 2px solid #333;
  border-bottom: 2px solid #333;
  border-right: 2px solid #333;
  outline: none; }

.page-template-about-us-template .flexslider a:focus {
  border: 3px solid #fff; }

.services-grid li a:focus {
  border: 3px solid #333; }

.services-pagination a:focus {
  box-shadow: 0 2px 2px rgba(0, 0, 0, 0);
  outline: 2px solid rgba(51, 49, 49, 0.5); }

.blog-wrapper__left a:focus {
  outline: 3px solid #8ae4ff; }

.widget a:focus,
.widget-2 a:focus {
  outline: 2px solid #8ae4ff !important; }

.footer-copyright-info a:focus {
  border: 3px solid #fff !important; }

.site-header {
  background-image: linear-gradient(90deg, #e1f6fc, #2bc1e2);
  padding: 1.5rem;
  height: 12vh; }
  @media (max-width: 819px) {
    .site-header {
      height: 15vh; } }
  @media (min-width: 820px) {
    .site-header {
      height: 13vh;
      display: flex;
      align-items: center; } }
  @media (max-width: 819px) and (orientation: landscape) {
    .site-header {
      height: 25vh; } }
  .site-header-content {
    display: flex;
    justify-content: center;
    align-items: center; }
    @media (min-width: 820px) {
      .site-header-content {
        justify-content: space-between; } }
    .site-header-content__logo {
      transition: all 0.3s; }
      .site-header-content__logo img {
        height: 70px;
        width: auto; }
      .site-header-content__logo:hover {
        transform: translateY(-4px);
        box-shadow: 0 2px 2px 1px rgba(244, 244, 244, 0.5), 0 -2px 2px 1px rgba(244, 244, 244, 0.5); }
    .site-header-content span.span-wrapper {
      position: fixed;
      width: 30px;
      height: 20px;
      top: 3rem;
      right: 3rem;
      z-index: 1001;
      cursor: pointer; }
      @media (min-width: 820px) {
        .site-header-content span.span-wrapper {
          display: none; } }
      .site-header-content span.span-wrapper span:nth-child(1) {
        position: absolute;
        top: 50%;
        left: 0;
        width: 30px;
        height: 3.5px;
        background-color: #333; }
      .site-header-content span.span-wrapper span:nth-child(2) {
        position: absolute;
        top: 100%;
        left: 0;
        width: 30px;
        height: 3.5px;
        background-color: #333; }
      .site-header-content span.span-wrapper span:nth-child(3) {
        position: absolute;
        top: 0%;
        left: 0;
        width: 30px;
        height: 3.5px;
        background-color: #333; }
    .site-header-content__menu {
      padding: 2rem 0;
      opacity: 0;
      pointer-events: none;
      position: fixed;
      top: 0;
      left: 0;
      right: 0;
      transition: all 0.6s;
      z-index: 1000;
      transform: translate(100%, -100%);
      animation: animMenu 1.2s ease-in-out; }

@keyframes animMenu {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }
      @media (min-width: 820px) {
        .site-header-content__menu {
          display: block;
          opacity: 1;
          pointer-events: all;
          position: relative;
          transition: all 0.6s;
          z-index: 1000;
          transform: none; } }
    .site-header-content__menu ul {
      display: flex;
      flex-direction: column;
      align-items: center;
      /*font-family: "Dancing Script", cursive;*/ }
      @media (min-width: 820px) {
        .site-header-content__menu ul {
          justify-content: space-between;
          flex-direction: row; } }
      .site-header-content__menu ul li {
        padding-bottom: 1rem;
        padding-right: 2.5rem;
        font-size: 2.2rem; }
        .site-header-content__menu ul li:last-child {
          padding-bottom: 0; }
          .site-header-content__menu ul li:last-child a {
            padding-bottom: 0; }
        @media (min-width: 820px) {
          .site-header-content__menu ul li:last-child {
            padding-right: 0;
            padding-bottom: 1rem; }
            .site-header-content__menu ul li:last-child a {
              padding-bottom: 2rem; } }
        .site-header-content__menu ul li a {
          color: rgba(51, 49, 49, 0.5);
          display: block;
          padding-bottom: 2rem;
          position: relative;
          text-shadow: 1px 2px 4px rgba(0, 0, 0, 0.4); }
        .site-header-content__menu ul li.current_page_item a {
          color: #f4f4f4;
          text-shadow: none; }
        .site-header-content__menu ul li.current_page_item a::before {
          content: '';
          display: block;
          position: absolute;
          top: 0;
          width: 100%;
          height: 5px;
          background-color: #f4f4f4; }
        .site-header-content__menu ul li.current_page_item a::after {
          content: '';
          display: block;
          position: absolute;
          top: 100%;
          left: 50%;
          transform: translateX(-50%);
          border-style: solid;
          border-width: 12px 17px 0 17px;
          border-color: #f4f4f4 transparent transparent transparent;
          transition: all 0.3s; }

.site-header-content__menu.show.transparent {
  background-color: rgba(138, 228, 255, 0.8); }

.site-header-content__menu.show {
  opacity: 1;
  pointer-events: all;
  background-color: #8ae4ff;
  transform: translate(0%); }
  .site-header-content__menu.show ul {
    flex-direction: column;
    align-items: center; }

.hero-slider .flexslider {
  border: 0 !important; }

.hero-slider ul.slides {
  overflow: hidden; }
  .hero-slider ul.slides img {
    width: 100vw;
    height: 70vh;
    margin: 0 auto; }
    @media (max-width: 819px) {
      .hero-slider ul.slides img {
        height: 50vh; } }

.hero-slider h2 {
  font-style: italic;
  opacity: .8;
  width: 90%;
  margin: 2rem auto;
  letter-spacing: 2px; }
  @media (min-width: 812px) {
    .hero-slider h2 {
      width: 70%; } }

.services-short {
  padding: 4rem 1rem; }
  .services-short-grid__content ul {
    display: grid;
    grid-gap: 2rem;
    grid-row-gap: 4rem; }
    .services-short-grid__content ul li {
      position: relative;
      background-color: #f4f4f4;
      cursor: pointer;
      padding: 0.5rem;
      display: grid;
      grid-template-rows: minmax(80px, auto) 190px 120px 70px;
      align-items: center; }
      @media (min-width: 820px) {
        .services-short-grid__content ul li {
          grid-template-rows: minmax(90px, auto) 210px 130px 80px; } }
      .services-short-grid__content ul li h3 a {
        color: inherit; }
      .services-short-grid__content ul li:hover::after {
        background-color: #8ae4ff; }
      .services-short-grid__content ul li:hover::before {
        background-color: #8ae4ff; }
      .services-short-grid__content ul li::after {
        content: '';
        position: absolute;
        bottom: 0px;
        right: 0px;
        background-color: rgba(0, 0, 0, 0.4);
        filter: blur(2px);
        width: 95%;
        height: 12px;
        transform: skewY(3deg);
        z-index: -1;
        transition: all 0.3s; }
      .services-short-grid__content ul li::before {
        content: '';
        position: absolute;
        bottom: 0px;
        left: 0px;
        background-color: rgba(0, 0, 0, 0.4);
        filter: blur(2px);
        width: 95%;
        height: 12px;
        transform: skewY(-3deg);
        z-index: -1;
        transition: all 0.3s; }
      .services-short-grid__content ul li a.btn {
        position: relative;
        overflow: hidden;
        width: 70%;
        margin: 1rem 0;
        justify-self: center; }
      .services-short-grid__content ul li .image img {
        width: 90%;
        height: 200px;
        margin-bottom: 2rem;
        box-shadow: 2px 2px 5px -1px rgba(0, 0, 0, 0.4); }
        @media (min-width: 700px) and (max-width: 950px) {
          .services-short-grid__content ul li .image img {
            height: 300px; } }
    @media (min-width: 820px) {
      .services-short-grid__content ul {
        grid-template-columns: repeat(3, 1fr); }
      .services-short-grid__content ul a.btn {
        position: relative;
        overflow: hidden;
        width: 70%; }
        .services-short-grid__content ul a.btn span {
          position: relative;
          transition: all 0.3s;
          color: #fff;
          z-index: 2; }
        .services-short-grid__content ul a.btn::before {
          content: '';
          position: absolute;
          top: 0;
          left: 0;
          width: 3rem;
          height: 3rem;
          background-image: radial-gradient(#333, #444);
          transition: transform 0.5s cubic-bezier(0.86, 0, 0.07, 1);
          transform: scale(8);
          border-radius: 50%; }
        .services-short-grid__content ul a.btn:hover::before {
          transform: scale(0); }
        .services-short-grid__content ul a.btn:hover span {
          color: #333; } }
    .services-short-grid__content ul h3 {
      font-size: 1.6em;
      margin-bottom: 1rem; }

.gallery {
  box-shadow: 8px 0 6px -1px rgba(0, 0, 0, 0.5);
  padding: 4rem 1rem;
  background-image: linear-gradient(90deg, #e1f6fc, #2bc1e2); }
  .gallery .section-title {
    border-bottom-color: #333; }
  .gallery h2 p {
    font-size: .6em;
    text-transform: initial;
    margin-top: 6px;
    color: rgba(51, 49, 49, 0.7); }
  .gallery__content div {
    margin-top: 1rem;
    background-color: #fff;
    padding: 1.2rem;
    text-align: center;
    border-radius: 5px;
    box-shadow: -5px -5px 20px rgba(255, 255, 255, 0.1), 5px 5px 20px rgba(0, 0, 0, 0.1), inset -5px -5px 10px rgba(255, 255, 255, 0.5), inset 5px 5px 20px rgba(0, 0, 0, 0.2);
    transition: all 0.3s; }
  .gallery li.blocks-gallery-item {
    transition: all 0.3s; }
    .gallery li.blocks-gallery-item:hover {
      transform: scale(0.9);
      box-shadow: 0 6px 5px rgba(0, 0, 0, 0.4), 0 -6px 5px rgba(0, 0, 0, 0.4); }

.reviews {
  padding: 4rem 1rem; }
  .reviews .reviews-grid {
    display: grid;
    grid-template-columns: 1fr;
    justify-items: center;
    grid-gap: 2rem; }
    @media (min-width: 820px) {
      .reviews .reviews-grid {
        grid-template-columns: 1fr 1fr 1fr; } }
    @media (min-width: 950px) and (max-width: 1150px) {
      .reviews .reviews-grid {
        grid-template-columns: 1fr; } }
    .reviews .reviews-grid iframe {
      box-shadow: 3px 3px 3px rgba(138, 228, 255, 0.5);
      transition: all 0.3s; }
      .reviews .reviews-grid iframe:hover {
        box-shadow: -3px -3px 3px rgba(138, 228, 255, 0.5); }

.contact-form {
  background-color: #f4f4f4;
  padding: 4rem 1rem; }
  @media (orientation: portrait) {
    .contact-form .content {
      text-align: center; } }
  .contact-form .wpcf7-form {
    background-color: #ebf5fc;
    padding: 30px;
    box-shadow: -5px -5px 20px rgba(255, 255, 255, 0.1), 5px 5px 20px rgba(0, 0, 0, 0.1), inset -5px -5px 10px rgba(255, 255, 255, 0.5), inset 5px 5px 20px rgba(0, 0, 0, 0.05);
    transition: all 0.3s;
    border-radius: 40px; }
    .contact-form .wpcf7-form:hover {
      box-shadow: -5px -5px 20px rgba(0, 0, 0, 0.1), 5px 5px 20px rgba(0, 0, 0, 0.1), inset -5px -5px 10px rgba(255, 255, 255, 0.5), inset 5px 5px 20px rgba(0, 0, 0, 0.05); }
    @media (min-width: 820px) {
      .contact-form .wpcf7-form {
        width: 50%;
        margin: 0 auto; } }
    .contact-form .wpcf7-form p input,
    .contact-form .wpcf7-form p textarea {
      border: none;
      width: 100%;
      box-shadow: -5px -5px 20px rgba(255, 255, 255, 0.1), 5px 5px 20px rgba(0, 0, 0, 0.1), inset -5px -5px 10px rgba(255, 255, 255, 0.5), inset 5px 5px 20px rgba(0, 0, 0, 0.2);
      padding: 10px 15px;
      border-radius: 40px; }
    .contact-form .wpcf7-form p textarea {
      padding: 10px 20px; }
    .contact-form .wpcf7-form p label {
      text-align: center;
      margin: 12px 0;
      display: block; }
    .contact-form .wpcf7-form p br {
      display: none; }
    .contact-form .wpcf7-form p input[type="submit"] {
      background-color: #8ae4ff;
      cursor: pointer;
      transition: all 0.3s;
      width: 40%;
      margin: 12px auto 0 auto;
      display: block; }
      .contact-form .wpcf7-form p input[type="submit"]:hover {
        background-color: #f4f4f4; }
    .contact-form .wpcf7-form div.wpcf7-validation-errors,
    .contact-form .wpcf7-form span.wpcf7-not-valid-tip {
      border-color: #8ae4ff;
      text-align: center; }

.contact-form .container-second {
  padding: 2rem;
  background: #fff;
  padding-bottom: 2rem;
  margin-bottom: 3.5rem;
  box-shadow: 0 2px 3px rgba(0, 0, 0, 0.5), 2px 0 3px rgba(255, 255, 255, 0.2); }
  @media (min-width: 812px) {
    .contact-form .container-second {
      display: flex;
      align-items: center; } }
  .contact-form .container-second::after {
    content: '';
    display: table;
    clear: both; }
  .contact-form .container-second .image img {
    display: block;
    border-radius: 50%;
    margin: 1rem auto;
    width: 140px;
    height: 140px; }
    @media (min-width: 820px) {
      .contact-form .container-second .image img {
        float: left;
        border-radius: 50%;
        shape-outside: circle();
        margin: 14px; } }

.site-footer {
  padding: 4rem 1rem;
  box-shadow: 7px 0 5px 3px rgba(0, 0, 0, 0.2);
  background-color: #f4f4f4; }
  @media (max-width: 767px) {
    .site-footer {
      text-align: center;
      padding: 1rem; } }
  .site-footer .footer__content {
    display: grid; }
    .site-footer .footer__content-1 {
      justify-self: center;
      display: flex;
      flex-direction: column;
      align-items: center; }
      .site-footer .footer__content-1 p {
        font-size: .9em;
        margin-top: 1rem;
        text-align: center; }
    @media (min-width: 820px) {
      .site-footer .footer__content {
        grid-template-columns: repeat(3, 1fr);
        grid-gap: 2rem; } }
    .site-footer .footer__content > * {
      margin-bottom: 2rem; }
    .site-footer .footer__content h2 {
      margin-bottom: 2rem;
      text-shadow: 1px 1.5px 1.5px rgba(0, 0, 0, 0.2); }
    .site-footer .footer__content-3 {
      display: flex;
      flex-direction: column;
      align-items: center; }
      .site-footer .footer__content-3 .inner-content {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        background-color: #fff;
        border-left: 6px solid #333;
        box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.3), 0 1px 1px rgba(0, 0, 0, 0.3); }
        .site-footer .footer__content-3 .inner-content a {
          font-size: .9em;
          color: #333;
          text-transform: uppercase;
          padding: 5px 8px;
          transition: all 0.3s;
          position: relative;
          overflow: hidden;
          display: block;
          width: 100%; }
          .site-footer .footer__content-3 .inner-content a::after {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background-color: #8ae4ff;
            transition: all 0.3s;
            transform: translateX(-100%) scale(0);
            transform-origin: top left;
            opacity: 0; }
          .site-footer .footer__content-3 .inner-content a span {
            position: relative;
            z-index: 4; }
          .site-footer .footer__content-3 .inner-content a:hover span {
            color: #525050; }
          .site-footer .footer__content-3 .inner-content a:hover::after {
            opacity: 1;
            transform: translateX(0) scale(1); }
    .site-footer .footer__content-4 a {
      transition: all 0.3s; }
      .site-footer .footer__content-4 a:hover {
        padding: 1rem; }

.footer-copyright-info {
  background-color: #333;
  color: #fff;
  padding: 1rem;
  text-transform: uppercase;
  font-size: .9em; }
  .footer-copyright-info a {
    color: inherit; }
  .footer-copyright-info__content {
    padding: 1rem 0;
    display: flex;
    flex-direction: column;
    align-items: center; }
    @media (min-width: 820px) {
      .footer-copyright-info__content {
        flex-direction: row;
        justify-content: space-between; } }
  .footer-copyright-info a[href*="webselo"],
  .footer-copyright-info .go-to-top {
    background-color: #8ae4ff;
    color: #333;
    padding: 5px;
    border-radius: 4px;
    transition: all 0.3s;
    display: inline-block;
    border: 3px solid #8ae4ff;
    margin: 4px 0; }
    .footer-copyright-info a[href*="webselo"]:hover,
    .footer-copyright-info .go-to-top:hover {
      transform: translateY(-3px);
      border: 3px solid #8ae4ff;
      background-color: #f4f4f4; }

.about-us {
  height: 100vh;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  position: relative;
  padding-bottom: 13px; }
  .about-us .container {
    height: 60%;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: center;
    color: #fff;
    text-transform: uppercase;
    font-weight: 700;
    position: relative;
    text-align: center;
    padding-bottom: 3rem; }
    .about-us .container p {
      padding-bottom: 5rem; }
    .about-us .container h1 {
      font-size: 6rem;
      margin-bottom: 1rem; }
    .about-us .container > * {
      position: relative;
      z-index: 2; }
  .about-us::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.4);
    z-index: 1; }

.flexslider-wrapper {
  background-image: linear-gradient(90deg, #e1f6fc, #2bc1e2);
  padding-bottom: 5rem; }
  .flexslider-wrapper .flexslider {
    width: 70%;
    height: 260px;
    margin: 0 auto !important;
    padding: 3rem 1rem;
    position: relative;
    z-index: 2;
    text-align: center;
    border: none !important;
    background: none !important; }
    @media (min-width: 700px) and (max-width: 950px) {
      .flexslider-wrapper .flexslider {
        height: 370px; } }
    @media (min-width: 820px) {
      .flexslider-wrapper .flexslider {
        width: 70%;
        height: 630px; } }
    @media (max-width: 830px) and (orientation: landscape) {
      .flexslider-wrapper .flexslider {
        height: 370px;
        width: 70%; } }
    .flexslider-wrapper .flexslider ul {
      height: 100%;
      position: relative; }
      .flexslider-wrapper .flexslider ul a {
        position: absolute;
        top: .3rem;
        left: 2rem;
        width: 25rem;
        transition: all 0.3s;
        cursor: pointer;
        border: 3px solid transparent; }
        .flexslider-wrapper .flexslider ul a:hover {
          background-color: #f4f4f4; }
      .flexslider-wrapper .flexslider ul li {
        display: flex !important;
        height: 100% !important; }
        .flexslider-wrapper .flexslider ul li img {
          width: 100%;
          height: 100%; }
          @media (min-width: 700px) and (max-width: 950px) {
            .flexslider-wrapper .flexslider ul li img {
              height: 350px; } }

.flex-control-paging li a {
  background-color: #fff !important; }

.flex-control-paging li a.flex-active {
  background-color: #8ae4ff !important; }

.about-us-content {
  padding: 4rem 1rem; }
  @media (max-width: 811px) {
    .about-us-content .container {
      display: flex;
      flex-direction: column;
      align-items: center; } }
  .about-us-content .figure-float {
    width: 100%;
    margin: 4rem auto;
    height: 250px; }
    @media (min-width: 812px) {
      .about-us-content .figure-float {
        width: 80%;
        height: 450px; } }
    .about-us-content .figure-float figure {
      float: none;
      width: 100%;
      height: 100%;
      display: flex;
      justify-content: center; }
      .about-us-content .figure-float figure img {
        width: 80%;
        height: 100%;
        margin: 0 auto;
        box-shadow: 0 3px 9px rgba(0, 0, 0, 0.4), 0 -3px 9px rgba(0, 0, 0, 0.4); }
  .about-us-content .blocks-gallery-grid img {
    box-shadow: 0 3px 9px rgba(0, 0, 0, 0.4), 0 -3px 9px rgba(0, 0, 0, 0.4); }

.reviews__wrapper {
  padding: 7rem 0;
  display: grid;
  grid-template-columns: 1fr;
  justify-items: center;
  grid-row-gap: 7rem; }
  @media (min-width: 820px) {
    .reviews__wrapper {
      grid-template-columns: 1fr 1fr; } }
  .reviews__wrapper__single {
    display: grid;
    grid-template-columns: 1fr; }
    @media (min-width: 820px) {
      .reviews__wrapper__single {
        grid-gap: 2rem;
        grid-template-columns: 1fr; } }
    .reviews__wrapper__single-left {
      transform: skewY(-10deg);
      position: relative; }
      .reviews__wrapper__single-left::before {
        content: '';
        position: absolute;
        left: 0;
        bottom: 0;
        width: 100%;
        height: 400px;
        background-image: linear-gradient(transparent, rgba(0, 0, 0, 0.15), rgba(0, 0, 0, 0.4));
        transform-origin: bottom;
        transform: skewX(45deg);
        pointer-events: none;
        z-index: -1;
        transition: all 0.6s; }
      .reviews__wrapper__single-left:hover::before {
        transform: translateY(40px) skewX(45deg);
        filter: blur(5px);
        opacity: .5; }
      .reviews__wrapper__single-left__card {
        position: relative;
        background-color: #fff;
        transition: all 0.6s;
        border: 1px solid #00c0f6; }
        .reviews__wrapper__single-left__card:hover {
          transform: translateY(-40px); }
        .reviews__wrapper__single-left__card::before {
          content: '';
          position: absolute;
          top: -30px;
          left: 0;
          width: 100%;
          height: 30px;
          background-color: #00c0f6;
          transform-origin: bottom;
          transform: skewX(45deg);
          transition: all 0.6s; }
          @media (max-width: 767px) {
            .reviews__wrapper__single-left__card::before {
              top: -20px;
              height: 20px; } }
        .reviews__wrapper__single-left__card::after {
          content: '';
          position: absolute;
          top: -30px;
          left: -30px;
          width: 30px;
          height: 100%;
          background-color: #00c0f6;
          transform-origin: left;
          transform: skewY(45deg);
          transition: all 0.6s; }
          @media (max-width: 767px) {
            .reviews__wrapper__single-left__card::after {
              top: -20px;
              left: -20px;
              width: 20px; } }

.pagination-wrapper span.current {
  background-color: #1f738d;
  padding: 15px;
  border-radius: 3px;
  color: #fff; }

.pagination-wrapper a {
  color: #333;
  background-color: #8ae4ff;
  padding: 15px;
  border-radius: 3px;
  box-shadow: 0 2px 2px rgba(0, 0, 0, 0);
  transition: all 0.3s; }
  .pagination-wrapper a:hover {
    opacity: .8;
    box-shadow: 0 2px 2px rgba(0, 0, 0, 0.5); }

.services-grid {
  padding: 4rem 1rem; }
  @media (min-width: 700px) and (max-width: 1150px) and (min-height: 500px) {
    .services-grid .container {
      width: 70%; } }
  .services-grid__parent {
    display: grid;
    grid-template-rows: minmax(250px, auto);
    grid-auto-rows: minmax(250px, auto);
    grid-gap: 3rem; }
    @media (max-width: 819px) and (orientation: landscape) {
      .services-grid__parent {
        grid-template-columns: 50% 50%; } }
    @media (min-width: 820px) and (hover: hover) {
      .services-grid__parent {
        grid-template-columns: repeat(3, 1fr);
        grid-gap: 2.5rem;
        grid-row-gap: 3.5rem; } }
    @media (min-width: 700px) and (max-width: 1150px) {
      .services-grid__parent {
        grid-template-rows: minmax(300px, auto);
        grid-auto-rows: minmax(300px, auto); } }
  .services-grid__child {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    position: relative; }
    .services-grid__child span.border-animatingX,
    .services-grid__child span.border-animatingY {
      position: absolute;
      top: 1rem;
      left: 1rem;
      right: 1rem;
      bottom: 1rem;
      transition: all 0.6s;
      opacity: 1;
      z-index: 3; }
      @media (min-width: 820px) and (hover: hover) {
        .services-grid__child span.border-animatingX,
        .services-grid__child span.border-animatingY {
          opacity: 0; } }
    .services-grid__child span.border-animatingX {
      transform: scaleX(1);
      border-bottom: 1px solid #fff;
      border-top: 1px solid #fff; }
      @media (min-width: 820px) and (hover: hover) {
        .services-grid__child span.border-animatingX {
          transform: scaleX(0); } }
    .services-grid__child span.border-animatingY {
      transform: scaleY(1);
      border-left: 1px solid #fff;
      border-right: 1px solid #fff; }
      @media (min-width: 820px) and (hover: hover) {
        .services-grid__child span.border-animatingY {
          transform: scaleY(0); } }
    .services-grid__child:hover span.border-animatingX,
    .services-grid__child:hover span.border-animatingY {
      opacity: 1; }
    .services-grid__child:hover span.border-animatingX {
      transform: scaleX(1); }
    .services-grid__child:hover span.border-animatingY {
      transform: scaleY(1); }
    .services-grid__child::after {
      content: '';
      position: absolute;
      bottom: 0px;
      right: 0px;
      background-color: rgba(0, 0, 0, 0.4);
      filter: blur(2px);
      width: 95%;
      height: 30px;
      transform: skewY(3deg);
      z-index: -1;
      transition: all 0.3s; }
    .services-grid__child::before {
      content: '';
      position: absolute;
      bottom: 0px;
      left: 0px;
      background-color: rgba(0, 0, 0, 0.4);
      filter: blur(2px);
      width: 95%;
      height: 30px;
      transform: skewY(-3deg);
      z-index: -1;
      transition: all 0.3s; }
    .services-grid__child:hover::after {
      background-color: #8ae4ff; }
    .services-grid__child:hover::before {
      background-color: #8ae4ff; }
    .services-grid__child .excerpt {
      opacity: 1;
      display: grid;
      place-content: center;
      height: 100%;
      justify-items: center;
      padding: 0 2rem;
      position: relative;
      z-index: 2;
      color: #fff;
      transition: all 0.6s;
      text-align: center;
      transform: scale(1); }
      @media (min-width: 820px) and (hover: hover) {
        .services-grid__child .excerpt {
          opacity: 0;
          transform: scale(0); } }
      .services-grid__child .excerpt > p {
        line-height: 1.3;
        font-size: 1.2em; }
        @media (min-width: 820px) and (hover: hover) {
          .services-grid__child .excerpt > p {
            font-size: .9em; } }
      .services-grid__child .excerpt > h2 {
        margin-bottom: 2rem;
        font-size: 1.8em; }
      .services-grid__child .excerpt::after {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-color: rgba(0, 0, 0, 0.4);
        z-index: -1; }
    .services-grid__child:hover .excerpt {
      opacity: 1;
      transform: scale(1); }
    .services-grid__child .btn-services {
      display: block;
      padding: 5px 12px;
      border-radius: 4px;
      background-image: linear-gradient(140deg, #8ae4ff, #fff);
      color: #333;
      box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.4), 0 -2px 4px -1px rgba(0, 0, 0, 0.4);
      margin: 2rem auto;
      width: 70%;
      cursor: pointer;
      text-align: center;
      position: absolute;
      top: -3.7rem;
      right: 0;
      z-index: 5;
      opacity: 1;
      transform: rotateX(0);
      transform-origin: top;
      transition: all 0.6s;
      line-height: 1.4;
      border: 3px solid transparent; }
      @media (max-width: 819px) {
        .services-grid__child .btn-services {
          top: -3.5rem; } }
      @media (min-width: 820px) and (hover: hover) and (hover: hover) {
        .services-grid__child .btn-services {
          opacity: 0;
          transform: rotateX(180deg); } }
    .services-grid__child:hover .btn-services {
      opacity: 1;
      transform: rotateX(0deg); }

.services-pagination {
  padding: 3rem 1rem; }
  .services-pagination span.current {
    background-color: #1f738d;
    padding: 15px;
    border-radius: 3px;
    color: #fff; }
  .services-pagination a {
    color: #333;
    background-color: #8ae4ff;
    padding: 15px;
    border-radius: 3px;
    box-shadow: 0 2px 2px rgba(0, 0, 0, 0);
    transition: all 0.3s; }
    .services-pagination a:hover {
      opacity: .8;
      box-shadow: 0 2px 2px rgba(0, 0, 0, 0.5); }

.blog-wrapper {
  padding: 4rem 1rem; }
  .blog-wrapper__grid {
    display: grid; }
    @media (min-width: 1050px) {
      .blog-wrapper__grid {
        grid-template-columns: 3fr 1fr;
        grid-gap: 2rem; } }
  .blog-wrapper__leftcontainer {
    margin: 3rem 1rem;
    border-radius: 30px;
    border: 3px solid #f4f4f4;
    box-shadow: -8px -8px 15px rgba(244, 244, 244, 0.5), 10px 10px 10px rgba(0, 0, 0, 0.1), inset -8px -8px 15px rgba(244, 244, 244, 0.5), inset 20px 20px 20px rgba(0, 0, 0, 0.1);
    padding: 2rem; }
    .blog-wrapper__leftcontainer strong {
      text-transform: uppercase;
      letter-spacing: 2px; }
    .blog-wrapper__leftcontainer::after {
      content: '';
      display: table;
      clear: both; }
    .blog-wrapper__leftcontainer-media div {
      overflow: hidden;
      box-shadow: 0 4px 4px rgba(0, 0, 0, 0.3);
      transition: all 0.3s;
      margin-bottom: 3rem; }
      @media (max-width: 819px) and (orientation: landscape) {
        .blog-wrapper__leftcontainer-media div {
          box-shadow: none; } }
      @media (min-width: 820px) {
        .blog-wrapper__leftcontainer-media div {
          float: left;
          shape-outside: circle();
          margin-bottom: 0;
          margin: 14px;
          border-radius: 50%; } }
      @media only screen and (min-device-width: 768px) and (max-device-width: 1024px) and (-webkit-min-device-pixel-ratio: 2) {
        .blog-wrapper__leftcontainer-media div {
          box-shadow: none; } }
      .blog-wrapper__leftcontainer-media div img {
        transition: all 0.3s;
        display: block;
        width: 100%;
        height: auto; }
        @media (max-width: 819px) and (orientation: landscape) {
          .blog-wrapper__leftcontainer-media div img {
            width: 400px;
            margin: auto;
            height: 300px;
            object-fit: cover; } }
        @media only screen and (min-device-width: 768px) and (max-device-width: 1024px) and (-webkit-min-device-pixel-ratio: 2) {
          .blog-wrapper__leftcontainer-media div img {
            width: 300px;
            height: 300px;
            margin: 0 auto; } }
      .blog-wrapper__leftcontainer-media div:hover {
        box-shadow: 0 8px 8px rgba(0, 0, 0, 0.5); }
      .blog-wrapper__leftcontainer-media div:hover img {
        transform: scale(1.2); }
    @media (max-width: 819px) {
      .blog-wrapper__leftcontainer-content {
        text-align: center; } }
    .blog-wrapper__leftcontainer-content h2 {
      margin-bottom: 1.5rem;
      font-size: 1.9em; }
    .blog-wrapper__leftcontainer-content a.btnAlt {
      display: block;
      padding: 7px 12px;
      border-radius: 4px;
      background-color: transparent;
      color: #333;
      box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.4), 0 -2px 4px -1px rgba(0, 0, 0, 0.4);
      margin: 2rem auto 1rem;
      width: 60%;
      cursor: pointer;
      text-align: center;
      transition: all 0.3s;
      overflow: hidden;
      position: relative; }
      @media (min-width: 820px) {
        .blog-wrapper__leftcontainer-content a.btnAlt {
          width: 40%;
          line-height: 1.1;
          margin: 0;
          margin-top: 12px;
          margin-bottom: 12px;
          margin-left: auto; } }
      .blog-wrapper__leftcontainer-content a.btnAlt::after {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: #333;
        transition: all 0.3s; }
      .blog-wrapper__leftcontainer-content a.btnAlt::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: #8ae4ff;
        transition: all 0.3s; }
      .blog-wrapper__leftcontainer-content a.btnAlt span {
        position: relative;
        z-index: 2;
        color: #fff;
        transition: all 0.3s; }
      .blog-wrapper__leftcontainer-content a.btnAlt:hover::after {
        transform: translateX(-100%); }
      .blog-wrapper__leftcontainer-content a.btnAlt:hover span {
        color: #333; }
  .blog-wrapper__right .widget {
    background-color: #38d1fc;
    padding: 1rem;
    text-align: center;
    cursor: pointer;
    position: relative;
    overflow: hidden;
    transition: all 0.6s;
    border: 1px solid transparent; }
    .blog-wrapper__right .widget .inner-widget {
      position: relative;
      z-index: 2;
      transition: all 0.6s; }
    .blog-wrapper__right .widget::after {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-color: #f4f4f4;
      opacity: 0;
      transform: scale(0) rotateY(180deg);
      transition: all 0.6s; }
    .blog-wrapper__right .widget:hover {
      border: 1px solid #38d1fc; }
    .blog-wrapper__right .widget:hover::after {
      opacity: 1;
      transform: none; }
    .blog-wrapper__right .widget:hover .inner-widget {
      color: #38d1fc; }
    .blog-wrapper__right .widget h2 {
      margin-bottom: 2rem; }
    .blog-wrapper__right .widget li {
      border-bottom: 1px solid #333;
      padding: 6px 0;
      transition: all 0.6s; }
      .blog-wrapper__right .widget li:hover {
        transform: scale(1.1);
        padding: 10px 0; }
      .blog-wrapper__right .widget li:last-child {
        border-bottom: none; }
    .blog-wrapper__right .widget:hover a {
      color: #38d1fc; }
    .blog-wrapper__right .widget a {
      color: #333;
      transition: all 0.6s; }

.blog-pagination {
  padding: 3rem 1rem; }
  .blog-pagination span.current {
    background-color: #1f738d;
    padding: 15px;
    border-radius: 3px;
    color: #fff; }
  .blog-pagination a {
    color: #333;
    background-color: #8ae4ff;
    padding: 15px;
    border-radius: 3px;
    box-shadow: 0 2px 2px rgba(0, 0, 0, 0);
    transition: all 0.3s; }
    .blog-pagination a:hover {
      opacity: .8;
      box-shadow: 0 2px 2px rgba(0, 0, 0, 0.5); }

.widget-2 {
  padding: 4rem 1rem; }
  .widget-2 .services-widget-grid__parent {
    display: grid;
    grid-template-rows: repeat(3, 240px);
    grid-auto-rows: 240px;
    grid-row-gap: 7rem; }
    @media (min-width: 940px) and (max-width: 1100px) {
      .widget-2 .services-widget-grid__parent {
        grid-template-rows: repeat(3, 450px);
        grid-auto-rows: 450px; } }
  .widget-2 .services-widget-grid__child {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    position: relative; }
    .widget-2 .services-widget-grid__child span.border-animatingX,
    .widget-2 .services-widget-grid__child span.border-animatingY {
      position: absolute;
      top: 1rem;
      left: 1rem;
      right: 1rem;
      bottom: 1rem;
      transition: all 0.6s;
      opacity: 1;
      z-index: 3; }
      @media (min-width: 820px) and (hover: hover) {
        .widget-2 .services-widget-grid__child span.border-animatingX,
        .widget-2 .services-widget-grid__child span.border-animatingY {
          opacity: 0; } }
    .widget-2 .services-widget-grid__child span.border-animatingX {
      transform: scaleX(1);
      border-bottom: 1px solid #fff;
      border-top: 1px solid #fff; }
      @media (min-width: 820px) and (hover: hover) {
        .widget-2 .services-widget-grid__child span.border-animatingX {
          transform: scaleX(0); } }
    .widget-2 .services-widget-grid__child span.border-animatingY {
      transform: scaleY(1);
      border-left: 1px solid #fff;
      border-right: 1px solid #fff; }
      @media (min-width: 820px) and (hover: hover) {
        .widget-2 .services-widget-grid__child span.border-animatingY {
          transform: scaleY(0); } }
    .widget-2 .services-widget-grid__child:hover span.border-animatingX,
    .widget-2 .services-widget-grid__child:hover span.border-animatingY {
      opacity: 1; }
    .widget-2 .services-widget-grid__child:hover span.border-animatingX {
      transform: scaleX(1); }
    .widget-2 .services-widget-grid__child:hover span.border-animatingY {
      transform: scaleY(1); }
    .widget-2 .services-widget-grid__child::after {
      content: '';
      position: absolute;
      bottom: 0px;
      right: 0px;
      background-color: rgba(0, 0, 0, 0.4);
      filter: blur(2px);
      width: 95%;
      height: 30px;
      transform: skewY(3deg);
      z-index: -1;
      transition: all 0.3s; }
    .widget-2 .services-widget-grid__child::before {
      content: '';
      position: absolute;
      bottom: 0px;
      left: 0px;
      background-color: rgba(0, 0, 0, 0.4);
      filter: blur(2px);
      width: 95%;
      height: 30px;
      transform: skewY(-3deg);
      z-index: -1;
      transition: all 0.3s; }
    .widget-2 .services-widget-grid__child:hover::after {
      background-color: #8ae4ff; }
    .widget-2 .services-widget-grid__child:hover::before {
      background-color: #8ae4ff; }
    .widget-2 .services-widget-grid__child .excerpt {
      opacity: 1;
      display: grid;
      place-content: center;
      height: 100%;
      justify-items: center;
      padding: 0 2rem;
      position: relative;
      z-index: 2;
      color: #fff;
      transition: all 0.6s;
      text-align: center;
      transform: scale(1); }
      @media (min-width: 820px) and (hover: hover) {
        .widget-2 .services-widget-grid__child .excerpt {
          opacity: 0;
          transform: scale(0); } }
      .widget-2 .services-widget-grid__child .excerpt > p {
        line-height: 1.3;
        font-size: 1.2em; }
        @media (min-width: 820px) and (hover: hover) {
          .widget-2 .services-widget-grid__child .excerpt > p {
            font-size: .9em; } }
      .widget-2 .services-widget-grid__child .excerpt > h2 {
        margin-bottom: 2rem;
        font-size: 1.8em; }
      .widget-2 .services-widget-grid__child .excerpt::after {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-color: rgba(0, 0, 0, 0.4);
        z-index: -1; }
    .widget-2 .services-widget-grid__child:hover .excerpt {
      opacity: 1;
      transform: scale(1); }
    .widget-2 .services-widget-grid__child .btn-services-widget {
      display: block;
      padding: 5px 12px;
      border-radius: 4px;
      background-image: linear-gradient(140deg, #8ae4ff, #fff);
      color: #333;
      box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.4), 0 -2px 4px -1px rgba(0, 0, 0, 0.4);
      width: 60%;
      cursor: pointer;
      text-align: center;
      z-index: 5;
      opacity: 1;
      position: absolute;
      top: 100%;
      transform: rotateX(0);
      transform-origin: top;
      transition: all 0.6s;
      line-height: 1.4; }
      @media (min-width: 820px) and (hover: hover) and (hover: hover) {
        .widget-2 .services-widget-grid__child .btn-services-widget {
          opacity: 0;
          transform: rotateX(180deg); } }
    .widget-2 .services-widget-grid__child:hover .btn-services-widget {
      opacity: 1;
      transform: rotateX(0deg); }

.blog-wrapper .categories {
  display: flex;
  flex-wrap: wrap;
  font-size: .9em; }
  .blog-wrapper .categories a {
    color: #333;
    padding: 0 3px;
    transition: all 0.3s;
    border-bottom: 1px solid #333; }
    .blog-wrapper .categories a:hover {
      color: #38d1fc;
      border-color: #38d1fc; }

body.single-post {
    padding: 0;
}

.single-post ul ~ p {
    margin: 1.5rem 0;
}

.single-post {
  padding: 4rem 1rem; }
  .single-post .single-post-wrapper {
    display: grid;
    grid-template-columns: 1fr; }
    @media (min-width: 820px) {
      .single-post .single-post-wrapper {
        grid-template-columns: 3fr 1fr;
        grid-gap: 3rem; } }
    .single-post .single-post-wrapper .services-on-single-post {
      margin: 4rem 0;
      display: flex;
      flex-wrap: wrap;
      border: 2px solid #2bc1e2; }
      .single-post .single-post-wrapper .services-on-single-post li {
        flex: 0 1 50%;
        padding-bottom: 1rem;
        text-align: center;
        border: 2px solid #2bc1e2;
        cursor: pointer;
        transition: all 0.3s;
        padding: 6px;
        flex-grow: 1; }
        .single-post .single-post-wrapper .services-on-single-post li:hover {
          background-color: #2bc1e2; }
        .single-post .single-post-wrapper .services-on-single-post li h3 {
          font-weight: normal; }
          .single-post .single-post-wrapper .services-on-single-post li a {
              color: inherit;
          }
  .single-post__widget .widget {
    background-color: #38d1fc;
    padding: 1rem;
    text-align: center;
    cursor: pointer;
    position: relative;
    overflow: hidden;
    transition: all 0.6s;
    border: 1px solid transparent; }
    .single-post__widget .widget .inner-widget {
      position: relative;
      z-index: 2;
      transition: all 0.6s; }
    .single-post__widget .widget::after {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-color: #f4f4f4;
      opacity: 0;
      transform: scale(0) rotateY(180deg);
      transition: all 0.6s; }
    .single-post__widget .widget:hover {
      border: 1px solid #38d1fc; }
    .single-post__widget .widget:hover::after {
      opacity: 1;
      transform: none; }
    .single-post__widget .widget:hover .inner-widget {
      color: #38d1fc; }
    .single-post__widget .widget h2 {
      margin-bottom: 2rem; }
    .single-post__widget .widget li {
      border-bottom: 1px solid #333;
      padding: 6px 0;
      transition: all 0.6s; }
      .single-post__widget .widget li:hover {
        transform: scale(1.1);
        padding: 10px 0; }
      .single-post__widget .widget li:last-child {
        border-bottom: none; }
    .single-post__widget .widget:hover a {
      color: #38d1fc; }
    .single-post__widget .widget a {
      color: #333;
      transition: all 0.6s; }

body.single figure img {
  margin: 12px 0; }

body.single ul.blocks-gallery-grid {
  margin: 30px 0; }

/*
 * jQuery FlexSlider v2.7.2
 * https://www.woocommerce.com/flexslider/
 *
 * Copyright 2012 WooThemes
 * Free to use under the GPLv2 and later license.
 * http://www.gnu.org/licenses/gpl-2.0.html
 *
 * Contributing author: Tyler Smith (@mbmufffin)
 *
 */
/* ====================================================================================================================
 * FONT-FACE
 * ====================================================================================================================*/
@font-face {
  font-family: 'flexslider-icon';
  src: url("fonts/flexslider-icon.eot");
  src: url("fonts/flexslider-icon.eot?#iefix") format("embedded-opentype"), url("fonts/flexslider-icon.woff") format("woff"), url("fonts/flexslider-icon.ttf") format("truetype"), url("fonts/flexslider-icon.svg#flexslider-icon") format("svg");
  font-weight: normal;
  font-style: normal; }

/* ====================================================================================================================
 * RESETS
 * ====================================================================================================================*/
.flex-container a:hover,
.flex-slider a:hover {
  outline: none; }

.slides,
.slides > li,
.flex-control-nav,
.flex-direction-nav {
  margin: 0;
  padding: 0;
  list-style: none; }

.flex-pauseplay span {
  text-transform: capitalize; }

/* ====================================================================================================================
 * BASE STYLES
 * ====================================================================================================================*/
.flexslider {
  margin: 0;
  padding: 0; }

.flexslider .slides > li {
  display: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }

.flexslider .slides img {
  width: 100%;
  display: block; }

.flexslider .slides:after {
  content: "\0020";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0; }

html[xmlns] .flexslider .slides {
  display: block; }

* html .flexslider .slides {
  height: 1%; }

.no-js .flexslider .slides > li:first-child {
  display: block; }

/* ====================================================================================================================
 * DEFAULT THEME
 * ====================================================================================================================*/
.flexslider {
  margin: 0 0 60px;
  background: #fff;
  border: 4px solid #fff;
  position: relative;
  zoom: 1;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  -webkit-box-shadow: "" 0 1px 4px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: "" 0 1px 4px rgba(0, 0, 0, 0.2);
  -o-box-shadow: "" 0 1px 4px rgba(0, 0, 0, 0.2);
  box-shadow: "" 0 1px 4px rgba(0, 0, 0, 0.2); }

.flexslider .slides {
  zoom: 1; }

.flexslider .slides img {
  height: auto;
  -moz-user-select: none; }

.flex-viewport {
  max-height: 2000px;
  -webkit-transition: all 1s ease;
  -moz-transition: all 1s ease;
  -ms-transition: all 1s ease;
  -o-transition: all 1s ease;
  transition: all 1s ease; }

.loading .flex-viewport {
  max-height: 300px; }

@-moz-document url-prefix() {
  .loading .flex-viewport {
    max-height: none; } }

.carousel li {
  margin-right: 5px; }

.flex-direction-nav {
  *height: 0; }

.flex-direction-nav a {
  text-decoration: none;
  display: block;
  width: 40px;
  height: 40px;
  margin: -20px 0 0;
  position: absolute;
  top: 50%;
  z-index: 10;
  overflow: hidden;
  opacity: 0;
  cursor: pointer;
  color: rgba(0, 0, 0, 0.8);
  text-shadow: 1px 1px 0 rgba(255, 255, 255, 0.3);
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out; }

.flex-direction-nav a:before {
  font-family: "flexslider-icon";
  font-size: 40px;
  display: inline-block;
  content: '\f001';
  color: rgba(0, 0, 0, 0.8);
  text-shadow: 1px 1px 0 rgba(255, 255, 255, 0.3); }

.flex-direction-nav a.flex-next:before {
  content: '\f002'; }

.flex-direction-nav .flex-prev {
  left: -50px; }

.flex-direction-nav .flex-next {
  right: -50px;
  text-align: right; }

.flexslider:hover .flex-direction-nav .flex-prev {
  opacity: 0.7;
  left: 10px; }

.flexslider:hover .flex-direction-nav .flex-prev:hover {
  opacity: 1; }

.flexslider:hover .flex-direction-nav .flex-next {
  opacity: 0.7;
  right: 10px; }

.flexslider:hover .flex-direction-nav .flex-next:hover {
  opacity: 1; }

.flex-direction-nav .flex-disabled {
  opacity: 0 !important;
  filter: alpha(opacity=0);
  cursor: default;
  z-index: -1; }

.flex-pauseplay a {
  display: block;
  width: 20px;
  height: 20px;
  position: absolute;
  bottom: 5px;
  left: 10px;
  opacity: 0.8;
  z-index: 10;
  overflow: hidden;
  cursor: pointer;
  color: #000; }

.flex-pauseplay a:before {
  font-family: "flexslider-icon";
  font-size: 20px;
  display: inline-block;
  content: '\f004'; }

.flex-pauseplay a:hover {
  opacity: 1; }

.flex-pauseplay a.flex-play:before {
  content: '\f003'; }

.flex-control-nav {
  width: 100%;
  position: absolute;
  bottom: -40px;
  text-align: center; }

.flex-control-nav li {
  margin: 0 6px;
  display: inline-block;
  zoom: 1;
  *display: inline; }

.flex-control-paging li a {
  width: 11px;
  height: 11px;
  display: block;
  background: #666;
  background: rgba(0, 0, 0, 0.5);
  cursor: pointer;
  text-indent: -9999px;
  -webkit-box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.3);
  -moz-box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.3);
  -o-box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.3);
  box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.3);
  -webkit-border-radius: 20px;
  -moz-border-radius: 20px;
  border-radius: 20px; }

.flex-control-paging li a:hover {
  background: #333;
  background: rgba(0, 0, 0, 0.7); }

.flex-control-paging li a.flex-active {
  background: #000;
  background: rgba(0, 0, 0, 0.9);
  cursor: default; }

.flex-control-thumbs {
  margin: 5px 0 0;
  position: static;
  overflow: hidden; }

.flex-control-thumbs li {
  width: 25%;
  float: left;
  margin: 0; }

.flex-control-thumbs img {
  width: 100%;
  height: auto;
  display: block;
  opacity: .7;
  cursor: pointer;
  -moz-user-select: none;
  -webkit-transition: all 1s ease;
  -moz-transition: all 1s ease;
  -ms-transition: all 1s ease;
  -o-transition: all 1s ease;
  transition: all 1s ease; }

.flex-control-thumbs img:hover {
  opacity: 1; }

.flex-control-thumbs .flex-active {
  opacity: 1;
  cursor: default; }

/* ====================================================================================================================
 * RESPONSIVE
 * ====================================================================================================================*/
@media screen and (max-width: 860px) {
  .flex-direction-nav .flex-prev {
    opacity: 1;
    left: 10px; }
  .flex-direction-nav .flex-next {
    opacity: 1;
    right: 10px; } }

.lb-loader, .lightbox {
  text-align: center;
  line-height: 0;
  position: absolute;
  left: 0; }

body.lb-disable-scrolling {
  overflow: hidden; }

.lightboxOverlay {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 9999;
  background-color: #000;
  filter: alpha(Opacity=80);
  opacity: .8;
  display: none; }

.lightbox {
  width: 100%;
  z-index: 10000;
  font-weight: 400;
  outline: 0; }

.lightbox .lb-image {
  display: block;
  height: auto;
  max-width: inherit;
  max-height: none;
  border-radius: 3px;
  border: 4px solid #fff; }

.lightbox a img {
  border: none; }

.lb-outerContainer {
  position: relative;
  width: 250px;
  height: 250px;
  margin: 0 auto;
  border-radius: 4px;
  background-color: #fff; }

.lb-outerContainer:after {
  content: "";
  display: table;
  clear: both; }

.lb-loader {
  top: 43%;
  height: 25%;
  width: 100%; }

.lb-cancel {
  display: block;
  width: 32px;
  height: 32px;
  margin: 0 auto;
  background: url(../images/loading.gif) no-repeat; }

.lb-nav {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: 10; }

.lb-container > .nav {
  left: 0; }

.lb-nav a {
  outline: 0;
  background-image: url(data:image/gif;base64,R0lGODlhAQABAPAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==); }

.lb-next, .lb-prev {
  height: 100%;
  cursor: pointer;
  display: block; }

.lb-nav a.lb-prev {
  width: 34%;
  left: 0;
  float: left;
  background: url(../images/prev.png) left 48% no-repeat;
  filter: alpha(Opacity=0);
  opacity: 0;
  -webkit-transition: opacity .6s;
  -moz-transition: opacity .6s;
  -o-transition: opacity .6s;
  transition: opacity .6s; }

.lb-nav a.lb-prev:hover {
  filter: alpha(Opacity=100);
  opacity: 1; }

.lb-nav a.lb-next {
  width: 64%;
  right: 0;
  float: right;
  background: url(../images/next.png) right 48% no-repeat;
  filter: alpha(Opacity=0);
  opacity: 0;
  -webkit-transition: opacity .6s;
  -moz-transition: opacity .6s;
  -o-transition: opacity .6s;
  transition: opacity .6s; }

.lb-nav a.lb-next:hover {
  filter: alpha(Opacity=100);
  opacity: 1; }

.lb-dataContainer {
  margin: 0 auto;
  padding-top: 5px;
  width: 100%;
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px; }

.lb-dataContainer:after {
  content: "";
  display: table;
  clear: both; }

.lb-data {
  padding: 0 4px;
  color: #ccc; }

.lb-data .lb-details {
  width: 85%;
  float: left;
  text-align: left;
  line-height: 1.1em; }

.lb-data .lb-caption {
  font-size: 13px;
  font-weight: 700;
  line-height: 1em; }

.lb-data .lb-caption a {
  color: #4ae; }

.lb-data .lb-number {
  display: block;
  clear: left;
  padding-bottom: 1em;
  font-size: 12px;
  color: #999; }

.lb-data .lb-close {
  display: block;
  float: right;
  width: 30px;
  height: 30px;
  background: url(../images/close.png) top right no-repeat;
  text-align: right;
  outline: 0;
  filter: alpha(Opacity=70);
  opacity: .7;
  -webkit-transition: opacity .2s;
  -moz-transition: opacity .2s;
  -o-transition: opacity .2s;
  transition: opacity .2s; }

.lb-data .lb-close:hover {
  cursor: pointer;
  filter: alpha(Opacity=100);
  opacity: 1; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVuZGxlLmNzcyIsInNvdXJjZXMiOlsiYnVuZGxlLnNjc3MiLCJiYXNlL192YXJpYWJsZXMuc2NzcyIsImJhc2UvX3V0aWwuc2NzcyIsImJhc2UvX3Jlc2V0LnNjc3MiLCJjb21wb25lbnRzL19oZWFkZXIuc2NzcyIsImNvbXBvbmVudHMvX3NlcnZpY2VzLXNob3J0LnNjc3MiLCJjb21wb25lbnRzL19nYWxsZXJ5LnNjc3MiLCJjb21wb25lbnRzL19yZXZpZXdzLnNjc3MiLCJjb21wb25lbnRzL19jb250YWN0LnNjc3MiLCJjb21wb25lbnRzL19mb290ZXIuc2NzcyIsImNvbXBvbmVudHMvX2Fib3V0LXVzLnNjc3MiLCJjb21wb25lbnRzL19yZXZpZXdzLXBhZ2Uuc2NzcyIsImNvbXBvbmVudHMvX3NlcnZpY2VzLXBhZ2Uuc2NzcyIsImNvbXBvbmVudHMvX2Jsb2ctcGFnZS5zY3NzIiwiY29tcG9uZW50cy9fYmxvZy1zaW5nbGUuc2NzcyIsIm1pc2MvZmxleHNsaWRlci5jc3MiLCJtaXNjL2xpZ2h0Ym94Lm1pbi5jc3MiXSwic291cmNlc0NvbnRlbnQiOlsiQGltcG9ydCAnLi9iYXNlL3ZhcmlhYmxlcyc7XHJcbkBpbXBvcnQgJy4vYmFzZS91dGlsJztcclxuQGltcG9ydCAnLi9iYXNlL3Jlc2V0JztcclxuQGltcG9ydCAnLi9jb21wb25lbnRzL2hlYWRlcic7XHJcbkBpbXBvcnQgJy4vY29tcG9uZW50cy9zZXJ2aWNlcy1zaG9ydCc7XHJcbkBpbXBvcnQgJy4vY29tcG9uZW50cy9nYWxsZXJ5JztcclxuQGltcG9ydCAnLi9jb21wb25lbnRzL3Jldmlld3MnO1xyXG5AaW1wb3J0ICcuL2NvbXBvbmVudHMvY29udGFjdCc7XHJcbkBpbXBvcnQgJy4vY29tcG9uZW50cy9mb290ZXInO1xyXG5AaW1wb3J0ICcuL2NvbXBvbmVudHMvYWJvdXQtdXMnO1xyXG5AaW1wb3J0ICcuL2NvbXBvbmVudHMvcmV2aWV3cy1wYWdlJztcclxuQGltcG9ydCAnLi9jb21wb25lbnRzL3NlcnZpY2VzLXBhZ2UnO1xyXG5AaW1wb3J0ICcuL2NvbXBvbmVudHMvYmxvZy1wYWdlJztcclxuQGltcG9ydCAnLi9jb21wb25lbnRzL2Jsb2ctc2luZ2xlJztcclxuQGltcG9ydCAnLi9taXNjL2ZsZXhzbGlkZXInO1xyXG5AaW1wb3J0ICcuL21pc2MvbGlnaHRib3gubWluJztcclxuXHJcbi8vICAgICBmb250LWZhbWlseTogJ0RhbmNpbmcgU2NyaXB0JywgY3Vyc2l2ZTtcclxuXHJcbi8vICAgICBmb250LWZhbWlseTogJ01vbnRzZXJyYXQnLCBzYW5zLXNlcmlmOyIsIi8vIENvbG9yc1xyXG4kbWFpbi1jb2xvci1ncmFkaWVudDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCAjZTFmNmZjLCAjMmJjMWUyKTtcclxuLy8gJG1haW4tY29sb3ItZ3JhZGllbnQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgxNjMsIDIyNCwgMjU1LCAxKSAwJSwgcmdiYSgxMDksIDE3MywgMjU1LCAxKSAzNCUsIHJnYmEoOTUsIDE2NSwgMjU1LCAxKSA0MCUsIHJnYmEoMTE2LCAxNzcsIDI1NSwgMSkgNTAlLCByZ2JhKDExMCwgMTc0LCAyNTUsIDEpIDYxJSk7XHJcbiRtYWluLWNvbG9yOiAjOGFlNGZmO1xyXG4kc2Vjb25kYXJ5LWNvbG9yOiAjMzhkMWZjO1xyXG4kdGhpcmQtY29sb3I6ICMyYmMxZTI7XHJcblxyXG4vLyBGb250IFNpemVzXHJcbiRtYWluLWZvbnQtc2l6ZTogMS41ZW07XHJcbiRoZWFkaW5nLWZvbnQtc2l6ZTogNnJlbTtcclxuJHN1YmhlYWRpbmctZm9udC1zaXplOiAzcmVtO1xyXG5cclxuLy8gU3BhY2luZ3NcclxuJHNwYWNpbmctaGFsZjogLjVyZW07XHJcbiRzcGFjaW5nLTE6IDFyZW07XHJcbiRzcGFjaW5nLTEtaGFsZjogMS41cmVtO1xyXG4kc3BhY2luZy0yOiAycmVtO1xyXG4kc3BhY2luZy0yLWhhbGY6IDIuNXJlbTtcclxuJHNwYWNpbmctMzogM3JlbTtcclxuJHNwYWNpbmctMy1oYWxmOiAzLjVyZW07XHJcbiRzcGFjaW5nLTQ6IDRyZW07XHJcbiRzcGFjaW5nLTQtaGFsZjogNC41cmVtO1xyXG4kc3BhY2luZy01OiA1cmVtO1xyXG4kc3BhY2luZy01LWhhbGY6IDUuNXJlbTtcclxuJHNwYWNpbmctNjogNnJlbTtcclxuJHNwYWNpbmctNi1oYWxmOiA2LjVyZW07XHJcblxyXG4vLyBGb250IEZhbWlseVxyXG5cclxuJG1haW4tZm9udC1mYW1pbHk6ICdEYW5jaW5nIFNjcmlwdCcsXHJcbmN1cnNpdmU7XHJcbiRzZWNvbmRhcnktZm9udC1mYW1pbHk6ICdNb250c2VycmF0Jyxcclxuc2Fucy1zZXJpZjtcclxuXHJcbi8vIFRyYW5zaXRpb25cclxuXHJcbiR0cmFuc2l0aW9uOiBhbGwgLjNzO1xyXG4kdHJhbnNpdGlvbkFsdDogYWxsIC42czsiLCIuY29udGFpbmVyIHtcclxuICAgIG1heC13aWR0aDogMTIwcmVtO1xyXG4gICAgd2lkdGg6IDkwJTtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG59XHJcblxyXG4uY29udGFpbmVyLWFsdCB7XHJcbiAgICBtYXgtd2lkdGg6IDEyMHJlbTtcclxuICAgIHdpZHRoOiA5MCU7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuXHJcbiAgICBAbWVkaWEobWF4LXdpZHRoOiA3NjdweCkge1xyXG4gICAgICAgICYge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgbWFyZ2luOiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnRleHQtY2VudGVyIHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuLnRleHQtdHJhbnNmb3JtIHtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbn1cclxuXHJcbi5zZWN0aW9uLXRpdGxlIHtcclxuICAgIGZvbnQtc2l6ZTogJHN1YmhlYWRpbmctZm9udC1zaXplO1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjY2M7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogJHNwYWNpbmctMjtcclxuICAgIG1hcmdpbi1ib3R0b206ICRzcGFjaW5nLTMtaGFsZjtcclxufVxyXG5cclxuLmJ0biB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHBhZGRpbmc6IDVweCAxMnB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG1haW4tY29sb3I7XHJcbiAgICBjb2xvcjogIzMzMztcclxuICAgIGJveC1zaGFkb3c6IDAgMnB4IDRweCAtMXB4IHJnYmEoMCwgMCwgMCwgLjQpLFxyXG4gICAgICAgIDAgLTJweCA0cHggLTFweCByZ2JhKDAsIDAsIDAsIDAuNCk7XHJcbiAgICBtYXJnaW46ICRzcGFjaW5nLTIgYXV0bztcclxuICAgIHdpZHRoOiA0MCU7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5jbHIge1xyXG4gICAgZGlzcGxheTogdGFibGU7XHJcbiAgICBjbGVhcjogYm90aDtcclxufVxyXG5cclxuLmNsZWFyZml4IHtcclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcclxuICAgICAgICBjbGVhcjogYm90aDtcclxuICAgIH1cclxufVxyXG5cclxuLndpdGhvdXQtbWIge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ud2l0aC1tYiB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2luZy0zO1xyXG59XHJcblxyXG4uZmxleC1jb250cm9sLXBhZ2luZyBsaSBhIHtcclxuICAgIHdpZHRoOiAxNnB4ICFpbXBvcnRhbnQ7XHJcbiAgICBoZWlnaHQ6IDE2cHggIWltcG9ydGFudDtcclxufSIsIiosXHJcbio6OmFmdGVyLFxyXG4qOjpiZWZvcmUge1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XHJcbn1cclxuXHJcbmh0bWwge1xyXG4gICAgZm9udC1zaXplOiA2Mi41JTtcclxuICAgIGZvbnQtZmFtaWx5OiAkc2Vjb25kYXJ5LWZvbnQtZmFtaWx5O1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNjtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcblxyXG4gICAgQG1lZGlhKG1heC13aWR0aDogODUwcHgpIHtcclxuICAgICAgICAmIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiA1NiU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYShtYXgtd2lkdGg6IDU1MHB4KSB7XHJcbiAgICAgICAgJiB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNTAlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuYm9keSxcclxuaW5wdXQsXHJcbnRleHRhcmVhLFxyXG5idXR0b24ge1xyXG4gICAgZm9udC1zaXplOiAxLjZyZW07XHJcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcclxuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xyXG59XHJcblxyXG5hIHtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxufVxyXG5cclxudWwsXHJcbmxpIHtcclxuICAgIGxpc3Qtc3R5bGU6IG5vbmUgb3V0c2lkZTtcclxufVxyXG5cclxuaDEsXHJcbmgyLFxyXG5oMyxcclxuaDQsXHJcbmg1LFxyXG5oNiB7XHJcbiAgICBsaW5lLWhlaWdodDogMS4xO1xyXG59XHJcblxyXG4vLyBBY2Nlc3NpYmlsbGl0eVxyXG5cclxuI2hlYWRlciAuY3VzdG9tLWxvZ28tbGluazpmb2N1cyB7XHJcbiAgICBvdXRsaW5lOiAycHggc29saWQgI2Y0ZjRmNDtcclxufVxyXG5cclxuZm9vdGVyIC5jdXN0b20tbG9nby1saW5rOmZvY3VzIHtcclxuICAgIG91dGxpbmU6IDJweCBzb2xpZCAkbWFpbi1jb2xvcjtcclxufVxyXG5cclxuI2hlYWRlciBhOmZvY3VzIHtcclxuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCByZ2JhKDUxLCA0OSwgNDksIDAuNSk7XHJcbiAgICBvdXRsaW5lOiBub25lO1xyXG59XHJcblxyXG4uZmxleHNsaWRlciBhOmZvY3VzLFxyXG4uc2VydmljZXMtc2hvcnQgYTpmb2N1cyxcclxuLmdhbGxlcnkgYTpmb2N1cyB7XHJcbiAgICBib3JkZXI6IDNweCBzb2xpZCAjMmJjMWUyO1xyXG4gICAgb3V0bGluZTogbm9uZTtcclxufVxyXG5cclxuLmdhbGxlcnkgYTpmb2N1cyxcclxuaWZyYW1lOmZvY3VzIHtcclxuICAgIGJveC1zaGFkb3c6IDAgMTBweCA2cHggcmdiYSgkdGhpcmQtY29sb3IsIC41KTtcclxufVxyXG5cclxuLndwY2Y3LXN1Ym1pdDpmb2N1cyxcclxuLmZvb3Rlcl9fY29udGVudC00IGE6Zm9jdXMge1xyXG4gICAgYm9yZGVyOiAzcHggc29saWQgI2ZmZiAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uZm9vdGVyX19jb250ZW50LTQgYTpmb2N1cyB7XHJcbiAgICBvdXRsaW5lOiBub25lO1xyXG59XHJcblxyXG4uZm9vdGVyX19jb250ZW50LTMgYTpmb2N1cyB7XHJcbiAgICBib3JkZXItdG9wOiAycHggc29saWQgIzMzMztcclxuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjMzMzO1xyXG4gICAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQgIzMzMztcclxuICAgIG91dGxpbmU6IG5vbmU7XHJcbn1cclxuXHJcbi5wYWdlLXRlbXBsYXRlLWFib3V0LXVzLXRlbXBsYXRlIC5mbGV4c2xpZGVyIGE6Zm9jdXMge1xyXG4gICAgYm9yZGVyOiAzcHggc29saWQgI2ZmZjtcclxufVxyXG5cclxuLnNlcnZpY2VzLWdyaWQgbGkgYTpmb2N1cyB7XHJcbiAgICBib3JkZXI6IDNweCBzb2xpZCAjMzMzO1xyXG59XHJcblxyXG4uc2VydmljZXMtcGFnaW5hdGlvbiBhOmZvY3VzIHtcclxuICAgIGJveC1zaGFkb3c6IDAgMnB4IDJweCByZ2JhKDAsIDAsIDAsIDApO1xyXG4gICAgb3V0bGluZTogMnB4IHNvbGlkIHJnYmEoNTEsIDQ5LCA0OSwgMC41KTtcclxufVxyXG5cclxuLmJsb2ctd3JhcHBlcl9fbGVmdCBhOmZvY3VzIHtcclxuICAgIG91dGxpbmU6IDNweCBzb2xpZCAkbWFpbi1jb2xvcjtcclxufVxyXG5cclxuLndpZGdldCBhOmZvY3VzLFxyXG4ud2lkZ2V0LTIgYTpmb2N1cyB7XHJcbiAgICBvdXRsaW5lOiAycHggc29saWQgJG1haW4tY29sb3IgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmZvb3Rlci1jb3B5cmlnaHQtaW5mbyBhOmZvY3VzIHtcclxuICAgIGJvcmRlcjogM3B4IHNvbGlkICNmZmYgIWltcG9ydGFudDtcclxufVxyXG5cclxuLy8gLmFqYXgtbG9hZGVyOmZvY3VzIHtcclxuLy8gICAgIG91dGxpbmU6IG5vbmU7XHJcbi8vIH0iLCIuc2l0ZS1oZWFkZXIge1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogJG1haW4tY29sb3ItZ3JhZGllbnQ7XHJcbiAgICBwYWRkaW5nOiAkc3BhY2luZy0xLWhhbGY7XHJcbiAgICBoZWlnaHQ6IDEydmg7XHJcblxyXG4gICAgQG1lZGlhKG1heC13aWR0aDogODE5cHgpIHtcclxuICAgICAgICAmIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxNXZoO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEobWluLXdpZHRoOiA4MjBweCkge1xyXG4gICAgICAgICYge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEzdmg7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYShtYXgtd2lkdGg6IDgxOXB4KSBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcclxuICAgICAgICAmIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiAyNXZoO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLWNvbnRlbnQge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcblxyXG4gICAgICAgIEBtZWRpYShtaW4td2lkdGg6IDgyMHB4KSB7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgICAgICZfX2xvZ28ge1xyXG4gICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA3MHB4O1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XHJcblxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAvLyBib3gtc2hhZG93OiAwIDRweCA0cHggLTNweCByZ2JhKCRzZWNvbmRhcnktY29sb3IsIC41KSxcclxuICAgICAgICAgICAgLy8gICAgICAgICAgICAgMCAtNHB4IDRweCAtM3B4IHJnYmEoJHNlY29uZGFyeS1jb2xvciwgLjUpO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC00cHgpO1xyXG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAycHggMnB4IDFweCByZ2JhKCNmNGY0ZjQsIC41KSxcclxuICAgICAgICAgICAgICAgICAgICAwIC0ycHggMnB4IDFweCByZ2JhKCNmNGY0ZjQsIC41KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgc3Bhbi5zcGFuLXdyYXBwZXIge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICAgIHRvcDogM3JlbTtcclxuICAgICAgICAgICAgcmlnaHQ6IDNyZW07XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDEwMDE7XHJcbiAgICAgICAgICAgIC8vIGJhY2tncm91bmQtY29sb3I6ICRtYWluLWNvbG9yO1xyXG4gICAgICAgICAgICAvLyBib3gtc2hhZG93OiAxcHggMXB4IDNweCAxcHggcmdiYSgwLCAwLCAwLCAwLjQpLFxyXG4gICAgICAgICAgICAvLyAgICAgLTFweCAtMXB4IDNweCAxcHggcmdiYSgwLCAwLCAwLCAwLjQpO1xyXG5cclxuICAgICAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogODIwcHgpIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuXHJcbiAgICAgICAgICAgIHNwYW46bnRoLWNoaWxkKDEpIHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAzLjVweDtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzMzM7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHNwYW46bnRoLWNoaWxkKDIpIHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIHRvcDogMTAwJTtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMzBweDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMy41cHg7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBzcGFuOm50aC1jaGlsZCgzKSB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDAlO1xyXG4gICAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAzLjVweDtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzMzM7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICZfX21lbnUge1xyXG4gICAgICAgICAgICAvLyBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAkc3BhY2luZy0yIDA7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uQWx0O1xyXG4gICAgICAgICAgICB6LWluZGV4OiAxMDAwO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxMDAlLCAtMTAwJSk7XHJcbiAgICAgICAgICAgIGFuaW1hdGlvbjogYW5pbU1lbnUgMS4ycyBlYXNlLWluLW91dDtcclxuXHJcbiAgICAgICAgICAgIEBrZXlmcmFtZXMgYW5pbU1lbnUge1xyXG4gICAgICAgICAgICAgICAgZnJvbSB7XHJcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICB0byB7XHJcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogODIwcHgpIHtcclxuICAgICAgICAgICAgICAgICYge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICAgICAgLy8gdG9wOiAxNSU7IGxlZnQ6IDA7IHJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uQWx0O1xyXG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDEwMDA7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmX19tZW51IHVsIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRtYWluLWZvbnQtZmFtaWx5O1xyXG5cclxuICAgICAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogODIwcHgpIHtcclxuICAgICAgICAgICAgICAgICYge1xyXG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogJHNwYWNpbmctMTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICRzcGFjaW5nLTItaGFsZjtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMi4ycmVtO1xyXG5cclxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogODIwcHgpIHtcclxuICAgICAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogJHNwYWNpbmctMTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206ICRzcGFjaW5nLTI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHJnYmEoNTEsIDQ5LCA0OSwgMC41KTtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogJHNwYWNpbmctMjtcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1zaGFkb3c6IDFweCAycHggNHB4IHJnYmEoMCwgMCwgMCwgMC40KTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAmLmN1cnJlbnRfcGFnZV9pdGVtIGEge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZjRmNGY0O1xyXG4gICAgICAgICAgICAgICAgICAgIHRleHQtc2hhZG93OiBub25lO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICYuY3VycmVudF9wYWdlX2l0ZW0gYTo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNXB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmNGY0ZjQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJi5jdXJyZW50X3BhZ2VfaXRlbSBhOjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgIHRvcDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXdpZHRoOiAxMnB4IDE3cHggMCAxN3B4O1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogI2Y0ZjRmNCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zaXRlLWhlYWRlci1jb250ZW50X19tZW51LnNob3cudHJhbnNwYXJlbnQge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkbWFpbi1jb2xvciwgLjgpO1xyXG59XHJcblxyXG4uc2l0ZS1oZWFkZXItY29udGVudF9fbWVudS5zaG93IHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICBwb2ludGVyLWV2ZW50czogYWxsO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG1haW4tY29sb3I7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwJSk7XHJcblxyXG4gICAgdWwge1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIH1cclxufVxyXG5cclxuLmhlcm8tc2xpZGVyIHtcclxuXHJcbiAgICAuZmxleHNsaWRlciB7XHJcbiAgICAgICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgdWwuc2xpZGVzIHtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwdnc7XHJcbiAgICAgICAgICAgIGhlaWdodDogNzB2aDtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiA4MTlweCkge1xyXG4gICAgICAgICAgICAgICAgJiB7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA1MHZoO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAvLyAgQG1lZGlhKG1heC13aWR0aDogODE5cHgpIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xyXG4gICAgICAgICAgICAvLyAgICAgJiB7XHJcbiAgICAgICAgICAgIC8vICAgICAgICBoZWlnaHQ6IDExMHZoO1xyXG4gICAgICAgICAgICAvLyAgICAgICAgbWFyZ2luLXRvcDogMjB2aDtcclxuICAgICAgICAgICAgLy8gICAgIH1cclxuICAgICAgICAgICAgLy8gIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgaDIge1xyXG4gICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcclxuICAgICAgICBvcGFjaXR5OiAuODtcclxuICAgICAgICB3aWR0aDogOTAlO1xyXG4gICAgICAgIG1hcmdpbjogJHNwYWNpbmctMiBhdXRvO1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAycHg7XHJcblxyXG4gICAgICAgIEBtZWRpYShtaW4td2lkdGg6IDgxMnB4KSB7XHJcbiAgICAgICAgICAgICYge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDcwJTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsIi5zZXJ2aWNlcy1zaG9ydCB7XHJcbiAgICBwYWRkaW5nOiAkc3BhY2luZy00ICRzcGFjaW5nLTE7XHJcblxyXG4gICAgJi1ncmlkX19jb250ZW50IHVsIHtcclxuICAgICAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgICAgIGdyaWQtZ2FwOiAycmVtO1xyXG4gICAgICAgIGdyaWQtcm93LWdhcDogNHJlbTtcclxuXHJcbiAgICAgICAgJiBsaSB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y0ZjRmNDtcclxuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAkc3BhY2luZy1oYWxmO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IG1pbm1heCg4MHB4LCBhdXRvKSAxOTBweCAxMjBweCA3MHB4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuICAgICAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogODIwcHgpIHtcclxuICAgICAgICAgICAgICAgICYge1xyXG4gICAgICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogbWlubWF4KDkwcHgsIGF1dG8pIDIxMHB4IDEzMHB4IDgwcHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGgzIHtcclxuICAgICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyOjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWFpbi1jb2xvcjtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpob3Zlcjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRtYWluLWNvbG9yO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIGJvdHRvbTogMHB4O1xyXG4gICAgICAgICAgICAgICAgcmlnaHQ6IDBweDtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC40KTtcclxuICAgICAgICAgICAgICAgIGZpbHRlcjogYmx1cigycHgpO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDk1JTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMTJweDtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2tld1koM2RlZyk7XHJcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICBib3R0b206IDBweDtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDBweDtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC40KTtcclxuICAgICAgICAgICAgICAgIGZpbHRlcjogYmx1cigycHgpO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDk1JTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMTJweDtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2tld1koLTNkZWcpO1xyXG4gICAgICAgICAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgYS5idG4ge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA3MCU7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46ICRzcGFjaW5nLTEgMDtcclxuICAgICAgICAgICAgICAgIGp1c3RpZnktc2VsZjogY2VudGVyO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuaW1hZ2UgaW1nIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA5MCU7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwMHB4O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNpbmctMjtcclxuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDJweCAycHggNXB4IC0xcHggcmdiYSgwLCAwLCAwLCAwLjQpO1xyXG5cclxuICAgICAgICAgICAgICAgIEBtZWRpYShtaW4td2lkdGg6IDcwMHB4KSBhbmQgKG1heC13aWR0aDogOTUwcHgpIHtcclxuICAgICAgICAgICAgICAgICAgICAmIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzMDBweDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBtZWRpYShtaW4td2lkdGg6IDgyMHB4KSB7XHJcbiAgICAgICAgICAgICYge1xyXG4gICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgYS5idG4ge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA3MCU7XHJcblxyXG4gICAgICAgICAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDNyZW07XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzcmVtO1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHJhZGlhbC1ncmFkaWVudCgjMzMzLCAjNDQ0KTtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC41cyBjdWJpYy1iZXppZXIoMC44NiwgMCwgMC4wNywgMSk7XHJcbiAgICAgICAgICAgICAgICAgICAgLy8gdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSg4KTtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJjpob3Zlcjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICY6aG92ZXIgc3BhbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICMzMzM7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBoMyB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42ZW07XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjaW5nLTE7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiLmdhbGxlcnkge1xyXG4gICAgYm94LXNoYWRvdzogOHB4IDAgNnB4IC0xcHggcmdiYSgwLCAwLCAwLCAwLjUpO1xyXG4gICAgcGFkZGluZzogJHNwYWNpbmctNCAkc3BhY2luZy0xO1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogJG1haW4tY29sb3ItZ3JhZGllbnQ7XHJcblxyXG4gICAgLnNlY3Rpb24tdGl0bGUge1xyXG4gICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICMzMzM7XHJcbiAgICB9XHJcblxyXG4gICAgaDIgcCB7XHJcbiAgICAgICAgZm9udC1zaXplOiAuNmVtO1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBpbml0aWFsO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDZweDtcclxuICAgICAgICBjb2xvcjogcmdiYSg1MSwgNDksIDQ5LCAwLjcpO1xyXG4gICAgfVxyXG5cclxuICAgICZfX2NvbnRlbnQgZGl2IHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAkc3BhY2luZy0xO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgICAgICAgcGFkZGluZzogMS4ycmVtO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XHJcbiAgICAgICAgLy8gYm94LXNoYWRvdzogLTJweCAtMnB4IDhweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpLFxyXG4gICAgICAgIC8vICAgICAgICAgICAgIDJweCAycHggMTJweCByZ2JhKDI1NSwgMjU1LCAyNTUsIC41KSxcclxuICAgICAgICAvLyAgICAgICAgICAgICBpbnNldCAtMnB4IC0ycHggMnB4IHJnYmEoMCwgMCwgMCwgLjE1KSxcclxuICAgICAgICAvLyAgICAgICAgICAgICBpbnNldCAycHggMnB4IDhweCByZ2JhKDAsIDAsIDAsIC4xNSk7XHJcbiAgICAgICAgYm94LXNoYWRvdzogLTVweCAtNXB4IDIwcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAuMSksXHJcbiAgICAgICAgICAgIDVweCA1cHggMjBweCByZ2JhKDAsIDAsIDAsIC4xKSxcclxuICAgICAgICAgICAgaW5zZXQgLTVweCAtNXB4IDEwcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAuNSksXHJcbiAgICAgICAgICAgIGluc2V0IDVweCA1cHggMjBweCByZ2JhKDAsIDAsIDAsIDAuMik7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XHJcbiAgICB9XHJcblxyXG4gICAgbGkuYmxvY2tzLWdhbGxlcnktaXRlbSB7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKC45KTtcclxuICAgICAgICAgICAgYm94LXNoYWRvdzogMCA2cHggNXB4IHJnYmEoMCwgMCwgMCwgLjQpLFxyXG4gICAgICAgICAgICAgICAgMCAtNnB4IDVweCByZ2JhKDAsIDAsIDAsIDAuNCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiLnJldmlld3Mge1xyXG4gICAgcGFkZGluZzogJHNwYWNpbmctNCAkc3BhY2luZy0xO1xyXG5cclxuICAgIC5yZXZpZXdzLWdyaWQge1xyXG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XHJcbiAgICAgICAganVzdGlmeS1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGdyaWQtZ2FwOiAycmVtO1xyXG4gICAgICAgIEBtZWRpYShtaW4td2lkdGg6IDgyMHB4KSB7XHJcbiAgICAgICAgICAgICYge1xyXG4gICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyIDFmcjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBAbWVkaWEobWluLXdpZHRoOiA5NTBweCkgYW5kIChtYXgtd2lkdGg6IDExNTBweCkge1xyXG4gICAgICAgICAgICAmIHtcclxuICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmcmFtZSB7XHJcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDNweCAzcHggM3B4IHJnYmEoJG1haW4tY29sb3IsIC41KTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IC0zcHggLTNweCAzcHggcmdiYSggJG1haW4tY29sb3IsIC41ICk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCIuY29udGFjdC1mb3JtIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNGY0ZjQ7XHJcbiAgICBwYWRkaW5nOiAkc3BhY2luZy00ICRzcGFjaW5nLTE7XHJcblxyXG4gICAgLmNvbnRlbnQge1xyXG4gICAgICAgIEBtZWRpYShvcmllbnRhdGlvbjogcG9ydHJhaXQpIHtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAud3BjZjctZm9ybSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ViZjVmYztcclxuICAgICAgICBwYWRkaW5nOiAzMHB4O1xyXG4gICAgICAgIGJveC1zaGFkb3c6IC01cHggLTVweCAyMHB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjEpLFxyXG4gICAgICAgICAgICA1cHggNXB4IDIwcHggcmdiYSgwLCAwLCAwLCAuMSksXHJcbiAgICAgICAgICAgIGluc2V0IC01cHggLTVweCAxMHB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjUpLFxyXG4gICAgICAgICAgICBpbnNldCA1cHggNXB4IDIwcHggcmdiYSgwLCAwLCAwLCAwLjA1KTtcclxuICAgICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA0MHB4O1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgYm94LXNoYWRvdzogLTVweCAtNXB4IDIwcHggcmdiYSgwLCAwLCAwLCAuMSksXHJcbiAgICAgICAgICAgICAgICA1cHggNXB4IDIwcHggcmdiYSgwLCAwLCAwLCAuMSksXHJcbiAgICAgICAgICAgICAgICBpbnNldCAtNXB4IC01cHggMTBweCByZ2JhKDI1NSwgMjU1LCAyNTUsIC41KSxcclxuICAgICAgICAgICAgICAgIGluc2V0IDVweCA1cHggMjBweCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogODIwcHgpIHtcclxuICAgICAgICAgICAgJiB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHAge1xyXG5cclxuICAgICAgICAgICAgaW5wdXQsXHJcbiAgICAgICAgICAgIHRleHRhcmVhIHtcclxuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogLTVweCAtNXB4IDIwcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAuMSksXHJcbiAgICAgICAgICAgICAgICAgICAgNXB4IDVweCAyMHB4IHJnYmEoMCwgMCwgMCwgLjEpLFxyXG4gICAgICAgICAgICAgICAgICAgIGluc2V0IC01cHggLTVweCAxMHB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjUpLFxyXG4gICAgICAgICAgICAgICAgICAgIGluc2V0IDVweCA1cHggMjBweCByZ2JhKDAsIDAsIDAsIDAuMik7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0MHB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICB0ZXh0YXJlYSB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGxhYmVsIHtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogMTJweCAwO1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGJyIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1haW4tY29sb3I7XHJcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA0MCU7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDEycHggYXV0byAwIGF1dG87XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuXHJcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjRmNGY0O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgZGl2LndwY2Y3LXZhbGlkYXRpb24tZXJyb3JzLFxyXG4gICAgICAgIHNwYW4ud3BjZjctbm90LXZhbGlkLXRpcCB7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJG1haW4tY29sb3I7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICB9XHJcblxyXG4gICAgfVxyXG59XHJcblxyXG4uY29udGFjdC1mb3JtIHtcclxuICAgIC5jb250YWluZXItc2Vjb25kIHtcclxuICAgICAgICBwYWRkaW5nOiAkc3BhY2luZy0yO1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206ICRzcGFjaW5nLTI7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNpbmctMy1oYWxmO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDNweCByZ2JhKDAsIDAsIDAsIDAuNSksXHJcbiAgICAgICAgICAgIDJweCAwIDNweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XHJcblxyXG4gICAgICAgIEBtZWRpYShtaW4td2lkdGg6IDgxMnB4KSB7XHJcbiAgICAgICAgICAgICYge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlO1xyXG4gICAgICAgICAgICBjbGVhcjogYm90aDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYgLmltYWdlIGltZyB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMXJlbSBhdXRvO1xyXG4gICAgICAgICAgICB3aWR0aDogMTQwcHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTQwcHg7XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEobWluLXdpZHRoOiA4MjBweCkge1xyXG4gICAgICAgICAgICAgICAgJiB7XHJcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgICAgICAgICAgICAgIHNoYXBlLW91dHNpZGU6IGNpcmNsZSgpO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMTRweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsIi5zaXRlLWZvb3RlciB7XHJcbiAgICBwYWRkaW5nOiAkc3BhY2luZy00ICRzcGFjaW5nLTE7XHJcbiAgICAvLyBiYWNrZ3JvdW5kLWltYWdlOiAkbWFpbi1jb2xvci1ncmFkaWVudDtcclxuICAgIGJveC1zaGFkb3c6IDdweCAwIDVweCAzcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y0ZjRmNDtcclxuXHJcbiAgICBAbWVkaWEobWF4LXdpZHRoOiA3NjdweCkge1xyXG4gICAgICAgICYge1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6ICRzcGFjaW5nLTE7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5mb290ZXJfX2NvbnRlbnQge1xyXG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XHJcblxyXG4gICAgICAgICYtMSB7XHJcbiAgICAgICAgICAgIGp1c3RpZnktc2VsZjogY2VudGVyO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuICAgICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IC45ZW07XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAkc3BhY2luZy0xO1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAbWVkaWEobWluLXdpZHRoOiA4MjBweCkge1xyXG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xyXG4gICAgICAgICAgICBncmlkLWdhcDogMnJlbTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY+KiB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjaW5nLTI7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjaW5nLTI7XHJcbiAgICAgICAgICAgIHRleHQtc2hhZG93OiAxcHggMS41cHggMS41cHggcmdiYSgwLCAwLCAwLCAwLjIpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi0zIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICAgICAgICAgIC5pbm5lci1jb250ZW50IHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiA2cHggc29saWQgIzMzMztcclxuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDFweCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgMC4zKSxcclxuICAgICAgICAgICAgICAgICAgICAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjMpO1xyXG5cclxuICAgICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgICAgIC8vIGZsZXgtZ3JvdzogMTtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IC45ZW07XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICMzMzM7XHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA1cHggOHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1haW4tY29sb3I7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpIHNjYWxlKDApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDQ7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzUyNTA1MDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXI6OmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApIHNjYWxlKDEpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi00IHtcclxuICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcclxuXHJcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxcmVtO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uZm9vdGVyLWNvcHlyaWdodC1pbmZvIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMzM7XHJcbiAgICBjb2xvcjogI2ZmZjtcclxuICAgIHBhZGRpbmc6ICRzcGFjaW5nLTE7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgZm9udC1zaXplOiAuOWVtO1xyXG5cclxuICAgIGEge1xyXG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xyXG4gICAgICAgIC8vIGJhY2tncm91bmQtY29sb3I6ICRtYWluLWNvbG9yO1xyXG4gICAgfVxyXG5cclxuICAgICZfX2NvbnRlbnQge1xyXG4gICAgICAgIHBhZGRpbmc6ICRzcGFjaW5nLTEgMDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogODIwcHgpIHtcclxuICAgICAgICAgICAgJiB7XHJcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgIH1cclxuXHJcbiAgICBhW2hyZWYqPVwid2Vic2Vsb1wiXSxcclxuICAgIC5nby10by10b3Age1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRtYWluLWNvbG9yO1xyXG4gICAgICAgIGNvbG9yOiAjMzMzO1xyXG4gICAgICAgIHBhZGRpbmc6IDVweDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIGJvcmRlcjogM3B4IHNvbGlkICRtYWluLWNvbG9yO1xyXG4gICAgICAgIG1hcmdpbjogNHB4IDA7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTNweCk7XHJcbiAgICAgICAgICAgIGJvcmRlcjogM3B4IHNvbGlkICRtYWluLWNvbG9yO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjRmNGY0O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbn0iLCIuYWJvdXQtdXMge1xyXG4gICAgaGVpZ2h0OiAxMDB2aDtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgcGFkZGluZy1ib3R0b206IDEzcHg7XHJcblxyXG4gICAgJiAuY29udGFpbmVyIHtcclxuICAgICAgICBoZWlnaHQ6IDYwJTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAzcmVtO1xyXG5cclxuICAgICAgICBwIHtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDVyZW07XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBoMSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGhlYWRpbmctZm9udC1zaXplO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2luZy0xO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJj4qIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAyO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICB9XHJcblxyXG59XHJcblxyXG4uZmxleHNsaWRlci13cmFwcGVyIHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6ICRtYWluLWNvbG9yLWdyYWRpZW50O1xyXG4gICAgcGFkZGluZy1ib3R0b206ICRzcGFjaW5nLTU7XHJcbiAgICAvLyBib3JkZXItYm90dG9tOiAzcHggc29saWQgI2ZmZjtcclxuXHJcbiAgICAuZmxleHNsaWRlciB7XHJcbiAgICAgICAgd2lkdGg6IDcwJTtcclxuICAgICAgICBoZWlnaHQ6IDI2MHB4O1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgcGFkZGluZzogJHNwYWNpbmctMyAkc3BhY2luZy0xO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB6LWluZGV4OiAyO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgIEBtZWRpYShtaW4td2lkdGg6IDcwMHB4KSBhbmQgKG1heC13aWR0aDogOTUwcHgpIHtcclxuICAgICAgICAgICAgJiB7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDM3MHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAbWVkaWEobWluLXdpZHRoOiA4MjBweCkge1xyXG4gICAgICAgICAgICAmIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA3MCU7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDYzMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiA4MzBweCkgYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XHJcbiAgICAgICAgICAgICYge1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAzNzBweDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA3MCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHVsIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIHRvcDogLjNyZW07XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiAycmVtO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDI1cmVtO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XHJcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IDNweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuXHJcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjRmNGY0O1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICAvLyBoZWlnaHQ6IDM1MHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogNzAwcHgpIGFuZCAobWF4LXdpZHRoOiA5NTBweCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAmIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMzUwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgIH1cclxuXHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5cclxuLmZsZXgtY29udHJvbC1wYWdpbmcgbGkgYSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5mbGV4LWNvbnRyb2wtcGFnaW5nIGxpIGEuZmxleC1hY3RpdmUge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG1haW4tY29sb3IgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmFib3V0LXVzLWNvbnRlbnQge1xyXG4gICAgcGFkZGluZzogJHNwYWNpbmctNCAkc3BhY2luZy0xO1xyXG5cclxuICAgIC5jb250YWluZXIge1xyXG4gICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDgxMXB4KSB7XHJcbiAgICAgICAgICAgICYge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5maWd1cmUtZmxvYXQge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIG1hcmdpbjogJHNwYWNpbmctNCBhdXRvO1xyXG4gICAgICAgIGhlaWdodDogMjUwcHg7XHJcblxyXG4gICAgICAgIEBtZWRpYShtaW4td2lkdGg6IDgxMnB4KSB7XHJcbiAgICAgICAgICAgICYge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDgwJTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogNDUwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGZpZ3VyZSB7XHJcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHJcbiAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogODAlO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDNweCA5cHggcmdiYSgwLCAwLCAwLCAwLjQpLFxyXG4gICAgICAgICAgICAgICAgICAgIDAgLTNweCA5cHggcmdiYSgwLCAwLCAwLCAwLjQpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5ibG9ja3MtZ2FsbGVyeS1ncmlkIHtcclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDNweCA5cHggcmdiYSgwLCAwLCAwLCAwLjQpLFxyXG4gICAgICAgICAgICAgICAgMCAtM3B4IDlweCByZ2JhKDAsIDAsIDAsIDAuNCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiLnJldmlld3NfX3dyYXBwZXIge1xyXG4gICAgcGFkZGluZzogN3JlbSAwO1xyXG4gICAgZGlzcGxheTogZ3JpZDtcclxuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xyXG4gICAganVzdGlmeS1pdGVtczogY2VudGVyO1xyXG4gICAgZ3JpZC1yb3ctZ2FwOiA3cmVtO1xyXG5cclxuICAgIEBtZWRpYShtaW4td2lkdGg6IDgyMHB4KSB7XHJcbiAgICAgICAgJiB7XHJcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fc2luZ2xlIHtcclxuXHJcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcclxuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcclxuICAgICAgICBcclxuICAgICAgICBAbWVkaWEobWluLXdpZHRoOiA4MjBweCkge1xyXG4gICAgICAgICAgICAmIHtcclxuICAgICAgICAgICAgICAgIGdyaWQtZ2FwOiAycmVtO1xyXG4gICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYtbGVmdCB7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2tld1koLTEwZGVnKTtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0MDBweDtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCggdHJhbnNwYXJlbnQsIHJnYmEoMCwgMCwgMCwgMC4xNSksIHJnYmEoMCwgMCwgMCwgMC40KSk7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b207XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKDQ1ZGVnKTtcclxuICAgICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgICAgICAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbkFsdDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpob3Zlcjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg0MHB4KSBza2V3WCg0NWRlZyk7XHJcbiAgICAgICAgICAgICAgICBmaWx0ZXI6IGJsdXIoNXB4KTtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IC41O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgXHJcbiAgICAgICAgICAgICZfX2NhcmQge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uQWx0O1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzAwYzBmNjtcclxuXHJcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTQwcHgpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgIHRvcDogLTMwcHg7IFxyXG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMGMwZjY7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tO1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2tld1goNDVkZWcpO1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uQWx0O1xyXG5cclxuICAgICAgICAgICAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiA3NjdweCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAmIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAtMjBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAyMHB4OyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgIHRvcDogLTMwcHg7IFxyXG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IC0zMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBjMGY2O1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBza2V3WSg0NWRlZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb25BbHQ7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDc2N3B4KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IC0yMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAtMjBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICB9XHJcblxyXG4gICAgfVxyXG5cclxufVxyXG5cclxuLnBhZ2luYXRpb24td3JhcHBlciB7XHJcblxyXG4gICAgc3Bhbi5jdXJyZW50IHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWY3MzhkO1xyXG4gICAgICAgIHBhZGRpbmc6IDE1cHg7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xyXG4gICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgfVxyXG5cclxuICAgIGEge1xyXG4gICAgICAgIGNvbG9yOiAjMzMzO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRtYWluLWNvbG9yO1xyXG4gICAgICAgIHBhZGRpbmc6IDE1cHg7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDJweCByZ2JhKDAsIDAsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgb3BhY2l0eTogLjg7XHJcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDJweCByZ2JhKDAsIDAsIDAsIC41KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCIuc2VydmljZXMtZ3JpZCB7XHJcbiAgICBwYWRkaW5nOiAkc3BhY2luZy00ICRzcGFjaW5nLTE7XHJcblxyXG4gICAgLmNvbnRhaW5lciB7XHJcbiAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogNzAwcHgpIGFuZCAobWF4LXdpZHRoOiAxMTUwcHgpIGFuZCAobWluLWhlaWdodDogNTAwcHgpIHtcclxuICAgICAgICAgICAgd2lkdGg6IDcwJTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fcGFyZW50IHtcclxuICAgICAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogbWlubWF4KDI1MHB4LCBhdXRvKTtcclxuICAgICAgICBncmlkLWF1dG8tcm93czogbWlubWF4KDI1MHB4LCBhdXRvKTtcclxuICAgICAgICBncmlkLWdhcDogM3JlbTtcclxuXHJcbiAgICAgICAgQG1lZGlhKG1heC13aWR0aDogODE5cHgpIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xyXG4gICAgICAgICAgICAmIHtcclxuICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogNTAlIDUwJTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogODIwcHgpIGFuZCAoaG92ZXI6IGhvdmVyKSB7XHJcbiAgICAgICAgICAgICYge1xyXG4gICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcclxuICAgICAgICAgICAgICAgIGdyaWQtZ2FwOiAyLjVyZW07XHJcbiAgICAgICAgICAgICAgICBncmlkLXJvdy1nYXA6IDMuNXJlbTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBAbWVkaWEobWluLXdpZHRoOiA3MDBweCkgYW5kIChtYXgtd2lkdGg6IDExNTBweCkge1xyXG4gICAgICAgICAgICAmIHtcclxuICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogbWlubWF4KDMwMHB4LCBhdXRvKTtcclxuICAgICAgICAgICAgICAgIGdyaWQtYXV0by1yb3dzOiBtaW5tYXgoMzAwcHgsIGF1dG8pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX2NoaWxkIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAvLyBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAgICAgICBzcGFuLmJvcmRlci1hbmltYXRpbmdYLFxyXG4gICAgICAgIHNwYW4uYm9yZGVyLWFuaW1hdGluZ1kge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogMXJlbTtcclxuICAgICAgICAgICAgbGVmdDogMXJlbTtcclxuICAgICAgICAgICAgcmlnaHQ6IDFyZW07XHJcbiAgICAgICAgICAgIGJvdHRvbTogMXJlbTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb25BbHQ7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDM7XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEobWluLXdpZHRoOiA4MjBweCkgYW5kIChob3ZlcjogaG92ZXIpIHtcclxuICAgICAgICAgICAgICAgICYge1xyXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHNwYW4uYm9yZGVyLWFuaW1hdGluZ1gge1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgxKTtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmZmY7XHJcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZmZmO1xyXG5cclxuICAgICAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogODIwcHgpIGFuZCAoaG92ZXI6IGhvdmVyKSB7XHJcbiAgICAgICAgICAgICAgICAmIHtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgwKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgc3Bhbi5ib3JkZXItYW5pbWF0aW5nWSB7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVZKDEpO1xyXG4gICAgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNmZmY7XHJcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNmZmY7XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEobWluLXdpZHRoOiA4MjBweCkgYW5kIChob3ZlcjogaG92ZXIpIHtcclxuICAgICAgICAgICAgICAgICYge1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVZKDApO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmhvdmVyIHNwYW4uYm9yZGVyLWFuaW1hdGluZ1gsXHJcbiAgICAgICAgJjpob3ZlciBzcGFuLmJvcmRlci1hbmltYXRpbmdZIHtcclxuICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXIgc3Bhbi5ib3JkZXItYW5pbWF0aW5nWCB7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpob3ZlciBzcGFuLmJvcmRlci1hbmltYXRpbmdZIHtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVkoMSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGJvdHRvbTogMHB4O1xyXG4gICAgICAgICAgICByaWdodDogMHB4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCk7XHJcbiAgICAgICAgICAgIGZpbHRlcjogYmx1cigycHgpO1xyXG4gICAgICAgICAgICB3aWR0aDogOTUlO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2tld1koM2RlZyk7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGJvdHRvbTogMHB4O1xyXG4gICAgICAgICAgICBsZWZ0OiAwcHg7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC40KTtcclxuICAgICAgICAgICAgZmlsdGVyOiBibHVyKDJweCk7XHJcbiAgICAgICAgICAgIHdpZHRoOiA5NSU7XHJcbiAgICAgICAgICAgIGhlaWdodDogMzBweDtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBza2V3WSgtM2RlZyk7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXI6OmFmdGVyIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1haW4tY29sb3I7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmhvdmVyOjpiZWZvcmUge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWFpbi1jb2xvcjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5leGNlcnB0IHtcclxuICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcclxuICAgICAgICAgICAgcGxhY2UtY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIGp1c3RpZnktaXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgcGFkZGluZzogMCAkc3BhY2luZy0yO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbkFsdDtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG5cclxuICAgICAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogODIwcHgpIGFuZCAoaG92ZXI6IGhvdmVyKSB7XHJcbiAgICAgICAgICAgICAgICAmIHtcclxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY+cCB7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4zO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjJlbTtcclxuXHJcbiAgICAgICAgICAgICAgICBAbWVkaWEobWluLXdpZHRoOiA4MjBweCkgYW5kIChob3ZlcjogaG92ZXIpIHtcclxuICAgICAgICAgICAgICAgICAgICAmIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAuOWVtO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJj5oMiB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2luZy0yO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjhlbTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCk7XHJcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpob3ZlciAuZXhjZXJwdCB7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuYnRuLXNlcnZpY2VzIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweCAxMnB4O1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgxNDBkZWcsICRtYWluLWNvbG9yLCAjZmZmKTtcclxuICAgICAgICAgICAgY29sb3I6ICMzMzM7XHJcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDRweCAtMXB4IHJnYmEoMCwgMCwgMCwgLjQpLFxyXG4gICAgICAgICAgICAgICAgMCAtMnB4IDRweCAtMXB4IHJnYmEoMCwgMCwgMCwgMC40KTtcclxuICAgICAgICAgICAgbWFyZ2luOiAkc3BhY2luZy0yIGF1dG87XHJcbiAgICAgICAgICAgIHdpZHRoOiA3MCU7XHJcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogLTMuN3JlbTtcclxuICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDU7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlWCgwKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbkFsdDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcclxuICAgICAgICAgICAgYm9yZGVyOiAzcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiA4MTlweCkge1xyXG4gICAgICAgICAgICAgICAgJiB7XHJcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAtMy41cmVtO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEobWluLXdpZHRoOiA4MjBweCkgYW5kIChob3ZlcjogaG92ZXIpIGFuZCAoaG92ZXI6IGhvdmVyKSB7XHJcbiAgICAgICAgICAgICAgICAmIHtcclxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlWCgxODBkZWcpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmhvdmVyIC5idG4tc2VydmljZXMge1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVgoMGRlZyk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgIH1cclxuXHJcbn1cclxuXHJcbi5zZXJ2aWNlcy1wYWdpbmF0aW9uIHtcclxuICAgIHBhZGRpbmc6ICRzcGFjaW5nLTMgJHNwYWNpbmctMTtcclxuXHJcblxyXG4gICAgc3Bhbi5jdXJyZW50IHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWY3MzhkO1xyXG4gICAgICAgIHBhZGRpbmc6IDE1cHg7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xyXG4gICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgfVxyXG5cclxuICAgIGEge1xyXG4gICAgICAgIGNvbG9yOiAjMzMzO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRtYWluLWNvbG9yO1xyXG4gICAgICAgIHBhZGRpbmc6IDE1cHg7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDJweCByZ2JhKDAsIDAsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgb3BhY2l0eTogLjg7XHJcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDJweCByZ2JhKDAsIDAsIDAsIC41KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCIuYmxvZy13cmFwcGVyIHtcclxuICAgIHBhZGRpbmc6ICRzcGFjaW5nLTQgJHNwYWNpbmctMTtcclxuXHJcbiAgICAmX19ncmlkIHtcclxuICAgICAgICBkaXNwbGF5OiBncmlkO1xyXG5cclxuICAgICAgICBAbWVkaWEobWluLXdpZHRoOiAxMDUwcHgpIHtcclxuICAgICAgICAgICAgJiB7XHJcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDNmciAxZnI7XHJcbiAgICAgICAgICAgICAgICBncmlkLWdhcDogMnJlbTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19sZWZ0Y29udGFpbmVyIHtcclxuXHJcbiAgICAgICAgc3Ryb25nIHtcclxuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDJweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIG1hcmdpbjogJHNwYWNpbmctMyAkc3BhY2luZy0xO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcbiAgICAgICAgYm9yZGVyOiAzcHggc29saWQgcmdiKDI0NCwgMjQ0LCAyNDQpO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IC04cHggLThweCAxNXB4IHJnYmEoMjQ0LCAyNDQsIDI0NCwgMC41KSxcclxuICAgICAgICAxMHB4IDEwcHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMSksXHJcbiAgICAgICAgaW5zZXQgLThweCAtOHB4IDE1cHggcmdiYSgyNDQsIDI0NCwgMjQ0LCAuNSksXHJcbiAgICAgICAgaW5zZXQgMjBweCAyMHB4IDIwcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xyXG4gICAgICAgIHBhZGRpbmc6ICRzcGFjaW5nLTI7XHJcbiAgICAgICAgLy8gIzhhZTRmZlxyXG5cclxuICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcclxuICAgICAgICAgICAgY2xlYXI6IGJvdGg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLW1lZGlhIHtcclxuICAgICAgICAgICAgZGl2IHtcclxuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDRweCA0cHggcmdiYSgwLCAwLCAwLCAwLjMpO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzcmVtO1xyXG5cclxuICAgICAgICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDgxOXB4KSBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcclxuICAgICAgICAgICAgICAgICAgICAmIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogODIwcHgpIHtcclxuICAgICAgICAgICAgICAgICAgICAmIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHNoYXBlLW91dHNpZGU6IGNpcmNsZSgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDE0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLWRldmljZS13aWR0aCA6IDc2OHB4KSBhbmQgKG1heC1kZXZpY2Utd2lkdGggOiAxMDI0cHgpIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhKG1heC13aWR0aDogODE5cHgpIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAmIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0MDBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogYXV0bztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMzAwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLWRldmljZS13aWR0aCA6IDc2OHB4KSBhbmQgKG1heC1kZXZpY2Utd2lkdGggOiAxMDI0cHgpIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDMwMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzMDBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgOHB4IDhweCByZ2JhKDAsIDAsIDAsIDAuNSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJjpob3ZlciBpbWcge1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4yKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi1jb250ZW50IHtcclxuICAgICAgICAgICAgQG1lZGlhKG1heC13aWR0aDogODE5cHgpIHtcclxuICAgICAgICAgICAgICAgICYge1xyXG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgaDIge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNpbmctMS1oYWxmO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjllbTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgYS5idG5BbHQge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA3cHggMTJweDtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICMzMzM7XHJcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDJweCA0cHggLTFweCByZ2JhKDAsIDAsIDAsIC40KSxcclxuICAgICAgICAgICAgICAgICAgICAwIC0ycHggNHB4IC0xcHggcmdiYSgwLCAwLCAwLCAwLjQpO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAkc3BhY2luZy0yIGF1dG8gJHNwYWNpbmctMTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA2MCU7XHJcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcclxuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgICAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogODIwcHgpIHtcclxuICAgICAgICAgICAgICAgICAgICAmIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDQwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMnB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzMzMztcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1haW4tY29sb3I7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJjpob3Zlcjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJjpob3ZlciBzcGFuIHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzMzMztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19yaWdodCB7XHJcbiAgICAgICAgLndpZGdldCB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDFyZW07XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uQWx0O1xyXG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuXHJcbiAgICAgICAgICAgIC5pbm5lci13aWRnZXQge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgei1pbmRleDogMjtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uQWx0O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmNGY0ZjQ7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKSByb3RhdGVZKDE4MGRlZyk7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbkFsdDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkc2Vjb25kYXJ5LWNvbG9yO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyOjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyIC5pbm5lci13aWRnZXQge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGgyIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjaW5nLTI7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMzMzO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogNnB4IDA7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbkFsdDtcclxuXHJcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpob3ZlciBhIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjMzMzO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb25BbHQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5ibG9nLXBhZ2luYXRpb24ge1xyXG4gICAgcGFkZGluZzogJHNwYWNpbmctMyAkc3BhY2luZy0xO1xyXG5cclxuXHJcbiAgICBzcGFuLmN1cnJlbnQge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxZjczOGQ7XHJcbiAgICAgICAgcGFkZGluZzogMTVweDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XHJcbiAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICB9XHJcblxyXG4gICAgYSB7XHJcbiAgICAgICAgY29sb3I6ICMzMzM7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1haW4tY29sb3I7XHJcbiAgICAgICAgcGFkZGluZzogMTVweDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XHJcbiAgICAgICAgYm94LXNoYWRvdzogMCAycHggMnB4IHJnYmEoMCwgMCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAuODtcclxuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAycHggMnB4IHJnYmEoMCwgMCwgMCwgLjUpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLndpZGdldC0yIHtcclxuICAgIHBhZGRpbmc6ICRzcGFjaW5nLTQgJHNwYWNpbmctMTtcclxuXHJcbiAgICAuc2VydmljZXMtd2lkZ2V0LWdyaWRfX3BhcmVudCB7XHJcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcclxuICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCgzLCAyNDBweCk7XHJcbiAgICAgICAgZ3JpZC1hdXRvLXJvd3M6IDI0MHB4O1xyXG4gICAgICAgIGdyaWQtcm93LWdhcDogN3JlbTtcclxuXHJcbiAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogOTQwcHgpIGFuZCAobWF4LXdpZHRoOiAxMTAwcHgpIHtcclxuICAgICAgICAgICAgJiB7XHJcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCgzLCA0NTBweCk7XHJcbiAgICAgICAgICAgICAgICBncmlkLWF1dG8tcm93czogNDUwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnNlcnZpY2VzLXdpZGdldC1ncmlkX19jaGlsZCB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgLy8gb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgICAgICAgc3Bhbi5ib3JkZXItYW5pbWF0aW5nWCxcclxuICAgICAgICBzcGFuLmJvcmRlci1hbmltYXRpbmdZIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6IDFyZW07XHJcbiAgICAgICAgICAgIGxlZnQ6IDFyZW07XHJcbiAgICAgICAgICAgIHJpZ2h0OiAxcmVtO1xyXG4gICAgICAgICAgICBib3R0b206IDFyZW07XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uQWx0O1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAzO1xyXG5cclxuICAgICAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogODIwcHgpIGFuZCAoaG92ZXI6IGhvdmVyKSB7XHJcbiAgICAgICAgICAgICAgICAmIHtcclxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBzcGFuLmJvcmRlci1hbmltYXRpbmdYIHtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoMSk7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZmZmO1xyXG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2ZmZjtcclxuXHJcbiAgICAgICAgICAgIEBtZWRpYShtaW4td2lkdGg6IDgyMHB4KSBhbmQgKGhvdmVyOiBob3Zlcikge1xyXG4gICAgICAgICAgICAgICAgJiB7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHNwYW4uYm9yZGVyLWFuaW1hdGluZ1kge1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWSgxKTtcclxuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZmZmO1xyXG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjZmZmO1xyXG5cclxuICAgICAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogODIwcHgpIGFuZCAoaG92ZXI6IGhvdmVyKSB7XHJcbiAgICAgICAgICAgICAgICAmIHtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWSgwKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpob3ZlciBzcGFuLmJvcmRlci1hbmltYXRpbmdYLFxyXG4gICAgICAgICY6aG92ZXIgc3Bhbi5ib3JkZXItYW5pbWF0aW5nWSB7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmhvdmVyIHNwYW4uYm9yZGVyLWFuaW1hdGluZ1gge1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgxKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXIgc3Bhbi5ib3JkZXItYW5pbWF0aW5nWSB7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVZKDEpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBib3R0b206IDBweDtcclxuICAgICAgICAgICAgcmlnaHQ6IDBweDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xyXG4gICAgICAgICAgICBmaWx0ZXI6IGJsdXIoMnB4KTtcclxuICAgICAgICAgICAgd2lkdGg6IDk1JTtcclxuICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNrZXdZKDNkZWcpO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBib3R0b206IDBweDtcclxuICAgICAgICAgICAgbGVmdDogMHB4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCk7XHJcbiAgICAgICAgICAgIGZpbHRlcjogYmx1cigycHgpO1xyXG4gICAgICAgICAgICB3aWR0aDogOTUlO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2tld1koLTNkZWcpO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmhvdmVyOjphZnRlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRtYWluLWNvbG9yO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpob3Zlcjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1haW4tY29sb3I7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZXhjZXJwdCB7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICAgICAgICAgIHBsYWNlLWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgJHNwYWNpbmctMjtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAyO1xyXG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb25BbHQ7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuXHJcbiAgICAgICAgICAgIEBtZWRpYShtaW4td2lkdGg6IDgyMHB4KSBhbmQgKGhvdmVyOiBob3Zlcikge1xyXG4gICAgICAgICAgICAgICAgJiB7XHJcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmPnAge1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMztcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yZW07XHJcblxyXG4gICAgICAgICAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogODIwcHgpIGFuZCAoaG92ZXI6IGhvdmVyKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgJiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogLjllbTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY+aDIge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNpbmctMjtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS44ZW07XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xyXG4gICAgICAgICAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXIgLmV4Y2VycHQge1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmJ0bi1zZXJ2aWNlcy13aWRnZXQge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgcGFkZGluZzogNXB4IDEycHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDE0MGRlZywgJG1haW4tY29sb3IsICNmZmYpO1xyXG4gICAgICAgICAgICBjb2xvcjogIzMzMztcclxuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAycHggNHB4IC0xcHggcmdiYSgwLCAwLCAwLCAuNCksXHJcbiAgICAgICAgICAgICAgICAwIC0ycHggNHB4IC0xcHggcmdiYSgwLCAwLCAwLCAwLjQpO1xyXG4gICAgICAgICAgICAvLyBtYXJnaW46ICRzcGFjaW5nLTIgYXV0bztcclxuICAgICAgICAgICAgd2lkdGg6IDYwJTtcclxuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDU7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiAxMDAlO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVgoMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcDtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb25BbHQ7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEobWluLXdpZHRoOiA4MjBweCkgYW5kIChob3ZlcjogaG92ZXIpIGFuZCAoaG92ZXI6IGhvdmVyKSB7XHJcbiAgICAgICAgICAgICAgICAmIHtcclxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlWCgxODBkZWcpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmhvdmVyIC5idG4tc2VydmljZXMtd2lkZ2V0IHtcclxuICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVYKDBkZWcpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICB9XHJcbn1cclxuXHJcbi5ibG9nLXdyYXBwZXIgLmNhdGVnb3JpZXMge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIGZvbnQtc2l6ZTogLjllbTtcclxuXHJcbiAgICBhIHtcclxuICAgICAgICBjb2xvcjogIzMzMztcclxuICAgICAgICBwYWRkaW5nOiAwIDNweDtcclxuICAgICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzMzMztcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiLnNpbmdsZS1wb3N0IHtcclxuICAgIHBhZGRpbmc6ICRzcGFjaW5nLTQgJHNwYWNpbmctMTtcclxuXHJcbiAgICAuc2luZ2xlLXBvc3Qtd3JhcHBlciB7XHJcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcclxuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcclxuXHJcbiAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogODIwcHgpIHtcclxuICAgICAgICAgICAgJiB7XHJcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDNmciAxZnI7XHJcbiAgICAgICAgICAgICAgICBncmlkLWdhcDogM3JlbTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnNlcnZpY2VzLW9uLXNpbmdsZS1wb3N0IHtcclxuICAgICAgICAgICAgbWFyZ2luOiAkc3BhY2luZy00IDA7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgJHRoaXJkLWNvbG9yO1xyXG5cclxuICAgICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAgICAgZmxleDogMCAxIDUwJTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAkc3BhY2luZy0xO1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgJHRoaXJkLWNvbG9yO1xyXG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA2cHg7XHJcblxyXG4gICAgICAgICAgICAgICAgQGlmKCdsaTpudGgtY2hpbGQob2RkKScpIHtcclxuICAgICAgICAgICAgICAgICAgICBmbGV4LWdyb3c6IDE7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoaXJkLWNvbG9yO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIGgzIHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX3dpZGdldCB7XHJcbiAgICAgICAgLndpZGdldCB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDFyZW07XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uQWx0O1xyXG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuXHJcbiAgICAgICAgICAgIC5pbm5lci13aWRnZXQge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgei1pbmRleDogMjtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uQWx0O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmNGY0ZjQ7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKSByb3RhdGVZKDE4MGRlZyk7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbkFsdDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkc2Vjb25kYXJ5LWNvbG9yO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyOjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyIC5pbm5lci13aWRnZXQge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGgyIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjaW5nLTI7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMzMzO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogNnB4IDA7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbkFsdDtcclxuXHJcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpob3ZlciBhIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjMzMzO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb25BbHQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbmJvZHkuc2luZ2xlIGZpZ3VyZSBpbWcge1xyXG4gICAgbWFyZ2luOiAxMnB4IDA7XHJcbn1cclxuXHJcbmJvZHkuc2luZ2xlIHVsLmJsb2Nrcy1nYWxsZXJ5LWdyaWQge1xyXG4gICAgbWFyZ2luOiAzMHB4IDA7XHJcbn0iLCIvKlxuICogalF1ZXJ5IEZsZXhTbGlkZXIgdjIuNy4yXG4gKiBodHRwczovL3d3dy53b29jb21tZXJjZS5jb20vZmxleHNsaWRlci9cbiAqXG4gKiBDb3B5cmlnaHQgMjAxMiBXb29UaGVtZXNcbiAqIEZyZWUgdG8gdXNlIHVuZGVyIHRoZSBHUEx2MiBhbmQgbGF0ZXIgbGljZW5zZS5cbiAqIGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9ncGwtMi4wLmh0bWxcbiAqXG4gKiBDb250cmlidXRpbmcgYXV0aG9yOiBUeWxlciBTbWl0aCAoQG1ibXVmZmZpbilcbiAqXG4gKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBGT05ULUZBQ0VcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ2ZsZXhzbGlkZXItaWNvbic7XG4gIHNyYzogdXJsKCdmb250cy9mbGV4c2xpZGVyLWljb24uZW90Jyk7XG4gIHNyYzogdXJsKCdmb250cy9mbGV4c2xpZGVyLWljb24uZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSwgdXJsKCdmb250cy9mbGV4c2xpZGVyLWljb24ud29mZicpIGZvcm1hdCgnd29mZicpLCB1cmwoJ2ZvbnRzL2ZsZXhzbGlkZXItaWNvbi50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksIHVybCgnZm9udHMvZmxleHNsaWRlci1pY29uLnN2ZyNmbGV4c2xpZGVyLWljb24nKSBmb3JtYXQoJ3N2ZycpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogUkVTRVRTXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4uZmxleC1jb250YWluZXIgYTpob3Zlcixcbi5mbGV4LXNsaWRlciBhOmhvdmVyIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cbi5zbGlkZXMsXG4uc2xpZGVzID4gbGksXG4uZmxleC1jb250cm9sLW5hdixcbi5mbGV4LWRpcmVjdGlvbi1uYXYge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4uZmxleC1wYXVzZXBsYXkgc3BhbiB7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xufVxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIEJBU0UgU1RZTEVTXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4uZmxleHNsaWRlciB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cbi5mbGV4c2xpZGVyIC5zbGlkZXMgPiBsaSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG4uZmxleHNsaWRlciAuc2xpZGVzIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5mbGV4c2xpZGVyIC5zbGlkZXM6YWZ0ZXIge1xuICBjb250ZW50OiBcIlxcMDAyMFwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgY2xlYXI6IGJvdGg7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIGhlaWdodDogMDtcbn1cbmh0bWxbeG1sbnNdIC5mbGV4c2xpZGVyIC5zbGlkZXMge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbiogaHRtbCAuZmxleHNsaWRlciAuc2xpZGVzIHtcbiAgaGVpZ2h0OiAxJTtcbn1cbi5uby1qcyAuZmxleHNsaWRlciAuc2xpZGVzID4gbGk6Zmlyc3QtY2hpbGQge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBERUZBVUxUIFRIRU1FXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4uZmxleHNsaWRlciB7XG4gIG1hcmdpbjogMCAwIDYwcHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJvcmRlcjogNHB4IHNvbGlkICNmZmY7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgem9vbTogMTtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA0cHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogJycgMCAxcHggNHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgLW1vei1ib3gtc2hhZG93OiAnJyAwIDFweCA0cHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAtby1ib3gtc2hhZG93OiAnJyAwIDFweCA0cHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBib3gtc2hhZG93OiAnJyAwIDFweCA0cHggcmdiYSgwLCAwLCAwLCAwLjIpO1xufVxuLmZsZXhzbGlkZXIgLnNsaWRlcyB7XG4gIHpvb206IDE7XG59XG4uZmxleHNsaWRlciAuc2xpZGVzIGltZyB7XG4gIGhlaWdodDogYXV0bztcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbn1cbi5mbGV4LXZpZXdwb3J0IHtcbiAgbWF4LWhlaWdodDogMjAwMHB4O1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAxcyBlYXNlO1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAxcyBlYXNlO1xuICAtbXMtdHJhbnNpdGlvbjogYWxsIDFzIGVhc2U7XG4gIC1vLXRyYW5zaXRpb246IGFsbCAxcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBhbGwgMXMgZWFzZTtcbn1cbi5sb2FkaW5nIC5mbGV4LXZpZXdwb3J0IHtcbiAgbWF4LWhlaWdodDogMzAwcHg7XG59XG5ALW1vei1kb2N1bWVudCB1cmwtcHJlZml4KCkge1xuICAubG9hZGluZyAuZmxleC12aWV3cG9ydCB7XG4gICAgbWF4LWhlaWdodDogbm9uZTtcbiAgfVxufVxuLmNhcm91c2VsIGxpIHtcbiAgbWFyZ2luLXJpZ2h0OiA1cHg7XG59XG4uZmxleC1kaXJlY3Rpb24tbmF2IHtcbiAgKmhlaWdodDogMDtcbn1cbi5mbGV4LWRpcmVjdGlvbi1uYXYgYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDQwcHg7XG4gIG1hcmdpbjogLTIwcHggMCAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB6LWluZGV4OiAxMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgb3BhY2l0eTogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xuICB0ZXh0LXNoYWRvdzogMXB4IDFweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICAtby10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG4uZmxleC1kaXJlY3Rpb24tbmF2IGE6YmVmb3JlIHtcbiAgZm9udC1mYW1pbHk6IFwiZmxleHNsaWRlci1pY29uXCI7XG4gIGZvbnQtc2l6ZTogNDBweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjb250ZW50OiAnXFxmMDAxJztcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbiAgdGV4dC1zaGFkb3c6IDFweCAxcHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyk7XG59XG4uZmxleC1kaXJlY3Rpb24tbmF2IGEuZmxleC1uZXh0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGYwMDInO1xufVxuLmZsZXgtZGlyZWN0aW9uLW5hdiAuZmxleC1wcmV2IHtcbiAgbGVmdDogLTUwcHg7XG59XG4uZmxleC1kaXJlY3Rpb24tbmF2IC5mbGV4LW5leHQge1xuICByaWdodDogLTUwcHg7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuLmZsZXhzbGlkZXI6aG92ZXIgLmZsZXgtZGlyZWN0aW9uLW5hdiAuZmxleC1wcmV2IHtcbiAgb3BhY2l0eTogMC43O1xuICBsZWZ0OiAxMHB4O1xufVxuLmZsZXhzbGlkZXI6aG92ZXIgLmZsZXgtZGlyZWN0aW9uLW5hdiAuZmxleC1wcmV2OmhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbn1cbi5mbGV4c2xpZGVyOmhvdmVyIC5mbGV4LWRpcmVjdGlvbi1uYXYgLmZsZXgtbmV4dCB7XG4gIG9wYWNpdHk6IDAuNztcbiAgcmlnaHQ6IDEwcHg7XG59XG4uZmxleHNsaWRlcjpob3ZlciAuZmxleC1kaXJlY3Rpb24tbmF2IC5mbGV4LW5leHQ6aG92ZXIge1xuICBvcGFjaXR5OiAxO1xufVxuLmZsZXgtZGlyZWN0aW9uLW5hdiAuZmxleC1kaXNhYmxlZCB7XG4gIG9wYWNpdHk6IDAhaW1wb3J0YW50O1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MCk7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgei1pbmRleDogLTE7XG59XG4uZmxleC1wYXVzZXBsYXkgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogNXB4O1xuICBsZWZ0OiAxMHB4O1xuICBvcGFjaXR5OiAwLjg7XG4gIHotaW5kZXg6IDEwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiAjMDAwO1xufVxuLmZsZXgtcGF1c2VwbGF5IGE6YmVmb3JlIHtcbiAgZm9udC1mYW1pbHk6IFwiZmxleHNsaWRlci1pY29uXCI7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjb250ZW50OiAnXFxmMDA0Jztcbn1cbi5mbGV4LXBhdXNlcGxheSBhOmhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbn1cbi5mbGV4LXBhdXNlcGxheSBhLmZsZXgtcGxheTpiZWZvcmUge1xuICBjb250ZW50OiAnXFxmMDAzJztcbn1cbi5mbGV4LWNvbnRyb2wtbmF2IHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAtNDBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLmZsZXgtY29udHJvbC1uYXYgbGkge1xuICBtYXJnaW46IDAgNnB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHpvb206IDE7XG4gICpkaXNwbGF5OiBpbmxpbmU7XG59XG4uZmxleC1jb250cm9sLXBhZ2luZyBsaSBhIHtcbiAgd2lkdGg6IDExcHg7XG4gIGhlaWdodDogMTFweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJhY2tncm91bmQ6ICM2NjY7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0ZXh0LWluZGVudDogLTk5OTlweDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIDAgM3B4IHJnYmEoMCwgMCwgMCwgMC4zKTtcbiAgLW1vei1ib3gtc2hhZG93OiBpbnNldCAwIDAgM3B4IHJnYmEoMCwgMCwgMCwgMC4zKTtcbiAgLW8tYm94LXNoYWRvdzogaW5zZXQgMCAwIDNweCByZ2JhKDAsIDAsIDAsIDAuMyk7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAzcHggcmdiYSgwLCAwLCAwLCAwLjMpO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDIwcHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogMjBweDtcbiAgYm9yZGVyLXJhZGl1czogMjBweDtcbn1cbi5mbGV4LWNvbnRyb2wtcGFnaW5nIGxpIGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjMzMzO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNyk7XG59XG4uZmxleC1jb250cm9sLXBhZ2luZyBsaSBhLmZsZXgtYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogIzAwMDtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjkpO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG4uZmxleC1jb250cm9sLXRodW1icyB7XG4gIG1hcmdpbjogNXB4IDAgMDtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi5mbGV4LWNvbnRyb2wtdGh1bWJzIGxpIHtcbiAgd2lkdGg6IDI1JTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbjogMDtcbn1cbi5mbGV4LWNvbnRyb2wtdGh1bWJzIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvcGFjaXR5OiAuNztcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAxcyBlYXNlO1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAxcyBlYXNlO1xuICAtbXMtdHJhbnNpdGlvbjogYWxsIDFzIGVhc2U7XG4gIC1vLXRyYW5zaXRpb246IGFsbCAxcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBhbGwgMXMgZWFzZTtcbn1cbi5mbGV4LWNvbnRyb2wtdGh1bWJzIGltZzpob3ZlciB7XG4gIG9wYWNpdHk6IDE7XG59XG4uZmxleC1jb250cm9sLXRodW1icyAuZmxleC1hY3RpdmUge1xuICBvcGFjaXR5OiAxO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogUkVTUE9OU0lWRVxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODYwcHgpIHtcbiAgLmZsZXgtZGlyZWN0aW9uLW5hdiAuZmxleC1wcmV2IHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIGxlZnQ6IDEwcHg7XG4gIH1cbiAgLmZsZXgtZGlyZWN0aW9uLW5hdiAuZmxleC1uZXh0IHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHJpZ2h0OiAxMHB4O1xuICB9XG59XG4iLCIubGItbG9hZGVyLC5saWdodGJveHt0ZXh0LWFsaWduOmNlbnRlcjtsaW5lLWhlaWdodDowO3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MH1ib2R5LmxiLWRpc2FibGUtc2Nyb2xsaW5ne292ZXJmbG93OmhpZGRlbn0ubGlnaHRib3hPdmVybGF5e3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDt6LWluZGV4Ojk5OTk7YmFja2dyb3VuZC1jb2xvcjojMDAwO2ZpbHRlcjphbHBoYShPcGFjaXR5PTgwKTtvcGFjaXR5Oi44O2Rpc3BsYXk6bm9uZX0ubGlnaHRib3h7d2lkdGg6MTAwJTt6LWluZGV4OjEwMDAwO2ZvbnQtd2VpZ2h0OjQwMDtvdXRsaW5lOjB9LmxpZ2h0Ym94IC5sYi1pbWFnZXtkaXNwbGF5OmJsb2NrO2hlaWdodDphdXRvO21heC13aWR0aDppbmhlcml0O21heC1oZWlnaHQ6bm9uZTtib3JkZXItcmFkaXVzOjNweDtib3JkZXI6NHB4IHNvbGlkICNmZmZ9LmxpZ2h0Ym94IGEgaW1ne2JvcmRlcjpub25lfS5sYi1vdXRlckNvbnRhaW5lcntwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDoyNTBweDtoZWlnaHQ6MjUwcHg7bWFyZ2luOjAgYXV0bztib3JkZXItcmFkaXVzOjRweDtiYWNrZ3JvdW5kLWNvbG9yOiNmZmZ9LmxiLW91dGVyQ29udGFpbmVyOmFmdGVye2NvbnRlbnQ6XCJcIjtkaXNwbGF5OnRhYmxlO2NsZWFyOmJvdGh9LmxiLWxvYWRlcnt0b3A6NDMlO2hlaWdodDoyNSU7d2lkdGg6MTAwJX0ubGItY2FuY2Vse2Rpc3BsYXk6YmxvY2s7d2lkdGg6MzJweDtoZWlnaHQ6MzJweDttYXJnaW46MCBhdXRvO2JhY2tncm91bmQ6dXJsKC4uL2ltYWdlcy9sb2FkaW5nLmdpZikgbm8tcmVwZWF0fS5sYi1uYXZ7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO2hlaWdodDoxMDAlO3dpZHRoOjEwMCU7ei1pbmRleDoxMH0ubGItY29udGFpbmVyPi5uYXZ7bGVmdDowfS5sYi1uYXYgYXtvdXRsaW5lOjA7YmFja2dyb3VuZC1pbWFnZTp1cmwoZGF0YTppbWFnZS9naWY7YmFzZTY0LFIwbEdPRGxoQVFBQkFQQUFBUC8vL3dBQUFDSDVCQUVBQUFBQUxBQUFBQUFCQUFFQUFBSUNSQUVBT3c9PSl9LmxiLW5leHQsLmxiLXByZXZ7aGVpZ2h0OjEwMCU7Y3Vyc29yOnBvaW50ZXI7ZGlzcGxheTpibG9ja30ubGItbmF2IGEubGItcHJldnt3aWR0aDozNCU7bGVmdDowO2Zsb2F0OmxlZnQ7YmFja2dyb3VuZDp1cmwoLi4vaW1hZ2VzL3ByZXYucG5nKSBsZWZ0IDQ4JSBuby1yZXBlYXQ7ZmlsdGVyOmFscGhhKE9wYWNpdHk9MCk7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC42czstbW96LXRyYW5zaXRpb246b3BhY2l0eSAuNnM7LW8tdHJhbnNpdGlvbjpvcGFjaXR5IC42czt0cmFuc2l0aW9uOm9wYWNpdHkgLjZzfS5sYi1uYXYgYS5sYi1wcmV2OmhvdmVye2ZpbHRlcjphbHBoYShPcGFjaXR5PTEwMCk7b3BhY2l0eToxfS5sYi1uYXYgYS5sYi1uZXh0e3dpZHRoOjY0JTtyaWdodDowO2Zsb2F0OnJpZ2h0O2JhY2tncm91bmQ6dXJsKC4uL2ltYWdlcy9uZXh0LnBuZykgcmlnaHQgNDglIG5vLXJlcGVhdDtmaWx0ZXI6YWxwaGEoT3BhY2l0eT0wKTtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjZzOy1tb3otdHJhbnNpdGlvbjpvcGFjaXR5IC42czstby10cmFuc2l0aW9uOm9wYWNpdHkgLjZzO3RyYW5zaXRpb246b3BhY2l0eSAuNnN9LmxiLW5hdiBhLmxiLW5leHQ6aG92ZXJ7ZmlsdGVyOmFscGhhKE9wYWNpdHk9MTAwKTtvcGFjaXR5OjF9LmxiLWRhdGFDb250YWluZXJ7bWFyZ2luOjAgYXV0bztwYWRkaW5nLXRvcDo1cHg7d2lkdGg6MTAwJTtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjRweDtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czo0cHh9LmxiLWRhdGFDb250YWluZXI6YWZ0ZXJ7Y29udGVudDpcIlwiO2Rpc3BsYXk6dGFibGU7Y2xlYXI6Ym90aH0ubGItZGF0YXtwYWRkaW5nOjAgNHB4O2NvbG9yOiNjY2N9LmxiLWRhdGEgLmxiLWRldGFpbHN7d2lkdGg6ODUlO2Zsb2F0OmxlZnQ7dGV4dC1hbGlnbjpsZWZ0O2xpbmUtaGVpZ2h0OjEuMWVtfS5sYi1kYXRhIC5sYi1jYXB0aW9ue2ZvbnQtc2l6ZToxM3B4O2ZvbnQtd2VpZ2h0OjcwMDtsaW5lLWhlaWdodDoxZW19LmxiLWRhdGEgLmxiLWNhcHRpb24gYXtjb2xvcjojNGFlfS5sYi1kYXRhIC5sYi1udW1iZXJ7ZGlzcGxheTpibG9jaztjbGVhcjpsZWZ0O3BhZGRpbmctYm90dG9tOjFlbTtmb250LXNpemU6MTJweDtjb2xvcjojOTk5fS5sYi1kYXRhIC5sYi1jbG9zZXtkaXNwbGF5OmJsb2NrO2Zsb2F0OnJpZ2h0O3dpZHRoOjMwcHg7aGVpZ2h0OjMwcHg7YmFja2dyb3VuZDp1cmwoLi4vaW1hZ2VzL2Nsb3NlLnBuZykgdG9wIHJpZ2h0IG5vLXJlcGVhdDt0ZXh0LWFsaWduOnJpZ2h0O291dGxpbmU6MDtmaWx0ZXI6YWxwaGEoT3BhY2l0eT03MCk7b3BhY2l0eTouNzstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMnM7LW1vei10cmFuc2l0aW9uOm9wYWNpdHkgLjJzOy1vLXRyYW5zaXRpb246b3BhY2l0eSAuMnM7dHJhbnNpdGlvbjpvcGFjaXR5IC4yc30ubGItZGF0YSAubGItY2xvc2U6aG92ZXJ7Y3Vyc29yOnBvaW50ZXI7ZmlsdGVyOmFscGhhKE9wYWNpdHk9MTAwKTtvcGFjaXR5OjF9Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBRUFBLEFBQUEsVUFBVSxDQUFDO0VBQ1AsU0FBUyxFQUFFLE1BQU07RUFDakIsS0FBSyxFQUFFLEdBQUc7RUFDVixNQUFNLEVBQUUsTUFBTSxHQUNqQjs7QUFFRCxBQUFBLGNBQWMsQ0FBQztFQUNYLFNBQVMsRUFBRSxNQUFNO0VBQ2pCLEtBQUssRUFBRSxHQUFHO0VBQ1YsTUFBTSxFQUFFLE1BQU0sR0FRakI7RUFORyxNQUFNLEVBQUMsU0FBUyxFQUFFLEtBQUs7SUFMM0IsQUFNUSxjQU5NLENBTUo7TUFDRSxLQUFLLEVBQUUsSUFBSTtNQUNYLE1BQU0sRUFBRSxJQUFJLEdBQ2Y7O0FBSVQsQUFBQSxZQUFZLENBQUM7RUFDVCxVQUFVLEVBQUUsTUFBTSxHQUNyQjs7QUFFRCxBQUFBLGVBQWUsQ0FBQztFQUNaLGNBQWMsRUFBRSxTQUFTLEdBQzVCOztBQUVELEFBQUEsY0FBYyxDQUFDO0VBQ1gsU0FBUyxFRGxCVSxJQUFJO0VDbUJ2QixhQUFhLEVBQUUsY0FBYztFQUM3QixjQUFjLEVEZE4sSUFBSTtFQ2VaLGFBQWEsRURaQSxNQUFNLEdDYXRCOztBQUVELEFB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 */
