/*------ Typography Style Start ------*/
body {
  color: #151515;
  line-height: 1.7;
  font-size: 16px;
  font-weight: 400;
  font-family: "Sarabun", sans-serif;
}

a {
  -webkit-transition: 0.4s;
  -o-transition: 0.4s;
  transition: 0.4s;
}

a:hover, a:focus {
  outline: none;
  text-decoration: none;
}

p {
  margin-bottom: 8px;
}

p:last-child {
  margin-bottom: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Sarabun", sans-serif;
  color: #212121;
  font-weight: 600;
  line-height: 1.2;
  margin: 0;
}

.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
  margin: 0;
  line-height: 1.5;
}

h1,
.h1 {
  font-size: 30px;
}

@media only screen and (max-width: 767.98px) {
  h1,
  .h1 {
    font-size: 28px;
  }
}

@media only screen and (max-width: 479.98px) {
  h1,
  .h1 {
    font-size: 26px;
  }
}

h2,
.h2 {
  font-size: 30px;
}

@media only screen and (max-width: 767.98px) {
  h2,
  .h2 {
    font-size: 26px;
  }
}

@media only screen and (max-width: 479.98px) {
  h2,
  .h2 {
    font-size: 24px;
  }
}

h3,
.h3 {
  font-size: 15px;
}

@media only screen and (max-width: 767.98px) {
  h3,
  .h3 {
    font-size: 20px;
  }
}

h4,
.h4 {
  font-size: 20px;
}

h5,
.h5 {
  font-size: 18px;
}

h6,
.h6 {
  font-size: 16px;
}

ul {
  margin: 0;
  padding: 0;
}

ul li {
  list-style: none;
}

strong,
b {
  font-weight: 700;
}

address {
  margin-bottom: 0;
}

figure {
  margin: 0;
}

img {
  max-width: 100%;
  -webkit-transition: 0.4s;
  -o-transition: 0.4s;
  transition: 0.4s;
}

.bg-img {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.btn,
button {
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  -webkit-box-shadow: none;
          box-shadow: none;
  -webkit-transition: 0.4s;
  -o-transition: 0.4s;
  transition: 0.4s;
  background-color: transparent;
}

.btn:active, .btn:focus,
button:active,
button:focus {
  outline: none;
  -webkit-box-shadow: none;
          box-shadow: none;
}

input,
textarea {
  resize: none;
}

input:focus,
textarea:focus {
  outline: none;
}

.form-control:focus {
  border-color: #f1592a;
  -webkit-box-shadow: none;
          box-shadow: none;
}

/*--------- slick slider dot style start -------*/
.slick-dot-style ul.slick-dots {
  bottom: 15px;
  left: 50%;
  position: absolute;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
}

.slick-dot-style ul.slick-dots li {
  display: inline-block;
  margin-right: 10px;
}

.slick-dot-style ul.slick-dots li:last-child {
  margin-right: 0;
}

.slick-dot-style ul.slick-dots li button {
  width: 14px;
  height: 14px;
  padding: 0;
  border: none;
  display: block;
  text-indent: -5000px;
  cursor: pointer;
  border-radius: 50%;
  -webkit-transition: 0.4s;
  -o-transition: 0.4s;
  transition: 0.4s;
  border: 2px solid #777777;
  background-color: transparent;
}

.slick-dot-style ul.slick-dots li.slick-active button {
  border-color: #f1592a;
  background-color: #f1592a;
}

.container {
  max-width: 1200px;
}

@media only screen and (max-width: 767.98px) {
  .container {
    max-width: 550px;
  }
  
}

@media only screen and (max-width: 575.98px) {
  .container {
    max-width: 450px;
  }
}

@media only screen and (max-width: 479.98px) {
  .container {
    max-width: 300px;
  }
}

/*------- short classes start -------*/
.section-padding {
  padding: 30px 0;
}
.section-padding-40 {
  padding: 90px 0;
}

@media only screen and (min-width: 768px) and (max-width: 991.98px), only screen and (max-width: 767.98px) {
  .section-padding {
    padding: 68px 0;
  }
}

.section-padding--ptb_90 {
  padding: 90px 0;
}

@media only screen and (min-width: 768px) and (max-width: 991.98px), only screen and (max-width: 767.98px) {
  .section-padding--ptb_90 {
    padding: 68px 0;
  }
}

.section-padding--pt_80 {
  padding-top: 80px;
}

@media only screen and (min-width: 768px) and (max-width: 991.98px), only screen and (max-width: 767.98px) {
  .section-padding--pt_80 {
    padding-top: 68px;
  }
}

.section-padding--pb_120 {
  padding-bottom: 120px;
}

@media only screen and (min-width: 768px) and (max-width: 991.98px), only screen and (max-width: 767.98px) {
  .section-padding--pb_120 {
    padding-bottom: 68px;
  }
}

.pb-125 {
  padding-bottom: 125px;
}

.pb-80 {
  padding-bottom: 80px;
}

@media only screen and (min-width: 768px) and (max-width: 991.98px), only screen and (max-width: 767.98px) {
  .pb-125 {
    padding-bottom: 60px;
  }
}

@media only screen and (min-width: 992px) {
  .pl-lg-45 {
    padding-left: 45px;
  }
}

@media only screen and (min-width: 992px) {
  .pr-lg-45 {
    padding-right: 45px;
  }
}

.mb-30 {
  margin-bottom: 30px;
}

.mt-20 {
  margin-top: 20px;
}

.mb-20 {
  margin-bottom: 20px;
}

.mt-10 {
  margin-top: 10px;
}

.mt-30 {
  margin-top: 30px;
}

.mt-40 {
  margin-top: 40px;
}

.mt-50 {
  margin-top: 50px;
}

.mt-65 {
  margin-top: 65px;
}

@media only screen and (min-width: 768px) and (max-width: 991.98px), only screen and (max-width: 767.98px) {
  .mt-65 {
    margin-top: 40px;
  }
}

.mt-100 {
  margin-top: 100px;
}
.mt-85 {
  margin-top: 85px;
}
.mt-80 {
  margin-top: 80px;
}
.mtn-20 {
  margin-top: -20px;
}

.mbn-30 {
  margin-bottom: -30px;
}

.mtn-30 {
  margin-top: -30px;
}

.mtn-40 {
  margin-top: -40px;
}

.mtn-65 {
  margin-top: -65px;
}

@media only screen and (min-width: 768px) and (max-width: 991.98px), only screen and (max-width: 767.98px) {
  .mtn-65 {
    margin-top: -40px;
  }
}

.mtn-10 {
  margin-top: -10px;
}

.mtb-30 {
  margin-top: 30px;
  margin-bottom: 30px;
}

.mtn-40 {
  margin-top: -40px;
}

.ptb-30 {
  padding: 30px 0;
}

.mtn-100 {
  margin-top: -100px;
}

@media only screen and (min-width: 768px) and (max-width: 991.98px) {
  .mtmd-0 {
    margin-top: 0 !important;
  }
}

@media only screen and (max-width: 767.98px) {
  .mtsm-0 {
    margin-top: 0 !important;
  }
}

/*------- short classes end -------*/
/*------- header top style start -------*/
.header-top {
  padding: 12px 0;
}

.header-top-left {
  color: #fff;
  font-size: 16px;
  font-weight: 500;
}

@media only screen and (min-width: 768px) and (max-width: 991.98px), only screen and (max-width: 767.98px) {
  .header-top-left {
    font-size: 16px;
  }
}

.header-top-left a {
  color: #fff;
}

.header-top-left a:hover {
  color: #151515;
}

@media only screen and (max-width: 575.98px) {
  .login-register {
    padding-bottom: 6px;
  }
}

.login-register a {
  color: #fff;
  font-size: 18px;
  font-weight: 500;
  line-height: 1;
}

.login-register a:hover {
  color: #151515;
}

.header-social-link a {
  color: #fff;
  margin-left: 26px;
}

.header-social-link a:hover {
  color: #151515;
}

.header-social-link a:first-child {
  margin-left: 0;
}

/*------- header top style end -------*/
/*------ main menu start ------*/
.brand-logo {
  max-width: 240px;
}

.main-menu-wrapper {
  padding: 20px 0;
}

.main-menu-wrapper.header-transparent {
  padding: 20px 0 4px 0;
}

.main-menu ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.main-menu ul li {
  position: relative; margin: 0 10px;
}

.main-menu ul li a {
  color: #151515;
  font-size: 16px;
  padding: 10px 10px;
  font-weight: 500;
  display: block;
  font-family: "Sarabun", sans-serif;
}

.main-menu ul li a i {
  font-size: 22px;
  padding: 0 8px;
}

.main-menu ul li:last-child a {
  padding-right: 0;
}

.main-menu ul li:hover > a, .main-menu ul li.active > a {
  color: #e94e08;
}
.contricode::before { content: "Read this -"; font-size: 13px; color: #000; }
.main-menu ul li ul.dropdown {
  top: 100%;
  left: 0;
  width: 175px;
  position: absolute;
  -webkit-transition: 0.4s;
  -o-transition: 0.4s;
  transition: 0.4s;
  background-color: #fff;
  opacity: 0;
  visibility: hidden;
  z-index: 99999;
  pointer-events: none;
  -webkit-transform: translateY(20px);
      -ms-transform: translateY(20px);
          transform: translateY(20px);
  border: 1px solid #efefef;
}

.main-menu ul li ul.dropdown li {
  margin-right: 0;
  border-right: none;
  -webkit-flex-basis: 100%;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
}

.main-menu ul li ul.dropdown li a {
  color: #151515;
  font-size: 14px;
  font-weight: 400;
  padding: 10px 20px;
  text-transform: capitalize;
  position: relative;
  border-bottom: 1px solid #efefef;
  z-index: 1;
}

.main-menu ul li ul.dropdown li a i {
  float: right;
  padding-top: 5px;
}

.main-menu ul li ul.dropdown li:hover > a {
  color: #fff;
  background-color: #f1592a;
}

.main-menu ul li ul.dropdown li:hover > ul.dropdown {
  top: 0;
  opacity: 1;
  visibility: visible;
}

.main-menu ul li ul.dropdown li:last-child a {
  border-bottom: 0;
}

.main-menu ul li ul.dropdown li ul.dropdown {
  top: 100%;
  left: 100%;
  opacity: 0;
  visibility: hidden;
}

.main-menu ul li:hover ul.dropdown {
  opacity: 1;
  visibility: visible;
  pointer-events: visible;
  -webkit-transform: translate(0);
      -ms-transform: translate(0);
          transform: translate(0);
}

/*------ main menu end ------*/
/*------ sticky menu style start ------*/
.sticky.is-sticky {
  top: 0;
  left: 0;
  position: fixed;
  width: 100%;
  z-index: 9;
  background-color: #fff;
  -webkit-box-shadow: 0 0 8px 1px rgba(0, 0, 0, 0.2);
          box-shadow: 0 0 8px 1px rgba(0, 0, 0, 0.2);
  -webkit-animation: 900ms cubic-bezier(0.2, 1, 0.22, 1) 0s normal none 1 running fadeInDown;
          animation: 900ms cubic-bezier(0.2, 1, 0.22, 1) 0s normal none 1 running fadeInDown;
}

.sticky.is-sticky.main-menu-wrapper {
  padding: 10px 0;
}

.sticky.is-sticky.main-menu-wrapper .brand-logo {
  max-width: 200px;
}

/*------ sticky menu style end ------*/
.header-transparent {
  /*top: 54px;*/
  left: 0;
  width: 100%;
  position: absolute;
  z-index: 1;
  background-color: transparent;
}

/*----- mobile menu start -----*/
.mobile-header {
  padding: 15px 0;
}

.mobile-logo {
  max-width: 180px;
}

.mobile-main-header {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.mobile-main-header .mobile-menu-toggler {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.mobile-main-header .mobile-menu-toggler .mobile-menu-btn {
  margin-left: 25px;
}

.mobile-main-header .mobile-menu-toggler .mobile-menu-btn span {
  width: 25px;
  height: 2px;
  display: block;
  -webkit-transition: 0.4s;
  -o-transition: 0.4s;
  transition: 0.4s;
  background-color: #151515;
  -webkit-transform-origin: left;
      -ms-transform-origin: left;
          transform-origin: left;
}

.mobile-main-header .mobile-menu-toggler .mobile-menu-btn span:nth-child(2), .mobile-main-header .mobile-menu-toggler .mobile-menu-btn span:nth-child(3) {
  margin-top: 5px;
}

.mobile-main-header .mobile-menu-toggler .mobile-menu-btn:hover span {
  background-color: #f1592a;
}

.mobile-main-header .mobile-menu-toggler .mobile-menu-btn:hover span:nth-child(1), .mobile-main-header .mobile-menu-toggler .mobile-menu-btn:hover span:nth-child(3) {
  width: 20px;
}

.mobile-navigation {
  overflow: hidden;
  max-height: 360px;
  padding: 20px;
}

.mobile-navigation nav {
  height: 100%;
}

.mobile-menu {
  margin-top: 30px;
  height: 100%;
  overflow: auto;
  padding-right: 30px;
  margin-right: -30px;
}

@media only screen and (max-width: 479.98px) {
  .mobile-menu {
    margin-top: 15px;
  }
}

.mobile-menu li > a {
  font-size: 16px;
  color: #fff;
  text-transform: capitalize;
  line-height: 18px;
  position: relative;
  display: inline-block;
  padding: 10px 0;
}

.mobile-menu li > a:hover {
  color: #151515;
}

.mobile-menu li ul li {
  border: none;
}

.mobile-menu li ul li a {
  font-size: 14px;
  text-transform: capitalize;
  padding: 10px 0 8px;
}

.mobile-menu li.menu-item-has-children {
  display: block;
  position: relative;
}

.mobile-menu li.menu-item-has-children .dropdown {
  padding-left: 15px;
}

.mobile-menu li.menu-item-has-children .menu-expand {
  line-height: 50;
  top: -5px;
  left: 95%;
  width: 30px;
  position: absolute;
  height: 50px;
  text-align: center;
  cursor: pointer;
}

.mobile-menu li.menu-item-has-children .menu-expand i {
  display: block;
  position: relative;
  width: 10px;
  margin-top: 25px;
  border-bottom: 1px solid #fff;
  -webkit-transition: all 250ms ease-out;
  -o-transition: all 250ms ease-out;
  transition: all 250ms ease-out;
}

.mobile-menu li.menu-item-has-children .menu-expand i:before {
  top: 0;
  width: 100%;
  content: "";
  display: block;
  position: absolute;
  -webkit-transform: rotate(90deg);
      -ms-transform: rotate(90deg);
          transform: rotate(90deg);
  border-bottom: 1px solid #fff;
  -webkit-transition: 0.4s;
  -o-transition: 0.4s;
  transition: 0.4s;
}

.mobile-menu li.menu-item-has-children.active > .menu-expand i:before {
  -webkit-transform: rotate(0);
      -ms-transform: rotate(0);
          transform: rotate(0);
}

/*----- mobile menu end -----*/
/*------ offcanvas widget area start ------*/
.offcanvas-widget-area {
  margin-top: auto;
  padding: 20px;
}

.off-canvas-contact-widget li {
  color: #fff;
  font-size: 15px;
  margin-bottom: 5px;
}

.off-canvas-contact-widget li i {
  width: 20px;
}

.off-canvas-contact-widget li a {
  color: #fff;
}

.off-canvas-contact-widget li a:hover {
  color: #151515;
}

.off-canvas-social-widget {
  margin-top: 20px;
}

.off-canvas-social-widget a {
  color: #fff;
  font-size: 18px;
  display: inline-block;
  margin-right: 15px;
}

.off-canvas-social-widget a:hover {
  color: #151515;
}

/*------ offcanvas widget area end ------*/
.off-canvas-wrapper {
  position: fixed;
  top: 0;
  left: 0;
  height: 100vh;
  width: 100vw;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: 0.4s;
  -o-transition: 0.4s;
  transition: 0.4s;
  z-index: 9999;
}

.off-canvas-wrapper.open {
  opacity: 1;
  visibility: visible;
}

.off-canvas-wrapper.open .off-canvas-inner-content {
  -webkit-transform: none;
      -ms-transform: none;
          transform: none;
}

.off-canvas-wrapper .off-canvas-overlay {
  background-color: rgba(0, 0, 0, 0.4);
  content: '';
  cursor: url("../img/icon/cancel.png"), auto;
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
}

.off-canvas-wrapper .off-canvas-inner-content {
  background-color: #f1592a;
  width: 300px;
  height: 100%;
  position: relative;
  -webkit-transform: translateX(calc(-100% - 50px));
      -ms-transform: translateX(calc(-100% - 50px));
          transform: translateX(calc(-100% - 50px));
  -webkit-transition: 0.4s;
  -o-transition: 0.4s;
  transition: 0.4s;
}

@media only screen and (max-width: 479.98px) {
  .off-canvas-wrapper .off-canvas-inner-content {
    width: 270px;
  }
}

.off-canvas-wrapper .btn-close-off-canvas {
  top: 0;
  left: 100%;
  width: 60px;
  height: 60px;
  font-size: 26px;
  color: #f1592a;
  line-height: 60px;
  text-align: center;
  cursor: pointer;
  position: absolute;
  -webkit-transition: 0.4s;
  -o-transition: 0.4s;
  transition: 0.4s;
  background-color: #fff;
}

.off-canvas-wrapper .btn-close-off-canvas i {
  -webkit-transform: rotate(0);
      -ms-transform: rotate(0);
          transform: rotate(0);
  -webkit-transition: 0.4s;
  -o-transition: 0.4s;
  transition: 0.4s;
  display: block;
  line-height: 60px;
}

.off-canvas-wrapper .btn-close-off-canvas:hover i {
  -webkit-transform: rotate(-90deg);
      -ms-transform: rotate(-90deg);
          transform: rotate(-90deg);
}

.off-canvas-wrapper .off-canvas-inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-left: auto;
  height: 100%;
}

.search-box-offcanvas form {
  position: relative;
}

.search-box-offcanvas form input {
  color: #666;
  font-size: 13px;
  width: 100%;
  height: 60px;
  border: none;
  padding: 0 40px 0 10px;
  background-color: #f2f2f2;
}

.search-box-offcanvas form .search-btn {
  top: 0;
  right: 0;
  width: 40px;
  height: 60px;
  line-height: 62px;
  font-size: 20px;
  color: #f1592a;
  position: absolute;
}

.search-box-offcanvas form .search-btn:hover {
  color: #f1592a;
}

/*------- mobile top bar settings start -------*/
.mobile-settings {
  padding-top: 15px;
  margin-top: 15px;
  border-top: 1px solid #e1e1e1;
}

.mobile-settings li {
  margin-bottom: 5px;
}

.mobile-settings .nav {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}

.mobile-settings .nav .mobile-top-dropdown .dropdown-toggle {
  font-size: 14px;
  color: #151515;
  cursor: pointer;
}

.mobile-settings .nav .mobile-top-dropdown .dropdown-toggle i {
  font-size: 12px;
  padding-left: 5px;
  vertical-align: middle;
}

.mobile-settings .nav .mobile-top-dropdown .dropdown-toggle:hover {
  color: #f1592a;
}

.mobile-settings .nav .mobile-top-dropdown .dropdown-toggle:after {
  display: none;
}

.mobile-settings .nav .mobile-top-dropdown .dropdown-menu {
  padding: 0;
  border-color: #e1e1e1;
  -webkit-transform: translateY(30px);
      -ms-transform: translateY(30px);
          transform: translateY(30px);
  -webkit-transition: 0.4s;
  -o-transition: 0.4s;
  transition: 0.4s;
}

.mobile-settings .nav .mobile-top-dropdown .dropdown-menu.show {
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
}

.mobile-settings .nav .mobile-top-dropdown .dropdown-menu .dropdown-item {
  font-size: 13px;
  color: #151515;
  padding: 6px 15px;
}

/*------- mobile top bar settings end -------*/
/*------- Buttons Style here -------*/
.btn {
  color: #fff;
  line-height: 1;
  border-radius: 0;
  font-family: "Sarabun", sans-serif;
  background-color: #f1592a;
  border-radius: 5px;
  font-weight: 500; margin-right: 0px;
}
.btn-bor {
  color: #f1592a;
  line-height: 1;
  font-family: "Sarabun", sans-serif;
  border:1px solid #f1592a;
  border-radius: 5px;
  font-weight: 500; margin-right: 10px;
}

.btn:hover {
  color: #fff;
  background-color: #151515;
}

.btn-hero {
  font-size: 20px;
  padding: 13px 24px 15px 24px;
}

@media only screen and (max-width: 767.98px) {
  .btn-hero {
    padding: 15px 25px;
  }
}

.btn-all {
  font-size: 15px;
  padding: 14px 24px 15px 24px;
}
.btn-mobile { font-size: 15px; padding: 8px 10px; float: left; margin-top: 10px; }
/*------- common css start -------*/
.fix {
  overflow: hidden;
}

.section-title {
  max-width: 700px;
  margin: auto;
  margin-bottom: 68px;
}
.section-img {
  
  margin: auto;
  /*margin-bottom: 68px; max-width: 850px;*/
}

@media only screen and (min-width: 768px) and (max-width: 991.98px), only screen and (max-width: 767.98px) {
  .section-title {
    margin-bottom: 45px;
  }
}

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

.section-title p {
  padding: 0 15px;
}

.section-title--style_2 {
  max-width: 710px;
}

.section-title--style_2 .title {
  line-height: 1.4;
  margin-top: -15px;
}

@media only screen and (max-width: 767.98px) {
  .section-title--style_2 .title {
    margin-top: -10px;
  }
}

.title {
  /*font-weight: 800;*/
  line-height: 1.1;
  margin-top: -9px; color: #f1592a;
}

@media only screen and (max-width: 767.98px) {
  .title {
    margin-top: -7px;
    line-height: 1.3;
  }
}

.title span {
  color: #f1592a;
}

.subtitle {
  font-weight: 400;
  line-height: 1.3;
  padding: 20px 0;
}

.theme-bg {
  background-color: #f1592a;
}
.img-bg { background: url(../images/content-bg.png) left center no-repeat; }
.img-bg-right { background: url(../images/content-bg-right.png) right center no-repeat; }
.black-bg { background-color:#373737; color: #fff; }
.black-bg .features-list { color: #fff; }
.gray-bg { background-color:#c3e6fa /*#f8f8f8*/; }
.gray-bg3 { background-color:#f8f8f8; }
.gray-bg4 { background-color:#ececec; }
.gray-light { background-color:#ececec; }
.gray-white { background-color:#fff; }
.gray-dark { background-color:#404041;  }
.gray-dark p { color: #fff }
.light-blue-bg { background-color: #e9f6ff; }
.padding-tp-btm { padding: 45px 0 0 0 ; }
.subscribe-bg {
  background: url(../images/bg.svg) bottom right no-repeat #37517e;
}
#footer-bg { background: url(../images/work-flow.jpg) center center no-repeat; height: 280px; }
.call-back a { color: #000; }
/*------- common css end -------*/
/*---- choose us style strat ----*/
.choose-item-wrapper .title {
  padding-bottom: 8px;
}

.choose-item-wrapper--style_2 {
  background-color: #fff;
  -webkit-box-shadow: 0px 0px 58.5px 6.5px rgba(28, 71, 193, 0.15);
          box-shadow: 0px 0px 58.5px 6.5px rgba(28, 71, 193, 0.15);
  padding: 83px 60px;
}

@media only screen and (min-width: 320px) and (max-width: 700px) { 
  .h1-responsive { font-size: 20px !important; margin-bottom: 0 !important }
  .carousel-caption p { font-size: 15px !important; }
  .carousel-caption { padding-top: 10% !important }
 }
@media only screen and (min-width: 992px) and (max-width: 1199.98px) {
  .choose-item-wrapper--style_2 {
    padding: 30px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991.98px), only screen and (max-width: 767.98px) {
  .choose-item-wrapper--style_2 {
    padding: 65px 30px 53px;
    margin-bottom: 62px;
  }
}

.choose-item-wrapper--style_2 .desc {
  padding: 25px 0 28px;
}

.choose-item {
  margin-top: 35px;
}

@media only screen and (max-width: 767.98px) {
  .choose-item {
    margin-top: 25px;
  }
}

.choose-item-title {
  font-weight: 700;
  padding-bottom: 8px;
}

.choose-list li {
  margin-bottom: 14px;
  position: relative;
}

.choose-list li:last-child {
  margin-bottom: 0;
}

.choose-list li:before {
  width: 21px;
  height: 18px;
  left: 0;
  top: 50%;
  content: '';
  position: absolute;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  background-image: url(../img/icon/check-tick.png);
}

.choose-list li .choose-item-title {
  padding-left: 36px;
}

/*---- choose us style end ----*/
/*---- call to action start ----*/
.cta-wrapper {
  position: relative;
}

@media only screen and (min-width: 768px) and (max-width: 991.98px), only screen and (max-width: 767.98px) {
  .cta-wrapper {
    margin-top: 55px;
    padding-bottom: 6px;
  }
}

.cta-wrapper .title {
  line-height: 1.3;
}

.cta-wrapper .call {
  color: #f1592a;
  display: inline-block;
  font-size: 36px;
  font-weight: 800;
  padding-top: 23px;
}

@media only screen and (max-width: 767.98px) {
  .cta-wrapper .call {
    font-size: 28px;
  }
}

@media only screen and (max-width: 479.98px) {
  .cta-wrapper .call {
    font-size: 24px;
  }
}

.cta-wrapper .call:hover {
  color: #151515;
}

@media only screen and (max-width: 767.98px) {
  .cta-wrapper img {
    padding-left: 0;
  }
}

/*---- call to action end ----*/
/*---- brand logo section start ----*/
.brand-item img {
  margin: auto;
  opacity: 0.75;
}

.brand-item:hover img {
  opacity: 1;
}

/*---- brand logo section end ----*/
/*------ counter up start ------*/
.counterup-item {
  text-align: center;
}

.counterup-item span {
  color: #f1592a;
  font-weight: 800;
  margin-top: -4px;
}

.counterup-item h5 {
  font-weight: 400;
  padding-top: 5px;
}

@media only screen and (min-width: 768px) and (max-width: 991.98px), only screen and (max-width: 767.98px) {
  .counterup-item h5 {
    font-size: 16px;
  }
}

.odometer-inside {
  position: relative;
  margin-left: -22px;
}

.odometer-inside::after {
  top: -7px;
  left: 100%;
  content: '+';
  position: absolute;
}

/*------ counter up end ------*/
/*----- slick arrow style start -----*/
.testimonial-carousel-active.slick-arrow-style button.slick-arrow,
.hero-slider-active.slick-arrow-style button.slick-arrow {
  width: 16px;
  height: 18px;
  bottom: -38px;
  left: 0;
  cursor: pointer;
  position: absolute;
  background-repeat: no-repeat;
}

.testimonial-carousel-active.slick-arrow-style button.slick-arrow.slick-prev,
.hero-slider-active.slick-arrow-style button.slick-arrow.slick-prev {
  background-image: url(../img/icon/arrow-prev.png);
}

.testimonial-carousel-active.slick-arrow-style button.slick-arrow.slick-next,
.hero-slider-active.slick-arrow-style button.slick-arrow.slick-next {
  left: 25px;
  background-image: url(../img/icon/arrow-next.png);
}

.testimonial-carousel-active.slick-arrow-style button.slick-arrow:hover.slick-prev,
.hero-slider-active.slick-arrow-style button.slick-arrow:hover.slick-prev {
  background-image: url(../img/icon/arrow-prev-color.png);
}

.testimonial-carousel-active.slick-arrow-style button.slick-arrow:hover.slick-next,
.hero-slider-active.slick-arrow-style button.slick-arrow:hover.slick-next {
  background-image: url(../img/icon/arrow-next-color.png);
}

.testimonial-carousel-active.slick-arrow-style--testimonial_2,
.hero-slider-active.slick-arrow-style--testimonial_2 {
  margin-top: 35px;
}

.testimonial-carousel-active.slick-arrow-style--testimonial_2 button.slick-arrow,
.hero-slider-active.slick-arrow-style--testimonial_2 button.slick-arrow {
  right: 0;
  left: auto;
  bottom: 60px;
  z-index: 1;
}

.testimonial-carousel-active.slick-arrow-style--testimonial_2 button.slick-arrow.slick-prev,
.hero-slider-active.slick-arrow-style--testimonial_2 button.slick-arrow.slick-prev {
  right: 60px;
}

.testimonial-carousel-active.slick-arrow-style--testimonial_2 button.slick-arrow.slick-next,
.hero-slider-active.slick-arrow-style--testimonial_2 button.slick-arrow.slick-next {
  right: 37px;
  left: auto;
}

.testimonial-carousel-active.slick-arrow-style--testimonial_2 .slick-list,
.hero-slider-active.slick-arrow-style--testimonial_2 .slick-list {
  margin: -30px;
}

@media only screen and (min-width: 768px) and (max-width: 991.98px), only screen and (max-width: 767.98px) {
  .testimonial-carousel-active.slick-arrow-style--testimonial_2 .slick-list,
  .hero-slider-active.slick-arrow-style--testimonial_2 .slick-list {
    margin: -30px -15px;
  }
}

.testimonial-carousel-active.slick-arrow-style--testimonial_2 .slick-list .slick-slide,
.hero-slider-active.slick-arrow-style--testimonial_2 .slick-list .slick-slide {
  padding: 30px;
}

.slick-arrow-style_hero button.slick-arrow {
  bottom: 40px;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  margin: auto;
}

.slick-arrow-style_hero button.slick-arrow.slick-next {
  right: 48%;
  left: auto;
}

.slick-arrow-style_hero button.slick-arrow.slick-prev {
  left: 49%;
}

/*----- slick arrow style end -----*/
/* ----scroll to top css start ----*/
.scroll-top {
  bottom: 50px;
  cursor: pointer;
  height: 50px;
  position: fixed;
  right: 20px;
  text-align: center;
  width: 50px;
  z-index: 9999;
  -webkit-transition: 0.4s;
  -o-transition: 0.4s;
  transition: 0.4s;
  border-radius: 50%;
  background-color: #f1592a;
  -webkit-box-shadow: 0 0 1px rgba(255, 255, 255, 0.5);
          box-shadow: 0 0 1px rgba(255, 255, 255, 0.5); line-height: 44px;
}

.scroll-top i {
  line-height: 50px;
  color: #fff;
  font-size: 25px;
}

.scroll-top.not-visible {
  bottom: -50px;
  visibility: hidden;
  opacity: 0;
}

.scroll-top:hover {
  background-color: #151515;
}

/* ----scroll to top css end ----*/
@-webkit-keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 40%, 0);
            transform: translate3d(0, 40%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 40%, 0);
            transform: translate3d(0, 40%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }
}

.fadeInUp {
  -webkit-animation-name: fadeInUp;
          animation-name: fadeInUp;
}

@-webkit-keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-40%, 0, 0);
            transform: translate3d(-40%, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-40%, 0, 0);
            transform: translate3d(-40%, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }
}

.fadeInLeft {
  -webkit-animation-name: fadeInLeft;
          animation-name: fadeInLeft;
}

@-webkit-keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(40%, 0, 0);
            transform: translate3d(40%, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(40%, 0, 0);
            transform: translate3d(40%, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }
}

.fadeInRight {
  -webkit-animation-name: fadeInRight;
          animation-name: fadeInRight;
}

@-webkit-keyframes float-bob {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  50% {
    -webkit-transform: translateY(20px);
            transform: translateY(20px);
  }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

@keyframes float-bob {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  50% {
    -webkit-transform: translateY(20px);
            transform: translateY(20px);
  }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

.moving-vertical {
  -webkit-animation-name: float-bob;
          animation-name: float-bob;
  -webkit-animation-duration: 3s;
          animation-duration: 3s;
  -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite;
  -webkit-animation-timing-function: linear;
          animation-timing-function: linear;
}

/*------ hero slider area css start ------*/
/*-------------------------
01. Slider area
--------------------------*/
.hero-slider-item {
  /*height: 700px;*/
  min-height: 60vh;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  /*padding-top: 88px;*/
}

@media only screen and (min-width: 992px) and (max-width: 1199.98px) {
  .hero-slider-item {
    height: 550px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991.98px) {
  .hero-slider-item {
    height: 400px;
    padding-top: 0;
  }
}

@media only screen and (max-width: 767.98px) {
  .hero-slider-item {
    height: 350px;
    padding-top: 0;
  }
}

@media only screen and (max-width: 575.98px) {
  .hero-slider-item {
    height: 200px;
  }
}

.slider-thumb {
  float: right;
}

@media only screen and (max-width: 575.98px) {
  .slider-thumb {
    float: none;
    max-width: 300px;
    margin: 0 auto;
  }
}

@media only screen and (max-width: 575.98px) {
  .hero-slider-content {
    text-align: center;
    padding: 0 20px 50px;
  }
}

@media only screen and (max-width: 479.98px) {
  .hero-slider-content {
    padding: 0 0 50px;
  }
}

.hero-slider-content .slide-title {
  color: #151515;
  font-size: 40px;
  font-weight: 800;
  line-height: 1.2; margin-bottom: 30px
}

@media only screen and (min-width: 992px) and (max-width: 1199.98px) {
  .hero-slider-content .slide-title {
    font-size: 40px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991.98px) {
  .hero-slider-content .slide-title {
    font-size: 34px;
    line-height: 1.3;
  }
}

@media only screen and (max-width: 767.98px) {
  .hero-slider-content .slide-title {
    font-size: 25px;
    line-height: 1.3;
  }
}

.hero-slider-content .btn-hero {
  margin-top: 55px;
}

@media only screen and (max-width: 767.98px) {
  .hero-slider-content .btn-hero {
    margin-top: 30px;
    padding: 10px 22px 12px;
    font-size: 18px;
  }
}

.hero-transparent-bg {
  /*height: 635px;*/
}

@media only screen and (min-width: 992px) and (max-width: 1199.98px) {
  .hero-transparent-bg {
    height: 550px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991.98px) {
  .hero-transparent-bg {
    height: 400px;
    padding-top: 0;
  }
}

@media only screen and (max-width: 767.98px) {
  .hero-transparent-bg {
    height: 350px;
    padding-top: 0;
  }
}

@media only screen and (max-width: 575.98px) {
  .hero-transparent-bg {
    height: 200px;
    padding-top: 0;
  }
}

/*------ hero slider area css end ------*/
.slick-active .slider-thumb img {
  -webkit-animation-fill-mode: both;
          animation-fill-mode: both;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-name: fadeInRight;
          animation-name: fadeInRight;
  -webkit-animation-delay: 0.5s;
          animation-delay: 0.5s;
}
.slider-content {
  -webkit-animation-fill-mode: both;
          animation-fill-mode: both;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-name: fadeInLeft;
          animation-name: fadeInLeft;
  -webkit-animation-delay: 0.5s;
          animation-delay: 0.5s;
}

.slick-active .hero-slider-content .slide-title, .slick-active .hero-slider-content .btn-hero {
  -webkit-animation-fill-mode: both;
          animation-fill-mode: both;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-name: fadeInLeft;
          animation-name: fadeInLeft;
  -webkit-animation-delay: 0.5s;
          animation-delay: 0.5s;
}

.slick-active .hero-slider-content .btn-hero {
  -webkit-animation-delay: 0.7s;
          animation-delay: 0.7s;
}

/*----- about style start -----*/
@media only screen and (min-width: 768px) and (max-width: 991.98px), only screen and (max-width: 767.98px) {
  .about-inner {
    margin-top: 65px;
  }
}

.about-inner p {
  margin-bottom: 34px;
}

@media only screen and (min-width: 768px) and (max-width: 991.98px), only screen and (max-width: 767.98px) {
  .about-inner--style_2 {
    margin-top: 0;
    margin-bottom: 65px;
  }
}

.about-inner--style_2 .subtitle {
  padding-top: 24px;
}

@media only screen and (min-width: 768px) and (max-width: 991.98px), only screen and (max-width: 767.98px) {
  .about-inner--style_2 .subtitle {
    padding-bottom: 5px;
  }
}

.about-inner--style_2 .subtitle span {
  color: #f1592a;
  font-weight: 800;
}

.about-inner--style_2 .subtitle-2 {
  padding-top: 3px;
  padding-bottom: 46px;
}

@media only screen and (min-width: 768px) and (max-width: 991.98px), only screen and (max-width: 767.98px) {
  .about-thumb {
    text-align: center;
  }
}

/*----- about style end -----*/
/*----- service policy start -----*/
.service-policy-item {
  /* @media only screen and (max-width: 767.98px) {
            text-align: center;
            padding: 0 40px;
        }

        @media only screen and (max-width: 479.98px) {
            padding: 0 15px;
        } */
}

.service-policy-item:hover .service-policy-icon img {
  -webkit-transform: scale(0.95) translateX(10px);
      -ms-transform: scale(0.95) translateX(10px);
          transform: scale(0.95) translateX(10px);
}

.service-policy-title {
  font-weight: 700;
  padding: 17px 0 8px;
}

@media only screen and (min-width: 768px) and (max-width: 991.98px), only screen and (max-width: 767.98px) {
  .policy-wrapper-02 {
    margin-top: -45px;
    margin-bottom: 26px;
  }
}

.policy-wrapper-02 .service-policy-item {
  padding: 34px;
  -webkit-transition: 0.4s;
  -o-transition: 0.4s;
  transition: 0.4s;
}

.policy-wrapper-02 .service-policy-item:hover, .policy-wrapper-02 .service-policy-item.active {
  -webkit-box-shadow: 0px 0px 58.5px 6.5px rgba(28, 71, 193, 0.15);
          box-shadow: 0px 0px 58.5px 6.5px rgba(28, 71, 193, 0.15);
}

@media only screen and (min-width: 768px) and (max-width: 991.98px), only screen and (max-width: 767.98px) {
  .policy-area-02 {
    padding-top: 50px;
  }
}

/*----- service policy  -----*/
/*------ service section start ------*/
.servivce-middle-thumb {
  text-align: center;
}

@media only screen and (min-width: 768px) and (max-width: 991.98px), only screen and (max-width: 767.98px) {
  .servivce-middle-thumb {
    margin-top: 60px;
  }
}

.service-item {
  /*width: 218px;*/
  text-align: left;
}

@media only screen and (min-width: 768px) and (max-width: 991.98px) {
  .service-item {
    float: left;
  }
}

@media only screen and (max-width: 767.98px) {
  .service-item {
    width: 100%;
  }
}

.service-item:hover .service-icon img {
  -webkit-transform: scale(0.95) translateX(10px);
      -ms-transform: scale(0.95) translateX(10px);
          transform: scale(0.95) translateX(10px);
}

.service-title {
  font-weight: 700;
  padding: 18px 0 10px; font-size: 20px;  
}

.service-title a {
  color: #151515;
}

.service-title a:hover {
  color: #f1592a;
}

.service-list-left .service-item:nth-child(1), .service-list-left .service-item:nth-child(3) {
  margin-left: 52px;
}

@media only screen and (min-width: 992px) and (max-width: 1199.98px), only screen and (min-width: 768px) and (max-width: 991.98px), only screen and (max-width: 767.98px) {
  .service-list-left .service-item:nth-child(1), .service-list-left .service-item:nth-child(3) {
    margin-left: 0;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991.98px) {
  .service-list-left .service-item {
    margin-right: 30px;
  }
  .service-list-left .service-item:last-child {
    margin-right: 0;
  }
}

.service-list-left .service-item:last-child {
  margin-bottom: 0;
}

.service-list-right .service-item:nth-child(2) {
  margin-left: 52px;
}

@media only screen and (min-width: 992px) and (max-width: 1199.98px), only screen and (min-width: 768px) and (max-width: 991.98px), only screen and (max-width: 767.98px) {
  .service-list-right .service-item:nth-child(2) {
    margin-left: 0;
  }
}

.service-list-right .service-item:last-child {
  margin-bottom: 0;
}

@media only screen and (min-width: 768px) and (max-width: 991.98px) {
  .service-list-right .service-item {
    margin-right: 30px;
  }
  .service-list-right .service-item:last-child {
    margin-right: 0;
  }
}

.service-wrapper--style_2 .section-title {
  text-align: center;
}

.service-wrapper--style_2 .service-item {
  margin-bottom: 0;
}

@media only screen and (min-width: 768px) and (max-width: 991.98px) {
  .service-wrapper--style_2 .service-item {
    width: 100%;
  }
}

/*------ service section end ------*/
/*------ service details page start ------*/
@media only screen and (min-width: 768px) and (max-width: 991.98px), only screen and (max-width: 767.98px) {
  .service-details-wrapper.pb-125 {
    padding-bottom: 67px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991.98px), only screen and (max-width: 767.98px) {
  .service-details-widget {
    margin-top: 100px;
  }
}

.service-single-widget {
  padding: 25px;
}

.service-single-widget .service-widget-title {
  font-weight: 700;
  padding-bottom: 20px;
  line-height: 1;
}

.service-single-widget .service-list li a {
  color: #151515;
  display: block;
  margin-bottom: 10px;
  position: relative;
  padding-left: 35px;
}

.service-single-widget .service-list li a:before {
  width: 20px;
  height: 20px;
  left: 0;
  top: 50%;
  content: '';
  position: absolute;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  background-image: url(../images/bullet-point.png);
}

.service-single-widget .service-list li a:hover {
  color: #f1592a;
  padding-left: 30px;
}
.service-single-widget .service-list li .vertical-active {
  color: #f1592a;
  padding-left: 30px;
}

.service-single-widget .service-list li:last-child a {
  margin-bottom: 0;
}

@media only screen and (min-width: 1600px) {
  .service-details-content {
    padding-right: 30px;
  }
}

.service-details-content h3 {
  font-weight: 700;
  padding-bottom: 10px;
}

/*------ service details page end ------*/
/*----- testimonial area start -----*/
@media only screen and (min-width: 768px) and (max-width: 991.98px), only screen and (max-width: 767.98px) {
  .testimonial-wrapper {
    padding-bottom: 100px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991.98px), only screen and (max-width: 767.98px) {
  .testimonial-wrapper--style_2 {
    padding-bottom: 68px;
  }
}

.testimonial-inner {
  margin-top: -38px;
}

@media only screen and (min-width: 768px) and (max-width: 991.98px), only screen and (max-width: 767.98px) {
  .testimonial-inner {
    margin-top: 68px;
  }
}

.testimonial-content {
  padding: 1px;
}

.testimonial-content .client-name {
  color: #f1592a;
  line-height: 1;
  font-weight: 500;
  padding-bottom: 4px;
}

.testimonial-content .client-desig {
  font-weight: 300;
}

.testimonial-content p {
  padding-top: 57px;
  padding-bottom: 12px;
}

@media only screen and (max-width: 767.98px) {
  .testimonial-content p {
    padding-top: 45px;
  }
}

.testimonial-content p i {
  font-size: 14px;
  line-height: 1;
  padding-right: 5px;
}

.testimonial-content p i:last-child {
  padding-left: 5px;
}

@media only screen and (min-width: 768px) and (max-width: 991.98px) {
  .testimonial-thumb {
    text-align: center;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991.98px), only screen and (max-width: 767.98px) {
  .testimonial-thumb--style_2 {
    margin-bottom: 68px;
  }
}

.testimonial-item--style_2 .testimonial-content {
  padding: 40px 20px 48px 45px;
  -webkit-box-shadow: 0px 0px 31.5px 3.5px rgba(28, 71, 193, 0.11);
          box-shadow: 0px 0px 31.5px 3.5px rgba(28, 71, 193, 0.11); background: #fff;
}

.testimonial-item--style_2 .testimonial-content p {
  padding-top: 0;
}

/*----- testimonial area end -----*/
/*----- breadcrumb style css start -----*/
.breadcrumb-area {
    background: #e5e5e5;
}
.breadcrumb-wrap {
  padding: 20px 0 5px;
  text-align: center;
}

@media only screen and (max-width: 767.98px) {
  .breadcrumb-wrap {
    padding: 50px 0;
  }
}

.breadcrumb-wrap .breadcrumb {
  background: transparent;
  margin-bottom: 0;
  padding: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.breadcrumb-wrap .breadcrumb .breadcrumb-item {
  line-height: 1;
  font-size: 18px;
  text-transform: capitalize;
  color: #fff;
}

.breadcrumb-wrap .breadcrumb .breadcrumb-item a {
  color: #fff;
}

.breadcrumb-wrap .breadcrumb .breadcrumb-item a:hover {
  color: #f1592a;
}

.breadcrumb-wrap .breadcrumb .breadcrumb-item:before {
  color: #fff;
  content: "/";
  font-size: 12px;
  margin: 0 5px;
}

.breadcrumb-wrap .breadcrumb .breadcrumb-item:first-child::before {
  display: none;
}

.breadcrumb-wrap .breadcrumb .breadcrumb-item.active {
  margin-top: 2px;
  text-transform: capitalize;
}

.breadcrumb-title {
  color: #fff;
  font-size: 30px;
  line-height: 1;
  font-weight: 800;
  margin-bottom: 20px;
}

@media only screen and (max-width: 575.98px) {
  .breadcrumb-title {
    font-size: 24px;
  }
}

/*----- breadcrumb style css end -----*/
/*------ team area style  start ------*/
.team-member {
  position: relative;
  text-align: center;
}

.team-member-info {
  bottom: 0;
  left: 50%;
  position: absolute;
  background-color: #f8f8f8;
  padding: 40px;
  text-align: center;
  white-space: nowrap;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  -webkit-box-shadow: 0px 0px 58px 6px rgba(28, 71, 193, 0.15);
          box-shadow: 0px 0px 58px 6px rgba(28, 71, 193, 0.15);
  opacity: 0;
  visibility: hidden;
  -webkit-transition: 0.4s;
  -o-transition: 0.4s;
  transition: 0.4s;
}

@media only screen and (min-width: 768px) and (max-width: 991.98px) {
  .team-member-info {
    padding: 30px;
  }
}

@media only screen and (max-width: 767.98px) {
  .team-member-info {
    padding: 10px;
  }
}

@media only screen and (max-width: 575.98px) {
  .team-member-info {
    padding: 40px;
  }
}

.team-member:hover .team-member-info {
  opacity: 1;
  visibility: visible;
}

.team-member--hover-effect {
  text-align: center;
}

@media only screen and (min-width: 992px) and (max-width: 1199.98px), only screen and (min-width: 768px) and (max-width: 991.98px) {
  .team-member--hover-effect {
    margin-top: 130px;
  }
}

@media only screen and (max-width: 767.98px) {
  .team-member--hover-effect {
    margin-top: 100px;
  }
}

@media only screen and (max-width: 575.98px) {
  .team-member--hover-effect {
    margin-top: 100px;
  }
}

.team-member--hover-effect:before, .team-member--hover-effect:after {
  top: 0;
  left: 50%;
  width: 10px;
  height: 10px;
  content: '';
  position: absolute;
  border: 1px solid #b9b9b9;
  border-radius: 50%;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: 0.4s;
  -o-transition: 0.4s;
  transition: 0.4s;
}

.team-member--hover-effect:after {
  top: 0;
  left: 55%;
  width: 13px;
  height: 13px;
}

.team-member--hover-effect .team-member-info {
  left: 50%;
  top: -100px;
  content: '';
  position: absolute;
  -webkit-transform: translateX(-6px) scale(0.7);
      -ms-transform: translateX(-6px) scale(0.7);
          transform: translateX(-6px) scale(0.7);
  opacity: 0;
  visibility: hidden;
  -webkit-transition: 0.4s;
  -o-transition: 0.4s;
  transition: 0.4s;
  white-space: nowrap;
  text-align: left;
  padding: 0;
  background-color: transparent;
  -webkit-box-shadow: none;
          box-shadow: none;
}

@media only screen and (min-width: 768px) and (max-width: 991.98px), only screen and (max-width: 767.98px) {
  .team-member--hover-effect .team-member-info {
    top: -80px;
  }
}

.team-member--hover-effect .team-member-name {
  font-weight: 700;
  padding-bottom: 3px;
}

.team-member--hover-effect .team-member-name a {
  color: #151515;
}

.team-member--hover-effect .team-member-name a:hover {
  color: #f1592a;
}

.team-member--hover-effect .team-member-desig {
  font-weight: 400;
}

.team-member--hover-effect:hover:before, .team-member--hover-effect:hover:after, .team-member--hover-effect.active:before, .team-member--hover-effect.active:after, .team-member--hover-effect.team-open:before, .team-member--hover-effect.team-open:after {
  opacity: 1;
  visibility: visible;
  top: -23px;
}

@media only screen and (min-width: 768px) and (max-width: 991.98px), only screen and (max-width: 767.98px) {
  .team-member--hover-effect:hover:before, .team-member--hover-effect:hover:after, .team-member--hover-effect.active:before, .team-member--hover-effect.active:after, .team-member--hover-effect.team-open:before, .team-member--hover-effect.team-open:after {
    top: -15px;
  }
}

.team-member--hover-effect:hover:after, .team-member--hover-effect.active:after, .team-member--hover-effect.team-open:after {
  top: -45px;
  -webkit-transition-delay: 0.2s;
       -o-transition-delay: 0.2s;
          transition-delay: 0.2s;
}

@media only screen and (min-width: 768px) and (max-width: 991.98px), only screen and (max-width: 767.98px) {
  .team-member--hover-effect:hover:after, .team-member--hover-effect.active:after, .team-member--hover-effect.team-open:after {
    top: -30px;
  }
}

.team-member--hover-effect:hover .team-member-info, .team-member--hover-effect.active .team-member-info, .team-member--hover-effect.team-open .team-member-info {
  opacity: 1;
  visibility: visible;
  -webkit-transition-delay: 0.6s;
       -o-transition-delay: 0.6s;
          transition-delay: 0.6s;
  -webkit-transform: translateX(-6px) scale(1);
      -ms-transform: translateX(-6px) scale(1);
          transform: translateX(-6px) scale(1);
}

@media only screen and (min-width: 768px) and (max-width: 991.98px) {
  .team-member--hover-effect:hover .team-member-info, .team-member--hover-effect.active .team-member-info, .team-member--hover-effect.team-open .team-member-info {
    -webkit-transform: translateX(-6px) scale(1);
        -ms-transform: translateX(-6px) scale(1);
            transform: translateX(-6px) scale(1);
  }
}

@media only screen and (min-width: 992px) and (max-width: 1199.98px) {
  .team-content.about-inner {
    padding-right: 140px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991.98px), only screen and (max-width: 767.98px) {
  .team-content.about-inner {
    margin-top: 0;
  }
}

@media only screen and (min-width: 992px) and (max-width: 1199.98px), only screen and (min-width: 768px) and (max-width: 991.98px), only screen and (max-width: 767.98px) {
  .team-content--style_2 {
    margin-bottom: 65px;
  }
}

@media only screen and (min-width: 992px) and (max-width: 1199.98px), only screen and (min-width: 768px) and (max-width: 991.98px), only screen and (max-width: 767.98px) {
  .team-wrapper.section-padding--pb_120 {
    padding-top: 0;
  }
}

.team-wrapper--style_1 {
  padding-top: 80px;
}

@media only screen and (min-width: 992px) and (max-width: 1199.98px), only screen and (min-width: 768px) and (max-width: 991.98px), only screen and (max-width: 767.98px) {
  .team-wrapper--style_1 {
    padding-top: 0;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991.98px), only screen and (max-width: 767.98px) {
  .team-wrapper [class*="col-"]:last-child .team-member--hover-effect .team-member-info {
    -webkit-transform: translateX(-6px) scale(1);
        -ms-transform: translateX(-6px) scale(1);
            transform: translateX(-6px) scale(1);
    left: auto;
    right: 0;
  }
}

@media only screen and (max-width: 575.98px) {
  .team-wrapper [class*="col-"]:last-child .team-member--hover-effect .team-member-info {
    -webkit-transform: translateX(-6px) scale(1);
        -ms-transform: translateX(-6px) scale(1);
            transform: translateX(-6px) scale(1);
    left: 50%;
  }
}

@media only screen and (max-width: 479.98px) {
  .team-wrapper--style_1 [class*="col-"] {
    max-width: 100%;
    -webkit-box-flex: 100%;
    -webkit-flex: 100%;
        -ms-flex: 100%;
            flex: 100%;
  }
}

@media only screen and (min-width: 992px) and (max-width: 1199.98px) {
  .team-wrapper--style_3 .team-member--hover-effect {
    margin-top: 30px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991.98px), only screen and (max-width: 767.98px) {
  .team-wrapper--style_3 .team-member--hover-effect {
    margin-top: 40px;
  }
}

@media only screen and (max-width: 479.98px) {
  .team-wrapper--style_3 [class*="col-"] {
    max-width: 100%;
    -webkit-box-flex: 100%;
    -webkit-flex: 100%;
        -ms-flex: 100%;
            flex: 100%;
  }
}

@media only screen and (max-width: 575.98px) {
  .team-wrapper--style_3 [class*="col-"] .team-member--hover-effect {
    margin-top: 100px;
  }
}

@media only screen and (max-width: 575.98px) {
  .team-wrapper--style_3 .section-padding--pt_80 {
    padding-top: 0;
  }
}

/*------ team details start ------*/
@media only screen and (min-width: 768px) and (max-width: 991.98px), only screen and (max-width: 767.98px) {
  .team-member-details {
    margin-top: 60px;
  }
}

.team-details-widget .quick-contact {
  padding: 25px 25px 18px 25px;
}

.team-details-widget .quick-contact .quick-title {
  font-weight: 700;
  color: #f1592a;
  padding-bottom: 20px;
}

.team-details-widget .quick-contact a {
  display: block;
  color: #151515;
  margin-bottom: 10px;
}

.team-details-widget .quick-contact a:hover {
  color: #f1592a;
}

.team-details-widget .quick-contact .team-sicial-link a {
  display: inline-block;
  color: #151515;
  font-size: 18px;
  margin-right: 15px;
}

.team-details-widget .quick-contact .team-sicial-link a:hover {
  color: #f1592a;
}

.team-details-widget .quick-contact .team-sicial-link a:last-child {
  margin-right: 0;
}

/*-- Single Skill --*/
.single-skill {
  margin-bottom: 30px;
}

.single-skill:last-child {
  margin-bottom: 0;
}

.single-skill span {
  display: block;
  font-size: 14px;
  line-height: 1;
  color: #151515;
  letter-spacing: 1px;
  margin-bottom: 12px;
}

.single-skill .skill-bar {
  display: block;
  width: 100%;
  height: 3px;
  background-color: #dbdbdb;
  padding: 1px;
}

.single-skill .skill-bar .skill-progress {
  display: block;
  height: 100%;
  background-color: #f1592a;
  position: relative;
}

.single-skill .skill-bar .skill-progress::before {
  content: attr(data-progress);
  position: absolute;
  right: 0;
  bottom: 15px;
  font-size: 14px;
  line-height: 1;
  color: #151515;
  letter-spacing: 1px;
}

/*------ team details end ------*/
/*------ team area style end ------*/
/*------- pricing table start -------*/
.pricing-item {
  border-radius: 5px;
  padding: 10px 10px 10px 10px;
  text-align: center;
  border-right: 1px solid #e1e1e1;
  -webkit-transition: 0.4s;
  -o-transition: 0.4s;
  transition: 0.4s;
}



.dolar {
  color: #011a48;
  font-size: 26px;
  font-weight: 600;
  padding-right: 3px;
  vertical-align: super;
}

.price-head {
  background-image: url(../../assets/img/bg/1.png);
  background-position: center;
  background-repeat: no-repeat;
}

.price-head h2 {
  font-size: 60px;
  font-weight: 700;
  display: inline-block;
}

@media only screen and (max-width: 479.98px) {
  .price-head h2 {
    font-size: 36px;
  }
}

.price-head h4 {
  display: inline-block;
}

.pricing-title {
  color: #f1592a;
  font-size: 30px;
  display: block;
  padding-top: 15px;
}

.pricing-list {
  margin-bottom: 20px;
  padding: 30px 10px 0 50px; text-align: left;
}

.pricing-list li {
  padding: 10px 0;
  border-bottom: 1px solid #5e5e5e; background: url(../images/arrow.png) left center no-repeat; padding-left: 25px;
  font-size: 20px; line-height: 30px; font-weight: 100; color: #b9b9b9;
}
.ver-list li {
  padding: 10px 0;
  background: url(../images/dot.png) left center no-repeat; padding-left: 25px;
  line-height: 22px; font-weight: 100;
}

.pricing-list li:first-child {
  border-top: 1px solid #373737;
}

/*------- pricing table end -------*/
/*------ pagination area style start ------*/
.paginatoin-area {
  padding: 20px;
  border: 1px solid #e1e1e1;
}

.paginatoin-area .pagination-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.paginatoin-area .pagination-box li {
  margin-right: 5px;
  display: inline-block;
}

.paginatoin-area .pagination-box li:last-child {
  margin-right: 0;
}

.paginatoin-area .pagination-box li a {
  color: #151515;
  height: 36px;
  width: 36px;
  font-size: 14px;
  display: inline-block;
  text-align: center;
  line-height: 36px;
  background-color: #f5f5f5;
  border-radius: 5px;
}

.paginatoin-area .pagination-box li a i {
  font-size: 22px;
  line-height: 36px;
}

.paginatoin-area .pagination-box li a:hover {
  color: #fff;
  border-color: #f1592a;
  background-color: #f1592a;
}

.paginatoin-area .pagination-box li.active a {
  color: #fff;
  background-color: #f1592a;
}

/*------ pagination area style end ------*/
/*----- blog post item start -----*/
.blog-item:hover .blog-thumb img {
  -webkit-transform: scale(1.1);
      -ms-transform: scale(1.1);
          transform: scale(1.1);
}

.blog-thumb {
  text-align: center;
  background-color: #f5f6f7;
  overflow: hidden;
}

.blog-thumb a {
  display: block;
}

.blog-content {
  padding-top: 18px;
}

.blog-title {
  padding-bottom: 10px;
}

.blog-title a {
  color: #151515;
}

.blog-title a:hover {
  color: #f1592a;
}

.blog-meta:hover a {
  color: #151515;
}

.blog-content.blog-details .blog-title {
  font-size: 28px;
  font-weight: 700;
  line-height: 1.3;
}

@media only screen and (max-width: 575.98px) {
  .blog-content.blog-details .blog-title {
    font-size: 24px;
  }
}

.blog-content.blog-details .blog-meta {
  padding-bottom: 20px;
}

.blog-content blockquote {
  border-left: 5px solid #f1592a;
  margin: 25px 32px 25px 30px;
  background-color: #f8f8f8;
  padding: 15px;
}

@media only screen and (max-width: 575.98px) {
  .blog-content blockquote {
    margin: 25px 15px 25px 15px;
  }
}

/*----- blog post item end -----*/
/*----- blog sidebar start -------*/
@media only screen and (min-width: 768px) and (max-width: 991.98px), only screen and (max-width: 767.98px) {
  .blog-widget-wrapper {
    margin-top: 20px;
  }
}

.blog-widget-title {
  font-weight: 500;
  line-height: 1;
  margin-bottom: 40px;
  position: relative;
}

.blog-widget-title:before, .blog-widget-title:after {
  bottom: -10px;
  left: 0;
  width: 100%;
  height: 1px;
  content: "";
  position: absolute;
  background-color: #e1e1e1;
}

.blog-widget-title:after {
  width: 50px;
  background-color: #f1592a;
}

.widget-search-form {
  position: relative;
}

.widget-search-form .search-field {
  width: 100%;
  border: none;
  height: 46px;
  line-height: 1;
  font-size: 14px;
  padding: 0 15px;
  padding-right: 55px;
  background-color: #f6f6f6;
}

.widget-search-form .search-btn {
  width: 46px;
  height: 46px;
  background-color: #f1592a;
  color: #fff;
  font-size: 18px;
  line-height: 46px;
  text-align: center;
  position: absolute;
  right: 0;
  top: 0;
}

.widget-search-form .search-btn:hover {
  background-color: #151515;
}

.recent-posts {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 30px;
}

.recent-posts-image {
  width: 80px;
}

.recent-posts-body {
  line-height: 1;
  padding-left: 10px;
  width: calc(100% - 80px);
}

.recent-posts-meta {
  display: block;
  font-size: 14px;
  line-height: 1;
  padding-bottom: 10px;
}

.recent-posts-title {
  font-weight: 500;
  line-height: 1.3;
}

.recent-posts-title a {
  color: #151515;
}

.recent-posts-title a:hover {
  color: #f1592a;
}

.recent-posts:last-child {
  margin-bottom: 0;
}

.blog-categories li {
  font-size: 16px;
  line-height: 1;
  margin-bottom: 20px;
}

.blog-categories li a {
  color: #151515;
}

.blog-categories li span {
  float: right;
  -webkit-transition: 0.4s;
  -o-transition: 0.4s;
  transition: 0.4s;
}

.blog-categories li:last-child {
  margin-bottom: 0;
}

.blog-categories li:hover a {
  color: #f1592a;
}

.blog-categories li:hover span {
  color: #f1592a;
}

.blog-tag {
  margin-bottom: -5px;
}

.blog-tag a {
  color: #151515;
  font-size: 14px;
  border: 1px solid #e1e1e1;
  line-height: 1;
  padding: 8px 15px;
  display: inline-block;
  margin-bottom: 5px;
}

.blog-tag a:hover {
  color: #fff;
  background-color: #f1592a;
  border-color: #f1592a;
}

/*----- blog sidebar end -------*/
/*--- blog comment section start ---*/
.comment-section {
  margin-top: -10px;
}

@media only screen and (max-width: 767.98px) {
  .comment-section {
    margin-top: -14px;
  }
}

.comment-section h4 {
  line-height: 1;
  padding-bottom: 15px;
}

.comment-section ul li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 10px 20px;
  margin-bottom: 30px;
  border: 1px solid #e1e1e1;
}

.comment-section ul li:last-child {
  margin-bottom: 5px;
}

@media only screen and (max-width: 479.98px) {
  .comment-section ul li {
    display: block;
  }
}

.comment-section ul li .author-avatar {
  -webkit-flex-basis: 66px;
      -ms-flex-preferred-size: 66px;
          flex-basis: 66px;
  max-height: 62px;
  margin-right: 10px;
}

@media only screen and (max-width: 479.98px) {
  .comment-section ul li .author-avatar {
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    max-width: 66px;
    height: 62px;
  }
}

.comment-section ul li.comment-children {
  margin-left: 40px;
}

@media only screen and (max-width: 479.98px) {
  .comment-section ul li.comment-children {
    margin-left: 20px;
  }
}

.comment-section ul li .comment-body {
  -webkit-flex-basis: 100%;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
}

.comment-section ul li .comment-body h5 {
  font-size: 14px;
  padding-bottom: 5px;
  font-family: "Sarabun", sans-serif;
}

.comment-section ul li .comment-body .comment-post-date {
  font-size: 13px;
  padding-bottom: 10px;
}

.comment-section ul li .comment-body .reply-btn {
  float: right;
}

.comment-section ul li .comment-body .reply-btn a {
  color: #151515;
  font-size: 12px;
  display: inline-block;
  padding: 4px 15px;
  border-radius: 20px;
  text-transform: capitalize;
  border: 1px solid #e1e1e1;
}

.comment-section ul li .comment-body .reply-btn a:hover {
  color: #fff;
  border-color: #f1592a;
  background-color: #f1592a;
}

/*--- blog comment section end ---*/
/*------ blog comment box start -----*/
.blog-comment-wrapper {
  margin-top: -10px;
}

@media only screen and (max-width: 767.98px) {
  .blog-comment-wrapper {
    margin-top: -14px;
  }
}

.blog-comment-wrapper p {
  padding-top: 10px;
}

.blog-comment-wrapper .comment-post-box label {
  color: #151515;
  font-weight: 500;
  margin-bottom: 10px;
  display: block;
  text-transform: capitalize;
}

.blog-comment-wrapper .comment-post-box .coment-field {
  background: #f8f8f8;
  border: none;
  color: #151515;
  padding: 8px 10px;
  width: 100%;
  border: 1px solid #e1e1e1;
}

@media only screen and (max-width: 767.98px) {
  .blog-comment-wrapper .comment-post-box .coment-field {
    margin-bottom: 20px;
  }
}

.blog-comment-wrapper .comment-post-box textarea {
  height: 130px;
  margin-bottom: 20px;
  padding: 10px;
  width: 100%;
  background: #f8f8f8;
  border: 1px solid #e1e1e1;
}

.blog-comment-wrapper .comment-post-box .coment-btn {
  margin-top: 30px;
}

@media only screen and (max-width: 767.98px) {
  .blog-comment-wrapper .comment-post-box .coment-btn {
    margin-top: 10px;
  }
}

/*------- blog comment box end --------*/
/*----- Google map area start -----*/
#google-map {
  height: 500px;
  width: 100%;
}

@media only screen and (min-width: 768px) and (max-width: 991.98px) {
  #google-map {
    height: 400px;
  }
}

@media only screen and (max-width: 767.98px) {
  #google-map {
    height: 350px;
  }
}

/*----- Google map area end -----*/
/*------ contact form area start -------*/
.contact-message form input,
.contact-message form textarea {
  width: 100%;
  border: none;
  padding: 10px 10px;
  border-bottom: 3px solid transparent;
  background-color: none;
  margin-bottom: 30px;  border-bottom: 1px solid #dcdcdc; border-radius: 5px;
}
.contact-message form input,
.contact-message form select {
  width: 100%;
  border: none;
  padding: 6px 10px; 
  border-bottom: 3px solid transparent;
  background-color: none;
  margin-bottom: 30px;  border-bottom: 1px solid #dcdcdc; border-radius: 5px;
}

.contact-message form textarea {
  height: 70px;
}

/*------ contact form area start -------*/
/*------ contact info area start -------*/
.contact-information {
  height: 100%;
  padding-left: 30px;
}

@media only screen and (min-width: 768px) and (max-width: 991.98px), only screen and (max-width: 767.98px) {
  .contact-information {
    margin-bottom: 65px;
    padding-left: 0;
  }
}

.contact-information p {
  padding-bottom: 30px;
}

@media only screen and (min-width: 768px) and (max-width: 991.98px), only screen and (max-width: 767.98px) {
  .contact-information p {
    padding-bottom: 10px;
  }
}

.contact-information ul li {
  border-bottom: 1px solid #e1e1e1;
  padding-bottom: 15px;
  margin-bottom: 15px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

@media only screen and (max-width: 479.98px) {
  .contact-information ul li {
    -webkit-box-align: baseline;
    -webkit-align-items: baseline;
        -ms-flex-align: baseline;
            align-items: baseline;
  }
}

.contact-information ul li:last-child {
  border-bottom: none;
  margin-bottom: 0;
  padding-bottom: 0;
}

.contact-information ul li i {
  font-size: 18px;
  padding-right: 10px;
}

.contact-title {
  padding-bottom: 35px;
}

@media only screen and (min-width: 768px) and (max-width: 991.98px), only screen and (max-width: 767.98px) {
  .contact-title {
    margin-top: -13px;
    padding-bottom: 20px;
  }
}

/*------ contact info area end -------*/
/*---------- faq style start ----------*/
.faq-inner .card {
  border: none;
  margin-bottom: 30px;
}

.faq-inner .card:last-child {
  margin-bottom: 0;
}

.faq-inner .card .card-body {
  line-height: 1.8;
  border: 1px solid #e1e1e1;
}

.card-header {
  padding: 0;
  border: none;
}

.card-header button {
  color: #151515;
  font-size: 16px;
  font-weight: 500;
  width: 100%;
  line-height: 1.2;
  padding: 16px 30px;
  text-align: left;
  text-transform: capitalize;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #f8f8f8;
  position: relative;
}

@media only screen and (max-width: 479.98px) {
  .card-header button {
    padding: 12px 10px;
  }
}

.card-header button:hover {
  background-color: #f1592a;
  color: #fff;
}

.card-header button i {
  color: #f1592a;
  font-size: 20px;
  padding-right: 10px;
}

.card-header button:before {
  top: 50%;
  right: 20px;
  content: "\f107";
  position: absolute;
  font-family: "FontAwesome";
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
}

@media only screen and (max-width: 479.98px) {
  .card-header button:before {
    right: 10px;
  }
}

.faq-inner .card-header .accordio-heading[aria-expanded="false"] {
  background-color: #f8f8f8;
}

.faq-inner .card-header .accordio-heading[aria-expanded="true"] {
  color: #fff;
  background-color: #f1592a;
}

.faq-inner .card-header .accordio-heading[aria-expanded="true"] i {
  color: #fff;
}

.faq-inner .card-header .accordio-heading[aria-expanded="true"]:before {
  content: "\f106";
}

/*---------- faq style end ----------*/
.error h1 {
  font-size: 200px;
  font-weight: 900;
  letter-spacing: 1rem;
  line-height: 1;
  margin-top: -44px;
  color: #f1592a;
}

@media only screen and (min-width: 768px) and (max-width: 991.98px) {
  .error h1 {
    font-size: 130px;
    margin-top: -30px;
  }
}

@media only screen and (max-width: 767.98px) {
  .error h1 {
    font-size: 100px;
    margin-top: -23px;
  }
}

.error h2 {
  font-size: 25px;
  padding: 10px 0;
}

@media only screen and (max-width: 479.98px) {
  .error h2 {
    font-size: 20px;
  }
}

.error .searchform {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-top: 40px;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}

.error .searchform__input {
  border: 1px solid #e1e1e1;
  height: 45px;
  width: 100%;
  padding-left: 15px;
}

@media only screen and (max-width: 479.98px) {
  .error .searchform__input {
    width: 85%;
  }
}

.error .searchform__submit {
  border: none;
  background-color: #f1592a;
  width: 70px;
  color: #fff;
  cursor: pointer;
}

.error .searchform__submit:hover {
  background-color: #151515;
}

.error .btn-all {
  margin-top: 30px;
}

/*----- footer section start -----*/
@media only screen and (min-width: 768px) and (max-width: 991.98px), only screen and (max-width: 767.98px) {
  .footer-widget-area.pb-125 {
    padding-bottom: 67px;
  }
}

.widget-logo {
  max-width: 110px;
  margin-bottom: 30px;
}

.widget-title {
  font-weight: 800;
  margin-bottom: 38px;
}

@media only screen and (min-width: 768px) and (max-width: 991.98px), only screen and (max-width: 767.98px) {
  .widget-title {
    margin: -6px 0 20px;
  }
}

.widget-body .desc {
  color: #151515;
}
.desc { font-size: 20px !important; color: #353535; line-height: 35px; font-weight: normal; font-weight: 100; } 
.news-subtitle p b {
  font-weight: 600;
  padding-top: 5px;
  padding-bottom: 8px;
}

.contact-info {
  padding-top: 12px;
}

.contact-info li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  line-height: 1.5;
  margin-bottom: 22px;
}

.contact-info li span {
  font-weight: 600;
  padding-right: 5px;
}

.contact-info li:last-child {
  margin-bottom: 0;
}

.useful-link li {
  line-height: 1.7;
  margin-bottom: 20px;
  width: 50%;
  float: left;
}

.useful-link li a {
  color: #151515;
  position: relative;
  padding-left: 18px;
}

.useful-link li a:before {
  top: 50%;
  left: 0;
  content: '\f101';
  position: absolute;
  font-family: "FontAwesome";
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
}

.useful-link li a:hover {
  color: #f1592a;
  padding-left: 25px;
}

.useful-link li:last-child {
  margin-bottom: 0;
  clear: both;
}

.twitter-post {
  padding-right: 25px;
}

.twitter-post li:not(:last-child) {
  margin-bottom: 22px;
}

.newsletter-inner {
  margin-top: 15px;
}

.newsletter-inner form {
  position: relative;
}

.newsletter-inner .news-field {
  font-size: 14px;
  width: 78%;
  height: 50px;
  line-height: 1;
  color: #151515;
  padding: 0 25px;
  border: 1px solid #e1e1e1;
  border-radius: 50px;
  margin-bottom: 20px;
}

.newsletter-inner .btn {
  background-color: #f1592a;
}

.newsletter-inner .btn:hover {
  background-color: #151515;
}

.footer-bottom {
  padding: 21px 0;
}

.copyright-text p {
  font-weight: 600;
}

.copyright-text p a {
  color: #f1592a;
}

@media only screen and (min-width: 1600px) {
  .footer-widget-area [class*="col-"] .footer-single-widget {
    padding-left: 18px;
  }
}

@media only screen and (min-width: 1600px) {
  .footer-widget-area [class*="col-"]:first-child .footer-single-widget {
    padding-left: 0;
  }
}

/*----- footer section end -----*/

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIl90YWJsZW9mY29udGVudC5zY3NzIiwic3R5bGUuY3NzIiwiX3R5cG9ncmFwaHkuc2NzcyIsIl92YXJpYWJsZXMuc2NzcyIsImNvbXBvbmVudHMvX3NwYWNpbmcuc2NzcyIsImNvbXBvbmVudHMvX2hlYWRlci5zY3NzIiwiY29tcG9uZW50cy9fb2ZmY2FudmFzLnNjc3MiLCJjb21wb25lbnRzL19idXR0b25zLnNjc3MiLCJjb21wb25lbnRzL19jb21tb24uc2NzcyIsImNvbXBvbmVudHMvX3NsaWRlci5zY3NzIiwiY29tcG9uZW50cy9fYWJvdXQuc2NzcyIsImNvbXBvbmVudHMvX3NlcnZpY2Uuc2NzcyIsImNvbXBvbmVudHMvX3Rlc3RpbW9uaWFsLnNjc3MiLCJjb21wb25lbnRzL19icmVhZGNydW1iLnNjc3MiLCJjb21wb25lbnRzL190ZWFtLnNjc3MiLCJjb21wb25lbnRzL19wcmljaW5nLnNjc3MiLCJjb21wb25lbnRzL19wYWdpbmF0aW9uLnNjc3MiLCJwYWdlcy9fYmxvZy5zY3NzIiwicGFnZXMvX2NvbnRhY3Quc2NzcyIsInBhZ2VzL19mYXEuc2NzcyIsInBhZ2VzL180MDQuc2NzcyIsImNvbXBvbmVudHMvX2Zvb3Rlci5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7O29FQ2FvRTtBQ2JwRSx1Q0FBQTtBQUVBO0VBQ0ksY0NNZTtFRExmLGdCQUFnQjtFQUNoQixlQUFlO0VBQ2YsZ0JBQWdCO0VBQ2hCLGtDQ0xNO0FGbUJWOztBQ1hBO0VBQ0ksd0JBQWdCO0VBQWhCLG1CQUFnQjtFQUFoQixnQkFBZ0I7QURjcEI7O0FDZkE7RUFLUSxhQUFhO0VBQ2IscUJBQXFCO0FEYzdCOztBQ1ZBO0VBQ0ksa0JBQWtCO0FEYXRCOztBQ2RBO0VBSVEsZ0JBQWdCO0FEY3hCOztBQ1ZBOzs7Ozs7RUFNSSxrQ0M5Qk07RUQrQk4sY0NMZ0I7RURNaEIsZ0JBQWdCO0VBQ2hCLGdCQUFnQjtFQUNoQixTQUFTO0FEYWI7O0FDVkE7Ozs7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LGNsQmpFSztFa0JrRUwsa0JBQWtCO0FwQmc5RmxDOztBb0J2K0ZBO0VBNEJZLGdCQUFnQjtFQUNoQixXQUFXO0FwQis4RnZCOztBb0J6OEZBO0VBQ0ksbUJBQW1CO0FwQjQ4RnZCOztBb0I3OEZBO0VBSVEsbUJBQW1CO0FwQjY4RjNCOztBb0J4OEZBO0VBQ0ksZ0JBQWdCO0FwQjI4RnBCOztBb0I1OEZBO0VBSVEsa0JBQWtCO0FwQjQ4RjFCOztBb0JoOUZBO0VBUVEsZUFBZTtFQUNmLFdBQVc7RUFDWCxZQUFZO0VBQ1osY0FBYztFQUNkLGNsQnRGWTtFa0J1RlosZUFBZTtFQUNmLHlCbEJqR1c7RWtCa0dYLG1CQUFtQjtFQUNuQixtQkFBbUI7QXBCNDhGM0I7O0FvQjU5RkE7RUFvQlEseUJsQjFHZTtBRnNqR3ZCOztBb0JoK0ZBO0VBdUJZLHlCbEJqR1E7QUY4aUdwQjs7QW9CdjhGQTtFQUNJLGVBQWU7QXBCMDhGbkI7O0FvQnY4RkE7RUFFUSxnQkFBZ0I7QXBCeThGeEI7O0FvQjM4RkE7RUFLWSxjbEI3SFM7QUZ1a0dyQjs7QW9CaDhGWTtFQUxaO0lBTWdCLGtCQUFrQjtFcEJvOEZoQztBQUNGOztBb0I3N0ZnQjtFQWRoQjtJQWVvQixlQUFlO0VwQmk4RmpDO0FBQ0Y7O0FvQjM3RkEsaUNBQUEiLCJmaWxlIjoic3R5bGUuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblRhYmxlIG9mIGNvbnRlbnRcbi0tLS0tLS0tLS0tLS0tLS0tLS1cbjEuIFN0YXJ0IEhlYWRlciBBcmVhXG4yLiBzbGlkZXIgYXJlYSBzdGFydFxuMy4gZmVhdHVyZXMgYXJlYSBjc3Mgc3RhcnRcbjQuIHRlc3RpbW9uaWFsXG41LiBibG9nXG42LiBhYm91dCB1c1xuNy4gY29udGFjdCB1c1xuOC4gYmFubmVyXG45LiBzaWRlYmFyXG4xMC4gZm9vdGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuVGFibGUgb2YgY29udGVudFxuLS0tLS0tLS0tLS0tLS0tLS0tLVxuMS4gU3RhcnQgSGVhZGVyIEFyZWFcbjIuIHNsaWRlciBhcmVhIHN0YXJ0XG4zLiBmZWF0dXJlcyBhcmVhIGNzcyBzdGFydFxuNC4gdGVzdGltb25pYWxcbjUuIGJsb2dcbjYuIGFib3V0IHVzXG43LiBjb250YWN0IHVzXG44LiBiYW5uZXJcbjkuIHNpZGViYXJcbjEwLiBmb290ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0gVHlwb2dyYXBoeSBTdHlsZSBTdGFydCAtLS0tLS0qL1xuYm9keSB7XG4gIGNvbG9yOiAjMTUxNTE1O1xuICBsaW5lLWhlaWdodDogMS43O1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtZmFtaWx5OiBcIlNhcmFidW5cIiwgc2Fucy1zZXJpZjtcbn1cblxuYSB7XG4gIHRyYW5zaXRpb246IDAuNHM7XG59XG5cbmE6aG92ZXIsIGE6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbnAge1xuICBtYXJnaW4tYm90dG9tOiA4cHg7XG59XG5cbnA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNiB7XG4gIGZvbnQtZmFtaWx5OiBcIlNhcmFidW5cIiwgc2Fucy1zZXJpZjtcbiAgY29sb3I6ICMxNTE1MTU7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIG1hcmdpbjogMDtcbn1cblxuLmgxLFxuLmgyLFxuLmgzLFxuLmg0LFxuLmg1LFxuLmg2IHtcbiAgbWFyZ2luOiAwO1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuXG5oMSxcbi5oMSB7XG4gIGZvbnQtc2l6ZTogMzZweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICBoMSxcbiAgLmgxIHtcbiAgICBmb250LXNpemU6IDI4cHg7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NzkuOThweCkge1xuICBoMSxcbiAgLmgxIHtcbiAgICBmb250LXNpemU6IDI2cHg7XG4gIH1cbn1cblxuaDIsXG4uaDIge1xuICBmb250LXNpemU6IDMwcHg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgaDIsXG4gIC5oMiB7XG4gICAgZm9udC1zaXplOiAyNnB4O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDc5Ljk4cHgpIHtcbiAgaDIsXG4gIC5oMiB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICB9XG59XG5cbmgzLFxuLmgzIHtcbiAgZm9udC1zaXplOiAyNHB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIGgzLFxuICAuaDMge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgfVxufVxuXG5oNCxcbi5oNCB7XG4gIGZvbnQtc2l6ZTogMjBweDtcbn1cblxuaDUsXG4uaDUge1xuICBmb250LXNpemU6IDE4cHg7XG59XG5cbmg2LFxuLmg2IHtcbiAgZm9udC1zaXplOiAxNnB4O1xufVxuXG51bCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxudWwgbGkge1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG5zdHJvbmcsXG5iIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuYWRkcmVzcyB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMDtcbn1cblxuaW1nIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB0cmFuc2l0aW9uOiAwLjRzO1xufVxuXG4uYmctaW1nIHtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuXG4uYnRuLFxuYnV0dG9uIHtcbiAgYm9yZGVyOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG91dGxpbmU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIHRyYW5zaXRpb246IDAuNHM7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uYnRuOmFjdGl2ZSwgLmJ0bjpmb2N1cyxcbmJ1dHRvbjphY3RpdmUsXG5idXR0b246Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG5pbnB1dCxcbnRleHRhcmVhIHtcbiAgcmVzaXplOiBub25lO1xufVxuXG5pbnB1dDpmb2N1cyxcbnRleHRhcmVhOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLmZvcm0tY29udHJvbDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzAxNzJkMDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLyotLS0tLS0tLS0gc2xpY2sgc2xpZGVyIGRvdCBzdHlsZSBzdGFydCAtLS0tLS0tKi9cbi5zbGljay1kb3Qtc3R5bGUgdWwuc2xpY2stZG90cyB7XG4gIGJvdHRvbTogMTVweDtcbiAgbGVmdDogNTAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbn1cblxuLnNsaWNrLWRvdC1zdHlsZSB1bC5zbGljay1kb3RzIGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG59XG5cbi5zbGljay1kb3Qtc3R5bGUgdWwuc2xpY2stZG90cyBsaTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG4uc2xpY2stZG90LXN0eWxlIHVsLnNsaWNrLWRvdHMgbGkgYnV0dG9uIHtcbiAgd2lkdGg6IDE0cHg7XG4gIGhlaWdodDogMTRweDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1pbmRlbnQ6IC01MDAwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICB0cmFuc2l0aW9uOiAwLjRzO1xuICBib3JkZXI6IDJweCBzb2xpZCAjNzc3Nzc3O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLnNsaWNrLWRvdC1zdHlsZSB1bC5zbGljay1kb3RzIGxpLnNsaWNrLWFjdGl2ZSBidXR0b24ge1xuICBib3JkZXItY29sb3I6ICMwMTcyZDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMTcyZDA7XG59XG5cbi5jb250YWluZXIge1xuICBtYXgtd2lkdGg6IDEyMDBweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAuY29udGFpbmVyIHtcbiAgICBtYXgtd2lkdGg6IDU1MHB4O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcbiAgLmNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiA0NTBweDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3OS45OHB4KSB7XG4gIC5jb250YWluZXIge1xuICAgIG1heC13aWR0aDogMzAwcHg7XG4gIH1cbn1cblxuLyotLS0tLS0tIHNob3J0IGNsYXNzZXMgc3RhcnQgLS0tLS0tLSovXG4uc2VjdGlvbi1wYWRkaW5nIHtcbiAgcGFkZGluZzogMTMwcHggMDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MS45OHB4KSwgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC5zZWN0aW9uLXBhZGRpbmcge1xuICAgIHBhZGRpbmc6IDY4cHggMDtcbiAgfVxufVxuXG4uc2VjdGlvbi1wYWRkaW5nLS1wdGJfOTAge1xuICBwYWRkaW5nOiA5MHB4IDA7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTEuOThweCksIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAuc2VjdGlvbi1wYWRkaW5nLS1wdGJfOTAge1xuICAgIHBhZGRpbmc6IDY4cHggMDtcbiAgfVxufVxuXG4uc2VjdGlvbi1wYWRkaW5nLS1wdF84MCB7XG4gIHBhZGRpbmctdG9wOiA4MHB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxLjk4cHgpLCBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLnNlY3Rpb24tcGFkZGluZy0tcHRfODAge1xuICAgIHBhZGRpbmctdG9wOiA2OHB4O1xuICB9XG59XG5cbi5zZWN0aW9uLXBhZGRpbmctLXBiXzEyMCB7XG4gIHBhZGRpbmctYm90dG9tOiAxMjBweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MS45OHB4KSwgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC5zZWN0aW9uLXBhZGRpbmctLXBiXzEyMCB7XG4gICAgcGFkZGluZy1ib3R0b206IDY4cHg7XG4gIH1cbn1cblxuLnBiLTEyNSB7XG4gIHBhZGRpbmctYm90dG9tOiAxMjVweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MS45OHB4KSwgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC5wYi0xMjUge1xuICAgIHBhZGRpbmctYm90dG9tOiA2MHB4O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnBsLWxnLTQ1IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDQ1cHg7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAucHItbGctNDUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDQ1cHg7XG4gIH1cbn1cblxuLm1iLTMwIHtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cblxuLm10LTIwIHtcbiAgbWFyZ2luLXRvcDogMjBweDtcbn1cblxuLm1iLTIwIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cblxuLm10LTEwIHtcbiAgbWFyZ2luLXRvcDogMTBweDtcbn1cblxuLm10LTMwIHtcbiAgbWFyZ2luLXRvcDogMzBweDtcbn1cblxuLm10LTQwIHtcbiAgbWFyZ2luLXRvcDogNDBweDtcbn1cblxuLm10LTUwIHtcbiAgbWFyZ2luLXRvcDogNTBweDtcbn1cblxuLm10LTY1IHtcbiAgbWFyZ2luLXRvcDogNjVweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MS45OHB4KSwgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC5tdC02NSB7XG4gICAgbWFyZ2luLXRvcDogNDBweDtcbiAgfVxufVxuXG4ubXQtMTAwIHtcbiAgbWFyZ2luLXRvcDogMTAwcHg7XG59XG5cbi5tdG4tMjAge1xuICBtYXJnaW4tdG9wOiAtMjBweDtcbn1cblxuLm1ibi0zMCB7XG4gIG1hcmdpbi1ib3R0b206IC0zMHB4O1xufVxuXG4ubXRuLTMwIHtcbiAgbWFyZ2luLXRvcDogLTMwcHg7XG59XG5cbi5tdG4tNDAge1xuICBtYXJnaW4tdG9wOiAtNDBweDtcbn1cblxuLm10bi02NSB7XG4gIG1hcmdpbi10b3A6IC02NXB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxLjk4cHgpLCBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLm10bi02NSB7XG4gICAgbWFyZ2luLXRvcDogLTQwcHg7XG4gIH1cbn1cblxuLm10bi0xMCB7XG4gIG1hcmdpbi10b3A6IC0xMHB4O1xufVxuXG4ubXRiLTMwIHtcbiAgbWFyZ2luLXRvcDogMzBweDtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cblxuLm10bi00MCB7XG4gIG1hcmdpbi10b3A6IC00MHB4O1xufVxuXG4ucHRiLTMwIHtcbiAgcGFkZGluZzogMzBweCAwO1xufVxuXG4ubXRuLTEwMCB7XG4gIG1hcmdpbi10b3A6IC0xMDBweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gIC5tdG1kLTAge1xuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC5tdHNtLTAge1xuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vKi0tLS0tLS0gc2hvcnQgY2xhc3NlcyBlbmQgLS0tLS0tLSovXG4vKi0tLS0tLS0gaGVhZGVyIHRvcCBzdHlsZSBzdGFydCAtLS0tLS0tKi9cbi5oZWFkZXItdG9wIHtcbiAgcGFkZGluZzogMTJweCAwO1xufVxuXG4uaGVhZGVyLXRvcC1sZWZ0IHtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MS45OHB4KSwgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC5oZWFkZXItdG9wLWxlZnQge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgfVxufVxuXG4uaGVhZGVyLXRvcC1sZWZ0IGEge1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLmhlYWRlci10b3AtbGVmdCBhOmhvdmVyIHtcbiAgY29sb3I6ICMxNTE1MTU7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcbiAgLmxvZ2luLXJlZ2lzdGVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNnB4O1xuICB9XG59XG5cbi5sb2dpbi1yZWdpc3RlciBhIHtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5sb2dpbi1yZWdpc3RlciBhOmhvdmVyIHtcbiAgY29sb3I6ICMxNTE1MTU7XG59XG5cbi5oZWFkZXItc29jaWFsLWxpbmsgYSB7XG4gIGNvbG9yOiAjZmZmO1xuICBtYXJnaW4tbGVmdDogMjZweDtcbn1cblxuLmhlYWRlci1zb2NpYWwtbGluayBhOmhvdmVyIHtcbiAgY29sb3I6ICMxNTE1MTU7XG59XG5cbi5oZWFkZXItc29jaWFsLWxpbmsgYTpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4vKi0tLS0tLS0gaGVhZGVyIHRvcCBzdHlsZSBlbmQgLS0tLS0tLSovXG4vKi0tLS0tLSBtYWluIG1lbnUgc3RhcnQgLS0tLS0tKi9cbi5icmFuZC1sb2dvIHtcbiAgbWF4LXdpZHRoOiAxMTBweDtcbn1cblxuLm1haW4tbWVudS13cmFwcGVyIHtcbiAgcGFkZGluZzogMjBweCAwO1xufVxuXG4ubWFpbi1tZW51LXdyYXBwZXIuaGVhZGVyLXRyYW5zcGFyZW50IHtcbiAgcGFkZGluZzogNDNweCAwO1xufVxuXG4ubWFpbi1tZW51IHVsIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xufVxuXG4ubWFpbi1tZW51IHVsIGxpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ubWFpbi1tZW51IHVsIGxpIGEge1xuICBjb2xvcjogIzE1MTUxNTtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBwYWRkaW5nOiAxMHB4IDIycHg7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LWZhbWlseTogXCJTYXJhYnVuXCIsIHNhbnMtc2VyaWY7XG59XG5cbi5tYWluLW1lbnUgdWwgbGkgYSBpIHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBwYWRkaW5nOiAwIDNweDtcbn1cblxuLm1haW4tbWVudSB1bCBsaTpsYXN0LWNoaWxkIGEge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xufVxuXG4ubWFpbi1tZW51IHVsIGxpOmhvdmVyID4gYSwgLm1haW4tbWVudSB1bCBsaS5hY3RpdmUgPiBhIHtcbiAgY29sb3I6ICMwMTcyZDA7XG59XG5cbi5tYWluLW1lbnUgdWwgbGkgdWwuZHJvcGRvd24ge1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxNzVweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0cmFuc2l0aW9uOiAwLjRzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBvcGFjaXR5OiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHotaW5kZXg6IDk5OTk5O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwcHgpO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZWZlZmVmO1xufVxuXG4ubWFpbi1tZW51IHVsIGxpIHVsLmRyb3Bkb3duIGxpIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gIGZsZXgtYmFzaXM6IDEwMCU7XG59XG5cbi5tYWluLW1lbnUgdWwgbGkgdWwuZHJvcGRvd24gbGkgYSB7XG4gIGNvbG9yOiAjMTUxNTE1O1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlZmVmZWY7XG4gIHotaW5kZXg6IDE7XG59XG5cbi5tYWluLW1lbnUgdWwgbGkgdWwuZHJvcGRvd24gbGkgYSBpIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBwYWRkaW5nLXRvcDogNXB4O1xufVxuXG4ubWFpbi1tZW51IHVsIGxpIHVsLmRyb3Bkb3duIGxpOmhvdmVyID4gYSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDE3MmQwO1xufVxuXG4ubWFpbi1tZW51IHVsIGxpIHVsLmRyb3Bkb3duIGxpOmhvdmVyID4gdWwuZHJvcGRvd24ge1xuICB0b3A6IDA7XG4gIG9wYWNpdHk6IDE7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG5cbi5tYWluLW1lbnUgdWwgbGkgdWwuZHJvcGRvd24gbGk6bGFzdC1jaGlsZCBhIHtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbn1cblxuLm1haW4tbWVudSB1bCBsaSB1bC5kcm9wZG93biBsaSB1bC5kcm9wZG93biB7XG4gIHRvcDogMTAwJTtcbiAgbGVmdDogMTAwJTtcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4ubWFpbi1tZW51IHVsIGxpOmhvdmVyIHVsLmRyb3Bkb3duIHtcbiAgb3BhY2l0eTogMTtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgcG9pbnRlci1ldmVudHM6IHZpc2libGU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDApO1xufVxuXG4vKi0tLS0tLSBtYWluIG1lbnUgZW5kIC0tLS0tLSovXG4vKi0tLS0tLSBzdGlja3kgbWVudSBzdHlsZSBzdGFydCAtLS0tLS0qL1xuLnN0aWNreS5pcy1zdGlja3kge1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJveC1zaGFkb3c6IDAgMCA4cHggMXB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgYW5pbWF0aW9uOiA5MDBtcyBjdWJpYy1iZXppZXIoMC4yLCAxLCAwLjIyLCAxKSAwcyBub3JtYWwgbm9uZSAxIHJ1bm5pbmcgZmFkZUluRG93bjtcbn1cblxuLnN0aWNreS5pcy1zdGlja3kubWFpbi1tZW51LXdyYXBwZXIge1xuICBwYWRkaW5nOiAxMHB4IDA7XG59XG5cbi5zdGlja3kuaXMtc3RpY2t5Lm1haW4tbWVudS13cmFwcGVyIC5icmFuZC1sb2dvIHtcbiAgbWF4LXdpZHRoOiAxMDBweDtcbn1cblxuLyotLS0tLS0gc3RpY2t5IG1lbnUgc3R5bGUgZW5kIC0tLS0tLSovXG4uaGVhZGVyLXRyYW5zcGFyZW50IHtcbiAgdG9wOiA1NHB4O1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLyotLS0tLSBtb2JpbGUgbWVudSBzdGFydCAtLS0tLSovXG4ubW9iaWxlLWhlYWRlciB7XG4gIHBhZGRpbmc6IDE1cHggMDtcbn1cblxuLm1vYmlsZS1sb2dvIHtcbiAgbWF4LXdpZHRoOiAxMDBweDtcbn1cblxuLm1vYmlsZS1tYWluLWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cblxuLm1vYmlsZS1tYWluLWhlYWRlciAubW9iaWxlLW1lbnUtdG9nZ2xlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5tb2JpbGUtbWFpbi1oZWFkZXIgLm1vYmlsZS1tZW51LXRvZ2dsZXIgLm1vYmlsZS1tZW51LWJ0biB7XG4gIG1hcmdpbi1sZWZ0OiAyNXB4O1xufVxuXG4ubW9iaWxlLW1haW4taGVhZGVyIC5tb2JpbGUtbWVudS10b2dnbGVyIC5tb2JpbGUtbWVudS1idG4gc3BhbiB7XG4gIHdpZHRoOiAyNXB4O1xuICBoZWlnaHQ6IDJweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRyYW5zaXRpb246IDAuNHM7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNTE1MTU7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQ7XG59XG5cbi5tb2JpbGUtbWFpbi1oZWFkZXIgLm1vYmlsZS1tZW51LXRvZ2dsZXIgLm1vYmlsZS1tZW51LWJ0biBzcGFuOm50aC1jaGlsZCgyKSwgLm1vYmlsZS1tYWluLWhlYWRlciAubW9iaWxlLW1lbnUtdG9nZ2xlciAubW9iaWxlLW1lbnUtYnRuIHNwYW46bnRoLWNoaWxkKDMpIHtcbiAgbWFyZ2luLXRvcDogNXB4O1xufVxuXG4ubW9iaWxlLW1haW4taGVhZGVyIC5tb2JpbGUtbWVudS10b2dnbGVyIC5tb2JpbGUtbWVudS1idG46aG92ZXIgc3BhbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMTcyZDA7XG59XG5cbi5tb2JpbGUtbWFpbi1oZWFkZXIgLm1vYmlsZS1tZW51LXRvZ2dsZXIgLm1vYmlsZS1tZW51LWJ0bjpob3ZlciBzcGFuOm50aC1jaGlsZCgxKSwgLm1vYmlsZS1tYWluLWhlYWRlciAubW9iaWxlLW1lbnUtdG9nZ2xlciAubW9iaWxlLW1lbnUtYnRuOmhvdmVyIHNwYW46bnRoLWNoaWxkKDMpIHtcbiAgd2lkdGg6IDIwcHg7XG59XG5cbi5tb2JpbGUtbmF2aWdhdGlvbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1heC1oZWlnaHQ6IDM2MHB4O1xuICBwYWRkaW5nOiAyMHB4O1xufVxuXG4ubW9iaWxlLW5hdmlnYXRpb24gbmF2IHtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4ubW9iaWxlLW1lbnUge1xuICBtYXJnaW4tdG9wOiAzMHB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICBtYXJnaW4tcmlnaHQ6IC0zMHB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3OS45OHB4KSB7XG4gIC5tb2JpbGUtbWVudSB7XG4gICAgbWFyZ2luLXRvcDogMTVweDtcbiAgfVxufVxuXG4ubW9iaWxlLW1lbnUgbGkgPiBhIHtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMTBweCAwO1xufVxuXG4ubW9iaWxlLW1lbnUgbGkgPiBhOmhvdmVyIHtcbiAgY29sb3I6ICMxNTE1MTU7XG59XG5cbi5tb2JpbGUtbWVudSBsaSB1bCBsaSB7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuLm1vYmlsZS1tZW51IGxpIHVsIGxpIGEge1xuICBmb250LXNpemU6IDE0cHg7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICBwYWRkaW5nOiAxMHB4IDAgOHB4O1xufVxuXG4ubW9iaWxlLW1lbnUgbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5tb2JpbGUtbWVudSBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuIC5kcm9wZG93biB7XG4gIHBhZGRpbmctbGVmdDogMTVweDtcbn1cblxuLm1vYmlsZS1tZW51IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gLm1lbnUtZXhwYW5kIHtcbiAgbGluZS1oZWlnaHQ6IDUwO1xuICB0b3A6IC01cHg7XG4gIGxlZnQ6IDk1JTtcbiAgd2lkdGg6IDMwcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaGVpZ2h0OiA1MHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLm1vYmlsZS1tZW51IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gLm1lbnUtZXhwYW5kIGkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTBweDtcbiAgbWFyZ2luLXRvcDogMjVweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmZmY7XG4gIHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlLW91dDtcbn1cblxuLm1vYmlsZS1tZW51IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gLm1lbnUtZXhwYW5kIGk6YmVmb3JlIHtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2ZmZjtcbiAgdHJhbnNpdGlvbjogMC40cztcbn1cblxuLm1vYmlsZS1tZW51IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4uYWN0aXZlID4gLm1lbnUtZXhwYW5kIGk6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG59XG5cbi8qLS0tLS0gbW9iaWxlIG1lbnUgZW5kIC0tLS0tKi9cbi8qLS0tLS0tIG9mZmNhbnZhcyB3aWRnZXQgYXJlYSBzdGFydCAtLS0tLS0qL1xuLm9mZmNhbnZhcy13aWRnZXQtYXJlYSB7XG4gIG1hcmdpbi10b3A6IGF1dG87XG4gIHBhZGRpbmc6IDIwcHg7XG59XG5cbi5vZmYtY2FudmFzLWNvbnRhY3Qtd2lkZ2V0IGxpIHtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xufVxuXG4ub2ZmLWNhbnZhcy1jb250YWN0LXdpZGdldCBsaSBpIHtcbiAgd2lkdGg6IDIwcHg7XG59XG5cbi5vZmYtY2FudmFzLWNvbnRhY3Qtd2lkZ2V0IGxpIGEge1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLm9mZi1jYW52YXMtY29udGFjdC13aWRnZXQgbGkgYTpob3ZlciB7XG4gIGNvbG9yOiAjMTUxNTE1O1xufVxuXG4ub2ZmLWNhbnZhcy1zb2NpYWwtd2lkZ2V0IHtcbiAgbWFyZ2luLXRvcDogMjBweDtcbn1cblxuLm9mZi1jYW52YXMtc29jaWFsLXdpZGdldCBhIHtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG59XG5cbi5vZmYtY2FudmFzLXNvY2lhbC13aWRnZXQgYTpob3ZlciB7XG4gIGNvbG9yOiAjMTUxNTE1O1xufVxuXG4vKi0tLS0tLSBvZmZjYW52YXMgd2lkZ2V0IGFyZWEgZW5kIC0tLS0tLSovXG4ub2ZmLWNhbnZhcy13cmFwcGVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGhlaWdodDogMTAwdmg7XG4gIHdpZHRoOiAxMDB2dztcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB0cmFuc2l0aW9uOiAwLjRzO1xuICB6LWluZGV4OiA5OTk5O1xufVxuXG4ub2ZmLWNhbnZhcy13cmFwcGVyLm9wZW4ge1xuICBvcGFjaXR5OiAxO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuXG4ub2ZmLWNhbnZhcy13cmFwcGVyLm9wZW4gLm9mZi1jYW52YXMtaW5uZXItY29udGVudCB7XG4gIHRyYW5zZm9ybTogbm9uZTtcbn1cblxuLm9mZi1jYW52YXMtd3JhcHBlciAub2ZmLWNhbnZhcy1vdmVybGF5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xuICBjb250ZW50OiAnJztcbiAgY3Vyc29yOiB1cmwoXCIuLi9pbWcvaWNvbi9jYW5jZWwucG5nXCIpLCBhdXRvO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLm9mZi1jYW52YXMtd3JhcHBlciAub2ZmLWNhbnZhcy1pbm5lci1jb250ZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAxNzJkMDtcbiAgd2lkdGg6IDMwMHB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoLTEwMCUgLSA1MHB4KSk7XG4gIHRyYW5zaXRpb246IDAuNHM7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDc5Ljk4cHgpIHtcbiAgLm9mZi1jYW52YXMtd3JhcHBlciAub2ZmLWNhbnZhcy1pbm5lci1jb250ZW50IHtcbiAgICB3aWR0aDogMjcwcHg7XG4gIH1cbn1cblxuLm9mZi1jYW52YXMtd3JhcHBlciAuYnRuLWNsb3NlLW9mZi1jYW52YXMge1xuICB0b3A6IDA7XG4gIGxlZnQ6IDEwMCU7XG4gIHdpZHRoOiA2MHB4O1xuICBoZWlnaHQ6IDYwcHg7XG4gIGZvbnQtc2l6ZTogMjZweDtcbiAgY29sb3I6ICMwMTcyZDA7XG4gIGxpbmUtaGVpZ2h0OiA2MHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0cmFuc2l0aW9uOiAwLjRzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuXG4ub2ZmLWNhbnZhcy13cmFwcGVyIC5idG4tY2xvc2Utb2ZmLWNhbnZhcyBpIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIHRyYW5zaXRpb246IDAuNHM7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBsaW5lLWhlaWdodDogNjBweDtcbn1cblxuLm9mZi1jYW52YXMtd3JhcHBlciAuYnRuLWNsb3NlLW9mZi1jYW52YXM6aG92ZXIgaSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG59XG5cbi5vZmYtY2FudmFzLXdyYXBwZXIgLm9mZi1jYW52YXMtaW5uZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uc2VhcmNoLWJveC1vZmZjYW52YXMgZm9ybSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnNlYXJjaC1ib3gtb2ZmY2FudmFzIGZvcm0gaW5wdXQge1xuICBjb2xvcjogIzY2NjtcbiAgZm9udC1zaXplOiAxM3B4O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA2MHB4O1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmc6IDAgNDBweCAwIDEwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMmYyZjI7XG59XG5cbi5zZWFyY2gtYm94LW9mZmNhbnZhcyBmb3JtIC5zZWFyY2gtYnRuIHtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNjBweDtcbiAgbGluZS1oZWlnaHQ6IDYycHg7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgY29sb3I6ICMwMTcyZDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cblxuLnNlYXJjaC1ib3gtb2ZmY2FudmFzIGZvcm0gLnNlYXJjaC1idG46aG92ZXIge1xuICBjb2xvcjogIzAxNzJkMDtcbn1cblxuLyotLS0tLS0tIG1vYmlsZSB0b3AgYmFyIHNldHRpbmdzIHN0YXJ0IC0tLS0tLS0qL1xuLm1vYmlsZS1zZXR0aW5ncyB7XG4gIHBhZGRpbmctdG9wOiAxNXB4O1xuICBtYXJnaW4tdG9wOiAxNXB4O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2UxZTFlMTtcbn1cblxuLm1vYmlsZS1zZXR0aW5ncyBsaSB7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbn1cblxuLm1vYmlsZS1zZXR0aW5ncyAubmF2IHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cblxuLm1vYmlsZS1zZXR0aW5ncyAubmF2IC5tb2JpbGUtdG9wLWRyb3Bkb3duIC5kcm9wZG93bi10b2dnbGUge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGNvbG9yOiAjMTUxNTE1O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5tb2JpbGUtc2V0dGluZ3MgLm5hdiAubW9iaWxlLXRvcC1kcm9wZG93biAuZHJvcGRvd24tdG9nZ2xlIGkge1xuICBmb250LXNpemU6IDEycHg7XG4gIHBhZGRpbmctbGVmdDogNXB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4ubW9iaWxlLXNldHRpbmdzIC5uYXYgLm1vYmlsZS10b3AtZHJvcGRvd24gLmRyb3Bkb3duLXRvZ2dsZTpob3ZlciB7XG4gIGNvbG9yOiAjMDE3MmQwO1xufVxuXG4ubW9iaWxlLXNldHRpbmdzIC5uYXYgLm1vYmlsZS10b3AtZHJvcGRvd24gLmRyb3Bkb3duLXRvZ2dsZTphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5tb2JpbGUtc2V0dGluZ3MgLm5hdiAubW9iaWxlLXRvcC1kcm9wZG93biAuZHJvcGRvd24tbWVudSB7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlci1jb2xvcjogI2UxZTFlMTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDMwcHgpO1xuICB0cmFuc2l0aW9uOiAwLjRzO1xufVxuXG4ubW9iaWxlLXNldHRpbmdzIC5uYXYgLm1vYmlsZS10b3AtZHJvcGRvd24gLmRyb3Bkb3duLW1lbnUuc2hvdyB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbn1cblxuLm1vYmlsZS1zZXR0aW5ncyAubmF2IC5tb2JpbGUtdG9wLWRyb3Bkb3duIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1pdGVtIHtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBjb2xvcjogIzE1MTUxNTtcbiAgcGFkZGluZzogNnB4IDE1cHg7XG59XG5cbi8qLS0tLS0tLSBtb2JpbGUgdG9wIGJhciBzZXR0aW5ncyBlbmQgLS0tLS0tLSovXG4vKi0tLS0tLS0gQnV0dG9ucyBTdHlsZSBoZXJlIC0tLS0tLS0qL1xuLmJ0biB7XG4gIGNvbG9yOiAjZmZmO1xuICBsaW5lLWhlaWdodDogMTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgZm9udC1mYW1pbHk6IFwiU2FyYWJ1blwiLCBzYW5zLXNlcmlmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDE3MmQwO1xuICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICBmb250LXdlaWdodDogNTAwO1xufVxuXG4uYnRuOmhvdmVyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNTE1MTU7XG59XG5cbi5idG4taGVybyB7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgcGFkZGluZzogMTNweCAyNHB4IDE1cHggMjRweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAuYnRuLWhlcm8ge1xuICAgIHBhZGRpbmc6IDE1cHggMjVweDtcbiAgfVxufVxuXG4uYnRuLWFsbCB7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgcGFkZGluZzogMTRweCAyNHB4IDE1cHggMjRweDtcbn1cblxuLyotLS0tLS0tIGNvbW1vbiBjc3Mgc3RhcnQgLS0tLS0tLSovXG4uZml4IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnNlY3Rpb24tdGl0bGUge1xuICBtYXgtd2lkdGg6IDQxMHB4O1xuICBtYXJnaW46IGF1dG87XG4gIG1hcmdpbi1ib3R0b206IDY4cHg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTEuOThweCksIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAuc2VjdGlvbi10aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDVweDtcbiAgfVxufVxuXG4uc2VjdGlvbi10aXRsZSAudGl0bGUge1xuICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbn1cblxuLnNlY3Rpb24tdGl0bGUgcCB7XG4gIHBhZGRpbmc6IDAgMTVweDtcbn1cblxuLnNlY3Rpb24tdGl0bGUtLXN0eWxlXzIge1xuICBtYXgtd2lkdGg6IDcxMHB4O1xufVxuXG4uc2VjdGlvbi10aXRsZS0tc3R5bGVfMiAudGl0bGUge1xuICBsaW5lLWhlaWdodDogMS40O1xuICBtYXJnaW4tdG9wOiAtMTVweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAuc2VjdGlvbi10aXRsZS0tc3R5bGVfMiAudGl0bGUge1xuICAgIG1hcmdpbi10b3A6IC0xMHB4O1xuICB9XG59XG5cbi50aXRsZSB7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjE7XG4gIG1hcmdpbi10b3A6IC05cHg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLnRpdGxlIHtcbiAgICBtYXJnaW4tdG9wOiAtN3B4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gIH1cbn1cblxuLnRpdGxlIHNwYW4ge1xuICBjb2xvcjogIzFjNDdjMTtcbn1cblxuLnN1YnRpdGxlIHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbiAgcGFkZGluZzogMjBweCAwO1xufVxuXG4udGhlbWUtYmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDE3MmQwO1xufVxuXG4uZ3JheS1iZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY4Zjg7XG59XG5cbi8qLS0tLS0tLSBjb21tb24gY3NzIGVuZCAtLS0tLS0tKi9cbi8qLS0tLSBjaG9vc2UgdXMgc3R5bGUgc3RyYXQgLS0tLSovXG4uY2hvb3NlLWl0ZW0td3JhcHBlciAudGl0bGUge1xuICBwYWRkaW5nLWJvdHRvbTogOHB4O1xufVxuXG4uY2hvb3NlLWl0ZW0td3JhcHBlci0tc3R5bGVfMiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggNTguNXB4IDYuNXB4IHJnYmEoMjgsIDcxLCAxOTMsIDAuMTUpO1xuICBwYWRkaW5nOiA4M3B4IDYwcHg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMTk5Ljk4cHgpIHtcbiAgLmNob29zZS1pdGVtLXdyYXBwZXItLXN0eWxlXzIge1xuICAgIHBhZGRpbmc6IDMwcHg7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MS45OHB4KSwgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC5jaG9vc2UtaXRlbS13cmFwcGVyLS1zdHlsZV8yIHtcbiAgICBwYWRkaW5nOiA2NXB4IDMwcHggNTNweDtcbiAgICBtYXJnaW4tYm90dG9tOiA2MnB4O1xuICB9XG59XG5cbi5jaG9vc2UtaXRlbS13cmFwcGVyLS1zdHlsZV8yIC5kZXNjIHtcbiAgcGFkZGluZzogMjVweCAwIDI4cHg7XG59XG5cbi5jaG9vc2UtaXRlbSB7XG4gIG1hcmdpbi10b3A6IDM1cHg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLmNob29zZS1pdGVtIHtcbiAgICBtYXJnaW4tdG9wOiAyNXB4O1xuICB9XG59XG5cbi5jaG9vc2UtaXRlbS10aXRsZSB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHBhZGRpbmctYm90dG9tOiA4cHg7XG59XG5cbi5jaG9vc2UtbGlzdCBsaSB7XG4gIG1hcmdpbi1ib3R0b206IDE0cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmNob29zZS1saXN0IGxpOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY2hvb3NlLWxpc3QgbGk6YmVmb3JlIHtcbiAgd2lkdGg6IDIxcHg7XG4gIGhlaWdodDogMThweDtcbiAgbGVmdDogMDtcbiAgdG9wOiA1MCU7XG4gIGNvbnRlbnQ6ICcnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9pY29uL2NoZWNrLXRpY2sucG5nKTtcbn1cblxuLmNob29zZS1saXN0IGxpIC5jaG9vc2UtaXRlbS10aXRsZSB7XG4gIHBhZGRpbmctbGVmdDogMzZweDtcbn1cblxuLyotLS0tIGNob29zZSB1cyBzdHlsZSBlbmQgLS0tLSovXG4vKi0tLS0gY2FsbCB0byBhY3Rpb24gc3RhcnQgLS0tLSovXG4uY3RhLXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTEuOThweCksIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAuY3RhLXdyYXBwZXIge1xuICAgIG1hcmdpbi10b3A6IDU1cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDZweDtcbiAgfVxufVxuXG4uY3RhLXdyYXBwZXIgLnRpdGxlIHtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbn1cblxuLmN0YS13cmFwcGVyIC5jYWxsIHtcbiAgY29sb3I6ICMwMTcyZDA7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAzNnB4O1xuICBmb250LXdlaWdodDogODAwO1xuICBwYWRkaW5nLXRvcDogMjNweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAuY3RhLXdyYXBwZXIgLmNhbGwge1xuICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3OS45OHB4KSB7XG4gIC5jdGEtd3JhcHBlciAuY2FsbCB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICB9XG59XG5cbi5jdGEtd3JhcHBlciAuY2FsbDpob3ZlciB7XG4gIGNvbG9yOiAjMTUxNTE1O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC5jdGEtd3JhcHBlciBpbWcge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG4vKi0tLS0gY2FsbCB0byBhY3Rpb24gZW5kIC0tLS0qL1xuLyotLS0tIGJyYW5kIGxvZ28gc2VjdGlvbiBzdGFydCAtLS0tKi9cbi5icmFuZC1pdGVtIGltZyB7XG4gIG1hcmdpbjogYXV0bztcbiAgb3BhY2l0eTogMC4yNTtcbn1cblxuLmJyYW5kLWl0ZW06aG92ZXIgaW1nIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLyotLS0tIGJyYW5kIGxvZ28gc2VjdGlvbiBlbmQgLS0tLSovXG4vKi0tLS0tLSBjb3VudGVyIHVwIHN0YXJ0IC0tLS0tLSovXG4uY291bnRlcnVwLWl0ZW0ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5jb3VudGVydXAtaXRlbSBzcGFuIHtcbiAgY29sb3I6ICMxYzQ3YzE7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIG1hcmdpbi10b3A6IC00cHg7XG59XG5cbi5jb3VudGVydXAtaXRlbSBoNSB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHBhZGRpbmctdG9wOiA1cHg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTEuOThweCksIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAuY291bnRlcnVwLWl0ZW0gaDUge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgfVxufVxuXG4ub2RvbWV0ZXItaW5zaWRlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tbGVmdDogLTIycHg7XG59XG5cbi5vZG9tZXRlci1pbnNpZGU6OmFmdGVyIHtcbiAgdG9wOiAtN3B4O1xuICBsZWZ0OiAxMDAlO1xuICBjb250ZW50OiAnKyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cblxuLyotLS0tLS0gY291bnRlciB1cCBlbmQgLS0tLS0tKi9cbi8qLS0tLS0gc2xpY2sgYXJyb3cgc3R5bGUgc3RhcnQgLS0tLS0qL1xuLnRlc3RpbW9uaWFsLWNhcm91c2VsLWFjdGl2ZS5zbGljay1hcnJvdy1zdHlsZSBidXR0b24uc2xpY2stYXJyb3csXG4uaGVyby1zbGlkZXItYWN0aXZlLnNsaWNrLWFycm93LXN0eWxlIGJ1dHRvbi5zbGljay1hcnJvdyB7XG4gIHdpZHRoOiAxNnB4O1xuICBoZWlnaHQ6IDE4cHg7XG4gIGJvdHRvbTogLTM4cHg7XG4gIGxlZnQ6IDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuXG4udGVzdGltb25pYWwtY2Fyb3VzZWwtYWN0aXZlLnNsaWNrLWFycm93LXN0eWxlIGJ1dHRvbi5zbGljay1hcnJvdy5zbGljay1wcmV2LFxuLmhlcm8tc2xpZGVyLWFjdGl2ZS5zbGljay1hcnJvdy1zdHlsZSBidXR0b24uc2xpY2stYXJyb3cuc2xpY2stcHJldiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvaWNvbi9hcnJvdy1wcmV2LnBuZyk7XG59XG5cbi50ZXN0aW1vbmlhbC1jYXJvdXNlbC1hY3RpdmUuc2xpY2stYXJyb3ctc3R5bGUgYnV0dG9uLnNsaWNrLWFycm93LnNsaWNrLW5leHQsXG4uaGVyby1zbGlkZXItYWN0aXZlLnNsaWNrLWFycm93LXN0eWxlIGJ1dHRvbi5zbGljay1hcnJvdy5zbGljay1uZXh0IHtcbiAgbGVmdDogMjVweDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9pY29uL2Fycm93LW5leHQucG5nKTtcbn1cblxuLnRlc3RpbW9uaWFsLWNhcm91c2VsLWFjdGl2ZS5zbGljay1hcnJvdy1zdHlsZSBidXR0b24uc2xpY2stYXJyb3c6aG92ZXIuc2xpY2stcHJldixcbi5oZXJvLXNsaWRlci1hY3RpdmUuc2xpY2stYXJyb3ctc3R5bGUgYnV0dG9uLnNsaWNrLWFycm93OmhvdmVyLnNsaWNrLXByZXYge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL2ljb24vYXJyb3ctcHJldi1jb2xvci5wbmcpO1xufVxuXG4udGVzdGltb25pYWwtY2Fyb3VzZWwtYWN0aXZlLnNsaWNrLWFycm93LXN0eWxlIGJ1dHRvbi5zbGljay1hcnJvdzpob3Zlci5zbGljay1uZXh0LFxuLmhlcm8tc2xpZGVyLWFjdGl2ZS5zbGljay1hcnJvdy1zdHlsZSBidXR0b24uc2xpY2stYXJyb3c6aG92ZXIuc2xpY2stbmV4dCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvaWNvbi9hcnJvdy1uZXh0LWNvbG9yLnBuZyk7XG59XG5cbi50ZXN0aW1vbmlhbC1jYXJvdXNlbC1hY3RpdmUuc2xpY2stYXJyb3ctc3R5bGUtLXRlc3RpbW9uaWFsXzIsXG4uaGVyby1zbGlkZXItYWN0aXZlLnNsaWNrLWFycm93LXN0eWxlLS10ZXN0aW1vbmlhbF8yIHtcbiAgbWFyZ2luLXRvcDogMzVweDtcbn1cblxuLnRlc3RpbW9uaWFsLWNhcm91c2VsLWFjdGl2ZS5zbGljay1hcnJvdy1zdHlsZS0tdGVzdGltb25pYWxfMiBidXR0b24uc2xpY2stYXJyb3csXG4uaGVyby1zbGlkZXItYWN0aXZlLnNsaWNrLWFycm93LXN0eWxlLS10ZXN0aW1vbmlhbF8yIGJ1dHRvbi5zbGljay1hcnJvdyB7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiBhdXRvO1xuICBib3R0b206IDYwcHg7XG4gIHotaW5kZXg6IDE7XG59XG5cbi50ZXN0aW1vbmlhbC1jYXJvdXNlbC1hY3RpdmUuc2xpY2stYXJyb3ctc3R5bGUtLXRlc3RpbW9uaWFsXzIgYnV0dG9uLnNsaWNrLWFycm93LnNsaWNrLXByZXYsXG4uaGVyby1zbGlkZXItYWN0aXZlLnNsaWNrLWFycm93LXN0eWxlLS10ZXN0aW1vbmlhbF8yIGJ1dHRvbi5zbGljay1hcnJvdy5zbGljay1wcmV2IHtcbiAgcmlnaHQ6IDYwcHg7XG59XG5cbi50ZXN0aW1vbmlhbC1jYXJvdXNlbC1hY3RpdmUuc2xpY2stYXJyb3ctc3R5bGUtLXRlc3RpbW9uaWFsXzIgYnV0dG9uLnNsaWNrLWFycm93LnNsaWNrLW5leHQsXG4uaGVyby1zbGlkZXItYWN0aXZlLnNsaWNrLWFycm93LXN0eWxlLS10ZXN0aW1vbmlhbF8yIGJ1dHRvbi5zbGljay1hcnJvdy5zbGljay1uZXh0IHtcbiAgcmlnaHQ6IDM3cHg7XG4gIGxlZnQ6IGF1dG87XG59XG5cbi50ZXN0aW1vbmlhbC1jYXJvdXNlbC1hY3RpdmUuc2xpY2stYXJyb3ctc3R5bGUtLXRlc3RpbW9uaWFsXzIgLnNsaWNrLWxpc3QsXG4uaGVyby1zbGlkZXItYWN0aXZlLnNsaWNrLWFycm93LXN0eWxlLS10ZXN0aW1vbmlhbF8yIC5zbGljay1saXN0IHtcbiAgbWFyZ2luOiAtMzBweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MS45OHB4KSwgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC50ZXN0aW1vbmlhbC1jYXJvdXNlbC1hY3RpdmUuc2xpY2stYXJyb3ctc3R5bGUtLXRlc3RpbW9uaWFsXzIgLnNsaWNrLWxpc3QsXG4gIC5oZXJvLXNsaWRlci1hY3RpdmUuc2xpY2stYXJyb3ctc3R5bGUtLXRlc3RpbW9uaWFsXzIgLnNsaWNrLWxpc3Qge1xuICAgIG1hcmdpbjogLTMwcHggLTE1cHg7XG4gIH1cbn1cblxuLnRlc3RpbW9uaWFsLWNhcm91c2VsLWFjdGl2ZS5zbGljay1hcnJvdy1zdHlsZS0tdGVzdGltb25pYWxfMiAuc2xpY2stbGlzdCAuc2xpY2stc2xpZGUsXG4uaGVyby1zbGlkZXItYWN0aXZlLnNsaWNrLWFycm93LXN0eWxlLS10ZXN0aW1vbmlhbF8yIC5zbGljay1saXN0IC5zbGljay1zbGlkZSB7XG4gIHBhZGRpbmc6IDMwcHg7XG59XG5cbi5zbGljay1hcnJvdy1zdHlsZV9oZXJvIGJ1dHRvbi5zbGljay1hcnJvdyB7XG4gIGJvdHRvbTogNDBweDtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIG1hcmdpbjogYXV0bztcbn1cblxuLnNsaWNrLWFycm93LXN0eWxlX2hlcm8gYnV0dG9uLnNsaWNrLWFycm93LnNsaWNrLW5leHQge1xuICByaWdodDogNDglO1xuICBsZWZ0OiBhdXRvO1xufVxuXG4uc2xpY2stYXJyb3ctc3R5bGVfaGVybyBidXR0b24uc2xpY2stYXJyb3cuc2xpY2stcHJldiB7XG4gIGxlZnQ6IDQ5JTtcbn1cblxuLyotLS0tLSBzbGljayBhcnJvdyBzdHlsZSBlbmQgLS0tLS0qL1xuLyogLS0tLXNjcm9sbCB0byB0b3AgY3NzIHN0YXJ0IC0tLS0qL1xuLnNjcm9sbC10b3Age1xuICBib3R0b206IDUwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgaGVpZ2h0OiA1MHB4O1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAyMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiA1MHB4O1xuICB6LWluZGV4OiA5OTk5O1xuICB0cmFuc2l0aW9uOiAwLjRzO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMTcyZDA7XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xufVxuXG4uc2Nyb2xsLXRvcCBpIHtcbiAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXNpemU6IDI1cHg7XG59XG5cbi5zY3JvbGwtdG9wLm5vdC12aXNpYmxlIHtcbiAgYm90dG9tOiAtNTBweDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uc2Nyb2xsLXRvcDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNTE1MTU7XG59XG5cbi8qIC0tLS1zY3JvbGwgdG8gdG9wIGNzcyBlbmQgLS0tLSovXG5Aa2V5ZnJhbWVzIGZhZGVJblVwIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDQwJSwgMCk7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxufVxuXG4uZmFkZUluVXAge1xuICBhbmltYXRpb24tbmFtZTogZmFkZUluVXA7XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluTGVmdCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNDAlLCAwLCAwKTtcbiAgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG59XG5cbi5mYWRlSW5MZWZ0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkxlZnQ7XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluUmlnaHQge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoNDAlLCAwLCAwKTtcbiAgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG59XG5cbi5mYWRlSW5SaWdodCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5SaWdodDtcbn1cblxuQGtleWZyYW1lcyBmbG9hdC1ib2Ige1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwcHgpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuXG4ubW92aW5nLXZlcnRpY2FsIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZsb2F0LWJvYjtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAzcztcbiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbn1cblxuLyotLS0tLS0gaGVybyBzbGlkZXIgYXJlYSBjc3Mgc3RhcnQgLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4wMS4gU2xpZGVyIGFyZWFcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmhlcm8tc2xpZGVyLWl0ZW0ge1xuICBoZWlnaHQ6IDg1MHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nLXRvcDogODhweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtd2lkdGg6IDExOTkuOThweCkge1xuICAuaGVyby1zbGlkZXItaXRlbSB7XG4gICAgaGVpZ2h0OiA1NTBweDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgLmhlcm8tc2xpZGVyLWl0ZW0ge1xuICAgIGhlaWdodDogNDAwcHg7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAuaGVyby1zbGlkZXItaXRlbSB7XG4gICAgaGVpZ2h0OiAzNTBweDtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XG4gIC5oZXJvLXNsaWRlci1pdGVtIHtcbiAgICBoZWlnaHQ6IDU1MHB4O1xuICB9XG59XG5cbi5zbGlkZXItdGh1bWIge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcbiAgLnNsaWRlci10aHVtYiB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgbWF4LXdpZHRoOiAzMDBweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XG4gIC5oZXJvLXNsaWRlci1jb250ZW50IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMCAyMHB4IDUwcHg7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NzkuOThweCkge1xuICAuaGVyby1zbGlkZXItY29udGVudCB7XG4gICAgcGFkZGluZzogMCAwIDUwcHg7XG4gIH1cbn1cblxuLmhlcm8tc2xpZGVyLWNvbnRlbnQgLnNsaWRlLXRpdGxlIHtcbiAgY29sb3I6ICMxNTE1MTU7XG4gIGZvbnQtc2l6ZTogNzVweDtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMTk5Ljk4cHgpIHtcbiAgLmhlcm8tc2xpZGVyLWNvbnRlbnQgLnNsaWRlLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDQwcHg7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gIC5oZXJvLXNsaWRlci1jb250ZW50IC5zbGlkZS10aXRsZSB7XG4gICAgZm9udC1zaXplOiAzNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAuaGVyby1zbGlkZXItY29udGVudCAuc2xpZGUtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICBsaW5lLWhlaWdodDogMS4zO1xuICB9XG59XG5cbi5oZXJvLXNsaWRlci1jb250ZW50IC5idG4taGVybyB7XG4gIG1hcmdpbi10b3A6IDU1cHg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLmhlcm8tc2xpZGVyLWNvbnRlbnQgLmJ0bi1oZXJvIHtcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIHBhZGRpbmc6IDEwcHggMjJweCAxMnB4O1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgfVxufVxuXG4uaGVyby10cmFuc3BhcmVudC1iZyB7XG4gIGhlaWdodDogODkwcHg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMTk5Ljk4cHgpIHtcbiAgLmhlcm8tdHJhbnNwYXJlbnQtYmcge1xuICAgIGhlaWdodDogNTUwcHg7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gIC5oZXJvLXRyYW5zcGFyZW50LWJnIHtcbiAgICBoZWlnaHQ6IDQwMHB4O1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLmhlcm8tdHJhbnNwYXJlbnQtYmcge1xuICAgIGhlaWdodDogMzUwcHg7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NzUuOThweCkge1xuICAuaGVyby10cmFuc3BhcmVudC1iZyB7XG4gICAgaGVpZ2h0OiA1NTBweDtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgfVxufVxuXG4vKi0tLS0tLSBoZXJvIHNsaWRlciBhcmVhIGNzcyBlbmQgLS0tLS0tKi9cbi5zbGljay1hY3RpdmUgLnNsaWRlci10aHVtYiBpbWcge1xuICBhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xuICBhbmltYXRpb24tZHVyYXRpb246IDFzO1xuICBhbmltYXRpb24tbmFtZTogZmFkZUluUmlnaHQ7XG4gIGFuaW1hdGlvbi1kZWxheTogMC41cztcbn1cblxuLnNsaWNrLWFjdGl2ZSAuaGVyby1zbGlkZXItY29udGVudCAuc2xpZGUtdGl0bGUsXG4uc2xpY2stYWN0aXZlIC5oZXJvLXNsaWRlci1jb250ZW50IC5idG4taGVybyB7XG4gIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5MZWZ0O1xuICBhbmltYXRpb24tZGVsYXk6IDAuNXM7XG59XG5cbi5zbGljay1hY3RpdmUgLmhlcm8tc2xpZGVyLWNvbnRlbnQgLmJ0bi1oZXJvIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjdzO1xufVxuXG4vKi0tLS0tIGFib3V0IHN0eWxlIHN0YXJ0IC0tLS0tKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTEuOThweCksIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAuYWJvdXQtaW5uZXIge1xuICAgIG1hcmdpbi10b3A6IDY1cHg7XG4gIH1cbn1cblxuLmFib3V0LWlubmVyIHAge1xuICBtYXJnaW4tYm90dG9tOiAzNHB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxLjk4cHgpLCBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLmFib3V0LWlubmVyLS1zdHlsZV8yIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDY1cHg7XG4gIH1cbn1cblxuLmFib3V0LWlubmVyLS1zdHlsZV8yIC5zdWJ0aXRsZSB7XG4gIHBhZGRpbmctdG9wOiAyNHB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxLjk4cHgpLCBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLmFib3V0LWlubmVyLS1zdHlsZV8yIC5zdWJ0aXRsZSB7XG4gICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgfVxufVxuXG4uYWJvdXQtaW5uZXItLXN0eWxlXzIgLnN1YnRpdGxlIHNwYW4ge1xuICBjb2xvcjogIzFjNDdjMTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbn1cblxuLmFib3V0LWlubmVyLS1zdHlsZV8yIC5zdWJ0aXRsZS0yIHtcbiAgcGFkZGluZy10b3A6IDNweDtcbiAgcGFkZGluZy1ib3R0b206IDQ2cHg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTEuOThweCksIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAuYWJvdXQtdGh1bWIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG4vKi0tLS0tIGFib3V0IHN0eWxlIGVuZCAtLS0tLSovXG4vKi0tLS0tIHNlcnZpY2UgcG9saWN5IHN0YXJ0IC0tLS0tKi9cbi5zZXJ2aWNlLXBvbGljeS1pdGVtIHtcbiAgLyogQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjcuOThweCkge1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgNDBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDc5Ljk4cHgpIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMCAxNXB4O1xyXG4gICAgICAgIH0gKi9cbn1cblxuLnNlcnZpY2UtcG9saWN5LWl0ZW06aG92ZXIgLnNlcnZpY2UtcG9saWN5LWljb24gaW1nIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjk1KSB0cmFuc2xhdGVYKDEwcHgpO1xufVxuXG4uc2VydmljZS1wb2xpY3ktdGl0bGUge1xuICBmb250LXdlaWdodDogNzAwO1xuICBwYWRkaW5nOiAxN3B4IDAgOHB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxLjk4cHgpLCBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLnBvbGljeS13cmFwcGVyLTAyIHtcbiAgICBtYXJnaW4tdG9wOiAtNDVweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyNnB4O1xuICB9XG59XG5cbi5wb2xpY3ktd3JhcHBlci0wMiAuc2VydmljZS1wb2xpY3ktaXRlbSB7XG4gIHBhZGRpbmc6IDM0cHg7XG4gIHRyYW5zaXRpb246IDAuNHM7XG59XG5cbi5wb2xpY3ktd3JhcHBlci0wMiAuc2VydmljZS1wb2xpY3ktaXRlbTpob3ZlciwgLnBvbGljeS13cmFwcGVyLTAyIC5zZXJ2aWNlLXBvbGljeS1pdGVtLmFjdGl2ZSB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggNTguNXB4IDYuNXB4IHJnYmEoMjgsIDcxLCAxOTMsIDAuMTUpO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxLjk4cHgpLCBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLnBvbGljeS1hcmVhLTAyIHtcbiAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgfVxufVxuXG4vKi0tLS0tIHNlcnZpY2UgcG9saWN5ICAtLS0tLSovXG4vKi0tLS0tLSBzZXJ2aWNlIHNlY3Rpb24gc3RhcnQgLS0tLS0tKi9cbi5zZXJ2aXZjZS1taWRkbGUtdGh1bWIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTEuOThweCksIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAuc2Vydml2Y2UtbWlkZGxlLXRodW1iIHtcbiAgICBtYXJnaW4tdG9wOiA2MHB4O1xuICB9XG59XG5cbi5zZXJ2aWNlLWl0ZW0ge1xuICB3aWR0aDogMjE4cHg7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAuc2VydmljZS1pdGVtIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC5zZXJ2aWNlLWl0ZW0ge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi5zZXJ2aWNlLWl0ZW06aG92ZXIgLnNlcnZpY2UtaWNvbiBpbWcge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuOTUpIHRyYW5zbGF0ZVgoMTBweCk7XG59XG5cbi5zZXJ2aWNlLXRpdGxlIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgcGFkZGluZzogMThweCAwIDEwcHg7XG59XG5cbi5zZXJ2aWNlLXRpdGxlIGEge1xuICBjb2xvcjogIzE1MTUxNTtcbn1cblxuLnNlcnZpY2UtdGl0bGUgYTpob3ZlciB7XG4gIGNvbG9yOiAjMDE3MmQwO1xufVxuXG4uc2VydmljZS1saXN0LWxlZnQgLnNlcnZpY2UtaXRlbTpudGgtY2hpbGQoMSksIC5zZXJ2aWNlLWxpc3QtbGVmdCAuc2VydmljZS1pdGVtOm50aC1jaGlsZCgzKSB7XG4gIG1hcmdpbi1sZWZ0OiA1MnB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTE5OS45OHB4KSwgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxLjk4cHgpLCBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLnNlcnZpY2UtbGlzdC1sZWZ0IC5zZXJ2aWNlLWl0ZW06bnRoLWNoaWxkKDEpLCAuc2VydmljZS1saXN0LWxlZnQgLnNlcnZpY2UtaXRlbTpudGgtY2hpbGQoMykge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAuc2VydmljZS1saXN0LWxlZnQgLnNlcnZpY2UtaXRlbSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuICB9XG4gIC5zZXJ2aWNlLWxpc3QtbGVmdCAuc2VydmljZS1pdGVtOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuXG4uc2VydmljZS1saXN0LWxlZnQgLnNlcnZpY2UtaXRlbTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLnNlcnZpY2UtbGlzdC1yaWdodCAuc2VydmljZS1pdGVtOm50aC1jaGlsZCgyKSB7XG4gIG1hcmdpbi1sZWZ0OiA1MnB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTE5OS45OHB4KSwgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxLjk4cHgpLCBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLnNlcnZpY2UtbGlzdC1yaWdodCAuc2VydmljZS1pdGVtOm50aC1jaGlsZCgyKSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cblxuLnNlcnZpY2UtbGlzdC1yaWdodCAuc2VydmljZS1pdGVtOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgLnNlcnZpY2UtbGlzdC1yaWdodCAuc2VydmljZS1pdGVtIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gIH1cbiAgLnNlcnZpY2UtbGlzdC1yaWdodCAuc2VydmljZS1pdGVtOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuXG4uc2VydmljZS13cmFwcGVyLS1zdHlsZV8yIC5zZWN0aW9uLXRpdGxlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uc2VydmljZS13cmFwcGVyLS1zdHlsZV8yIC5zZXJ2aWNlLWl0ZW0ge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgLnNlcnZpY2Utd3JhcHBlci0tc3R5bGVfMiAuc2VydmljZS1pdGVtIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4vKi0tLS0tLSBzZXJ2aWNlIHNlY3Rpb24gZW5kIC0tLS0tLSovXG4vKi0tLS0tLSBzZXJ2aWNlIGRldGFpbHMgcGFnZSBzdGFydCAtLS0tLS0qL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MS45OHB4KSwgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC5zZXJ2aWNlLWRldGFpbHMtd3JhcHBlci5wYi0xMjUge1xuICAgIHBhZGRpbmctYm90dG9tOiA2N3B4O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTEuOThweCksIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAuc2VydmljZS1kZXRhaWxzLXdpZGdldCB7XG4gICAgbWFyZ2luLXRvcDogMTAwcHg7XG4gIH1cbn1cblxuLnNlcnZpY2Utc2luZ2xlLXdpZGdldCB7XG4gIHBhZGRpbmc6IDI1cHg7XG59XG5cbi5zZXJ2aWNlLXNpbmdsZS13aWRnZXQgLnNlcnZpY2Utd2lkZ2V0LXRpdGxlIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uc2VydmljZS1zaW5nbGUtd2lkZ2V0IC5zZXJ2aWNlLWxpc3QgbGkgYSB7XG4gIGNvbG9yOiAjMTUxNTE1O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWxlZnQ6IDM1cHg7XG59XG5cbi5zZXJ2aWNlLXNpbmdsZS13aWRnZXQgLnNlcnZpY2UtbGlzdCBsaSBhOmJlZm9yZSB7XG4gIHdpZHRoOiAyMXB4O1xuICBoZWlnaHQ6IDE4cHg7XG4gIGxlZnQ6IDA7XG4gIHRvcDogNTAlO1xuICBjb250ZW50OiAnJztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvaWNvbi9jaGVjay10aWNrLnBuZyk7XG59XG5cbi5zZXJ2aWNlLXNpbmdsZS13aWRnZXQgLnNlcnZpY2UtbGlzdCBsaSBhOmhvdmVyIHtcbiAgY29sb3I6ICMwMTcyZDA7XG4gIHBhZGRpbmctbGVmdDogNDBweDtcbn1cblxuLnNlcnZpY2Utc2luZ2xlLXdpZGdldCAuc2VydmljZS1saXN0IGxpOmxhc3QtY2hpbGQgYSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTYwMHB4KSB7XG4gIC5zZXJ2aWNlLWRldGFpbHMtY29udGVudCB7XG4gICAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgfVxufVxuXG4uc2VydmljZS1kZXRhaWxzLWNvbnRlbnQgaDMge1xuICBmb250LXdlaWdodDogNzAwO1xuICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbn1cblxuLyotLS0tLS0gc2VydmljZSBkZXRhaWxzIHBhZ2UgZW5kIC0tLS0tLSovXG4vKi0tLS0tIHRlc3RpbW9uaWFsIGFyZWEgc3RhcnQgLS0tLS0qL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MS45OHB4KSwgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC50ZXN0aW1vbmlhbC13cmFwcGVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTAwcHg7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MS45OHB4KSwgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC50ZXN0aW1vbmlhbC13cmFwcGVyLS1zdHlsZV8yIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNjhweDtcbiAgfVxufVxuXG4udGVzdGltb25pYWwtaW5uZXIge1xuICBtYXJnaW4tdG9wOiAtMzhweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MS45OHB4KSwgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC50ZXN0aW1vbmlhbC1pbm5lciB7XG4gICAgbWFyZ2luLXRvcDogNjhweDtcbiAgfVxufVxuXG4udGVzdGltb25pYWwtY29udGVudCB7XG4gIHBhZGRpbmc6IDFweDtcbn1cblxuLnRlc3RpbW9uaWFsLWNvbnRlbnQgLmNsaWVudC1uYW1lIHtcbiAgY29sb3I6ICMxYzQ3YzE7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBmb250LXdlaWdodDogNTAwO1xuICBwYWRkaW5nLWJvdHRvbTogNHB4O1xufVxuXG4udGVzdGltb25pYWwtY29udGVudCAuY2xpZW50LWRlc2lnIHtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbn1cblxuLnRlc3RpbW9uaWFsLWNvbnRlbnQgcCB7XG4gIHBhZGRpbmctdG9wOiA1N3B4O1xuICBwYWRkaW5nLWJvdHRvbTogMTJweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAudGVzdGltb25pYWwtY29udGVudCBwIHtcbiAgICBwYWRkaW5nLXRvcDogNDVweDtcbiAgfVxufVxuXG4udGVzdGltb25pYWwtY29udGVudCBwIGkge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG59XG5cbi50ZXN0aW1vbmlhbC1jb250ZW50IHAgaTpsYXN0LWNoaWxkIHtcbiAgcGFkZGluZy1sZWZ0OiA1cHg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAudGVzdGltb25pYWwtdGh1bWIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxLjk4cHgpLCBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLnRlc3RpbW9uaWFsLXRodW1iLS1zdHlsZV8yIHtcbiAgICBtYXJnaW4tYm90dG9tOiA2OHB4O1xuICB9XG59XG5cbi50ZXN0aW1vbmlhbC1pdGVtLS1zdHlsZV8yIC50ZXN0aW1vbmlhbC1jb250ZW50IHtcbiAgcGFkZGluZzogNDBweCAyMHB4IDQ4cHggNDVweDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAzMS41cHggMy41cHggcmdiYSgyOCwgNzEsIDE5MywgMC4xMSk7XG59XG5cbi50ZXN0aW1vbmlhbC1pdGVtLS1zdHlsZV8yIC50ZXN0aW1vbmlhbC1jb250ZW50IHAge1xuICBwYWRkaW5nLXRvcDogMDtcbn1cblxuLyotLS0tLSB0ZXN0aW1vbmlhbCBhcmVhIGVuZCAtLS0tLSovXG4vKi0tLS0tIGJyZWFkY3J1bWIgc3R5bGUgY3NzIHN0YXJ0IC0tLS0tKi9cbi5icmVhZGNydW1iLXdyYXAge1xuICBwYWRkaW5nOiA5NXB4IDAgMTAwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAuYnJlYWRjcnVtYi13cmFwIHtcbiAgICBwYWRkaW5nOiA1MHB4IDA7XG4gIH1cbn1cblxuLmJyZWFkY3J1bWItd3JhcCAuYnJlYWRjcnVtYiB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nOiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLmJyZWFkY3J1bWItd3JhcCAuYnJlYWRjcnVtYiAuYnJlYWRjcnVtYi1pdGVtIHtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uYnJlYWRjcnVtYi13cmFwIC5icmVhZGNydW1iIC5icmVhZGNydW1iLWl0ZW0gYSB7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uYnJlYWRjcnVtYi13cmFwIC5icmVhZGNydW1iIC5icmVhZGNydW1iLWl0ZW0gYTpob3ZlciB7XG4gIGNvbG9yOiAjMDE3MmQwO1xufVxuXG4uYnJlYWRjcnVtYi13cmFwIC5icmVhZGNydW1iIC5icmVhZGNydW1iLWl0ZW06YmVmb3JlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGNvbnRlbnQ6IFwiL1wiO1xuICBmb250LXNpemU6IDEycHg7XG4gIG1hcmdpbjogMCA1cHg7XG59XG5cbi5icmVhZGNydW1iLXdyYXAgLmJyZWFkY3J1bWIgLmJyZWFkY3J1bWItaXRlbTpmaXJzdC1jaGlsZDo6YmVmb3JlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmJyZWFkY3J1bWItd3JhcCAuYnJlYWRjcnVtYiAuYnJlYWRjcnVtYi1pdGVtLmFjdGl2ZSB7XG4gIG1hcmdpbi10b3A6IDJweDtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG59XG5cbi5icmVhZGNydW1iLXRpdGxlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogNDBweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcbiAgLmJyZWFkY3J1bWItdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgfVxufVxuXG4vKi0tLS0tIGJyZWFkY3J1bWIgc3R5bGUgY3NzIGVuZCAtLS0tLSovXG4vKi0tLS0tLSB0ZWFtIGFyZWEgc3R5bGUgIHN0YXJ0IC0tLS0tLSovXG4udGVhbS1tZW1iZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnRlYW0tbWVtYmVyLWluZm8ge1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDUwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOGY4O1xuICBwYWRkaW5nOiA0MHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgYm94LXNoYWRvdzogMHB4IDBweCA1OHB4IDZweCByZ2JhKDI4LCA3MSwgMTkzLCAwLjE1KTtcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB0cmFuc2l0aW9uOiAwLjRzO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgLnRlYW0tbWVtYmVyLWluZm8ge1xuICAgIHBhZGRpbmc6IDMwcHg7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAudGVhbS1tZW1iZXItaW5mbyB7XG4gICAgcGFkZGluZzogMTBweDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XG4gIC50ZWFtLW1lbWJlci1pbmZvIHtcbiAgICBwYWRkaW5nOiA0MHB4O1xuICB9XG59XG5cbi50ZWFtLW1lbWJlcjpob3ZlciAudGVhbS1tZW1iZXItaW5mbyB7XG4gIG9wYWNpdHk6IDE7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG5cbi50ZWFtLW1lbWJlci0taG92ZXItZWZmZWN0IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTE5OS45OHB4KSwgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgLnRlYW0tbWVtYmVyLS1ob3Zlci1lZmZlY3Qge1xuICAgIG1hcmdpbi10b3A6IDEzMHB4O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLnRlYW0tbWVtYmVyLS1ob3Zlci1lZmZlY3Qge1xuICAgIG1hcmdpbi10b3A6IDEwMHB4O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcbiAgLnRlYW0tbWVtYmVyLS1ob3Zlci1lZmZlY3Qge1xuICAgIG1hcmdpbi10b3A6IDEwMHB4O1xuICB9XG59XG5cbi50ZWFtLW1lbWJlci0taG92ZXItZWZmZWN0OmJlZm9yZSwgLnRlYW0tbWVtYmVyLS1ob3Zlci1lZmZlY3Q6YWZ0ZXIge1xuICB0b3A6IDA7XG4gIGxlZnQ6IDUwJTtcbiAgd2lkdGg6IDEwcHg7XG4gIGhlaWdodDogMTBweDtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2I5YjliOTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBvcGFjaXR5OiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IDAuNHM7XG59XG5cbi50ZWFtLW1lbWJlci0taG92ZXItZWZmZWN0OmFmdGVyIHtcbiAgdG9wOiAwO1xuICBsZWZ0OiA1NSU7XG4gIHdpZHRoOiAxM3B4O1xuICBoZWlnaHQ6IDEzcHg7XG59XG5cbi50ZWFtLW1lbWJlci0taG92ZXItZWZmZWN0IC50ZWFtLW1lbWJlci1pbmZvIHtcbiAgbGVmdDogNTAlO1xuICB0b3A6IC0xMDBweDtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC02cHgpIHNjYWxlKDAuNyk7XG4gIG9wYWNpdHk6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgdHJhbnNpdGlvbjogMC40cztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTEuOThweCksIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAudGVhbS1tZW1iZXItLWhvdmVyLWVmZmVjdCAudGVhbS1tZW1iZXItaW5mbyB7XG4gICAgdG9wOiAtODBweDtcbiAgfVxufVxuXG4udGVhbS1tZW1iZXItLWhvdmVyLWVmZmVjdCAudGVhbS1tZW1iZXItbmFtZSB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHBhZGRpbmctYm90dG9tOiAzcHg7XG59XG5cbi50ZWFtLW1lbWJlci0taG92ZXItZWZmZWN0IC50ZWFtLW1lbWJlci1uYW1lIGEge1xuICBjb2xvcjogIzE1MTUxNTtcbn1cblxuLnRlYW0tbWVtYmVyLS1ob3Zlci1lZmZlY3QgLnRlYW0tbWVtYmVyLW5hbWUgYTpob3ZlciB7XG4gIGNvbG9yOiAjMDE3MmQwO1xufVxuXG4udGVhbS1tZW1iZXItLWhvdmVyLWVmZmVjdCAudGVhbS1tZW1iZXItZGVzaWcge1xuICBmb250LXdlaWdodDogNDAwO1xufVxuXG4udGVhbS1tZW1iZXItLWhvdmVyLWVmZmVjdDpob3ZlcjpiZWZvcmUsIC50ZWFtLW1lbWJlci0taG92ZXItZWZmZWN0OmhvdmVyOmFmdGVyLCAudGVhbS1tZW1iZXItLWhvdmVyLWVmZmVjdC5hY3RpdmU6YmVmb3JlLCAudGVhbS1tZW1iZXItLWhvdmVyLWVmZmVjdC5hY3RpdmU6YWZ0ZXIsIC50ZWFtLW1lbWJlci0taG92ZXItZWZmZWN0LnRlYW0tb3BlbjpiZWZvcmUsIC50ZWFtLW1lbWJlci0taG92ZXItZWZmZWN0LnRlYW0tb3BlbjphZnRlciB7XG4gIG9wYWNpdHk6IDE7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIHRvcDogLTIzcHg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTEuOThweCksIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAudGVhbS1tZW1iZXItLWhvdmVyLWVmZmVjdDpob3ZlcjpiZWZvcmUsIC50ZWFtLW1lbWJlci0taG92ZXItZWZmZWN0OmhvdmVyOmFmdGVyLCAudGVhbS1tZW1iZXItLWhvdmVyLWVmZmVjdC5hY3RpdmU6YmVmb3JlLCAudGVhbS1tZW1iZXItLWhvdmVyLWVmZmVjdC5hY3RpdmU6YWZ0ZXIsIC50ZWFtLW1lbWJlci0taG92ZXItZWZmZWN0LnRlYW0tb3BlbjpiZWZvcmUsIC50ZWFtLW1lbWJlci0taG92ZXItZWZmZWN0LnRlYW0tb3BlbjphZnRlciB7XG4gICAgdG9wOiAtMTVweDtcbiAgfVxufVxuXG4udGVhbS1tZW1iZXItLWhvdmVyLWVmZmVjdDpob3ZlcjphZnRlciwgLnRlYW0tbWVtYmVyLS1ob3Zlci1lZmZlY3QuYWN0aXZlOmFmdGVyLCAudGVhbS1tZW1iZXItLWhvdmVyLWVmZmVjdC50ZWFtLW9wZW46YWZ0ZXIge1xuICB0b3A6IC00NXB4O1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwLjJzO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxLjk4cHgpLCBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLnRlYW0tbWVtYmVyLS1ob3Zlci1lZmZlY3Q6aG92ZXI6YWZ0ZXIsIC50ZWFtLW1lbWJlci0taG92ZXItZWZmZWN0LmFjdGl2ZTphZnRlciwgLnRlYW0tbWVtYmVyLS1ob3Zlci1lZmZlY3QudGVhbS1vcGVuOmFmdGVyIHtcbiAgICB0b3A6IC0zMHB4O1xuICB9XG59XG5cbi50ZWFtLW1lbWJlci0taG92ZXItZWZmZWN0OmhvdmVyIC50ZWFtLW1lbWJlci1pbmZvLCAudGVhbS1tZW1iZXItLWhvdmVyLWVmZmVjdC5hY3RpdmUgLnRlYW0tbWVtYmVyLWluZm8sIC50ZWFtLW1lbWJlci0taG92ZXItZWZmZWN0LnRlYW0tb3BlbiAudGVhbS1tZW1iZXItaW5mbyB7XG4gIG9wYWNpdHk6IDE7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuNnM7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNnB4KSBzY2FsZSgxKTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gIC50ZWFtLW1lbWJlci0taG92ZXItZWZmZWN0OmhvdmVyIC50ZWFtLW1lbWJlci1pbmZvLCAudGVhbS1tZW1iZXItLWhvdmVyLWVmZmVjdC5hY3RpdmUgLnRlYW0tbWVtYmVyLWluZm8sIC50ZWFtLW1lbWJlci0taG92ZXItZWZmZWN0LnRlYW0tb3BlbiAudGVhbS1tZW1iZXItaW5mbyB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC02cHgpIHNjYWxlKDEpO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMTk5Ljk4cHgpIHtcbiAgLnRlYW0tY29udGVudC5hYm91dC1pbm5lciB7XG4gICAgcGFkZGluZy1yaWdodDogMTQwcHg7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MS45OHB4KSwgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC50ZWFtLWNvbnRlbnQuYWJvdXQtaW5uZXIge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtd2lkdGg6IDExOTkuOThweCksIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MS45OHB4KSwgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC50ZWFtLWNvbnRlbnQtLXN0eWxlXzIge1xuICAgIG1hcmdpbi1ib3R0b206IDY1cHg7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtd2lkdGg6IDExOTkuOThweCksIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MS45OHB4KSwgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC50ZWFtLXdyYXBwZXIuc2VjdGlvbi1wYWRkaW5nLS1wYl8xMjAge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICB9XG59XG5cbi50ZWFtLXdyYXBwZXItLXN0eWxlXzEge1xuICBwYWRkaW5nLXRvcDogODBweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtd2lkdGg6IDExOTkuOThweCksIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MS45OHB4KSwgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC50ZWFtLXdyYXBwZXItLXN0eWxlXzEge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTEuOThweCksIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAudGVhbS13cmFwcGVyIFtjbGFzcyo9XCJjb2wtXCJdOmxhc3QtY2hpbGQgLnRlYW0tbWVtYmVyLS1ob3Zlci1lZmZlY3QgLnRlYW0tbWVtYmVyLWluZm8ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNnB4KSBzY2FsZSgxKTtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAwO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcbiAgLnRlYW0td3JhcHBlciBbY2xhc3MqPVwiY29sLVwiXTpsYXN0LWNoaWxkIC50ZWFtLW1lbWJlci0taG92ZXItZWZmZWN0IC50ZWFtLW1lbWJlci1pbmZvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTZweCkgc2NhbGUoMSk7XG4gICAgbGVmdDogNTAlO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDc5Ljk4cHgpIHtcbiAgLnRlYW0td3JhcHBlci0tc3R5bGVfMSBbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGZsZXg6IDEwMCU7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtd2lkdGg6IDExOTkuOThweCkge1xuICAudGVhbS13cmFwcGVyLS1zdHlsZV8zIC50ZWFtLW1lbWJlci0taG92ZXItZWZmZWN0IHtcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTEuOThweCksIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAudGVhbS13cmFwcGVyLS1zdHlsZV8zIC50ZWFtLW1lbWJlci0taG92ZXItZWZmZWN0IHtcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDc5Ljk4cHgpIHtcbiAgLnRlYW0td3JhcHBlci0tc3R5bGVfMyBbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGZsZXg6IDEwMCU7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NzUuOThweCkge1xuICAudGVhbS13cmFwcGVyLS1zdHlsZV8zIFtjbGFzcyo9XCJjb2wtXCJdIC50ZWFtLW1lbWJlci0taG92ZXItZWZmZWN0IHtcbiAgICBtYXJnaW4tdG9wOiAxMDBweDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XG4gIC50ZWFtLXdyYXBwZXItLXN0eWxlXzMgLnNlY3Rpb24tcGFkZGluZy0tcHRfODAge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICB9XG59XG5cbi8qLS0tLS0tIHRlYW0gZGV0YWlscyBzdGFydCAtLS0tLS0qL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MS45OHB4KSwgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC50ZWFtLW1lbWJlci1kZXRhaWxzIHtcbiAgICBtYXJnaW4tdG9wOiA2MHB4O1xuICB9XG59XG5cbi50ZWFtLWRldGFpbHMtd2lkZ2V0IC5xdWljay1jb250YWN0IHtcbiAgcGFkZGluZzogMjVweCAyNXB4IDE4cHggMjVweDtcbn1cblxuLnRlYW0tZGV0YWlscy13aWRnZXQgLnF1aWNrLWNvbnRhY3QgLnF1aWNrLXRpdGxlIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6ICMwMTcyZDA7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xufVxuXG4udGVhbS1kZXRhaWxzLXdpZGdldCAucXVpY2stY29udGFjdCBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiAjMTUxNTE1O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuXG4udGVhbS1kZXRhaWxzLXdpZGdldCAucXVpY2stY29udGFjdCBhOmhvdmVyIHtcbiAgY29sb3I6ICMwMTcyZDA7XG59XG5cbi50ZWFtLWRldGFpbHMtd2lkZ2V0IC5xdWljay1jb250YWN0IC50ZWFtLXNpY2lhbC1saW5rIGEge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGNvbG9yOiAjMTUxNTE1O1xuICBmb250LXNpemU6IDE4cHg7XG4gIG1hcmdpbi1yaWdodDogMTVweDtcbn1cblxuLnRlYW0tZGV0YWlscy13aWRnZXQgLnF1aWNrLWNvbnRhY3QgLnRlYW0tc2ljaWFsLWxpbmsgYTpob3ZlciB7XG4gIGNvbG9yOiAjMDE3MmQwO1xufVxuXG4udGVhbS1kZXRhaWxzLXdpZGdldCAucXVpY2stY29udGFjdCAudGVhbS1zaWNpYWwtbGluayBhOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5cbi8qLS0gU2luZ2xlIFNraWxsIC0tKi9cbi5zaW5nbGUtc2tpbGwge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuXG4uc2luZ2xlLXNraWxsOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uc2luZ2xlLXNraWxsIHNwYW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICMxNTE1MTU7XG4gIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gIG1hcmdpbi1ib3R0b206IDEycHg7XG59XG5cbi5zaW5nbGUtc2tpbGwgLnNraWxsLWJhciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAzcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkYmRiZGI7XG4gIHBhZGRpbmc6IDFweDtcbn1cblxuLnNpbmdsZS1za2lsbCAuc2tpbGwtYmFyIC5za2lsbC1wcm9ncmVzcyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMTcyZDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnNpbmdsZS1za2lsbCAuc2tpbGwtYmFyIC5za2lsbC1wcm9ncmVzczo6YmVmb3JlIHtcbiAgY29udGVudDogYXR0cihkYXRhLXByb2dyZXNzKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAxNXB4O1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogIzE1MTUxNTtcbiAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbn1cblxuLyotLS0tLS0gdGVhbSBkZXRhaWxzIGVuZCAtLS0tLS0qL1xuLyotLS0tLS0gdGVhbSBhcmVhIHN0eWxlIGVuZCAtLS0tLS0qL1xuLyotLS0tLS0tIHByaWNpbmcgdGFibGUgc3RhcnQgLS0tLS0tLSovXG4ucHJpY2luZy1pdGVtIHtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBwYWRkaW5nOiA1MHB4IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2UxZTFlMTtcbiAgdHJhbnNpdGlvbjogMC40cztcbn1cblxuLnByaWNpbmctaXRlbTpob3ZlciwgLnByaWNpbmctaXRlbS5hY3RpdmUge1xuICBib3gtc2hhZG93OiAwIDAgMzBweCAxcHggcmdiYSgxLCAyNiwgNzIsIDAuMTIpO1xufVxuXG4uZG9sYXIge1xuICBjb2xvcjogIzAxMWE0ODtcbiAgZm9udC1zaXplOiAyNnB4O1xuICBmb250LXdlaWdodDogNjAwO1xuICBwYWRkaW5nLXJpZ2h0OiAzcHg7XG4gIHZlcnRpY2FsLWFsaWduOiBzdXBlcjtcbn1cblxuLnByaWNlLWhlYWQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vLi4vYXNzZXRzL2ltZy9iZy8xLnBuZyk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cblxuLnByaWNlLWhlYWQgaDIge1xuICBmb250LXNpemU6IDYwcHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NzkuOThweCkge1xuICAucHJpY2UtaGVhZCBoMiB7XG4gICAgZm9udC1zaXplOiAzNnB4O1xuICB9XG59XG5cbi5wcmljZS1oZWFkIGg0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4ucHJpY2luZy10aXRsZSB7XG4gIGNvbG9yOiAjMDE3MmQwO1xuICBmb250LXNpemU6IDMwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLXRvcDogMTVweDtcbn1cblxuLnByaWNpbmctbGlzdCB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIHBhZGRpbmc6IDMwcHg7XG59XG5cbi5wcmljaW5nLWxpc3QgbGkge1xuICBwYWRkaW5nOiAxMHB4IDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTFlMWUxO1xufVxuXG4ucHJpY2luZy1saXN0IGxpOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlMWUxZTE7XG59XG5cbi8qLS0tLS0tLSBwcmljaW5nIHRhYmxlIGVuZCAtLS0tLS0tKi9cbi8qLS0tLS0tIHBhZ2luYXRpb24gYXJlYSBzdHlsZSBzdGFydCAtLS0tLS0qL1xuLnBhZ2luYXRvaW4tYXJlYSB7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlMWUxZTE7XG59XG5cbi5wYWdpbmF0b2luLWFyZWEgLnBhZ2luYXRpb24tYm94IHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi5wYWdpbmF0b2luLWFyZWEgLnBhZ2luYXRpb24tYm94IGxpIHtcbiAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLnBhZ2luYXRvaW4tYXJlYSAucGFnaW5hdGlvbi1ib3ggbGk6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cblxuLnBhZ2luYXRvaW4tYXJlYSAucGFnaW5hdGlvbi1ib3ggbGkgYSB7XG4gIGNvbG9yOiAjMTUxNTE1O1xuICBoZWlnaHQ6IDM2cHg7XG4gIHdpZHRoOiAzNnB4O1xuICBmb250LXNpemU6IDE0cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsaW5lLWhlaWdodDogMzZweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xufVxuXG4ucGFnaW5hdG9pbi1hcmVhIC5wYWdpbmF0aW9uLWJveCBsaSBhIGkge1xuICBmb250LXNpemU6IDIycHg7XG4gIGxpbmUtaGVpZ2h0OiAzNnB4O1xufVxuXG4ucGFnaW5hdG9pbi1hcmVhIC5wYWdpbmF0aW9uLWJveCBsaSBhOmhvdmVyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJvcmRlci1jb2xvcjogIzAxNzJkMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAxNzJkMDtcbn1cblxuLnBhZ2luYXRvaW4tYXJlYSAucGFnaW5hdGlvbi1ib3ggbGkuYWN0aXZlIGEge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAxNzJkMDtcbn1cblxuLyotLS0tLS0gcGFnaW5hdGlvbiBhcmVhIHN0eWxlIGVuZCAtLS0tLS0qL1xuLyotLS0tLSBibG9nIHBvc3QgaXRlbSBzdGFydCAtLS0tLSovXG4uYmxvZy1pdGVtOmhvdmVyIC5ibG9nLXRodW1iIGltZyB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbn1cblxuLmJsb2ctdGh1bWIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNWY2Zjc7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5ibG9nLXRodW1iIGEge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmJsb2ctY29udGVudCB7XG4gIHBhZGRpbmctdG9wOiAxOHB4O1xufVxuXG4uYmxvZy10aXRsZSB7XG4gIHBhZGRpbmctYm90dG9tOiAxMHB4O1xufVxuXG4uYmxvZy10aXRsZSBhIHtcbiAgY29sb3I6ICMxNTE1MTU7XG59XG5cbi5ibG9nLXRpdGxlIGE6aG92ZXIge1xuICBjb2xvcjogIzAxNzJkMDtcbn1cblxuLmJsb2ctbWV0YTpob3ZlciBhIHtcbiAgY29sb3I6ICMxNTE1MTU7XG59XG5cbi5ibG9nLWNvbnRlbnQuYmxvZy1kZXRhaWxzIC5ibG9nLXRpdGxlIHtcbiAgZm9udC1zaXplOiAyOHB4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMS4zO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XG4gIC5ibG9nLWNvbnRlbnQuYmxvZy1kZXRhaWxzIC5ibG9nLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gIH1cbn1cblxuLmJsb2ctY29udGVudC5ibG9nLWRldGFpbHMgLmJsb2ctbWV0YSB7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xufVxuXG4uYmxvZy1jb250ZW50IGJsb2NrcXVvdGUge1xuICBib3JkZXItbGVmdDogNXB4IHNvbGlkICMwMTcyZDA7XG4gIG1hcmdpbjogMjVweCAzMnB4IDI1cHggMzBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmODtcbiAgcGFkZGluZzogMTVweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NzUuOThweCkge1xuICAuYmxvZy1jb250ZW50IGJsb2NrcXVvdGUge1xuICAgIG1hcmdpbjogMjVweCAxNXB4IDI1cHggMTVweDtcbiAgfVxufVxuXG4vKi0tLS0tIGJsb2cgcG9zdCBpdGVtIGVuZCAtLS0tLSovXG4vKi0tLS0tIGJsb2cgc2lkZWJhciBzdGFydCAtLS0tLS0tKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTEuOThweCksIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAuYmxvZy13aWRnZXQtd3JhcHBlciB7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgfVxufVxuXG4uYmxvZy13aWRnZXQtdGl0bGUge1xuICBmb250LXdlaWdodDogNTAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uYmxvZy13aWRnZXQtdGl0bGU6YmVmb3JlLCAuYmxvZy13aWRnZXQtdGl0bGU6YWZ0ZXIge1xuICBib3R0b206IC0xMHB4O1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxcHg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2UxZTFlMTtcbn1cblxuLmJsb2ctd2lkZ2V0LXRpdGxlOmFmdGVyIHtcbiAgd2lkdGg6IDUwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMTcyZDA7XG59XG5cbi53aWRnZXQtc2VhcmNoLWZvcm0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi53aWRnZXQtc2VhcmNoLWZvcm0gLnNlYXJjaC1maWVsZCB7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXI6IG5vbmU7XG4gIGhlaWdodDogNDZweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgcGFkZGluZzogMCAxNXB4O1xuICBwYWRkaW5nLXJpZ2h0OiA1NXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjZmNmY2O1xufVxuXG4ud2lkZ2V0LXNlYXJjaC1mb3JtIC5zZWFyY2gtYnRuIHtcbiAgd2lkdGg6IDQ2cHg7XG4gIGhlaWdodDogNDZweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAxNzJkMDtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgbGluZS1oZWlnaHQ6IDQ2cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xufVxuXG4ud2lkZ2V0LXNlYXJjaC1mb3JtIC5zZWFyY2gtYnRuOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE1MTUxNTtcbn1cblxuLnJlY2VudC1wb3N0cyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG5cbi5yZWNlbnQtcG9zdHMtaW1hZ2Uge1xuICB3aWR0aDogODBweDtcbn1cblxuLnJlY2VudC1wb3N0cy1ib2R5IHtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDgwcHgpO1xufVxuXG4ucmVjZW50LXBvc3RzLW1ldGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMTtcbiAgcGFkZGluZy1ib3R0b206IDEwcHg7XG59XG5cbi5yZWNlbnQtcG9zdHMtdGl0bGUge1xuICBmb250LXdlaWdodDogNTAwO1xuICBsaW5lLWhlaWdodDogMS4zO1xufVxuXG4ucmVjZW50LXBvc3RzLXRpdGxlIGEge1xuICBjb2xvcjogIzE1MTUxNTtcbn1cblxuLnJlY2VudC1wb3N0cy10aXRsZSBhOmhvdmVyIHtcbiAgY29sb3I6ICMwMTcyZDA7XG59XG5cbi5yZWNlbnQtcG9zdHM6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5ibG9nLWNhdGVnb3JpZXMgbGkge1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4uYmxvZy1jYXRlZ29yaWVzIGxpIGEge1xuICBjb2xvcjogIzE1MTUxNTtcbn1cblxuLmJsb2ctY2F0ZWdvcmllcyBsaSBzcGFuIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICB0cmFuc2l0aW9uOiAwLjRzO1xufVxuXG4uYmxvZy1jYXRlZ29yaWVzIGxpOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uYmxvZy1jYXRlZ29yaWVzIGxpOmhvdmVyIGEge1xuICBjb2xvcjogIzAxNzJkMDtcbn1cblxuLmJsb2ctY2F0ZWdvcmllcyBsaTpob3ZlciBzcGFuIHtcbiAgY29sb3I6ICMwMTcyZDA7XG59XG5cbi5ibG9nLXRhZyB7XG4gIG1hcmdpbi1ib3R0b206IC01cHg7XG59XG5cbi5ibG9nLXRhZyBhIHtcbiAgY29sb3I6ICMxNTE1MTU7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2UxZTFlMTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHBhZGRpbmc6IDhweCAxNXB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbn1cblxuLmJsb2ctdGFnIGE6aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAxNzJkMDtcbiAgYm9yZGVyLWNvbG9yOiAjMDE3MmQwO1xufVxuXG4vKi0tLS0tIGJsb2cgc2lkZWJhciBlbmQgLS0tLS0tLSovXG4vKi0tLSBibG9nIGNvbW1lbnQgc2VjdGlvbiBzdGFydCAtLS0qL1xuLmNvbW1lbnQtc2VjdGlvbiB7XG4gIG1hcmdpbi10b3A6IC0xMHB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC5jb21tZW50LXNlY3Rpb24ge1xuICAgIG1hcmdpbi10b3A6IC0xNHB4O1xuICB9XG59XG5cbi5jb21tZW50LXNlY3Rpb24gaDQge1xuICBsaW5lLWhlaWdodDogMTtcbiAgcGFkZGluZy1ib3R0b206IDE1cHg7XG59XG5cbi5jb21tZW50LXNlY3Rpb24gdWwgbGkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlMWUxZTE7XG59XG5cbi5jb21tZW50LXNlY3Rpb24gdWwgbGk6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NzkuOThweCkge1xuICAuY29tbWVudC1zZWN0aW9uIHVsIGxpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4uY29tbWVudC1zZWN0aW9uIHVsIGxpIC5hdXRob3ItYXZhdGFyIHtcbiAgZmxleC1iYXNpczogNjZweDtcbiAgbWF4LWhlaWdodDogNjJweDtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3OS45OHB4KSB7XG4gIC5jb21tZW50LXNlY3Rpb24gdWwgbGkgLmF1dGhvci1hdmF0YXIge1xuICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiA2NnB4O1xuICAgIGhlaWdodDogNjJweDtcbiAgfVxufVxuXG4uY29tbWVudC1zZWN0aW9uIHVsIGxpLmNvbW1lbnQtY2hpbGRyZW4ge1xuICBtYXJnaW4tbGVmdDogNDBweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NzkuOThweCkge1xuICAuY29tbWVudC1zZWN0aW9uIHVsIGxpLmNvbW1lbnQtY2hpbGRyZW4ge1xuICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICB9XG59XG5cbi5jb21tZW50LXNlY3Rpb24gdWwgbGkgLmNvbW1lbnQtYm9keSB7XG4gIGZsZXgtYmFzaXM6IDEwMCU7XG59XG5cbi5jb21tZW50LXNlY3Rpb24gdWwgbGkgLmNvbW1lbnQtYm9keSBoNSB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgZm9udC1mYW1pbHk6IFwiU2FyYWJ1blwiLCBzYW5zLXNlcmlmO1xufVxuXG4uY29tbWVudC1zZWN0aW9uIHVsIGxpIC5jb21tZW50LWJvZHkgLmNvbW1lbnQtcG9zdC1kYXRlIHtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbn1cblxuLmNvbW1lbnQtc2VjdGlvbiB1bCBsaSAuY29tbWVudC1ib2R5IC5yZXBseS1idG4ge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi5jb21tZW50LXNlY3Rpb24gdWwgbGkgLmNvbW1lbnQtYm9keSAucmVwbHktYnRuIGEge1xuICBjb2xvcjogIzE1MTUxNTtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDRweCAxNXB4O1xuICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2UxZTFlMTtcbn1cblxuLmNvbW1lbnQtc2VjdGlvbiB1bCBsaSAuY29tbWVudC1ib2R5IC5yZXBseS1idG4gYTpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBib3JkZXItY29sb3I6ICMwMTcyZDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMTcyZDA7XG59XG5cbi8qLS0tIGJsb2cgY29tbWVudCBzZWN0aW9uIGVuZCAtLS0qL1xuLyotLS0tLS0gYmxvZyBjb21tZW50IGJveCBzdGFydCAtLS0tLSovXG4uYmxvZy1jb21tZW50LXdyYXBwZXIge1xuICBtYXJnaW4tdG9wOiAtMTBweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAuYmxvZy1jb21tZW50LXdyYXBwZXIge1xuICAgIG1hcmdpbi10b3A6IC0xNHB4O1xuICB9XG59XG5cbi5ibG9nLWNvbW1lbnQtd3JhcHBlciBwIHtcbiAgcGFkZGluZy10b3A6IDEwcHg7XG59XG5cbi5ibG9nLWNvbW1lbnQtd3JhcHBlciAuY29tbWVudC1wb3N0LWJveCBsYWJlbCB7XG4gIGNvbG9yOiAjMTUxNTE1O1xuICBmb250LXdlaWdodDogNTAwO1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG59XG5cbi5ibG9nLWNvbW1lbnQtd3JhcHBlciAuY29tbWVudC1wb3N0LWJveCAuY29tZW50LWZpZWxkIHtcbiAgYmFja2dyb3VuZDogI2Y4ZjhmODtcbiAgYm9yZGVyOiBub25lO1xuICBjb2xvcjogIzE1MTUxNTtcbiAgcGFkZGluZzogOHB4IDEwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTFlMWUxO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC5ibG9nLWNvbW1lbnQtd3JhcHBlciAuY29tbWVudC1wb3N0LWJveCAuY29tZW50LWZpZWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG59XG5cbi5ibG9nLWNvbW1lbnQtd3JhcHBlciAuY29tbWVudC1wb3N0LWJveCB0ZXh0YXJlYSB7XG4gIGhlaWdodDogMTMwcHg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjZjhmOGY4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTFlMWUxO1xufVxuXG4uYmxvZy1jb21tZW50LXdyYXBwZXIgLmNvbW1lbnQtcG9zdC1ib3ggLmNvbWVudC1idG4ge1xuICBtYXJnaW4tdG9wOiAzMHB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC5ibG9nLWNvbW1lbnQtd3JhcHBlciAuY29tbWVudC1wb3N0LWJveCAuY29tZW50LWJ0biB7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgfVxufVxuXG4vKi0tLS0tLS0gYmxvZyBjb21tZW50IGJveCBlbmQgLS0tLS0tLS0qL1xuLyotLS0tLSBHb29nbGUgbWFwIGFyZWEgc3RhcnQgLS0tLS0qL1xuI2dvb2dsZS1tYXAge1xuICBoZWlnaHQ6IDUwMHB4O1xuICB3aWR0aDogMTAwJTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gICNnb29nbGUtbWFwIHtcbiAgICBoZWlnaHQ6IDQwMHB4O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgI2dvb2dsZS1tYXAge1xuICAgIGhlaWdodDogMzUwcHg7XG4gIH1cbn1cblxuLyotLS0tLSBHb29nbGUgbWFwIGFyZWEgZW5kIC0tLS0tKi9cbi8qLS0tLS0tIGNvbnRhY3QgZm9ybSBhcmVhIHN0YXJ0IC0tLS0tLS0qL1xuLmNvbnRhY3QtbWVzc2FnZSBmb3JtIGlucHV0LFxuLmNvbnRhY3QtbWVzc2FnZSBmb3JtIHRleHRhcmVhIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogMTBweCAxMHB4O1xuICBib3JkZXItYm90dG9tOiAzcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG5cbi5jb250YWN0LW1lc3NhZ2UgZm9ybSB0ZXh0YXJlYSB7XG4gIGhlaWdodDogMTUwcHg7XG59XG5cbi8qLS0tLS0tIGNvbnRhY3QgZm9ybSBhcmVhIHN0YXJ0IC0tLS0tLS0qL1xuLyotLS0tLS0gY29udGFjdCBpbmZvIGFyZWEgc3RhcnQgLS0tLS0tLSovXG4uY29udGFjdC1pbmZvcm1hdGlvbiB7XG4gIGhlaWdodDogMTAwJTtcbiAgcGFkZGluZy1sZWZ0OiAzMHB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxLjk4cHgpLCBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLmNvbnRhY3QtaW5mb3JtYXRpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDY1cHg7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5cbi5jb250YWN0LWluZm9ybWF0aW9uIHAge1xuICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MS45OHB4KSwgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC5jb250YWN0LWluZm9ybWF0aW9uIHAge1xuICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICB9XG59XG5cbi5jb250YWN0LWluZm9ybWF0aW9uIHVsIGxpIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlMWUxZTE7XG4gIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3OS45OHB4KSB7XG4gIC5jb250YWN0LWluZm9ybWF0aW9uIHVsIGxpIHtcbiAgICBhbGlnbi1pdGVtczogYmFzZWxpbmU7XG4gIH1cbn1cblxuLmNvbnRhY3QtaW5mb3JtYXRpb24gdWwgbGk6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuXG4uY29udGFjdC1pbmZvcm1hdGlvbiB1bCBsaSBpIHtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xufVxuXG4uY29udGFjdC10aXRsZSB7XG4gIHBhZGRpbmctYm90dG9tOiAzNXB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxLjk4cHgpLCBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLmNvbnRhY3QtdGl0bGUge1xuICAgIG1hcmdpbi10b3A6IC0xM3B4O1xuICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICB9XG59XG5cbi8qLS0tLS0tIGNvbnRhY3QgaW5mbyBhcmVhIGVuZCAtLS0tLS0tKi9cbi8qLS0tLS0tLS0tLSBmYXEgc3R5bGUgc3RhcnQgLS0tLS0tLS0tLSovXG4uZmFxLWlubmVyIC5jYXJkIHtcbiAgYm9yZGVyOiBub25lO1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuXG4uZmFxLWlubmVyIC5jYXJkOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uZmFxLWlubmVyIC5jYXJkIC5jYXJkLWJvZHkge1xuICBsaW5lLWhlaWdodDogMS44O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTFlMWUxO1xufVxuXG4uY2FyZC1oZWFkZXIge1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IG5vbmU7XG59XG5cbi5jYXJkLWhlYWRlciBidXR0b24ge1xuICBjb2xvcjogIzE1MTUxNTtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICB3aWR0aDogMTAwJTtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgcGFkZGluZzogMTZweCAzMHB4O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmODtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3OS45OHB4KSB7XG4gIC5jYXJkLWhlYWRlciBidXR0b24ge1xuICAgIHBhZGRpbmc6IDEycHggMTBweDtcbiAgfVxufVxuXG4uY2FyZC1oZWFkZXIgYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAxNzJkMDtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5jYXJkLWhlYWRlciBidXR0b24gaSB7XG4gIGNvbG9yOiAjMDE3MmQwO1xuICBmb250LXNpemU6IDIwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG59XG5cbi5jYXJkLWhlYWRlciBidXR0b246YmVmb3JlIHtcbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiAyMHB4O1xuICBjb250ZW50OiBcIlxcZjEwN1wiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGZvbnQtZmFtaWx5OiBcIkZvbnRBd2Vzb21lXCI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NzkuOThweCkge1xuICAuY2FyZC1oZWFkZXIgYnV0dG9uOmJlZm9yZSB7XG4gICAgcmlnaHQ6IDEwcHg7XG4gIH1cbn1cblxuLmZhcS1pbm5lciAuY2FyZC1oZWFkZXIgLmFjY29yZGlvLWhlYWRpbmdbYXJpYS1leHBhbmRlZD1cImZhbHNlXCJdIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmODtcbn1cblxuLmZhcS1pbm5lciAuY2FyZC1oZWFkZXIgLmFjY29yZGlvLWhlYWRpbmdbYXJpYS1leHBhbmRlZD1cInRydWVcIl0ge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAxNzJkMDtcbn1cblxuLmZhcS1pbm5lciAuY2FyZC1oZWFkZXIgLmFjY29yZGlvLWhlYWRpbmdbYXJpYS1leHBhbmRlZD1cInRydWVcIl0gaSB7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uZmFxLWlubmVyIC5jYXJkLWhlYWRlciAuYWNjb3JkaW8taGVhZGluZ1thcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEwNlwiO1xufVxuXG4vKi0tLS0tLS0tLS0gZmFxIHN0eWxlIGVuZCAtLS0tLS0tLS0tKi9cbi5lcnJvciBoMSB7XG4gIGZvbnQtc2l6ZTogMjAwcHg7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGxldHRlci1zcGFjaW5nOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbWFyZ2luLXRvcDogLTQ0cHg7XG4gIGNvbG9yOiAjMDE3MmQwO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgLmVycm9yIGgxIHtcbiAgICBmb250LXNpemU6IDEzMHB4O1xuICAgIG1hcmdpbi10b3A6IC0zMHB4O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLmVycm9yIGgxIHtcbiAgICBmb250LXNpemU6IDEwMHB4O1xuICAgIG1hcmdpbi10b3A6IC0yM3B4O1xuICB9XG59XG5cbi5lcnJvciBoMiB7XG4gIGZvbnQtc2l6ZTogMjVweDtcbiAgcGFkZGluZzogMTBweCAwO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3OS45OHB4KSB7XG4gIC5lcnJvciBoMiB7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICB9XG59XG5cbi5lcnJvciAuc2VhcmNoZm9ybSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbi10b3A6IDQwcHg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbn1cblxuLmVycm9yIC5zZWFyY2hmb3JtX19pbnB1dCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlMWUxZTE7XG4gIGhlaWdodDogNDVweDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctbGVmdDogMTVweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NzkuOThweCkge1xuICAuZXJyb3IgLnNlYXJjaGZvcm1fX2lucHV0IHtcbiAgICB3aWR0aDogODUlO1xuICB9XG59XG5cbi5lcnJvciAuc2VhcmNoZm9ybV9fc3VibWl0IHtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDE3MmQwO1xuICB3aWR0aDogNzBweDtcbiAgY29sb3I6ICNmZmY7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmVycm9yIC5zZWFyY2hmb3JtX19zdWJtaXQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTUxNTE1O1xufVxuXG4uZXJyb3IgLmJ0bi1hbGwge1xuICBtYXJnaW4tdG9wOiAzMHB4O1xufVxuXG4vKi0tLS0tIGZvb3RlciBzZWN0aW9uIHN0YXJ0IC0tLS0tKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTEuOThweCksIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAuZm9vdGVyLXdpZGdldC1hcmVhLnBiLTEyNSB7XG4gICAgcGFkZGluZy1ib3R0b206IDY3cHg7XG4gIH1cbn1cblxuLndpZGdldC1sb2dvIHtcbiAgbWF4LXdpZHRoOiAxMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cblxuLndpZGdldC10aXRsZSB7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIG1hcmdpbi1ib3R0b206IDM4cHg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTEuOThweCksIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAud2lkZ2V0LXRpdGxlIHtcbiAgICBtYXJnaW46IC02cHggMCAyMHB4O1xuICB9XG59XG5cbi53aWRnZXQtYm9keSAuZGVzYyB7XG4gIGNvbG9yOiAjMTUxNTE1O1xufVxuXG4ubmV3cy1zdWJ0aXRsZSBwIGIge1xuICBmb250LXdlaWdodDogNjAwO1xuICBwYWRkaW5nLXRvcDogNXB4O1xuICBwYWRkaW5nLWJvdHRvbTogOHB4O1xufVxuXG4uY29udGFjdC1pbmZvIHtcbiAgcGFkZGluZy10b3A6IDEycHg7XG59XG5cbi5jb250YWN0LWluZm8gbGkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBsaW5lLWhlaWdodDogMS41O1xuICBtYXJnaW4tYm90dG9tOiAyMnB4O1xufVxuXG4uY29udGFjdC1pbmZvIGxpIHNwYW4ge1xuICBmb250LXdlaWdodDogNjAwO1xuICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG59XG5cbi5jb250YWN0LWluZm8gbGk6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi51c2VmdWwtbGluayBsaSB7XG4gIGxpbmUtaGVpZ2h0OiAxLjc7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIHdpZHRoOiA1MCU7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4udXNlZnVsLWxpbmsgbGkgYSB7XG4gIGNvbG9yOiAjMTUxNTE1O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctbGVmdDogMThweDtcbn1cblxuLnVzZWZ1bC1saW5rIGxpIGE6YmVmb3JlIHtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDA7XG4gIGNvbnRlbnQ6ICdcXGYxMDEnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGZvbnQtZmFtaWx5OiBcIkZvbnRBd2Vzb21lXCI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLnVzZWZ1bC1saW5rIGxpIGE6aG92ZXIge1xuICBjb2xvcjogIzAxNzJkMDtcbiAgcGFkZGluZy1sZWZ0OiAyNXB4O1xufVxuXG4udXNlZnVsLWxpbmsgbGk6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4udHdpdHRlci1wb3N0IHtcbiAgcGFkZGluZy1yaWdodDogMjVweDtcbn1cblxuLnR3aXR0ZXItcG9zdCBsaTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgbWFyZ2luLWJvdHRvbTogMjJweDtcbn1cblxuLm5ld3NsZXR0ZXItaW5uZXIge1xuICBtYXJnaW4tdG9wOiAxNXB4O1xufVxuXG4ubmV3c2xldHRlci1pbm5lciBmb3JtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ubmV3c2xldHRlci1pbm5lciAubmV3cy1maWVsZCB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNTBweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAjMTUxNTE1O1xuICBwYWRkaW5nOiAwIDI1cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlMWUxZTE7XG4gIGJvcmRlci1yYWRpdXM6IDUwcHg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbi5uZXdzbGV0dGVyLWlubmVyIC5idG4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWM0N2MxO1xufVxuXG4ubmV3c2xldHRlci1pbm5lciAuYnRuOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE1MTUxNTtcbn1cblxuLmZvb3Rlci1ib3R0b20ge1xuICBwYWRkaW5nOiAyMXB4IDA7XG59XG5cbi5jb3B5cmlnaHQtdGV4dCBwIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLmNvcHlyaWdodC10ZXh0IHAgYSB7XG4gIGNvbG9yOiAjMDE3MmQwO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE2MDBweCkge1xuICAuZm9vdGVyLXdpZGdldC1hcmVhIFtjbGFzcyo9XCJjb2wtXCJdIC5mb290ZXItc2luZ2xlLXdpZGdldCB7XG4gICAgcGFkZGluZy1sZWZ0OiAxOHB4O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTYwMHB4KSB7XG4gIC5mb290ZXItd2lkZ2V0LWFyZWEgW2NsYXNzKj1cImNvbC1cIl06Zmlyc3QtY2hpbGQgLmZvb3Rlci1zaW5nbGUtd2lkZ2V0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cblxuLyotLS0tLSBmb290ZXIgc2VjdGlvbiBlbmQgLS0tLS0qL1xuIiwiLyotLS0tLS0gVHlwb2dyYXBoeSBTdHlsZSBTdGFydCAtLS0tLS0qL1xuXG5ib2R5IHtcbiAgICBjb2xvcjogJHBhcmFncmFwaDtcbiAgICBsaW5lLWhlaWdodDogMS43O1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbn1cblxuYSB7XG4gICAgdHJhbnNpdGlvbjogMC40cztcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG59XG5cbnAge1xuICAgIG1hcmdpbi1ib3R0b206IDhweDtcblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxufVxuXG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYge1xuICAgIGZvbnQtZmFtaWx5OiAkaGVhZGluZy1mb250O1xuICAgIGNvbG9yOiAkYmxhY2stc29mdDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgbWFyZ2luOiAwO1xufVxuXG4uaDEsXG4uaDIsXG4uaDMsXG4uaDQsXG4uaDUsXG4uaDYge1xuICAgIG1hcmdpbjogMDtcbiAgICBsaW5lLWhlaWdodDogMS41O1xufVxuXG5oMSxcbi5oMSB7XG4gICAgZm9udC1zaXplOiAzNnB4O1xuXG4gICAgLy8gcmVzcG9uc2l2ZVxuICAgIEBtZWRpYSAjeyRzbS1kZXZpY2V9IHtcbiAgICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgIH1cblxuICAgIEBtZWRpYSAjeyR4eHMtZGV2aWNlfSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgICB9XG59XG5cbmgyLFxuLmgyIHtcbiAgICBmb250LXNpemU6IDMwcHg7XG5cbiAgICAvLyByZXNwb25zaXZlXG4gICAgQG1lZGlhICN7JHNtLWRldmljZX0ge1xuICAgICAgICBmb250LXNpemU6IDI2cHg7XG4gICAgfVxuXG4gICAgQG1lZGlhICN7JHh4cy1kZXZpY2V9IHtcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgIH1cbn1cblxuaDMsXG4uaDMge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcblxuICAgIC8vIHJlc3BvbnNpdmVcbiAgICBAbWVkaWEgI3skc20tZGV2aWNlfSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICB9XG59XG5cbmg0LFxuLmg0IHtcbiAgICBmb250LXNpemU6IDIwcHg7XG59XG5cbmg1LFxuLmg1IHtcbiAgICBmb250LXNpemU6IDE4cHg7XG59XG5cbmg2LFxuLmg2IHtcbiAgICBmb250LXNpemU6IDE2cHg7XG59XG5cbnVsIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIGxpIHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB9XG59XG5cbnN0cm9uZyxcbmIge1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbmFkZHJlc3Mge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbmZpZ3VyZSB7XG4gICAgbWFyZ2luOiAwO1xufVxuXG5pbWcge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB0cmFuc2l0aW9uOiAwLjRzO1xufVxuXG4uYmctaW1nIHtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuXG4uYnRuLFxuYnV0dG9uIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIHRyYW5zaXRpb246IDAuNHM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgICAmOmFjdGl2ZSxcbiAgICAmOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB9XG59XG5cbmlucHV0LFxudGV4dGFyZWEge1xuICAgIHJlc2l6ZTogbm9uZTtcblxuICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cbn1cblxuLmZvcm0tY29udHJvbCB7XG4gICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgIH1cbn1cblxuLyotLS0tLS0tLS0gc2xpY2sgc2xpZGVyIGRvdCBzdHlsZSBzdGFydCAtLS0tLS0tKi9cbi5zbGljay1kb3Qtc3R5bGUge1xuICAgIHVsIHtcbiAgICAgICAgJi5zbGljay1kb3RzIHtcbiAgICAgICAgICAgIGJvdHRvbTogMTVweDtcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcblxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG5cbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE0cHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTRweDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IC01MDAwcHg7XG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjRzO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAkcGFyYWdyYXBoLWxpZ2h0O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLnNsaWNrLWFjdGl2ZSBidXR0b24ge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gY3VzdG9tIGNvbnRhaW5lclxuLmNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiAxMjAwcHg7XG5cbiAgICAvLyByZXNwb25zaXZlXG4gICAgQG1lZGlhICN7JHNtLWRldmljZX0ge1xuICAgICAgICBtYXgtd2lkdGg6IDU1MHB4O1xuICAgIH1cblxuICAgIEBtZWRpYSAjeyR4cy1kZXZpY2V9IHtcbiAgICAgICAgbWF4LXdpZHRoOiA0NTBweDtcbiAgICB9XG5cbiAgICBAbWVkaWEgI3skeHhzLWRldmljZX0ge1xuICAgICAgICBtYXgtd2lkdGg6IDMwMHB4O1xuICAgIH1cbn0iLCIvLz09IFR5cG9ncmFwaHkgVmFyaWFibGVcbiRmb250LWZhbWlseS1iYXNlOiAnU2FyYWJ1bicsXG5zYW5zLXNlcmlmO1xuJGhlYWRpbmctZm9udDogJ1NhcmFidW4nLFxuc2Fucy1zZXJpZjtcbiRmb250X2F3ZXNvbWU6ICdGb250QXdlc29tZSc7XG4kZm9udC1zaXplLWJhc2U6IDE2cHg7XG5cbi8vIFNpdGUgVHlwb2dyYXBoeSBDb2xvcnNcbiRwYXJhZ3JhcGg6ICMxNTE1MTU7XG4kcGFyYWdyYXBoLWxpZ2h0OiAjNzc3Nzc3O1xuJGdyYXktY29sb3I6ICM5OTk5OTk7XG4kbGlnaHQtZ3JheTogI2YyZjJmMztcbiRsaWdodC13aGl0ZTogI2Y0ZjVmNztcbiRhc2gtY29sb3I6ICNkMmQyZDI7XG5cbi8vPT0gQnJhbmQgQ29sb3JcbiR0aGVtZS1jb2xvcjogIzAxNzJkMDtcbiR0aGVtZS1jb2xvci0yOiAjMWM0N2MxO1xuJHRoZW1lLWNvbG9yLWRhcms6IGRhcmtlbigkdGhlbWUtY29sb3IsIDE1JSk7XG4kdGhlbWUtY29sb3ItbGlnaHQ6IGxpZ2h0ZW4oJHRoZW1lLWNvbG9yLCAxNSUpO1xuJGJkci1jb2xvcjogI2UxZTFlMTtcbiRiZy1kYXJrOiAjMjIyODJlO1xuJGJnLWdyYXk6ICNmOGY4Zjg7XG4kYmctY29sb3I6ICNmMWYxZjE7XG5cbi8vPT0gQWx0ZXJuYXRpdmUgQ29sb3JcbiR3aGl0ZTogI2ZmZjtcbiRvZmZ3aGl0ZTogI2Y0ZjRmNDtcbiRibGFjazogIzAwMDtcbiRibGFjay1zb2Z0OiAjMTUxNTE1O1xuJG5hdnk6ICMzYjU5OTg7XG4kcGluazogI0ZGNjlCNDtcbiR2aW9sZXQ6ICM5OTMzY2M7XG4kb2xpdmU6ICM1NTkxMzc7XG4kZ3JlZW46ICMwMDgwMDA7XG4kcmVkOiAjZTc0YzNjO1xuJG9yYW5nZTogI2Y1NzQwYTtcbiR5ZWxsb3c6ICNmYmJmMDA7XG4kbGViZWwtbmV3OiAjM2ZjYzhkO1xuJGxlYmVsLWRpc2NvdW50OiAjZmY1ZTAwO1xuXG4vLz09IFNvY2lhbCBNZWRpYSBJY29ucyBDb2xvclxuLy89PSBTb2NpYWwgTWVkaWEgSWNvbnMgQ29sb3JcbiRmYWNlYm9vazogIzNCNTk5OTtcbiR0d2l0dGVyOiAjMURBMUYyO1xuJHBpbnRlcmVzdDogI0NCMjAyODtcbiR5b3V0dWJlOiAjQ0MzMzJEO1xuJGdvb2dsZS1wbHVzOiAjZmU2ZDRjO1xuJGluc3RhZ3JhbTogI2M2MTliODtcblxuLy89PSBSZXNwb25zaXZlIFZhcmlhYmxlc1xuJHhsbWF4LWRldmljZTogJ29ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjAwcHgpIGFuZCAobWF4LXdpZHRoOiAxNTk5Ljk4cHgpJztcbiR4bG1pZC1kZXZpY2U6ICdvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwMHB4KSBhbmQgKG1heC13aWR0aDogMTQ5OS45OHB4KSc7XG4keHhsLWRldmljZTogJ29ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxNjAwcHgpJztcbiR4bC1kZXZpY2U6ICdvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwMHB4KSc7XG4kbGctZGV2aWNlOiAnb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTE5OS45OHB4KSc7XG4kbWQtZGV2aWNlOiAnb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxLjk4cHgpJztcbiRzbS1kZXZpY2U6ICdvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3Ljk4cHgpJztcbiR4cy1kZXZpY2U6ICdvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTc1Ljk4cHgpJztcbiR4eHMtZGV2aWNlOiAnb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3OS45OHB4KSc7IiwiLyotLS0tLS0tIHNob3J0IGNsYXNzZXMgc3RhcnQgLS0tLS0tLSovXG4uc2VjdGlvbi1wYWRkaW5nIHtcbiAgICBwYWRkaW5nOiAxMzBweCAwO1xuXG4gICAgLy8gcmVzcG9uc2l2ZVxuICAgIEBtZWRpYSAjeyRtZC1kZXZpY2UsICRzbS1kZXZpY2V9IHtcbiAgICAgICAgcGFkZGluZzogNjhweCAwO1xuICAgIH1cblxuICAgICYtLXB0Yl85MCB7XG4gICAgICAgIHBhZGRpbmc6IDkwcHggMDtcblxuICAgICAgICAvLyByZXNwb25zaXZlXG4gICAgICAgIEBtZWRpYSAjeyRtZC1kZXZpY2UsICRzbS1kZXZpY2V9IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDY4cHggMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLXB0IHtcbiAgICAgICAgJl84MCB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogODBweDtcblxuICAgICAgICAgICAgLy8gcmVzcG9uc2l2ZVxuICAgICAgICAgICAgQG1lZGlhICN7JG1kLWRldmljZSwgJHNtLWRldmljZX0ge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiA2OHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi0tcGIge1xuICAgICAgICAmXzEyMCB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTIwcHg7XG5cbiAgICAgICAgICAgIC8vIHJlc3BvbnNpdmVcbiAgICAgICAgICAgIEBtZWRpYSAjeyRtZC1kZXZpY2UsICRzbS1kZXZpY2V9IHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNjhweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnBiLTEyNSB7XG4gICAgcGFkZGluZy1ib3R0b206IDEyNXB4O1xuXG4gICAgLy8gcmVzcG9uc2l2ZVxuICAgIEBtZWRpYSAjeyRtZC1kZXZpY2UsICRzbS1kZXZpY2V9IHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDYwcHg7XG4gICAgfVxufVxuXG4ucGwtbGctNDUge1xuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA0NXB4O1xuICAgIH1cbn1cblxuLnByLWxnLTQ1IHtcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDQ1cHg7XG4gICAgfVxufVxuXG4ubWItMzAge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG5cbi5tdC0yMCB7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbn1cblxuLm1iLTIwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4ubXQtMTAge1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG59XG5cbi5tdC0zMCB7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbn1cblxuLm10LTQwIHtcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xufVxuXG4ubXQtNTAge1xuICAgIG1hcmdpbi10b3A6IDUwcHg7XG59XG5cbi5tdC02NSB7XG4gICAgbWFyZ2luLXRvcDogNjVweDtcblxuICAgIC8vIHJlc3BvbnNpdmVcbiAgICBAbWVkaWEgI3skbWQtZGV2aWNlLCAkc20tZGV2aWNlfSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgfVxufVxuXG4ubXQtMTAwIHtcbiAgICBtYXJnaW4tdG9wOiAxMDBweDtcbn1cblxuLm10bi0yMCB7XG4gICAgbWFyZ2luLXRvcDogLTIwcHg7XG59XG5cbi5tYm4tMzAge1xuICAgIG1hcmdpbi1ib3R0b206IC0zMHB4O1xufVxuXG4ubXRuLTMwIHtcbiAgICBtYXJnaW4tdG9wOiAtMzBweDtcbn1cblxuLm10bi00MCB7XG4gICAgbWFyZ2luLXRvcDogLTQwcHg7XG59XG5cbi5tdG4tNjUge1xuICAgIG1hcmdpbi10b3A6IC02NXB4O1xuXG4gICAgLy8gcmVzcG9uc2l2ZVxuICAgIEBtZWRpYSAjeyRtZC1kZXZpY2UsICRzbS1kZXZpY2V9IHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTQwcHg7XG4gICAgfVxufVxuXG4ubXRuLTEwIHtcbiAgICBtYXJnaW4tdG9wOiAtMTBweDtcbn1cblxuLm10Yi0zMCB7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuXG4ubXRuLTQwIHtcbiAgICBtYXJnaW4tdG9wOiAtNDBweDtcbn1cblxuLnB0Yi0zMCB7XG4gICAgcGFkZGluZzogMzBweCAwO1xufVxuXG4ubXRuLTEwMCB7XG4gICAgbWFyZ2luLXRvcDogLTEwMHB4O1xufVxuXG4ubXRtZC0wIHtcbiAgICBAbWVkaWEgI3skbWQtZGV2aWNlfSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi5tdHNtLTAge1xuICAgIEBtZWRpYSAjeyRzbS1kZXZpY2V9IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLyotLS0tLS0tIHNob3J0IGNsYXNzZXMgZW5kIC0tLS0tLS0qLyIsIi8qLS0tLS0tLSBoZWFkZXIgdG9wIHN0eWxlIHN0YXJ0IC0tLS0tLS0qL1xyXG4uaGVhZGVyLXRvcCB7XHJcbiAgICBwYWRkaW5nOiAxMnB4IDA7XHJcbn1cclxuXHJcbi5oZWFkZXItdG9wLWxlZnQge1xyXG4gICAgY29sb3I6ICR3aGl0ZTtcclxuICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcblxyXG4gICAgLy8gcmVzcG9uc2l2ZVxyXG4gICAgQG1lZGlhICN7JG1kLWRldmljZSwgJHNtLWRldmljZX0ge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIH1cclxuXHJcbiAgICBhIHtcclxuICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgY29sb3I6ICRibGFjay1zb2Z0O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy8gaGVhZGVyIHRvcCBtaWRkaWxlXHJcbi5sb2dpbi1yZWdpc3RlciB7XHJcblxyXG4gICAgLy8gcmVzcG9uc2l2ZVxyXG4gICAgQG1lZGlhICN7JHhzLWRldmljZX0ge1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA2cHg7XHJcbiAgICB9XHJcblxyXG4gICAgYSB7XHJcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2stc29mdDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIGhlYWRlciBzb2NpYWwgbGlua1xyXG4uaGVhZGVyLXNvY2lhbC1saW5rIHtcclxuICAgIGEge1xyXG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDI2cHg7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrLXNvZnQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKi0tLS0tLS0gaGVhZGVyIHRvcCBzdHlsZSBlbmQgLS0tLS0tLSovXHJcblxyXG4vKi0tLS0tLSBtYWluIG1lbnUgc3RhcnQgLS0tLS0tKi9cclxuLmJyYW5kLWxvZ28ge1xyXG4gICAgbWF4LXdpZHRoOiAxMTBweDtcclxufVxyXG5cclxuLm1haW4tbWVudS13cmFwcGVyIHtcclxuICAgIHBhZGRpbmc6IDIwcHggMDtcclxuXHJcbiAgICAmLmhlYWRlci10cmFuc3BhcmVudCB7XHJcbiAgICAgICAgcGFkZGluZzogNDNweCAwO1xyXG4gICAgfVxyXG59XHJcblxyXG4ubWFpbi1tZW51IHtcclxuICAgIHVsIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG5cclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjay1zb2Z0O1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAyMnB4O1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRoZWFkaW5nLWZvbnQ7XHJcblxyXG4gICAgICAgICAgICAgICAgaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgM3B4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpob3Zlcj4sXHJcbiAgICAgICAgICAgICYuYWN0aXZlPiB7XHJcbiAgICAgICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICB1bCB7XHJcblxyXG4gICAgICAgICAgICAgICAgLy8gZHJvcGRvd24gbWVudVxyXG4gICAgICAgICAgICAgICAgJi5kcm9wZG93biB7XHJcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE3NXB4O1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjRzO1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiA5OTk5OTtcclxuICAgICAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjBweCk7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2VmZWZlZjtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmxleC1iYXNpczogMTAwJTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRwYXJhZ3JhcGg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAyMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VmZWZlZjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiA1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXI+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVsIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLmRyb3Bkb3duIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHVsIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICYuZHJvcGRvd24ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIHVsIHtcclxuICAgICAgICAgICAgICAgICAgICAmLmRyb3Bkb3duIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IHZpc2libGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDApO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLyotLS0tLS0gbWFpbiBtZW51IGVuZCAtLS0tLS0qL1xyXG5cclxuLyotLS0tLS0gc3RpY2t5IG1lbnUgc3R5bGUgc3RhcnQgLS0tLS0tKi9cclxuLnN0aWNreSB7XHJcbiAgICAmLmlzLXN0aWNreSB7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIHotaW5kZXg6IDk7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCA4cHggMXB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcclxuICAgICAgICBhbmltYXRpb246IDkwMG1zIGN1YmljLWJlemllcigwLjIsIDEsIDAuMjIsIDEpIDBzIG5vcm1hbCBub25lIDEgcnVubmluZyBmYWRlSW5Eb3duO1xyXG5cclxuICAgICAgICAmLm1haW4tbWVudS13cmFwcGVyIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMTBweCAwO1xyXG5cclxuICAgICAgICAgICAgLmJyYW5kLWxvZ28ge1xyXG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbn1cclxuXHJcbi8qLS0tLS0tIHN0aWNreSBtZW51IHN0eWxlIGVuZCAtLS0tLS0qL1xyXG5cclxuLy8gaGVhZGVyIHRyYW5zcGFyZW50IGNzc1xyXG4uaGVhZGVyLXRyYW5zcGFyZW50IHtcclxuICAgIHRvcDogNTRweDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHotaW5kZXg6IDE7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxufSIsIi8qLS0tLS0gbW9iaWxlIG1lbnUgc3RhcnQgLS0tLS0qL1xyXG4ubW9iaWxlLWhlYWRlciB7XHJcbiAgICBwYWRkaW5nOiAxNXB4IDA7XHJcbn1cclxuXHJcbi5tb2JpbGUtbG9nbyB7XHJcbiAgICBtYXgtd2lkdGg6IDEwMHB4O1xyXG59XHJcblxyXG4ubW9iaWxlLW1haW4taGVhZGVyIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cclxuICAgIC5tb2JpbGUtbWVudS10b2dnbGVyIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgICAgIC5tb2JpbGUtbWVudS1idG4ge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMjVweDtcclxuXHJcbiAgICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDI1cHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDJweDtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC40cztcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjay1zb2Z0O1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdDtcclxuXHJcbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgyKSxcclxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDMpIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgxKSxcclxuICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgzKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLm1vYmlsZS1uYXZpZ2F0aW9uIHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBtYXgtaGVpZ2h0OiAzNjBweDtcclxuICAgIHBhZGRpbmc6IDIwcHg7XHJcblxyXG4gICAgbmF2IHtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5tb2JpbGUtbWVudSB7XHJcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgb3ZlcmZsb3c6IGF1dG87XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAtMzBweDtcclxuXHJcbiAgICAvLyByZXNwb25zaXZlXHJcbiAgICBAbWVkaWEgI3skeHhzLWRldmljZX0ge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgJiBsaSB7XHJcbiAgICAgICAgJj5hIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDA7XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2stc29mdDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJiB1bCB7XHJcbiAgICAgICAgICAgICYgbGkge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG5cclxuICAgICAgICAgICAgICAgICYgYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMCA4cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYubWVudS1pdGVtLWhhcy1jaGlsZHJlbiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgICAgICAuZHJvcGRvd24ge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAubWVudS1leHBhbmQge1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDUwO1xyXG4gICAgICAgICAgICAgICAgdG9wOiAtNXB4O1xyXG4gICAgICAgICAgICAgICAgbGVmdDogOTUlO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDMwcHg7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDUwcHg7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG4gICAgICAgICAgICAgICAgaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDI1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR3aGl0ZTtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMjUwbXMgZWFzZS1vdXQ7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHdoaXRlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjRzO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJi5hY3RpdmU+IHtcclxuICAgICAgICAgICAgICAgIC5tZW51LWV4cGFuZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuXHJcbi8qLS0tLS0gbW9iaWxlIG1lbnUgZW5kIC0tLS0tKi9cclxuXHJcbi8qLS0tLS0tIG9mZmNhbnZhcyB3aWRnZXQgYXJlYSBzdGFydCAtLS0tLS0qL1xyXG4ub2ZmY2FudmFzLXdpZGdldC1hcmVhIHtcclxuICAgIG1hcmdpbi10b3A6IGF1dG87XHJcbiAgICBwYWRkaW5nOiAyMHB4O1xyXG59XHJcblxyXG4ub2ZmLWNhbnZhcy1jb250YWN0LXdpZGdldCB7XHJcbiAgICBsaSB7XHJcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICBmb250LXNpemU6IDE1cHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG5cclxuICAgICAgICBpIHtcclxuICAgICAgICAgICAgd2lkdGg6IDIwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBhIHtcclxuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjay1zb2Z0O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ub2ZmLWNhbnZhcy1zb2NpYWwtd2lkZ2V0IHtcclxuICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcblxyXG4gICAgYSB7XHJcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2stc29mdDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qLS0tLS0tIG9mZmNhbnZhcyB3aWRnZXQgYXJlYSBlbmQgLS0tLS0tKi9cclxuLm9mZi1jYW52YXMtd3JhcHBlciB7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgaGVpZ2h0OiAxMDB2aDtcclxuICAgIHdpZHRoOiAxMDB2dztcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICB0cmFuc2l0aW9uOiAwLjRzO1xyXG4gICAgei1pbmRleDogOTk5OTtcclxuXHJcbiAgICAmLm9wZW4ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuXHJcbiAgICAgICAgLm9mZi1jYW52YXMtaW5uZXItY29udGVudCB7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLm9mZi1jYW52YXMtb3ZlcmxheSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYmxhY2ssIDAuNCk7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgY3Vyc29yOiB1cmwoJy4uL2ltZy9pY29uL2NhbmNlbC5wbmcnKSwgYXV0bztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgIC5vZmYtY2FudmFzLWlubmVyLWNvbnRlbnQge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvcjtcclxuICAgICAgICB3aWR0aDogMzAwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygtMTAwJSAtIDUwcHgpKTtcclxuICAgICAgICB0cmFuc2l0aW9uOiAwLjRzO1xyXG5cclxuICAgICAgICAvLyByZXNwb25zaXZlXHJcbiAgICAgICAgQG1lZGlhICN7JHh4cy1kZXZpY2V9IHtcclxuICAgICAgICAgICAgd2lkdGg6IDI3MHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuYnRuLWNsb3NlLW9mZi1jYW52YXMge1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBsZWZ0OiAxMDAlO1xyXG4gICAgICAgIHdpZHRoOiA2MHB4O1xyXG4gICAgICAgIGhlaWdodDogNjBweDtcclxuICAgICAgICBmb250LXNpemU6IDI2cHg7XHJcbiAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcclxuICAgICAgICBsaW5lLWhlaWdodDogNjBweDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0cmFuc2l0aW9uOiAwLjRzO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxuXHJcbiAgICAgICAgaSB7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjRzO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDYwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgaSB7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5vZmYtY2FudmFzLWlubmVyIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLnNlYXJjaC1ib3gtb2ZmY2FudmFzIHtcclxuICAgIGZvcm0ge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgaW5wdXQge1xyXG4gICAgICAgICAgICBjb2xvcjogIzY2NjtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgaGVpZ2h0OiA2MHB4O1xyXG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgNDBweCAwIDEwcHg7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMmYyZjI7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc2VhcmNoLWJ0biB7XHJcbiAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIHdpZHRoOiA0MHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDYwcHg7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA2MnB4O1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLyotLS0tLS0tIG1vYmlsZSB0b3AgYmFyIHNldHRpbmdzIHN0YXJ0IC0tLS0tLS0qL1xyXG4ubW9iaWxlLXNldHRpbmdzIHtcclxuICAgIHBhZGRpbmctdG9wOiAxNXB4O1xyXG4gICAgbWFyZ2luLXRvcDogMTVweDtcclxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYmRyLWNvbG9yO1xyXG5cclxuICAgIGxpIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLm5hdiB7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHJcbiAgICAgICAgLm1vYmlsZS10b3AtZHJvcGRvd24ge1xyXG4gICAgICAgICAgICAuZHJvcGRvd24tdG9nZ2xlIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkcGFyYWdyYXBoO1xyXG5cclxuICAgICAgICAgICAgICAgIGkge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDVweDtcclxuICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG5cclxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5kcm9wZG93bi1tZW51IHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRiZHItY29sb3I7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMzBweCk7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjRzO1xyXG5cclxuICAgICAgICAgICAgICAgICYuc2hvdyB7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIC5kcm9wZG93bi1pdGVtIHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRwYXJhZ3JhcGg7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogNnB4IDE1cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qLS0tLS0tLSBtb2JpbGUgdG9wIGJhciBzZXR0aW5ncyBlbmQgLS0tLS0tLSovIiwiLyotLS0tLS0tIEJ1dHRvbnMgU3R5bGUgaGVyZSAtLS0tLS0tKi9cclxuLmJ0biB7XHJcbiAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgZm9udC1mYW1pbHk6ICRoZWFkaW5nLWZvbnQ7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3I7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjay1zb2Z0O1xyXG4gICAgfVxyXG5cclxuICAgICYtaGVybyB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDEzcHggMjRweCAxNXB4IDI0cHg7XHJcblxyXG4gICAgICAgIC8vIHJlc3BvbnNpdmVcclxuICAgICAgICBAbWVkaWEgI3skc20tZGV2aWNlfSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggMjVweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi1hbGwge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICBwYWRkaW5nOiAxNHB4IDI0cHggMTVweCAyNHB4O1xyXG4gICAgfVxyXG59IiwiLyotLS0tLS0tIGNvbW1vbiBjc3Mgc3RhcnQgLS0tLS0tLSovXHJcbi5maXgge1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLy8gc2VjdGlvbiB0aXRsZSBzdGFydFxyXG4uc2VjdGlvbi10aXRsZSB7XHJcbiAgICBtYXgtd2lkdGg6IDQxMHB4O1xyXG4gICAgbWFyZ2luOiBhdXRvO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNjhweDtcclxuXHJcbiAgICAvLyByZXNwb25zaXZlXHJcbiAgICBAbWVkaWEgI3skbWQtZGV2aWNlLCAkc20tZGV2aWNlfSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDVweDtcclxuICAgIH1cclxuXHJcbiAgICAudGl0bGUge1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xyXG4gICAgfVxyXG5cclxuICAgIHAge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMTVweDtcclxuICAgIH1cclxuXHJcbiAgICAmLS1zdHlsZV8yIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDcxMHB4O1xyXG5cclxuICAgICAgICAudGl0bGUge1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS40O1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtMTVweDtcclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSAjeyRzbS1kZXZpY2V9IHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0xMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4udGl0bGUge1xyXG4gICAgZm9udC13ZWlnaHQ6IDgwMDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XHJcbiAgICBtYXJnaW4tdG9wOiAtOXB4O1xyXG5cclxuICAgIEBtZWRpYSAjeyRzbS1kZXZpY2V9IHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAtN3B4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XHJcbiAgICB9XHJcblxyXG4gICAgc3BhbiB7XHJcbiAgICAgICAgY29sb3I6ICMxYzQ3YzE7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zdWJ0aXRsZSB7XHJcbiAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuMztcclxuICAgIHBhZGRpbmc6IDIwcHggMDtcclxufVxyXG5cclxuXHJcbi50aGVtZS1iZyB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3I7XHJcbn1cclxuXHJcbi5ncmF5LWJnIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRiZy1ncmF5O1xyXG59XHJcblxyXG4vKi0tLS0tLS0gY29tbW9uIGNzcyBlbmQgLS0tLS0tLSovXHJcblxyXG4vKi0tLS0gY2hvb3NlIHVzIHN0eWxlIHN0cmF0IC0tLS0qL1xyXG4uY2hvb3NlLWl0ZW0td3JhcHBlciB7XHJcbiAgICAudGl0bGUge1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA4cHg7XHJcbiAgICB9XHJcblxyXG4gICAgJi0tc3R5bGVfMiB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDBweCAwcHggNTguNXB4IDYuNXB4IHJnYmEoMjgsIDcxLCAxOTMsIDAuMTUpO1xyXG4gICAgICAgIHBhZGRpbmc6IDgzcHggNjBweDtcclxuXHJcbiAgICAgICAgLy8gcmVzcG9uc2l2ZVxyXG4gICAgICAgIEBtZWRpYSAjeyRsZy1kZXZpY2V9e1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAzMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICBAbWVkaWEgI3skbWQtZGV2aWNlLCAkc20tZGV2aWNlfSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDY1cHggMzBweCA1M3B4O1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA2MnB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmRlc2Mge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAyNXB4IDAgMjhweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jaG9vc2UtaXRlbSB7XHJcbiAgICBtYXJnaW4tdG9wOiAzNXB4O1xyXG4gICAgLy8gcmVzcG9uc2l2ZVxyXG4gICAgQG1lZGlhICN7JHNtLWRldmljZX17XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMjVweDtcclxuICAgIH1cclxuXHJcbiAgICAmLXRpdGxlIHtcclxuICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA4cHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jaG9vc2UtbGlzdCB7XHJcbiAgICBsaSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTRweDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAyMXB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDE4cHg7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvaWNvbi9jaGVjay10aWNrLnBuZyk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY2hvb3NlLWl0ZW0tdGl0bGUge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDM2cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKi0tLS0gY2hvb3NlIHVzIHN0eWxlIGVuZCAtLS0tKi9cclxuXHJcbi8qLS0tLSBjYWxsIHRvIGFjdGlvbiBzdGFydCAtLS0tKi9cclxuLmN0YS13cmFwcGVyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIC8vIHJlc3BvbnNpdmVcclxuICAgIEBtZWRpYSAjeyRtZC1kZXZpY2UsICRzbS1kZXZpY2V9e1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDU1cHg7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDZweDtcclxuICAgIH1cclxuXHJcbiAgICAudGl0bGUge1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XHJcbiAgICB9XHJcblxyXG4gICAgLmNhbGwge1xyXG4gICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMzZweDtcclxuICAgICAgICBmb250LXdlaWdodDogODAwO1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAyM3B4O1xyXG5cclxuICAgICAgICAvLyByZXNwb25zaXZlXHJcbiAgICAgICAgQG1lZGlhICN7JHNtLWRldmljZX0ge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDI4cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBtZWRpYSAjeyR4eHMtZGV2aWNlfSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrLXNvZnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGltZyB7XHJcbiAgICAgICAgLy8gcGFkZGluZy1sZWZ0OiA0MHB4O1xyXG5cclxuICAgICAgICAvLyByZXNwb25zaXZlXHJcbiAgICAgICAgQG1lZGlhICN7JHNtLWRldmljZX0ge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgIH1cclxufVxyXG5cclxuLyotLS0tIGNhbGwgdG8gYWN0aW9uIGVuZCAtLS0tKi9cclxuXHJcbi8qLS0tLSBicmFuZCBsb2dvIHNlY3Rpb24gc3RhcnQgLS0tLSovXHJcbi5icmFuZC1pdGVtIHtcclxuICAgIGltZyB7XHJcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xyXG4gICAgICAgIG9wYWNpdHk6IDAuMjU7XHJcbiAgICB9XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qLS0tLSBicmFuZCBsb2dvIHNlY3Rpb24gZW5kIC0tLS0qL1xyXG5cclxuLyotLS0tLS0gY291bnRlciB1cCBzdGFydCAtLS0tLS0qL1xyXG4uY291bnRlcnVwLWl0ZW0ge1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgIHNwYW4ge1xyXG4gICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItMjtcclxuICAgICAgICBmb250LXdlaWdodDogODAwO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IC00cHg7XHJcbiAgICB9XHJcblxyXG4gICAgaDUge1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDVweDtcclxuXHJcbiAgICAgICAgLy8gcmVzcG9uc2l2ZVxyXG4gICAgICAgIEBtZWRpYSAjeyRtZC1kZXZpY2UsICRzbS1kZXZpY2V9IHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLm9kb21ldGVyLWluc2lkZSB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBtYXJnaW4tbGVmdDogLTIycHg7XHJcblxyXG4gICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgIHRvcDogLTdweDtcclxuICAgICAgICBsZWZ0OiAxMDAlO1xyXG4gICAgICAgIGNvbnRlbnQ6ICcrJztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcblxyXG4gICAgfVxyXG59XHJcblxyXG4vKi0tLS0tLSBjb3VudGVyIHVwIGVuZCAtLS0tLS0qL1xyXG5cclxuLyotLS0tLSBzbGljayBhcnJvdyBzdHlsZSBzdGFydCAtLS0tLSovXHJcbi50ZXN0aW1vbmlhbC1jYXJvdXNlbC1hY3RpdmUsXHJcbi5oZXJvLXNsaWRlci1hY3RpdmUge1xyXG4gICAgJi5zbGljay1hcnJvdy1zdHlsZSB7XHJcbiAgICAgICAgYnV0dG9uIHtcclxuICAgICAgICAgICAgJi5zbGljay1hcnJvdyB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTZweDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMThweDtcclxuICAgICAgICAgICAgICAgIGJvdHRvbTogLTM4cHg7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuXHJcbiAgICAgICAgICAgICAgICAmLnNsaWNrLXByZXYge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvaWNvbi9hcnJvdy1wcmV2LnBuZyk7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJi5zbGljay1uZXh0IHtcclxuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAyNXB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvaWNvbi9hcnJvdy1uZXh0LnBuZyk7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgJi5zbGljay1wcmV2IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9pY29uL2Fycm93LXByZXYtY29sb3IucG5nKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICYuc2xpY2stbmV4dCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvaWNvbi9hcnJvdy1uZXh0LWNvbG9yLnBuZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLS10ZXN0aW1vbmlhbF8yIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMzVweDtcclxuXHJcbiAgICAgICAgICAgIGJ1dHRvbiB7XHJcbiAgICAgICAgICAgICAgICAmLnNsaWNrLWFycm93IHtcclxuICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgICAgICAgICBsZWZ0OiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogNjBweDtcclxuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAmLnNsaWNrLXByZXYge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogNjBweDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICYuc2xpY2stbmV4dCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAzN3B4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLnNsaWNrLWxpc3Qge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAtMzBweDtcclxuXHJcbiAgICAgICAgICAgICAgICAvLyByZXNwb25zaXZlXHJcbiAgICAgICAgICAgICAgICBAbWVkaWEgI3skbWQtZGV2aWNlLCAkc20tZGV2aWNlfSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAtMzBweCAtMTVweDtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAuc2xpY2stc2xpZGUge1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDMwcHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zbGljay1hcnJvdy1zdHlsZSB7XHJcbiAgICAmX2hlcm8ge1xyXG4gICAgICAgIGJ1dHRvbiB7XHJcbiAgICAgICAgICAgICYuc2xpY2stYXJyb3cge1xyXG4gICAgICAgICAgICAgICAgYm90dG9tOiA0MHB4O1xyXG4gICAgICAgICAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xyXG5cclxuICAgICAgICAgICAgICAgICYuc2xpY2stbmV4dCB7XHJcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDQ4JTtcclxuICAgICAgICAgICAgICAgICAgICBsZWZ0OiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICYuc2xpY2stcHJldiB7XHJcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogNDklO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKi0tLS0tIHNsaWNrIGFycm93IHN0eWxlIGVuZCAtLS0tLSovXHJcblxyXG4vKiAtLS0tc2Nyb2xsIHRvIHRvcCBjc3Mgc3RhcnQgLS0tLSovXHJcbi5zY3JvbGwtdG9wIHtcclxuICAgIGJvdHRvbTogNTBweDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGhlaWdodDogNTBweDtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHJpZ2h0OiAyMHB4O1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgd2lkdGg6IDUwcHg7XHJcbiAgICB6LWluZGV4OiA5OTk5O1xyXG4gICAgdHJhbnNpdGlvbjogMC40cztcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvcjtcclxuICAgIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xyXG5cclxuICAgIGkge1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xyXG4gICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjVweDtcclxuICAgIH1cclxuXHJcbiAgICAmLm5vdC12aXNpYmxlIHtcclxuICAgICAgICBib3R0b206IC01MHB4O1xyXG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjay1zb2Z0O1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiAtLS0tc2Nyb2xsIHRvIHRvcCBjc3MgZW5kIC0tLS0qL1xyXG5cclxuLy8gdmVydGljYWwgdXAgY3NzXHJcbkBrZXlmcmFtZXMgZmFkZUluVXAge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDQwJSwgMClcclxuICAgIH1cclxuXHJcbiAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApXHJcbiAgICB9XHJcbn1cclxuXHJcbi5mYWRlSW5VcCB7XHJcbiAgICBhbmltYXRpb24tbmFtZTogZmFkZUluVXBcclxufVxyXG5cclxuLy8gZmFkZSBpbiBsZWZ0IGNzc1xyXG5Aa2V5ZnJhbWVzIGZhZGVJbkxlZnQge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC00MCUsIDAsIDApXHJcbiAgICB9XHJcblxyXG4gICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKVxyXG4gICAgfVxyXG59XHJcblxyXG4uZmFkZUluTGVmdCB7XHJcbiAgICBhbmltYXRpb24tbmFtZTogZmFkZUluTGVmdDtcclxufVxyXG5cclxuLy8gZmFkZSBpbiByaWdodFxyXG5Aa2V5ZnJhbWVzIGZhZGVJblJpZ2h0IHtcclxuICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg0MCUsIDAsIDApXHJcbiAgICB9XHJcblxyXG4gICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKVxyXG4gICAgfVxyXG59XHJcblxyXG4uZmFkZUluUmlnaHQge1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJblJpZ2h0XHJcbn1cclxuXHJcbi8vIG1vdmluZyB2ZXJ0aWNhbFxyXG5Aa2V5ZnJhbWVzIGZsb2F0LWJvYiB7XHJcbiAgICAwJSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG4gICAgfVxyXG5cclxuICAgIDUwJSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwcHgpO1xyXG4gICAgfVxyXG5cclxuICAgIDEwMCUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuICAgIH1cclxufVxyXG5cclxuLm1vdmluZy12ZXJ0aWNhbCB7XHJcbiAgICBhbmltYXRpb24tbmFtZTogZmxvYXQtYm9iO1xyXG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAzcztcclxuICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xyXG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xyXG59IiwiLyotLS0tLS0gaGVybyBzbGlkZXIgYXJlYSBjc3Mgc3RhcnQgLS0tLS0tKi9cclxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbjAxLiBTbGlkZXIgYXJlYVxyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbi5oZXJvLXNsaWRlci1pdGVtIHtcclxuICAgIGhlaWdodDogODUwcHg7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIHBhZGRpbmctdG9wOiA4OHB4O1xyXG5cclxuICAgIC8vIHJlc3BvbnNpdmVcclxuICAgIEBtZWRpYSAjeyRsZy1kZXZpY2V9IHtcclxuICAgICAgICBoZWlnaHQ6IDU1MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAjeyRtZC1kZXZpY2V9IHtcclxuICAgICAgICBoZWlnaHQ6IDQwMHB4O1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAjeyRzbS1kZXZpY2V9IHtcclxuICAgICAgICBoZWlnaHQ6IDM1MHB4O1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAjeyR4cy1kZXZpY2V9IHtcclxuICAgICAgICBoZWlnaHQ6IDU1MHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4uc2xpZGVyLXRodW1iIHtcclxuICAgIGZsb2F0OiByaWdodDtcclxuXHJcbiAgICBAbWVkaWEgI3skeHMtZGV2aWNlfSB7XHJcbiAgICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAzMDBweDtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIH1cclxufVxyXG5cclxuLmhlcm8tc2xpZGVyLWNvbnRlbnQge1xyXG5cclxuICAgIC8vIHJlc3BvbnNpdmVcclxuXHJcbiAgICBAbWVkaWEgI3skeHMtZGV2aWNlfSB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMjBweCA1MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAjeyR4eHMtZGV2aWNlfSB7XHJcbiAgICAgICAgcGFkZGluZzogMCAwIDUwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLnNsaWRlIHtcclxuICAgICAgICAmLXRpdGxlIHtcclxuICAgICAgICAgICAgY29sb3I6ICRibGFjay1zb2Z0O1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDc1cHg7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG5cclxuICAgICAgICAgICAgLy8gcmVzcG9uc2l2ZVxyXG4gICAgICAgICAgICBAbWVkaWEgI3skbGctZGV2aWNlfSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDQwcHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSAjeyRtZC1kZXZpY2V9IHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMzRweDtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSAjeyRzbS1kZXZpY2V9IHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjVweDtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmJ0bi1oZXJvIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiA1NXB4O1xyXG5cclxuICAgICAgICBAbWVkaWEgI3skc20tZGV2aWNlfSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMjJweCAxMnB4O1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLyAwMi4gc2xpZGVyIDAyIHN0YXJ0XHJcbi5oZXJvLXRyYW5zcGFyZW50LWJnIHtcclxuICAgIGhlaWdodDogODkwcHg7XHJcblxyXG4gICAgLy8gcmVzcG9uc2l2ZVxyXG4gICAgQG1lZGlhICN7JGxnLWRldmljZX0ge1xyXG4gICAgICAgIGhlaWdodDogNTUwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhICN7JG1kLWRldmljZX0ge1xyXG4gICAgICAgIGhlaWdodDogNDAwcHg7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhICN7JHNtLWRldmljZX0ge1xyXG4gICAgICAgIGhlaWdodDogMzUwcHg7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhICN7JHhzLWRldmljZX0ge1xyXG4gICAgICAgIGhlaWdodDogNTUwcHg7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4vKi0tLS0tLSBoZXJvIHNsaWRlciBhcmVhIGNzcyBlbmQgLS0tLS0tKi9cclxuXHJcbi8vIHNsaWRlciBjb250ZW50IGFuaW1hdGlvblxyXG4uc2xpY2stYWN0aXZlIHtcclxuICAgIC5zbGlkZXItdGh1bWIge1xyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XHJcbiAgICAgICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XHJcbiAgICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5SaWdodDtcclxuICAgICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAwLjVzO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuaGVyby1zbGlkZXItY29udGVudCB7XHJcblxyXG4gICAgICAgIC5zbGlkZS10aXRsZSxcclxuICAgICAgICAuYnRuLWhlcm8ge1xyXG4gICAgICAgICAgICBhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xyXG4gICAgICAgICAgICBhbmltYXRpb24tZHVyYXRpb246IDFzO1xyXG4gICAgICAgICAgICBhbmltYXRpb24tbmFtZTogZmFkZUluTGVmdDtcclxuICAgICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAwLjVzO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmJ0bi1oZXJvIHtcclxuICAgICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAwLjdzO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsIi8qLS0tLS0gYWJvdXQgc3R5bGUgc3RhcnQgLS0tLS0qL1xyXG4uYWJvdXQge1xyXG4gICAgJi1pbm5lciB7XHJcblxyXG4gICAgICAgIC8vIHJlc3BvbnNpdmVcclxuICAgICAgICBAbWVkaWEgI3skbWQtZGV2aWNlLCAkc20tZGV2aWNlfSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDY1cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBwIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzRweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYtLXN0eWxlXzIge1xyXG5cclxuICAgICAgICAgICAgLy8gcmVzcG9uc2l2ZVxyXG4gICAgICAgICAgICBAbWVkaWEgI3skbWQtZGV2aWNlLCAkc20tZGV2aWNlfSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNjVweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLnN1YnRpdGxlIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAyNHB4O1xyXG5cclxuICAgICAgICAgICAgICAgIC8vIHJlc3BvbnNpdmVcclxuICAgICAgICAgICAgICAgIEBtZWRpYSAjeyRtZC1kZXZpY2UsICRzbS1kZXZpY2V9IHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItMjtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogODAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICYtMiB7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDNweDtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNDZweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLXRodW1iIHtcclxuXHJcbiAgICAgICAgLy8gcmVzcG9uc2l2ZVxyXG4gICAgICAgIEBtZWRpYSAjeyRtZC1kZXZpY2UsICRzbS1kZXZpY2V9IHtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLyotLS0tLSBhYm91dCBzdHlsZSBlbmQgLS0tLS0qLyIsIi8qLS0tLS0gc2VydmljZSBwb2xpY3kgc3RhcnQgLS0tLS0qL1xyXG4uc2VydmljZS1wb2xpY3kge1xyXG4gICAgJi1pdGVtIHtcclxuXHJcbiAgICAgICAgLy8gcmVzcG9uc2l2ZVxyXG4gICAgICAgIC8qIEBtZWRpYSAjeyRzbS1kZXZpY2V9IHtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwIDQwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAbWVkaWEgI3skeHhzLWRldmljZX0ge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwIDE1cHg7XHJcbiAgICAgICAgfSAqL1xyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAuc2VydmljZS1wb2xpY3ktaWNvbiB7XHJcbiAgICAgICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC45NSkgdHJhbnNsYXRlWCgxMHB4KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLXRpdGxlIHtcclxuICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgIHBhZGRpbmc6IDE3cHggMCA4cHg7XHJcbiAgICB9XHJcblxyXG59XHJcblxyXG4ucG9saWN5LXdyYXBwZXItMDIge1xyXG4gICAgQG1lZGlhICN7JG1kLWRldmljZSwgJHNtLWRldmljZX0ge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IC00NXB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI2cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLnNlcnZpY2UtcG9saWN5LWl0ZW0ge1xyXG4gICAgICAgIHBhZGRpbmc6IDM0cHg7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogMC40cztcclxuXHJcbiAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDBweCAwcHggNTguNXB4IDYuNXB4IHJnYmEoMjgsIDcxLCAxOTMsIDAuMTUpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnBvbGljeS1hcmVhLTAyIHtcclxuICAgIEBtZWRpYSAjeyRtZC1kZXZpY2UsICRzbS1kZXZpY2V9IHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogNTBweDtcclxuICAgIH1cclxufVxyXG5cclxuLyotLS0tLSBzZXJ2aWNlIHBvbGljeSAgLS0tLS0qL1xyXG5cclxuLyotLS0tLS0gc2VydmljZSBzZWN0aW9uIHN0YXJ0IC0tLS0tLSovXHJcbi5zZXJ2aXZjZS1taWRkbGUtdGh1bWIge1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgIC8vIHJlc3BvbnNpdmVcclxuICAgIEBtZWRpYSAjeyRtZC1kZXZpY2UsICRzbS1kZXZpY2V9IHtcclxuICAgICAgICBtYXJnaW4tdG9wOiA2MHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4uc2VydmljZSB7XHJcbiAgICAmLWl0ZW0ge1xyXG4gICAgICAgIHdpZHRoOiAyMThweDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG5cclxuICAgICAgICAvLyByZXNwb25zaXZlXHJcbiAgICAgICAgQG1lZGlhICN7JG1kLWRldmljZX0ge1xyXG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBtZWRpYSAjeyRzbS1kZXZpY2V9IHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgLnNlcnZpY2UtaWNvbiB7XHJcbiAgICAgICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC45NSkgdHJhbnNsYXRlWCgxMHB4KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLXRpdGxlIHtcclxuICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgIHBhZGRpbmc6IDE4cHggMCAxMHB4O1xyXG5cclxuICAgICAgICBhIHtcclxuICAgICAgICAgICAgY29sb3I6ICRibGFjay1zb2Z0O1xyXG5cclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uc2VydmljZS1saXN0IHtcclxuICAgICYtbGVmdCB7XHJcbiAgICAgICAgLnNlcnZpY2UtaXRlbSB7XHJcblxyXG4gICAgICAgICAgICAmOm50aC1jaGlsZCgxKSxcclxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMykge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDUycHg7XHJcblxyXG4gICAgICAgICAgICAgICAgLy8gcmVzcG9uc2l2ZVxyXG4gICAgICAgICAgICAgICAgQG1lZGlhICN7JGxnLWRldmljZSwgJG1kLWRldmljZSwgJHNtLWRldmljZX0ge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAvLyByZXNwb25zaXZlXHJcbiAgICAgICAgICAgIEBtZWRpYSAjeyRtZC1kZXZpY2V9IHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMzBweDtcclxuXHJcbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi1yaWdodCB7XHJcbiAgICAgICAgLnNlcnZpY2UtaXRlbSB7XHJcbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDIpIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1MnB4O1xyXG5cclxuICAgICAgICAgICAgICAgIC8vIHJlc3BvbnNpdmVcclxuICAgICAgICAgICAgICAgIEBtZWRpYSAjeyRsZy1kZXZpY2UsICRtZC1kZXZpY2UsICRzbS1kZXZpY2V9IHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC8vIHJlc3BvbnNpdmVcclxuICAgICAgICAgICAgQG1lZGlhICN7JG1kLWRldmljZX0ge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xyXG5cclxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uc2VydmljZS13cmFwcGVyLS1zdHlsZV8yIHtcclxuICAgIC5zZWN0aW9uLXRpdGxlIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgLnNlcnZpY2UtaXRlbSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuXHJcbiAgICAgICAgLy8gcmVzcG9uc2l2ZVxyXG4gICAgICAgIEBtZWRpYSAjeyRtZC1kZXZpY2V9IHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKi0tLS0tLSBzZXJ2aWNlIHNlY3Rpb24gZW5kIC0tLS0tLSovXHJcblxyXG4vKi0tLS0tLSBzZXJ2aWNlIGRldGFpbHMgcGFnZSBzdGFydCAtLS0tLS0qL1xyXG4uc2VydmljZS1kZXRhaWxzLXdyYXBwZXIge1xyXG4gICAgJi5wYi0xMjUge1xyXG4gICAgICAgIEBtZWRpYSAjeyRtZC1kZXZpY2UsICRzbS1kZXZpY2V9IHtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDY3cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5zZXJ2aWNlLWRldGFpbHMtd2lkZ2V0IHtcclxuICAgIEBtZWRpYSAjeyRtZC1kZXZpY2UsICRzbS1kZXZpY2V9IHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxMDBweDtcclxuICAgIH1cclxufVxyXG5cclxuLnNlcnZpY2Utc2luZ2xlLXdpZGdldCB7XHJcbiAgICBwYWRkaW5nOiAyNXB4O1xyXG5cclxuICAgIC5zZXJ2aWNlLXdpZGdldC10aXRsZSB7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgIH1cclxuXHJcbiAgICAuc2VydmljZS1saXN0IHtcclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjay1zb2Z0O1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzNXB4O1xyXG5cclxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjFweDtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE4cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvaWNvbi9jaGVjay10aWNrLnBuZyk7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uc2VydmljZS1kZXRhaWxzLWNvbnRlbnQge1xyXG4gICAgQG1lZGlhICN7JHh4bC1kZXZpY2V9IHtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIGgzIHtcclxuICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4vKi0tLS0tLSBzZXJ2aWNlIGRldGFpbHMgcGFnZSBlbmQgLS0tLS0tKi8iLCIvKi0tLS0tIHRlc3RpbW9uaWFsIGFyZWEgc3RhcnQgLS0tLS0qL1xyXG4udGVzdGltb25pYWwtd3JhcHBlciB7XHJcblxyXG4gICAgLy8gcmVzcG9uc2l2ZVxyXG4gICAgQG1lZGlhICN7JG1kLWRldmljZSwgJHNtLWRldmljZX0ge1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxMDBweDtcclxuICAgIH1cclxuXHJcbiAgICAmLS1zdHlsZV8yIHtcclxuXHJcbiAgICAgICAgLy8gcmVzcG9uc2l2ZVxyXG4gICAgICAgIEBtZWRpYSAjeyRtZC1kZXZpY2UsICRzbS1kZXZpY2V9IHtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDY4cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4udGVzdGltb25pYWwtaW5uZXIge1xyXG4gICAgbWFyZ2luLXRvcDogLTM4cHg7XHJcblxyXG4gICAgLy8gcmVzcG9uc2l2ZVxyXG4gICAgQG1lZGlhICN7JG1kLWRldmljZSwgJHNtLWRldmljZX0ge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDY4cHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi50ZXN0aW1vbmlhbC1jb250ZW50IHtcclxuICAgIHBhZGRpbmc6IDFweDtcclxuXHJcbiAgICAuY2xpZW50LW5hbWUge1xyXG4gICAgICAgIGNvbG9yOiAjMWM0N2MxO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDRweDtcclxuICAgIH1cclxuXHJcbiAgICAuY2xpZW50LWRlc2lnIHtcclxuICAgICAgICBmb250LXdlaWdodDogMzAwO1xyXG4gICAgfVxyXG5cclxuICAgIHAge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiA1N3B4O1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxMnB4O1xyXG5cclxuICAgICAgICAvLyByZXNwb25zaXZlXHJcbiAgICAgICAgQG1lZGlhICN7JHNtLWRldmljZX0ge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNDVweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGkge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XHJcblxyXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA1cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi50ZXN0aW1vbmlhbC10aHVtYiB7XHJcblxyXG4gICAgLy8gcmVzcG9uc2l2ZVxyXG4gICAgQG1lZGlhICN7JG1kLWRldmljZX0ge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIH1cclxuXHJcbiAgICAmLS1zdHlsZV8yIHtcclxuICAgICAgICBAbWVkaWEgI3skbWQtZGV2aWNlLCAkc20tZGV2aWNlfSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDY4cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4udGVzdGltb25pYWwtaXRlbSB7XHJcbiAgICAmLS1zdHlsZV8yIHtcclxuXHJcbiAgICAgICAgLnRlc3RpbW9uaWFsLWNvbnRlbnQge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA0MHB4IDIwcHggNDhweCA0NXB4O1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiAwcHggMHB4IDMxLjVweCAzLjVweCByZ2JhKDI4LCA3MSwgMTkzLCAwLjExKTtcclxuXHJcbiAgICAgICAgICAgIHAge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qLS0tLS0gdGVzdGltb25pYWwgYXJlYSBlbmQgLS0tLS0qLyIsIi8qLS0tLS0gYnJlYWRjcnVtYiBzdHlsZSBjc3Mgc3RhcnQgLS0tLS0qL1xyXG4uYnJlYWRjcnVtYi13cmFwIHtcclxuICAgIHBhZGRpbmc6IDk1cHggMCAxMDBweDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICAvLyByZXNwb25zaXZlXHJcbiAgICBAbWVkaWEgI3skc20tZGV2aWNlfSB7XHJcbiAgICAgICAgcGFkZGluZzogNTBweCAwO1xyXG4gICAgfVxyXG5cclxuICAgIC5icmVhZGNydW1iIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cclxuICAgICAgICAuYnJlYWRjcnVtYi1pdGVtIHtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcblxyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcblxyXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiL1wiO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDVweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDJweDtcclxuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uYnJlYWRjcnVtYi10aXRsZSB7XHJcbiAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgZm9udC1zaXplOiA0MHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICBmb250LXdlaWdodDogODAwO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHJcbiAgICAvLyByZXNwb25zaXZlXHJcbiAgICBAbWVkaWEgI3skeHMtZGV2aWNlfSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4vKi0tLS0tIGJyZWFkY3J1bWIgc3R5bGUgY3NzIGVuZCAtLS0tLSovIiwiLyotLS0tLS0gdGVhbSBhcmVhIHN0eWxlICBzdGFydCAtLS0tLS0qL1xyXG4udGVhbS1tZW1iZXIge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgICYtaW5mbyB7XHJcbiAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmODtcclxuICAgICAgICBwYWRkaW5nOiA0MHB4O1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcclxuICAgICAgICBib3gtc2hhZG93OiAwcHggMHB4IDU4cHggNnB4IHJnYmEoMjgsIDcxLCAxOTMsIDAuMTUpO1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgICAgIHRyYW5zaXRpb246IDAuNHM7XHJcblxyXG4gICAgICAgIC8vIHJlc3BvbnNpdmVcclxuICAgICAgICBAbWVkaWEgI3skbWQtZGV2aWNlfSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDMwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAbWVkaWEgI3skc20tZGV2aWNlfSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAbWVkaWEgI3skeHMtZGV2aWNlfSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDQwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIC50ZWFtLW1lbWJlci1pbmZvIHtcclxuICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi0taG92ZXItZWZmZWN0IHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgICAgIEBtZWRpYSAjeyRsZy1kZXZpY2UsICRtZC1kZXZpY2V9IHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTMwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAbWVkaWEgI3sgJHNtLWRldmljZX0ge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMDBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgQG1lZGlhICN7ICR4cy1kZXZpY2V9IHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTAwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmJlZm9yZSxcclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwcHg7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNiOWI5Yjk7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjRzO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgbGVmdDogNTUlO1xyXG4gICAgICAgICAgICB3aWR0aDogMTNweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxM3B4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnRlYW0tbWVtYmVyLWluZm8ge1xyXG4gICAgICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgICAgIHRvcDogLTEwMHB4O1xyXG4gICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTZweCkgc2NhbGUoMC43KTtcclxuICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjRzO1xyXG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcclxuXHJcbiAgICAgICAgICAgIC8vIHJlc3BvbnNpdmVcclxuICAgICAgICAgICAgQG1lZGlhICN7JG1kLWRldmljZSwgJHNtLWRldmljZX0ge1xyXG4gICAgICAgICAgICAgICAgdG9wOiAtODBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnRlYW0tbWVtYmVyLW5hbWUge1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogM3B4O1xyXG5cclxuICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrLXNvZnQ7XHJcblxyXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnRlYW0tbWVtYmVyLWRlc2lnIHtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIGhvdmVyIGFmZmVjdFxyXG4gICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgJi5hY3RpdmUsXHJcbiAgICAgICAgJi50ZWFtLW9wZW4ge1xyXG5cclxuICAgICAgICAgICAgJjpiZWZvcmUsXHJcbiAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICAgICAgICAgICAgICB0b3A6IC0yM3B4O1xyXG5cclxuICAgICAgICAgICAgICAgIC8vIHJlc3BvbnNpdmVcclxuICAgICAgICAgICAgICAgIEBtZWRpYSAjeyRtZC1kZXZpY2UsICRzbS1kZXZpY2V9IHtcclxuICAgICAgICAgICAgICAgICAgICB0b3A6IC0xNXB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIHRvcDogLTQ1cHg7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjJzO1xyXG5cclxuICAgICAgICAgICAgICAgIC8vIHJlc3BvbnNpdmVcclxuICAgICAgICAgICAgICAgIEBtZWRpYSAjeyRtZC1kZXZpY2UsICRzbS1kZXZpY2V9IHtcclxuICAgICAgICAgICAgICAgICAgICB0b3A6IC0zMHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAudGVhbS1tZW1iZXItaW5mbyB7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuNnM7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTZweCkgc2NhbGUoMSk7XHJcblxyXG4gICAgICAgICAgICAgICAgLy8gcmVzcG9uc2l2ZVxyXG4gICAgICAgICAgICAgICAgQG1lZGlhICN7JG1kLWRldmljZX0ge1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNnB4KSBzY2FsZSgxKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnRlYW0tY29udGVudCB7XHJcblxyXG4gICAgJi5hYm91dC1pbm5lciB7XHJcbiAgICAgICAgQG1lZGlhICN7JGxnLWRldmljZX0ge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNDBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBtZWRpYSAjeyRtZC1kZXZpY2UsICRzbS1kZXZpY2V9IHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi0tc3R5bGVfMiB7XHJcbiAgICAgICAgQG1lZGlhICN7JGxnLWRldmljZSwgJG1kLWRldmljZSwgJHNtLWRldmljZX0ge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA2NXB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnRlYW0td3JhcHBlciB7XHJcbiAgICAmLnNlY3Rpb24tcGFkZGluZy0tcGJfMTIwIHtcclxuICAgICAgICBAbWVkaWEgI3skbGctZGV2aWNlLCAkbWQtZGV2aWNlLCAkc20tZGV2aWNlfSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLS1zdHlsZV8xIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogODBweDtcclxuXHJcbiAgICAgICAgLy8gcmVzcG9uc2l2ZVxyXG4gICAgICAgIEBtZWRpYSAjeyRsZy1kZXZpY2UsICRtZC1kZXZpY2UsICRzbS1kZXZpY2V9IHtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4udGVhbS13cmFwcGVyIHtcclxuICAgIFtjbGFzcyo9XCJjb2wtXCJdIHtcclxuICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAudGVhbS1tZW1iZXIge1xyXG4gICAgICAgICAgICAgICAgJi0taG92ZXItZWZmZWN0IHtcclxuICAgICAgICAgICAgICAgICAgICAudGVhbS1tZW1iZXItaW5mbyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBtZWRpYSAjeyRtZC1kZXZpY2UsICRzbS1kZXZpY2V9IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNnB4KSBzY2FsZSgxKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IGF1dG87XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgQG1lZGlhICN7JHhzLWRldmljZX0ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC02cHgpIHNjYWxlKDEpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYtLXN0eWxlXzEge1xyXG4gICAgICAgIFtjbGFzcyo9XCJjb2wtXCJdIHtcclxuICAgICAgICAgICAgQG1lZGlhICN7JHh4cy1kZXZpY2V9IHtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIGZsZXg6IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi0tc3R5bGVfMyB7XHJcbiAgICAgICAgLnRlYW0tbWVtYmVyIHtcclxuICAgICAgICAgICAgJi0taG92ZXItZWZmZWN0IHtcclxuICAgICAgICAgICAgICAgIEBtZWRpYSAjeyRsZy1kZXZpY2V9IHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIEBtZWRpYSAjeyRtZC1kZXZpY2UsICRzbS1kZXZpY2V9IHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIFtjbGFzcyo9XCJjb2wtXCJdIHtcclxuICAgICAgICAgICAgQG1lZGlhICN7JHh4cy1kZXZpY2V9IHtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIGZsZXg6IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnRlYW0tbWVtYmVyIHtcclxuICAgICAgICAgICAgICAgICYtLWhvdmVyLWVmZmVjdCB7XHJcbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhICN7JHhzLWRldmljZX0ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMDBweDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc2VjdGlvbi1wYWRkaW5nLS1wdF84MCB7XHJcbiAgICAgICAgICAgIEBtZWRpYSAjeyR4cy1kZXZpY2V9IHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLyotLS0tLS0gdGVhbSBkZXRhaWxzIHN0YXJ0IC0tLS0tLSovXHJcbi50ZWFtLW1lbWJlci1kZXRhaWxzIHtcclxuICAgIEBtZWRpYSAjeyRtZC1kZXZpY2UsICRzbS1kZXZpY2V9IHtcclxuICAgICAgICBtYXJnaW4tdG9wOiA2MHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4udGVhbS1kZXRhaWxzLXdpZGdldCB7XHJcbiAgICAucXVpY2stY29udGFjdCB7XHJcbiAgICAgICAgcGFkZGluZzogMjVweCAyNXB4IDE4cHggMjVweDtcclxuXHJcbiAgICAgICAgLnF1aWNrLXRpdGxlIHtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBhIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2stc29mdDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnRlYW0tc2ljaWFsLWxpbmsge1xyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2stc29mdDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcclxuXHJcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKi0tIFNpbmdsZSBTa2lsbCAtLSovXHJcbi5zaW5nbGUtc2tpbGwge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuXHJcbiAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICB9XHJcblxyXG4gICAgJiBzcGFuIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgICAgY29sb3I6ICRibGFjay1zb2Z0O1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTJweDtcclxuICAgIH1cclxuXHJcbiAgICAmIC5za2lsbC1iYXIge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogM3B4O1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkYmRiZGI7XHJcbiAgICAgICAgcGFkZGluZzogMXB4O1xyXG5cclxuICAgICAgICAmIC5za2lsbC1wcm9ncmVzcyB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvcjtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS1wcm9ncmVzcyk7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgICAgIGJvdHRvbTogMTVweDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjay1zb2Z0O1xyXG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLyotLS0tLS0gdGVhbSBkZXRhaWxzIGVuZCAtLS0tLS0qL1xyXG5cclxuXHJcbi8qLS0tLS0tIHRlYW0gYXJlYSBzdHlsZSBlbmQgLS0tLS0tKi8iLCIvKi0tLS0tLS0gcHJpY2luZyB0YWJsZSBzdGFydCAtLS0tLS0tKi9cclxuLnByaWNpbmctaXRlbSB7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XHJcbiAgICBwYWRkaW5nOiA1MHB4IDA7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkYmRyLWNvbG9yO1xyXG4gICAgdHJhbnNpdGlvbjogMC40cztcclxuXHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAzMHB4IDFweCByZ2JhKDEsIDI2LCA3MiwgMC4xMik7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5kb2xhciB7XHJcbiAgICBjb2xvcjogIzAxMWE0ODtcclxuICAgIGZvbnQtc2l6ZTogMjZweDtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcHg7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogc3VwZXI7XHJcbn1cclxuXHJcbi5wcmljZS1oZWFkIHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi8uLi9hc3NldHMvaW1nL2JnLzEucG5nKTtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcblxyXG4gICAgaDIge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogNjBweDtcclxuICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHJcbiAgICAgICAgLy8gcmVzcG9uc2l2ZVxyXG4gICAgICAgIEBtZWRpYSAjeyR4eHMtZGV2aWNlfSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzZweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgaDQge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIH1cclxufVxyXG5cclxuLnByaWNpbmctdGl0bGUge1xyXG4gICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcclxuICAgIGZvbnQtc2l6ZTogMzBweDtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgcGFkZGluZy10b3A6IDE1cHg7XHJcbn1cclxuXHJcbi5wcmljaW5nLWxpc3Qge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgIHBhZGRpbmc6IDMwcHg7XHJcblxyXG4gICAgbGkge1xyXG4gICAgICAgIHBhZGRpbmc6IDEwcHggMDtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJkci1jb2xvcjtcclxuXHJcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYmRyLWNvbG9yO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLyotLS0tLS0tIHByaWNpbmcgdGFibGUgZW5kIC0tLS0tLS0qLyIsIi8qLS0tLS0tIHBhZ2luYXRpb24gYXJlYSBzdHlsZSBzdGFydCAtLS0tLS0qL1xyXG4ucGFnaW5hdG9pbi1hcmVhIHtcclxuICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkYmRyLWNvbG9yO1xyXG4gICAgLnBhZ2luYXRpb24tYm94IHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XHJcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2stc29mdDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMzZweDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAzNnB4O1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDM2cHg7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1O1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xyXG4gICAgICAgICAgICAgICAgaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzNnB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICR0aGVtZS1jb2xvcjtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3I7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3I7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLyotLS0tLS0gcGFnaW5hdGlvbiBhcmVhIHN0eWxlIGVuZCAtLS0tLS0qLyIsIi8qLS0tLS0gYmxvZyBwb3N0IGl0ZW0gc3RhcnQgLS0tLS0qL1xyXG4uYmxvZyB7XHJcbiAgICAmLWl0ZW0ge1xyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAuYmxvZy10aHVtYiB7XHJcbiAgICAgICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLXRodW1iIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjZmNztcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAgICAgICBhIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYtY29udGVudCB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDE4cHg7XHJcbiAgICB9XHJcblxyXG4gICAgJi10aXRsZSB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XHJcblxyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrLXNvZnQ7XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi1tZXRhIHtcclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrLXNvZnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5ibG9nLWNvbnRlbnQge1xyXG4gICAgJi5ibG9nLWRldGFpbHMge1xyXG4gICAgICAgIC5ibG9nLXRpdGxlIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyOHB4O1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4zO1xyXG5cclxuICAgICAgICAgICAgLy8gcmVzcG9uc2l2ZVxyXG4gICAgICAgICAgICBAbWVkaWEgI3skeHMtZGV2aWNlfSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5ibG9nLW1ldGEge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgYmxvY2txdW90ZSB7XHJcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDVweCBzb2xpZCAkdGhlbWUtY29sb3I7XHJcbiAgICAgICAgbWFyZ2luOiAyNXB4IDMycHggMjVweCAzMHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY4Zjg7XHJcbiAgICAgICAgcGFkZGluZzogMTVweDtcclxuXHJcbiAgICAgICAgLy8gcmVzcG9uc2l2ZVxyXG4gICAgICAgIEBtZWRpYSAjeyR4cy1kZXZpY2V9IHtcclxuICAgICAgICAgICAgbWFyZ2luOiAyNXB4IDE1cHggMjVweCAxNXB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLyotLS0tLSBibG9nIHBvc3QgaXRlbSBlbmQgLS0tLS0qL1xyXG5cclxuLyotLS0tLSBibG9nIHNpZGViYXIgc3RhcnQgLS0tLS0tLSovXHJcbi5ibG9nLXdpZGdldC13cmFwcGVyIHtcclxuICAgIEBtZWRpYSAjeyRtZC1kZXZpY2UsICRzbS1kZXZpY2V9IHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLy8gYmxvZyB3aWRnZXQgdGl0bGVcclxuLmJsb2ctd2lkZ2V0LXRpdGxlIHtcclxuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICBsaW5lLWhlaWdodDogMTtcclxuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgJjpiZWZvcmUsXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgICBib3R0b206IC0xMHB4O1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxcHg7XHJcbiAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJkci1jb2xvcjtcclxuICAgIH1cclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgICB3aWR0aDogNTBweDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3I7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIHNlYXJjaCBmb3JtXHJcbi53aWRnZXQtc2VhcmNoLWZvcm0ge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgIC5zZWFyY2gtZmllbGQge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICBoZWlnaHQ6IDQ2cHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMTVweDtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1NXB4O1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmNmY2ZjY7XHJcbiAgICB9XHJcblxyXG4gICAgLnNlYXJjaC1idG4ge1xyXG4gICAgICAgIHdpZHRoOiA0NnB4O1xyXG4gICAgICAgIGhlaWdodDogNDZweDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3I7XHJcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDQ2cHg7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICB0b3A6IDA7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2stc29mdDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIHJlY2VudCBwb3N0XHJcbi5yZWNlbnQtcG9zdHMge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcblxyXG4gICAgJi1pbWFnZSB7XHJcbiAgICAgICAgd2lkdGg6IDgwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgJi1ib2R5IHtcclxuICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDgwcHgpO1xyXG4gICAgfVxyXG5cclxuICAgICYtbWV0YSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xyXG4gICAgfVxyXG5cclxuICAgICYtdGl0bGUge1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMztcclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2stc29mdDtcclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIGNhdGVnb3JpZXNcclxuLmJsb2ctY2F0ZWdvcmllcyB7XHJcbiAgICBsaSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblxyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrLXNvZnQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjRzO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy8gdGFnc1xyXG4uYmxvZy10YWcge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogLTVweDtcclxuXHJcbiAgICBhIHtcclxuICAgICAgICBjb2xvcjogJGJsYWNrLXNvZnQ7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRiZHItY29sb3I7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgICAgcGFkZGluZzogOHB4IDE1cHg7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvcjtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkdGhlbWUtY29sb3I7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKi0tLS0tIGJsb2cgc2lkZWJhciBlbmQgLS0tLS0tLSovXHJcblxyXG4vKi0tLSBibG9nIGNvbW1lbnQgc2VjdGlvbiBzdGFydCAtLS0qL1xyXG4uY29tbWVudC1zZWN0aW9uIHtcclxuICAgIG1hcmdpbi10b3A6IC0xMHB4O1xyXG5cclxuICAgIC8vIHJlc3BvbnNpdmVcclxuICAgIEBtZWRpYSAjeyRzbS1kZXZpY2V9IHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAtMTRweDtcclxuICAgIH1cclxuXHJcbiAgICBoNCB7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDE1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgdWwge1xyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgcGFkZGluZzogMTBweCAyMHB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkYmRyLWNvbG9yO1xyXG5cclxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLy8gUmVzcG9uc2l2ZVxyXG4gICAgICAgICAgICBAbWVkaWEgI3skeHhzLWRldmljZX0ge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5hdXRob3ItYXZhdGFyIHtcclxuICAgICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDY2cHg7XHJcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiA2MnB4O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG5cclxuICAgICAgICAgICAgICAgIC8vIFJlc3BvbnNpdmVcclxuICAgICAgICAgICAgICAgIEBtZWRpYSAjeyR4eHMtZGV2aWNlfSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZmxleC1iYXNpczogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDY2cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA2MnB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmLmNvbW1lbnQtY2hpbGRyZW4ge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDQwcHg7XHJcblxyXG4gICAgICAgICAgICAgICAgLy8gcmVzcG9uc2l2ZVxyXG4gICAgICAgICAgICAgICAgQG1lZGlhICN7JHh4cy1kZXZpY2V9IHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmNvbW1lbnQtYm9keSB7XHJcbiAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiAxMDAlO1xyXG5cclxuICAgICAgICAgICAgICAgIGg1IHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDVweDtcclxuICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgLmNvbW1lbnQtcG9zdC1kYXRlIHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgLnJlcGx5LWJ0biB7XHJcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG5cclxuICAgICAgICAgICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjay1zb2Z0O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogNHB4IDE1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkYmRyLWNvbG9yO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkdGhlbWUtY29sb3I7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3I7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qLS0tIGJsb2cgY29tbWVudCBzZWN0aW9uIGVuZCAtLS0qL1xyXG5cclxuLyotLS0tLS0gYmxvZyBjb21tZW50IGJveCBzdGFydCAtLS0tLSovXHJcbi5ibG9nLWNvbW1lbnQtd3JhcHBlciB7XHJcbiAgICBtYXJnaW4tdG9wOiAtMTBweDtcclxuXHJcbiAgICAvLyByZXNwb25zaXZlXHJcbiAgICBAbWVkaWEgI3skc20tZGV2aWNlfSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogLTE0cHg7XHJcbiAgICB9XHJcblxyXG4gICAgcCB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDEwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmNvbW1lbnQtcG9zdC1ib3gge1xyXG4gICAgICAgIGxhYmVsIHtcclxuICAgICAgICAgICAgY29sb3I6ICRibGFjay1zb2Z0O1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY29tZW50LWZpZWxkIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogJGJnLWdyYXk7XHJcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgY29sb3I6ICRwYXJhZ3JhcGg7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDhweCAxMHB4O1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGJkci1jb2xvcjtcclxuXHJcbiAgICAgICAgICAgIC8vIHJlc3BvbnNpdmVcclxuICAgICAgICAgICAgQG1lZGlhICN7JHNtLWRldmljZX0ge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGV4dGFyZWEge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEzMHB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogJGJnLWdyYXk7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRiZHItY29sb3I7XHJcblxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmNvbWVudC1idG4ge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xyXG5cclxuICAgICAgICAgICAgLy8gcmVzcG9uc2l2ZVxyXG4gICAgICAgICAgICBAbWVkaWEgI3skc20tZGV2aWNlfSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKi0tLS0tLS0gYmxvZyBjb21tZW50IGJveCBlbmQgLS0tLS0tLS0qLyIsIi8qLS0tLS0gR29vZ2xlIG1hcCBhcmVhIHN0YXJ0IC0tLS0tKi9cclxuI2dvb2dsZS1tYXAge1xyXG4gICAgaGVpZ2h0OiA1MDBweDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgIC8vIHJlc3BvbnNpdmVcclxuICAgIEBtZWRpYSAjeyRtZC1kZXZpY2V9IHtcclxuICAgICAgICBoZWlnaHQ6IDQwMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAjeyRzbS1kZXZpY2V9IHtcclxuICAgICAgICBoZWlnaHQ6IDM1MHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4vKi0tLS0tIEdvb2dsZSBtYXAgYXJlYSBlbmQgLS0tLS0qL1xyXG5cclxuLyotLS0tLS0gY29udGFjdCBmb3JtIGFyZWEgc3RhcnQgLS0tLS0tLSovXHJcbi5jb250YWN0LW1lc3NhZ2Uge1xyXG4gICAgZm9ybSB7XHJcblxyXG4gICAgICAgIGlucHV0LFxyXG4gICAgICAgIHRleHRhcmVhIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgcGFkZGluZzogMTBweCAxMHB4O1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0ZXh0YXJlYSB7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTUwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKi0tLS0tLSBjb250YWN0IGZvcm0gYXJlYSBzdGFydCAtLS0tLS0tKi9cclxuXHJcbi8qLS0tLS0tIGNvbnRhY3QgaW5mbyBhcmVhIHN0YXJ0IC0tLS0tLS0qL1xyXG4uY29udGFjdC1pbmZvcm1hdGlvbiB7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XHJcblxyXG4gICAgLy8gcmVzcG9uc2l2ZVxyXG4gICAgQG1lZGlhICN7JG1kLWRldmljZSwgJHNtLWRldmljZX0ge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDY1cHg7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgfVxyXG5cclxuICAgIHAge1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xyXG5cclxuICAgICAgICAvLyByZXNwb25zaXZlXHJcbiAgICAgICAgQG1lZGlhICN7JG1kLWRldmljZSwgJHNtLWRldmljZX0ge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdWwge1xyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRiZHItY29sb3I7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuICAgICAgICAgICAgLy8gcmVzcG9uc2l2ZVxyXG4gICAgICAgICAgICBAbWVkaWEgI3skeHhzLWRldmljZX0ge1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgaSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uY29udGFjdC10aXRsZSB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMzVweDtcclxuXHJcbiAgICAvLyByZXNwb25zaXZlXHJcbiAgICBAbWVkaWEgI3skbWQtZGV2aWNlLCAkc20tZGV2aWNlfSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogLTEzcHg7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qLS0tLS0tIGNvbnRhY3QgaW5mbyBhcmVhIGVuZCAtLS0tLS0tKi8iLCIvKi0tLS0tLS0tLS0gZmFxIHN0eWxlIHN0YXJ0IC0tLS0tLS0tLS0qL1xyXG5cclxuLmZhcS1pbm5lciB7XHJcbiAgICAuY2FyZCB7XHJcbiAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcblxyXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY2FyZC1ib2R5IHtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuODtcclxuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGJkci1jb2xvcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jYXJkLWhlYWRlciB7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG5cclxuICAgIGJ1dHRvbiB7XHJcbiAgICAgICAgY29sb3I6ICRibGFjay1zb2Z0O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XHJcbiAgICAgICAgcGFkZGluZzogMTZweCAzMHB4O1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiZy1ncmF5O1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgLy8gcmVzcG9uc2l2ZVxyXG4gICAgICAgIEBtZWRpYSAjeyR4eHMtZGV2aWNlfSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEycHggMTBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3I7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpIHtcclxuICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICAgICAgcmlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMTA3XCI7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWF3ZXNvbWU7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuXHJcbiAgICAgICAgICAgIC8vIHJlc3BvbnNpdmVcclxuICAgICAgICAgICAgQG1lZGlhICN7JHh4cy1kZXZpY2V9IHtcclxuICAgICAgICAgICAgICAgIHJpZ2h0OiAxMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uZmFxLWlubmVyIC5jYXJkLWhlYWRlciAuYWNjb3JkaW8taGVhZGluZ1thcmlhLWV4cGFuZGVkPVwiZmFsc2VcIl0ge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJnLWdyYXk7XHJcbn1cclxuXHJcbi5mYXEtaW5uZXIgLmNhcmQtaGVhZGVyIC5hY2NvcmRpby1oZWFkaW5nW2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdIHtcclxuICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3I7XHJcblxyXG4gICAgaSB7XHJcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgIH1cclxuXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGYxMDZcIjtcclxuICAgIH1cclxufVxyXG5cclxuLyotLS0tLS0tLS0tIGZhcSBzdHlsZSBlbmQgLS0tLS0tLS0tLSovIiwiLmVycm9yIHtcclxuICAgIGgxIHtcclxuICAgICAgICBmb250LXNpemU6IDIwMHB4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XHJcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFyZW07XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogLTQ0cHg7XHJcbiAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcclxuXHJcbiAgICAgICAgLy8gcmVzcG9uc2l2ZVxyXG4gICAgICAgIEBtZWRpYSAjeyRtZC1kZXZpY2V9IHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxMzBweDtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTMwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAbWVkaWEgI3skc20tZGV2aWNlfSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTAwcHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0yM3B4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBoMiB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyNXB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDEwcHggMDtcclxuXHJcbiAgICAgICAgLy8gcmVzcG9uc2l2ZVxyXG4gICAgICAgIEBtZWRpYSAjeyR4eHMtZGV2aWNlfSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnNlYXJjaGZvcm0ge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcblxyXG4gICAgICAgICZfX2lucHV0IHtcclxuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGJkci1jb2xvcjtcclxuICAgICAgICAgICAgaGVpZ2h0OiA0NXB4O1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xyXG5cclxuICAgICAgICAgICAgLy8gcmVzcG9uc2l2ZVxyXG4gICAgICAgICAgICBAbWVkaWEgI3skeHhzLWRldmljZX0ge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDg1JTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJl9fc3VibWl0IHtcclxuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3I7XHJcbiAgICAgICAgICAgIHdpZHRoOiA3MHB4O1xyXG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjay1zb2Z0O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5idG4tYWxsIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xyXG4gICAgfVxyXG59IiwiLyotLS0tLSBmb290ZXIgc2VjdGlvbiBzdGFydCAtLS0tLSovXHJcbi5mb290ZXItd2lkZ2V0LWFyZWEge1xyXG4gICAgJi5wYi0xMjUge1xyXG4gICAgICAgIEBtZWRpYSAjeyRtZC1kZXZpY2UsICRzbS1kZXZpY2V9e1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNjdweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi53aWRnZXQtbG9nbyB7XHJcbiAgICBtYXgtd2lkdGg6IDExMHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxufVxyXG5cclxuLndpZGdldC10aXRsZSB7XHJcbiAgICBmb250LXdlaWdodDogODAwO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMzhweDtcclxuXHJcbiAgICAvLyByZXNwb25zaXZlXHJcbiAgICBAbWVkaWEgI3skbWQtZGV2aWNlLCAkc20tZGV2aWNlfSB7XHJcbiAgICAgICAgbWFyZ2luOiAtNnB4IDAgMjBweDtcclxuICAgIH1cclxufVxyXG5cclxuLndpZGdldC1ib2R5IHtcclxuICAgIC5kZXNjIHtcclxuICAgICAgICBjb2xvcjogJGJsYWNrLXNvZnQ7XHJcbiAgICB9XHJcblxyXG59XHJcblxyXG4ubmV3cy1zdWJ0aXRsZSB7XHJcbiAgICBwIHtcclxuICAgICAgICBiIHtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IDVweDtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDhweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jb250YWN0LWluZm8ge1xyXG4gICAgcGFkZGluZy10b3A6IDEycHg7XHJcblxyXG4gICAgbGkge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMnB4O1xyXG5cclxuICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNXB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi51c2VmdWwtbGluayB7XHJcbiAgICBsaSB7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNztcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcblxyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrLXNvZnQ7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxOHB4O1xyXG5cclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogJ1xcZjEwMSc7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnRfYXdlc29tZTtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICBjbGVhcjogYm90aDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIHR3aXR0ZXIgcG9zdCB3aWRnZXRcclxuLnR3aXR0ZXItcG9zdCB7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xyXG5cclxuICAgIGxpOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIycHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIG5ld3NsZXR0ZXIgZm9ybSBzdHlsZVxyXG4ubmV3c2xldHRlci1pbm5lciB7XHJcbiAgICBtYXJnaW4tdG9wOiAxNXB4O1xyXG5cclxuICAgIGZvcm0ge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIH1cclxuXHJcbiAgICAubmV3cy1maWVsZCB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogNTBweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgICBjb2xvcjogJGJsYWNrLXNvZnQ7XHJcbiAgICAgICAgcGFkZGluZzogMCAyNXB4O1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRiZHItY29sb3I7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTBweDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5idG4ge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvci0yO1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrLXNvZnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLyBmb290ZXIgYm90dG9tXHJcbi5mb290ZXItYm90dG9tIHtcclxuICAgIHBhZGRpbmc6IDIxcHggMDtcclxufVxyXG5cclxuLmNvcHlyaWdodC10ZXh0IHtcclxuICAgIHAge1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcblxyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmZvb3Rlci13aWRnZXQtYXJlYSB7XHJcbiAgICBbY2xhc3MqPVwiY29sLVwiXSB7XHJcbiAgICAgICAgLmZvb3Rlci1zaW5nbGUtd2lkZ2V0IHtcclxuXHJcbiAgICAgICAgICAgIC8vIHJlc3BvbnNpdmVcclxuICAgICAgICAgICAgQG1lZGlhICN7JHh4bC1kZXZpY2V9IHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMThweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIC5mb290ZXItc2luZ2xlLXdpZGdldCB7XHJcblxyXG4gICAgICAgICAgICAgICAgLy8gcmVzcG9uc2l2ZVxyXG4gICAgICAgICAgICAgICAgQG1lZGlhICN7JHh4bC1kZXZpY2V9IHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qLS0tLS0gZm9vdGVyIHNlY3Rpb24gZW5kIC0tLS0tKi8iXX0= */

.free-demo { font-size: 22px !important; color: #b92501 !important; margin-top: 25px; }
.fst-cps { text-transform: capitalize; }
.top-mag-40 { margin-top: 40px }
.top-mag-35 { margin-top: 35px }

.feat1-icon { background: url(../images/samp.png) left center no-repeat; }
.features-list { font-size: 20px; text-align: left; padding-left: 50px; line-height: 40px; float: left; margin-top: 15px;}
.pricing-lis li {  }
.footer-content { background: #e5e5e5; padding: 15px 0; }
.footer-content a { color: #000; }
.nav-item { font-size: 22px !important; }
.nav-link { padding-top: 10px; padding-bottom: 10px; color: #fff !important; font-size: 16px; } 

.country-widg { float: left; }
#country-code { width: 30% !important; }
#country-phone { width: 70% !important }

.footer-widg { padding: 50px 0 }
.footer-widg h2 { font-size:20px; margin-bottom: 30px; }
.footer-widg .footer-menu li a { font-size: 15px; color: #000; line-height: 30px }
.footer-widg .footer-menu li { list-style: circle; }
.footer-widg .footer-menu li a:hover { padding-left: 5px; }
.follow-us li a { font-size: 15px; color: #000; line-height: 30px }
.follow-us li a .fa { font-size: 15px; color: #000; margin-right: 5px; }
.follow-us li a:hover { padding-left: 5px; }
.follow-us li:nth-child(1) a:hover { color: #3b5998 ; }
.follow-us li:nth-child(2) a:hover { color: #b95abb ; }
.follow-us li:nth-child(3) a:hover { color: #00acee ; }

.flow-list {}
.flow-list li { list-style: circle; color: #fff; }
.flow-list li a { font-size: 15px; color: #fff; line-height: 30px }
.flow-list li a:hover { padding-left: 5px; }

.cont-btn a { color: #f1592a !important; cursor: pointer; } 
.equal-height-40 {min-height: 40vh; }
.equal-height-45 {min-height: 45vh; }
.equal-height-50 {min-height: 50vh; }
.equal-height-55 {min-height: 55vh; }
.equal-height-60 {min-height: 60vh; }
.equal-height-65 {min-height: 65vh; }
.equal-height-70 {min-height: 70vh; }
.equal-height-75 {min-height: 75vh; }
.equal-height-80 {min-height: 80vh; }
.equal-height-85 {min-height: 85vh; }
.equal-height-90 {min-height: 90vh; }
.equal-height-95 {min-height: 95vh; }
.equal-height-100 {min-height: 100vh; }

.visitor-ic { background: url(../images/visitor-ic.png) 30px center no-repeat; }
.declaration-ic { background: url(../images/declaration.png) 30px center no-repeat; }

.des-none { display: none; }
@media screen and (max-width: 600px) { 
  .h1-responsive { font-size: 20px !important; margin-bottom: 0 !important }
  .carousel-caption p { font-size: 15px !important; line-height: 17px !important; }
  .carousel-caption { padding-top: 10% !important }
  .des-none { display: block !important; }
  .mobile-none { display: none; }
  .ptn-250 { padding-bottom: 0 !important; } 
  .testimonial-carousel-active.slick-arrow-style--testimonial_2 .slick-list .slick-slide, .hero-slider-active.slick-arrow-style--testimonial_2 .slick-list .slick-slide {
    padding: 30px 0;
  }
  .testimonial-item--style_2 .testimonial-content {
    padding: 20px 15px;
  }
 }

.ftr-cnt { display: inline-block; } 
.ftr-cnt li { float: left; padding-left: 25px; margin-left: 10px; font-size: 17px; }
.flg-usa { background: url(../images/usa.png) left center no-repeat;  }
.flg-sing { background: url(../images/sing.png) left center no-repeat;  }
.flg-mly { background: url(../images/malaysia.png) left center no-repeat;  }
.flg-ind { background: url(../images/ind.png) left center no-repeat;  }
.email { background: url(../images/gmail.png) left center no-repeat;  }
/*.last-flg { padding-left: 0px !important; margin-left: 5px !important; }*/
.ptn-250 { padding-bottom: 250px }
.last-num {  }

/*-----------=========----------===-----------=======--=======*/
.bodyBck {
        background-color: #DD4814;
        width: 100%;
        height: 400px;
    }
    /* Sticky Social Icons */
    .social-media-container {
        padding: 0px;
        margin: 0px;
        position: fixed;
        right: -157px;
        top: 230px;
        width: 210px;
        z-index: 1100;
    }

    .social-media li {
        list-style-type: none;
        background-color: #fff;
        color: #efefef;
        height: 55px;
        padding: 0px;
        margin: 0px 0px 1px 0px;
        -webkit-transition: all 0.25s ease-in-out;
        -moz-transition: all 0.25s ease-in-out;
        -o-transition: all 0.25s ease-in-out;
        transition: all 0.25s ease-in-out;
        cursor: pointer;
    }
    .social-media li:hover {
        margin-left: -78px;
    }

    .social-media li img {
        float: left;
        margin: 5px 4px;
        margin-right: 5px;
    }

    .social-media li p {
        padding-top: 15px;
        margin: 0px;
        line-height: 16px;
        font-size: 15px;
        line-height: 18px;
    }

    .social-media li p a {
        text-decoration: none;
        color: #2C3539;
    }

    .social-media li p a:hover {  }
    /* Sticky Social Icons */

    .quick_con_tab {
        transition: background-color 0.5s ease;
        background-image: url(../images/quick_contact_tab.png);
        background-repeat: no-repeat;
        background-color: #ef5522;
        border-radius: 0px 5px 5px 0px;
        left: 0px;
        top: 180px;
        height: 150px;
        width: 36px;
        margin: 0;
        padding: 0;
        position: fixed;
        z-index: 9;
        display: block; cursor: pointer;
    }
    .quick_whatsapp img {
        transition: background-color 0.5s ease;
        background-repeat: no-repeat;
        background-color: #fff;
        border-radius: 0px 5px 5px 0px;
        left: -4px;
        top: 330px;
        height: 40px;
        width: 40px;
        margin: 0;
        padding: 0;
        position: fixed;
        z-index: 9;
        display: block; cursor: pointer;
    }
.service-single-widget .service-list li a {
    color: #151515;
    display: inline-block;
    margin-bottom: 10px;
    position: relative;
    padding-left: 25px;
}
.service-single-widget .service-list li span {
    color: #848484 !important;
    font-size: 13px;
    float: right;
}
.blog_more {
    float: right;
    background: #c8c8c8;
    color: #000;
    padding: 3px 10px 5px 10px;
    border-radius: 5px;
}
.service-single-widget .service-widget-title {
    font-weight: 700;
    padding-bottom: 20px;
    line-height: 1;
    font-size: 20px;
}