* {
  font-family: "Poppins", sans-serif;
}

/**
* Template Name: Bootslander - v4.7.1
* Template URL: https://bootstrapmade.com/bootslander-free-bootstrap-landing-page-template/
* Author: BootstrapMade.com
* License: https://bootstrapmade.com/license/
*/
/*--------------------------------------------------------------
# General
--------------------------------------------------------------*/
body {
  color: #444444;
}

a {
  color: #ec4949;
  /*#1acc8d;*/
  text-decoration: none;
}

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

/*--------------------------------------------------------------
# Preloader
--------------------------------------------------------------*/
#preloader {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 9999;
  overflow: hidden;
  background: #fff;
}

#preloader:before {
  content: "";
  position: fixed;
  top: calc(50% - 30px);
  left: calc(50% - 30px);
  border: 6px solid #080a83;
  border-top-color: #d2f9eb;
  border-radius: 50%;
  width: 60px;
  height: 60px;
  -webkit-animation: animate-preloader 1s linear infinite;
  animation: animate-preloader 1s linear infinite;
}

@-webkit-keyframes animate-preloader {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@keyframes animate-preloader {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
/*--------------------------------------------------------------
# Back to top button
--------------------------------------------------------------*/
.back-to-top {
  position: fixed;
  visibility: hidden;
  opacity: 0;
  right: 15px;
  bottom: 15px;
  z-index: 996;
  background: #010483;
  width: 40px;
  height: 40px;
  border-radius: 50px;
  transition: all 0.4s;
}

.back-to-top i {
  font-size: 28px;
  color: #fff;
  line-height: 0;
}

.back-to-top:hover {
  background: #2be4a2;
  color: #fff;
}

.back-to-top.active {
  visibility: visible;
  opacity: 1;
}

/*--------------------------------------------------------------
# Disable AOS delay on mobile
--------------------------------------------------------------*/
@media screen and (max-width: 768px) {
  [data-aos-delay] {
    transition-delay: 0 !important;
  }
}
/*--------------------------------------------------------------
# Header
--------------------------------------------------------------*/
#header {
  height: 80px;
  transition: all 0.5s;
  z-index: 997;
  transition: all 0.5s;
  background: rgba(1, 4, 136, 0.9);
}

#header.header-transparent {
  background: transparent;
}

#header.header-scrolled {
  background: rgba(1, 4, 136, 0.9);
  height: 60px;
}

#header .logo h1 {
  font-size: 28px;
  margin: 0;
  padding: 0;
  line-height: 1;
  font-weight: 700;
}

#header .logo h1 a, #header .logo h1 a:hover {
  color: #fff;
  text-decoration: none;
}

#header .logo img {
  padding: 0;
  margin: 0;
  max-height: 40px;
}

/*--------------------------------------------------------------
# Navigation Menu
--------------------------------------------------------------*/
/**
* Desktop Navigation 
*/
.navbar {
  padding: 0;
}

.navbar ul {
  margin: 0;
  padding: 0;
  display: flex;
  list-style: none;
  align-items: center;
}

.navbar li {
  position: relative;
}

.navbar a, .navbar a:focus {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 0 10px 30px;
  font-size: 15px;
  font-weight: 500;
  font-family: "Poppins", sans-serif;
  color: rgba(255, 255, 255, 0.7);
  white-space: nowrap;
  transition: 0.3s;
}

.navbar a i, .navbar a:focus i {
  font-size: 12px;
  line-height: 0;
  margin-left: 5px;
}

.navbar > ul > li > a:before {
  content: "";
  position: absolute;
  width: 0;
  height: 2px;
  bottom: 3px;
  left: 30px;
  background-color: #1acc8d;
  visibility: hidden;
  width: 0px;
  transition: all 0.3s ease-in-out 0s;
}

.navbar a:hover:before, .navbar li:hover > a:before, .navbar .active:before {
  visibility: visible;
  width: 25px;
}

.navbar a:hover, .navbar .active, .navbar .active:focus, .navbar li:hover > a {
  color: #fff;
}

.navbar .dropdown ul {
  display: block;
  position: absolute;
  left: 30px;
  top: calc(100% + 30px);
  margin: 0;
  padding: 10px 0;
  z-index: 99;
  opacity: 0;
  visibility: hidden;
  background: #fff;
  box-shadow: 0px 0px 30px rgba(127, 137, 161, 0.25);
  transition: 0.3s;
  border-radius: 4px;
}

.navbar .dropdown ul li {
  min-width: 200px;
}

.navbar .dropdown ul a {
  padding: 10px 20px;
  font-size: 14px;
  font-weight: 500;
  text-transform: none;
  color: #01036f;
}

.navbar .dropdown ul a i {
  font-size: 12px;
}

.navbar .dropdown ul a:hover, .navbar .dropdown ul .active:hover, .navbar .dropdown ul li:hover > a {
  color: #1acc8d;
}

.navbar .dropdown:hover > ul {
  opacity: 1;
  top: 100%;
  visibility: visible;
}

.navbar .dropdown .dropdown ul {
  top: 0;
  left: calc(100% - 30px);
  visibility: hidden;
}

.navbar .dropdown .dropdown:hover > ul {
  opacity: 1;
  top: 0;
  left: 100%;
  visibility: visible;
}

@media (max-width: 1366px) {
  .navbar .dropdown .dropdown ul {
    left: -90%;
  }

  .navbar .dropdown .dropdown:hover > ul {
    left: -100%;
  }
}
/**
* Mobile Navigation 
*/
.mobile-nav-toggle {
  color: #fff;
  font-size: 28px;
  cursor: pointer;
  display: none;
  line-height: 0;
  transition: 0.5s;
}

@media (max-width: 991px) {
  .mobile-nav-toggle {
    display: block;
  }

  .navbar ul {
    display: none;
  }
}
.navbar-mobile {
  position: fixed;
  overflow: hidden;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  background: rgba(1, 3, 91, 0.9);
  transition: 0.3s;
  z-index: 999;
}

.navbar-mobile .mobile-nav-toggle {
  position: absolute;
  top: 15px;
  right: 15px;
}

.navbar-mobile ul {
  display: block;
  position: absolute;
  top: 55px;
  right: 15px;
  bottom: 15px;
  left: 15px;
  padding: 10px 0;
  border-radius: 8px;
  background-color: #fff;
  overflow-y: auto;
  transition: 0.3s;
}

.navbar-mobile > ul > li > a:before {
  left: 20px;
}

.navbar-mobile a, .navbar-mobile a:focus {
  padding: 10px 20px;
  font-size: 15px;
  color: #0205a1;
}

.navbar-mobile a:hover, .navbar-mobile .active, .navbar-mobile li:hover > a {
  color: #3f43fd;
}

.navbar-mobile .getstarted, .navbar-mobile .getstarted:focus {
  margin: 15px;
}

.navbar-mobile .dropdown ul {
  position: static;
  display: none;
  margin: 10px 20px;
  padding: 10px 0;
  z-index: 99;
  opacity: 1;
  visibility: visible;
  background: #fff;
  box-shadow: 0px 0px 30px rgba(127, 137, 161, 0.25);
}

.navbar-mobile .dropdown ul li {
  min-width: 200px;
}

.navbar-mobile .dropdown ul a {
  padding: 10px 20px;
}

.navbar-mobile .dropdown ul a i {
  font-size: 12px;
}

.navbar-mobile .dropdown ul a:hover, .navbar-mobile .dropdown ul .active:hover, .navbar-mobile .dropdown ul li:hover > a {
  color: #1acc8d;
}

.navbar-mobile .dropdown > .dropdown-active {
  display: block;
}

/*--------------------------------------------------------------
# Hero Section
--------------------------------------------------------------*/
#hero {
  width: 100%;
  background: url(/build/images/hero-bg.cf4020a5.jpg);
  position: relative;
  padding: 120px 0 0 0;
}

#hero:before {
  content: "";
  background: rgba(2, 5, 161, 0.91);
  position: absolute;
  bottom: 0;
  top: 0;
  left: 0;
  right: 0;
}

#hero h1 {
  margin: 0 0 20px 0;
  font-size: 48px;
  font-weight: 700;
  line-height: 56px;
  color: rgba(255, 255, 255, 0.8);
}

#hero h1 span {
  color: #fff;
  border-bottom: 4px solid #1acc8d;
}

#hero h2 {
  color: rgba(255, 255, 255, 0.8);
  margin-bottom: 40px;
  font-size: 24px;
}

#hero .btn-get-started {
  font-family: "Montserrat", sans-serif;
  font-weight: 500;
  font-size: 16px;
  letter-spacing: 1px;
  display: inline-block;
  padding: 10px 30px;
  border-radius: 50px;
  transition: 0.5s;
  color: #fff;
  background: #e72727;
}

#hero .btn-get-started:hover {
  background: #ec0a0af1;
}

#hero .animated {
  animation: up-down 2s ease-in-out infinite alternate-reverse both;
}

@media (min-width: 1024px) {
  #hero {
    background-attachment: fixed;
  }
}
@media (max-width: 991px) {
  #hero {
    padding-top: 80px;
  }

  #hero .animated {
    -webkit-animation: none;
    animation: none;
  }

  #hero .hero-img {
    text-align: center;
  }

  #hero .hero-img img {
    max-width: 95%;
  }

  #hero h1 {
    font-size: 28px;
    line-height: 32px;
    margin-bottom: 10px;
  }

  #hero h2 {
    font-size: 18px;
    line-height: 24px;
    margin-bottom: 30px;
  }
}
@media (max-width: 575px) {
  #hero .hero-img img {
    width: 95%;
  }
}
@-webkit-keyframes up-down {
  0% {
    transform: translateY(10px);
  }
  100% {
    transform: translateY(-10px);
  }
}
@keyframes up-down {
  0% {
    transform: translateY(10px);
  }
  100% {
    transform: translateY(-10px);
  }
}
.hero-waves {
  display: block;
  margin-top: 60px;
  width: 100%;
  height: 60px;
  z-index: 5;
  position: relative;
}

.wave1 use {
  -webkit-animation: move-forever1 10s linear infinite;
  animation: move-forever1 10s linear infinite;
  -webkit-animation-delay: -2s;
  animation-delay: -2s;
}

.wave2 use {
  -webkit-animation: move-forever2 8s linear infinite;
  animation: move-forever2 8s linear infinite;
  -webkit-animation-delay: -2s;
  animation-delay: -2s;
}

.wave3 use {
  -webkit-animation: move-forever3 6s linear infinite;
  animation: move-forever3 6s linear infinite;
  -webkit-animation-delay: -2s;
  animation-delay: -2s;
}

@-webkit-keyframes move-forever1 {
  0% {
    transform: translate(85px, 0%);
  }
  100% {
    transform: translate(-90px, 0%);
  }
}
@keyframes move-forever1 {
  0% {
    transform: translate(85px, 0%);
  }
  100% {
    transform: translate(-90px, 0%);
  }
}
@-webkit-keyframes move-forever2 {
  0% {
    transform: translate(-90px, 0%);
  }
  100% {
    transform: translate(85px, 0%);
  }
}
@keyframes move-forever2 {
  0% {
    transform: translate(-90px, 0%);
  }
  100% {
    transform: translate(85px, 0%);
  }
}
@-webkit-keyframes move-forever3 {
  0% {
    transform: translate(-90px, 0%);
  }
  100% {
    transform: translate(85px, 0%);
  }
}
@keyframes move-forever3 {
  0% {
    transform: translate(-90px, 0%);
  }
  100% {
    transform: translate(85px, 0%);
  }
}
/*--------------------------------------------------------------
# Sections General
--------------------------------------------------------------*/
section {
  padding: 60px 0;
  overflow: hidden;
}

.section-bg {
  background-color: #f5f5ff;
}

.section-title {
  padding-bottom: 40px;
}

.section-title h2 {
  font-size: 14px;
  font-weight: 500;
  padding: 0;
  line-height: 1px;
  margin: 0 0 5px 0;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: #aaaaaa;
  font-family: "Poppins", sans-serif;
}

.section-title h2::after {
  content: "";
  width: 120px;
  height: 1px;
  display: inline-block;
  background: #1acc8d;
  margin: 4px 10px;
}

.section-title p {
  margin: 0;
  margin: 0;
  font-size: 36px;
  font-weight: 700;
  text-transform: uppercase;
  font-family: "Poppins", sans-serif;
  color: #010483;
}

/*--------------------------------------------------------------
# Breadcrumbs
--------------------------------------------------------------*/
.breadcrumbs {
  padding: 20px 0;
  background-color: #fafaff;
  min-height: 40px;
  margin-top: 80px;
}

@media (max-width: 992px) {
  .breadcrumbs {
    margin-top: 64px;
  }
}
.breadcrumbs h2 {
  font-size: 24px;
  font-weight: 400;
  margin: 0;
}

@media (max-width: 992px) {
  .breadcrumbs h2 {
    margin: 0 0 10px 0;
  }
}
.breadcrumbs ol {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  padding: 0;
  margin: 0;
  font-size: 14px;
}

.breadcrumbs ol li + li {
  padding-left: 10px;
}

.breadcrumbs ol li + li::before {
  display: inline-block;
  padding-right: 10px;
  color: #6c757d;
  content: "/";
}

@media (max-width: 768px) {
  .breadcrumbs .d-flex {
    display: block !important;
  }

  .breadcrumbs ol {
    display: block;
  }

  .breadcrumbs ol li {
    display: inline-block;
  }
}
/*--------------------------------------------------------------
# About
--------------------------------------------------------------*/
.about {
  padding: 40px 0 0 0;
}

.about .icon-boxes h3 {
  font-size: 28px;
  font-weight: 700;
  color: #010483;
  margin-bottom: 15px;
}

.about .icon-box {
  margin-top: 40px;
}

.about .icon-box .icon {
  float: left;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 64px;
  height: 64px;
  border: 2px solid #010483;
  border-radius: 50px;
  transition: 0.5s;
}

.about .icon-box .icon i {
  color: #010483;
  font-size: 32px;
}

.about .icon-box:hover .icon {
  background: #010483;
  border-color: #010483;
}

.about .icon-box:hover .icon i {
  color: #fff;
}

.about .icon-box .title {
  margin-left: 85px;
  font-weight: 700;
  margin-bottom: 10px;
  font-size: 18px;
}

.about .icon-box .title a {
  color: #121488;
  transition: 0.3s;
}

.about .icon-box .title a:hover {
  color: #010483;
}

.about .icon-box .description {
  margin-left: 85px;
  line-height: 24px;
  font-size: 14px;
}

.about .video-box {
  background: url(/build/images/about-other.d9296fe7.png) center center no-repeat;
  background-size: contain;
  min-height: 300px;
}

.about .play-btn {
  width: 94px;
  height: 94px;
  background: radial-gradient(#3f43fd 50%, rgba(63, 67, 253, 0.4) 52%);
  border-radius: 50%;
  display: block;
  position: absolute;
  left: calc(50% - 47px);
  top: calc(50% - 47px);
  overflow: hidden;
}

.about .play-btn::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translateX(-40%) translateY(-50%);
  width: 0;
  height: 0;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  border-left: 15px solid #fff;
  z-index: 100;
  transition: all 400ms cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.about .play-btn::before {
  content: "";
  position: absolute;
  width: 120px;
  height: 120px;
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation: pulsate-btn 2s;
  animation: pulsate-btn 2s;
  -webkit-animation-direction: forwards;
  animation-direction: forwards;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-timing-function: steps;
  animation-timing-function: steps;
  opacity: 1;
  border-radius: 50%;
  border: 5px solid rgba(63, 67, 253, 0.7);
  top: -15%;
  left: -15%;
  background: rgba(198, 16, 0, 0);
}

.about .play-btn:hover::after {
  border-left: 15px solid #3f43fd;
  transform: scale(20);
}

.about .play-btn:hover::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translateX(-40%) translateY(-50%);
  width: 0;
  height: 0;
  border: none;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  border-left: 15px solid #fff;
  z-index: 200;
  -webkit-animation: none;
  animation: none;
  border-radius: 0;
}

@-webkit-keyframes pulsate-btn {
  0% {
    transform: scale(0.6, 0.6);
    opacity: 1;
  }
  100% {
    transform: scale(1, 1);
    opacity: 0;
  }
}
@keyframes pulsate-btn {
  0% {
    transform: scale(0.6, 0.6);
    opacity: 1;
  }
  100% {
    transform: scale(1, 1);
    opacity: 0;
  }
}
/*--------------------------------------------------------------
# Features
--------------------------------------------------------------*/
.features .icon-box {
  display: flex;
  align-items: center;
  padding: 20px;
  background: #f5f5ff;
  transition: ease-in-out 0.3s;
}

.features .icon-box i {
  font-size: 32px;
  padding-right: 10px;
  line-height: 1;
}

.features .icon-box h3 {
  font-weight: 700;
  margin: 0;
  padding: 0;
  line-height: 1;
  font-size: 16px;
}

.features .icon-box h3 a {
  color: #010483;
  transition: ease-in-out 0.3s;
}

.features .icon-box h3 a:hover {
  color: #01036f;
}

.features .icon-box:hover {
  background: #ebebff;
}

/*--------------------------------------------------------------
# Counts
--------------------------------------------------------------*/
.counts {
  background: #f5f5ff;
  padding: 70px 0 60px;
}

.counts .count-box {
  padding: 30px 30px 25px 30px;
  width: 100%;
  position: relative;
  text-align: center;
  background: #fff;
}

.counts .count-box i {
  position: absolute;
  top: -25px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 20px;
  background: #010483;
  padding: 12px;
  color: #fff;
  border-radius: 50px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 0;
  width: 48px;
  height: 48px;
}

.counts .count-box span {
  font-size: 36px;
  display: block;
  font-weight: 600;
  color: #010483;
}

.counts .count-box p {
  padding: 0;
  margin: 0;
  font-family: "Montserrat", sans-serif;
  font-size: 14px;
}

/*--------------------------------------------------------------
# Details
--------------------------------------------------------------*/
.details .content + .content {
  margin-top: 100px;
}

.details .content h3 {
  font-weight: 600;
  font-size: 26px;
  color: #010483;
}

.details .content ul {
  list-style: none;
  padding: 0;
}

.details .content ul li {
  padding-bottom: 10px;
}

.details .content ul i {
  font-size: 20px;
  padding-right: 4px;
  color: #1acc8d;
}

.details .content p:last-child {
  margin-bottom: 0;
}

/*--------------------------------------------------------------
# Gallery
--------------------------------------------------------------*/
.gallery .gallery-item {
  overflow: hidden;
  border-right: 3px solid #fff;
  border-bottom: 3px solid #fff;
}

.gallery .gallery-item img {
  transition: all ease-in-out 0.4s;
}

.gallery .gallery-item:hover img {
  transform: scale(1.1);
}

/*--------------------------------------------------------------
# Testimonials
--------------------------------------------------------------*/
.testimonials {
  padding: 80px 0;
  background: url(/build/images/cta-bg.67b9abce.jpg) no-repeat;
  background-position: center center;
  background-size: cover;
  position: relative;
}

.testimonials::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background: rgba(1, 3, 111, 0.8);
}

.testimonials .section-header {
  margin-bottom: 40px;
}

.testimonials .testimonials-carousel, .testimonials .testimonials-slider {
  overflow: hidden;
}

.testimonials .testimonial-item {
  text-align: center;
  color: #fff;
}

.testimonials .testimonial-item .testimonial-img {
  width: 100px;
  border-radius: 50%;
  border: 6px solid rgba(255, 255, 255, 0.15);
  margin: 0 auto;
}

.testimonials .testimonial-item h3 {
  font-size: 20px;
  font-weight: bold;
  margin: 10px 0 5px 0;
  color: #fff;
}

.testimonials .testimonial-item h4 {
  font-size: 14px;
  color: #ddd;
  margin: 0 0 15px 0;
}

.testimonials .testimonial-item .quote-icon-left, .testimonials .testimonial-item .quote-icon-right {
  color: rgba(255, 255, 255, 0.4);
  font-size: 26px;
}

.testimonials .testimonial-item .quote-icon-left {
  display: inline-block;
  left: -5px;
  position: relative;
}

.testimonials .testimonial-item .quote-icon-right {
  display: inline-block;
  right: -5px;
  position: relative;
  top: 10px;
}

.testimonials .testimonial-item p {
  font-style: italic;
  margin: 0 auto 15px auto;
  color: #eee;
}

.testimonials .swiper-pagination {
  margin-top: 20px;
  position: relative;
}

.testimonials .swiper-pagination .swiper-pagination-bullet {
  width: 12px;
  height: 12px;
  opacity: 1;
  background-color: rgba(255, 255, 255, 0.4);
}

.testimonials .swiper-pagination .swiper-pagination-bullet-active {
  background-color: #1acc8d;
}

@media (min-width: 1024px) {
  .testimonials {
    background-attachment: fixed;
  }
}
@media (min-width: 992px) {
  .testimonials .testimonial-item p {
    width: 80%;
  }
}
/*--------------------------------------------------------------
# Team
--------------------------------------------------------------*/
.team {
  background: #fff;
}

.team .member {
  text-align: center;
  margin-bottom: 80px;
  position: relative;
}

.team .member .pic {
  border-radius: 4px;
  overflow: hidden;
}

.team .member img {
  transition: all ease-in-out 0.4s;
}

.team .member:hover img {
  transform: scale(1.1);
}

.team .member .member-info {
  position: absolute;
  bottom: -80px;
  left: 0px;
  right: 0px;
  background: rgba(255, 255, 255, 0.9);
  padding: 15px 0;
  border-radius: 0 0 4px 4px;
  box-shadow: 0px 2px 15px rgba(0, 0, 0, 0.1);
}

.team .member h4 {
  font-weight: 700;
  margin-bottom: 10px;
  font-size: 16px;
  color: #01036f;
  position: relative;
  padding-bottom: 10px;
}

.team .member h4::after {
  content: "";
  position: absolute;
  display: block;
  width: 50px;
  height: 1px;
  background: #0d12fc;
  bottom: 0;
  left: calc(50% - 25px);
}

.team .member span {
  font-style: italic;
  display: block;
  font-size: 13px;
  color: #01036f;
}

.team .member .social {
  margin-top: 10px;
}

.team .member .social a {
  transition: color 0.3s;
  color: #01036f;
}

.team .member .social a:hover {
  color: #1acc8d;
}

.team .member .social i {
  font-size: 16px;
  margin: 0 2px;
}

/*--------------------------------------------------------------
# Pricing
--------------------------------------------------------------*/
.pricing .box {
  padding: 20px;
  background: #fff;
  text-align: center;
  box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.12);
  border-radius: 5px;
  position: relative;
  overflow: hidden;
}

.pricing h3 {
  font-weight: 400;
  margin: -20px -20px 20px -20px;
  padding: 20px 15px;
  font-size: 16px;
  font-weight: 600;
  color: #777777;
  background: #f8f8f8;
}

.pricing h4 {
  font-size: 36px;
  color: #1acc8d;
  font-weight: 600;
  font-family: "Poppins", sans-serif;
  margin-bottom: 20px;
}

.pricing h4 sup {
  font-size: 20px;
  top: -15px;
  left: -3px;
}

.pricing h4 span {
  color: #bababa;
  font-size: 16px;
  font-weight: 300;
}

.pricing ul {
  padding: 0;
  list-style: none;
  color: #444444;
  text-align: center;
  line-height: 20px;
  font-size: 14px;
}

.pricing ul li {
  padding-bottom: 16px;
}

.pricing ul i {
  color: #1acc8d;
  font-size: 18px;
  padding-right: 4px;
}

.pricing ul .na {
  color: #ccc;
  text-decoration: line-through;
}

.pricing .btn-wrap {
  margin: 20px -20px -20px -20px;
  padding: 20px 15px;
  background: #f8f8f8;
  text-align: center;
}

.pricing .btn-buy {
  background: #1acc8d;
  display: inline-block;
  padding: 8px 35px 10px 35px;
  border-radius: 50px;
  color: #fff;
  transition: none;
  font-size: 14px;
  font-weight: 400;
  font-family: "Montserrat", sans-serif;
  font-weight: 600;
  transition: 0.3s;
}

.pricing .btn-buy:hover {
  background: #149f6e;
}

.pricing .featured h3 {
  color: #fff;
  background: #1acc8d;
}

.pricing .advanced {
  width: 200px;
  position: absolute;
  top: 18px;
  right: -68px;
  transform: rotate(45deg);
  z-index: 1;
  font-size: 14px;
  padding: 1px 0 3px 0;
  background: #1acc8d;
  color: #fff;
}

/*--------------------------------------------------------------
# F.A.Q
--------------------------------------------------------------*/
.faq .faq-list {
  padding: 0;
}

.faq .faq-list ul {
  padding: 0;
  list-style: none;
}

.faq .faq-list li + li {
  margin-top: 15px;
}

.faq .faq-list li {
  padding: 20px;
  background: #fff;
  border-radius: 4px;
  position: relative;
}

.faq .faq-list a {
  display: block;
  position: relative;
  font-family: "Poppins", sans-serif;
  font-size: 16px;
  line-height: 24px;
  font-weight: 500;
  padding: 0 30px;
  outline: none;
  cursor: pointer;
}

.faq .faq-list .icon-help {
  font-size: 24px;
  position: absolute;
  right: 0;
  left: 20px;
  color: #262885;
}

.faq .faq-list .icon-show, .faq .faq-list .icon-close {
  font-size: 24px;
  position: absolute;
  right: 0;
  top: 0;
}

.faq .faq-list p {
  margin-bottom: 0;
  padding: 10px 0 0 0;
}

.faq .faq-list .icon-show {
  display: none;
}

.faq .faq-list a.collapsed {
  color: #010483;
}

.faq .faq-list a.collapsed:hover {
  color: #e45555;
}

.faq .faq-list a.collapsed .icon-show {
  display: inline-block;
}

.faq .faq-list a.collapsed .icon-close {
  display: none;
}

@media (max-width: 1200px) {
  .faq .faq-list {
    padding: 0;
  }
}
/*--------------------------------------------------------------
# Contact
--------------------------------------------------------------*/
.contact .info {
  width: 100%;
  background: #fff;
}

.contact .info i {
  font-size: 20px;
  color: #3f43fd;
  float: left;
  width: 44px;
  height: 44px;
  background: #f0f0ff;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50px;
  transition: all 0.3s ease-in-out;
}

.contact .info h4 {
  padding: 0 0 0 60px;
  font-size: 22px;
  font-weight: 600;
  margin-bottom: 5px;
  color: #010483;
}

.contact .info p {
  padding: 0 0 0 60px;
  margin-bottom: 0;
  font-size: 14px;
  color: #0205a1;
}

.contact .info .email, .contact .info .phone {
  margin-top: 40px;
}

.contact .info .email:hover i, .contact .info .address:hover i, .contact .info .phone:hover i {
  background: #1acc8d;
  color: #fff;
}

.contact .php-email-form {
  width: 100%;
  background: #fff;
}

.contact .php-email-form .form-group {
  padding-bottom: 8px;
}

.contact .php-email-form .error-message {
  display: none;
  color: #fff;
  background: #ed3c0d;
  text-align: left;
  padding: 15px;
  font-weight: 600;
}

.contact .php-email-form .error-message br + br {
  margin-top: 25px;
}

.contact .php-email-form .sent-message {
  display: none;
  color: #fff;
  background: #18d26e;
  text-align: center;
  padding: 15px;
  font-weight: 600;
}

.contact .php-email-form .loading {
  display: none;
  background: #fff;
  text-align: center;
  padding: 15px;
}

.contact .php-email-form .loading:before {
  content: "";
  display: inline-block;
  border-radius: 50%;
  width: 24px;
  height: 24px;
  margin: 0 10px -6px 0;
  border: 3px solid #18d26e;
  border-top-color: #eee;
  -webkit-animation: animate-loading 1s linear infinite;
  animation: animate-loading 1s linear infinite;
}

.contact .php-email-form input, .contact .php-email-form textarea {
  border-radius: 0;
  box-shadow: none;
  font-size: 14px;
}

.contact .php-email-form input {
  height: 44px;
}

.contact .php-email-form textarea {
  padding: 10px 12px;
}

.contact .php-email-form button[type=submit] {
  background: #2a20a1;
  border: 0;
  padding: 10px 30px;
  color: #fff;
  transition: 0.4s;
  border-radius: 50px;
}

.contact .php-email-form button[type=submit]:hover {
  background: #010483;
}

@-webkit-keyframes animate-loading {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@keyframes animate-loading {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/
#footer {
  background: #010351;
  padding: 0 0 30px 0;
  color: #fff;
  font-size: 14px;
}

#footer .footer-top {
  padding: 60px 0 30px 0;
}

#footer .footer-top .footer-info {
  margin-bottom: 15px;
  background: #010246;
  color: #fff;
  border-top: 4px solid #1acc8d;
  text-align: center;
  padding: 30px 20px;
}

#footer .footer-top .footer-info h3 {
  font-size: 24px;
  margin: 0 0 20px 0;
  padding: 2px 0 2px 0;
  line-height: 1;
  font-weight: 700;
}

#footer .footer-top .footer-info p {
  font-size: 14px;
  line-height: 24px;
  margin-bottom: 0;
  font-family: "Montserrat", sans-serif;
}

#footer .footer-top .social-links a {
  font-size: 18px;
  display: inline-block;
  color: #fff;
  line-height: 1;
  padding: 8px 0;
  margin-right: 4px;
  border-radius: 50%;
  text-align: center;
  width: 36px;
  height: 36px;
  transition: 0.3s;
}

#footer .footer-top .social-links a:hover {
  background: #1acc8d;
  color: #fff;
  text-decoration: none;
}

#footer .footer-top h4 {
  font-size: 16px;
  font-weight: 600;
  color: #fff;
  position: relative;
  padding-bottom: 12px;
}

#footer .footer-top .footer-links {
  margin-bottom: 30px;
}

#footer .footer-top .footer-links ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

#footer .footer-top .footer-links ul i {
  padding-right: 2px;
  color: #61ebba;
  font-size: 18px;
  line-height: 1;
}

#footer .footer-top .footer-links ul li {
  padding: 10px 0;
  display: flex;
  align-items: center;
}

#footer .footer-top .footer-links ul li:first-child {
  padding-top: 0;
}

#footer .footer-top .footer-links ul a {
  color: #fff;
  transition: 0.3s;
  display: inline-block;
  line-height: 1;
}

#footer .footer-top .footer-links ul a:hover {
  color: #4be8b0;
}

#footer .footer-top .footer-newsletter form {
  margin-top: 30px;
  background: #fff;
  padding: 6px 10px 6px 15px;
  position: relative;
  border-radius: 50px;
}

#footer .footer-top .footer-newsletter form input[type=email] {
  border: 0;
  padding: 4px;
  width: calc(100% - 110px);
}

#footer .footer-top .footer-newsletter form input[type=submit] {
  position: absolute;
  top: 0;
  right: -2px;
  bottom: 0;
  border: 0;
  background: none;
  font-size: 16px;
  padding: 0 20px;
  background: #1acc8d;
  color: #fff;
  transition: 0.3s;
  border-radius: 50px;
}

#footer .footer-top .footer-newsletter form input[type=submit]:hover {
  background: #149f6e;
}

#footer .copyright {
  border-top: 1px solid #010479;
  text-align: center;
  padding-top: 30px;
}

#footer .credits {
  padding-top: 10px;
  text-align: center;
  font-size: 13px;
  color: #fff;
}

@media (max-width: 575px) {
  #footer .footer-top .footer-info {
    margin: -20px 0 30px 0;
  }
}
.responsive {
  width: 100%;
  max-width: 110px;
  height: 100px;
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLmNzcyIsIm1hcHBpbmdzIjoiQUFBQTtFQUFJO0FBRUo7O0FBREE7Ozs7O0NBQUE7QUFPQTs7K0RBQUE7QUFHQTtFQUNJO0FBR0o7O0FBQUU7RUFDRTtFQUFnQjtFQUNoQjtBQUlKOztBQURFO0VBQ0U7RUFDQTtBQUlKOztBQURFOzsrREFBQTtBQUdBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQUlKOztBQURFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQUlKOztBQURFO0VBQ0U7SUFDRTtFQUlKO0VBRkU7SUFDRTtFQUlKO0FBQ0Y7QUFERTtFQUNFO0lBQ0U7RUFHSjtFQURFO0lBQ0U7RUFHSjtBQUNGO0FBREU7OytEQUFBO0FBR0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBR0o7O0FBREU7RUFDRTtFQUNBO0VBQ0E7QUFJSjs7QUFGRTtFQUNFO0VBQ0E7QUFLSjs7QUFIRTtFQUNFO0VBQ0E7QUFNSjs7QUFIRTs7K0RBQUE7QUFHQTtFQUNFO0lBQ0U7RUFNSjtBQUNGO0FBSkU7OytEQUFBO0FBR0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBTUo7O0FBSkU7RUFDRTtBQU9KOztBQUxFO0VBQ0U7RUFDQTtBQVFKOztBQU5FO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQVNKOztBQVBFO0VBQ0U7RUFDQTtBQVVKOztBQVJFO0VBQ0U7RUFDQTtFQUNBO0FBV0o7O0FBUkU7OytEQUFBO0FBR0E7O0NBQUE7QUFHQTtFQUNFO0FBV0o7O0FBVEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBWUo7O0FBVkU7RUFDRTtBQWFKOztBQVhFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFjSjs7QUFaRTtFQUNFO0VBQ0E7RUFDQTtBQWVKOztBQWJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFnQko7O0FBZEU7RUFDRTtFQUNBO0FBaUJKOztBQWZFO0VBQ0U7QUFrQko7O0FBaEJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFtQko7O0FBakJFO0VBQ0U7QUFvQko7O0FBbEJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQXFCSjs7QUFuQkU7RUFDRTtBQXNCSjs7QUFwQkU7RUFDRTtBQXVCSjs7QUFyQkU7RUFDRTtFQUNBO0VBQ0E7QUF3Qko7O0FBdEJFO0VBQ0U7RUFDQTtFQUNBO0FBeUJKOztBQXZCRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FBMEJKOztBQXhCRTtFQUNFO0lBQ0U7RUEyQko7O0VBekJFO0lBQ0U7RUE0Qko7QUFDRjtBQXpCRTs7Q0FBQTtBQUdBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBMkJKOztBQXhCRTtFQUNFO0lBQ0U7RUEyQko7O0VBeEJFO0lBQ0U7RUEyQko7QUFDRjtBQXpCRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQTJCSjs7QUF6QkU7RUFDRTtFQUNBO0VBQ0E7QUE0Qko7O0FBMUJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQTZCSjs7QUEzQkU7RUFDRTtBQThCSjs7QUE1QkU7RUFDRTtFQUNBO0VBQ0E7QUErQko7O0FBN0JFO0VBQ0U7QUFnQ0o7O0FBOUJFO0VBQ0U7QUFpQ0o7O0FBL0JFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBa0NKOztBQWhDRTtFQUNFO0FBbUNKOztBQWpDRTtFQUNFO0FBb0NKOztBQWxDRTtFQUNFO0FBcUNKOztBQW5DRTtFQUNFO0FBc0NKOztBQXBDRTtFQUNFO0FBdUNKOztBQXBDRTs7K0RBQUE7QUFHQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FBdUNKOztBQXJDRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBd0NKOztBQXRDRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUF5Q0o7O0FBdkNFO0VBQ0U7RUFDQTtBQTBDSjs7QUF4Q0U7RUFDRTtFQUNBO0VBQ0E7QUEyQ0o7O0FBekNFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUE0Q0o7O0FBMUNFO0VBQ0U7QUE2Q0o7O0FBM0NFO0VBQ0U7QUE4Q0o7O0FBNUNFO0VBQ0U7SUFDRTtFQStDSjtBQUNGO0FBN0NFO0VBQ0U7SUFDRTtFQStDSjs7RUE3Q0U7SUFDRTtJQUNBO0VBZ0RKOztFQTlDRTtJQUNFO0VBaURKOztFQS9DRTtJQUNFO0VBa0RKOztFQWhERTtJQUNFO0lBQ0E7SUFDQTtFQW1ESjs7RUFqREU7SUFDRTtJQUNBO0lBQ0E7RUFvREo7QUFDRjtBQWxERTtFQUNFO0lBQ0U7RUFvREo7QUFDRjtBQWpERTtFQUNFO0lBQ0U7RUFtREo7RUFqREU7SUFDRTtFQW1ESjtBQUNGO0FBaERFO0VBQ0U7SUFDRTtFQWtESjtFQWhERTtJQUNFO0VBa0RKO0FBQ0Y7QUFoREU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFrREo7O0FBL0NFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QUFrREo7O0FBL0NFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QUFrREo7O0FBL0NFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QUFrREo7O0FBL0NFO0VBQ0U7SUFDRTtFQWtESjtFQWhERTtJQUNFO0VBa0RKO0FBQ0Y7QUEvQ0U7RUFDRTtJQUNFO0VBaURKO0VBL0NFO0lBQ0U7RUFpREo7QUFDRjtBQS9DRTtFQUNFO0lBQ0U7RUFpREo7RUEvQ0U7SUFDRTtFQWlESjtBQUNGO0FBL0NFO0VBQ0U7SUFDRTtFQWlESjtFQS9DRTtJQUNFO0VBaURKO0FBQ0Y7QUEvQ0U7RUFDRTtJQUNFO0VBaURKO0VBL0NFO0lBQ0U7RUFpREo7QUFDRjtBQS9DRTtFQUNFO0lBQ0U7RUFpREo7RUEvQ0U7SUFDRTtFQWlESjtBQUNGO0FBL0NFOzsrREFBQTtBQUdBO0VBQ0U7RUFDQTtBQWlESjs7QUE5Q0U7RUFDRTtBQWlESjs7QUE5Q0U7RUFDRTtBQWlESjs7QUEvQ0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFrREo7O0FBaERFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBbURKOztBQWpERTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBb0RKOztBQWpERTs7K0RBQUE7QUFHQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FBb0RKOztBQWxERTtFQUNFO0lBQ0U7RUFxREo7QUFDRjtBQW5ERTtFQUNFO0VBQ0E7RUFDQTtBQXFESjs7QUFuREU7RUFDRTtJQUNFO0VBc0RKO0FBQ0Y7QUFwREU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFzREo7O0FBcERFO0VBQ0U7QUF1REo7O0FBckRFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QUF3REo7O0FBdERFO0VBQ0U7SUFDRTtFQXlESjs7RUF2REU7SUFDRTtFQTBESjs7RUF4REU7SUFDRTtFQTJESjtBQUNGO0FBeERFOzsrREFBQTtBQUdBO0VBQ0U7QUEwREo7O0FBeERFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QUEyREo7O0FBekRFO0VBQ0U7QUE0REo7O0FBMURFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBNkRKOztBQTNERTtFQUNFO0VBQ0E7QUE4REo7O0FBNURFO0VBQ0U7RUFDQTtBQStESjs7QUE3REU7RUFDRTtBQWdFSjs7QUE5REU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBQWlFSjs7QUEvREU7RUFDRTtFQUNBO0FBa0VKOztBQWhFRTtFQUNFO0FBbUVKOztBQWpFRTtFQUNFO0VBQ0E7RUFDQTtBQW9FSjs7QUFsRUU7RUFDRTtFQUNBO0VBQ0E7QUFxRUo7O0FBbkVFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBc0VKOztBQXBFRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQXVFSjs7QUFyRUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBd0VKOztBQXRFRTtFQUNFO0VBQ0E7QUF5RUo7O0FBdkVFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBMEVKOztBQXZFRTtFQUNFO0lBQ0U7SUFDQTtFQTBFSjtFQXhFRTtJQUNFO0lBQ0E7RUEwRUo7QUFDRjtBQXZFRTtFQUNFO0lBQ0U7SUFDQTtFQXlFSjtFQXZFRTtJQUNFO0lBQ0E7RUF5RUo7QUFDRjtBQXZFRTs7K0RBQUE7QUFHQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUF5RUo7O0FBdkVFO0VBQ0U7RUFDQTtFQUNBO0FBMEVKOztBQXhFRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUEyRUo7O0FBekVFO0VBQ0U7RUFDQTtBQTRFSjs7QUExRUU7RUFDRTtBQTZFSjs7QUEzRUU7RUFDRTtBQThFSjs7QUEzRUU7OytEQUFBO0FBR0E7RUFDRTtFQUNBO0FBOEVKOztBQTVFRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUErRUo7O0FBN0VFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBZ0ZKOztBQTlFRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FBaUZKOztBQS9FRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FBa0ZKOztBQS9FRTs7K0RBQUE7QUFHQTtFQUNFO0FBa0ZKOztBQWhGRTtFQUNFO0VBQ0E7RUFDQTtBQW1GSjs7QUFqRkU7RUFDRTtFQUNBO0FBb0ZKOztBQWxGRTtFQUNFO0FBcUZKOztBQW5GRTtFQUNFO0VBQ0E7RUFDQTtBQXNGSjs7QUFwRkU7RUFDRTtBQXVGSjs7QUFwRkU7OytEQUFBO0FBR0E7RUFDRTtFQUNBO0VBQ0E7QUF1Rko7O0FBckZFO0VBQ0U7QUF3Rko7O0FBdEZFO0VBQ0U7QUF5Rko7O0FBdEZFOzsrREFBQTtBQUdBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQXlGSjs7QUF2RkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQTBGSjs7QUF4RkU7RUFDRTtBQTJGSjs7QUF6RkU7RUFDRTtBQTRGSjs7QUExRkU7RUFDRTtFQUNBO0FBNkZKOztBQTNGRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FBOEZKOztBQTVGRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FBK0ZKOztBQTdGRTtFQUNFO0VBQ0E7RUFDQTtBQWdHSjs7QUE5RkU7RUFDRTtFQUNBO0FBaUdKOztBQS9GRTtFQUNFO0VBQ0E7RUFDQTtBQWtHSjs7QUFoR0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBQW1HSjs7QUFqR0U7RUFDRTtFQUNBO0VBQ0E7QUFvR0o7O0FBbEdFO0VBQ0U7RUFDQTtBQXFHSjs7QUFuR0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBQXNHSjs7QUFwR0U7RUFDRTtBQXVHSjs7QUFyR0U7RUFDRTtJQUNFO0VBd0dKO0FBQ0Y7QUF0R0U7RUFDRTtJQUNFO0VBd0dKO0FBQ0Y7QUFyR0U7OytEQUFBO0FBR0E7RUFDRTtBQXVHSjs7QUFyR0U7RUFDRTtFQUNBO0VBQ0E7QUF3R0o7O0FBdEdFO0VBQ0U7RUFDQTtBQXlHSjs7QUF2R0U7RUFDRTtBQTBHSjs7QUF4R0U7RUFDRTtBQTJHSjs7QUF6R0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBNEdKOztBQTFHRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQTZHSjs7QUEzR0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBOEdKOztBQTVHRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FBK0dKOztBQTdHRTtFQUNFO0FBZ0hKOztBQTlHRTtFQUNFO0VBQ0E7QUFpSEo7O0FBL0dFO0VBQ0U7QUFrSEo7O0FBaEhFO0VBQ0U7RUFDQTtBQW1ISjs7QUFoSEU7OytEQUFBO0FBR0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQW1ISjs7QUFqSEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQW9ISjs7QUFsSEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBcUhKOztBQW5IRTtFQUNFO0VBQ0E7RUFDQTtBQXNISjs7QUFwSEU7RUFDRTtFQUNBO0VBQ0E7QUF1SEo7O0FBckhFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBd0hKOztBQXRIRTtFQUNFO0FBeUhKOztBQXZIRTtFQUNFO0VBQ0E7RUFDQTtBQTBISjs7QUF4SEU7RUFDRTtFQUNBO0FBMkhKOztBQXpIRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FBNEhKOztBQTFIRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUE2SEo7O0FBM0hFO0VBQ0U7QUE4SEo7O0FBNUhFO0VBQ0U7RUFDQTtBQStISjs7QUE3SEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQWdJSjs7QUE3SEU7OytEQUFBO0FBR0E7RUFDRTtBQWdJSjs7QUE5SEU7RUFDRTtFQUNBO0FBaUlKOztBQS9IRTtFQUNFO0FBa0lKOztBQWhJRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FBbUlKOztBQWpJRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQW9JSjs7QUFsSUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBcUlKOztBQW5JRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FBc0lKOztBQXBJRTtFQUNFO0VBQ0E7QUF1SUo7O0FBcklFO0VBQ0U7QUF3SUo7O0FBdElFO0VBQ0U7QUF5SUo7O0FBdklFO0VBQ0U7QUEwSUo7O0FBeElFO0VBQ0U7QUEySUo7O0FBeklFO0VBQ0U7QUE0SUo7O0FBMUlFO0VBQ0U7SUFDRTtFQTZJSjtBQUNGO0FBMUlFOzsrREFBQTtBQUdBO0VBQ0U7RUFDQTtBQTRJSjs7QUExSUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBNklKOztBQTNJRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUE4SUo7O0FBNUlFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QUErSUo7O0FBN0lFO0VBQ0U7QUFnSko7O0FBOUlFO0VBQ0U7RUFDQTtBQWlKSjs7QUEvSUU7RUFDRTtFQUNBO0FBa0pKOztBQWhKRTtFQUNFO0FBbUpKOztBQWpKRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQW9KSjs7QUFsSkU7RUFDRTtBQXFKSjs7QUFuSkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFzSko7O0FBcEpFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QUF1Sko7O0FBckpFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUF3Sko7O0FBdEpFO0VBQ0U7RUFDQTtFQUNBO0FBeUpKOztBQXZKRTtFQUNFO0FBMEpKOztBQXhKRTtFQUNFO0FBMkpKOztBQXpKRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQTRKSjs7QUExSkU7RUFDRTtBQTZKSjs7QUEzSkU7RUFDRTtJQUNFO0VBOEpKO0VBNUpFO0lBQ0U7RUE4Sko7QUFDRjtBQTVKRTtFQUNFO0lBQ0U7RUE4Sko7RUE1SkU7SUFDRTtFQThKSjtBQUNGO0FBM0pFOzsrREFBQTtBQUdBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QUE2Sko7O0FBM0pFO0VBQ0U7QUE4Sko7O0FBNUpFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBK0pKOztBQTdKRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFnS0o7O0FBOUpFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QUFpS0o7O0FBL0pFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQWtLSjs7QUFoS0U7RUFDRTtFQUNBO0VBQ0E7QUFtS0o7O0FBaktFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQW9LSjs7QUFsS0U7RUFDRTtBQXFLSjs7QUFuS0U7RUFDRTtFQUNBO0VBQ0E7QUFzS0o7O0FBcEtFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QUF1S0o7O0FBcktFO0VBQ0U7RUFDQTtFQUNBO0FBd0tKOztBQXRLRTtFQUNFO0FBeUtKOztBQXZLRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FBMEtKOztBQXhLRTtFQUNFO0FBMktKOztBQXpLRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUE0S0o7O0FBMUtFO0VBQ0U7RUFDQTtFQUNBO0FBNktKOztBQTNLRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQThLSjs7QUE1S0U7RUFDRTtBQStLSjs7QUE3S0U7RUFDRTtFQUNBO0VBQ0E7QUFnTEo7O0FBOUtFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QUFpTEo7O0FBL0tFO0VBQ0U7SUFDRTtFQWtMSjtBQUNGO0FBL0tFO0VBQ0U7RUFDQTtFQUNBO0FBaUxKLEMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9hcHAuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIqIHsgZm9udC1mYW1pbHk6IFwiUG9wcGluc1wiLCBzYW5zLXNlcmlmOyB9XHJcbi8qKlxyXG4qIFRlbXBsYXRlIE5hbWU6IEJvb3RzbGFuZGVyIC0gdjQuNy4xXHJcbiogVGVtcGxhdGUgVVJMOiBodHRwczovL2Jvb3RzdHJhcG1hZGUuY29tL2Jvb3RzbGFuZGVyLWZyZWUtYm9vdHN0cmFwLWxhbmRpbmctcGFnZS10ZW1wbGF0ZS9cclxuKiBBdXRob3I6IEJvb3RzdHJhcE1hZGUuY29tXHJcbiogTGljZW5zZTogaHR0cHM6Ly9ib290c3RyYXBtYWRlLmNvbS9saWNlbnNlL1xyXG4qL1xyXG5cclxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4jIEdlbmVyYWxcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG5ib2R5IHtcclxuICAgIGNvbG9yOiAjNDQ0NDQ0O1xyXG4gIH1cclxuICBcclxuICBhIHtcclxuICAgIGNvbG9yOiAjZWM0OTQ5OyAvKiMxYWNjOGQ7Ki9cclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICB9XHJcbiAgXHJcbiAgYTpob3ZlciB7XHJcbiAgICBjb2xvcjogI2Y1MDgwODtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICB9XHJcbiAgXHJcbiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICMgUHJlbG9hZGVyXHJcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG4gICNwcmVsb2FkZXIge1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgei1pbmRleDogOTk5OTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gIH1cclxuICBcclxuICAjcHJlbG9hZGVyOmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgdG9wOiBjYWxjKDUwJSAtIDMwcHgpO1xyXG4gICAgbGVmdDogY2FsYyg1MCUgLSAzMHB4KTtcclxuICAgIGJvcmRlcjogNnB4IHNvbGlkICMwODBhODM7XHJcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjZDJmOWViO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgd2lkdGg6IDYwcHg7XHJcbiAgICBoZWlnaHQ6IDYwcHg7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbjogYW5pbWF0ZS1wcmVsb2FkZXIgMXMgbGluZWFyIGluZmluaXRlO1xyXG4gICAgYW5pbWF0aW9uOiBhbmltYXRlLXByZWxvYWRlciAxcyBsaW5lYXIgaW5maW5pdGU7XHJcbiAgfVxyXG4gIFxyXG4gIEAtd2Via2l0LWtleWZyYW1lcyBhbmltYXRlLXByZWxvYWRlciB7XHJcbiAgICAwJSB7XHJcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xyXG4gICAgfVxyXG4gICAgMTAwJSB7XHJcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG4gIEBrZXlmcmFtZXMgYW5pbWF0ZS1wcmVsb2FkZXIge1xyXG4gICAgMCUge1xyXG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcclxuICAgIH1cclxuICAgIDEwMCUge1xyXG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xyXG4gICAgfVxyXG4gIH1cclxuICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgIyBCYWNrIHRvIHRvcCBidXR0b25cclxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbiAgLmJhY2stdG8tdG9wIHtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICByaWdodDogMTVweDtcclxuICAgIGJvdHRvbTogMTVweDtcclxuICAgIHotaW5kZXg6IDk5NjtcclxuICAgIGJhY2tncm91bmQ6ICMwMTA0ODM7XHJcbiAgICB3aWR0aDogNDBweDtcclxuICAgIGhlaWdodDogNDBweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC40cztcclxuICB9XHJcbiAgLmJhY2stdG8tdG9wIGkge1xyXG4gICAgZm9udC1zaXplOiAyOHB4O1xyXG4gICAgY29sb3I6ICNmZmY7XHJcbiAgICBsaW5lLWhlaWdodDogMDtcclxuICB9XHJcbiAgLmJhY2stdG8tdG9wOmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQ6ICMyYmU0YTI7XHJcbiAgICBjb2xvcjogI2ZmZjtcclxuICB9XHJcbiAgLmJhY2stdG8tdG9wLmFjdGl2ZSB7XHJcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcbiAgXHJcbiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICMgRGlzYWJsZSBBT1MgZGVsYXkgb24gbW9iaWxlXHJcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbiAgICBbZGF0YS1hb3MtZGVsYXldIHtcclxuICAgICAgdHJhbnNpdGlvbi1kZWxheTogMCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gIH1cclxuICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgIyBIZWFkZXJcclxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbiAgI2hlYWRlciB7XHJcbiAgICBoZWlnaHQ6IDgwcHg7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cztcclxuICAgIHotaW5kZXg6IDk5NztcclxuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzO1xyXG4gICAgYmFja2dyb3VuZDogcmdiYSgxLCA0LCAxMzYsIDAuOSk7XHJcbiAgfVxyXG4gICNoZWFkZXIuaGVhZGVyLXRyYW5zcGFyZW50IHtcclxuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gIH1cclxuICAjaGVhZGVyLmhlYWRlci1zY3JvbGxlZCB7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDEsIDQsIDEzNiwgMC45KTtcclxuICAgIGhlaWdodDogNjBweDtcclxuICB9XHJcbiAgI2hlYWRlciAubG9nbyBoMSB7XHJcbiAgICBmb250LXNpemU6IDI4cHg7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gIH1cclxuICAjaGVhZGVyIC5sb2dvIGgxIGEsICNoZWFkZXIgLmxvZ28gaDEgYTpob3ZlciB7XHJcbiAgICBjb2xvcjogI2ZmZjtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICB9XHJcbiAgI2hlYWRlciAubG9nbyBpbWcge1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIG1heC1oZWlnaHQ6IDQwcHg7XHJcbiAgfVxyXG4gIFxyXG4gIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAjIE5hdmlnYXRpb24gTWVudVxyXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuICAvKipcclxuICAqIERlc2t0b3AgTmF2aWdhdGlvbiBcclxuICAqL1xyXG4gIC5uYXZiYXIge1xyXG4gICAgcGFkZGluZzogMDtcclxuICB9XHJcbiAgLm5hdmJhciB1bCB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIH1cclxuICAubmF2YmFyIGxpIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB9XHJcbiAgLm5hdmJhciBhLCAubmF2YmFyIGE6Zm9jdXMge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICBwYWRkaW5nOiAxMHB4IDAgMTBweCAzMHB4O1xyXG4gICAgZm9udC1zaXplOiAxNXB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgIGZvbnQtZmFtaWx5OiBcIlBvcHBpbnNcIiwgc2Fucy1zZXJpZjtcclxuICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgdHJhbnNpdGlvbjogMC4zcztcclxuICB9XHJcbiAgLm5hdmJhciBhIGksIC5uYXZiYXIgYTpmb2N1cyBpIHtcclxuICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAwO1xyXG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcclxuICB9XHJcbiAgLm5hdmJhciA+IHVsID4gbGkgPiBhOmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgd2lkdGg6IDA7XHJcbiAgICBoZWlnaHQ6IDJweDtcclxuICAgIGJvdHRvbTogM3B4O1xyXG4gICAgbGVmdDogMzBweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMxYWNjOGQ7XHJcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICB3aWR0aDogMHB4O1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQgMHM7XHJcbiAgfVxyXG4gIC5uYXZiYXIgYTpob3ZlcjpiZWZvcmUsIC5uYXZiYXIgbGk6aG92ZXIgPiBhOmJlZm9yZSwgLm5hdmJhciAuYWN0aXZlOmJlZm9yZSB7XHJcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgd2lkdGg6IDI1cHg7XHJcbiAgfVxyXG4gIC5uYXZiYXIgYTpob3ZlciwgLm5hdmJhciAuYWN0aXZlLCAubmF2YmFyIC5hY3RpdmU6Zm9jdXMsIC5uYXZiYXIgbGk6aG92ZXIgPiBhIHtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gIH1cclxuICAubmF2YmFyIC5kcm9wZG93biB1bCB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGxlZnQ6IDMwcHg7XHJcbiAgICB0b3A6IGNhbGMoMTAwJSArIDMwcHgpO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcGFkZGluZzogMTBweCAwO1xyXG4gICAgei1pbmRleDogOTk7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgYmFja2dyb3VuZDogI2ZmZjtcclxuICAgIGJveC1zaGFkb3c6IDBweCAwcHggMzBweCByZ2JhKDEyNywgMTM3LCAxNjEsIDAuMjUpO1xyXG4gICAgdHJhbnNpdGlvbjogMC4zcztcclxuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcclxuICB9XHJcbiAgLm5hdmJhciAuZHJvcGRvd24gdWwgbGkge1xyXG4gICAgbWluLXdpZHRoOiAyMDBweDtcclxuICB9XHJcbiAgLm5hdmJhciAuZHJvcGRvd24gdWwgYSB7XHJcbiAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICBjb2xvcjogIzAxMDM2ZjtcclxuICB9XHJcbiAgLm5hdmJhciAuZHJvcGRvd24gdWwgYSBpIHtcclxuICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICB9XHJcbiAgLm5hdmJhciAuZHJvcGRvd24gdWwgYTpob3ZlciwgLm5hdmJhciAuZHJvcGRvd24gdWwgLmFjdGl2ZTpob3ZlciwgLm5hdmJhciAuZHJvcGRvd24gdWwgbGk6aG92ZXIgPiBhIHtcclxuICAgIGNvbG9yOiAjMWFjYzhkO1xyXG4gIH1cclxuICAubmF2YmFyIC5kcm9wZG93bjpob3ZlciA+IHVsIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICB0b3A6IDEwMCU7XHJcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gIH1cclxuICAubmF2YmFyIC5kcm9wZG93biAuZHJvcGRvd24gdWwge1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogY2FsYygxMDAlIC0gMzBweCk7XHJcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgfVxyXG4gIC5uYXZiYXIgLmRyb3Bkb3duIC5kcm9wZG93bjpob3ZlciA+IHVsIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAxMDAlO1xyXG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICB9XHJcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEzNjZweCkge1xyXG4gICAgLm5hdmJhciAuZHJvcGRvd24gLmRyb3Bkb3duIHVsIHtcclxuICAgICAgbGVmdDogLTkwJTtcclxuICAgIH1cclxuICAgIC5uYXZiYXIgLmRyb3Bkb3duIC5kcm9wZG93bjpob3ZlciA+IHVsIHtcclxuICAgICAgbGVmdDogLTEwMCU7XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG4gIC8qKlxyXG4gICogTW9iaWxlIE5hdmlnYXRpb24gXHJcbiAgKi9cclxuICAubW9iaWxlLW5hdi10b2dnbGUge1xyXG4gICAgY29sb3I6ICNmZmY7XHJcbiAgICBmb250LXNpemU6IDI4cHg7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgbGluZS1oZWlnaHQ6IDA7XHJcbiAgICB0cmFuc2l0aW9uOiAwLjVzO1xyXG4gIH1cclxuICBcclxuICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcclxuICAgIC5tb2JpbGUtbmF2LXRvZ2dsZSB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG4gIFxyXG4gICAgLm5hdmJhciB1bCB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5uYXZiYXItbW9iaWxlIHtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICB0b3A6IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDEsIDMsIDkxLCAwLjkpO1xyXG4gICAgdHJhbnNpdGlvbjogMC4zcztcclxuICAgIHotaW5kZXg6IDk5OTtcclxuICB9XHJcbiAgLm5hdmJhci1tb2JpbGUgLm1vYmlsZS1uYXYtdG9nZ2xlIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMTVweDtcclxuICAgIHJpZ2h0OiAxNXB4O1xyXG4gIH1cclxuICAubmF2YmFyLW1vYmlsZSB1bCB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogNTVweDtcclxuICAgIHJpZ2h0OiAxNXB4O1xyXG4gICAgYm90dG9tOiAxNXB4O1xyXG4gICAgbGVmdDogMTVweDtcclxuICAgIHBhZGRpbmc6IDEwcHggMDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xyXG4gICAgdHJhbnNpdGlvbjogMC4zcztcclxuICB9XHJcbiAgLm5hdmJhci1tb2JpbGUgPiB1bCA+IGxpID4gYTpiZWZvcmUge1xyXG4gICAgbGVmdDogMjBweDtcclxuICB9XHJcbiAgLm5hdmJhci1tb2JpbGUgYSwgLm5hdmJhci1tb2JpbGUgYTpmb2N1cyB7XHJcbiAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XHJcbiAgICBmb250LXNpemU6IDE1cHg7XHJcbiAgICBjb2xvcjogIzAyMDVhMTtcclxuICB9XHJcbiAgLm5hdmJhci1tb2JpbGUgYTpob3ZlciwgLm5hdmJhci1tb2JpbGUgLmFjdGl2ZSwgLm5hdmJhci1tb2JpbGUgbGk6aG92ZXIgPiBhIHtcclxuICAgIGNvbG9yOiAjM2Y0M2ZkO1xyXG4gIH1cclxuICAubmF2YmFyLW1vYmlsZSAuZ2V0c3RhcnRlZCwgLm5hdmJhci1tb2JpbGUgLmdldHN0YXJ0ZWQ6Zm9jdXMge1xyXG4gICAgbWFyZ2luOiAxNXB4O1xyXG4gIH1cclxuICAubmF2YmFyLW1vYmlsZSAuZHJvcGRvd24gdWwge1xyXG4gICAgcG9zaXRpb246IHN0YXRpYztcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICBtYXJnaW46IDEwcHggMjBweDtcclxuICAgIHBhZGRpbmc6IDEwcHggMDtcclxuICAgIHotaW5kZXg6IDk5O1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gICAgYm94LXNoYWRvdzogMHB4IDBweCAzMHB4IHJnYmEoMTI3LCAxMzcsIDE2MSwgMC4yNSk7XHJcbiAgfVxyXG4gIC5uYXZiYXItbW9iaWxlIC5kcm9wZG93biB1bCBsaSB7XHJcbiAgICBtaW4td2lkdGg6IDIwMHB4O1xyXG4gIH1cclxuICAubmF2YmFyLW1vYmlsZSAuZHJvcGRvd24gdWwgYSB7XHJcbiAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XHJcbiAgfVxyXG4gIC5uYXZiYXItbW9iaWxlIC5kcm9wZG93biB1bCBhIGkge1xyXG4gICAgZm9udC1zaXplOiAxMnB4O1xyXG4gIH1cclxuICAubmF2YmFyLW1vYmlsZSAuZHJvcGRvd24gdWwgYTpob3ZlciwgLm5hdmJhci1tb2JpbGUgLmRyb3Bkb3duIHVsIC5hY3RpdmU6aG92ZXIsIC5uYXZiYXItbW9iaWxlIC5kcm9wZG93biB1bCBsaTpob3ZlciA+IGEge1xyXG4gICAgY29sb3I6ICMxYWNjOGQ7XHJcbiAgfVxyXG4gIC5uYXZiYXItbW9iaWxlIC5kcm9wZG93biA+IC5kcm9wZG93bi1hY3RpdmUge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG4gIFxyXG4gIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAjIEhlcm8gU2VjdGlvblxyXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuICAjaGVybyB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGJhY2tncm91bmQ6IHVybChcImltZy9oZXJvLWJnLmpwZ1wiKTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHBhZGRpbmc6IDEyMHB4IDAgMCAwO1xyXG4gIH1cclxuICAjaGVybzpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcIjtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoMiwgNSwgMTYxLCAwLjkxKTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICByaWdodDogMDtcclxuICB9XHJcbiAgI2hlcm8gaDEge1xyXG4gICAgbWFyZ2luOiAwIDAgMjBweCAwO1xyXG4gICAgZm9udC1zaXplOiA0OHB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIGxpbmUtaGVpZ2h0OiA1NnB4O1xyXG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcclxuICB9XHJcbiAgI2hlcm8gaDEgc3BhbiB7XHJcbiAgICBjb2xvcjogI2ZmZjtcclxuICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAjMWFjYzhkO1xyXG4gIH1cclxuICAjaGVybyBoMiB7XHJcbiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICB9XHJcbiAgI2hlcm8gLmJ0bi1nZXQtc3RhcnRlZCB7XHJcbiAgICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIHNhbnMtc2VyaWY7XHJcbiAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHBhZGRpbmc6IDEwcHggMzBweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XHJcbiAgICB0cmFuc2l0aW9uOiAwLjVzO1xyXG4gICAgY29sb3I6ICNmZmY7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZTcyNzI3LyojMWFjYzhkOyovXHJcbiAgfVxyXG4gICNoZXJvIC5idG4tZ2V0LXN0YXJ0ZWQ6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZDogI2VjMGEwYWYxIC8qMTdiNTdkOyovXHJcbiAgfVxyXG4gICNoZXJvIC5hbmltYXRlZCB7XHJcbiAgICBhbmltYXRpb246IHVwLWRvd24gMnMgZWFzZS1pbi1vdXQgaW5maW5pdGUgYWx0ZXJuYXRlLXJldmVyc2UgYm90aDtcclxuICB9XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xyXG4gICAgI2hlcm8ge1xyXG4gICAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xyXG4gICAgfVxyXG4gIH1cclxuICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcclxuICAgICNoZXJvIHtcclxuICAgICAgcGFkZGluZy10b3A6IDgwcHg7XHJcbiAgICB9XHJcbiAgICAjaGVybyAuYW5pbWF0ZWQge1xyXG4gICAgICAtd2Via2l0LWFuaW1hdGlvbjogbm9uZTtcclxuICAgICAgYW5pbWF0aW9uOiBub25lO1xyXG4gICAgfVxyXG4gICAgI2hlcm8gLmhlcm8taW1nIHtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgfVxyXG4gICAgI2hlcm8gLmhlcm8taW1nIGltZyB7XHJcbiAgICAgIG1heC13aWR0aDogOTUlO1xyXG4gICAgfVxyXG4gICAgI2hlcm8gaDEge1xyXG4gICAgICBmb250LXNpemU6IDI4cHg7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgfVxyXG4gICAgI2hlcm8gaDIge1xyXG4gICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgfVxyXG4gIH1cclxuICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcclxuICAgICNoZXJvIC5oZXJvLWltZyBpbWcge1xyXG4gICAgICB3aWR0aDogOTUlO1xyXG4gICAgfVxyXG4gIH1cclxuICBcclxuICBALXdlYmtpdC1rZXlmcmFtZXMgdXAtZG93biB7XHJcbiAgICAwJSB7XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcclxuICAgIH1cclxuICAgIDEwMCUge1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO1xyXG4gICAgfVxyXG4gIH1cclxuICBcclxuICBAa2V5ZnJhbWVzIHVwLWRvd24ge1xyXG4gICAgMCUge1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTBweCk7XHJcbiAgICB9XHJcbiAgICAxMDAlIHtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcclxuICAgIH1cclxuICB9XHJcbiAgLmhlcm8td2F2ZXMge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBtYXJnaW4tdG9wOiA2MHB4O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDYwcHg7XHJcbiAgICB6LWluZGV4OiA1O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIH1cclxuICBcclxuICAud2F2ZTEgdXNlIHtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uOiBtb3ZlLWZvcmV2ZXIxIDEwcyBsaW5lYXIgaW5maW5pdGU7XHJcbiAgICBhbmltYXRpb246IG1vdmUtZm9yZXZlcjEgMTBzIGxpbmVhciBpbmZpbml0ZTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAtMnM7XHJcbiAgICBhbmltYXRpb24tZGVsYXk6IC0ycztcclxuICB9XHJcbiAgXHJcbiAgLndhdmUyIHVzZSB7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbjogbW92ZS1mb3JldmVyMiA4cyBsaW5lYXIgaW5maW5pdGU7XHJcbiAgICBhbmltYXRpb246IG1vdmUtZm9yZXZlcjIgOHMgbGluZWFyIGluZmluaXRlO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC0ycztcclxuICAgIGFuaW1hdGlvbi1kZWxheTogLTJzO1xyXG4gIH1cclxuICBcclxuICAud2F2ZTMgdXNlIHtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uOiBtb3ZlLWZvcmV2ZXIzIDZzIGxpbmVhciBpbmZpbml0ZTtcclxuICAgIGFuaW1hdGlvbjogbW92ZS1mb3JldmVyMyA2cyBsaW5lYXIgaW5maW5pdGU7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLTJzO1xyXG4gICAgYW5pbWF0aW9uLWRlbGF5OiAtMnM7XHJcbiAgfVxyXG4gIFxyXG4gIEAtd2Via2l0LWtleWZyYW1lcyBtb3ZlLWZvcmV2ZXIxIHtcclxuICAgIDAlIHtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoODVweCwgMCUpO1xyXG4gICAgfVxyXG4gICAgMTAwJSB7XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC05MHB4LCAwJSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG4gIEBrZXlmcmFtZXMgbW92ZS1mb3JldmVyMSB7XHJcbiAgICAwJSB7XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDg1cHgsIDAlKTtcclxuICAgIH1cclxuICAgIDEwMCUge1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtOTBweCwgMCUpO1xyXG4gICAgfVxyXG4gIH1cclxuICBALXdlYmtpdC1rZXlmcmFtZXMgbW92ZS1mb3JldmVyMiB7XHJcbiAgICAwJSB7XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC05MHB4LCAwJSk7XHJcbiAgICB9XHJcbiAgICAxMDAlIHtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoODVweCwgMCUpO1xyXG4gICAgfVxyXG4gIH1cclxuICBAa2V5ZnJhbWVzIG1vdmUtZm9yZXZlcjIge1xyXG4gICAgMCUge1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtOTBweCwgMCUpO1xyXG4gICAgfVxyXG4gICAgMTAwJSB7XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDg1cHgsIDAlKTtcclxuICAgIH1cclxuICB9XHJcbiAgQC13ZWJraXQta2V5ZnJhbWVzIG1vdmUtZm9yZXZlcjMge1xyXG4gICAgMCUge1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtOTBweCwgMCUpO1xyXG4gICAgfVxyXG4gICAgMTAwJSB7XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDg1cHgsIDAlKTtcclxuICAgIH1cclxuICB9XHJcbiAgQGtleWZyYW1lcyBtb3ZlLWZvcmV2ZXIzIHtcclxuICAgIDAlIHtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTkwcHgsIDAlKTtcclxuICAgIH1cclxuICAgIDEwMCUge1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg4NXB4LCAwJSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAjIFNlY3Rpb25zIEdlbmVyYWxcclxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbiAgc2VjdGlvbiB7XHJcbiAgICBwYWRkaW5nOiA2MHB4IDA7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIH1cclxuICBcclxuICAuc2VjdGlvbi1iZyB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWZmO1xyXG4gIH1cclxuICBcclxuICAuc2VjdGlvbi10aXRsZSB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcclxuICB9XHJcbiAgLnNlY3Rpb24tdGl0bGUgaDIge1xyXG4gICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBsaW5lLWhlaWdodDogMXB4O1xyXG4gICAgbWFyZ2luOiAwIDAgNXB4IDA7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogMnB4O1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIGNvbG9yOiAjYWFhYWFhO1xyXG4gICAgZm9udC1mYW1pbHk6IFwiUG9wcGluc1wiLCBzYW5zLXNlcmlmO1xyXG4gIH1cclxuICAuc2VjdGlvbi10aXRsZSBoMjo6YWZ0ZXIge1xyXG4gICAgY29udGVudDogXCJcIjtcclxuICAgIHdpZHRoOiAxMjBweDtcclxuICAgIGhlaWdodDogMXB4O1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgYmFja2dyb3VuZDogIzFhY2M4ZDtcclxuICAgIG1hcmdpbjogNHB4IDEwcHg7XHJcbiAgfVxyXG4gIC5zZWN0aW9uLXRpdGxlIHAge1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgZm9udC1zaXplOiAzNnB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBmb250LWZhbWlseTogXCJQb3BwaW5zXCIsIHNhbnMtc2VyaWY7XHJcbiAgICBjb2xvcjogIzAxMDQ4MztcclxuICB9XHJcbiAgXHJcbiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICMgQnJlYWRjcnVtYnNcclxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbiAgLmJyZWFkY3J1bWJzIHtcclxuICAgIHBhZGRpbmc6IDIwcHggMDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmYWZhZmY7XHJcbiAgICBtaW4taGVpZ2h0OiA0MHB4O1xyXG4gICAgbWFyZ2luLXRvcDogODBweDtcclxuICB9XHJcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MnB4KSB7XHJcbiAgICAuYnJlYWRjcnVtYnMge1xyXG4gICAgICBtYXJnaW4tdG9wOiA2NHB4O1xyXG4gICAgfVxyXG4gIH1cclxuICAuYnJlYWRjcnVtYnMgaDIge1xyXG4gICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgIG1hcmdpbjogMDtcclxuICB9XHJcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MnB4KSB7XHJcbiAgICAuYnJlYWRjcnVtYnMgaDIge1xyXG4gICAgICBtYXJnaW46IDAgMCAxMHB4IDA7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5icmVhZGNydW1icyBvbCB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgfVxyXG4gIC5icmVhZGNydW1icyBvbCBsaSArIGxpIHtcclxuICAgIHBhZGRpbmctbGVmdDogMTBweDtcclxuICB9XHJcbiAgLmJyZWFkY3J1bWJzIG9sIGxpICsgbGk6OmJlZm9yZSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xyXG4gICAgY29sb3I6ICM2Yzc1N2Q7XHJcbiAgICBjb250ZW50OiBcIi9cIjtcclxuICB9XHJcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbiAgICAuYnJlYWRjcnVtYnMgLmQtZmxleCB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgICAuYnJlYWRjcnVtYnMgb2wge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxuICAgIC5icmVhZGNydW1icyBvbCBsaSB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIH1cclxuICB9XHJcbiAgXHJcbiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICMgQWJvdXRcclxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbiAgLmFib3V0IHtcclxuICAgIHBhZGRpbmc6IDQwcHggMCAwIDA7XHJcbiAgfVxyXG4gIC5hYm91dCAuaWNvbi1ib3hlcyBoMyB7XHJcbiAgICBmb250LXNpemU6IDI4cHg7XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgY29sb3I6ICMwMTA0ODM7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG4gIH1cclxuICAuYWJvdXQgLmljb24tYm94IHtcclxuICAgIG1hcmdpbi10b3A6IDQwcHg7XHJcbiAgfVxyXG4gIC5hYm91dCAuaWNvbi1ib3ggLmljb24ge1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgd2lkdGg6IDY0cHg7XHJcbiAgICBoZWlnaHQ6IDY0cHg7XHJcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjMDEwNDgzO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNTBweDtcclxuICAgIHRyYW5zaXRpb246IDAuNXM7XHJcbiAgfVxyXG4gIC5hYm91dCAuaWNvbi1ib3ggLmljb24gaSB7XHJcbiAgICBjb2xvcjogIzAxMDQ4MztcclxuICAgIGZvbnQtc2l6ZTogMzJweDtcclxuICB9XHJcbiAgLmFib3V0IC5pY29uLWJveDpob3ZlciAuaWNvbiB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjMDEwNDgzO1xyXG4gICAgYm9yZGVyLWNvbG9yOiAjMDEwNDgzO1xyXG4gIH1cclxuICAuYWJvdXQgLmljb24tYm94OmhvdmVyIC5pY29uIGkge1xyXG4gICAgY29sb3I6ICNmZmY7XHJcbiAgfVxyXG4gIC5hYm91dCAuaWNvbi1ib3ggLnRpdGxlIHtcclxuICAgIG1hcmdpbi1sZWZ0OiA4NXB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgfVxyXG4gIC5hYm91dCAuaWNvbi1ib3ggLnRpdGxlIGEge1xyXG4gICAgY29sb3I6ICMxMjE0ODg7XHJcbiAgICB0cmFuc2l0aW9uOiAwLjNzO1xyXG4gIH1cclxuICAuYWJvdXQgLmljb24tYm94IC50aXRsZSBhOmhvdmVyIHtcclxuICAgIGNvbG9yOiAjMDEwNDgzO1xyXG4gIH1cclxuICAuYWJvdXQgLmljb24tYm94IC5kZXNjcmlwdGlvbiB7XHJcbiAgICBtYXJnaW4tbGVmdDogODVweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xyXG4gICAgZm9udC1zaXplOiAxNHB4O1xyXG4gIH1cclxuICAuYWJvdXQgLnZpZGVvLWJveCB7XHJcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCJpbWcvYWJvdXQtb3RoZXIucG5nXCIpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xyXG4gICAgbWluLWhlaWdodDogMzAwcHg7XHJcbiAgfVxyXG4gIC5hYm91dCAucGxheS1idG4ge1xyXG4gICAgd2lkdGg6IDk0cHg7XHJcbiAgICBoZWlnaHQ6IDk0cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoIzNmNDNmZCA1MCUsIHJnYmEoNjMsIDY3LCAyNTMsIDAuNCkgNTIlKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgbGVmdDogY2FsYyg1MCUgLSA0N3B4KTtcclxuICAgIHRvcDogY2FsYyg1MCUgLSA0N3B4KTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgfVxyXG4gIC5hYm91dCAucGxheS1idG46OmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBsZWZ0OiA1MCU7XHJcbiAgICB0b3A6IDUwJTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNDAlKSB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgd2lkdGg6IDA7XHJcbiAgICBoZWlnaHQ6IDA7XHJcbiAgICBib3JkZXItdG9wOiAxMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMTBweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgIGJvcmRlci1sZWZ0OiAxNXB4IHNvbGlkICNmZmY7XHJcbiAgICB6LWluZGV4OiAxMDA7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgNDAwbXMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XHJcbiAgfVxyXG4gIC5hYm91dCAucGxheS1idG46OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgd2lkdGg6IDEyMHB4O1xyXG4gICAgaGVpZ2h0OiAxMjBweDtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwcztcclxuICAgIGFuaW1hdGlvbi1kZWxheTogMHM7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbjogcHVsc2F0ZS1idG4gMnM7XHJcbiAgICBhbmltYXRpb246IHB1bHNhdGUtYnRuIDJzO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tZGlyZWN0aW9uOiBmb3J3YXJkcztcclxuICAgIGFuaW1hdGlvbi1kaXJlY3Rpb246IGZvcndhcmRzO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcclxuICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBzdGVwcztcclxuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IHN0ZXBzO1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgIGJvcmRlcjogNXB4IHNvbGlkIHJnYmEoNjMsIDY3LCAyNTMsIDAuNyk7XHJcbiAgICB0b3A6IC0xNSU7XHJcbiAgICBsZWZ0OiAtMTUlO1xyXG4gICAgYmFja2dyb3VuZDogcmdiYSgxOTgsIDE2LCAwLCAwKTtcclxuICB9XHJcbiAgLmFib3V0IC5wbGF5LWJ0bjpob3Zlcjo6YWZ0ZXIge1xyXG4gICAgYm9yZGVyLWxlZnQ6IDE1cHggc29saWQgIzNmNDNmZDtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUoMjApO1xyXG4gIH1cclxuICAuYWJvdXQgLnBsYXktYnRuOmhvdmVyOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcIjtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGxlZnQ6IDUwJTtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC00MCUpIHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICB3aWR0aDogMDtcclxuICAgIGhlaWdodDogMDtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIGJvcmRlci10b3A6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICBib3JkZXItYm90dG9tOiAxMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgYm9yZGVyLWxlZnQ6IDE1cHggc29saWQgI2ZmZjtcclxuICAgIHotaW5kZXg6IDIwMDtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uOiBub25lO1xyXG4gICAgYW5pbWF0aW9uOiBub25lO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMDtcclxuICB9XHJcbiAgXHJcbiAgQC13ZWJraXQta2V5ZnJhbWVzIHB1bHNhdGUtYnRuIHtcclxuICAgIDAlIHtcclxuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjYsIDAuNik7XHJcbiAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbiAgICAxMDAlIHtcclxuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLCAxKTtcclxuICAgICAgb3BhY2l0eTogMDtcclxuICAgIH1cclxuICB9XHJcbiAgXHJcbiAgQGtleWZyYW1lcyBwdWxzYXRlLWJ0biB7XHJcbiAgICAwJSB7XHJcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC42LCAwLjYpO1xyXG4gICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG4gICAgMTAwJSB7XHJcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSwgMSk7XHJcbiAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAjIEZlYXR1cmVzXHJcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG4gIC5mZWF0dXJlcyAuaWNvbi1ib3gge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgYmFja2dyb3VuZDogI2Y1ZjVmZjtcclxuICAgIHRyYW5zaXRpb246IGVhc2UtaW4tb3V0IDAuM3M7XHJcbiAgfVxyXG4gIC5mZWF0dXJlcyAuaWNvbi1ib3ggaSB7XHJcbiAgICBmb250LXNpemU6IDMycHg7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgfVxyXG4gIC5mZWF0dXJlcyAuaWNvbi1ib3ggaDMge1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBsaW5lLWhlaWdodDogMTtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICB9XHJcbiAgLmZlYXR1cmVzIC5pY29uLWJveCBoMyBhIHtcclxuICAgIGNvbG9yOiAjMDEwNDgzO1xyXG4gICAgdHJhbnNpdGlvbjogZWFzZS1pbi1vdXQgMC4zcztcclxuICB9XHJcbiAgLmZlYXR1cmVzIC5pY29uLWJveCBoMyBhOmhvdmVyIHtcclxuICAgIGNvbG9yOiAjMDEwMzZmO1xyXG4gIH1cclxuICAuZmVhdHVyZXMgLmljb24tYm94OmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQ6ICNlYmViZmY7XHJcbiAgfVxyXG4gIFxyXG4gIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAjIENvdW50c1xyXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuICAuY291bnRzIHtcclxuICAgIGJhY2tncm91bmQ6ICNmNWY1ZmY7XHJcbiAgICBwYWRkaW5nOiA3MHB4IDAgNjBweDtcclxuICB9XHJcbiAgLmNvdW50cyAuY291bnQtYm94IHtcclxuICAgIHBhZGRpbmc6IDMwcHggMzBweCAyNXB4IDMwcHg7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGJhY2tncm91bmQ6ICNmZmY7XHJcbiAgfVxyXG4gIC5jb3VudHMgLmNvdW50LWJveCBpIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogLTI1cHg7XHJcbiAgICBsZWZ0OiA1MCU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XHJcbiAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICBiYWNrZ3JvdW5kOiAjMDEwNDgzOztcclxuICAgIHBhZGRpbmc6IDEycHg7XHJcbiAgICBjb2xvcjogI2ZmZjtcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGxpbmUtaGVpZ2h0OiAwO1xyXG4gICAgd2lkdGg6IDQ4cHg7XHJcbiAgICBoZWlnaHQ6IDQ4cHg7XHJcbiAgfVxyXG4gIC5jb3VudHMgLmNvdW50LWJveCBzcGFuIHtcclxuICAgIGZvbnQtc2l6ZTogMzZweDtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgIGNvbG9yOiAjMDEwNDgzO1xyXG4gIH1cclxuICAuY291bnRzIC5jb3VudC1ib3ggcCB7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBzYW5zLXNlcmlmO1xyXG4gICAgZm9udC1zaXplOiAxNHB4O1xyXG4gIH1cclxuICBcclxuICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgIyBEZXRhaWxzXHJcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG4gIC5kZXRhaWxzIC5jb250ZW50ICsgLmNvbnRlbnQge1xyXG4gICAgbWFyZ2luLXRvcDogMTAwcHg7XHJcbiAgfVxyXG4gIC5kZXRhaWxzIC5jb250ZW50IGgzIHtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICBmb250LXNpemU6IDI2cHg7XHJcbiAgICBjb2xvcjogIzAxMDQ4MztcclxuICB9XHJcbiAgLmRldGFpbHMgLmNvbnRlbnQgdWwge1xyXG4gICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgfVxyXG4gIC5kZXRhaWxzIC5jb250ZW50IHVsIGxpIHtcclxuICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xyXG4gIH1cclxuICAuZGV0YWlscyAuY29udGVudCB1bCBpIHtcclxuICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDRweDtcclxuICAgIGNvbG9yOiAjMWFjYzhkO1xyXG4gIH1cclxuICAuZGV0YWlscyAuY29udGVudCBwOmxhc3QtY2hpbGQge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICB9XHJcbiAgXHJcbiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICMgR2FsbGVyeVxyXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuICAuZ2FsbGVyeSAuZ2FsbGVyeS1pdGVtIHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBib3JkZXItcmlnaHQ6IDNweCBzb2xpZCAjZmZmO1xyXG4gICAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICNmZmY7XHJcbiAgfVxyXG4gIC5nYWxsZXJ5IC5nYWxsZXJ5LWl0ZW0gaW1nIHtcclxuICAgIHRyYW5zaXRpb246IGFsbCBlYXNlLWluLW91dCAwLjRzO1xyXG4gIH1cclxuICAuZ2FsbGVyeSAuZ2FsbGVyeS1pdGVtOmhvdmVyIGltZyB7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XHJcbiAgfVxyXG4gIFxyXG4gIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAjIFRlc3RpbW9uaWFsc1xyXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuICAudGVzdGltb25pYWxzIHtcclxuICAgIHBhZGRpbmc6IDgwcHggMDtcclxuICAgIGJhY2tncm91bmQ6IHVybChcImltZy9jdGEtYmcuanBnXCIpIG5vLXJlcGVhdDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIH1cclxuICAudGVzdGltb25pYWxzOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcIjtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIHRvcDogMDtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoMSwgMywgMTExLCAwLjgpO1xyXG4gIH1cclxuICAudGVzdGltb25pYWxzIC5zZWN0aW9uLWhlYWRlciB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gIH1cclxuICAudGVzdGltb25pYWxzIC50ZXN0aW1vbmlhbHMtY2Fyb3VzZWwsIC50ZXN0aW1vbmlhbHMgLnRlc3RpbW9uaWFscy1zbGlkZXIge1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICB9XHJcbiAgLnRlc3RpbW9uaWFscyAudGVzdGltb25pYWwtaXRlbSB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBjb2xvcjogI2ZmZjtcclxuICB9XHJcbiAgLnRlc3RpbW9uaWFscyAudGVzdGltb25pYWwtaXRlbSAudGVzdGltb25pYWwtaW1nIHtcclxuICAgIHdpZHRoOiAxMDBweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgIGJvcmRlcjogNnB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSk7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICB9XHJcbiAgLnRlc3RpbW9uaWFscyAudGVzdGltb25pYWwtaXRlbSBoMyB7XHJcbiAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIG1hcmdpbjogMTBweCAwIDVweCAwO1xyXG4gICAgY29sb3I6ICNmZmY7XHJcbiAgfVxyXG4gIC50ZXN0aW1vbmlhbHMgLnRlc3RpbW9uaWFsLWl0ZW0gaDQge1xyXG4gICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgY29sb3I6ICNkZGQ7XHJcbiAgICBtYXJnaW46IDAgMCAxNXB4IDA7XHJcbiAgfVxyXG4gIC50ZXN0aW1vbmlhbHMgLnRlc3RpbW9uaWFsLWl0ZW0gLnF1b3RlLWljb24tbGVmdCwgLnRlc3RpbW9uaWFscyAudGVzdGltb25pYWwtaXRlbSAucXVvdGUtaWNvbi1yaWdodCB7XHJcbiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjQpO1xyXG4gICAgZm9udC1zaXplOiAyNnB4O1xyXG4gIH1cclxuICAudGVzdGltb25pYWxzIC50ZXN0aW1vbmlhbC1pdGVtIC5xdW90ZS1pY29uLWxlZnQge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgbGVmdDogLTVweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB9XHJcbiAgLnRlc3RpbW9uaWFscyAudGVzdGltb25pYWwtaXRlbSAucXVvdGUtaWNvbi1yaWdodCB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICByaWdodDogLTVweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHRvcDogMTBweDtcclxuICB9XHJcbiAgLnRlc3RpbW9uaWFscyAudGVzdGltb25pYWwtaXRlbSBwIHtcclxuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcclxuICAgIG1hcmdpbjogMCBhdXRvIDE1cHggYXV0bztcclxuICAgIGNvbG9yOiAjZWVlO1xyXG4gIH1cclxuICAudGVzdGltb25pYWxzIC5zd2lwZXItcGFnaW5hdGlvbiB7XHJcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIH1cclxuICAudGVzdGltb25pYWxzIC5zd2lwZXItcGFnaW5hdGlvbiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcclxuICAgIHdpZHRoOiAxMnB4O1xyXG4gICAgaGVpZ2h0OiAxMnB4O1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40KTtcclxuICB9XHJcbiAgLnRlc3RpbW9uaWFscyAuc3dpcGVyLXBhZ2luYXRpb24gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzFhY2M4ZDtcclxuICB9XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xyXG4gICAgLnRlc3RpbW9uaWFscyB7XHJcbiAgICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xyXG4gICAgLnRlc3RpbW9uaWFscyAudGVzdGltb25pYWwtaXRlbSBwIHtcclxuICAgICAgd2lkdGg6IDgwJTtcclxuICAgIH1cclxuICB9XHJcbiAgXHJcbiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICMgVGVhbVxyXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuICAudGVhbSB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gIH1cclxuICAudGVhbSAubWVtYmVyIHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIG1hcmdpbi1ib3R0b206IDgwcHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgfVxyXG4gIC50ZWFtIC5tZW1iZXIgLnBpYyB7XHJcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIH1cclxuICAudGVhbSAubWVtYmVyIGltZyB7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgZWFzZS1pbi1vdXQgMC40cztcclxuICB9XHJcbiAgLnRlYW0gLm1lbWJlcjpob3ZlciBpbWcge1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xyXG4gIH1cclxuICAudGVhbSAubWVtYmVyIC5tZW1iZXItaW5mbyB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBib3R0b206IC04MHB4O1xyXG4gICAgbGVmdDogMHB4O1xyXG4gICAgcmlnaHQ6IDBweDtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcclxuICAgIHBhZGRpbmc6IDE1cHggMDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDAgMCA0cHggNHB4O1xyXG4gICAgYm94LXNoYWRvdzogMHB4IDJweCAxNXB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcclxuICB9XHJcbiAgLnRlYW0gLm1lbWJlciBoNCB7XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIGNvbG9yOiAjMDEwMzZmO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XHJcbiAgfVxyXG4gIC50ZWFtIC5tZW1iZXIgaDQ6OmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHdpZHRoOiA1MHB4O1xyXG4gICAgaGVpZ2h0OiAxcHg7XHJcbiAgICBiYWNrZ3JvdW5kOiAjMGQxMmZjO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgbGVmdDogY2FsYyg1MCUgLSAyNXB4KTtcclxuICB9XHJcbiAgLnRlYW0gLm1lbWJlciBzcGFuIHtcclxuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgZm9udC1zaXplOiAxM3B4O1xyXG4gICAgY29sb3I6ICMwMTAzNmY7XHJcbiAgfVxyXG4gIC50ZWFtIC5tZW1iZXIgLnNvY2lhbCB7XHJcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gIH1cclxuICAudGVhbSAubWVtYmVyIC5zb2NpYWwgYSB7XHJcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjNzO1xyXG4gICAgY29sb3I6ICMwMTAzNmY7XHJcbiAgfVxyXG4gIC50ZWFtIC5tZW1iZXIgLnNvY2lhbCBhOmhvdmVyIHtcclxuICAgIGNvbG9yOiAjMWFjYzhkO1xyXG4gIH1cclxuICAudGVhbSAubWVtYmVyIC5zb2NpYWwgaSB7XHJcbiAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICBtYXJnaW46IDAgMnB4O1xyXG4gIH1cclxuICBcclxuICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgIyBQcmljaW5nXHJcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG4gIC5wcmljaW5nIC5ib3gge1xyXG4gICAgcGFkZGluZzogMjBweDtcclxuICAgIGJhY2tncm91bmQ6ICNmZmY7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBib3gtc2hhZG93OiAwcHggMHB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICB9XHJcbiAgLnByaWNpbmcgaDMge1xyXG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgIG1hcmdpbjogLTIwcHggLTIwcHggMjBweCAtMjBweDtcclxuICAgIHBhZGRpbmc6IDIwcHggMTVweDtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICBjb2xvcjogIzc3Nzc3NztcclxuICAgIGJhY2tncm91bmQ6ICNmOGY4Zjg7XHJcbiAgfVxyXG4gIC5wcmljaW5nIGg0IHtcclxuICAgIGZvbnQtc2l6ZTogMzZweDtcclxuICAgIGNvbG9yOiAjMWFjYzhkO1xyXG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgIGZvbnQtZmFtaWx5OiBcIlBvcHBpbnNcIiwgc2Fucy1zZXJpZjtcclxuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgfVxyXG4gIC5wcmljaW5nIGg0IHN1cCB7XHJcbiAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICB0b3A6IC0xNXB4O1xyXG4gICAgbGVmdDogLTNweDtcclxuICB9XHJcbiAgLnByaWNpbmcgaDQgc3BhbiB7XHJcbiAgICBjb2xvcjogI2JhYmFiYTtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XHJcbiAgfVxyXG4gIC5wcmljaW5nIHVsIHtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgY29sb3I6ICM0NDQ0NDQ7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBsaW5lLWhlaWdodDogMjBweDtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICB9XHJcbiAgLnByaWNpbmcgdWwgbGkge1xyXG4gICAgcGFkZGluZy1ib3R0b206IDE2cHg7XHJcbiAgfVxyXG4gIC5wcmljaW5nIHVsIGkge1xyXG4gICAgY29sb3I6ICMxYWNjOGQ7XHJcbiAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiA0cHg7XHJcbiAgfVxyXG4gIC5wcmljaW5nIHVsIC5uYSB7XHJcbiAgICBjb2xvcjogI2NjYztcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xyXG4gIH1cclxuICAucHJpY2luZyAuYnRuLXdyYXAge1xyXG4gICAgbWFyZ2luOiAyMHB4IC0yMHB4IC0yMHB4IC0yMHB4O1xyXG4gICAgcGFkZGluZzogMjBweCAxNXB4O1xyXG4gICAgYmFja2dyb3VuZDogI2Y4ZjhmODtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB9XHJcbiAgLnByaWNpbmcgLmJ0bi1idXkge1xyXG4gICAgYmFja2dyb3VuZDogIzFhY2M4ZDtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHBhZGRpbmc6IDhweCAzNXB4IDEwcHggMzVweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XHJcbiAgICBjb2xvcjogI2ZmZjtcclxuICAgIHRyYW5zaXRpb246IG5vbmU7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBzYW5zLXNlcmlmO1xyXG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgIHRyYW5zaXRpb246IDAuM3M7XHJcbiAgfVxyXG4gIC5wcmljaW5nIC5idG4tYnV5OmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQ6ICMxNDlmNmU7XHJcbiAgfVxyXG4gIC5wcmljaW5nIC5mZWF0dXJlZCBoMyB7XHJcbiAgICBjb2xvcjogI2ZmZjtcclxuICAgIGJhY2tncm91bmQ6ICMxYWNjOGQ7XHJcbiAgfVxyXG4gIC5wcmljaW5nIC5hZHZhbmNlZCB7XHJcbiAgICB3aWR0aDogMjAwcHg7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDE4cHg7XHJcbiAgICByaWdodDogLTY4cHg7XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XHJcbiAgICB6LWluZGV4OiAxO1xyXG4gICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgcGFkZGluZzogMXB4IDAgM3B4IDA7XHJcbiAgICBiYWNrZ3JvdW5kOiAjMWFjYzhkO1xyXG4gICAgY29sb3I6ICNmZmY7XHJcbiAgfVxyXG4gIFxyXG4gIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAjIEYuQS5RXHJcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG4gIC5mYXEgLmZhcS1saXN0IHtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgfVxyXG4gIC5mYXEgLmZhcS1saXN0IHVsIHtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gIH1cclxuICAuZmFxIC5mYXEtbGlzdCBsaSArIGxpIHtcclxuICAgIG1hcmdpbi10b3A6IDE1cHg7XHJcbiAgfVxyXG4gIC5mYXEgLmZhcS1saXN0IGxpIHtcclxuICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIH1cclxuICAuZmFxIC5mYXEtbGlzdCBhIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgZm9udC1mYW1pbHk6IFwiUG9wcGluc1wiLCBzYW5zLXNlcmlmO1xyXG4gICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDI0cHg7XHJcbiAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgcGFkZGluZzogMCAzMHB4O1xyXG4gICAgb3V0bGluZTogbm9uZTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICB9XHJcbiAgLmZhcSAuZmFxLWxpc3QgLmljb24taGVscCB7XHJcbiAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICByaWdodDogMDtcclxuICAgIGxlZnQ6IDIwcHg7XHJcbiAgICBjb2xvcjogIzI2Mjg4NTs7XHJcbiAgfVxyXG4gIC5mYXEgLmZhcS1saXN0IC5pY29uLXNob3csIC5mYXEgLmZhcS1saXN0IC5pY29uLWNsb3NlIHtcclxuICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgdG9wOiAwO1xyXG4gIH1cclxuICAuZmFxIC5mYXEtbGlzdCBwIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICBwYWRkaW5nOiAxMHB4IDAgMCAwO1xyXG4gIH1cclxuICAuZmFxIC5mYXEtbGlzdCAuaWNvbi1zaG93IHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG4gIC5mYXEgLmZhcS1saXN0IGEuY29sbGFwc2VkIHtcclxuICAgIGNvbG9yOiAjMDEwNDgzO1xyXG4gIH1cclxuICAuZmFxIC5mYXEtbGlzdCBhLmNvbGxhcHNlZDpob3ZlciB7XHJcbiAgICBjb2xvcjogI2U0NTU1NTtcclxuICB9XHJcbiAgLmZhcSAuZmFxLWxpc3QgYS5jb2xsYXBzZWQgLmljb24tc2hvdyB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgfVxyXG4gIC5mYXEgLmZhcS1saXN0IGEuY29sbGFwc2VkIC5pY29uLWNsb3NlIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMjAwcHgpIHtcclxuICAgIC5mYXEgLmZhcS1saXN0IHtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgIH1cclxuICB9XHJcbiAgXHJcbiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICMgQ29udGFjdFxyXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuICAuY29udGFjdCAuaW5mbyB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGJhY2tncm91bmQ6ICNmZmY7XHJcbiAgfVxyXG4gIC5jb250YWN0IC5pbmZvIGkge1xyXG4gICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgY29sb3I6ICMzZjQzZmQ7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIHdpZHRoOiA0NHB4O1xyXG4gICAgaGVpZ2h0OiA0NHB4O1xyXG4gICAgYmFja2dyb3VuZDogI2YwZjBmZjtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XHJcbiAgfVxyXG4gIC5jb250YWN0IC5pbmZvIGg0IHtcclxuICAgIHBhZGRpbmc6IDAgMCAwIDYwcHg7XHJcbiAgICBmb250LXNpemU6IDIycHg7XHJcbiAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG4gICAgY29sb3I6ICMwMTA0ODM7XHJcbiAgfVxyXG4gIC5jb250YWN0IC5pbmZvIHAge1xyXG4gICAgcGFkZGluZzogMCAwIDAgNjBweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICBjb2xvcjogIzAyMDVhMTtcclxuICB9XHJcbiAgLmNvbnRhY3QgLmluZm8gLmVtYWlsLCAuY29udGFjdCAuaW5mbyAucGhvbmUge1xyXG4gICAgbWFyZ2luLXRvcDogNDBweDtcclxuICB9XHJcbiAgLmNvbnRhY3QgLmluZm8gLmVtYWlsOmhvdmVyIGksIC5jb250YWN0IC5pbmZvIC5hZGRyZXNzOmhvdmVyIGksIC5jb250YWN0IC5pbmZvIC5waG9uZTpob3ZlciBpIHtcclxuICAgIGJhY2tncm91bmQ6ICMxYWNjOGQ7XHJcbiAgICBjb2xvcjogI2ZmZjtcclxuICB9XHJcbiAgLmNvbnRhY3QgLnBocC1lbWFpbC1mb3JtIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgYmFja2dyb3VuZDogI2ZmZjtcclxuICB9XHJcbiAgLmNvbnRhY3QgLnBocC1lbWFpbC1mb3JtIC5mb3JtLWdyb3VwIHtcclxuICAgIHBhZGRpbmctYm90dG9tOiA4cHg7XHJcbiAgfVxyXG4gIC5jb250YWN0IC5waHAtZW1haWwtZm9ybSAuZXJyb3ItbWVzc2FnZSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgY29sb3I6ICNmZmY7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZWQzYzBkO1xyXG4gICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgIHBhZGRpbmc6IDE1cHg7XHJcbiAgICBmb250LXdlaWdodDogNjAwO1xyXG4gIH1cclxuICAuY29udGFjdCAucGhwLWVtYWlsLWZvcm0gLmVycm9yLW1lc3NhZ2UgYnIgKyBiciB7XHJcbiAgICBtYXJnaW4tdG9wOiAyNXB4O1xyXG4gIH1cclxuICAuY29udGFjdCAucGhwLWVtYWlsLWZvcm0gLnNlbnQtbWVzc2FnZSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgY29sb3I6ICNmZmY7XHJcbiAgICBiYWNrZ3JvdW5kOiAjMThkMjZlO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgcGFkZGluZzogMTVweDtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgfVxyXG4gIC5jb250YWN0IC5waHAtZW1haWwtZm9ybSAubG9hZGluZyB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgYmFja2dyb3VuZDogI2ZmZjtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHBhZGRpbmc6IDE1cHg7XHJcbiAgfVxyXG4gIC5jb250YWN0IC5waHAtZW1haWwtZm9ybSAubG9hZGluZzpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcIjtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgIHdpZHRoOiAyNHB4O1xyXG4gICAgaGVpZ2h0OiAyNHB4O1xyXG4gICAgbWFyZ2luOiAwIDEwcHggLTZweCAwO1xyXG4gICAgYm9yZGVyOiAzcHggc29saWQgIzE4ZDI2ZTtcclxuICAgIGJvcmRlci10b3AtY29sb3I6ICNlZWU7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbjogYW5pbWF0ZS1sb2FkaW5nIDFzIGxpbmVhciBpbmZpbml0ZTtcclxuICAgIGFuaW1hdGlvbjogYW5pbWF0ZS1sb2FkaW5nIDFzIGxpbmVhciBpbmZpbml0ZTtcclxuICB9XHJcbiAgLmNvbnRhY3QgLnBocC1lbWFpbC1mb3JtIGlucHV0LCAuY29udGFjdCAucGhwLWVtYWlsLWZvcm0gdGV4dGFyZWEge1xyXG4gICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgfVxyXG4gIC5jb250YWN0IC5waHAtZW1haWwtZm9ybSBpbnB1dCB7XHJcbiAgICBoZWlnaHQ6IDQ0cHg7XHJcbiAgfVxyXG4gIC5jb250YWN0IC5waHAtZW1haWwtZm9ybSB0ZXh0YXJlYSB7XHJcbiAgICBwYWRkaW5nOiAxMHB4IDEycHg7XHJcbiAgfVxyXG4gIC5jb250YWN0IC5waHAtZW1haWwtZm9ybSBidXR0b25bdHlwZT1zdWJtaXRdIHtcclxuICAgIGJhY2tncm91bmQ6ICMyYTIwYTE7XHJcbiAgICBib3JkZXI6IDA7XHJcbiAgICBwYWRkaW5nOiAxMHB4IDMwcHg7XHJcbiAgICBjb2xvcjogI2ZmZjtcclxuICAgIHRyYW5zaXRpb246IDAuNHM7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xyXG4gIH1cclxuICAuY29udGFjdCAucGhwLWVtYWlsLWZvcm0gYnV0dG9uW3R5cGU9c3VibWl0XTpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjMDEwNDgzO1xyXG4gIH1cclxuICBALXdlYmtpdC1rZXlmcmFtZXMgYW5pbWF0ZS1sb2FkaW5nIHtcclxuICAgIDAlIHtcclxuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XHJcbiAgICB9XHJcbiAgICAxMDAlIHtcclxuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcclxuICAgIH1cclxuICB9XHJcbiAgQGtleWZyYW1lcyBhbmltYXRlLWxvYWRpbmcge1xyXG4gICAgMCUge1xyXG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcclxuICAgIH1cclxuICAgIDEwMCUge1xyXG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xyXG4gICAgfVxyXG4gIH1cclxuICBcclxuICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgIyBGb290ZXJcclxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbiAgI2Zvb3RlciB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjMDEwMzUxO1xyXG4gICAgcGFkZGluZzogMCAwIDMwcHggMDtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgZm9udC1zaXplOiAxNHB4O1xyXG4gIH1cclxuICAjZm9vdGVyIC5mb290ZXItdG9wIHtcclxuICAgIHBhZGRpbmc6IDYwcHggMCAzMHB4IDA7XHJcbiAgfVxyXG4gICNmb290ZXIgLmZvb3Rlci10b3AgLmZvb3Rlci1pbmZvIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiAjMDEwMjQ2O1xyXG4gICAgY29sb3I6ICNmZmY7XHJcbiAgICBib3JkZXItdG9wOiA0cHggc29saWQgIzFhY2M4ZDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHBhZGRpbmc6IDMwcHggMjBweDtcclxuICB9XHJcbiAgI2Zvb3RlciAuZm9vdGVyLXRvcCAuZm9vdGVyLWluZm8gaDMge1xyXG4gICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgbWFyZ2luOiAwIDAgMjBweCAwO1xyXG4gICAgcGFkZGluZzogMnB4IDAgMnB4IDA7XHJcbiAgICBsaW5lLWhlaWdodDogMTtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgfVxyXG4gICNmb290ZXIgLmZvb3Rlci10b3AgLmZvb3Rlci1pbmZvIHAge1xyXG4gICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDI0cHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBzYW5zLXNlcmlmO1xyXG4gIH1cclxuICAjZm9vdGVyIC5mb290ZXItdG9wIC5zb2NpYWwtbGlua3MgYSB7XHJcbiAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBjb2xvcjogI2ZmZjtcclxuICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgcGFkZGluZzogOHB4IDA7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDRweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHdpZHRoOiAzNnB4O1xyXG4gICAgaGVpZ2h0OiAzNnB4O1xyXG4gICAgdHJhbnNpdGlvbjogMC4zcztcclxuICB9XHJcbiAgI2Zvb3RlciAuZm9vdGVyLXRvcCAuc29jaWFsLWxpbmtzIGE6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZDogIzFhY2M4ZDtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gIH1cclxuICAjZm9vdGVyIC5mb290ZXItdG9wIGg0IHtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICBjb2xvcjogI2ZmZjtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHBhZGRpbmctYm90dG9tOiAxMnB4O1xyXG4gIH1cclxuICAjZm9vdGVyIC5mb290ZXItdG9wIC5mb290ZXItbGlua3Mge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICB9XHJcbiAgI2Zvb3RlciAuZm9vdGVyLXRvcCAuZm9vdGVyLWxpbmtzIHVsIHtcclxuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gIH1cclxuICAjZm9vdGVyIC5mb290ZXItdG9wIC5mb290ZXItbGlua3MgdWwgaSB7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAycHg7XHJcbiAgICBjb2xvcjogIzYxZWJiYTtcclxuICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gIH1cclxuICAjZm9vdGVyIC5mb290ZXItdG9wIC5mb290ZXItbGlua3MgdWwgbGkge1xyXG4gICAgcGFkZGluZzogMTBweCAwO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgfVxyXG4gICNmb290ZXIgLmZvb3Rlci10b3AgLmZvb3Rlci1saW5rcyB1bCBsaTpmaXJzdC1jaGlsZCB7XHJcbiAgICBwYWRkaW5nLXRvcDogMDtcclxuICB9XHJcbiAgI2Zvb3RlciAuZm9vdGVyLXRvcCAuZm9vdGVyLWxpbmtzIHVsIGEge1xyXG4gICAgY29sb3I6ICNmZmY7XHJcbiAgICB0cmFuc2l0aW9uOiAwLjNzO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgfVxyXG4gICNmb290ZXIgLmZvb3Rlci10b3AgLmZvb3Rlci1saW5rcyB1bCBhOmhvdmVyIHtcclxuICAgIGNvbG9yOiAjNGJlOGIwO1xyXG4gIH1cclxuICAjZm9vdGVyIC5mb290ZXItdG9wIC5mb290ZXItbmV3c2xldHRlciBmb3JtIHtcclxuICAgIG1hcmdpbi10b3A6IDMwcHg7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gICAgcGFkZGluZzogNnB4IDEwcHggNnB4IDE1cHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xyXG4gIH1cclxuICAjZm9vdGVyIC5mb290ZXItdG9wIC5mb290ZXItbmV3c2xldHRlciBmb3JtIGlucHV0W3R5cGU9ZW1haWxdIHtcclxuICAgIGJvcmRlcjogMDtcclxuICAgIHBhZGRpbmc6IDRweDtcclxuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxMTBweCk7XHJcbiAgfVxyXG4gICNmb290ZXIgLmZvb3Rlci10b3AgLmZvb3Rlci1uZXdzbGV0dGVyIGZvcm0gaW5wdXRbdHlwZT1zdWJtaXRdIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIHJpZ2h0OiAtMnB4O1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIHBhZGRpbmc6IDAgMjBweDtcclxuICAgIGJhY2tncm91bmQ6ICMxYWNjOGQ7XHJcbiAgICBjb2xvcjogI2ZmZjtcclxuICAgIHRyYW5zaXRpb246IDAuM3M7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xyXG4gIH1cclxuICAjZm9vdGVyIC5mb290ZXItdG9wIC5mb290ZXItbmV3c2xldHRlciBmb3JtIGlucHV0W3R5cGU9c3VibWl0XTpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjMTQ5ZjZlO1xyXG4gIH1cclxuICAjZm9vdGVyIC5jb3B5cmlnaHQge1xyXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICMwMTA0Nzk7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBwYWRkaW5nLXRvcDogMzBweDtcclxuICB9XHJcbiAgI2Zvb3RlciAuY3JlZGl0cyB7XHJcbiAgICBwYWRkaW5nLXRvcDogMTBweDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGZvbnQtc2l6ZTogMTNweDtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gIH1cclxuICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcclxuICAgICNmb290ZXIgLmZvb3Rlci10b3AgLmZvb3Rlci1pbmZvIHtcclxuICAgICAgbWFyZ2luOiAtMjBweCAwIDMwcHggMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5yZXNwb25zaXZlIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWF4LXdpZHRoOiAxMTBweDtcclxuICAgIGhlaWdodDogMTAwcHg7XHJcbiAgfSJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==*/