/*--------------------------------------------------------------------------
Template name: Bizmo
Template URI: https://bizmo-demo.tortoizthemes.com
Author Name: tortoizthemes  
Author URI: https://tortoizthemes.com
Tag: Modern, Agency, Business
Version: 2.0.0
Description: Bizmo is a responsive html5 multipurpose template    

===========================
CSS Index
===========================

------------------------------------------------------------------------------*/
/* 01 Global */
/*Color*/
/**
* ============================
*  3.Media Query
* ============================
*/
/*Color*/
@import url("https://fonts.googleapis.com/css2?family=Jost:wght@400;500;600&family=Poppins:wght@400;500;600&display=swap");
html {
  scroll-behavior: smooth; }

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: 'Jost', sans-serif;
  color: #444; }

.primary-color {
  color: #000; }

.accent-color {
  color: #2e7d67; }

.primary-bg {
  background-color: #000; }

.accent-bg {
  background-color: #2e7d67; }

.buttton-primary {
  padding: 15px 45px;
  background-color: #2e7d67;
  color: #fff !important;
  text-transform: uppercase;
  border-radius: 3px;
  display: inline-block;
  border: 0px !important;
  text-decoration: none !important;
  transition: all 0.3s ease; }

.buttton-primary:hover {
  background-color: #1b5e4a;
  text-decoration: none !important;
  transform: translateY(-1px);
  box-shadow: 0 4px 8px rgba(0,0,0,0.1); }

.buttton-secondary {
  padding: 15px 45px;
  text-transform: uppercase;
  color: #fff !important;
  background: rgba(46, 125, 103, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 3px;
  display: inline-block;
  text-decoration: none !important;
  transition: all 0.3s ease; }

.buttton-secondary:hover {
  background: rgba(46, 125, 103, 0.2);
  text-decoration: none !important;
  transform: translateY(-1px);
  box-shadow: 0 4px 8px rgba(0,0,0,0.1);
  border-color: rgba(255, 255, 255, 0.3); }

.section-title-inner {
  font-size: 45px;
  font-weight: 600; }
  .section-title-inner span {
    color: #2e7d67; }
  @media (max-width: 768px) {
    .section-title-inner {
      font-size: 38px; } }
  @media (max-width: 575px) {
    .section-title-inner {
      font-size: 32px; } }

.section-title h2 {
  font-size: 45px;
  font-weight: 600; }
  .section-title h2 span {
    color: #2e7d67; }
  @media (max-width: 768px) {
    .section-title h2 {
      font-size: 38px; } }
  @media (max-width: 575px) {
    .section-title h2 {
      font-size: 32px; } }

.section-title p {
  margin-bottom: 0px; }

body {
  font-family: 'Poppins', sans-serif;
  font-size: 16px;
  color: #666;
  letter-spacing: 0.5px; }

/**
* ============================
*  3.Media Query
* ============================
*/
/*Color*/
.header {
  min-height: 100vh;
  position: relative;
  background-image: url(../images/hero.jpg);
  background-position: center;
  background-size: cover;
  background-attachment: fixed; }
  .header .header-top {
    background: rgba(255, 255, 255, 0.08);
    position: relative;
    z-index: 3; }
    @media (max-width: 575px) {
      .header .header-top .col-lg-3 {
        width: 50% !important;
        max-width: 50%; }
        .header .header-top .col-lg-3 h6 {
          font-size: 13px; }
      .header .header-top .col-lg-6 {
        display: none !important; } }
    .header .header-top h6 {
      color: white;
      margin: 0px; }
      .header .header-top h6 a {
        color: white; }
      .header .header-top h6 a:hover {
        color: #2e7d67; }

.header.inner {
  min-height: 60vh;
  background-position: center; }

.header::after {
  background-color: #000;
  content: "";
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  position: absolute;
  z-index: 2;
  opacity: 0.85; }

.navbar {
  background: transparent;
  box-shadow: none;
  z-index: 9999;
  position: relative;
  height: 70px;
  padding: 0px; }
  @media (max-width: 768px) {
    .navbar .navbar-nav {
      background: #000 !important; } }
  @media (max-width: 575px) {
    .navbar .navbar-nav {
      background: #000 !important; } }

.navbar.navbar-dark .breadcrumb .nav-item.active > .nav-link,
.navbar.navbar-dark .navbar-nav .nav-item.active > .nav-link {
  background-color: transparent;
  border-top: 3px solid #2e7d67; }

.navbar.navbar-dark .breadcrumb .nav-item .nav-link,
.navbar.navbar-dark .navbar-nav .nav-item .nav-link {
  padding: 22px 15px;
  font-weight: 500;
  text-transform: uppercase;
  border-top: 3px solid transparent;
  font-size: 14px; }

.navbar.navbar-dark .breadcrumb .nav-item .nav-link:hover,
.navbar.navbar-dark .navbar-nav .nav-item .nav-link:hover {
  border-top: 3px solid #2e7d67; }

#navbar {
  overflow: hidden; }

.sticky {
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 9999;
  background-color: white; }
  .sticky .navbar-dark .navbar-brand {
    color: #000; }
    @media (max-width: 768px) {
      .sticky .navbar-dark .navbar-brand {
        color: #fff; } }
    @media (max-width: 575px) {
      .sticky .navbar-dark .navbar-brand {
        color: #fff; } }
  .sticky .navbar.navbar-dark .breadcrumb .nav-item .nav-link,
  .sticky .navbar.navbar-dark .navbar-nav .nav-item .nav-link {
    color: #444; }
    @media (max-width: 768px) {
      .sticky .navbar.navbar-dark .breadcrumb .nav-item .nav-link,
      .sticky .navbar.navbar-dark .navbar-nav .nav-item .nav-link {
        color: #fcfcfc; } }
    @media (max-width: 575px) {
      .sticky .navbar.navbar-dark .breadcrumb .nav-item .nav-link,
      .sticky .navbar.navbar-dark .navbar-nav .nav-item .nav-link {
        color: #fcfcfc; } }
  .sticky .navbar.navbar-dark .breadcrumb .nav-item .nav-link:hover,
  .sticky .navbar.navbar-dark .navbar-nav .nav-item .nav-link:hover {
    color: #000; }
    @media (max-width: 768px) {
      .sticky .navbar.navbar-dark .breadcrumb .nav-item .nav-link:hover,
      .sticky .navbar.navbar-dark .navbar-nav .nav-item .nav-link:hover {
        color: #fff; } }
    @media (max-width: 575px) {
      .sticky .navbar.navbar-dark .breadcrumb .nav-item .nav-link:hover,
      .sticky .navbar.navbar-dark .navbar-nav .nav-item .nav-link:hover {
        color: #fff; } }
  .sticky .navbar.navbar-dark .navbar-toggler-icon {
    background-image: url(../images/menu.png); }

/* 02 Hero */
.hero .row {
  position: relative;
  min-height: 80vh;
  z-index: 3; }
  .hero .row h5 {
    margin-bottom: 15px;
    color: #fff;
    background: rgba(255, 255, 255, 0.08);
    border-radius: 3px;
    display: inline-block;
    padding: 10px 18px;
    text-transform: uppercase;
    letter-spacing: 3px;
    font-size: 16px; }
  .hero .row h1 {
    font-size: 50px;
    color: #fff;
    margin-bottom: 20px;
    font-weight: 600; }
    .hero .row h1 span {
      color: #2e7d67; }
    .hero .row h1 span::before {
      content: "Impressive Features";
      animation: animate infinite 3s;
      padding-left: 10px; }

@keyframes animate {
  0% {
    content: "Impressive Features"; }
  50% {
    content: "Responsive Design"; }
  75% {
    content: "Dedicated Support"; } }
  .hero .row p {
    color: #fcfcff;
    font-size: 17px;
    opacity: 0.8;
    letter-spacing: 0.5px; }

/* 03 Breadcrumb */
.breadcrumb {
  background: transparent; }
  .breadcrumb .row {
    position: relative;
    min-height: 40vh;
    z-index: 3; }
    .breadcrumb .row h1 {
      font-size: 50px;
      color: #fff;
      margin-bottom: 20px;
      font-weight: 600; }
    .breadcrumb .row ul {
      list-style: none;
      padding: 0px; }
      .breadcrumb .row ul li {
        display: inline;
        color: #fcfcfc;
        margin: 10px 5px; }
        .breadcrumb .row ul li a {
          color: #2e7d67; }

/* 04 Services */
.service {
  background-color: rgba(46, 125, 103, 0.1);
  background-image: url(../images/shape.png);
  background-size: cover;
  background-position: center;
  background-attachment: fixed; }
  .service .services {
    background-color: #fff;
    border-radius: 7px; }
    .service .services span {
      background-color: rgba(46, 125, 103, 0.1);
      height: 70px;
      width: 70px;
      border-radius: 3px;
      display: block;
      font-size: 25px;
      text-align: center;
      color: #2e7d67;
      line-height: 70px; }
    .service .services h3 {
      font-weight: 500; }
    .service .services p {
      font-size: 14px; }
    .service .services a {
      color: #2e7d67;
      opacity: 0.8; }
    .service .services a:hover {
      text-decoration: underline;
      color: #1b5e4a;
      transition: 0.5s;
      opacity: 1; }
  .service .services:hover {
    box-shadow: 0px 0px 15px 0px rgba(212, 193, 212, 0.3);
    transition: 0.5s; }

/* 05 Feature */
.feature .features-icon {
  background: #2e7d67;
  display: inline-block;
  height: 50px;
  width: 50px;
  line-height: 50px;
  text-align: center;
  color: #ffffff;
  border-radius: 3px;
  font-size: 20px;
  position: relative; }

.feature .features-icon:before {
  content: "";
  height: 60px;
  width: 60px;
  background: rgba(255, 128, 87, 0.1);
  position: absolute;
  left: 7px;
  top: -16px;
  transform: rotate(20deg);
  z-index: -1;
  border-radius: 6px; }

.feature h3 {
  font-weight: 500; }

.feature a {
  color: #18ab63;
  display: block; }

.feature a:hover {
  text-decoration: underline;
  color: #1b5e4a;
  transition: 0.5s;
  padding-left: 5px; }

/* 06 Portfolio - Masonry Grid */
.portfolio-grid {
  column-count: 3;
  column-gap: 1.5rem;
  margin: 0 auto;
  max-width: 1400px;
  padding: 0 1rem;
}

.portfolio-item {
  break-inside: avoid;
  margin-bottom: 1.5rem;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  position: relative;
  overflow: hidden;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

.portfolio-item img {
  width: 100%;
  height: auto;
  display: block;
  transition: transform 0.5s ease;
  border-radius: 8px 8px 0 0;
}

.portfolio-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(46, 125, 103, 0.9);
  color: white;
  padding: 1.5rem;
  opacity: 0;
  transition: opacity 0.3s ease;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  border-radius: 8px;
}

.portfolio-item:hover .portfolio-overlay {
  opacity: 1;
}

.portfolio-item:hover {
  transform: translateY(-5px);
  box-shadow: 0 15px 30px rgba(0, 0, 0, 0.15);
}

.portfolio-overlay h4 {
  margin: 0 0 0.5rem 0;
  color: #fff;
  font-size: 1.25rem;
  font-weight: 600;
}

.portfolio-overlay p {
  margin: 0 0 1.5rem 0;
  color: rgba(255, 255, 255, 0.9);
  font-size: 0.9rem;
}

.portfolio-overlay .btn {
  background: #fff;
  color: #2e7d67;
  border: none;
  padding: 0.5rem 1.25rem;
  border-radius: 30px;
  font-weight: 500;
  transition: all 0.3s ease;
}

.portfolio-overlay .btn:hover {
  background: #1b5e4a;
  color: #fff;
  transform: translateY(-2px);
}

/* Responsive adjustments */
@media (max-width: 992px) {
  .portfolio-grid {
    column-count: 2;
  }
}

@media (max-width: 576px) {
  .portfolio-grid {
    column-count: 1;
  }
}

/* 06 Portfolio - Original Styles */
.portfolio_area {
  padding: 100px 0px;
  background-image: url(../images/shape-2.png);
  background-size: cover;
  background-position: center;
  background-attachment: fixed; }

@media (max-width: 991px) {
  .portfolio_area {
    padding: 50px 0px; } }

.portfolio_area .filters ul {
  padding-left: 0;
  margin-bottom: 30px; }

@media (max-width: 991px) {
  .portfolio_area .filters ul {
    margin-bottom: 20px; } }

.portfolio_area .filters ul li {
  display: inline-block;
  margin-right: 40px;
  font-size: 15px;
  font-weight: 500;
  text-transform: uppercase;
  color: #333;
  cursor: pointer;
  -webkit-transition: all 0.4s ease 0s;
  -moz-transition: all 0.4s ease 0s;
  -o-transition: all 0.4s ease 0s;
  transition: all 0.4s ease 0s; }

.portfolio_area .filters ul li:hover,
.portfolio_area .filters ul li.active {
  color: #2e7d67; }

@media (max-width: 767px) {
  .portfolio_area .filters ul li {
    margin-right: 20px; } }

.single_portfolio {
  position: relative;
  margin-bottom: 30px; }

@media (max-width: 767px) {
  .single_portfolio {
    margin-bottom: 35px; } }

.single_portfolio .overlay {
  -webkit-transition: all 0.4s ease 0s;
  -moz-transition: all 0.4s ease 0s;
  -o-transition: all 0.4s ease 0s;
  transition: all 0.4s ease 0s; }

.single_portfolio .short_info {
  position: absolute;
  bottom: 40%;
  left: 80px;
  color: #ffffff;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all 0.4s ease 0s;
  -moz-transition: all 0.4s ease 0s;
  -o-transition: all 0.4s ease 0s;
  transition: all 0.4s ease 0s; }

.single_portfolio .short_info h4 {
  text-transform: capitalize;
  font-size: 20px;
  font-weight: 500;
  margin-bottom: 5px; }

.single_portfolio .short_info h4 a {
  color: #ffffff; }

.single_portfolio .short_info p {
  margin-bottom: 0px; }

.single_portfolio:hover .overlay {
  background: rgba(46, 125, 103, 0.15); }

.single_portfolio:hover .short_info {
  top: 25px;
  left: 24px;
  opacity: 1;
  visibility: visible; }

.portfolio_details_inner .row {
  margin-bottom: 35px; }

@media (max-width: 480px) {
  .portfolio_details_inner .row {
    margin-bottom: 30px; } }

.portfolio_details_inner p {
  margin-bottom: 30px;
  font-size: 14px; }

.portfolio_details_inner p:last-child {
  margin-bottom: 0px; }

.portfolio_details_inner .portfolio_right_text {
  padding: 30px;
  background: #f8faff;
  margin-top: 10px; }

.portfolio_details_inner .portfolio_right_text h4 {
  font-size: 20px;
  text-transform: capitalize !important;
  margin-bottom: 10px; }

.portfolio_details_inner .portfolio_right_text p {
  margin-bottom: 25px;
  font-size: 14px; }

.portfolio_details_inner .portfolio_right_text .list li {
  margin-bottom: 7px;
  font-weight: normal;
  font-size: 14px; }

.portfolio_details_inner .portfolio_right_text .list li span {
  font-family: "Roboto", sans-serif;
  color: #000000;
  font-size: 16px;
  font-weight: 500;
  width: 97px;
  display: inline-block; }

.portfolio_details_inner .portfolio_right_text .list li:last-child {
  margin-bottom: 0px; }

.portfolio_details_inner .portfolio_right_text .list li i {
  color: #2e7d67; }

.overlay {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%; }

.gallery {
  -webkit-column-count: 3;
  -moz-column-count: 3;
  column-count: 3;
  -webkit-column-width: 33%;
  -moz-column-width: 33%;
  column-width: 33%; }

.gallery .pics {
  -webkit-transition: all 350ms ease;
  transition: all 350ms ease; }

.gallery .animation {
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1); }

@media (max-width: 450px) {
  .gallery {
    -webkit-column-count: 1;
    -moz-column-count: 1;
    column-count: 1;
    -webkit-column-width: 100%;
    -moz-column-width: 100%;
    column-width: 100%; } }

@media (max-width: 400px) {
  .btn.filter {
    padding-left: 1.1rem;
    padding-right: 1.1rem; } }

button.close {
  position: absolute;
  right: 0;
  z-index: 2;
  padding-right: 1rem;
  padding-top: .6rem; }

/* 07 Team */
.team {
  background-color: #fcfcfc; }
  .team .teams .details {
    background-color: #000;
    padding: 25px 25px 10px 25px;
    border-right: 5px solid #2e7d67;
    border-bottom: 5px solid #2e7d67; }
    .team .teams .details h4 {
      color: #fff; }
    .team .teams .details h6 {
      color: #fcfcfc;
      opacity: 0.8;
      font-size: 14px; }
    .team .teams .details a {
      color: #2e7d67;
      margin-right: 10px; }

/* 08 Fun Fact */
.fun-fact {
  background-image: url(../images/bg.jpg);
  background-size: cover;
  background-attachment: fixed;
  position: relative; }
  .fun-fact .row {
    position: relative;
    z-index: 3; }
    .fun-fact .row h2 {
      color: #fff; }
      .fun-fact .row h2 span {
        color: #2e7d67; }
    .fun-fact .row p {
      color: #fcfcfc;
      margin-bottom: 0px; }
    .fun-fact .row .count {
      background: rgba(255, 255, 255, 0.08);
      border-radius: 5px; }
      .fun-fact .row .count i {
        font-size: 40px;
        color: #2e7d67;
        margin-bottom: 15px; }
      .fun-fact .row .count h1 {
        font-weight: 500;
        color: #2e7d67; }
        .fun-fact .row .count h1 span {
          color: #fff; }
      .fun-fact .row .count p {
        margin-bottom: 0px; }

.fun-fact::after {
  background-color: #000;
  content: "";
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  position: absolute;
  z-index: 2;
  opacity: 0.8; }

/* 09 Testimonial */
.testimonial-slider {
    padding: 20px 0 50px;
    position: relative;
}

.testimonial-slider .swiper-slide {
    height: auto;
    padding: 15px;
}

.testimonial {
    background: #fff;
    padding: 30px 25px;
    border-radius: 5px;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);
    height: 100%;
    transition: all 0.3s ease;
    position: relative;
    z-index: 1;
}

.testimonial:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
}

.testimonial .pic {
    width: 70px;
    height: 70px;
    border-radius: 50%;
    overflow: hidden;
    margin: 0 auto 20px;
    border: 4px solid #f5f5f5;
}

.testimonial .pic img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.testimonial .description {
    color: #666;
    font-size: 15px;
    line-height: 1.8;
    margin-bottom: 20px;
    position: relative;
    padding: 0 10px;
}

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

.testimonial .title {
    display: block;
    font-size: 18px;
    font-weight: 700;
    color: #222;
    text-transform: capitalize;
    margin: 0 0 5px 0;
}

.testimonial .post {
    display: block;
    font-size: 14px;
    color: #ff6b6b;
    text-transform: capitalize;
}

/* Swiper Navigation & Pagination */
.testimonial-slider .swiper-button-next,
.testimonial-slider .swiper-button-prev {
    color: #ff6b6b;
    width: 40px;
    height: 40px;
    line-height: 40px;
    text-align: center;
    background: #fff;
    border-radius: 50%;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
}

.testimonial-slider .swiper-button-next:hover,
.testimonial-slider .swiper-button-prev:hover {
    background: #ff6b6b;
    color: #fff;
}

.testimonial-slider .swiper-pagination-bullet {
    width: 10px;
    height: 10px;
    background: #ddd;
    opacity: 1;
}

.testimonial-slider .swiper-pagination-bullet-active {
    background: #ff6b6b;
    width: 25px;
    border-radius: 5px;
}

@media (max-width: 767px) {
    .testimonial-slider .swiper-button-next,
    .testimonial-slider .swiper-button-prev {
        display: none;
    }
    
    .testimonial {
        padding: 20px 15px;
    }
}

.testimonial-area .testimonial {
  margin: 20px 10px 0;
  position: relative; }

.testimonial-area .testimonial .pic {
  padding: 5px;
  background: #fff;
  border: 1px solid #d6d6d6;
  position: absolute;
  top: -20px;
  left: 5px;
  z-index: 1; }
  .testimonial-area .testimonial .pic img {
    height: 60px;
    width: 60px; }

.testimonial-area .testimonial .description {
  padding: 30px 45px 30px 60px;
  margin-left: 34px;
  border: 1px solid #d6d6d6;
  font-size: 14px;
  color: #6d6d6d;
  line-height: 26px;
  position: relative; }

.testimonial-area .testimonial .description:before {
  content: "";
  width: 35px;
  height: 101%;
  background: #fff;
  border-left: 1px solid #d6d6d6;
  position: absolute;
  top: 0;
  right: -18px;
  transform: skewX(-13deg); }

.testimonial-area .testimonial .testimonial-content {
  margin: 20px 0 0 34px; }

.testimonial-area .testimonial .title {
  display: inline-block;
  font-size: 14px;
  color: #fc6963; }

.testimonial-area .testimonial .post {
  display: block;
  font-size: 15px;
  line-height: 20px;
  margin-top: 2px; }

.testimonial-area .owl-theme .owl-controls {
  margin-top: 30px; }

.testimonial-area .owl-theme .owl-controls .owl-page span {
  background: #fc6963; }

@media only screen and (max-width: 990px) {
  .testimonial-area .testimonial .description:before {
    display: none; } }

.clients img {
  margin: 10px 0px; }

/* 10 CTA */
.cta {
  background-image: url(../images/map.png);
  background-color: #fcfcfc;
  background-size: cover;
  background-position: center;
  background-attachment: fixed; }
  .cta h6 {
    color: #18ab63;
    font-weight: 500; }
  .cta h1 {
    font-size: 60px;
    margin: 30px 0px;
    color: #111;
    font-weight: 500; }
    @media (max-width: 768px) {
      .cta h1 {
        font-size: 45px; } }
    @media (max-width: 575px) {
      .cta h1 {
        font-size: 36px; } }
  .cta h2 {
    font-weight: 500;
    color: #2e7d67; }
    @media (max-width: 575px) {
      .cta h2 {
        font-size: 25px; } }

/* 11 Blog */
.single-blog {
  margin-bottom: 30px;
  -webkit-transition: all 0.4s ease 0s;
  -moz-transition: all 0.4s ease 0s;
  -o-transition: all 0.4s ease 0s;
  transition: all 0.4s ease 0s; }
  .single-blog p {
    margin-bottom: 0px; }
  .single-blog .thumb {
    overflow: hidden; }
    .single-blog .thumb img {
      width: 100%;
      -webkit-transition: all 0.4s ease 0s;
      -moz-transition: all 0.4s ease 0s;
      -o-transition: all 0.4s ease 0s;
      transition: all 0.4s ease 0s;
      border-radius: 10px 10px 0px 0px; }
  .single-blog .short_details {
    background: #f8faff;
    padding: 25px;
    -webkit-transition: all 0.4s ease 0s;
    -moz-transition: all 0.4s ease 0s;
    -o-transition: all 0.4s ease 0s;
    transition: all 0.4s ease 0s; }
    .single-blog .short_details a {
      color: #2e7d67; }
    .single-blog .short_details .blog-btn:hover {
      text-decoration: underline; }
  .single-blog .meta-top a {
    display: inline-block;
    color: #18ab63;
    margin-right: 20px;
    -webkit-transition: all 0.4s ease 0s;
    -moz-transition: all 0.4s ease 0s;
    -o-transition: all 0.4s ease 0s;
    transition: all 0.4s ease 0s;
    font-weight: 500;
    font-size: 15px; }
    .single-blog .meta-top a i {
      margin-right: 5px;
      color: #2e7d67; }
  .single-blog a:hover {
    color: #2e7d67; }
  .single-blog h4 {
    font-size: 20px;
    margin-top: 20px;
    margin-bottom: 15px;
    -webkit-transition: all 0.4s ease 0s;
    -moz-transition: all 0.4s ease 0s;
    -o-transition: all 0.4s ease 0s;
    transition: all 0.4s ease 0s;
    font-weight: 500; }
    .single-blog h4 a {
      color: #333; }
  .single-blog .text-wrap {
    margin-bottom: 22px; }
    .single-blog .text-wrap p {
      font-size: 15px; }
  @media (max-width: 768px) {
    .single-blog h4 {
      margin-top: 20px;
      margin-bottom: 8px; }
    .single-blog .short_details {
      padding: 22px; } }

.single-blog:hover {
  box-shadow: 0px 10px 20px rgba(5, 54, 77, 0.1); }

.single-blog:hover .short_details {
  background: #ffffff; }

.single-blog:hover img {
  transform: scale(1.1); }

/* 12 Pricing */
.price-toggle-wrap {
  text-align: center;
  display: inline-block;
  margin: 0 auto 60px auto;
  padding: 10px;
  border-radius: 5px;
  box-shadow: 0 10px 28px 0 rgba(0, 0, 0, 0.1); }
  .price-toggle-wrap a {
    padding: 18px 30px;
    float: left;
    border-radius: 5px;
    margin-right: 10px;
    position: relative;
    overflow: hidden;
    background-color: #2e7d67;
    color: #fff; }
    .price-toggle-wrap a.active {
      background-position: center;
      background: #333;
      color: #fff; }

.pricing-tab-toggle-content {
  display: none; }
  .pricing-tab-toggle-content.active {
    display: block; }

.price-table {
  padding: 30px;
  text-align: center;
  border-radius: 5px;
  margin-bottom: 30px;
  background: #fff;
  transition: all 0.25s linear; }
  .price-table .price-icon {
    display: inline-block; }
    .price-table .price-icon i {
      width: 100px;
      height: 100px;
      font-size: 40px;
      color: #fff;
      line-height: 100px;
      border-radius: 5px;
      text-align: center;
      display: inline-block;
      transition: all 0.5s ease;
      background: #2e7d67; }
  .price-table.popular {
    box-shadow: 0 23px 49px 0 rgba(0, 0, 0, 0.1); }
    .price-table.popular .price-icon i {
      color: #fff;
      background: #2e7d67; }
  .price-table .price-value {
    margin-top: 20px;
    margin-bottom: 20px; }
    .price-table .price-value b {
      font-size: 3.2rem;
      font-weight: 700;
      color: #333; }
    .price-table .price-value span {
      font-size: 1rem; }
  .price-table .price-text {
    margin-bottom: 20px; }
    .price-table .price-text span {
      text-align: center;
      border-radius: 100px;
      display: inline-block;
      padding: 11px 40px; }
  .price-table .price-list li {
    margin-top: 15px;
    list-style: none; }
    .price-table .price-list li:first-child {
      margin-top: 0; }
  .price-table .price-footer {
    margin-top: 30px; }
  .price-table .price-badge {
    position: absolute;
    top: 15px;
    right: 0;
    transform: rotate(90deg);
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 80px;
    font-size: 15px;
    background: #2e7d67;
    color: #fff; }
    .price-table .price-badge:after {
      content: "";
      position: absolute;
      bottom: 0;
      right: -40px;
      border: 25px solid;
      border-color: #2e7d67 transparent #2e7d67 #2e7d67; }

/* 13 Contact */
.contact .form-area {
  position: relative;
  z-index: 2;
  margin-bottom: -150px;
  box-shadow: 2px 4px 10px 0px rgba(0, 0, 0, 0.1); }

.contact .form-control {
  width: 100%;
  min-height: 45px;
  background: #fcfcfc;
  padding-left: 20px;
  box-shadow: 2px 4px 10px 0px rgba(0, 0, 0, 0.15);
  border: 0px; }

/* 14 Footer */
.footer {
  margin: 0px;
  padding: 0px; }
  .footer .footer-top-two {
    padding: 70px 0px;
    background-image: url(../images/map.png);
    background-size: cover;
    background-attachment: fixed; }
    @media (max-width: 768px) {
      .footer .footer-top-two {
        padding: 50px 0px; } }
    @media (max-width: 575px) {
      .footer .footer-top-two {
        padding: 30px 0px; } }
    .footer .footer-top-two .widget_wrapper {
      background-repeat: no-repeat;
      background-size: cover; }
      .footer .footer-top-two .widget_wrapper p {
        color: #fcfcfc; }
      .footer .footer-top-two .widget_wrapper .widget {
        margin: 20px 0px; }
        .footer .footer-top-two .widget_wrapper .widget .widget_title {
          margin-bottom: 30px; }
          .footer .footer-top-two .widget_wrapper .widget .widget_title h4 {
            color: #fff;
            font-size: 32px; }
      .footer .footer-top-two .widget_wrapper .widegt_about p {
        color: #fcfcfc;
        font-size: 15px;
        line-height: 25px; }
      .footer .footer-top-two .widget_wrapper .widget_link ul {
        padding: 0px !important; }
        .footer .footer-top-two .widget_wrapper .widget_link ul li {
          list-style: none;
          margin: 10px 0px; }
          .footer .footer-top-two .widget_wrapper .widget_link ul li i {
            font-size: 13px;
            color: #2e7d67;
            margin-right: 10px; }
          .footer .footer-top-two .widget_wrapper .widget_link ul li a {
            text-transform: capitalize;
            color: #fcfcfc; }
            .footer .footer-top-two .widget_wrapper .widget_link ul li a:hover, .footer .footer-top-two .widget_wrapper .widget_link ul li a:focus {
              color: #2e7d67; }
      .footer .footer-top-two .widget_wrapper .widget_contact .contact_info .single_info {
        max-width: 250px;
        display: flex;
        flex-wrap: wrap;
        margin-bottom: 20px; }
        .footer .footer-top-two .widget_wrapper .widget_contact .contact_info .single_info .icon {
          font-size: 12px;
          color: #2e7d67;
          margin-right: 10px; }
        .footer .footer-top-two .widget_wrapper .widget_contact .contact_info .single_info .info p a {
          color: #fcfcfc; }
        .footer .footer-top-two .widget_wrapper .widget_contact .contact_info .single_info .info p span {
          display: block; }
      .footer .footer-top-two .widget_wrapper .form_control {
        width: 100%;
        height: 45px;
        background: #fcfcfc;
        padding-left: 20px;
        box-shadow: 2px 4px 10px 0px rgba(0, 0, 0, 0.1);
        border: 0px; }
      .footer .footer-top-two .widget_wrapper .btn {
        width: 100%;
        background-color: #2e7d67;
        color: #fff;
        border: 0px;
        height: 45px;
        font-size: 16px;
        margin-left: 0px;
        text-transform: uppercase; }
  .footer .footer-bottom ul {
    list-style: none;
    padding: 0px; }
    .footer .footer-bottom ul li {
      display: inline;
      margin-right: 20px; }
      .footer .footer-bottom ul li a {
        color: #2e7d67;
        font-size: 20px; }
  .footer .footer-bottom p {
    color: #fcfcfc;
    float: right; }

/* 15 Elements */
* {
  box-sizing: border-box; }

.grid:after {
  content: '';
  display: block;
  clear: both; }

.grid-sizer,
.grid-item {
  width: 33.333%; }

@media (max-width: 575px) {
  .grid-sizer,
  .grid-item {
    width: 100%; } }

@media (min-width: 576px) and (max-width: 767px) {
  .grid-sizer,
  .grid-item {
    width: 50%; } }

/* To change the amount of columns on larger devices, uncomment the code below */
/* @media (min-width: 768px) and (max-width: 991px) {
  .grid-sizer,
  .grid-item {
    width: 33.333%;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .grid-sizer,
  .grid-item {
    width: 25%;
  }
}
@media (min-width: 1200px) {
  .grid-sizer,
  .grid-item {
    width: 20%;
  }
} */
.grid-item {
  float: left; }

.grid-item img {
  display: block;
  max-width: 100%; }

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