/*!
 Author:         Bankai
 Template:       Opencart
*/

@import url("https://fonts.googleapis.com/css?family=Muli:400,600,700,800&display=swap");

@-webkit-keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }

  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }

  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@-webkit-keyframes floating {
  from {
    -webkit-transform: translate(0, 0px);
    transform: translate(0, 0px);
  }

  65% {
    -webkit-transform: translate(0, 15px);
    transform: translate(0, 15px);
  }

  to {
    -webkit-transform: translate(0, 0px);
    transform: translate(0, 0px);
  }
}

@keyframes floating {
  from {
    -webkit-transform: translate(0, 0px);
    transform: translate(0, 0px);
  }

  65% {
    -webkit-transform: translate(0, 15px);
    transform: translate(0, 15px);
  }

  to {
    -webkit-transform: translate(0, 0px);
    transform: translate(0, 0px);
  }
}

body {
  color: #000;
  line-height: 2em;
  font-family: 'Muli', sans-serif !important;
  font-weight: 400 !important;
  overflow-x: hidden !important;
}

body.information-information:not(.iid-6):not(.iid-3):not(.iid-5) > .container > .row {
  display: none;
}

body.information-information:not(.iid-6):not(.iid-3):not(.iid-5) > #footer-area {
  margin-top: 0;
}

body:not(.common-home)::before {
  content: '';
  position: absolute;
  width: 3px;
  height: 40%;
  left: 0;
  top: calc(50% - 15%);
  background-color: #bf2031;
}

b {
  margin-left: 5px !important;
}

.container {
  width: 80%;
}

::-moz-selection {
  color: #fff;
  background-color: #a41726;
}

::selection {
  color: #fff;
  background-color: #a41726;
}

a {
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

img {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  color: #000;
  font-weight: 700 !important;
}

.sec {
  padding: 70px 0;
}

.sectop {
  padding: 20px 0 70px;
}

.sec_title > * {
  text-align: left !important;
  margin-bottom: 20px !important;
  font-size: 24px;
}

.sec_title > *::after {
  background: #0054a6 !important;
  height: 3px !important;
  margin: 20px 0 0 !important;
}

.sec_title.center_title > * {
  text-align: center !important;
}

.sec_title.center_title > *::after {
  margin: 20px auto 0 auto !important;
}

h2::after {
  background: #0054a6 !important;
  height: 3px !important;
}

.pt1 {
  padding-top: 10px !important;
}

.pt2 {
  padding-top: 20px !important;
}

.pt3 {
  padding-top: 30px !important;
}

.pt4 {
  padding-top: 40px !important;
}

.pt5 {
  padding-top: 50px !important;
}

.pt6 {
  padding-top: 60px !important;
}

.pt7 {
  padding-top: 70px !important;
}

.pt8 {
  padding-top: 80px !important;
}

.pt9 {
  padding-top: 90px !important;
}

.pt10 {
  padding-top: 70px !important;
}

.rotate > * {
  text-transform: uppercase;
  letter-spacing: 5px;
  margin: 0;
  padding: 0;
}

.img {
  position: relative;
  z-index: 1;
}

.img img {
  width: 100%;
}

.fixed-header {
  left: 0 !important;
  background: linear-gradient(246deg, #bf2031 0%, #bf2031 38%, white 38%, white 100%);
  -webkit-box-shadow: none !important;
  box-shadow: none !important;
}

.fixed-header > .container {
  padding: 0 15px;
  width: 90%;
}

.fixed-header .header-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.fixed-header .header-container > * {
  -webkit-box-flex: 0;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
}

.fixed-header .header-top {
  -webkit-box-ordinal-group: 4;
  -ms-flex-order: 3;
  order: 3;
}

.fixed-header .header-top .fa {
  color: #fff;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

.fixed-header .header-top .fa:hover {
  opacity: .5;
}

.fixed-header .header-top .dropdown-menu a {
  text-transform: uppercase;
}

.fixed-header .header-top .dropdown-menu a:hover {
  background-color: transparent;
  color: #0054a6;
}

.fixed-header .header-top .badge {
  background-color: #a41726 !important;
}

.fixed-header .header-logo {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
  margin-right: auto;
}

.fixed-header .header-mobile-links {
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
}

.fixed-header .header-menu {
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
}

.fixed-header .header-menu #main-menu .sub-arrow {
  display: none;
}

.fixed-header .header-menu #main-menu > li {
  position: relative;
  overflow: hidden;
}

.fixed-header .header-menu #main-menu > li > ul {
  display: none !important;
}

.fixed-header .header-menu #main-menu > li > a {
  letter-spacing: 1px;
  color: #fff;
  text-transform: uppercase;
  padding: 50px 10px !important;
}

.fixed-header .header-menu #main-menu > li::before {
  position: absolute;
  content: '';
  width: 100%;
  height: 0;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

.fixed-header .header-menu #main-menu > li:hover::before {
  height: 100%;
  background-color: #0054a6;
}

.fixed-header .header-menu #main-menu > li.active::before {
  background-color: #0054a6;
  height: 100%;
}

.fixed-header .header-menu #main-menu > li.active a {
  text-decoration: underline;
}

#mobileNav {
  color: #fff;
}

#sidr {
  background: #bf2031;
}

#sidr .header-mobile .mobile-account {
  border-color: #a41726;
}

#sidr .header-mobile a {
  letter-spacing: 1px;
  font-size: 15px;
  color: #fff;
  border-color: #a41726;
}

#sidr .header-mobile a i {
  font-size: 14px;
  color: #fff;
}

#sidr .mobile-search .search-custom {
  padding: 0;
}

#sidr .mobile-search .search-box {
  background-color: #a41726;
  border-color: #a41726;
}

#sidr .mobile-search .search-box input {
  background-color: #a41726;
  color: rgba(255, 255, 255, 0.8);
}

#sidr .mobile-search .search-box input::-webkit-input-placeholder {
  color: rgba(255, 255, 255, 0.5);
}

#sidr .mobile-search .search-box input::-moz-placeholder {
  color: rgba(255, 255, 255, 0.5);
}

#sidr .mobile-search .search-box input:-ms-input-placeholder {
  color: rgba(255, 255, 255, 0.5);
}

#sidr .mobile-search .search-box input::-ms-input-placeholder {
  color: rgba(255, 255, 255, 0.5);
}

#sidr .mobile-search .search-box input::placeholder {
  color: rgba(255, 255, 255, 0.5);
}

#sidr .mobile-search .search-box .search-btn {
  padding: 0;
}

#sidr .mobile-search .search-box .fa-search {
  padding-left: 10px;
  padding-right: 10px;
  cursor: pointer;
  color: #fff;
  font-size: 16px;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

#sidr .mobile-search .search-box .fa-search:hover {
  color: #d7d7d7;
}

#sidr .cd-accordion-menu li {
  border-top: 1px solid #a41726;
}

#sidr .cd-accordion-menu li:last-child {
  border-bottom: 1px solid #a41726;
}

#sidr .cd-accordion-menu li.has-children label {
  display: none;
}

#sidr .cd-accordion-menu li.has-children ul {
  display: none !important;
}

#sidr .cd-accordion-menu li a {
  color: #fff;
  font-size: 15px;
  text-transform: uppercase;
  background: #bf2031;
}

#sidr .cd-accordion-menu li.active > a {
  background-color: #0054a6;
}

#sidr .cd-accordion-menu li.has-children label {
  background-color: #fff;
  color: #000;
}

#sidr .cd-accordion-menu li.has-children > ul {
  display: none;
}

#ToTop {
  display: none !important;
}

#footer-area {
  background-color: #a41726;
}

#footer-area footer {
  text-transform: uppercase;
  padding: 50px 0;
  background: linear-gradient(246deg, #a41726 0%, #a41726 65%, #bf2031 65%, #bf2031 100%);
}

#footer-area a {
  color: #fff;
}

#footer-area a:hover {
  opacity: .5;
}

#footer-area .footer-upper-contet {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

#footer-area .footer-upper-contet > * {
  -webkit-box-flex: 0;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
}

#footer-area .footer-upper-contet .footer-contact-info {
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
}

#footer-area .footer-upper-contet .footer-contact-links {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
}

#footer-area .footer-upper-contet .footer-contact-links ul {
  margin-bottom: 0;
}

#footer-area .footer-upper-contet .footer-social-info {
  -webkit-box-ordinal-group: 4;
  -ms-flex-order: 3;
  order: 3;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

#footer-area .footer-upper-contet .footer-social-info .footer-social-icons {
  padding-top: 0;
}

#footer-area .footer-upper-contet .footer-social-info .copyright {
  text-transform: auto;
  text-transform: initial;
}

#footer-area .footer-upper-contet .footer-social-info .copyright p {
  margin-bottom: 0;
}

#footer-area .footer-upper-contet .footer-social-info .copyright a {
  text-decoration: none;
}

.breadcrumb {
  background: transparent;
  border: 0;
  padding: 0;
  margin: 70px 0 20px;
}

.breadcrumb li::after {
  content: '/';
  color: #000;
}

.breadcrumb li:first-child {
  padding-left: 0;
}

.breadcrumb li a {
  color: #000;
  text-transform: uppercase;
  font-size: 16px;
}

.breadcrumb li a:hover {
  color: #bf2031;
}

.product-category .breadcrumb {
  margin-bottom: 50px;
}

.product-category .breadcrumb > li:nth-child(2) {
  display: none;
}

.product-product .breadcrumb {
  margin-bottom: 50px;
}

.information-contact .breadcrumb {
  margin-bottom: 50px;
}

.slider-slideshow-description-texts > [class^=slideshow-text-] {
  color: #fff !important;
  font-size: 20px !important;
  text-transform: uppercase;
  text-shadow: 0px 0px 10px #000;
  font-weight: 700 !important;
}

.slider-slideshow-description-texts .slider-slideshow-description-link .btn {
  color: #fff !important;
  border-color: #fff !important;
}

.slider-slideshow-description-texts .slider-slideshow-description-link .btn:hover {
  border-color: #bf2031 !important;
}

.owl-nav {
  position: absolute;
  bottom: 10%;
  right: 10%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  z-index: 2;
}

.owl-nav > * {
  width: auto !important;
  position: initial;
}

.owl-nav .arrows {
  width: 50px;
  height: 50px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  text-align: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  color: #fff;
  background-color: rgba(0, 0, 0, 0.5);
  margin: 3px;
}

.owl-nav .arrows i {
  font-size: 24px;
}

.owl-nav .owl-prev {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
}

.owl-nav .owl-next {
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
}

.slider-dots {
  padding: 0px 47px;
  bottom: 10%;
  right: 0;
}

.slider-dots .owl-dot {
  width: 35px;
  border-radius: 0 !important;
  height: 5px !important;
  background-color: #fff !important;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

.slider-dots .owl-dot.active {
  background-color: #0054a6 !important;
}

a {
  color: #bf2031;
}

button {
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

.btn {
  border-radius: 0;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

.btn.btn-primary,
.btn.btn-default {
  color: #000 !important;
  background: transparent !important;
  border: 2px solid #000 !important;
  position: relative;
  overflow: hidden;
  z-index: 1;
}

.btn.btn-primary::before,
.btn.btn-default::before {
  content: '';
  height: 0;
  width: 150%;
  background: #bf2031 !important;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
  transform: translate(-50%, -50%) rotate(45deg);
  z-index: -1;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

.btn.btn-primary:hover,
.btn.btn-default:hover {
  color: #fff !important;
  border-color: #bf2031 !important;
}

.btn.btn-primary:hover::before,
.btn.btn-default:hover::before {
  height: 450%;
  background: #bf2031;
}

.btn:focus {
  outline: none !important;
}

.btn.btn-number {
  border-width: 1px !important;
  font-size: 12px !important;
}

#button-login {
  border-width: 1px !important;
}

#button-confirm:hover {
  background-color: #bf2031 !important;
}

#filter_group_tigger_open {
  background-color: #bf2031 !important;
  border-color: #bf2031 !important;
}

.cart-dorpdown-footer a:hover {
  color: #fff !important;
}

.label-primary {
  background-color: #bf2031 !important;
}

.swal2-confirm {
  color: #fff;
  background-color: #bf2031 !important;
  border: #bf2031 !important;
}

#quickcheckout-back {
  background-color: #0054a6;
  border-color: #0054a6;
}

#quickcheckout-back:hover {
  background-color: #bf2031;
  border-color: #bf2031;
}

span.label.out-of-stock {
  font-size: 14px;
  font-weight: normal !important;
  display: inline-block;
  min-width: 170px;
  padding: 16px 14px;
  text-transform: uppercase;
  border-radius: 0;
}

input,
textarea {
  -webkit-box-shadow: none !important;
  box-shadow: none !important;
  outline: none;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

input:not([name=search]),
textarea:not([name=search]) {
  border: 1px solid #d7d7d7 !important;
}

input:focus,
textarea:focus {
  outline: none;
  -webkit-box-shadow: none !important;
  box-shadow: none !important;
  border-color: #000 !important;
}

input::-ms-clear,
textarea::-ms-clear {
  display: none !important;
}

select {
  padding: 10px !important;
  height: auto !important;
  border: 1px solid #d7d7d7 !important;
  -webkit-box-shadow: none !important;
  box-shadow: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  appearance: none !important;
  background-image: linear-gradient(45deg, transparent 50%, #000 50%), linear-gradient(135deg, #000 50%, transparent 50%) !important;
  background-position: calc(100% - 15px) calc(1em + 6px), calc(100% - 10px) calc(1em + 6px) !important;
  background-size: 5px 5px, 5px 5px !important;
  background-repeat: no-repeat !important;
}

select::-ms-expand {
  display: none;
}

select:focus {
  outline: none;
  -webkit-box-shadow: none !important;
  box-shadow: none !important;
  border-color: #000 !important;
}

#google_recaptcha {
  -webkit-transform: inherit;
  transform: inherit;
  -webkit-transform-origin: none;
  transform-origin: none;
  margin-bottom: 15px !important;
  margin-left: 0 !important;
}

.g-recaptcha {
  -webkit-transform: scale(0.7);
  transform: scale(0.7);
  -webkit-transform-origin: 0;
  transform-origin: 0;
}

.form-item .title {
  font-size: 16px;
  margin-bottom: 5px;
}

.form-item .text-danger {
  padding-left: 1px;
  margin-top: 5px;
  font-size: 11px;
}

.form-item .rating {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.form-item .rating .radiobox {
  margin-top: 0;
}

.form-item .rating .radiomark {
  margin: 5px !important;
}

.form-item .rating span:first-child {
  margin-right: 5px;
}

.form-item .rating span:last-child {
  margin-left: 5px;
}

.form-item.items:not(.form-footer) > .item {
  margin-bottom: 20px;
}

.form-item:not(.items) > .item {
  margin-bottom: 10px;
}

.form-item.form-footer {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.form-item select {
  width: 100%;
  line-height: 1em;
  background-position: calc(100% - 15px) 1em, calc(100% - 10px) 1em !important;
  text-transform: uppercase;
}

.alert {
  border: 0 !important;
  border-radius: 0;
}

.rating .fa-star,
#form-review .fa-star {
  color: #fbba00 !important;
}

.rating .fa-star + .fa-star-o,
#form-review .fa-star + .fa-star-o {
  color: #fbba00 !important;
}

::-webkit-input-placeholder {
  text-transform: uppercase;
}

::-moz-placeholder {
  text-transform: uppercase;
}

:-ms-input-placeholder {
  text-transform: uppercase;
}

::-ms-input-placeholder {
  text-transform: uppercase;
}

::placeholder {
  text-transform: uppercase;
}

hr {
  border: 0;
  border-bottom: 2px solid #bf2031;
}

hr.short {
  width: 100px;
  margin-top: 0;
}

.section-title {
  margin-bottom: 50px !important;
}

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

.pagination > li i {
  font-size: 18px;
}

.pagination > li:not(:last-child) {
  margin-right: 5px;
}

.pagination > li > * {
  border-width: 2px !important;
  margin: 0 !important;
  color: #000 !important;
  border-radius: 100% !important;
  border-color: #d7d7d7 !important;
}

.pagination > li.active > *,
.pagination > li:focus > *,
.pagination > li:hover > * {
  color: #bf2031 !important;
  background-color: transparent !important;
  border-color: #bf2031 !important;
}

.pagination > li.pagination_arrow {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.pagination > li.pagination_arrow > * {
  color: #bf2031 !important;
  padding: 0 12px;
  border: 0 !important;
}

.pagination > li.pagination_arrow > * i {
  font-size: 30px;
}

#filter-groups > * {
  -webkit-box-shadow: none !important;
  box-shadow: none !important;
}

#filter-groups a {
  color: rgba(0, 0, 0, 0.6);
}

#filter-groups a:hover {
  color: #000 !important;
  background-color: transparent !important;
}

#filter-groups .active a {
  color: #000;
}

#filter-groups .list-group-item {
  padding: 7px 10px;
}

#filter-groups .list-group-item,
#filter-groups .list-group {
  border: 0 !important;
}

#filter-groups .list-group-item > *,
#filter-groups .list-group > * {
  border: 0 !important;
}

#filter-groups .item-header {
  color: #000;
  padding: 0;
  font-weight: bold;
}

#filter-groups #side_filter .item-header i {
  cursor: pointer;
  padding: 0 10px;
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-transform: rotate(0);
  transform: rotate(0);
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

#filter-groups #side_filter .item-header i.active {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

#filter-groups #side-manufacturer,
#filter-groups #side_filter {
  margin-bottom: 30px;
}

#filter-groups #side-manufacturer .item-header,
#filter-groups #side_filter .item-header {
  margin: 0;
  border: 0 !important;
  border-bottom: 2px solid #0054a6 !important;
  color: #000 !important;
  text-transform: uppercase;
  font-size: 12px !important;
  font-weight: 700 !important;
  padding: 7px;
}

#filter-groups #side-manufacturer .checkmark,
#filter-groups #side_filter .checkmark {
  display: none;
}

#filter-groups #side-manufacturer .checkbox_name,
#filter-groups #side_filter .checkbox_name {
  color: rgba(0, 0, 0, 0.6);
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

#filter-groups #side-manufacturer .checkbox_name:hover,
#filter-groups #side_filter .checkbox_name:hover {
  color: #000;
}

#filter-groups #side-manufacturer input:checked ~ .checkmark ~ .checkbox_name,
#filter-groups #side_filter input:checked ~ .checkmark ~ .checkbox_name {
  color: #000;
}

#filter-groups #side-categories {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

#filter-groups #side-categories > .item-header {
  display: none;
}

#filter-groups #side-categories .side-categories-level-1 > .group > .level-1 {
  display: none !important;
}

#filter-groups #side-categories .side-categories-level-1 > .group > .level-2 {
  border: 0 !important;
}

#filter-groups #side-categories .side-categories-level-1 > .group > .level-2 > .group {
  border: 0 !important;
  margin-bottom: 30px;
}

#filter-groups #side-categories .side-categories-level-1 > .group > .level-2 > .group > .level-2 {
  border: 0 !important;
  border-bottom: 2px solid #0054a6 !important;
}

#filter-groups #side-categories .side-categories-level-1 > .group > .level-2 > .group > .level-2 > .sub {
  display: block;
}

#filter-groups #side-categories .side-categories-level-1 > .group > .level-2 > .group > .level-2 .fa {
  -webkit-transform: rotate(0);
  transform: rotate(0);
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

#filter-groups #side-categories .side-categories-level-1 > .group > .level-2 > .group > .level-2.active .fa {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

#filter-groups #side-categories .side-categories-level-1 > .group > .level-2 > .group > .level-2 > a {
  color: #000 !important;
  text-transform: uppercase;
  font-size: 12px !important;
  font-weight: 700 !important;
}

#filter-groups #side-categories .side-categories-level-1 > .group > .level-2 > .group > .level-2 .pointer {
  border: 0 !important;
  background-color: transparent !important;
  color: #000 !important;
}

#filter-groups #side-categories .side-categories-level-1 > .group .level-3 {
  border: 0 !important;
}

#filter-groups #side-categories .side-categories-level-1 > .group .level-3 .active {
  color: #bf2031;
}

#filter-groups #side-categories .side-categories-level-1 > .group .level-3 a {
  padding-left: 15px;
}

#filter-groups #side-price {
  display: none;
}

#filter-groups #side-price .input-group {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

#filter-groups #side-price .input-group > * {
  -webkit-box-flex: 0;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
}

#filter-groups #side-price .input-group label {
  margin-bottom: 0;
}

#filter-groups #side-price .input-group:last-child {
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}

#filter-groups #side-price .price-container label {
  padding-right: 0;
}

#filter-groups #side-price .price-container input {
  border: 0 !important;
  -webkit-box-shadow: none !important;
  box-shadow: none !important;
  background-color: transparent;
  width: 70%;
}

#filter-groups #side-price #slider-price {
  background-color: transparent;
  border: 1px solid #e1e1e1;
  border-radius: 0;
  height: 5px;
}

#filter-groups #side-price #slider-price .ui-slider-range {
  background-color: #bf2031;
}

#filter-groups #side-price #slider-price .ui-slider-handle {
  background-color: #fff;
  border: 1px solid #bf2031;
}

body[class*='cid-5'] .side-categories-level-1:first-child {
  display: none;
}

body[class*='cid-6'] .side-categories-level-1:last-child {
  display: none;
}

.product-view {
  padding: 5px !important;
}

.product-view .product-block {
  -webkit-box-flex: 0;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
  width: calc((99% / 2) - 20px);
  margin: 10px !important;
}

#product-filter-replace > h2 {
  display: none;
}

.product-block {
  border: 0;
}

.product-block .product-image-block {
  overflow: hidden;
}

.product-block .product-image-block > a {
  display: block;
}

.product-block .view_details_btn {
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  opacity: 0;
  position: absolute;
  width: 100%;
  height: 0;
  top: 0;
  left: 0;
  color: #fff;
  text-transform: uppercase;
  background-color: rgba(191, 32, 49, 0.6);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.product-block .view_details_btn i {
  border-radius: 100%;
  font-size: 24px;
  display: block;
  color: #000 !important;
  width: 50px;
  height: 50px;
  background-color: #fff !important;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.product-block:hover .view_details_btn {
  height: 100%;
  opacity: 1;
}

.product-block .more-options-text {
  display: none;
}

.product-block .product-name a {
  font-size: 16px;
  font-weight: 600 !important;
  text-transform: uppercase;
  color: #000;
}

.product-block .product-details {
  width: 100%;
}

.product-block .product-details .price {
  color: #000;
}

.product-block .product-details .price > * {
  font-size: 16px !important;
}

.product-block .product-details .price .price-new {
  color: #000;
}

.product-block .product-details .price .price-old {
  color: #000;
  opacity: .5;
  text-decoration: line-through;
}

.product-block .product-details .enquiry-item {
  color: #000;
  font-weight: normal;
  text-transform: capitalize;
  background-color: transparent !important;
  font-size: 14px !important;
}

.product-block .product-list-color-options {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 10px;
  padding: 0 7px;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
}

.product-block .product-list-color-options > * {
  -webkit-box-flex: 0;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
  cursor: pointer;
}

.product-block .product-list-color-options img {
  width: 20px;
  height: 20px;
  border-radius: 100%;
}

.sort_container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}

.sort_container .input-group-addon {
  display: none;
}

.sort_container > *:first-child {
  display: none;
}

.product-product .product-name {
  color: #000 !important;
}

.product-product .leasing_period {
  text-transform: uppercase;
  font-weight: 700 !important;
  font-size: 18px;
  margin-bottom: 10px;
}

.product-product .product-description {
  margin-bottom: 20px;
}

.product-product ul.price-details {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 20px 0;
}

.product-product ul.price-details > * {
  color: #bf2031;
  font-weight: 700 !important;
  -webkit-box-flex: 0;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
  font-size: 18px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.product-product ul.price-details:not(.price-special):first-child {
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
}

.product-product ul.price-details:not(.price-special):last-child {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
  margin-right: 10px;
}

.product-product ul.price-details.price-special:first-child {
  margin-right: 10px;
}

.product-product .product-image-column .product-image-main-container {
  overflow: visible;
}

.product-product .product-image-column .product-image-additional-container {
  padding: 0;
}

.product-product .product-image-column .product-image-additional-container img {
  padding: 0;
  border: 0;
}

.product-product .product-image-column .product-image-additional .slick-current img {
  opacity: 0.7;
}

.product-product .product-image-column .slick-track {
  margin-left: 0;
  margin-right: 0;
}

.product-product #product .product-btns-container {
  width: 100%;
  margin-bottom: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.product-product #product .product-btns-container > * {
  margin-bottom: 5px;
}

.product-product #product .product-btns-container > *:not(:last-child) {
  margin-right: 5px;
}

.product-product #product .separator_to {
  margin: 0 20px 24px;
  text-align: center;
}

.product-product .share-container {
  display: none;
  margin: 20px 0;
}

.product-product .share-container a {
  background-color: transparent !important;
}

.product-product .share-container a svg {
  fill: #000 !important;
}

.product-product .enquiry-block {
  margin: 20px 0;
}

.product-product .enquiry-block .label {
  text-transform: uppercase;
  color: #000;
  background-color: transparent !important;
  font-size: 18px;
  padding: 0;
}

.product-product .product_oos {
  font-weight: 700 !important;
  font-size: 20px;
  color: #a8a8a8 !important;
  margin-bottom: 20px;
}

.product-product #waiting_list {
  display: none;
}

.product-product #waiting_list .flex-group > *:first-child {
  -webkit-box-flex: 1;
  -ms-flex: 1 0 auto;
  flex: 1 0 auto;
}

.product-product #waiting_list .flex-group > *:last-child {
  -webkit-box-flex: 0;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
}

.product-product #waiting_list input {
  padding: 13px 10px;
}

.product-product #product-tabs {
  margin-top: 30px;
  border-color: #000;
}

.product-product #product-tabs li:not(:last-child) {
  margin-right: 10px;
}

.product-product #product-tabs li a {
  color: #000;
  border: 1px solid #000;
  border-radius: 0;
  margin: 0;
  text-transform: uppercase;
}

.product-product #product-tabs li.active a {
  background-color: #bf2031 !important;
  color: #fff;
  border-color: #bf2031 !important;
}

.product-product .tab-content table td {
  padding: 5px;
}

.product-product .featured-module {
  margin-top: 70px;
}

.product-product .featured-module .product-details {
  display: none;
}

.product-product .featured-module .slick-list {
  width: 90%;
  margin: 0 auto;
}

.product-product .featured-module .fa {
  background-color: #b0b0b0;
  color: #fff;
  font-size: 18px;
}

.product-product .featured-module .fa::before {
  display: block;
  padding: 15px 30px;
}

.product-product #product {
  max-width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.product-product #product h3 {
  text-transform: uppercase;
  width: 100%;
}

.product-product #product > .form-group {
  width: calc(50% - 53px);
}

.product-product #product > .form-group:not(.time_collect):not(.time_return) .control-label {
  display: none;
}

.product-product #product > .form-group.time_collect {
  margin-right: 53px;
}

.product-product #product > .form-group .date input {
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  border-right: 0 !important;
  text-align: center;
}

.product-product #product > .form-group .date input:focus {
  border-color: #d7d7d7 !important;
}

.product-product #product > .form-group .date .input-group-btn {
  -webkit-box-flex: 0;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
}

.product-product #product > .form-group .date .input-group-btn > * {
  min-width: auto !important;
  min-height: auto !important;
  height: auto !important;
  padding: 6px 12px !important;
  border: 1px solid #d7d7d7 !important;
  border-left: 0 !important;
}

.product-product #product > .form-group .date .input-group-btn > *::before {
  content: none !important;
}

.product-product #product > .form-group .date .input-group-btn > *:hover {
  color: #bf2031 !important;
}

.checkbox {
  margin: 0 !important;
  padding: 0 !important;
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-align: center !important;
  -ms-flex-align: center !important;
  align-items: center !important;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.checkbox > * {
  -webkit-box-flex: 0;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-align: center !important;
  -ms-flex-align: center !important;
  align-items: center !important;
}

.checkbox > * > * {
  -webkit-box-flex: 0;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
}

.checkbox .checkbox_name,
.checkbox label {
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
  padding: 0 !important;
  min-height: auto !important;
}

.checkbox .checkmark {
  position: relative;
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
  display: block;
  height: 20px;
  width: 20px;
  margin-right: 10px;
  background-color: transparent;
  border: 1px solid #bf2031;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

.checkbox .checkmark:hover {
  background-color: #bf2031;
}

.checkbox input {
  display: none !important;
}

.checkbox input:checked ~ .checkmark {
  background-color: #bf2031;
}

.checkbox input:checked ~ .checkmark::after {
  content: '';
  position: absolute;
  left: 5px;
  top: 1px;
  width: 7px;
  height: 12px;
  border: solid #fff;
  border-width: 0 2px 2px 0;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

#side_filter .checkbox:not(:last-child),
#side-manufacturer .checkbox:not(:last-child) {
  margin-bottom: 5px !important;
}

#side_filter label,
#side-manufacturer label {
  font-size: 14px;
}

.radiobox:not(.td) {
  margin-top: 5px;
  margin-bottom: 0 !important;
}

.radiobox.td {
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.radiobox.td > * {
  -webkit-box-flex: 0;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
}

.radiobox.td .radiomark {
  margin-right: 5px;
}

.radiobox .radiomark {
  height: 20px;
  width: 20px;
  background-color: #ddd;
  border-radius: 50%;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.radiobox .radiomark:hover {
  background-color: #bf2031;
}

.radiobox input {
  display: none !important;
}

.radiobox input:checked ~ .radiomark {
  background-color: #bf2031;
}

.radiobox input:checked ~ .radiomark:after {
  content: '';
  position: absolute;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: white;
}

.quickcheckout-checkout .terms .checkbox .checkbox_name {
  text-align: left;
}

.quickcheckout-checkout #create_account .checkbox {
  margin-bottom: 10px !important;
}

.quickcheckout-checkout .quickcheckout-checkbox .checkbox {
  margin-bottom: 10px !important;
}

.page-banner .page-banner-title {
  text-transform: uppercase;
  text-align: center;
  font-size: 26px;
  font-weight: 600 !important;
}

.modal_container {
  background-color: #fff;
  padding: 0;
  position: relative;
}

.modal_container .mfp-close {
  color: #fff;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

.modal_container .mfp-close:hover {
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg);
}

.modal_container .modal_banner img {
  width: 100%;
}

.modal_container .modal_content {
  padding: 20px;
  text-align: center;
}

.modal_container .modal_content p {
  margin-bottom: 0;
}

.modal_container .modal_content div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.modal_container .modal_content div > *:not(:last-child) {
  margin-right: 5px;
}

.modal_container .modal_content div a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.modal_container .modal_content div a:hover {
  color: #a41726;
}

.modal_container .modal_content img {
  width: 24px;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

.modal_container .modal_content img:hover {
  -webkit-transform: rotate(-360deg);
  transform: rotate(-360deg);
}

.product-product #enquiry_modal {
  padding: 20px;
}

#enquiry_modal .mfp-close {
  color: #000 !important;
}

#loading_wrapper {
  overflow: hidden;
  height: 100vh;
  visibility: visible;
  opacity: 1;
}

.side_nav {
  position: fixed;
  right: 5px;
  top: 30%;
  z-index: 5;
}

.side_nav .side_nav_content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.side_nav .side_nav_content > *:first-child {
  margin-bottom: 10px;
}

#about_us .content p {
  margin-bottom: 20px;
}

#services #sec_1 .r1 .content p {
  margin-bottom: 20px;
}

#services #sec_2 {
  background-color: #f5f5f5;
}

#services #sec_2 .r2 > *.content {
  padding: 20px;
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
}

#services #sec_2 .r2 > *.img {
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
}

.information-contact .google_map > * {
  width: 100% !important;
}

.information-contact .contact_us_container > * {
  margin-bottom: 40px;
}

.information-contact .contact_us_container > *.contact_info > *:not(.get_direction) a {
  color: #000;
}

.information-contact .contact_us_container > *.contact_info > *:not(.get_direction) a:hover {
  color: #bf2031;
}

.information-contact .contact_us_container .get_direction {
  margin-top: 30px;
}

.information-contact .contact_us_container .get_direction h4 {
  text-transform: capitalize;
  margin-bottom: 0;
}

#home_page #sec_1 {
  padding-bottom: 0;
}

#home_page #sec_1 .img_video_container {
  z-index: 1;
}

#home_page #sec_1 .img_video_container p {
  margin-bottom: 0 !important;
}

#home_page #sec_1 .content {
  z-index: 0;
  padding: 20px;
  position: relative;
}

#home_page #sec_1 .content::before {
  z-index: -1;
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 70px;
  background-color: #ebebeb;
}

#home_page #sec_2 {
  padding-top: 0 !important;
}

#home_page #sec_2 .img {
  -ms-flex-item-align: start;
  align-self: flex-start;
}

#home_page #sec_2 .car_types {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

#home_page #sec_2 .car_types .item {
  width: 100%;
  padding: 30px 20px;
  -webkit-box-flex: 0;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
  margin: 10px;
  text-align: center;
  -webkit-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.1) !important;
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.1) !important;
}

#home_page #sec_2 .car_types .title {
  margin-top: 10px;
  font-size: 18px;
  font-weight: 600 !important;
  text-transform: uppercase;
  margin-bottom: 0;
}

#home_page #sec_2 .car_types .title a {
  color: #000;
}

#home_page #sec_2 .car_types .title a:hover {
  color: #bf2031;
}

#home_page #sec_3 {
  padding-top: 0;
  background: -webkit-gradient(linear, left bottom, left top, from(#f5f5f5), color-stop(50%, #f5f5f5), color-stop(50%, #fff), to(#fff));
  background: linear-gradient(0deg, #f5f5f5 0%, #f5f5f5 50%, #fff 50%, #fff 100%);
}

#home_page #sec_3 .ls_periods {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

#home_page #sec_3 .ls_periods .item {
  background-color: #fff;
  width: 100%;
  padding: 30px 20px;
  -webkit-box-flex: 0;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
  margin: 10px;
  text-align: center;
  -webkit-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.1) !important;
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.1) !important;
}

#home_page #sec_3 .ls_periods .title {
  margin-top: 10px;
  font-size: 18px;
  font-weight: 600 !important;
  text-transform: uppercase;
  margin-bottom: 0;
}

#home_page #sec_3 .ls_periods .title a {
  color: #000;
}

#home_page #sec_3 .ls_periods .title a:hover {
  color: #bf2031;
}

.common-home .featured-module {
  padding-top: 0;
  background-color: #f5f5f5;
}

.common-home .featured-module > .featured {
  padding: 0;
}

.common-home .featured-module > .featured > *:first-child {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.common-home .featured-module > .featured > *:first-child .slick-list {
  width: 100%;
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
  margin-bottom: 50px;
}

.common-home .featured-module > .featured > *:first-child .slick-nav {
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
  left: auto;
  right: auto;
  width: auto;
}

.common-home .featured-module > .featured > *:first-child .slick-nav.prev {
  margin-right: 5%;
}

.common-home .featured-module > .featured > *:first-child .slick-nav.next {
  margin-left: 5%;
}

.common-home .featured-module > .featured > *:first-child .icon_con {
  color: #fff;
  background-color: #a9a9a9;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 10px 20px;
}

.common-home .featured-module > .featured > *:first-child .icon_con i {
  font-size: 18px;
}

.common-home .featured-module .btn_con {
  text-align: center;
  margin-top: 20px;
}

.common-home .featured-module .product-block {
  background-color: #f5f5f5;
  padding-bottom: 0;
}

.common-home .featured-module .product-block .product-details {
  display: none;
}

@media (min-width: 577px) {
  .rotate {
    position: absolute;
  }

  .rotate > * {
    white-space: nowrap;
  }

  .rotate.rl {
    top: 0;
    right: calc(100% + 30px);
    -webkit-transform: rotate(270deg);
    transform: rotate(270deg);
    -webkit-transform-origin: right top;
    transform-origin: right top;
  }

  .rotate.rr {
    top: 0;
    left: calc(100% + 30px);
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    -webkit-transform-origin: left top;
    transform-origin: left top;
  }

  .fixed-header {
    background: linear-gradient(246deg, #bf2031 0%, #bf2031 60%, white 60%, white 100%);
  }

  #footer-area .footer-upper-contet > * {
    width: calc((100% / 3) - 20px);
  }

  .slider-dots .owl-dot {
    width: 60px !important;
  }

  .product-view .product-block {
    width: calc((99% / 2) - 20px);
  }

  .side_nav {
    top: 20%;
  }

  #home_page #sec_2 .car_types .item {
    width: calc(50% - 20px);
  }

  #home_page #sec_3 .ls_periods .item {
    width: calc(50% - 20px);
  }

  .common-home .featured-module > .featured > *:first-child .slick-nav.prev {
    margin-right: 25%;
  }

  .common-home .featured-module > .featured > *:first-child .slick-nav.next {
    margin-left: 25%;
  }

  .common-home .featured-module .btn_con {
    margin-top: -42px;
  }
}

@media (min-width: 769px) {
  .sec_title > * {
    font-size: 30px;
  }

  #google_recaptcha {
    margin-bottom: 0 !important;
  }

  .form-item.items:not(.form-footer) {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }

  .form-item.items:not(.form-footer) > .item {
    -webkit-box-flex: 0;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto;
    width: calc(50% - 10px);
  }

  .product-product #product-tabs li a {
    text-align: center;
  }

  .quickcheckout-checkout .terms {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }

  .quickcheckout-checkout .terms .checkbox {
    margin-right: 20px !important;
  }

  .page-banner .page-banner-title {
    font-size: 30px;
  }
}

@media (min-width: 992px) {
  .sec {
    padding: 100px 0;
  }

  .sectop {
    padding: 40px 0 100px;
  }

  .pt10 {
    padding-top: 100px !important;
  }

  .fixed-header {
    background: linear-gradient(246deg, #bf2031 0%, #bf2031 71%, white 71%, white 100%);
  }

  .breadcrumb {
    margin: 70px 0 0;
  }

  .product-view .product-block {
    width: calc((99% / 3) - 20px);
  }

  .information-contact .contact_us_container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }

  .information-contact .contact_us_container > * {
    -webkit-box-flex: 0;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto;
  }

  .information-contact .contact_us_container > *.contact_info_map {
    width: 50%;
  }

  .information-contact .contact_us_container > *.contact_info {
    width: 50%;
    padding-left: 40px;
  }

  .information-contact .contact_us_container > *.contact_form {
    width: 100%;
  }
}

@media (min-width: 1025px) {
  .fxl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }

  .fxi {
    -webkit-box-flex: 0;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto;
  }

  .aic {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }

  .fixed-header .header-menu {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
  }

  .slider-slideshow-description-texts > [class^=slideshow-text-] {
    font-size: 34px !important;
  }

  #filter-groups #side-manufacturer .item-header,
  #filter-groups #side_filter .item-header {
    font-size: 18px !important;
  }

  #filter-groups #side-categories .side-categories-level-1 > .group > .level-2 > .group > .level-2 > a {
    font-size: 18px !important;
  }

  .page-banner .page-banner-title {
    font-size: 36px;
  }

  #about_us .img {
    width: 55%;
  }

  #about_us .content {
    width: 45%;
    padding-left: 40px;
  }

  #services #sec_1 .r1 .img {
    width: 50%;
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
  }

  #services #sec_1 .r1 .content {
    width: 50%;
    padding-right: 40px;
  }

  #services #sec_2 .r1 .img {
    width: 50%;
  }

  #services #sec_2 .r1 .content {
    z-index: 2;
    margin-left: -20%;
    width: 70%;
    padding: 20px;
    background-color: #fff;
  }

  #services #sec_2 .r2 > * {
    width: calc(100% / 3);
  }

  #services #sec_2 .rptr .img {
    width: 50%;
  }

  #services #sec_2 .rptr .content {
    z-index: 2;
    margin-left: -20%;
    width: 70%;
    padding: 20px;
    background-color: #fff;
  }

  #home_page #sec_1 .img_video_container {
    width: 50%;
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
  }

  #home_page #sec_1 .content {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
    width: 50%;
    padding: 20px 50px;
  }

  #home_page #sec_1 .content > p {
    margin-top: -45px;
    padding-left: 88px;
  }

  #home_page #sec_2 .img {
    width: 55%;
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
  }

  #home_page #sec_2 .content {
    width: 45%;
    padding-top: 100px;
    padding-right: 40px;
  }

  #home_page #sec_3 .img {
    width: 45%;
  }

  #home_page #sec_3 .content {
    width: 55%;
    padding-left: 40px;
  }
}

@media (min-width: 1281px) {
  #home_page #sec_1 .content .sec_title {
    width: 80%;
  }

  #home_page #sec_1 .content > p {
    width: 80%;
  }

  #home_page #sec_2 .car_types .item {
    width: calc((100% / 3) - 20px);
  }
}

@media (min-width: 1441px) {
  #filter-groups #side-manufacturer .item-header,
  #filter-groups #side_filter .item-header {
    font-size: 24px !important;
  }

  #filter-groups #side-categories .side-categories-level-1 > .group > .level-2 > .group > .level-2 > a {
    font-size: 24px !important;
  }

  #home_page #sec_1 .content .sec_title {
    width: 60%;
  }

  #home_page #sec_3 .ls_periods {
    width: 80%;
  }
}

@media (max-width: 1280px) {
  .fixed-header .header-menu #main-menu > li > a {
    font-size: 11px;
    padding-left: 5px !important;
    padding-right: 5px !important;
  }

  #filter-groups #side-price .price-container input {
    width: 80%;
  }
}

@media (max-width: 1024px) {
  .container {
    width: 90%;
    min-width: auto;
  }

  .img {
    margin-bottom: 20px;
    text-align: center;
  }

  .owl-nav {
    display: none;
  }

  #filter-groups #side-price .price-container input {
    width: 100%;
  }

  .product-product #product .separator_to {
    width: 80%;
    margin-left: 0;
    margin-right: 0;
  }

  .product-product #product {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }

  .product-product #product > .form-group {
    width: 80%;
  }
}

@media (max-width: 992px) {
  .product-product #waiting_list .flex-group {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }

  .product-product #waiting_list .flex-group > *:first-child {
    margin-bottom: 10px;
    margin-right: 0;
  }

  .product-product #waiting_list .flex-group > *:last-child {
    -ms-flex-item-align: end;
    align-self: flex-end;
  }

  .modal_container .modal_content div {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }

  .modal_container .modal_content div > *:not(:last-child) {
    margin-right: 0;
  }
}

@media (max-width: 768px) {
  .g-recaptcha {
    -webkit-transform-origin: center;
    transform-origin: center;
  }

  .form-item.form-footer {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }

  .quickcheckout-checkout .terms .checkbox {
    margin-bottom: 10px !important;
  }
}

@media (max-width: 576px) {
  .container {
    width: 100%;
  }

  .rotate > * {
    text-align: left;
    margin-bottom: 10px;
  }

  #footer-area .footer-upper-contet {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }

  #footer-area .footer-upper-contet > *:not(:last-child) {
    margin-bottom: 20px;
  }

  #footer-area .footer-upper-contet .footer-contact-links {
    display: none;
  }

  #footer-area .footer-upper-contet .footer-social-info .copyright {
    margin-top: 50px;
  }

  span.label.out-of-stock {
    min-width: 100%;
  }

  .sort_container .col-xs-6 {
    width: 100% !important;
  }

  .product-product .featured-module .fa::before {
    font-size: 16px;
    padding: 5px 10px;
  }

  .quickcheckout-checkout .terms .checkbox label {
    -webkit-box-align: start !important;
    -ms-flex-align: start !important;
    align-items: flex-start !important;
  }

  .quickcheckout-checkout .terms .checkbox .checkmark {
    margin-top: 3px;
  }

  .side_nav .side_nav_content > * img {
    width: 50px;
  }
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsIm1haW4uY3NzIiwiMS1oZWxwZXJzL19mb250cy5zY3NzIiwiMS1oZWxwZXJzL19hbmltYXRpb25zLnNjc3MiLCIyLWJhc2UvX2dsb2JhbC5zY3NzIiwiMS1oZWxwZXJzL192YXJpYWJsZXMuc2NzcyIsIjEtaGVscGVycy9fbWl4aW5zLnNjc3MiLCIyLWJhc2UvX2ZsZXguc2NzcyIsIjMtbGF5b3V0cy9faGVhZGVyLnNjc3MiLCIzLWxheW91dHMvX2Zvb3Rlci5zY3NzIiwiNC1tb2R1bGVzL19icmVhZGNydW1icy5zY3NzIiwiNC1tb2R1bGVzL19iYW5uZXIuc2NzcyIsIjQtbW9kdWxlcy9fYnV0dG9uLnNjc3MiLCI0LW1vZHVsZXMvX2Zvcm0uc2NzcyIsIjQtbW9kdWxlcy9faHIuc2NzcyIsIjQtbW9kdWxlcy9fdGl0bGUuc2NzcyIsIjQtbW9kdWxlcy9fcGFnaW5hdGlvbi5zY3NzIiwiNC1tb2R1bGVzL3Byb2R1Y3QvX2ZpbHRlci1ncm91cHMuc2NzcyIsIjQtbW9kdWxlcy9wcm9kdWN0L19wcm9kdWN0LXZpZXcuc2NzcyIsIjQtbW9kdWxlcy9wcm9kdWN0L19zaW5nbGUtcHJvZHVjdC5zY3NzIiwiNC1tb2R1bGVzL2Zvcm0vX2NoZWNrYm94LnNjc3MiLCI0LW1vZHVsZXMvZm9ybS9fcmFkaW8uc2NzcyIsIjQtbW9kdWxlcy9jaGVja291dC9fY2hlY2tvdXQuc2NzcyIsIjQtbW9kdWxlcy9fcGFnZS1iYW5uZXIuc2NzcyIsIjQtbW9kdWxlcy9fbW9kYWwuc2NzcyIsIjQtbW9kdWxlcy9fbG9hZGVyLnNjc3MiLCI0LW1vZHVsZXMvX3NpZGVuYXYuc2NzcyIsIjUtcGFnZXMvX2Fib3V0LnNjc3MiLCI1LXBhZ2VzL19zZXJ2aWNlcy5zY3NzIiwiNS1wYWdlcy9fY29udGFjdC5zY3NzIiwiNS1wYWdlcy9faG9tZS5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Q0NHQztBQ0hELHdGQUFZO0FDQVo7RUFDRTtJQUNFLCtC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b0JBQWE7TUFBYixvQkFBYTtNQUFiLGFBQWE7TUFDYixtQkFBZTtVQUFmLGVBQWU7TUFDZix5QkFBbUI7VUFBbkIsc0JBQW1CO2NBQW5CLG1CQUFtQjtNQUNuQix3QkFBdUI7VUFBdkIscUJBQXVCO2NBQXZCLHVCQUF1QixFQUFBO01BYmpDO1FBZ0JZLFdBQVc7UUFDWCw0QkFBUTtZQUFSLGlCQUFRO2dCQUFSLFFBQVE7UUFDUixtQkFBbUIsRUFBQTtNQWxCL0I7UUFzQlksNEJBQVE7WUFBUixpQkFBUTtnQkFBUixRQUFRO1FBQ1IsVUFBVTtRQUNWLFdBQVc7UUFDWCxXQUFXLEVBQUE7UUF6QnZCO1VBNEJjLGdCQUFnQixFQUFBO1V4QnJIMUI7WXdCeUZKO2NBK0JnQixpQkFBaUIsRUFBQSxFQUVwQjtRQWpDYjtVQW9DYyxlQUFlLEVBQUE7VXhCN0h6QjtZd0J5Rko7Y0F1Q2dCLGdCQUFnQixFQUFBLEVBRW5CO01BekNiO1FBNkNZLFd6Qm5PSjtReUJvT0kseUJBQXlCO1FBQ3pCLG9CQUFhO1FBQWIsb0JBQWE7UUFBYixhQUFhO1FBQ2IseUJBQW1CO1lBQW5CLHNCQUFtQjtnQkFBbkIsbUJBQW1CO1FBQ25CLHdCQUF1QjtZQUF2QixxQkFBdUI7Z0JBQXZCLHVCQUF1QjtRQUN2QixrQkFBa0IsRUFBQTtRQWxEOUI7VUFxRGMsZUFBZSxFQUFBO0VBckQ3QjtJQTZETSxrQkFBa0I7SUFDbEIsZ0JBQWdCLEVBQUE7SXhCdkpsQjtNd0J5Rko7UUFpRVEsaUJBQWlCLEVBQUEsRUFFcEI7RUFuRUw7SUFzRU0seUJBQXlCO0lBQ3pCLGlCQUFpQixFQUFBO0lBdkV2QjtNQTBFUSxhQUFhLEVBQUEiLCJmaWxlIjoic3R5bGUuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyohXHJcbiBBdXRob3I6ICAgICAgICAgQmFua2FpXHJcbiBUZW1wbGF0ZTogICAgICAgT3BlbmNhcnRcclxuKi9cclxuXHJcbkBpbXBvcnQgXCIxLWhlbHBlcnMvMC1pbXBvcnRcIjtcclxuQGltcG9ydCBcIjItYmFzZS8wLWltcG9ydFwiO1xyXG5AaW1wb3J0IFwiMy1sYXlvdXRzLzAtaW1wb3J0XCI7XHJcbkBpbXBvcnQgXCI0LW1vZHVsZXMvMC1pbXBvcnRcIjtcclxuQGltcG9ydCBcIjUtcGFnZXMvMC1pbXBvcnRcIjsiLCIvKiFcclxuIEF1dGhvcjogICAgICAgICBCYW5rYWlcclxuIFRlbXBsYXRlOiAgICAgICBPcGVuY2FydFxyXG4qL1xuQGltcG9ydCB1cmwoXCJodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2Nzcz9mYW1pbHk9TXVsaTo0MDAsNjAwLDcwMCw4MDAmZGlzcGxheT1zd2FwXCIpO1xuQGtleWZyYW1lcyBzcGluIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0gfVxuXG5Aa2V5ZnJhbWVzIGZsb2F0aW5nIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMHB4KTsgfVxuICA2NSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDE1cHgpOyB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwcHgpOyB9IH1cblxuYm9keSB7XG4gIGNvbG9yOiAjMDAwO1xuICBsaW5lLWhlaWdodDogMmVtO1xuICBmb250LWZhbWlseTogJ011bGknLCBzYW5zLXNlcmlmICFpbXBvcnRhbnQ7XG4gIGZvbnQtd2VpZ2h0OiA0MDAgIWltcG9ydGFudDtcbiAgb3ZlcmZsb3cteDogaGlkZGVuICFpbXBvcnRhbnQ7IH1cbiAgYm9keS5pbmZvcm1hdGlvbi1pbmZvcm1hdGlvbjpub3QoLmlpZC02KTpub3QoLmlpZC0zKTpub3QoLmlpZC01KSA+IC5jb250YWluZXIgPiAucm93IHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIGJvZHkuaW5mb3JtYXRpb24taW5mb3JtYXRpb246bm90KC5paWQtNik6bm90KC5paWQtMyk6bm90KC5paWQtNSkgPiAjZm9vdGVyLWFyZWEge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgYm9keTpub3QoLmNvbW1vbi1ob21lKTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDNweDtcbiAgICBoZWlnaHQ6IDQwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogY2FsYyg1MCUgLSAxNSUpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNiZjIwMzE7IH1cblxuYiB7XG4gIG1hcmdpbi1sZWZ0OiA1cHggIWltcG9ydGFudDsgfVxuXG4uY29udGFpbmVyIHtcbiAgd2lkdGg6IDgwJTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgLmNvbnRhaW5lciB7XG4gICAgICB3aWR0aDogOTAlO1xuICAgICAgbWluLXdpZHRoOiBhdXRvOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XG4gICAgLmNvbnRhaW5lciB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG5cbjo6c2VsZWN0aW9uIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhNDE3MjY7IH1cblxuYSB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0OyB9XG5cbmltZyB7XG4gIHVzZXItc2VsZWN0OiBub25lOyB9XG5cbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNiB7XG4gIGNvbG9yOiAjMDAwO1xuICBmb250LXdlaWdodDogNzAwICFpbXBvcnRhbnQ7IH1cblxuLnNlYyB7XG4gIHBhZGRpbmc6IDcwcHggMDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAuc2VjIHtcbiAgICAgIHBhZGRpbmc6IDEwMHB4IDA7IH0gfVxuICAuc2VjdG9wIHtcbiAgICBwYWRkaW5nOiAyMHB4IDAgNzBweDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgLnNlY3RvcCB7XG4gICAgICAgIHBhZGRpbmc6IDQwcHggMCAxMDBweDsgfSB9XG4gIC5zZWNfdGl0bGUgPiAqIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweCAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogMjRweDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjlweCkge1xuICAgICAgLnNlY190aXRsZSA+ICoge1xuICAgICAgICBmb250LXNpemU6IDMwcHg7IH0gfVxuICAgIC5zZWNfdGl0bGUgPiAqOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMDA1NGE2ICFpbXBvcnRhbnQ7XG4gICAgICBoZWlnaHQ6IDNweCAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiAyMHB4IDAgMCAhaW1wb3J0YW50OyB9XG4gIC5zZWNfdGl0bGUuY2VudGVyX3RpdGxlID4gKiB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuc2VjX3RpdGxlLmNlbnRlcl90aXRsZSA+ICo6OmFmdGVyIHtcbiAgICAgIG1hcmdpbjogMjBweCBhdXRvIDAgYXV0byAhaW1wb3J0YW50OyB9XG5cbmgyOjphZnRlciB7XG4gIGJhY2tncm91bmQ6ICMwMDU0YTYgIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAzcHggIWltcG9ydGFudDsgfVxuXG4ucHQxIHtcbiAgcGFkZGluZy10b3A6IDEwcHggIWltcG9ydGFudDsgfVxuXG4ucHQyIHtcbiAgcGFkZGluZy10b3A6IDIwcHggIWltcG9ydGFudDsgfVxuXG4ucHQzIHtcbiAgcGFkZGluZy10b3A6IDMwcHggIWltcG9ydGFudDsgfVxuXG4ucHQ0IHtcbiAgcGFkZGluZy10b3A6IDQwcHggIWltcG9ydGFudDsgfVxuXG4ucHQ1IHtcbiAgcGFkZGluZy10b3A6IDUwcHggIWltcG9ydGFudDsgfVxuXG4ucHQ2IHtcbiAgcGFkZGluZy10b3A6IDYwcHggIWltcG9ydGFudDsgfVxuXG4ucHQ3IHtcbiAgcGFkZGluZy10b3A6IDcwcHggIWltcG9ydGFudDsgfVxuXG4ucHQ4IHtcbiAgcGFkZGluZy10b3A6IDgwcHggIWltcG9ydGFudDsgfVxuXG4ucHQ5IHtcbiAgcGFkZGluZy10b3A6IDkwcHggIWltcG9ydGFudDsgfVxuXG4ucHQxMCB7XG4gIHBhZGRpbmctdG9wOiA3MHB4ICFpbXBvcnRhbnQ7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgLnB0MTAge1xuICAgICAgcGFkZGluZy10b3A6IDEwMHB4ICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTc3cHgpIHtcbiAgLnJvdGF0ZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlOyB9IH1cblxuLnJvdGF0ZSA+ICoge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogNXB4O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDU3N3B4KSB7XG4gICAgLnJvdGF0ZSA+ICoge1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xuICAgIC5yb3RhdGUgPiAqIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDU3N3B4KSB7XG4gIC5yb3RhdGUucmwge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogY2FsYygxMDAlICsgMzBweCk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCB0b3A7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTc3cHgpIHtcbiAgLnJvdGF0ZS5yciB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IGNhbGMoMTAwJSArIDMwcHgpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcDsgfSB9XG5cbi5pbWcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7IH1cbiAgLmltZyBpbWcge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuaW1nIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gIC5meGwge1xuICAgIGRpc3BsYXk6IGZsZXg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gIC5meGkge1xuICAgIGZsZXg6IDAgMSBhdXRvOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAuYWljIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9IH1cblxuLmZpeGVkLWhlYWRlciB7XG4gIGxlZnQ6IDAgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDI0NmRlZywgI2JmMjAzMSAwJSwgI2JmMjAzMSAzOCUsIHdoaXRlIDM4JSwgd2hpdGUgMTAwJSk7XG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNTc3cHgpIHtcbiAgICAuZml4ZWQtaGVhZGVyIHtcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgyNDZkZWcsICNiZjIwMzEgMCUsICNiZjIwMzEgNjAlLCB3aGl0ZSA2MCUsIHdoaXRlIDEwMCUpOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgLmZpeGVkLWhlYWRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMjQ2ZGVnLCAjYmYyMDMxIDAlLCAjYmYyMDMxIDcxJSwgd2hpdGUgNzElLCB3aGl0ZSAxMDAlKTsgfSB9XG4gIC5maXhlZC1oZWFkZXIgPiAuY29udGFpbmVyIHtcbiAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgd2lkdGg6IDkwJTsgfVxuICAuZml4ZWQtaGVhZGVyIC5oZWFkZXItY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgIC5maXhlZC1oZWFkZXIgLmhlYWRlci1jb250YWluZXIgPiAqIHtcbiAgICAgIGZsZXg6IDAgMSBhdXRvOyB9XG4gIC5maXhlZC1oZWFkZXIgLmhlYWRlci10b3Age1xuICAgIG9yZGVyOiAzOyB9XG4gICAgLmZpeGVkLWhlYWRlciAuaGVhZGVyLXRvcCAuZmEge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDsgfVxuICAgICAgLmZpeGVkLWhlYWRlciAuaGVhZGVyLXRvcCAuZmE6aG92ZXIge1xuICAgICAgICBvcGFjaXR5OiAuNTsgfVxuICAgIC5maXhlZC1oZWFkZXIgLmhlYWRlci10b3AgLmRyb3Bkb3duLW1lbnUgYSB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gICAgICAuZml4ZWQtaGVhZGVyIC5oZWFkZXItdG9wIC5kcm9wZG93bi1tZW51IGE6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY29sb3I6ICMwMDU0YTY7IH1cbiAgICAuZml4ZWQtaGVhZGVyIC5oZWFkZXItdG9wIC5iYWRnZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTQxNzI2ICFpbXBvcnRhbnQ7IH1cbiAgLmZpeGVkLWhlYWRlciAuaGVhZGVyLWxvZ28ge1xuICAgIG9yZGVyOiAxO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAuZml4ZWQtaGVhZGVyIC5oZWFkZXItbW9iaWxlLWxpbmtzIHtcbiAgICBvcmRlcjogMjsgfVxuICAuZml4ZWQtaGVhZGVyIC5oZWFkZXItbWVudSB7XG4gICAgb3JkZXI6IDI7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgICAuZml4ZWQtaGVhZGVyIC5oZWFkZXItbWVudSB7XG4gICAgICAgIGZsZXg6IDE7IH0gfVxuICAgIC5maXhlZC1oZWFkZXIgLmhlYWRlci1tZW51ICNtYWluLW1lbnUgLnN1Yi1hcnJvdyB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLmZpeGVkLWhlYWRlciAuaGVhZGVyLW1lbnUgI21haW4tbWVudSA+IGxpIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICAgIC5maXhlZC1oZWFkZXIgLmhlYWRlci1tZW51ICNtYWluLW1lbnUgPiBsaSA+IHVsIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gICAgICAuZml4ZWQtaGVhZGVyIC5oZWFkZXItbWVudSAjbWFpbi1tZW51ID4gbGkgPiBhIHtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIHBhZGRpbmc6IDUwcHggMTBweCAhaW1wb3J0YW50OyB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMjgwcHgpIHtcbiAgICAgICAgICAuZml4ZWQtaGVhZGVyIC5oZWFkZXItbWVudSAjbWFpbi1tZW51ID4gbGkgPiBhIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1cHggIWltcG9ydGFudDsgfSB9XG4gICAgICAuZml4ZWQtaGVhZGVyIC5oZWFkZXItbWVudSAjbWFpbi1tZW51ID4gbGk6OmJlZm9yZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0OyB9XG4gICAgICAuZml4ZWQtaGVhZGVyIC5oZWFkZXItbWVudSAjbWFpbi1tZW51ID4gbGk6aG92ZXI6OmJlZm9yZSB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNTRhNjsgfVxuICAgICAgLmZpeGVkLWhlYWRlciAuaGVhZGVyLW1lbnUgI21haW4tbWVudSA+IGxpLmFjdGl2ZTo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNTRhNjtcbiAgICAgICAgaGVpZ2h0OiAxMDAlOyB9XG4gICAgICAuZml4ZWQtaGVhZGVyIC5oZWFkZXItbWVudSAjbWFpbi1tZW51ID4gbGkuYWN0aXZlIGEge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4jbW9iaWxlTmF2IHtcbiAgY29sb3I6ICNmZmY7IH1cblxuI3NpZHIge1xuICBiYWNrZ3JvdW5kOiAjYmYyMDMxOyB9XG4gICNzaWRyIC5oZWFkZXItbW9iaWxlIC5tb2JpbGUtYWNjb3VudCB7XG4gICAgYm9yZGVyLWNvbG9yOiAjYTQxNzI2OyB9XG4gICNzaWRyIC5oZWFkZXItbW9iaWxlIGEge1xuICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJvcmRlci1jb2xvcjogI2E0MTcyNjsgfVxuICAgICNzaWRyIC5oZWFkZXItbW9iaWxlIGEgaSB7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICAjc2lkciAubW9iaWxlLXNlYXJjaCAuc2VhcmNoLWN1c3RvbSB7XG4gICAgcGFkZGluZzogMDsgfVxuICAjc2lkciAubW9iaWxlLXNlYXJjaCAuc2VhcmNoLWJveCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2E0MTcyNjtcbiAgICBib3JkZXItY29sb3I6ICNhNDE3MjY7IH1cbiAgICAjc2lkciAubW9iaWxlLXNlYXJjaCAuc2VhcmNoLWJveCBpbnB1dCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTQxNzI2O1xuICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTsgfVxuICAgICAgI3NpZHIgLm1vYmlsZS1zZWFyY2ggLnNlYXJjaC1ib3ggaW5wdXQ6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTsgfVxuICAgICNzaWRyIC5tb2JpbGUtc2VhcmNoIC5zZWFyY2gtYm94IC5zZWFyY2gtYnRuIHtcbiAgICAgIHBhZGRpbmc6IDA7IH1cbiAgICAjc2lkciAubW9iaWxlLXNlYXJjaCAuc2VhcmNoLWJveCAuZmEtc2VhcmNoIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0OyB9XG4gICAgICAjc2lkciAubW9iaWxlLXNlYXJjaCAuc2VhcmNoLWJveCAuZmEtc2VhcmNoOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICNkN2Q3ZDc7IH1cbiAgI3NpZHIgLmNkLWFjY29yZGlvbi1tZW51IGxpIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2E0MTcyNjsgfVxuICAgICNzaWRyIC5jZC1hY2NvcmRpb24tbWVudSBsaTpsYXN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYTQxNzI2OyB9XG4gICAgI3NpZHIgLmNkLWFjY29yZGlvbi1tZW51IGxpLmhhcy1jaGlsZHJlbiBsYWJlbCB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgI3NpZHIgLmNkLWFjY29yZGlvbi1tZW51IGxpLmhhcy1jaGlsZHJlbiB1bCB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgICAjc2lkciAuY2QtYWNjb3JkaW9uLW1lbnUgbGkgYSB7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBiYWNrZ3JvdW5kOiAjYmYyMDMxOyB9XG4gICAgI3NpZHIgLmNkLWFjY29yZGlvbi1tZW51IGxpLmFjdGl2ZSA+IGEge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNTRhNjsgfVxuICAgICNzaWRyIC5jZC1hY2NvcmRpb24tbWVudSBsaS5oYXMtY2hpbGRyZW4gbGFiZWwge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgIGNvbG9yOiAjMDAwOyB9XG4gICAgI3NpZHIgLmNkLWFjY29yZGlvbi1tZW51IGxpLmhhcy1jaGlsZHJlbiA+IHVsIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuI1RvVG9wIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbiNmb290ZXItYXJlYSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhNDE3MjY7IH1cbiAgI2Zvb3Rlci1hcmVhIGZvb3RlciB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBwYWRkaW5nOiA1MHB4IDA7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDI0NmRlZywgI2E0MTcyNiAwJSwgI2E0MTcyNiA2NSUsICNiZjIwMzEgNjUlLCAjYmYyMDMxIDEwMCUpOyB9XG4gICNmb290ZXItYXJlYSBhIHtcbiAgICBjb2xvcjogI2ZmZjsgfVxuICAgICNmb290ZXItYXJlYSBhOmhvdmVyIHtcbiAgICAgIG9wYWNpdHk6IC41OyB9XG4gICNmb290ZXItYXJlYSAuZm9vdGVyLXVwcGVyLWNvbnRldCB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xuICAgICAgI2Zvb3Rlci1hcmVhIC5mb290ZXItdXBwZXItY29udGV0IHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfSB9XG4gICAgI2Zvb3Rlci1hcmVhIC5mb290ZXItdXBwZXItY29udGV0ID4gKiB7XG4gICAgICBmbGV4OiAwIDEgYXV0bzsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDU3N3B4KSB7XG4gICAgICAgICNmb290ZXItYXJlYSAuZm9vdGVyLXVwcGVyLWNvbnRldCA+ICoge1xuICAgICAgICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMykgLSAyMHB4KTsgfSB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcbiAgICAgICAgI2Zvb3Rlci1hcmVhIC5mb290ZXItdXBwZXItY29udGV0ID4gKjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9IH1cbiAgICAjZm9vdGVyLWFyZWEgLmZvb3Rlci11cHBlci1jb250ZXQgLmZvb3Rlci1jb250YWN0LWluZm8ge1xuICAgICAgb3JkZXI6IDI7IH1cbiAgICAjZm9vdGVyLWFyZWEgLmZvb3Rlci11cHBlci1jb250ZXQgLmZvb3Rlci1jb250YWN0LWxpbmtzIHtcbiAgICAgIG9yZGVyOiAxOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcbiAgICAgICAgI2Zvb3Rlci1hcmVhIC5mb290ZXItdXBwZXItY29udGV0IC5mb290ZXItY29udGFjdC1saW5rcyB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gICAgICAjZm9vdGVyLWFyZWEgLmZvb3Rlci11cHBlci1jb250ZXQgLmZvb3Rlci1jb250YWN0LWxpbmtzIHVsIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICNmb290ZXItYXJlYSAuZm9vdGVyLXVwcGVyLWNvbnRldCAuZm9vdGVyLXNvY2lhbC1pbmZvIHtcbiAgICAgIG9yZGVyOiAzO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgICAgICNmb290ZXItYXJlYSAuZm9vdGVyLXVwcGVyLWNvbnRldCAuZm9vdGVyLXNvY2lhbC1pbmZvIC5mb290ZXItc29jaWFsLWljb25zIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7IH1cbiAgICAgICNmb290ZXItYXJlYSAuZm9vdGVyLXVwcGVyLWNvbnRldCAuZm9vdGVyLXNvY2lhbC1pbmZvIC5jb3B5cmlnaHQge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogYXV0bztcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IGluaXRpYWw7IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XG4gICAgICAgICAgI2Zvb3Rlci1hcmVhIC5mb290ZXItdXBwZXItY29udGV0IC5mb290ZXItc29jaWFsLWluZm8gLmNvcHlyaWdodCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA1MHB4OyB9IH1cbiAgICAgICAgI2Zvb3Rlci1hcmVhIC5mb290ZXItdXBwZXItY29udGV0IC5mb290ZXItc29jaWFsLWluZm8gLmNvcHlyaWdodCBwIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICAgICNmb290ZXItYXJlYSAuZm9vdGVyLXVwcGVyLWNvbnRldCAuZm9vdGVyLXNvY2lhbC1pbmZvIC5jb3B5cmlnaHQgYSB7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5icmVhZGNydW1iIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiA3MHB4IDAgMjBweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAuYnJlYWRjcnVtYiB7XG4gICAgICBtYXJnaW46IDcwcHggMCAwOyB9IH1cbiAgLmJyZWFkY3J1bWIgbGk6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnLyc7XG4gICAgY29sb3I6ICMwMDA7IH1cbiAgLmJyZWFkY3J1bWIgbGk6Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAuYnJlYWRjcnVtYiBsaSBhIHtcbiAgICBjb2xvcjogIzAwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogMTZweDsgfVxuICAgIC5icmVhZGNydW1iIGxpIGE6aG92ZXIge1xuICAgICAgY29sb3I6ICNiZjIwMzE7IH1cblxuLnByb2R1Y3QtY2F0ZWdvcnkgLmJyZWFkY3J1bWIge1xuICBtYXJnaW4tYm90dG9tOiA1MHB4OyB9XG4gIC5wcm9kdWN0LWNhdGVnb3J5IC5icmVhZGNydW1iID4gbGk6bnRoLWNoaWxkKDIpIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG5cbi5wcm9kdWN0LXByb2R1Y3QgLmJyZWFkY3J1bWIge1xuICBtYXJnaW4tYm90dG9tOiA1MHB4OyB9XG5cbi5pbmZvcm1hdGlvbi1jb250YWN0IC5icmVhZGNydW1iIHtcbiAgbWFyZ2luLWJvdHRvbTogNTBweDsgfVxuXG4uc2xpZGVyLXNsaWRlc2hvdy1kZXNjcmlwdGlvbi10ZXh0cyA+IFtjbGFzc149c2xpZGVzaG93LXRleHQtXSB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogMjBweCAhaW1wb3J0YW50O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LXNoYWRvdzogMHB4IDBweCAxMHB4ICMwMDA7XG4gIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLnNsaWRlci1zbGlkZXNob3ctZGVzY3JpcHRpb24tdGV4dHMgPiBbY2xhc3NePXNsaWRlc2hvdy10ZXh0LV0ge1xuICAgICAgZm9udC1zaXplOiAzNHB4ICFpbXBvcnRhbnQ7IH0gfVxuXG4uc2xpZGVyLXNsaWRlc2hvdy1kZXNjcmlwdGlvbi10ZXh0cyAuc2xpZGVyLXNsaWRlc2hvdy1kZXNjcmlwdGlvbi1saW5rIC5idG4ge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICBib3JkZXItY29sb3I6ICNmZmYgIWltcG9ydGFudDsgfVxuICAuc2xpZGVyLXNsaWRlc2hvdy1kZXNjcmlwdGlvbi10ZXh0cyAuc2xpZGVyLXNsaWRlc2hvdy1kZXNjcmlwdGlvbi1saW5rIC5idG46aG92ZXIge1xuICAgIGJvcmRlci1jb2xvcjogI2JmMjAzMSAhaW1wb3J0YW50OyB9XG5cbi5vd2wtbmF2IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDEwJTtcbiAgcmlnaHQ6IDEwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgei1pbmRleDogMjsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgLm93bC1uYXYge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC5vd2wtbmF2ID4gKiB7XG4gICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICBwb3NpdGlvbjogaW5pdGlhbDsgfVxuICAub3dsLW5hdiAuYXJyb3dzIHtcbiAgICB3aWR0aDogNTBweDtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gICAgbWFyZ2luOiAzcHg7IH1cbiAgICAub3dsLW5hdiAuYXJyb3dzIGkge1xuICAgICAgZm9udC1zaXplOiAyNHB4OyB9XG4gIC5vd2wtbmF2IC5vd2wtcHJldiB7XG4gICAgb3JkZXI6IDE7IH1cbiAgLm93bC1uYXYgLm93bC1uZXh0IHtcbiAgICBvcmRlcjogMjsgfVxuXG4uc2xpZGVyLWRvdHMge1xuICBwYWRkaW5nOiAwcHggNDdweDtcbiAgYm90dG9tOiAxMCU7XG4gIHJpZ2h0OiAwOyB9XG4gIC5zbGlkZXItZG90cyAub3dsLWRvdCB7XG4gICAgd2lkdGg6IDM1cHg7XG4gICAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogNXB4ICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0OyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDU3N3B4KSB7XG4gICAgICAuc2xpZGVyLWRvdHMgLm93bC1kb3Qge1xuICAgICAgICB3aWR0aDogNjBweCAhaW1wb3J0YW50OyB9IH1cbiAgICAuc2xpZGVyLWRvdHMgLm93bC1kb3QuYWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDU0YTYgIWltcG9ydGFudDsgfVxuXG5hIHtcbiAgY29sb3I6ICNiZjIwMzE7IH1cblxuYnV0dG9uIHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7IH1cblxuLmJ0biB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0OyB9XG4gIC5idG4uYnRuLXByaW1hcnksIC5idG4uYnRuLWRlZmF1bHQge1xuICAgIGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjMDAwICFpbXBvcnRhbnQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgei1pbmRleDogMTsgfVxuICAgIC5idG4uYnRuLXByaW1hcnk6OmJlZm9yZSwgLmJ0bi5idG4tZGVmYXVsdDo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgd2lkdGg6IDE1MCU7XG4gICAgICBiYWNrZ3JvdW5kOiAjYmYyMDMxICFpbXBvcnRhbnQ7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSg0NWRlZyk7XG4gICAgICB6LWluZGV4OiAtMTtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0OyB9XG4gICAgLmJ0bi5idG4tcHJpbWFyeTpob3ZlciwgLmJ0bi5idG4tZGVmYXVsdDpob3ZlciB7XG4gICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiAjYmYyMDMxICFpbXBvcnRhbnQ7IH1cbiAgICAgIC5idG4uYnRuLXByaW1hcnk6aG92ZXI6OmJlZm9yZSwgLmJ0bi5idG4tZGVmYXVsdDpob3Zlcjo6YmVmb3JlIHtcbiAgICAgICAgaGVpZ2h0OiA0NTAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjYmYyMDMxOyB9XG4gIC5idG46Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDsgfVxuICAuYnRuLmJ0bi1udW1iZXIge1xuICAgIGJvcmRlci13aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAxMnB4ICFpbXBvcnRhbnQ7IH1cblxuI2J1dHRvbi1sb2dpbiB7XG4gIGJvcmRlci13aWR0aDogMXB4ICFpbXBvcnRhbnQ7IH1cblxuI2J1dHRvbi1jb25maXJtOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2JmMjAzMSAhaW1wb3J0YW50OyB9XG5cbiNmaWx0ZXJfZ3JvdXBfdGlnZ2VyX29wZW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmYyMDMxICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogI2JmMjAzMSAhaW1wb3J0YW50OyB9XG5cbi5jYXJ0LWRvcnBkb3duLWZvb3RlciBhOmhvdmVyIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDsgfVxuXG4ubGFiZWwtcHJpbWFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiZjIwMzEgIWltcG9ydGFudDsgfVxuXG4uc3dhbDItY29uZmlybSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmYyMDMxICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogI2JmMjAzMSAhaW1wb3J0YW50OyB9XG5cbiNxdWlja2NoZWNrb3V0LWJhY2sge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA1NGE2O1xuICBib3JkZXItY29sb3I6ICMwMDU0YTY7IH1cbiAgI3F1aWNrY2hlY2tvdXQtYmFjazpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2JmMjAzMTtcbiAgICBib3JkZXItY29sb3I6ICNiZjIwMzE7IH1cblxuc3Bhbi5sYWJlbC5vdXQtb2Ytc3RvY2sge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWwgIWltcG9ydGFudDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtaW4td2lkdGg6IDE3MHB4O1xuICBwYWRkaW5nOiAxNnB4IDE0cHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XG4gICAgc3Bhbi5sYWJlbC5vdXQtb2Ytc3RvY2sge1xuICAgICAgbWluLXdpZHRoOiAxMDAlOyB9IH1cblxuaW5wdXQsXG50ZXh0YXJlYSB7XG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgb3V0bGluZTogbm9uZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7IH1cbiAgaW5wdXQ6bm90KFtuYW1lPXNlYXJjaF0pLFxuICB0ZXh0YXJlYTpub3QoW25hbWU9c2VhcmNoXSkge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNkN2Q3ZDcgIWltcG9ydGFudDsgfVxuICBpbnB1dDpmb2N1cyxcbiAgdGV4dGFyZWE6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1jb2xvcjogIzAwMCAhaW1wb3J0YW50OyB9XG4gIGlucHV0OjotbXMtY2xlYXIsXG4gIHRleHRhcmVhOjotbXMtY2xlYXIge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG5zZWxlY3Qge1xuICBwYWRkaW5nOiAxMHB4ICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZDdkN2Q3ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgYXBwZWFyYW5jZTogbm9uZSAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoNDVkZWcsIHRyYW5zcGFyZW50IDUwJSwgIzAwMCA1MCUpLCBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjMDAwIDUwJSwgdHJhbnNwYXJlbnQgNTAlKSAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjYWxjKDEwMCUgLSAxNXB4KSBjYWxjKDFlbSArIDZweCksIGNhbGMoMTAwJSAtIDEwcHgpIGNhbGMoMWVtICsgNnB4KSAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLXNpemU6IDVweCA1cHgsIDVweCA1cHggIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdCAhaW1wb3J0YW50OyB9XG4gIHNlbGVjdDo6LW1zLWV4cGFuZCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICBzZWxlY3Q6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1jb2xvcjogIzAwMCAhaW1wb3J0YW50OyB9XG5cbiNnb29nbGVfcmVjYXB0Y2hhIHtcbiAgdHJhbnNmb3JtOiBpbmhlcml0O1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBub25lO1xuICBtYXJnaW4tYm90dG9tOiAxNXB4ICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OXB4KSB7XG4gICAgI2dvb2dsZV9yZWNhcHRjaGEge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9IH1cblxuLmctcmVjYXB0Y2hhIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgIC5nLXJlY2FwdGNoYSB7XG4gICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7IH0gfVxuXG4uZm9ybS1pdGVtIC50aXRsZSB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbWFyZ2luLWJvdHRvbTogNXB4OyB9XG5cbi5mb3JtLWl0ZW0gLnRleHQtZGFuZ2VyIHtcbiAgcGFkZGluZy1sZWZ0OiAxcHg7XG4gIG1hcmdpbi10b3A6IDVweDtcbiAgZm9udC1zaXplOiAxMXB4OyB9XG5cbi5mb3JtLWl0ZW0gLnJhdGluZyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgLmZvcm0taXRlbSAucmF0aW5nIC5yYWRpb2JveCB7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuICAuZm9ybS1pdGVtIC5yYXRpbmcgLnJhZGlvbWFyayB7XG4gICAgbWFyZ2luOiA1cHggIWltcG9ydGFudDsgfVxuICAuZm9ybS1pdGVtIC5yYXRpbmcgc3BhbjpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7IH1cbiAgLmZvcm0taXRlbSAucmF0aW5nIHNwYW46bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY5cHgpIHtcbiAgLmZvcm0taXRlbS5pdGVtczpub3QoLmZvcm0tZm9vdGVyKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH0gfVxuXG4uZm9ybS1pdGVtLml0ZW1zOm5vdCguZm9ybS1mb290ZXIpID4gLml0ZW0ge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjlweCkge1xuICAgIC5mb3JtLWl0ZW0uaXRlbXM6bm90KC5mb3JtLWZvb3RlcikgPiAuaXRlbSB7XG4gICAgICBmbGV4OiAwIDEgYXV0bztcbiAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEwcHgpOyB9IH1cblxuLmZvcm0taXRlbTpub3QoLml0ZW1zKSA+IC5pdGVtIHtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuXG4uZm9ybS1pdGVtLmZvcm0tZm9vdGVyIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgIC5mb3JtLWl0ZW0uZm9ybS1mb290ZXIge1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfSB9XG5cbi5mb3JtLWl0ZW0gc2VsZWN0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGxpbmUtaGVpZ2h0OiAxZW07XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNhbGMoMTAwJSAtIDE1cHgpIDFlbSwgY2FsYygxMDAlIC0gMTBweCkgMWVtICFpbXBvcnRhbnQ7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cblxuLmFsZXJ0IHtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cblxuLnJhdGluZyAuZmEtc3RhcixcbiNmb3JtLXJldmlldyAuZmEtc3RhciB7XG4gIGNvbG9yOiAjZmJiYTAwICFpbXBvcnRhbnQ7IH1cbiAgLnJhdGluZyAuZmEtc3RhciArIC5mYS1zdGFyLW8sXG4gICNmb3JtLXJldmlldyAuZmEtc3RhciArIC5mYS1zdGFyLW8ge1xuICAgIGNvbG9yOiAjZmJiYTAwICFpbXBvcnRhbnQ7IH1cblxuOjpwbGFjZWhvbGRlciB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cblxuaHIge1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjYmYyMDMxOyB9XG4gIGhyLnNob3J0IHtcbiAgICB3aWR0aDogMTAwcHg7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuXG4uc2VjdGlvbi10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDUwcHggIWltcG9ydGFudDsgfVxuXG4ucGFnaW5hdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gIC5wYWdpbmF0aW9uID4gbGkgaSB7XG4gICAgZm9udC1zaXplOiAxOHB4OyB9XG4gIC5wYWdpbmF0aW9uID4gbGk6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7IH1cbiAgLnBhZ2luYXRpb24gPiBsaSA+ICoge1xuICAgIGJvcmRlci13aWR0aDogMnB4ICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICMwMDAgIWltcG9ydGFudDtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjZDdkN2Q3ICFpbXBvcnRhbnQ7IH1cbiAgLnBhZ2luYXRpb24gPiBsaS5hY3RpdmUgPiAqLCAucGFnaW5hdGlvbiA+IGxpOmZvY3VzID4gKiwgLnBhZ2luYXRpb24gPiBsaTpob3ZlciA+ICoge1xuICAgIGNvbG9yOiAjYmYyMDMxICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBib3JkZXItY29sb3I6ICNiZjIwMzEgIWltcG9ydGFudDsgfVxuICAucGFnaW5hdGlvbiA+IGxpLnBhZ2luYXRpb25fYXJyb3cge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgIC5wYWdpbmF0aW9uID4gbGkucGFnaW5hdGlvbl9hcnJvdyA+ICoge1xuICAgICAgY29sb3I6ICNiZjIwMzEgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDAgMTJweDtcbiAgICAgIGJvcmRlcjogMCAhaW1wb3J0YW50OyB9XG4gICAgICAucGFnaW5hdGlvbiA+IGxpLnBhZ2luYXRpb25fYXJyb3cgPiAqIGkge1xuICAgICAgICBmb250LXNpemU6IDMwcHg7IH1cblxuI2ZpbHRlci1ncm91cHMgPiAqIHtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50OyB9XG5cbiNmaWx0ZXItZ3JvdXBzIGEge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjYpOyB9XG4gICNmaWx0ZXItZ3JvdXBzIGE6aG92ZXIge1xuICAgIGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDsgfVxuXG4jZmlsdGVyLWdyb3VwcyAuYWN0aXZlIGEge1xuICBjb2xvcjogIzAwMDsgfVxuXG4jZmlsdGVyLWdyb3VwcyAubGlzdC1ncm91cC1pdGVtIHtcbiAgcGFkZGluZzogN3B4IDEwcHg7IH1cblxuI2ZpbHRlci1ncm91cHMgLmxpc3QtZ3JvdXAtaXRlbSxcbiNmaWx0ZXItZ3JvdXBzIC5saXN0LWdyb3VwIHtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7IH1cbiAgI2ZpbHRlci1ncm91cHMgLmxpc3QtZ3JvdXAtaXRlbSA+ICosXG4gICNmaWx0ZXItZ3JvdXBzIC5saXN0LWdyb3VwID4gKiB7XG4gICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7IH1cblxuI2ZpbHRlci1ncm91cHMgLml0ZW0taGVhZGVyIHtcbiAgY29sb3I6ICMwMDA7XG4gIHBhZGRpbmc6IDA7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbiNmaWx0ZXItZ3JvdXBzICNzaWRlX2ZpbHRlciAuaXRlbS1oZWFkZXIgaSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcGFkZGluZzogMCAxMHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDsgfVxuICAjZmlsdGVyLWdyb3VwcyAjc2lkZV9maWx0ZXIgLml0ZW0taGVhZGVyIGkuYWN0aXZlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpOyB9XG5cbiNmaWx0ZXItZ3JvdXBzICNzaWRlLW1hbnVmYWN0dXJlcixcbiNmaWx0ZXItZ3JvdXBzICNzaWRlX2ZpbHRlciB7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cbiAgI2ZpbHRlci1ncm91cHMgI3NpZGUtbWFudWZhY3R1cmVyIC5pdGVtLWhlYWRlcixcbiAgI2ZpbHRlci1ncm91cHMgI3NpZGVfZmlsdGVyIC5pdGVtLWhlYWRlciB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjMDA1NGE2ICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICMwMDAgIWltcG9ydGFudDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogMTJweCAhaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiA3cHg7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgICAjZmlsdGVyLWdyb3VwcyAjc2lkZS1tYW51ZmFjdHVyZXIgLml0ZW0taGVhZGVyLFxuICAgICAgI2ZpbHRlci1ncm91cHMgI3NpZGVfZmlsdGVyIC5pdGVtLWhlYWRlciB7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweCAhaW1wb3J0YW50OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTQ0MXB4KSB7XG4gICAgICAjZmlsdGVyLWdyb3VwcyAjc2lkZS1tYW51ZmFjdHVyZXIgLml0ZW0taGVhZGVyLFxuICAgICAgI2ZpbHRlci1ncm91cHMgI3NpZGVfZmlsdGVyIC5pdGVtLWhlYWRlciB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjRweCAhaW1wb3J0YW50OyB9IH1cbiAgI2ZpbHRlci1ncm91cHMgI3NpZGUtbWFudWZhY3R1cmVyIC5jaGVja21hcmssXG4gICNmaWx0ZXItZ3JvdXBzICNzaWRlX2ZpbHRlciAuY2hlY2ttYXJrIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gICNmaWx0ZXItZ3JvdXBzICNzaWRlLW1hbnVmYWN0dXJlciAuY2hlY2tib3hfbmFtZSxcbiAgI2ZpbHRlci1ncm91cHMgI3NpZGVfZmlsdGVyIC5jaGVja2JveF9uYW1lIHtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjYpO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0OyB9XG4gICAgI2ZpbHRlci1ncm91cHMgI3NpZGUtbWFudWZhY3R1cmVyIC5jaGVja2JveF9uYW1lOmhvdmVyLFxuICAgICNmaWx0ZXItZ3JvdXBzICNzaWRlX2ZpbHRlciAuY2hlY2tib3hfbmFtZTpob3ZlciB7XG4gICAgICBjb2xvcjogIzAwMDsgfVxuICAjZmlsdGVyLWdyb3VwcyAjc2lkZS1tYW51ZmFjdHVyZXIgaW5wdXQ6Y2hlY2tlZCB+IC5jaGVja21hcmsgfiAuY2hlY2tib3hfbmFtZSxcbiAgI2ZpbHRlci1ncm91cHMgI3NpZGVfZmlsdGVyIGlucHV0OmNoZWNrZWQgfiAuY2hlY2ttYXJrIH4gLmNoZWNrYm94X25hbWUge1xuICAgIGNvbG9yOiAjMDAwOyB9XG5cbiNmaWx0ZXItZ3JvdXBzICNzaWRlLWNhdGVnb3JpZXMge1xuICB1c2VyLXNlbGVjdDogbm9uZTsgfVxuICAjZmlsdGVyLWdyb3VwcyAjc2lkZS1jYXRlZ29yaWVzID4gLml0ZW0taGVhZGVyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gICNmaWx0ZXItZ3JvdXBzICNzaWRlLWNhdGVnb3JpZXMgLnNpZGUtY2F0ZWdvcmllcy1sZXZlbC0xID4gLmdyb3VwID4gLmxldmVsLTEge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICAjZmlsdGVyLWdyb3VwcyAjc2lkZS1jYXRlZ29yaWVzIC5zaWRlLWNhdGVnb3JpZXMtbGV2ZWwtMSA+IC5ncm91cCA+IC5sZXZlbC0yIHtcbiAgICBib3JkZXI6IDAgIWltcG9ydGFudDsgfVxuICAgICNmaWx0ZXItZ3JvdXBzICNzaWRlLWNhdGVnb3JpZXMgLnNpZGUtY2F0ZWdvcmllcy1sZXZlbC0xID4gLmdyb3VwID4gLmxldmVsLTIgPiAuZ3JvdXAge1xuICAgICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG4gICAgICAjZmlsdGVyLWdyb3VwcyAjc2lkZS1jYXRlZ29yaWVzIC5zaWRlLWNhdGVnb3JpZXMtbGV2ZWwtMSA+IC5ncm91cCA+IC5sZXZlbC0yID4gLmdyb3VwID4gLmxldmVsLTIge1xuICAgICAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICMwMDU0YTYgIWltcG9ydGFudDsgfVxuICAgICAgICAjZmlsdGVyLWdyb3VwcyAjc2lkZS1jYXRlZ29yaWVzIC5zaWRlLWNhdGVnb3JpZXMtbGV2ZWwtMSA+IC5ncm91cCA+IC5sZXZlbC0yID4gLmdyb3VwID4gLmxldmVsLTIgPiAuc3ViIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgICAjZmlsdGVyLWdyb3VwcyAjc2lkZS1jYXRlZ29yaWVzIC5zaWRlLWNhdGVnb3JpZXMtbGV2ZWwtMSA+IC5ncm91cCA+IC5sZXZlbC0yID4gLmdyb3VwID4gLmxldmVsLTIgLmZhIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDsgfVxuICAgICAgICAjZmlsdGVyLWdyb3VwcyAjc2lkZS1jYXRlZ29yaWVzIC5zaWRlLWNhdGVnb3JpZXMtbGV2ZWwtMSA+IC5ncm91cCA+IC5sZXZlbC0yID4gLmdyb3VwID4gLmxldmVsLTIuYWN0aXZlIC5mYSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsgfVxuICAgICAgICAjZmlsdGVyLWdyb3VwcyAjc2lkZS1jYXRlZ29yaWVzIC5zaWRlLWNhdGVnb3JpZXMtbGV2ZWwtMSA+IC5ncm91cCA+IC5sZXZlbC0yID4gLmdyb3VwID4gLmxldmVsLTIgPiBhIHtcbiAgICAgICAgICBjb2xvcjogIzAwMCAhaW1wb3J0YW50O1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgZm9udC1zaXplOiAxMnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50OyB9XG4gICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgICAgICAgICAgI2ZpbHRlci1ncm91cHMgI3NpZGUtY2F0ZWdvcmllcyAuc2lkZS1jYXRlZ29yaWVzLWxldmVsLTEgPiAuZ3JvdXAgPiAubGV2ZWwtMiA+IC5ncm91cCA+IC5sZXZlbC0yID4gYSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweCAhaW1wb3J0YW50OyB9IH1cbiAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTQ0MXB4KSB7XG4gICAgICAgICAgICAjZmlsdGVyLWdyb3VwcyAjc2lkZS1jYXRlZ29yaWVzIC5zaWRlLWNhdGVnb3JpZXMtbGV2ZWwtMSA+IC5ncm91cCA+IC5sZXZlbC0yID4gLmdyb3VwID4gLmxldmVsLTIgPiBhIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4ICFpbXBvcnRhbnQ7IH0gfVxuICAgICAgICAjZmlsdGVyLWdyb3VwcyAjc2lkZS1jYXRlZ29yaWVzIC5zaWRlLWNhdGVnb3JpZXMtbGV2ZWwtMSA+IC5ncm91cCA+IC5sZXZlbC0yID4gLmdyb3VwID4gLmxldmVsLTIgLnBvaW50ZXIge1xuICAgICAgICAgIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgY29sb3I6ICMwMDAgIWltcG9ydGFudDsgfVxuICAjZmlsdGVyLWdyb3VwcyAjc2lkZS1jYXRlZ29yaWVzIC5zaWRlLWNhdGVnb3JpZXMtbGV2ZWwtMSA+IC5ncm91cCAubGV2ZWwtMyB7XG4gICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7IH1cbiAgICAjZmlsdGVyLWdyb3VwcyAjc2lkZS1jYXRlZ29yaWVzIC5zaWRlLWNhdGVnb3JpZXMtbGV2ZWwtMSA+IC5ncm91cCAubGV2ZWwtMyAuYWN0aXZlIHtcbiAgICAgIGNvbG9yOiAjYmYyMDMxOyB9XG4gICAgI2ZpbHRlci1ncm91cHMgI3NpZGUtY2F0ZWdvcmllcyAuc2lkZS1jYXRlZ29yaWVzLWxldmVsLTEgPiAuZ3JvdXAgLmxldmVsLTMgYSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7IH1cblxuI2ZpbHRlci1ncm91cHMgI3NpZGUtcHJpY2Uge1xuICBkaXNwbGF5OiBub25lOyB9XG4gICNmaWx0ZXItZ3JvdXBzICNzaWRlLXByaWNlIC5pbnB1dC1ncm91cCB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBmbGV4OyB9XG4gICAgI2ZpbHRlci1ncm91cHMgI3NpZGUtcHJpY2UgLmlucHV0LWdyb3VwID4gKiB7XG4gICAgICBmbGV4OiAwIDEgYXV0bzsgfVxuICAgICNmaWx0ZXItZ3JvdXBzICNzaWRlLXByaWNlIC5pbnB1dC1ncm91cCBsYWJlbCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgI2ZpbHRlci1ncm91cHMgI3NpZGUtcHJpY2UgLmlucHV0LWdyb3VwOmxhc3QtY2hpbGQge1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuICAjZmlsdGVyLWdyb3VwcyAjc2lkZS1wcmljZSAucHJpY2UtY29udGFpbmVyIGxhYmVsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gICNmaWx0ZXItZ3JvdXBzICNzaWRlLXByaWNlIC5wcmljZS1jb250YWluZXIgaW5wdXQge1xuICAgIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB3aWR0aDogNzAlOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDEyODBweCkge1xuICAgICAgI2ZpbHRlci1ncm91cHMgI3NpZGUtcHJpY2UgLnByaWNlLWNvbnRhaW5lciBpbnB1dCB7XG4gICAgICAgIHdpZHRoOiA4MCU7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICNmaWx0ZXItZ3JvdXBzICNzaWRlLXByaWNlIC5wcmljZS1jb250YWluZXIgaW5wdXQge1xuICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gICNmaWx0ZXItZ3JvdXBzICNzaWRlLXByaWNlICNzbGlkZXItcHJpY2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNlMWUxZTE7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBoZWlnaHQ6IDVweDsgfVxuICAgICNmaWx0ZXItZ3JvdXBzICNzaWRlLXByaWNlICNzbGlkZXItcHJpY2UgLnVpLXNsaWRlci1yYW5nZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmYyMDMxOyB9XG4gICAgI2ZpbHRlci1ncm91cHMgI3NpZGUtcHJpY2UgI3NsaWRlci1wcmljZSAudWktc2xpZGVyLWhhbmRsZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2JmMjAzMTsgfVxuXG5ib2R5W2NsYXNzKj0nY2lkLTUnXSAuc2lkZS1jYXRlZ29yaWVzLWxldmVsLTE6Zmlyc3QtY2hpbGQge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbmJvZHlbY2xhc3MqPSdjaWQtNiddIC5zaWRlLWNhdGVnb3JpZXMtbGV2ZWwtMTpsYXN0LWNoaWxkIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ucHJvZHVjdC12aWV3IHtcbiAgcGFkZGluZzogNXB4ICFpbXBvcnRhbnQ7IH1cbiAgLnByb2R1Y3QtdmlldyAucHJvZHVjdC1ibG9jayB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgd2lkdGg6IGNhbGMoKDk5JSAvIDIpIC0gMjBweCk7XG4gICAgbWFyZ2luOiAxMHB4ICFpbXBvcnRhbnQ7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNTc3cHgpIHtcbiAgICAgIC5wcm9kdWN0LXZpZXcgLnByb2R1Y3QtYmxvY2sge1xuICAgICAgICB3aWR0aDogY2FsYygoOTklIC8gMikgLSAyMHB4KTsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAucHJvZHVjdC12aWV3IC5wcm9kdWN0LWJsb2NrIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoKDk5JSAvIDMpIC0gMjBweCk7IH0gfVxuXG4jcHJvZHVjdC1maWx0ZXItcmVwbGFjZSA+IGgyIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ucHJvZHVjdC1ibG9jayB7XG4gIGJvcmRlcjogMDsgfVxuICAucHJvZHVjdC1ibG9jayAucHJvZHVjdC1pbWFnZS1ibG9jayB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgIC5wcm9kdWN0LWJsb2NrIC5wcm9kdWN0LWltYWdlLWJsb2NrID4gYSB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAucHJvZHVjdC1ibG9jayAudmlld19kZXRhaWxzX2J0biB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxOTEsIDMyLCA0OSwgMC42KTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgIC5wcm9kdWN0LWJsb2NrIC52aWV3X2RldGFpbHNfYnRuIGkge1xuICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29sb3I6ICMwMDAgIWltcG9ydGFudDtcbiAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAucHJvZHVjdC1ibG9jazpob3ZlciAudmlld19kZXRhaWxzX2J0biB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgLnByb2R1Y3QtYmxvY2sgLm1vcmUtb3B0aW9ucy10ZXh0IHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5wcm9kdWN0LWJsb2NrIC5wcm9kdWN0LW5hbWUgYSB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGZvbnQtd2VpZ2h0OiA2MDAgIWltcG9ydGFudDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiAjMDAwOyB9XG4gIC5wcm9kdWN0LWJsb2NrIC5wcm9kdWN0LWRldGFpbHMge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLnByb2R1Y3QtYmxvY2sgLnByb2R1Y3QtZGV0YWlscyAucHJpY2Uge1xuICAgICAgY29sb3I6ICMwMDA7IH1cbiAgICAgIC5wcm9kdWN0LWJsb2NrIC5wcm9kdWN0LWRldGFpbHMgLnByaWNlID4gKiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweCAhaW1wb3J0YW50OyB9XG4gICAgICAucHJvZHVjdC1ibG9jayAucHJvZHVjdC1kZXRhaWxzIC5wcmljZSAucHJpY2UtbmV3IHtcbiAgICAgICAgY29sb3I6ICMwMDA7IH1cbiAgICAgIC5wcm9kdWN0LWJsb2NrIC5wcm9kdWN0LWRldGFpbHMgLnByaWNlIC5wcmljZS1vbGQge1xuICAgICAgICBjb2xvcjogIzAwMDtcbiAgICAgICAgb3BhY2l0eTogLjU7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoOyB9XG4gICAgLnByb2R1Y3QtYmxvY2sgLnByb2R1Y3QtZGV0YWlscyAuZW5xdWlyeS1pdGVtIHtcbiAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgIGZvbnQtc2l6ZTogMTRweCAhaW1wb3J0YW50OyB9XG4gIC5wcm9kdWN0LWJsb2NrIC5wcm9kdWN0LWxpc3QtY29sb3Itb3B0aW9ucyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIHBhZGRpbmc6IDAgN3B4O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuICAgIC5wcm9kdWN0LWJsb2NrIC5wcm9kdWN0LWxpc3QtY29sb3Itb3B0aW9ucyA+ICoge1xuICAgICAgZmxleDogMCAxIGF1dG87XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAucHJvZHVjdC1ibG9jayAucHJvZHVjdC1saXN0LWNvbG9yLW9wdGlvbnMgaW1nIHtcbiAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTsgfVxuXG4uc29ydF9jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG4gIC5zb3J0X2NvbnRhaW5lciAuaW5wdXQtZ3JvdXAtYWRkb24ge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnNvcnRfY29udGFpbmVyID4gKjpmaXJzdC1jaGlsZCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcbiAgICAuc29ydF9jb250YWluZXIgLmNvbC14cy02IHtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH0gfVxuXG4ucHJvZHVjdC1wcm9kdWN0IC5wcm9kdWN0LW5hbWUge1xuICBjb2xvcjogIzAwMCAhaW1wb3J0YW50OyB9XG5cbi5wcm9kdWN0LXByb2R1Y3QgLmxlYXNpbmdfcGVyaW9kIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDE4cHg7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cblxuLnByb2R1Y3QtcHJvZHVjdCAucHJvZHVjdC1kZXNjcmlwdGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cblxuLnByb2R1Y3QtcHJvZHVjdCB1bC5wcmljZS1kZXRhaWxzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgbWFyZ2luOiAyMHB4IDA7IH1cbiAgLnByb2R1Y3QtcHJvZHVjdCB1bC5wcmljZS1kZXRhaWxzID4gKiB7XG4gICAgY29sb3I6ICNiZjIwMzE7XG4gICAgZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50O1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAucHJvZHVjdC1wcm9kdWN0IHVsLnByaWNlLWRldGFpbHM6bm90KC5wcmljZS1zcGVjaWFsKTpmaXJzdC1jaGlsZCB7XG4gICAgb3JkZXI6IDI7IH1cbiAgLnByb2R1Y3QtcHJvZHVjdCB1bC5wcmljZS1kZXRhaWxzOm5vdCgucHJpY2Utc3BlY2lhbCk6bGFzdC1jaGlsZCB7XG4gICAgb3JkZXI6IDE7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9XG4gIC5wcm9kdWN0LXByb2R1Y3QgdWwucHJpY2UtZGV0YWlscy5wcmljZS1zcGVjaWFsOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7IH1cblxuLnByb2R1Y3QtcHJvZHVjdCAucHJvZHVjdC1pbWFnZS1jb2x1bW4gLnByb2R1Y3QtaW1hZ2UtbWFpbi1jb250YWluZXIge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG4ucHJvZHVjdC1wcm9kdWN0IC5wcm9kdWN0LWltYWdlLWNvbHVtbiAucHJvZHVjdC1pbWFnZS1hZGRpdGlvbmFsLWNvbnRhaW5lciB7XG4gIHBhZGRpbmc6IDA7IH1cbiAgLnByb2R1Y3QtcHJvZHVjdCAucHJvZHVjdC1pbWFnZS1jb2x1bW4gLnByb2R1Y3QtaW1hZ2UtYWRkaXRpb25hbC1jb250YWluZXIgaW1nIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogMDsgfVxuXG4ucHJvZHVjdC1wcm9kdWN0IC5wcm9kdWN0LWltYWdlLWNvbHVtbiAucHJvZHVjdC1pbWFnZS1hZGRpdGlvbmFsIC5zbGljay1jdXJyZW50IGltZyB7XG4gIG9wYWNpdHk6IDAuNzsgfVxuXG4ucHJvZHVjdC1wcm9kdWN0IC5wcm9kdWN0LWltYWdlLWNvbHVtbiAuc2xpY2stdHJhY2sge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwOyB9XG5cbi5wcm9kdWN0LXByb2R1Y3QgI3Byb2R1Y3QgLnByb2R1Y3QtYnRucy1jb250YWluZXIge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwOyB9XG4gIC5wcm9kdWN0LXByb2R1Y3QgI3Byb2R1Y3QgLnByb2R1Y3QtYnRucy1jb250YWluZXIgPiAqIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7IH1cbiAgICAucHJvZHVjdC1wcm9kdWN0ICNwcm9kdWN0IC5wcm9kdWN0LWJ0bnMtY29udGFpbmVyID4gKjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgIG1hcmdpbi1yaWdodDogNXB4OyB9XG5cbi5wcm9kdWN0LXByb2R1Y3QgI3Byb2R1Y3QgLnNlcGFyYXRvcl90byB7XG4gIG1hcmdpbjogMCAyMHB4IDI0cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgLnByb2R1Y3QtcHJvZHVjdCAjcHJvZHVjdCAuc2VwYXJhdG9yX3RvIHtcbiAgICAgIHdpZHRoOiA4MCU7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG5cbi5wcm9kdWN0LXByb2R1Y3QgLnNoYXJlLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1hcmdpbjogMjBweCAwOyB9XG4gIC5wcm9kdWN0LXByb2R1Y3QgLnNoYXJlLWNvbnRhaW5lciBhIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50OyB9XG4gICAgLnByb2R1Y3QtcHJvZHVjdCAuc2hhcmUtY29udGFpbmVyIGEgc3ZnIHtcbiAgICAgIGZpbGw6ICMwMDAgIWltcG9ydGFudDsgfVxuXG4ucHJvZHVjdC1wcm9kdWN0IC5lbnF1aXJ5LWJsb2NrIHtcbiAgbWFyZ2luOiAyMHB4IDA7IH1cbiAgLnByb2R1Y3QtcHJvZHVjdCAuZW5xdWlyeS1ibG9jayAubGFiZWwge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6ICMwMDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgcGFkZGluZzogMDsgfVxuXG4ucHJvZHVjdC1wcm9kdWN0IC5wcm9kdWN0X29vcyB7XG4gIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBjb2xvcjogI2E4YThhOCAhaW1wb3J0YW50O1xuICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG5cbi5wcm9kdWN0LXByb2R1Y3QgI3dhaXRpbmdfbGlzdCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MnB4KSB7XG4gICAgLnByb2R1Y3QtcHJvZHVjdCAjd2FpdGluZ19saXN0IC5mbGV4LWdyb3VwIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH0gfVxuICAucHJvZHVjdC1wcm9kdWN0ICN3YWl0aW5nX2xpc3QgLmZsZXgtZ3JvdXAgPiAqOmZpcnN0LWNoaWxkIHtcbiAgICBmbGV4OiAxIDAgYXV0bzsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTJweCkge1xuICAgICAgLnByb2R1Y3QtcHJvZHVjdCAjd2FpdGluZ19saXN0IC5mbGV4LWdyb3VwID4gKjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG4gIC5wcm9kdWN0LXByb2R1Y3QgI3dhaXRpbmdfbGlzdCAuZmxleC1ncm91cCA+ICo6bGFzdC1jaGlsZCB7XG4gICAgZmxleDogMCAxIGF1dG87IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkycHgpIHtcbiAgICAgIC5wcm9kdWN0LXByb2R1Y3QgI3dhaXRpbmdfbGlzdCAuZmxleC1ncm91cCA+ICo6bGFzdC1jaGlsZCB7XG4gICAgICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kOyB9IH1cbiAgLnByb2R1Y3QtcHJvZHVjdCAjd2FpdGluZ19saXN0IGlucHV0IHtcbiAgICBwYWRkaW5nOiAxM3B4IDEwcHg7IH1cblxuLnByb2R1Y3QtcHJvZHVjdCAjcHJvZHVjdC10YWJzIHtcbiAgbWFyZ2luLXRvcDogMzBweDtcbiAgYm9yZGVyLWNvbG9yOiAjMDAwOyB9XG4gIC5wcm9kdWN0LXByb2R1Y3QgI3Byb2R1Y3QtdGFicyBsaTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7IH1cbiAgLnByb2R1Y3QtcHJvZHVjdCAjcHJvZHVjdC10YWJzIGxpIGEge1xuICAgIGNvbG9yOiAjMDAwO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMDA7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjlweCkge1xuICAgICAgLnByb2R1Y3QtcHJvZHVjdCAjcHJvZHVjdC10YWJzIGxpIGEge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuICAucHJvZHVjdC1wcm9kdWN0ICNwcm9kdWN0LXRhYnMgbGkuYWN0aXZlIGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNiZjIwMzEgIWltcG9ydGFudDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBib3JkZXItY29sb3I6ICNiZjIwMzEgIWltcG9ydGFudDsgfVxuXG4ucHJvZHVjdC1wcm9kdWN0IC50YWItY29udGVudCB0YWJsZSB0ZCB7XG4gIHBhZGRpbmc6IDVweDsgfVxuXG4ucHJvZHVjdC1wcm9kdWN0IC5mZWF0dXJlZC1tb2R1bGUge1xuICBtYXJnaW4tdG9wOiA3MHB4OyB9XG4gIC5wcm9kdWN0LXByb2R1Y3QgLmZlYXR1cmVkLW1vZHVsZSAucHJvZHVjdC1kZXRhaWxzIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5wcm9kdWN0LXByb2R1Y3QgLmZlYXR1cmVkLW1vZHVsZSAuc2xpY2stbGlzdCB7XG4gICAgd2lkdGg6IDkwJTtcbiAgICBtYXJnaW46IDAgYXV0bzsgfVxuICAucHJvZHVjdC1wcm9kdWN0IC5mZWF0dXJlZC1tb2R1bGUgLmZhIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjBiMGIwO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGZvbnQtc2l6ZTogMThweDsgfVxuICAgIC5wcm9kdWN0LXByb2R1Y3QgLmZlYXR1cmVkLW1vZHVsZSAuZmE6OmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmc6IDE1cHggMzBweDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XG4gICAgICAgIC5wcm9kdWN0LXByb2R1Y3QgLmZlYXR1cmVkLW1vZHVsZSAuZmE6OmJlZm9yZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgIHBhZGRpbmc6IDVweCAxMHB4OyB9IH1cblxuLnByb2R1Y3QtcHJvZHVjdCAjcHJvZHVjdCB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAucHJvZHVjdC1wcm9kdWN0ICNwcm9kdWN0IHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH0gfVxuICAucHJvZHVjdC1wcm9kdWN0ICNwcm9kdWN0IGgzIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5wcm9kdWN0LXByb2R1Y3QgI3Byb2R1Y3QgPiAuZm9ybS1ncm91cCB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gNTNweCk7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgICAucHJvZHVjdC1wcm9kdWN0ICNwcm9kdWN0ID4gLmZvcm0tZ3JvdXAge1xuICAgICAgICB3aWR0aDogODAlOyB9IH1cbiAgICAucHJvZHVjdC1wcm9kdWN0ICNwcm9kdWN0ID4gLmZvcm0tZ3JvdXA6bm90KC50aW1lX2NvbGxlY3QpOm5vdCgudGltZV9yZXR1cm4pIC5jb250cm9sLWxhYmVsIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAucHJvZHVjdC1wcm9kdWN0ICNwcm9kdWN0ID4gLmZvcm0tZ3JvdXAudGltZV9jb2xsZWN0IHtcbiAgICAgIG1hcmdpbi1yaWdodDogNTNweDsgfVxuICAgIC5wcm9kdWN0LXByb2R1Y3QgI3Byb2R1Y3QgPiAuZm9ybS1ncm91cCAuZGF0ZSBpbnB1dCB7XG4gICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgIGJvcmRlci1yaWdodDogMCAhaW1wb3J0YW50O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgICAucHJvZHVjdC1wcm9kdWN0ICNwcm9kdWN0ID4gLmZvcm0tZ3JvdXAgLmRhdGUgaW5wdXQ6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICNkN2Q3ZDcgIWltcG9ydGFudDsgfVxuICAgIC5wcm9kdWN0LXByb2R1Y3QgI3Byb2R1Y3QgPiAuZm9ybS1ncm91cCAuZGF0ZSAuaW5wdXQtZ3JvdXAtYnRuIHtcbiAgICAgIGZsZXg6IDAgMSBhdXRvOyB9XG4gICAgICAucHJvZHVjdC1wcm9kdWN0ICNwcm9kdWN0ID4gLmZvcm0tZ3JvdXAgLmRhdGUgLmlucHV0LWdyb3VwLWJ0biA+ICoge1xuICAgICAgICBtaW4td2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgbWluLWhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogNnB4IDEycHggIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2Q3ZDdkNyAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItbGVmdDogMCAhaW1wb3J0YW50OyB9XG4gICAgICAgIC5wcm9kdWN0LXByb2R1Y3QgI3Byb2R1Y3QgPiAuZm9ybS1ncm91cCAuZGF0ZSAuaW5wdXQtZ3JvdXAtYnRuID4gKjo6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLnByb2R1Y3QtcHJvZHVjdCAjcHJvZHVjdCA+IC5mb3JtLWdyb3VwIC5kYXRlIC5pbnB1dC1ncm91cC1idG4gPiAqOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogI2JmMjAzMSAhaW1wb3J0YW50OyB9XG5cbi5jaGVja2JveCB7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50O1xuICB1c2VyLXNlbGVjdDogbm9uZTsgfVxuICAuY2hlY2tib3ggPiAqIHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmNoZWNrYm94ID4gKiA+ICoge1xuICAgICAgZmxleDogMCAxIGF1dG87IH1cbiAgLmNoZWNrYm94IC5jaGVja2JveF9uYW1lLFxuICAuY2hlY2tib3ggbGFiZWwge1xuICAgIG9yZGVyOiAyO1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICBtaW4taGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgLmNoZWNrYm94IC5jaGVja21hcmsge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvcmRlcjogMTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNiZjIwMzE7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7IH1cbiAgICAuY2hlY2tib3ggLmNoZWNrbWFyazpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmYyMDMxOyB9XG4gIC5jaGVja2JveCBpbnB1dCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gICAgLmNoZWNrYm94IGlucHV0OmNoZWNrZWQgfiAuY2hlY2ttYXJrIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNiZjIwMzE7IH1cbiAgICAgIC5jaGVja2JveCBpbnB1dDpjaGVja2VkIH4gLmNoZWNrbWFyazo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiA1cHg7XG4gICAgICAgIHRvcDogMXB4O1xuICAgICAgICB3aWR0aDogN3B4O1xuICAgICAgICBoZWlnaHQ6IDEycHg7XG4gICAgICAgIGJvcmRlcjogc29saWQgI2ZmZjtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAwIDJweCAycHggMDtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpOyB9XG5cbiNzaWRlX2ZpbHRlciAuY2hlY2tib3g6bm90KDpsYXN0LWNoaWxkKSxcbiNzaWRlLW1hbnVmYWN0dXJlciAuY2hlY2tib3g6bm90KDpsYXN0LWNoaWxkKSB7XG4gIG1hcmdpbi1ib3R0b206IDVweCAhaW1wb3J0YW50OyB9XG5cbiNzaWRlX2ZpbHRlciBsYWJlbCxcbiNzaWRlLW1hbnVmYWN0dXJlciBsYWJlbCB7XG4gIGZvbnQtc2l6ZTogMTRweDsgfVxuXG4ucmFkaW9ib3g6bm90KC50ZCkge1xuICBtYXJnaW4tdG9wOiA1cHg7XG4gIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuXG4ucmFkaW9ib3gudGQge1xuICBwYWRkaW5nOiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5yYWRpb2JveC50ZCA+ICoge1xuICAgIGZsZXg6IDAgMSBhdXRvOyB9XG4gIC5yYWRpb2JveC50ZCAucmFkaW9tYXJrIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDVweDsgfVxuXG4ucmFkaW9ib3ggLnJhZGlvbWFyayB7XG4gIGhlaWdodDogMjBweDtcbiAgd2lkdGg6IDIwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkZGQ7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgLnJhZGlvYm94IC5yYWRpb21hcms6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNiZjIwMzE7IH1cblxuLnJhZGlvYm94IGlucHV0IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIC5yYWRpb2JveCBpbnB1dDpjaGVja2VkIH4gLnJhZGlvbWFyayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2JmMjAzMTsgfVxuICAgIC5yYWRpb2JveCBpbnB1dDpjaGVja2VkIH4gLnJhZGlvbWFyazphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiA2cHg7XG4gICAgICBoZWlnaHQ6IDZweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIGJhY2tncm91bmQ6IHdoaXRlOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjlweCkge1xuICAucXVpY2tjaGVja291dC1jaGVja291dCAudGVybXMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5xdWlja2NoZWNrb3V0LWNoZWNrb3V0IC50ZXJtcyAuY2hlY2tib3gge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHggIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjlweCkge1xuICAucXVpY2tjaGVja291dC1jaGVja291dCAudGVybXMgLmNoZWNrYm94IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDIwcHggIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xuICAucXVpY2tjaGVja291dC1jaGVja291dCAudGVybXMgLmNoZWNrYm94IGxhYmVsIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XG4gIC5xdWlja2NoZWNrb3V0LWNoZWNrb3V0IC50ZXJtcyAuY2hlY2tib3ggLmNoZWNrbWFyayB7XG4gICAgbWFyZ2luLXRvcDogM3B4OyB9IH1cblxuLnF1aWNrY2hlY2tvdXQtY2hlY2tvdXQgLnRlcm1zIC5jaGVja2JveCAuY2hlY2tib3hfbmFtZSB7XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cblxuLnF1aWNrY2hlY2tvdXQtY2hlY2tvdXQgI2NyZWF0ZV9hY2NvdW50IC5jaGVja2JveCB7XG4gIG1hcmdpbi1ib3R0b206IDEwcHggIWltcG9ydGFudDsgfVxuXG4ucXVpY2tjaGVja291dC1jaGVja291dCAucXVpY2tjaGVja291dC1jaGVja2JveCAuY2hlY2tib3gge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4ICFpbXBvcnRhbnQ7IH1cblxuLnBhZ2UtYmFubmVyIC5wYWdlLWJhbm5lci10aXRsZSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAyNnB4O1xuICBmb250LXdlaWdodDogNjAwICFpbXBvcnRhbnQ7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OXB4KSB7XG4gICAgLnBhZ2UtYmFubmVyIC5wYWdlLWJhbm5lci10aXRsZSB7XG4gICAgICBmb250LXNpemU6IDMwcHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLnBhZ2UtYmFubmVyIC5wYWdlLWJhbm5lci10aXRsZSB7XG4gICAgICBmb250LXNpemU6IDM2cHg7IH0gfVxuXG4ubW9kYWxfY29udGFpbmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5tb2RhbF9jb250YWluZXIgLm1mcC1jbG9zZSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7IH1cbiAgICAubW9kYWxfY29udGFpbmVyIC5tZnAtY2xvc2U6aG92ZXIge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTsgfVxuICAubW9kYWxfY29udGFpbmVyIC5tb2RhbF9iYW5uZXIgaW1nIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAubW9kYWxfY29udGFpbmVyIC5tb2RhbF9jb250ZW50IHtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIC5tb2RhbF9jb250YWluZXIgLm1vZGFsX2NvbnRlbnQgcCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgLm1vZGFsX2NvbnRhaW5lciAubW9kYWxfY29udGVudCBkaXYge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MnB4KSB7XG4gICAgICAgIC5tb2RhbF9jb250YWluZXIgLm1vZGFsX2NvbnRlbnQgZGl2IHtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9IH1cbiAgICAgIC5tb2RhbF9jb250YWluZXIgLm1vZGFsX2NvbnRlbnQgZGl2ID4gKjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgLm1vZGFsX2NvbnRhaW5lciAubW9kYWxfY29udGVudCBkaXYgPiAqOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgICAgIC5tb2RhbF9jb250YWluZXIgLm1vZGFsX2NvbnRlbnQgZGl2IGEge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgICAgIC5tb2RhbF9jb250YWluZXIgLm1vZGFsX2NvbnRlbnQgZGl2IGE6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiAjYTQxNzI2OyB9XG4gICAgLm1vZGFsX2NvbnRhaW5lciAubW9kYWxfY29udGVudCBpbWcge1xuICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDsgfVxuICAgICAgLm1vZGFsX2NvbnRhaW5lciAubW9kYWxfY29udGVudCBpbWc6aG92ZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMzYwZGVnKTsgfVxuXG4ucHJvZHVjdC1wcm9kdWN0ICNlbnF1aXJ5X21vZGFsIHtcbiAgcGFkZGluZzogMjBweDsgfVxuXG4jZW5xdWlyeV9tb2RhbCAubWZwLWNsb3NlIHtcbiAgY29sb3I6ICMwMDAgIWltcG9ydGFudDsgfVxuXG4jbG9hZGluZ193cmFwcGVyIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uc2lkZV9uYXYge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiA1cHg7XG4gIHRvcDogMzAlO1xuICB6LWluZGV4OiA1OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA1NzdweCkge1xuICAgIC5zaWRlX25hdiB7XG4gICAgICB0b3A6IDIwJTsgfSB9XG4gIC5zaWRlX25hdiAuc2lkZV9uYXZfY29udGVudCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gICAgLnNpZGVfbmF2IC5zaWRlX25hdl9jb250ZW50ID4gKjpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XG4gICAgICAuc2lkZV9uYXYgLnNpZGVfbmF2X2NvbnRlbnQgPiAqIGltZyB7XG4gICAgICAgIHdpZHRoOiA1MHB4OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAjYWJvdXRfdXMgLmltZyB7XG4gICAgd2lkdGg6IDU1JTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgI2Fib3V0X3VzIC5jb250ZW50IHtcbiAgICB3aWR0aDogNDUlO1xuICAgIHBhZGRpbmctbGVmdDogNDBweDsgfSB9XG5cbiNhYm91dF91cyAuY29udGVudCBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICNzZXJ2aWNlcyAjc2VjXzEgLnIxIC5pbWcge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgb3JkZXI6IDI7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICNzZXJ2aWNlcyAjc2VjXzEgLnIxIC5jb250ZW50IHtcbiAgICB3aWR0aDogNTAlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7IH0gfVxuXG4jc2VydmljZXMgI3NlY18xIC5yMSAuY29udGVudCBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuXG4jc2VydmljZXMgI3NlY18yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgI3NlcnZpY2VzICNzZWNfMiAucjEgLmltZyB7XG4gICAgICB3aWR0aDogNTAlOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgICNzZXJ2aWNlcyAjc2VjXzIgLnIxIC5jb250ZW50IHtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgICBtYXJnaW4tbGVmdDogLTIwJTtcbiAgICAgIHdpZHRoOiA3MCU7XG4gICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAjc2VydmljZXMgI3NlY18yIC5yMiA+ICoge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDMpOyB9IH1cbiAgI3NlcnZpY2VzICNzZWNfMiAucjIgPiAqLmNvbnRlbnQge1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgb3JkZXI6IDE7IH1cbiAgI3NlcnZpY2VzICNzZWNfMiAucjIgPiAqLmltZyB7XG4gICAgb3JkZXI6IDI7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgICNzZXJ2aWNlcyAjc2VjXzIgLnJwdHIgLmltZyB7XG4gICAgICB3aWR0aDogNTAlOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgICNzZXJ2aWNlcyAjc2VjXzIgLnJwdHIgLmNvbnRlbnQge1xuICAgICAgei1pbmRleDogMjtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMjAlO1xuICAgICAgd2lkdGg6IDcwJTtcbiAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9IH1cblxuLmluZm9ybWF0aW9uLWNvbnRhY3QgLmdvb2dsZV9tYXAgPiAqIHtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmluZm9ybWF0aW9uLWNvbnRhY3QgLmNvbnRhY3RfdXNfY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfSB9XG5cbi5pbmZvcm1hdGlvbi1jb250YWN0IC5jb250YWN0X3VzX2NvbnRhaW5lciA+ICoge1xuICBtYXJnaW4tYm90dG9tOiA0MHB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIC5pbmZvcm1hdGlvbi1jb250YWN0IC5jb250YWN0X3VzX2NvbnRhaW5lciA+ICoge1xuICAgICAgZmxleDogMCAxIGF1dG87IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAuaW5mb3JtYXRpb24tY29udGFjdCAuY29udGFjdF91c19jb250YWluZXIgPiAqLmNvbnRhY3RfaW5mb19tYXAge1xuICAgICAgd2lkdGg6IDUwJTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIC5pbmZvcm1hdGlvbi1jb250YWN0IC5jb250YWN0X3VzX2NvbnRhaW5lciA+ICouY29udGFjdF9pbmZvIHtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7IH0gfVxuICAuaW5mb3JtYXRpb24tY29udGFjdCAuY29udGFjdF91c19jb250YWluZXIgPiAqLmNvbnRhY3RfaW5mbyA+ICo6bm90KC5nZXRfZGlyZWN0aW9uKSBhIHtcbiAgICBjb2xvcjogIzAwMDsgfVxuICAgIC5pbmZvcm1hdGlvbi1jb250YWN0IC5jb250YWN0X3VzX2NvbnRhaW5lciA+ICouY29udGFjdF9pbmZvID4gKjpub3QoLmdldF9kaXJlY3Rpb24pIGE6aG92ZXIge1xuICAgICAgY29sb3I6ICNiZjIwMzE7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgLmluZm9ybWF0aW9uLWNvbnRhY3QgLmNvbnRhY3RfdXNfY29udGFpbmVyID4gKi5jb250YWN0X2Zvcm0ge1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG4uaW5mb3JtYXRpb24tY29udGFjdCAuY29udGFjdF91c19jb250YWluZXIgLmdldF9kaXJlY3Rpb24ge1xuICBtYXJnaW4tdG9wOiAzMHB4OyB9XG4gIC5pbmZvcm1hdGlvbi1jb250YWN0IC5jb250YWN0X3VzX2NvbnRhaW5lciAuZ2V0X2RpcmVjdGlvbiBoNCB7XG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4jaG9tZV9wYWdlICNzZWNfMSB7XG4gIHBhZGRpbmctYm90dG9tOiAwOyB9XG4gICNob21lX3BhZ2UgI3NlY18xIC5pbWdfdmlkZW9fY29udGFpbmVyIHtcbiAgICB6LWluZGV4OiAxOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgICAgI2hvbWVfcGFnZSAjc2VjXzEgLmltZ192aWRlb19jb250YWluZXIge1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICBvcmRlcjogMTsgfSB9XG4gICAgI2hvbWVfcGFnZSAjc2VjXzEgLmltZ192aWRlb19jb250YWluZXIgcCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbiAgI2hvbWVfcGFnZSAjc2VjXzEgLmNvbnRlbnQge1xuICAgIHotaW5kZXg6IDA7XG4gICAgcGFkZGluZzogMjBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgICAjaG9tZV9wYWdlICNzZWNfMSAuY29udGVudCB7XG4gICAgICAgIG9yZGVyOiAyO1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDUwcHg7IH0gfVxuICAgICNob21lX3BhZ2UgI3NlY18xIC5jb250ZW50OjpiZWZvcmUge1xuICAgICAgei1pbmRleDogLTE7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB3aWR0aDogNzBweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlYmViZWI7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTI4MXB4KSB7XG4gICAgICAjaG9tZV9wYWdlICNzZWNfMSAuY29udGVudCAuc2VjX3RpdGxlIHtcbiAgICAgICAgd2lkdGg6IDgwJTsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDE0NDFweCkge1xuICAgICAgI2hvbWVfcGFnZSAjc2VjXzEgLmNvbnRlbnQgLnNlY190aXRsZSB7XG4gICAgICAgIHdpZHRoOiA2MCU7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAgICNob21lX3BhZ2UgI3NlY18xIC5jb250ZW50ID4gcCB7XG4gICAgICAgIG1hcmdpbi10b3A6IC00NXB4O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDg4cHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjgxcHgpIHtcbiAgICAgICNob21lX3BhZ2UgI3NlY18xIC5jb250ZW50ID4gcCB7XG4gICAgICAgIHdpZHRoOiA4MCU7IH0gfVxuXG4jaG9tZV9wYWdlICNzZWNfMiB7XG4gIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7IH1cbiAgI2hvbWVfcGFnZSAjc2VjXzIgLmltZyB7XG4gICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAgICNob21lX3BhZ2UgI3NlY18yIC5pbWcge1xuICAgICAgICB3aWR0aDogNTUlO1xuICAgICAgICBvcmRlcjogMjsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAjaG9tZV9wYWdlICNzZWNfMiAuY29udGVudCB7XG4gICAgICB3aWR0aDogNDUlO1xuICAgICAgcGFkZGluZy10b3A6IDEwMHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogNDBweDsgfSB9XG4gICNob21lX3BhZ2UgI3NlY18yIC5jYXJfdHlwZXMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgI2hvbWVfcGFnZSAjc2VjXzIgLmNhcl90eXBlcyAuaXRlbSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDMwcHggMjBweDtcbiAgICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgICAgbWFyZ2luOiAxMHB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgYm94LXNoYWRvdzogMHB4IDBweCAxMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMSkgIWltcG9ydGFudDsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDU3N3B4KSB7XG4gICAgICAgICNob21lX3BhZ2UgI3NlY18yIC5jYXJfdHlwZXMgLml0ZW0ge1xuICAgICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDIwcHgpOyB9IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjgxcHgpIHtcbiAgICAgICAgI2hvbWVfcGFnZSAjc2VjXzIgLmNhcl90eXBlcyAuaXRlbSB7XG4gICAgICAgICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAzKSAtIDIwcHgpOyB9IH1cbiAgICAjaG9tZV9wYWdlICNzZWNfMiAuY2FyX3R5cGVzIC50aXRsZSB7XG4gICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMCAhaW1wb3J0YW50O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAgICNob21lX3BhZ2UgI3NlY18yIC5jYXJfdHlwZXMgLnRpdGxlIGEge1xuICAgICAgICBjb2xvcjogIzAwMDsgfVxuICAgICAgICAjaG9tZV9wYWdlICNzZWNfMiAuY2FyX3R5cGVzIC50aXRsZSBhOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogI2JmMjAzMTsgfVxuXG4jaG9tZV9wYWdlICNzZWNfMyB7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMGRlZywgI2Y1ZjVmNSAwJSwgI2Y1ZjVmNSA1MCUsICNmZmYgNTAlLCAjZmZmIDEwMCUpOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAjaG9tZV9wYWdlICNzZWNfMyAuaW1nIHtcbiAgICAgIHdpZHRoOiA0NSU7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgI2hvbWVfcGFnZSAjc2VjXzMgLmNvbnRlbnQge1xuICAgICAgd2lkdGg6IDU1JTtcbiAgICAgIHBhZGRpbmctbGVmdDogNDBweDsgfSB9XG4gICNob21lX3BhZ2UgI3NlY18zIC5sc19wZXJpb2RzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxNDQxcHgpIHtcbiAgICAgICNob21lX3BhZ2UgI3NlY18zIC5sc19wZXJpb2RzIHtcbiAgICAgICAgd2lkdGg6IDgwJTsgfSB9XG4gICAgI2hvbWVfcGFnZSAjc2VjXzMgLmxzX3BlcmlvZHMgLml0ZW0ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZzogMzBweCAyMHB4O1xuICAgICAgZmxleDogMCAxIGF1dG87XG4gICAgICBtYXJnaW46IDEwcHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBib3gtc2hhZG93OiAwcHggMHB4IDEwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xKSAhaW1wb3J0YW50OyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNTc3cHgpIHtcbiAgICAgICAgI2hvbWVfcGFnZSAjc2VjXzMgLmxzX3BlcmlvZHMgLml0ZW0ge1xuICAgICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDIwcHgpOyB9IH1cbiAgICAjaG9tZV9wYWdlICNzZWNfMyAubHNfcGVyaW9kcyAudGl0bGUge1xuICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDAgIWltcG9ydGFudDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICAjaG9tZV9wYWdlICNzZWNfMyAubHNfcGVyaW9kcyAudGl0bGUgYSB7XG4gICAgICAgIGNvbG9yOiAjMDAwOyB9XG4gICAgICAgICNob21lX3BhZ2UgI3NlY18zIC5sc19wZXJpb2RzIC50aXRsZSBhOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogI2JmMjAzMTsgfVxuXG4uY29tbW9uLWhvbWUgLmZlYXR1cmVkLW1vZHVsZSB7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1OyB9XG4gIC5jb21tb24taG9tZSAuZmVhdHVyZWQtbW9kdWxlID4gLmZlYXR1cmVkIHtcbiAgICBwYWRkaW5nOiAwOyB9XG4gICAgLmNvbW1vbi1ob21lIC5mZWF0dXJlZC1tb2R1bGUgPiAuZmVhdHVyZWQgPiAqOmZpcnN0LWNoaWxkIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICAgIC5jb21tb24taG9tZSAuZmVhdHVyZWQtbW9kdWxlID4gLmZlYXR1cmVkID4gKjpmaXJzdC1jaGlsZCAuc2xpY2stbGlzdCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBvcmRlcjogMTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDsgfVxuICAgICAgLmNvbW1vbi1ob21lIC5mZWF0dXJlZC1tb2R1bGUgPiAuZmVhdHVyZWQgPiAqOmZpcnN0LWNoaWxkIC5zbGljay1uYXYge1xuICAgICAgICBvcmRlcjogMjtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgICAgIC5jb21tb24taG9tZSAuZmVhdHVyZWQtbW9kdWxlID4gLmZlYXR1cmVkID4gKjpmaXJzdC1jaGlsZCAuc2xpY2stbmF2LnByZXYge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogNSU7IH1cbiAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNTc3cHgpIHtcbiAgICAgICAgICAgIC5jb21tb24taG9tZSAuZmVhdHVyZWQtbW9kdWxlID4gLmZlYXR1cmVkID4gKjpmaXJzdC1jaGlsZCAuc2xpY2stbmF2LnByZXYge1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDI1JTsgfSB9XG4gICAgICAgIC5jb21tb24taG9tZSAuZmVhdHVyZWQtbW9kdWxlID4gLmZlYXR1cmVkID4gKjpmaXJzdC1jaGlsZCAuc2xpY2stbmF2Lm5leHQge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1JTsgfVxuICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA1NzdweCkge1xuICAgICAgICAgICAgLmNvbW1vbi1ob21lIC5mZWF0dXJlZC1tb2R1bGUgPiAuZmVhdHVyZWQgPiAqOmZpcnN0LWNoaWxkIC5zbGljay1uYXYubmV4dCB7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyNSU7IH0gfVxuICAgICAgLmNvbW1vbi1ob21lIC5mZWF0dXJlZC1tb2R1bGUgPiAuZmVhdHVyZWQgPiAqOmZpcnN0LWNoaWxkIC5pY29uX2NvbiB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTlhOWE5O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogMTBweCAyMHB4OyB9XG4gICAgICAgIC5jb21tb24taG9tZSAuZmVhdHVyZWQtbW9kdWxlID4gLmZlYXR1cmVkID4gKjpmaXJzdC1jaGlsZCAuaWNvbl9jb24gaSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxOHB4OyB9XG4gIC5jb21tb24taG9tZSAuZmVhdHVyZWQtbW9kdWxlIC5idG5fY29uIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLXRvcDogMjBweDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA1NzdweCkge1xuICAgICAgLmNvbW1vbi1ob21lIC5mZWF0dXJlZC1tb2R1bGUgLmJ0bl9jb24ge1xuICAgICAgICBtYXJnaW4tdG9wOiAtNDJweDsgfSB9XG4gIC5jb21tb24taG9tZSAuZmVhdHVyZWQtbW9kdWxlIC5wcm9kdWN0LWJsb2NrIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1O1xuICAgIHBhZGRpbmctYm90dG9tOiAwOyB9XG4gICAgLmNvbW1vbi1ob21lIC5mZWF0dXJlZC1tb2R1bGUgLnByb2R1Y3QtYmxvY2sgLnByb2R1Y3QtZGV0YWlscyB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4iLCJAaW1wb3J0IHVybCgnaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PU11bGk6NDAwLDYwMCw3MDAsODAwJmRpc3BsYXk9c3dhcCcpO1xyXG5cclxuLy8gQGZvbnQtZmFjZSB7XHJcbi8vICAgZm9udC1mYW1pbHk6ICdIZWx2ZXRpY2EnO1xyXG4vLyAgIHNyYzogdXJsKCdmb250cy9IZWx2ZXRpY2EuZW90Jyk7XHJcbi8vICAgc3JjOiB1cmwoJ2ZvbnRzL0hlbHZldGljYS5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxyXG4vLyAgICAgdXJsKCdmb250cy9IZWx2ZXRpY2Eud29mZicpIGZvcm1hdCgnd29mZicpO1xyXG4vLyAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbi8vICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4vLyB9IiwiQGtleWZyYW1lcyBzcGluIHtcclxuICAwJSB7XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZmxvYXRpbmcge1xyXG4gIGZyb20ge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMHB4KTtcclxuICB9XHJcblxyXG4gIDY1JSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAxNXB4KTtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0wcHgpO1xyXG4gIH1cclxufSIsImJvZHkge1xyXG4gIGNvbG9yOiAkdHh0O1xyXG4gIGxpbmUtaGVpZ2h0OiAyZW07XHJcbiAgZm9udC1mYW1pbHk6ICdNdWxpJywgc2Fucy1zZXJpZiAhaW1wb3J0YW50O1xyXG4gIEBpbmNsdWRlIGZyO1xyXG4gIG92ZXJmbG93LXg6IGhpZGRlbiAhaW1wb3J0YW50O1xyXG5cclxuICAmLmluZm9ybWF0aW9uLWluZm9ybWF0aW9uIHtcclxuXHJcbiAgICAmOm5vdCguaWlkLTYpOm5vdCguaWlkLTMpOm5vdCguaWlkLTUpIHtcclxuICAgICAgPi5jb250YWluZXIge1xyXG4gICAgICAgID4ucm93IHtcclxuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICA+I2Zvb3Rlci1hcmVhIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmOm5vdCguY29tbW9uLWhvbWUpIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHdpZHRoOiAzcHg7XHJcbiAgICAgIGhlaWdodDogNDAlO1xyXG4gICAgICBsZWZ0OiAwO1xyXG4gICAgICB0b3A6IGNhbGMoNTAlIC0gMTUlKTtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5iIHtcclxuICBtYXJnaW4tbGVmdDogNXB4ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5jb250YWluZXIge1xyXG4gIHdpZHRoOiA4MCU7XHJcblxyXG4gIEBpbmNsdWRlIHRvKGxhcHgpIHtcclxuICAgIHdpZHRoOiA5MCU7XHJcbiAgICBtaW4td2lkdGg6IGF1dG87XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSB0byhzbXgpIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxufVxyXG5cclxuOjpzZWxlY3Rpb24ge1xyXG4gIGNvbG9yOiAkdztcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGQ7XHJcbn1cclxuXHJcbmEge1xyXG4gIEBpbmNsdWRlIHQ7XHJcbn1cclxuXHJcbmltZyB7XHJcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XHJcbn1cclxuXHJcbmgxLFxyXG5oMixcclxuaDMsXHJcbmg0LFxyXG5oNSxcclxuaDYge1xyXG4gIGNvbG9yOiAkYjtcclxuICBAaW5jbHVkZSBmYjtcclxufVxyXG5cclxuLnNlYyB7XHJcbiAgcGFkZGluZzogNzBweCAwO1xyXG5cclxuICBAaW5jbHVkZSB0byh0YWIpIHtcclxuICAgIHBhZGRpbmc6IDEwMHB4IDA7XHJcbiAgfVxyXG5cclxuICAmdG9wIHtcclxuICAgIHBhZGRpbmc6IDIwcHggMCA3MHB4O1xyXG5cclxuICAgIEBpbmNsdWRlIHRvKHRhYikge1xyXG4gICAgICBwYWRkaW5nOiA0MHB4IDAgMTAwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmX3RpdGxlIHtcclxuXHJcbiAgICA+KiB7XHJcbiAgICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweCAhaW1wb3J0YW50O1xyXG4gICAgICBmb250LXNpemU6IDI0cHg7XHJcblxyXG4gICAgICBAaW5jbHVkZSB0byhtb2IpIHtcclxuICAgICAgICBmb250LXNpemU6IDMwcHg7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkcyAhaW1wb3J0YW50O1xyXG4gICAgICAgIGhlaWdodDogM3B4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgbWFyZ2luOiAyMHB4IDAgMCAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5jZW50ZXJfdGl0bGUge1xyXG4gICAgICA+KiB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgIG1hcmdpbjogMjBweCBhdXRvIDAgYXV0byAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuaDIge1xyXG4gICY6OmFmdGVyIHtcclxuICAgIGJhY2tncm91bmQ6ICRzICFpbXBvcnRhbnQ7XHJcbiAgICBoZWlnaHQ6IDNweCAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG5cclxuLnB0IHtcclxuICAmMSB7XHJcbiAgICBwYWRkaW5nLXRvcDogMTBweCAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiAgJjIge1xyXG4gICAgcGFkZGluZy10b3A6IDIwcHggIWltcG9ydGFudDtcclxuICB9XHJcblxyXG4gICYzIHtcclxuICAgIHBhZGRpbmctdG9wOiAzMHB4ICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG5cclxuICAmNCB7XHJcbiAgICBwYWRkaW5nLXRvcDogNDBweCAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiAgJjUge1xyXG4gICAgcGFkZGluZy10b3A6IDUwcHggIWltcG9ydGFudDtcclxuICB9XHJcblxyXG4gICY2IHtcclxuICAgIHBhZGRpbmctdG9wOiA2MHB4ICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG5cclxuICAmNyB7XHJcbiAgICBwYWRkaW5nLXRvcDogNzBweCAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiAgJjgge1xyXG4gICAgcGFkZGluZy10b3A6IDgwcHggIWltcG9ydGFudDtcclxuICB9XHJcblxyXG4gICY5IHtcclxuICAgIHBhZGRpbmctdG9wOiA5MHB4ICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG5cclxuICAmMTAge1xyXG4gICAgcGFkZGluZy10b3A6IDcwcHggIWltcG9ydGFudDtcclxuXHJcbiAgICBAaW5jbHVkZSB0byh0YWIpIHtcclxuICAgICAgcGFkZGluZy10b3A6IDEwMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxufVxyXG5cclxuLnJvdGF0ZSB7XHJcblxyXG4gIEBpbmNsdWRlIHRvKHNtKSB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgfVxyXG5cclxuICA+KiB7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IDVweDtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHBhZGRpbmc6IDA7XHJcblxyXG4gICAgQGluY2x1ZGUgdG8oc20pIHtcclxuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSB0byhzbXgpIHtcclxuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYucmwge1xyXG4gICAgQGluY2x1ZGUgdG8oc20pIHtcclxuICAgICAgdG9wOiAwO1xyXG4gICAgICByaWdodDogY2FsYygxMDAlICsgMzBweCk7XHJcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDI3MGRlZyk7XHJcbiAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IHRvcDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYucnIge1xyXG4gICAgQGluY2x1ZGUgdG8oc20pIHtcclxuICAgICAgdG9wOiAwO1xyXG4gICAgICBsZWZ0OiBjYWxjKDEwMCUgKyAzMHB4KTtcclxuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xyXG4gICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcDtcclxuICAgIH1cclxuICB9XHJcblxyXG59XHJcblxyXG4uaW1nIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgei1pbmRleDogMTtcclxuXHJcbiAgaW1nIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgdG8obGFweCkge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB9XHJcbn0iLCIkdzogI2ZmZjtcclxuJGI6ICMwMDA7XHJcbiRwOiAjYmYyMDMxO1xyXG4kcGQ6ICNhNDE3MjY7XHJcbiRzOiAjMDA1NGE2O1xyXG4kc2Q6IGRhcmtlbigkcywgMTUlKTtcclxuJHQ6ICNlOGM2OGQ7XHJcbiRzdGFyOiAjZmJiYTAwO1xyXG5cclxuJHR4dDogIzAwMDtcclxuJHRyYW5zOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcclxuJGJ4c2hkdzogMHB4IDBweCAxMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMSkgIWltcG9ydGFudDtcclxuJGxzOiAxcHg7XHJcblxyXG4kcmRzOiAwO1xyXG4kcmRzYnRuOiAwO1xyXG4kYmRyOiAjZDdkN2Q3O1xyXG4kYmc6ICNmNWY1ZjU7XHJcblxyXG4kZnI6IDQwMCAhaW1wb3J0YW50O1xyXG4kZnNiOiA2MDAgIWltcG9ydGFudDtcclxuJGZiOiA3MDAgIWltcG9ydGFudDtcclxuJGZlYjogODAwICFpbXBvcnRhbnQ7XHJcblxyXG4kZGVzbGc6IDE5MjBweDtcclxuJGRlc21kOiAxNDQwcHg7XHJcbiRkZXM6IDEyODBweDtcclxuJGxhcDogMTAyNHB4O1xyXG4kdGFiOiA5OTJweDtcclxuJG1vYjogNzY4cHg7XHJcbiRzbTogNTc2cHg7IiwiQG1peGluIHRvKCRtZWRpYSkge1xyXG4gIEBpZiAkbWVkaWE9PWRlc2xnIHtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkZGVzbGcgKyAxcHgpIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAaWYgJG1lZGlhPT1kZXNsZ3gge1xyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRkZXNsZykge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9XHJcblxyXG5cclxuICBAZWxzZSBpZiAkbWVkaWE9PWRlc21kIHtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkZGVzbWQgKyAxcHgpIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAZWxzZSBpZiAkbWVkaWE9PWRlc21keCB7XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJGRlc21kKSB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQGVsc2UgaWYgJG1lZGlhPT1kZXMge1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRkZXMgKyAxcHgpIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAZWxzZSBpZiAkbWVkaWE9PWRlc3gge1xyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRkZXMpIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAZWxzZSBpZiAkbWVkaWE9PWxhcCB7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJGxhcCArIDFweCkge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBlbHNlIGlmICRtZWRpYT09bGFweCB7XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJGxhcCkge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBlbHNlIGlmICRtZWRpYT09bW9ibGFwIHtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbW9iKSBhbmQgKG1heC13aWR0aDogJGxhcCkge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBlbHNlIGlmICRtZWRpYT09dGFiIHtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdGFiKSB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQGVsc2UgaWYgJG1lZGlhPT10YWJ4IHtcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkdGFiKSB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQGVsc2UgaWYgJG1lZGlhPT10YWJvIHtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAzMjBweCkgYW5kIChtYXgtd2lkdGg6ICR0YWIpIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAZWxzZSBpZiAkbWVkaWE9PW1vYiB7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1vYiArIDFweCkge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBlbHNlIGlmICRtZWRpYT09bW9ieCB7XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1vYikge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBlbHNlIGlmICRtZWRpYT09bW9ibyB7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMzIwcHgpIGFuZCAobWF4LXdpZHRoOiAkbW9iKSB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQGVsc2UgaWYgJG1lZGlhPT1zbSB7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNtICsgMXB4KSB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQGVsc2UgaWYgJG1lZGlhPT1zbXgge1xyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzbSkge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBlbHNlIGlmICRtZWRpYT09c21vIHtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAzMjBweCkgYW5kIChtYXgtd2lkdGg6ICRzbSAtIDFweCkge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBlbHNlIHtcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWVkaWEgKyBweCkge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiB0IHtcclxuICB0cmFuc2l0aW9uOiAkdHJhbnM7XHJcbn1cclxuXHJcbkBtaXhpbiBicyB7XHJcbiAgYm94LXNoYWRvdzogJGJ4c2hkdztcclxufVxyXG5cclxuQG1peGluIHNwaW4ge1xyXG4gIGFuaW1hdGlvbjogc3BpbiAuMnMgbGluZWFyO1xyXG59XHJcblxyXG5AbWl4aW4gdmEge1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG5cclxuQG1peGluIGhhIHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuXHJcbkBtaXhpbiBmciB7XHJcbiAgZm9udC13ZWlnaHQ6ICRmcjtcclxufVxyXG5cclxuQG1peGluIGZzYiB7XHJcbiAgZm9udC13ZWlnaHQ6ICRmc2I7XHJcbn1cclxuXHJcbkBtaXhpbiBmYiB7XHJcbiAgZm9udC13ZWlnaHQ6ICRmYjtcclxufVxyXG5cclxuQG1peGluIGZlYiB7XHJcbiAgZm9udC13ZWlnaHQ6ICRmZWI7XHJcbn0iLCIuZngge1xyXG4gICZsIHtcclxuICAgIEBpbmNsdWRlIHRvKGxhcCkge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJmkge1xyXG4gICAgQGluY2x1ZGUgdG8obGFwKSB7XHJcbiAgICAgIGZsZXg6IDAgMSBhdXRvO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmFpYyB7XHJcbiAgQGluY2x1ZGUgdG8obGFwKSB7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIH1cclxufSIsIi5maXhlZC1oZWFkZXIge1xyXG4gIGxlZnQ6IDAgIWltcG9ydGFudDtcclxuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMjQ2ZGVnLCByZ2JhKCRwLCAxKSAwJSwgcmdiYSgkcCwgMSkgMzglLCByZ2JhKCR3LCAxKSAzOCUsIHJnYmEoJHcsIDEpIDEwMCUpO1xyXG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcclxuXHJcbiAgQGluY2x1ZGUgdG8oc20pIHtcclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgyNDZkZWcsIHJnYmEoJHAsIDEpIDAlLCByZ2JhKCRwLCAxKSA2MCUsIHJnYmEoJHcsIDEpIDYwJSwgcmdiYSgkdywgMSkgMTAwJSk7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSB0byh0YWIpIHtcclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgyNDZkZWcsIHJnYmEoJHAsIDEpIDAlLCByZ2JhKCRwLCAxKSA3MSUsIHJnYmEoJHcsIDEpIDcxJSwgcmdiYSgkdywgMSkgMTAwJSk7XHJcbiAgfVxyXG5cclxuXHJcbiAgPi5jb250YWluZXIge1xyXG4gICAgcGFkZGluZzogMCAxNXB4O1xyXG4gICAgd2lkdGg6IDkwJTtcclxuICB9XHJcblxyXG4gIC5oZWFkZXItY29udGFpbmVyIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICA+KiB7XHJcbiAgICAgIGZsZXg6IDAgMSBhdXRvO1xyXG4gICAgfVxyXG5cclxuICAgIC8vICNjYXJ0IHtcclxuXHJcbiAgICAvLyAgICNjYXJ0X2Ryb3Bkb3duX2ljb24ge1xyXG5cclxuICAgIC8vICAgICA+LmJhZGdlIHtcclxuICAgIC8vICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAvLyAgICAgfVxyXG4gICAgLy8gICB9XHJcbiAgICAvLyB9XHJcbiAgfVxyXG5cclxuICAuaGVhZGVyLXRvcCB7XHJcbiAgICBvcmRlcjogMztcclxuXHJcbiAgICAuZmEge1xyXG4gICAgICBjb2xvcjogJHc7XHJcbiAgICAgIEBpbmNsdWRlIHQ7XHJcblxyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICBvcGFjaXR5OiAuNTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5kcm9wZG93bi1tZW51IHtcclxuICAgICAgYSB7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgIGNvbG9yOiAkcztcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuYmFkZ2Uge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGQgIWltcG9ydGFudDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5oZWFkZXItbG9nbyB7XHJcbiAgICBvcmRlcjogMTtcclxuICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICB9XHJcblxyXG4gIC5oZWFkZXItbW9iaWxlLWxpbmtzIHtcclxuICAgIG9yZGVyOiAyO1xyXG4gIH1cclxuXHJcbiAgLmhlYWRlci1tZW51IHtcclxuICAgIG9yZGVyOiAyO1xyXG5cclxuICAgIEBpbmNsdWRlIHRvKGxhcCkge1xyXG4gICAgICBmbGV4OiAxO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICAjbWFpbi1tZW51IHtcclxuXHJcbiAgICAgIC5zdWItYXJyb3cge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgID5saSB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgICAgID51bCB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICA+YSB7XHJcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogJGxzO1xyXG4gICAgICAgICAgY29sb3I6ICR3O1xyXG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgIHBhZGRpbmc6IDUwcHggMTBweCAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICAgIEBpbmNsdWRlIHRvKGRlc3gpIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxMXB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDVweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1cHggIWltcG9ydGFudDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgICAgICAgQGluY2x1ZGUgdDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuYWN0aXZlIHtcclxuXHJcbiAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcztcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbiNtb2JpbGVOYXYge1xyXG4gIGNvbG9yOiAkdztcclxufVxyXG5cclxuI3NpZHIge1xyXG4gIGJhY2tncm91bmQ6ICRwO1xyXG5cclxuICAuaGVhZGVyLW1vYmlsZSB7XHJcblxyXG4gICAgLm1vYmlsZS1hY2NvdW50IHtcclxuICAgICAgYm9yZGVyLWNvbG9yOiAkcGQ7XHJcbiAgICB9XHJcblxyXG4gICAgYSB7XHJcbiAgICAgIGxldHRlci1zcGFjaW5nOiAkbHM7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTVweDtcclxuICAgICAgY29sb3I6ICR3O1xyXG4gICAgICBib3JkZXItY29sb3I6ICRwZDtcclxuXHJcbiAgICAgIGkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICBjb2xvcjogJHc7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5tb2JpbGUtc2VhcmNoIHtcclxuXHJcbiAgICAuc2VhcmNoLWN1c3RvbSB7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLnNlYXJjaC1ib3gge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGQ7XHJcbiAgICAgIGJvcmRlci1jb2xvcjogJHBkO1xyXG5cclxuICAgICAgaW5wdXQge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwZDtcclxuICAgICAgICBjb2xvcjogcmdiYSgkdywgLjgpO1xyXG5cclxuICAgICAgICAmOjpwbGFjZWhvbGRlciB7XHJcbiAgICAgICAgICBjb2xvcjogcmdiYSgkdywgLjUpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLnNlYXJjaC1idG4ge1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5mYS1zZWFyY2gge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICBjb2xvcjogJHc7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgIEBpbmNsdWRlIHQ7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgY29sb3I6ICRiZHI7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuY2QtYWNjb3JkaW9uLW1lbnUge1xyXG5cclxuICAgIGxpIHtcclxuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRwZDtcclxuXHJcbiAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRwZDtcclxuICAgICAgfVxyXG5cclxuICAgICAgJi5oYXMtY2hpbGRyZW4ge1xyXG5cclxuICAgICAgICBsYWJlbCB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdWwge1xyXG4gICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgYSB7XHJcbiAgICAgICAgY29sb3I6ICR3O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICRwO1xyXG4gICAgICB9XHJcblxyXG5cclxuICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgID5hIHtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgJi5oYXMtY2hpbGRyZW4ge1xyXG5cclxuICAgICAgICBsYWJlbCB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgY29sb3I6ICR0eHQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICA+dWwge1xyXG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn0iLCIjVG9Ub3Age1xyXG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxufVxyXG5cclxuI2Zvb3Rlci1hcmVhIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGQ7XHJcblxyXG4gIGZvb3RlciB7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgcGFkZGluZzogNTBweCAwO1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDI0NmRlZywgcmdiYSgkcGQsIDEpIDAlLCByZ2JhKCRwZCwgMSkgNjUlLCByZ2JhKCRwLCAxKSA2NSUsIHJnYmEoJHAsIDEpIDEwMCUpO1xyXG4gIH1cclxuXHJcbiAgYSB7XHJcbiAgICBjb2xvcjogJHc7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIG9wYWNpdHk6IC41O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmZvb3Rlci11cHBlci1jb250ZXQge1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG5cclxuICAgIEBpbmNsdWRlIHRvKHNteCkge1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgfVxyXG5cclxuICAgID4qIHtcclxuICAgICAgZmxleDogMCAxIGF1dG87XHJcblxyXG4gICAgICBAaW5jbHVkZSB0byhzbSkge1xyXG4gICAgICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMykgLSAyMHB4KTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcclxuICAgICAgICBAaW5jbHVkZSB0byhzbXgpIHtcclxuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG5cclxuICAgIC5mb290ZXItY29udGFjdC1pbmZvIHtcclxuICAgICAgb3JkZXI6IDI7XHJcbiAgICB9XHJcblxyXG4gICAgLmZvb3Rlci1jb250YWN0LWxpbmtzIHtcclxuICAgICAgb3JkZXI6IDE7XHJcblxyXG4gICAgICBAaW5jbHVkZSB0byhzbXgpIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB1bCB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5mb290ZXItc29jaWFsLWluZm8ge1xyXG4gICAgICBvcmRlcjogMztcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cclxuICAgICAgLmZvb3Rlci1zb2NpYWwtaWNvbnMge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuY29weXJpZ2h0IHtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogYXV0bztcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogaW5pdGlhbDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgdG8oc214KSB7XHJcbiAgICAgICAgICBtYXJnaW4tdG9wOiA1MHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59IiwiLmJyZWFkY3J1bWIge1xyXG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlcjogMDtcclxuICBwYWRkaW5nOiAwO1xyXG4gIG1hcmdpbjogNzBweCAwIDIwcHg7XHJcblxyXG4gIEBpbmNsdWRlIHRvKHRhYikge1xyXG4gICAgbWFyZ2luOiA3MHB4IDAgMDtcclxuICB9XHJcblxyXG4gIGxpIHtcclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgY29udGVudDogJy8nO1xyXG4gICAgICBjb2xvcjogJGI7XHJcbiAgICB9XHJcblxyXG4gICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgIH1cclxuXHJcbiAgICBhIHtcclxuICAgICAgY29sb3I6ICRiO1xyXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICBmb250LXNpemU6IDE2cHg7XHJcblxyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICBjb2xvcjogJHA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5wcm9kdWN0LWNhdGVnb3J5IHtcclxuICAuYnJlYWRjcnVtYiB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xyXG5cclxuICAgID5saSB7XHJcbiAgICAgICY6bnRoLWNoaWxkKDIpIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4ucHJvZHVjdC1wcm9kdWN0IHtcclxuICAuYnJlYWRjcnVtYiB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xyXG4gIH1cclxufVxyXG5cclxuLmluZm9ybWF0aW9uLWNvbnRhY3Qge1xyXG4gIC5icmVhZGNydW1iIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XHJcbiAgfVxyXG59IiwiLnNsaWRlci1zbGlkZXNob3ctZGVzY3JpcHRpb24tdGV4dHMge1xyXG5cclxuICA+W2NsYXNzXj1zbGlkZXNob3ctdGV4dC1dIHtcclxuICAgIGNvbG9yOiAkdyAhaW1wb3J0YW50O1xyXG4gICAgZm9udC1zaXplOiAyMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgdGV4dC1zaGFkb3c6IDBweCAwcHggMTBweCAjMDAwO1xyXG4gICAgQGluY2x1ZGUgZmI7XHJcblxyXG4gICAgQGluY2x1ZGUgdG8obGFwKSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMzRweCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnNsaWRlci1zbGlkZXNob3ctZGVzY3JpcHRpb24tbGluayB7XHJcblxyXG4gICAgLmJ0biB7XHJcbiAgICAgIGNvbG9yOiAkdyAhaW1wb3J0YW50O1xyXG4gICAgICBib3JkZXItY29sb3I6ICR3ICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICBib3JkZXItY29sb3I6ICRwICFpbXBvcnRhbnQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5vd2wtbmF2IHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgYm90dG9tOiAxMCU7XHJcbiAgcmlnaHQ6IDEwJTtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIHotaW5kZXg6IDI7XHJcblxyXG4gIEBpbmNsdWRlIHRvKGxhcHgpIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG5cclxuICA+KiB7XHJcbiAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgcG9zaXRpb246IGluaXRpYWw7XHJcbiAgfVxyXG5cclxuICAuYXJyb3dzIHtcclxuICAgIHdpZHRoOiA1MHB4O1xyXG4gICAgaGVpZ2h0OiA1MHB4O1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGNvbG9yOiAkdztcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGIsIDAuNSk7XHJcbiAgICBtYXJnaW46IDNweDtcclxuXHJcbiAgICBpIHtcclxuICAgICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLm93bC1wcmV2IHtcclxuICAgIG9yZGVyOiAxO1xyXG4gIH1cclxuXHJcbiAgLm93bC1uZXh0IHtcclxuICAgIG9yZGVyOiAyO1xyXG4gIH1cclxufVxyXG5cclxuLnNsaWRlci1kb3RzIHtcclxuICBwYWRkaW5nOiAwcHggNDdweDtcclxuICBib3R0b206IDEwJTtcclxuICByaWdodDogMDtcclxuXHJcbiAgLm93bC1kb3Qge1xyXG4gICAgd2lkdGg6IDM1cHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XHJcbiAgICBoZWlnaHQ6IDVweCAhaW1wb3J0YW50O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHcgIWltcG9ydGFudDtcclxuICAgIEBpbmNsdWRlIHQ7XHJcblxyXG4gICAgQGluY2x1ZGUgdG8oc20pIHtcclxuICAgICAgd2lkdGg6IDYwcHggIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59IiwiYSB7XHJcbiAgY29sb3I6ICRwO1xyXG59XHJcblxyXG5idXR0b24ge1xyXG4gIEBpbmNsdWRlIHQ7XHJcbn1cclxuXHJcbi5idG4ge1xyXG4gIGJvcmRlci1yYWRpdXM6ICRyZHM7XHJcbiAgQGluY2x1ZGUgdDtcclxuXHJcbiAgJi5idG4tcHJpbWFyeSxcclxuICAmLmJ0bi1kZWZhdWx0IHtcclxuICAgIGNvbG9yOiAkYiAhaW1wb3J0YW50O1xyXG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuICAgIGJvcmRlcjogMnB4IHNvbGlkICRiICFpbXBvcnRhbnQ7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgei1pbmRleDogMTtcclxuXHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBjb250ZW50OiAnJztcclxuICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgICB3aWR0aDogMTUwJTtcclxuICAgICAgYmFja2dyb3VuZDogJHAgIWltcG9ydGFudDtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDUwJTtcclxuICAgICAgbGVmdDogNTAlO1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoNDVkZWcpO1xyXG4gICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgQGluY2x1ZGUgdDtcclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgY29sb3I6ICR3ICFpbXBvcnRhbnQ7XHJcbiAgICAgIGJvcmRlci1jb2xvcjogJHAgIWltcG9ydGFudDtcclxuXHJcbiAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgaGVpZ2h0OiA0NTAlO1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICRwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyAmLmJ0bi1kZWZhdWx0IHtcclxuICAvLyAgICY6bm90KCNmaWx0ZXJfZ3JvdXBfdGlnZ2VyX29wZW4pIHtcclxuICAvLyAgICAgQGluY2x1ZGUgdG8oc214KSB7XHJcbiAgLy8gICAgICAgbWluLXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgLy8gICAgIH1cclxuICAvLyAgIH1cclxuICAvLyB9XHJcblxyXG4gICY6Zm9jdXMge1xyXG4gICAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiAgJi5idG4tbnVtYmVyIHtcclxuICAgIGJvcmRlci13aWR0aDogMXB4ICFpbXBvcnRhbnQ7XHJcbiAgICBmb250LXNpemU6IDEycHggIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuXHJcblxyXG4jYnV0dG9uLWxvZ2luIHtcclxuICBib3JkZXItd2lkdGg6IDFweCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4jYnV0dG9uLWNvbmZpcm0ge1xyXG5cclxuICAmOmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRwICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcblxyXG4jZmlsdGVyX2dyb3VwX3RpZ2dlcl9vcGVuIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcCAhaW1wb3J0YW50O1xyXG4gIGJvcmRlci1jb2xvcjogJHAgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmNhcnQtZG9ycGRvd24tZm9vdGVyIHtcclxuXHJcbiAgYSB7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4ubGFiZWwtcHJpbWFyeSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJHAgIWltcG9ydGFudDtcclxufVxyXG5cclxuLnN3YWwyLWNvbmZpcm0ge1xyXG4gIGNvbG9yOiAjZmZmO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRwICFpbXBvcnRhbnQ7XHJcbiAgYm9yZGVyOiAkcCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4jcXVpY2tjaGVja291dC1iYWNrIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcztcclxuICBib3JkZXItY29sb3I6ICRzO1xyXG5cclxuICAmOmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRwO1xyXG4gICAgYm9yZGVyLWNvbG9yOiAkcDtcclxuICB9XHJcbn1cclxuXHJcbnNwYW4ubGFiZWwub3V0LW9mLXN0b2NrIHtcclxuICBmb250LXNpemU6IDE0cHg7XHJcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbCAhaW1wb3J0YW50O1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBtaW4td2lkdGg6IDE3MHB4O1xyXG4gIHBhZGRpbmc6IDE2cHggMTRweDtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIGJvcmRlci1yYWRpdXM6ICRyZHM7XHJcblxyXG4gIEBpbmNsdWRlIHRvKHNteCkge1xyXG4gICAgbWluLXdpZHRoOiAxMDAlO1xyXG4gIH1cclxufSIsImlucHV0LFxyXG50ZXh0YXJlYSB7XHJcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xyXG4gIG91dGxpbmU6IG5vbmU7XHJcbiAgQGluY2x1ZGUgdDtcclxuXHJcblxyXG4gICY6bm90KFtuYW1lPXNlYXJjaF0pIHtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICRiZHIgIWltcG9ydGFudDtcclxuICB9XHJcblxyXG4gICY6Zm9jdXMge1xyXG4gICAgb3V0bGluZTogbm9uZTtcclxuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIGJvcmRlci1jb2xvcjogJGIgIWltcG9ydGFudDtcclxuICB9XHJcblxyXG4gICY6Oi1tcy1jbGVhciB7XHJcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcblxyXG5zZWxlY3Qge1xyXG4gIHBhZGRpbmc6IDEwcHggIWltcG9ydGFudDtcclxuICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcclxuICBib3JkZXI6IDFweCBzb2xpZCAkYmRyICFpbXBvcnRhbnQ7XHJcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xyXG4gIGFwcGVhcmFuY2U6IG5vbmUgIWltcG9ydGFudDtcclxuXHJcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCB0cmFuc3BhcmVudCA1MCUsICMwMDAgNTAlKSwgbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzAwMCA1MCUsIHRyYW5zcGFyZW50IDUwJSkgIWltcG9ydGFudDtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjYWxjKDEwMCUgLSAxNXB4KSBjYWxjKDFlbSArIDZweCksIGNhbGMoMTAwJSAtIDEwcHgpIGNhbGMoMWVtICsgNnB4KSAhaW1wb3J0YW50O1xyXG4gIGJhY2tncm91bmQtc2l6ZTogNXB4IDVweCwgNXB4IDVweCAhaW1wb3J0YW50O1xyXG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQgIWltcG9ydGFudDtcclxuXHJcbiAgJjo6LW1zLWV4cGFuZCB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuXHJcbiAgJjpmb2N1cyB7XHJcbiAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgYm9yZGVyLWNvbG9yOiAkYiAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG5cclxuLy9yZWNhcHRjaGFcclxuI2dvb2dsZV9yZWNhcHRjaGEge1xyXG4gIHRyYW5zZm9ybTogaW5oZXJpdDtcclxuICB0cmFuc2Zvcm0tb3JpZ2luOiBub25lO1xyXG4gIG1hcmdpbi1ib3R0b206IDE1cHggIWltcG9ydGFudDtcclxuICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xyXG5cclxuICBAaW5jbHVkZSB0byhtb2IpIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuXHJcbi5nLXJlY2FwdGNoYSB7XHJcblxyXG4gIHRyYW5zZm9ybTogc2NhbGUoMC43KTtcclxuICB0cmFuc2Zvcm0tb3JpZ2luOiAwO1xyXG5cclxuICBAaW5jbHVkZSB0byhtb2J4KSB7XHJcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XHJcbiAgfVxyXG59XHJcblxyXG4uZm9ybS1pdGVtIHtcclxuXHJcbiAgLnRpdGxlIHtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDVweDtcclxuICB9XHJcblxyXG4gIC50ZXh0LWRhbmdlciB7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDFweDtcclxuICAgIG1hcmdpbi10b3A6IDVweDtcclxuICAgIGZvbnQtc2l6ZTogMTFweDtcclxuICB9XHJcblxyXG4gIC5yYXRpbmcge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgLnJhZGlvYm94IHtcclxuICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgIH1cclxuXHJcbiAgICAucmFkaW9tYXJrIHtcclxuICAgICAgbWFyZ2luOiA1cHggIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICBzcGFuIHtcclxuXHJcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuaXRlbXM6bm90KC5mb3JtLWZvb3Rlcikge1xyXG4gICAgQGluY2x1ZGUgdG8obW9iKSB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIH1cclxuXHJcbiAgICA+Lml0ZW0ge1xyXG4gICAgICBAaW5jbHVkZSB0byhtb2IpIHtcclxuICAgICAgICBmbGV4OiAwIDEgYXV0bztcclxuICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSAxMHB4KTtcclxuICAgICAgfVxyXG5cclxuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICY6bm90KC5pdGVtcykge1xyXG4gICAgPi5pdGVtIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuZm9ybS1mb290ZXIge1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblxyXG4gICAgQGluY2x1ZGUgdG8obW9ieCkge1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc2VsZWN0IHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbGluZS1oZWlnaHQ6IDFlbTtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNhbGMoMTAwJSAtIDE1cHgpIDFlbSwgY2FsYygxMDAlIC0gMTBweCkgMWVtICFpbXBvcnRhbnQ7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIH1cclxufVxyXG5cclxuLmFsZXJ0IHtcclxuICBib3JkZXI6IDAgIWltcG9ydGFudDtcclxuICBib3JkZXItcmFkaXVzOiAkcmRzO1xyXG59XHJcblxyXG4ucmF0aW5nLFxyXG4jZm9ybS1yZXZpZXcge1xyXG5cclxuICAuZmEtc3RhciB7XHJcbiAgICBjb2xvcjogJHN0YXIgIWltcG9ydGFudDtcclxuXHJcbiAgICAmKy5mYS1zdGFyLW8ge1xyXG4gICAgICBjb2xvcjogJHN0YXIgIWltcG9ydGFudDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbjo6cGxhY2Vob2xkZXIge1xyXG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbn0iLCJociB7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkcDtcclxuXHJcbiAgJi5zaG9ydCB7XHJcbiAgICB3aWR0aDogMTAwcHg7XHJcbiAgICBtYXJnaW4tdG9wOiAwO1xyXG4gIH1cclxufSIsIi5zZWN0aW9uLXRpdGxlIHtcclxuICBtYXJnaW4tYm90dG9tOiA1MHB4ICFpbXBvcnRhbnQ7XHJcbn0iLCIucGFnaW5hdGlvbiB7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHJcbiAgPmxpIHtcclxuXHJcbiAgICBpIHtcclxuICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgfVxyXG5cclxuICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xyXG4gICAgfVxyXG5cclxuICAgID4qIHtcclxuICAgICAgYm9yZGVyLXdpZHRoOiAycHggIWltcG9ydGFudDtcclxuICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgIGNvbG9yOiAkdHh0ICFpbXBvcnRhbnQ7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCUgIWltcG9ydGFudDtcclxuICAgICAgYm9yZGVyLWNvbG9yOiAkYmRyICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgJi5hY3RpdmUsXHJcbiAgICAmOmZvY3VzLFxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgID4qIHtcclxuICAgICAgICBjb2xvcjogJHAgIWltcG9ydGFudDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogJHAgIWltcG9ydGFudDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYucGFnaW5hdGlvbl9hcnJvdyB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgICA+KiB7XHJcbiAgICAgICAgY29sb3I6ICRwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgcGFkZGluZzogMCAxMnB4O1xyXG5cclxuICAgICAgICBpIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGJvcmRlcjogMCAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59IiwiLy8gQWxsIFByb2R1Y3RzIEZpbHRlclxyXG4jZmlsdGVyLWdyb3VwcyB7XHJcblxyXG4gID4qIHtcclxuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcclxuICB9XHJcblxyXG4gIGEge1xyXG4gICAgY29sb3I6IHJnYmEoJGIsIDAuNik7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIGNvbG9yOiAkYiAhaW1wb3J0YW50O1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmFjdGl2ZSB7XHJcbiAgICBhIHtcclxuICAgICAgY29sb3I6ICRiO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcblxyXG4gIC5saXN0LWdyb3VwLWl0ZW0ge1xyXG4gICAgcGFkZGluZzogN3B4IDEwcHg7XHJcbiAgfVxyXG5cclxuICAubGlzdC1ncm91cC1pdGVtLFxyXG4gIC5saXN0LWdyb3VwIHtcclxuICAgIGJvcmRlcjogMCAhaW1wb3J0YW50O1xyXG5cclxuICAgID4qIHtcclxuICAgICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBGaWx0ZXIgVGl0bGVcclxuICAuaXRlbS1oZWFkZXIge1xyXG4gICAgY29sb3I6ICRiO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gIH1cclxuXHJcbiAgI3NpZGVfZmlsdGVyIHtcclxuXHJcbiAgICAuaXRlbS1oZWFkZXIge1xyXG5cclxuICAgICAgaSB7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMTBweDtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XHJcbiAgICAgICAgQGluY2x1ZGUgdDtcclxuXHJcbiAgICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICNzaWRlLW1hbnVmYWN0dXJlcixcclxuICAjc2lkZV9maWx0ZXIge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuXHJcbiAgICAuaXRlbS1oZWFkZXIge1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICAgIGJvcmRlcjogMCAhaW1wb3J0YW50O1xyXG4gICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJHMgIWltcG9ydGFudDtcclxuICAgICAgY29sb3I6ICRiICFpbXBvcnRhbnQ7XHJcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTJweCAhaW1wb3J0YW50O1xyXG4gICAgICBAaW5jbHVkZSBmYjtcclxuICAgICAgcGFkZGluZzogN3B4O1xyXG5cclxuICAgICAgQGluY2x1ZGUgdG8obGFwKSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxOHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIEBpbmNsdWRlIHRvKGRlc21kKSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyNHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICB9XHJcblxyXG4gICAgLmNoZWNrbWFyayB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgLmNoZWNrYm94X25hbWUge1xyXG4gICAgICBjb2xvcjogcmdiYSgkYiwgMC42KTtcclxuICAgICAgQGluY2x1ZGUgdDtcclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGNvbG9yOiAkYjtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGlucHV0IHtcclxuICAgICAgJjpjaGVja2Vkfi5jaGVja21hcmt+LmNoZWNrYm94X25hbWUge1xyXG4gICAgICAgIGNvbG9yOiAkYjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gRmlsdGVyIENhdGVnb3JpZXNcclxuICAjc2lkZS1jYXRlZ29yaWVzIHtcclxuICAgIHVzZXItc2VsZWN0OiBub25lO1xyXG5cclxuICAgID4uaXRlbS1oZWFkZXIge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIC5zaWRlLWNhdGVnb3JpZXMtbGV2ZWwtMSB7XHJcbiAgICAgID4uZ3JvdXAge1xyXG4gICAgICAgID4ubGV2ZWwtMSB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICA+LmxldmVsLTIge1xyXG4gICAgICAgICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICAgPi5ncm91cCB7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG5cclxuICAgICAgICAgICAgPi5sZXZlbC0yIHtcclxuICAgICAgICAgICAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJHMgIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgICAgICAgPi5zdWIge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAuZmEge1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0O1xyXG4gICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgLmZhIHtcclxuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgID5hIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkYiAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZmI7XHJcblxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdG8obGFwKSB7XHJcbiAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRvKGRlc21kKSB7XHJcbiAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgLnBvaW50ZXIge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRiICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAubGV2ZWwtMyB7XHJcbiAgICAgICAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgICAuYWN0aXZlIHtcclxuICAgICAgICAgICAgY29sb3I6ICRwO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBGaWx0ZXIgUHJpY2VcclxuICAjc2lkZS1wcmljZSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG5cclxuICAgIC5pbnB1dC1ncm91cCB7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcblxyXG4gICAgICA+KiB7XHJcbiAgICAgICAgZmxleDogMCAxIGF1dG87XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGxhYmVsIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAucHJpY2UtY29udGFpbmVyIHtcclxuXHJcbiAgICAgIGxhYmVsIHtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpbnB1dCB7XHJcbiAgICAgICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG5cclxuICAgICAgICB3aWR0aDogNzAlO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSB0byhkZXN4KSB7XHJcbiAgICAgICAgICB3aWR0aDogODAlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgdG8obGFweCkge1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgI3NsaWRlci1wcmljZSB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjZTFlMWUxO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAkcmRzO1xyXG4gICAgICBoZWlnaHQ6IDVweDtcclxuXHJcbiAgICAgIC51aS1zbGlkZXItcmFuZ2Uge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAudWktc2xpZGVyLWhhbmRsZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkcDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbmJvZHkge1xyXG5cclxuICAmW2NsYXNzKj0nY2lkLTUnXSB7XHJcbiAgICAuc2lkZS1jYXRlZ29yaWVzLWxldmVsLTEge1xyXG5cclxuICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJltjbGFzcyo9J2NpZC02J10ge1xyXG4gICAgLnNpZGUtY2F0ZWdvcmllcy1sZXZlbC0xIHtcclxuXHJcbiAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufSIsIi5wcm9kdWN0LXZpZXcge1xyXG4gIHBhZGRpbmc6IDVweCAhaW1wb3J0YW50O1xyXG5cclxuICAucHJvZHVjdC1ibG9jayB7XHJcbiAgICBmbGV4OiAwIDEgYXV0bztcclxuICAgIHdpZHRoOiBjYWxjKCg5OSUgLyAyKSAtIDIwcHgpO1xyXG4gICAgbWFyZ2luOiAxMHB4ICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgQGluY2x1ZGUgdG8oc20pIHtcclxuICAgICAgd2lkdGg6IGNhbGMoKDk5JSAvIDIpIC0gMjBweCk7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgdG8odGFiKSB7XHJcbiAgICAgIHdpZHRoOiBjYWxjKCg5OSUgLyAzKSAtIDIwcHgpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuI3Byb2R1Y3QtZmlsdGVyLXJlcGxhY2Uge1xyXG4gID5oMiB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuLnByb2R1Y3QtYmxvY2sge1xyXG4gIGJvcmRlcjogMDtcclxuXHJcbiAgLnByb2R1Y3QtaW1hZ2UtYmxvY2sge1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgICA+YSB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnZpZXdfZGV0YWlsc19idG4ge1xyXG4gICAgQGluY2x1ZGUgdDtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMDtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICBjb2xvcjogJHc7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkcCwgMC42KTtcclxuXHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICBpIHtcclxuICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxuICAgICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgY29sb3I6ICRiICFpbXBvcnRhbnQ7XHJcbiAgICAgIHdpZHRoOiA1MHB4O1xyXG4gICAgICBoZWlnaHQ6IDUwcHg7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmOmhvdmVyIHtcclxuICAgIC52aWV3X2RldGFpbHNfYnRuIHtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gTW9yZSBPcHRpb25cclxuICAubW9yZS1vcHRpb25zLXRleHQge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcblxyXG4gIC8vIFByb2R1Y3QgTmFtZVxyXG4gIC5wcm9kdWN0LW5hbWUge1xyXG5cclxuICAgIGEge1xyXG4gICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgIEBpbmNsdWRlIGZzYjtcclxuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgY29sb3I6ICR0eHQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBQcm9kdWN0IFByaWNlXHJcbiAgLnByb2R1Y3QtZGV0YWlscyB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICAucHJpY2Uge1xyXG4gICAgICBjb2xvcjogJHR4dDtcclxuXHJcbiAgICAgID4qIHtcclxuICAgICAgICBmb250LXNpemU6IDE2cHggIWltcG9ydGFudDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLnByaWNlLW5ldyB7XHJcbiAgICAgICAgY29sb3I6ICR0eHQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5wcmljZS1vbGQge1xyXG4gICAgICAgIGNvbG9yOiAkdHh0O1xyXG4gICAgICAgIG9wYWNpdHk6IC41O1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmVucXVpcnktaXRlbSB7XHJcbiAgICAgIGNvbG9yOiAkdHh0O1xyXG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuICAgICAgZm9udC1zaXplOiAxNHB4ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAucHJvZHVjdC1saXN0LWNvbG9yLW9wdGlvbnMge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICBwYWRkaW5nOiAwIDdweDtcclxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuXHJcbiAgICA+KiB7XHJcbiAgICAgIGZsZXg6IDAgMSBhdXRvO1xyXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgaW1nIHtcclxuICAgICAgd2lkdGg6IDIwcHg7XHJcbiAgICAgIGhlaWdodDogMjBweDtcclxuICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5zb3J0X2NvbnRhaW5lciB7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG5cclxuICAuaW5wdXQtZ3JvdXAtYWRkb24ge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcblxyXG4gID4qIHtcclxuICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmNvbC14cy02IHtcclxuICAgIEBpbmNsdWRlIHRvKHNteCkge1xyXG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gIH1cclxufSIsIi5wcm9kdWN0LXByb2R1Y3Qge1xyXG5cclxuICAvLyBQcm9kdWN0IE5hbWVcclxuICAucHJvZHVjdC1uYW1lIHtcclxuICAgIGNvbG9yOiAkYiAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiAgLmxlYXNpbmdfcGVyaW9kIHtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBAaW5jbHVkZSBmYjtcclxuICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgfVxyXG5cclxuICAucHJvZHVjdC1kZXNjcmlwdGlvbiB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gIH1cclxuXHJcbiAgLy8gUHJvZHVjdCBQcmljZSBcclxuICB1bCB7XHJcbiAgICAmLnByaWNlLWRldGFpbHMge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBtYXJnaW46IDIwcHggMDtcclxuXHJcbiAgICAgID4qIHtcclxuICAgICAgICBjb2xvcjogJHA7XHJcbiAgICAgICAgQGluY2x1ZGUgZmI7XHJcbiAgICAgICAgZmxleDogMCAxIGF1dG87XHJcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOm5vdCgucHJpY2Utc3BlY2lhbCkge1xyXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgb3JkZXI6IDI7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgb3JkZXI6IDE7XHJcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmLnByaWNlLXNwZWNpYWwge1xyXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcblxyXG5cclxuICAucHJvZHVjdC1pbWFnZS1jb2x1bW4ge1xyXG5cclxuICAgIC5wcm9kdWN0LWltYWdlLW1haW4tY29udGFpbmVyIHtcclxuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XHJcbiAgICB9XHJcblxyXG4gICAgLnByb2R1Y3QtaW1hZ2UtYWRkaXRpb25hbC1jb250YWluZXIge1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgICAgaW1nIHtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5wcm9kdWN0LWltYWdlLWFkZGl0aW9uYWwge1xyXG4gICAgICAuc2xpY2stY3VycmVudCB7XHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgIG9wYWNpdHk6IDAuNztcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc2xpY2stdHJhY2sge1xyXG4gICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI3Byb2R1Y3Qge1xyXG5cclxuICAgIC5wcm9kdWN0LWJ0bnMtY29udGFpbmVyIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuXHJcbiAgICAgID4qIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XHJcblxyXG4gICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XHJcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc2VwYXJhdG9yX3RvIHtcclxuICAgICAgbWFyZ2luOiAwIDIwcHggMjRweDtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgICAgQGluY2x1ZGUgdG8obGFweCkge1xyXG4gICAgICAgIHdpZHRoOiA4MCU7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuXHJcbiAgLy8gU2hhcmUgSWNvbnNcclxuICAuc2hhcmUtY29udGFpbmVyIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICBtYXJnaW46IDIwcHggMDtcclxuXHJcblxyXG4gICAgYSB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICBzdmcge1xyXG4gICAgICAgIGZpbGw6ICR0eHQgIWltcG9ydGFudDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gRW5xdWlyeVxyXG4gIC5lbnF1aXJ5LWJsb2NrIHtcclxuICAgIG1hcmdpbjogMjBweCAwO1xyXG5cclxuICAgIC5sYWJlbCB7XHJcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgIGNvbG9yOiAkdHh0O1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xyXG4gICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBPdXQgb2YgU3RvY2tcclxuICAucHJvZHVjdF9vb3Mge1xyXG4gICAgQGluY2x1ZGUgZmI7XHJcbiAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICBjb2xvcjogI2E4YThhOCAhaW1wb3J0YW50O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICB9XHJcblxyXG4gICN3YWl0aW5nX2xpc3Qge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuXHJcbiAgICAuZmxleC1ncm91cCB7XHJcblxyXG4gICAgICBAaW5jbHVkZSB0byh0YWJ4KSB7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgIH1cclxuXHJcbiAgICAgID4qIHtcclxuXHJcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICBmbGV4OiAxIDAgYXV0bztcclxuXHJcbiAgICAgICAgICBAaW5jbHVkZSB0byh0YWJ4KSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICBmbGV4OiAwIDEgYXV0bztcclxuXHJcbiAgICAgICAgICBAaW5jbHVkZSB0byh0YWJ4KSB7XHJcbiAgICAgICAgICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGlucHV0IHtcclxuICAgICAgcGFkZGluZzogMTNweCAxMHB4O1xyXG5cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIFByb2R1Y3QgQXR0cmlidXRlc1xyXG4gICNwcm9kdWN0LXRhYnMge1xyXG4gICAgbWFyZ2luLXRvcDogMzBweDtcclxuICAgIGJvcmRlci1jb2xvcjogJGI7XHJcblxyXG4gICAgbGkge1xyXG4gICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgYSB7XHJcbiAgICAgICAgY29sb3I6ICR0eHQ7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGI7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogJHJkcztcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgdG8obW9iKSB7XHJcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmLmFjdGl2ZSB7XHJcblxyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHAgIWltcG9ydGFudDtcclxuICAgICAgICAgIGNvbG9yOiAkdztcclxuICAgICAgICAgIGJvcmRlci1jb2xvcjogJHAgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC50YWItY29udGVudCB7XHJcblxyXG4gICAgdGFibGUge1xyXG4gICAgICB0ZCB7XHJcbiAgICAgICAgcGFkZGluZzogNXB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuZmVhdHVyZWQtbW9kdWxlIHtcclxuICAgIG1hcmdpbi10b3A6IDcwcHg7XHJcblxyXG4gICAgLnByb2R1Y3QtZGV0YWlscyB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgLnNsaWNrLWxpc3Qge1xyXG4gICAgICB3aWR0aDogOTAlO1xyXG4gICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIH1cclxuXHJcbiAgICAuZmEge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjBiMGIwO1xyXG4gICAgICBjb2xvcjogJHc7XHJcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuXHJcbiAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgcGFkZGluZzogMTVweCAzMHB4O1xyXG5cclxuICAgICAgICBAaW5jbHVkZSB0byhzbXgpIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI3Byb2R1Y3Qge1xyXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuXHJcbiAgICBAaW5jbHVkZSB0byhsYXB4KSB7XHJcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICB9XHJcblxyXG4gICAgaDMge1xyXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuXHJcbiAgICA+LmZvcm0tZ3JvdXAge1xyXG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSA1M3B4KTtcclxuXHJcbiAgICAgIEBpbmNsdWRlIHRvKGxhcHgpIHtcclxuICAgICAgICB3aWR0aDogODAlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOm5vdCgudGltZV9jb2xsZWN0KTpub3QoLnRpbWVfcmV0dXJuKSB7XHJcblxyXG5cclxuICAgICAgICAuY29udHJvbC1sYWJlbCB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgJi50aW1lIHtcclxuICAgICAgICAmX2NvbGxlY3Qge1xyXG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1M3B4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLmRhdGUge1xyXG5cclxuICAgICAgICBpbnB1dCB7XHJcbiAgICAgICAgICBmbGV4OiAxIDEgYXV0bztcclxuICAgICAgICAgIGJvcmRlci1yaWdodDogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRiZHIgIWltcG9ydGFudDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5pbnB1dC1ncm91cC1idG4ge1xyXG4gICAgICAgICAgZmxleDogMCAxIGF1dG87XHJcblxyXG4gICAgICAgICAgPioge1xyXG4gICAgICAgICAgICBtaW4td2lkdGg6IGF1dG8gIWltcG9ydGFudDtcclxuICAgICAgICAgICAgbWluLWhlaWdodDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcclxuICAgICAgICAgICAgcGFkZGluZzogNnB4IDEycHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGJkciAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBib3JkZXItbGVmdDogMCAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICBjb250ZW50OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgIGNvbG9yOiAkcCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59IiwiLmNoZWNrYm94IHtcclxuICBtYXJnaW46IDAgIWltcG9ydGFudDtcclxuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XHJcbiAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDtcclxuICB1c2VyLXNlbGVjdDogbm9uZTtcclxuXHJcbiAgPioge1xyXG4gICAgZmxleDogMCAxIGF1dG87XHJcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgPioge1xyXG4gICAgICBmbGV4OiAwIDEgYXV0bztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jaGVja2JveF9uYW1lLFxyXG4gIGxhYmVsIHtcclxuICAgIG9yZGVyOiAyO1xyXG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xyXG4gICAgbWluLWhlaWdodDogYXV0byAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiAgLmNoZWNrbWFyayB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBvcmRlcjogMTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgaGVpZ2h0OiAyMHB4O1xyXG4gICAgd2lkdGg6IDIwcHg7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICRwO1xyXG4gICAgQGluY2x1ZGUgdDtcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBpbnB1dCB7XHJcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgJjpjaGVja2Vkfi5jaGVja21hcmsge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcDtcclxuXHJcbiAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgbGVmdDogNXB4O1xyXG4gICAgICAgIHRvcDogMXB4O1xyXG4gICAgICAgIHdpZHRoOiA3cHg7XHJcbiAgICAgICAgaGVpZ2h0OiAxMnB4O1xyXG4gICAgICAgIGJvcmRlcjogc29saWQgI2ZmZjtcclxuICAgICAgICBib3JkZXItd2lkdGg6IDAgMnB4IDJweCAwO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy8gUHJvZHVjdCBMaXN0aW5nIGZpbHRlciAvIEJyYW5kc1xyXG4jc2lkZV9maWx0ZXIsXHJcbiNzaWRlLW1hbnVmYWN0dXJlciB7XHJcbiAgLmNoZWNrYm94IHtcclxuICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDVweCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbGFiZWwge1xyXG4gICAgZm9udC1zaXplOiAxNHB4O1xyXG4gIH1cclxufSIsIi5yYWRpb2JveCB7XHJcblxyXG4gICY6bm90KC50ZCkge1xyXG4gICAgbWFyZ2luLXRvcDogNXB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiAgJi50ZCB7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgPioge1xyXG4gICAgICBmbGV4OiAwIDEgYXV0bztcclxuICAgIH1cclxuXHJcbiAgICAucmFkaW9tYXJrIHtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAucmFkaW9tYXJrIHtcclxuICAgIGhlaWdodDogMjBweDtcclxuICAgIHdpZHRoOiAyMHB4O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2RkZDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgIEBpbmNsdWRlIHQ7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5yYWRpb2JveF9uYW1lIHt9XHJcblxyXG4gIGlucHV0IHtcclxuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuXHJcbiAgICAmOmNoZWNrZWR+LnJhZGlvbWFyayB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwO1xyXG5cclxuXHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB3aWR0aDogNnB4O1xyXG4gICAgICAgIGhlaWdodDogNnB4O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufSIsIi8vIFRlcm1zXHJcbi5xdWlja2NoZWNrb3V0LWNoZWNrb3V0IHtcclxuXHJcbiAgLnRlcm1zIHtcclxuICAgIEBpbmNsdWRlIHRvKG1vYikge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgfVxyXG5cclxuICAgIC5jaGVja2JveCB7XHJcblxyXG4gICAgICBAaW5jbHVkZSB0byhtb2J4KSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweCAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcblxyXG4gICAgICBAaW5jbHVkZSB0byhtb2IpIHtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHggIWltcG9ydGFudDtcclxuICAgICAgfVxyXG5cclxuICAgICAgbGFiZWwge1xyXG4gICAgICAgIEBpbmNsdWRlIHRvKHNteCkge1xyXG4gICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5jaGVja21hcmsge1xyXG4gICAgICAgIEBpbmNsdWRlIHRvKHNteCkge1xyXG4gICAgICAgICAgbWFyZ2luLXRvcDogM3B4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLmNoZWNrYm94X25hbWUge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICNjcmVhdGVfYWNjb3VudCB7XHJcblxyXG4gICAgLmNoZWNrYm94IHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnF1aWNrY2hlY2tvdXQtY2hlY2tib3gge1xyXG4gICAgLmNoZWNrYm94IHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gIH1cclxufSIsIi5wYWdlLWJhbm5lciB7XHJcblxyXG4gIC5wYWdlLWJhbm5lci10aXRsZSB7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgZm9udC1zaXplOiAyNnB4O1xyXG4gICAgQGluY2x1ZGUgZnNiO1xyXG5cclxuICAgIEBpbmNsdWRlIHRvKG1vYikge1xyXG4gICAgICBmb250LXNpemU6IDMwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgdG8obGFwKSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMzZweDtcclxuICAgIH1cclxuICB9XHJcbn0iLCIubW9kYWxfY29udGFpbmVyIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdztcclxuICBwYWRkaW5nOiAwO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgLm1mcC1jbG9zZSB7XHJcbiAgICBjb2xvcjogJHc7XHJcbiAgICBAaW5jbHVkZSB0O1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLm1vZGFsX2Jhbm5lciB7XHJcbiAgICBpbWcge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5tb2RhbF9jb250ZW50IHtcclxuICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgcCB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICB9XHJcblxyXG4gICAgZGl2IHtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblxyXG4gICAgICBAaW5jbHVkZSB0byh0YWJ4KSB7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgfVxyXG5cclxuICAgICAgPioge1xyXG4gICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XHJcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcclxuXHJcbiAgICAgICAgICBAaW5jbHVkZSB0byh0YWJ4KSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGEge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICBjb2xvcjogJHBkO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGltZyB7XHJcbiAgICAgIHdpZHRoOiAyNHB4O1xyXG4gICAgICBAaW5jbHVkZSB0O1xyXG5cclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTM2MGRlZyk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5wcm9kdWN0LXByb2R1Y3Qge1xyXG4gICNlbnF1aXJ5X21vZGFsIHtcclxuICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgfVxyXG59XHJcblxyXG4jZW5xdWlyeV9tb2RhbCB7XHJcbiAgLm1mcC1jbG9zZSB7XHJcbiAgICBjb2xvcjogJGIgIWltcG9ydGFudDtcclxuICB9XHJcbn0iLCIjbG9hZGluZ193cmFwcGVyIHtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIGhlaWdodDogMTAwdmg7XHJcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICBvcGFjaXR5OiAxO1xyXG59IiwiLnNpZGVfbmF2IHtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgcmlnaHQ6IDVweDtcclxuICB0b3A6IDMwJTtcclxuICB6LWluZGV4OiA1O1xyXG5cclxuICBAaW5jbHVkZSB0byhzbSkge1xyXG4gICAgdG9wOiAyMCU7XHJcbiAgfVxyXG5cclxuICAuc2lkZV9uYXZfY29udGVudCB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHJcbiAgICA+KiB7XHJcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGltZyB7XHJcbiAgICAgICAgQGluY2x1ZGUgdG8oc214KSB7XHJcbiAgICAgICAgICB3aWR0aDogNTBweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn0iLCIjYWJvdXRfdXMge1xyXG4gIC5pbWcge1xyXG4gICAgQGluY2x1ZGUgdG8obGFwKSB7XHJcbiAgICAgIHdpZHRoOiA1NSU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuY29udGVudCB7XHJcbiAgICBAaW5jbHVkZSB0byhsYXApIHtcclxuICAgICAgd2lkdGg6IDQ1JTtcclxuICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIHAge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgfVxyXG4gIH1cclxufSIsIiNzZXJ2aWNlcyB7XHJcbiAgI3NlY18xIHtcclxuICAgIC5yMSB7XHJcbiAgICAgIC5pbWcge1xyXG5cclxuICAgICAgICBAaW5jbHVkZSB0byhsYXApIHtcclxuICAgICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgICBvcmRlcjogMjtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5jb250ZW50IHtcclxuICAgICAgICBAaW5jbHVkZSB0byhsYXApIHtcclxuICAgICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI3NlY18yIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRiZztcclxuXHJcbiAgICAucjEge1xyXG5cclxuICAgICAgLmltZyB7XHJcbiAgICAgICAgQGluY2x1ZGUgdG8obGFwKSB7XHJcbiAgICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLmNvbnRlbnQge1xyXG4gICAgICAgIEBpbmNsdWRlIHRvKGxhcCkge1xyXG4gICAgICAgICAgei1pbmRleDogMjtcclxuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMjAlO1xyXG4gICAgICAgICAgd2lkdGg6IDcwJTtcclxuICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdztcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAucjIge1xyXG5cclxuICAgICAgPioge1xyXG4gICAgICAgIEBpbmNsdWRlIHRvKGxhcCkge1xyXG4gICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDMpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5jb250ZW50IHtcclxuICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICAgICAgICBvcmRlcjogMTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuaW1nIHtcclxuICAgICAgICAgIG9yZGVyOiAyO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5ycHRyIHtcclxuICAgICAgLmltZyB7XHJcbiAgICAgICAgQGluY2x1ZGUgdG8obGFwKSB7XHJcbiAgICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLmNvbnRlbnQge1xyXG4gICAgICAgIEBpbmNsdWRlIHRvKGxhcCkge1xyXG4gICAgICAgICAgei1pbmRleDogMjtcclxuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMjAlO1xyXG4gICAgICAgICAgd2lkdGg6IDcwJTtcclxuICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdztcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn0iLCIuaW5mb3JtYXRpb24tY29udGFjdCB7XHJcblxyXG4gIC5nb29nbGVfbWFwIHtcclxuICAgID4qIHtcclxuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jb250YWN0X3VzX2NvbnRhaW5lciB7XHJcblxyXG4gICAgQGluY2x1ZGUgdG8odGFiKSB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgfVxyXG5cclxuICAgID4qIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuXHJcbiAgICAgIEBpbmNsdWRlIHRvKHRhYikge1xyXG4gICAgICAgIGZsZXg6IDAgMSBhdXRvO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmLmNvbnRhY3RfaW5mb19tYXAge1xyXG4gICAgICAgIEBpbmNsdWRlIHRvKHRhYikge1xyXG4gICAgICAgICAgd2lkdGg6IDUwJTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYuY29udGFjdF9pbmZvIHtcclxuICAgICAgICBAaW5jbHVkZSB0byh0YWIpIHtcclxuICAgICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICA+KiB7XHJcbiAgICAgICAgICAmOm5vdCguZ2V0X2RpcmVjdGlvbikge1xyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICBjb2xvcjogJGI7XHJcblxyXG4gICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRwO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYuY29udGFjdF9mb3JtIHtcclxuICAgICAgICBAaW5jbHVkZSB0byh0YWIpIHtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgIH1cclxuXHJcbiAgICAuZ2V0X2RpcmVjdGlvbiB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDMwcHg7XHJcblxyXG4gICAgICBoNCB7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufSIsIiNob21lX3BhZ2Uge1xyXG4gICNzZWNfMSB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuXHJcbiAgICAuaW1nX3ZpZGVvX2NvbnRhaW5lciB7XHJcbiAgICAgIHotaW5kZXg6IDE7XHJcblxyXG4gICAgICBAaW5jbHVkZSB0byhsYXApIHtcclxuICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgICAgIG9yZGVyOiAxO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBwIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuY29udGVudCB7XHJcbiAgICAgIHotaW5kZXg6IDA7XHJcbiAgICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgIEBpbmNsdWRlIHRvKGxhcCkge1xyXG4gICAgICAgIG9yZGVyOiAyO1xyXG4gICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgcGFkZGluZzogMjBweCA1MHB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgd2lkdGg6IDcwcHg7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ViZWJlYjtcclxuICAgICAgfVxyXG5cclxuICAgICAgLnNlY190aXRsZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgdG8oZGVzKSB7XHJcbiAgICAgICAgICB3aWR0aDogODAlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgdG8oZGVzbWQpIHtcclxuICAgICAgICAgIHdpZHRoOiA2MCU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICA+cCB7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIHRvKGxhcCkge1xyXG4gICAgICAgICAgbWFyZ2luLXRvcDogLTQ1cHg7XHJcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDg4cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSB0byhkZXMpIHtcclxuICAgICAgICAgIHdpZHRoOiA4MCU7XHJcblxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI3NlY18yIHtcclxuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgLmltZyB7XHJcbiAgICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XHJcblxyXG4gICAgICBAaW5jbHVkZSB0byhsYXApIHtcclxuICAgICAgICB3aWR0aDogNTUlO1xyXG4gICAgICAgIG9yZGVyOiAyO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmNvbnRlbnQge1xyXG4gICAgICBAaW5jbHVkZSB0byhsYXApIHtcclxuICAgICAgICB3aWR0aDogNDUlO1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAxMDBweDtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmNhcl90eXBlcyB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuXHJcbiAgICAgIC5pdGVtIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBwYWRkaW5nOiAzMHB4IDIwcHg7XHJcbiAgICAgICAgZmxleDogMCAxIGF1dG87XHJcbiAgICAgICAgbWFyZ2luOiAxMHB4O1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBAaW5jbHVkZSBicztcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgdG8oc20pIHtcclxuICAgICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDIwcHgpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgdG8oZGVzKSB7XHJcbiAgICAgICAgICB3aWR0aDogY2FsYygoMTAwJSAvIDMpIC0gMjBweCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAudGl0bGUge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgIEBpbmNsdWRlIGZzYjtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcblxyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgY29sb3I6ICRiO1xyXG5cclxuICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBjb2xvcjogJHA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjc2VjXzMge1xyXG4gICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMGRlZywgI2Y1ZjVmNSAwJSwgI2Y1ZjVmNSA1MCUsICR3IDUwJSwgJHcgMTAwJSk7XHJcblxyXG4gICAgLmltZyB7XHJcblxyXG4gICAgICBAaW5jbHVkZSB0byhsYXApIHtcclxuICAgICAgICB3aWR0aDogNDUlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmNvbnRlbnQge1xyXG4gICAgICBAaW5jbHVkZSB0byhsYXApIHtcclxuICAgICAgICB3aWR0aDogNTUlO1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogNDBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5sc19wZXJpb2RzIHtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG5cclxuICAgICAgQGluY2x1ZGUgdG8oZGVzbWQpIHtcclxuICAgICAgICB3aWR0aDogODAlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuaXRlbSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHc7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgcGFkZGluZzogMzBweCAyMHB4O1xyXG4gICAgICAgIGZsZXg6IDAgMSBhdXRvO1xyXG4gICAgICAgIG1hcmdpbjogMTBweDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgQGluY2x1ZGUgYnM7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIHRvKHNtKSB7XHJcbiAgICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSAyMHB4KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC50aXRsZSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgQGluY2x1ZGUgZnNiO1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICBjb2xvcjogJGI7XHJcblxyXG4gICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkcDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5jb21tb24taG9tZSB7XHJcbiAgLmZlYXR1cmVkLW1vZHVsZSB7XHJcbiAgICBwYWRkaW5nLXRvcDogMDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNWY1ZjU7XHJcblxyXG4gICAgPi5mZWF0dXJlZCB7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcblxyXG4gICAgICA+KiB7XHJcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cclxuICAgICAgICAgIC5zbGljay1saXN0IHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIG9yZGVyOiAxO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIC5zbGljay1uYXYge1xyXG4gICAgICAgICAgICBvcmRlcjogMjtcclxuICAgICAgICAgICAgbGVmdDogYXV0bztcclxuICAgICAgICAgICAgcmlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xyXG5cclxuICAgICAgICAgICAgJi5wcmV2IHtcclxuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDUlO1xyXG5cclxuICAgICAgICAgICAgICBAaW5jbHVkZSB0byhzbSkge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyNSU7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmLm5leHQge1xyXG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1JTtcclxuXHJcbiAgICAgICAgICAgICAgQGluY2x1ZGUgdG8oc20pIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyNSU7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgLmljb25fY29uIHtcclxuICAgICAgICAgICAgY29sb3I6ICR3O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTlhOWE5O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgcGFkZGluZzogMTBweCAyMHB4O1xyXG5cclxuICAgICAgICAgICAgaSB7XHJcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmJ0bl9jb24ge1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcblxyXG4gICAgICBAaW5jbHVkZSB0byhzbSkge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IC00MnB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnByb2R1Y3QtYmxvY2sge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1O1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuXHJcbiAgICAgIC5wcm9kdWN0LWRldGFpbHMge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn0iXX0= */
