@charset "UTF-8";
@font-face {
  font-family: "Montserrat";
  src: url("../fonts/Montserrat-Bold.eot");
  src: url("../fonts/Montserrat-Bold.eot?#iefix") format("embedded-opentype"), url("../fonts/Montserrat-Bold.woff") format("woff"), url("../fonts/Montserrat-Bold.ttf") format("truetype");
  font-weight: bold;
  font-style: normal;
}
@font-face {
  font-family: "Montserrat";
  src: url("../fonts/Montserrat-SemiBold.eot");
  src: url("../fonts/Montserrat-SemiBold.eot?#iefix") format("embedded-opentype"), url("../fonts/Montserrat-SemiBold.woff") format("woff"), url("../fonts/Montserrat-SemiBold.ttf") format("truetype");
  font-weight: 600;
  font-style: normal;
}
@font-face {
  font-family: "Montserrat";
  src: url("../fonts/Montserrat-Regular.eot");
  src: url("../fonts/Montserrat-Regular.eot?#iefix") format("embedded-opentype"), url("../fonts/Montserrat-Regular.woff") format("woff"), url("../fonts/Montserrat-Regular.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "Montserrat";
  src: url("../fonts/Montserrat-Medium.eot");
  src: url("../fonts/Montserrat-Medium.eot?#iefix") format("embedded-opentype"), url("../fonts/Montserrat-Medium.woff") format("woff"), url("../fonts/Montserrat-Medium.ttf") format("truetype");
  font-weight: 500;
  font-style: normal;
}
* {
  margin: 0;
  padding: 0;
  outline: none;
}

html, body, div, span, h1, h2, h3, h4, h5, h6, p, em, img, strong, sub, sup, b, u, i, dl, dt, dd, ol, ul, li, fieldset, form, label, table, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  background: transparent;
  font-size: 100%;
}

header, nav, section, article, aside, footer {
  display: block;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: normal;
}

html {
  height: 100%;
}

body {
  position: relative;
  height: 100%;
  font-family: "Montserrat", sans-serif;
  color: #FFF;
  font-size: 16px;
  line-height: 1.3;
  font-weight: normal;
  font-style: normal;
  background: #010101;
}
body *,
body *:before,
body *:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

img {
  border: none;
  max-width: 100%;
  vertical-align: bottom;
}

ul {
  list-style: none;
}

a {
  color: inherit;
  text-decoration: none;
  margin: 0;
  padding: 0;
}

.clear {
  clear: both;
  height: 0;
  overflow: hidden;
  font-size: 0;
}

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

.container {
  width: 100%;
  max-width: 1180px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}
@media screen and (max-width: 1219.98px) {
  .container {
    max-width: 945px;
  }
}
@media screen and (max-width: 1023.98px) {
  .container {
    max-width: 710px;
  }
}
@media screen and (max-width: 767.98px) {
  .container {
    max-width: 100%;
    padding: 0 15px;
  }
}
.wrapper {
  min-height: 100%;
  width: 100%;
  position: relative;
  z-index: 0;
  display: flex;
  flex-direction: column;
}

.content__wrapper {
  flex: 1 0 auto;
}

.pd__header {
  padding-top: 100px;
}

@media (max-width: 1699.98px) {
  .hide-desktop-lg {
    display: none !important;
  }
}

@media (max-width: 1339.98px) {
  .hide-desktop-md {
    display: none !important;
  }
}

@media (max-width: 1219.98px) {
  .hide-desktop {
    display: none !important;
  }
}

@media (max-width: 1023.98px) {
  .hide-tablet {
    display: none !important;
  }
}

@media (max-width: 767.98px) {
  .hide-tablet-sm {
    display: none !important;
  }
}

@media (max-width: 609.98px) {
  .hide-mobile-lg {
    display: none !important;
  }
}

@media (min-width: 1220px) {
  .show-desktop {
    display: none !important;
  }
}

@media (min-width: 1024px) {
  .show-tablet {
    display: none !important;
  }
}

@media (min-width: 768px) {
  .show-tablet-sm {
    display: none !important;
  }
}

@media (min-width: 610px) {
  .show-mobile-lg {
    display: none !important;
  }
}

.noscroll {
  overflow: hidden;
}

.nowrap {
  white-space: nowrap;
}

.wow {
  visibility: hidden;
}
@media (max-width: 1023.98px) {
  .wow {
    visibility: visible !important;
    -webkit-animation: none !important;
    animation: none !important;
  }
}

.content__text {
  font-size: 18px;
  line-height: 1.5555555556;
}
.content__text > * {
  margin-bottom: 35px;
}
.content__text a {
  text-decoration: underline;
}
.content__text a:hover {
  text-decoration: none;
}
.content__text h1, .content__text h2, .content__text h3, .content__text h4, .content__text h5 {
  color: #FFF;
  line-height: 1.1;
  font-weight: 700;
}
.content__text h1 {
  font-size: 36px;
  margin: 45px 0;
}
.content__text h2 {
  font-size: 32px;
  margin: 45px 0;
}
.content__text h3 {
  font-size: 24px;
  margin: 30px 0;
}
.content__text h4 {
  font-size: 20px;
  margin: 30px 0;
}
.content__text h5 {
  font-size: 18px;
  margin: 30px 0;
}
.content__text ul,
.content__text ol {
  padding-left: 26px;
}
.content__text ol {
  list-style-type: none;
  counter-reset: num;
}
.content__text li {
  position: relative;
}
.content__text ul li:before {
  position: absolute;
  top: 0px;
  right: 100%;
  margin-right: 11px;
  color: #FFF;
  font-size: 16px;
  content: "•";
}
.content__text ol li:before {
  content: counter(num) ".";
  counter-increment: num;
  display: inline-block;
  position: absolute;
  top: 0px;
  right: 100%;
  margin-right: 8px;
  text-align: right;
}
.content__text img {
  border-radius: 20px;
}
@media (max-width: 767.98px) {
  .content__text {
    font-size: 16px;
  }
  .content__text > * {
    margin-bottom: 40px;
  }
  .content__text h1 {
    font-size: 28px;
    margin: 40px 0;
  }
  .content__text h2 {
    font-size: 24px;
    margin: 40px 0;
  }
  .content__text h3 {
    font-size: 24px;
    margin: 25px 0;
  }
  .content__text h4 {
    font-size: 18px;
    margin: 25px 0;
  }
  .content__text h5 {
    font-size: 16px;
    margin: 25px 0;
  }
}

.section__head {
  margin-bottom: 40px;
  text-align: center;
}
.section__title {
  font-size: 42px;
  font-weight: 700;
}
.section__intro {
  margin-top: 30px;
  font-size: 24px;
}
.text--center .section__intro {
  margin-left: auto;
  margin-right: auto;
}
.section__buttons {
  margin-top: 68px;
  text-align: center;
}
.section__first {
  margin-top: 0 !important;
}
.section__mg {
  margin: 120px 0;
}
.section__pd {
  padding: 130px 0;
}
.section__pdt {
  padding-top: 70px;
}
.section__tab {
  display: none;
}
.section__tab.show {
  display: block;
}
@media (max-width: 1219.98px) {
  .section__mg {
    margin: 100px 0;
  }
}
@media (max-width: 767.98px) {
  .section__head {
    margin-bottom: 32px;
    text-align: left;
  }
  .section__title {
    font-size: 20px;
  }
  .section__intro {
    font-size: 16px;
  }
  .section__mg {
    margin: 60px 0;
  }
}
.text--center {
  text-align: center;
}

.text--white {
  color: white;
}

.icon {
  stroke: currentColor;
  fill: none;
  color: inherit;
  font-size: inherit;
  transition: all 0.3s ease-in-out;
  flex: 0 0 auto;
}
.icon--fill {
  fill: currentColor;
  stroke: initial;
}
.icon path {
  stroke: currentColor;
  color: inherit;
  font-size: inherit;
  transition: all 0.3s ease-in-out;
}

.link {
  font-size: 20px;
  line-height: 1.35;
  font-weight: 700;
  transition: all 0.3s ease-in-out;
  display: inline-flex;
  align-items: center;
}
.link .icon {
  width: 20px;
  height: 20px;
  margin-left: 8px;
}
.link__more .close_t {
  display: none;
}
.link__more.opened .open_t {
  display: none;
}
.link__more.opened .close_t {
  display: block;
}
@media (max-width: 1219.98px) {
  .link {
    font-size: 16px;
  }
}

/**************************************************************
swiper
**************************************************************/
.swiper-slide {
  height: auto;
}

.swiper-pagination {
  display: flex;
}
.swiper-pagination-bullet {
  margin: 0 5px !important;
  width: 16px;
  height: 16px;
  border: 1px solid #FFF;
  background: none;
  transition: all 0.3s ease-in-out;
  opacity: 1;
}
.swiper-pagination-bullet-active {
  background: linear-gradient(39deg, #f9be32 0%, #da9900 100%);
}
.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer;
}
@media (max-width: 767.98px) {
  .swiper-pagination-bullet {
    width: 7px;
    height: 7px;
    margin: 0 3px !important;
  }
}

.swiper-button {
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  top: auto;
  right: 0;
  left: auto;
  margin: 0;
  margin-left: 24px;
  position: static;
  color: black;
}
.swiper-button:after {
  display: none;
}
.swiper-button .icon {
  width: 90%;
}
.swiper-button-nav {
  position: relative;
  display: flex;
  align-items: center;
}
.swiper-button-nav .swiper-pagination {
  position: static;
  width: auto;
  margin: 0 -6px;
}

.swiper-scrollbar {
  background: none;
}

/**************************************************************
forms
**************************************************************/
.input::-webkit-input-placeholder {
  color: rgba(85, 85, 85, 0.6);
  opacity: 1;
}

.input::-o-input-placeholder {
  color: rgba(85, 85, 85, 0.6);
  opacity: 1;
}

.input::-moz-input-placeholder {
  color: rgba(85, 85, 85, 0.6);
  opacity: 1;
}

.input:-moz-input-placeholder {
  color: rgba(85, 85, 85, 0.6);
  opacity: 1;
}

.input::-ms-input-placeholder {
  color: rgba(85, 85, 85, 0.6);
  opacity: 1;
}

.input input-placeholder {
  color: rgba(85, 85, 85, 0.6);
  opacity: 1;
}

.input::placeholder {
  color: rgba(85, 85, 85, 0.6);
  opacity: 1;
}

.input:placeholder-shown {
  color: rgba(85, 85, 85, 0.6);
  opacity: 1;
}

.input:focus::-webkit-input-placeholder {
  color: transparent;
  opacity: 0;
}

.input:focus::-o-input-placeholder {
  color: transparent;
  opacity: 0;
}

.input:focus::-moz-input-placeholder {
  color: transparent;
  opacity: 0;
}

.input:focus:-moz-input-placeholder {
  color: transparent;
  opacity: 0;
}

.input:focus::-ms-input-placeholder {
  color: transparent;
  opacity: 0;
}

.input:focus:input-placeholder {
  color: transparent;
  opacity: 0;
}

input[placeholder] {
  text-overflow: ellipsis;
}

input::-moz-placeholder {
  text-overflow: ellipsis;
}

input:-moz-placeholder {
  text-overflow: ellipsis;
}

input:-ms-input-placeholder {
  text-overflow: ellipsis;
}

input, button {
  -webkit-appearance: none;
}

.input {
  width: 100%;
  height: 35px;
  line-height: 33px;
  font-family: "Montserrat", sans-serif;
}

textarea.input {
  line-height: normal;
  padding: 10px 15px;
  resize: none;
  height: 100px;
}

.btn {
  position: relative;
  height: 90px;
  padding: 0 80px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: none;
  border: none;
  border-radius: 6px;
  font-family: "Montserrat", sans-serif;
  font-size: 24px;
  color: black;
  outline: none;
  cursor: pointer;
  overflow: hidden;
  z-index: 2;
}
.btn::before, .btn::after {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  backdrop-filter: blur(4px);
  background: linear-gradient(39deg, #f9be32 0%, #da9900 120%);
  z-index: -2;
  transition: all 0.3s ease-in-out;
  content: "";
}
.btn::after {
  background: linear-gradient(39deg, #fbb101 0%, #d98200 120%);
  z-index: -1;
  opacity: 0;
}
@media (hover: hover) {
  .btn:hover::after {
    opacity: 1;
  }
}
.btn--md {
  height: 69px;
  font-size: 20px;
  padding: 0 40px;
}
.btn--mdx {
  height: 59px;
  font-size: 20px;
  padding: 0 40px;
}
.btn--sm {
  height: 44px;
  font-size: 14px;
  padding: 0 30px;
  border-radius: 2px;
}
@media (max-width: 767.98px) {
  .btn {
    height: 48px;
    font-size: 16px;
    padding: 0 30px;
    border-radius: 2px;
  }
}
.btn--wall {
  width: 100%;
  padding: 0 40px;
}

/**************************************************************
popup
**************************************************************/
.popup {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  display: none;
}
.popup__content {
  width: 100%;
  min-height: 100%;
  overflow: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 15px 15px;
  position: relative;
  z-index: 1;
}
.popup__bg {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  background: #232730;
  opacity: 0.7;
}
.popup__container {
  position: relative;
  width: 100%;
  max-width: 510px;
  padding: 60px 30px 70px;
  background: #2B2D38;
  overflow: hidden;
  text-align: center;
}
.popup__close {
  position: absolute;
  right: 13px;
  top: 13px;
  width: 28px;
  height: 28px;
  background: url(../images/popup-close.svg) no-repeat center;
  cursor: pointer;
  z-index: 99;
}
.popup__head {
  margin-bottom: 30px;
}
.popup__title {
  font-weight: bold;
  font-size: 48px;
  line-height: 1;
  text-align: center;
  letter-spacing: 0.02em;
  color: #FFFFFF;
  font-family: "Montserrat", sans-serif;
}
.popup form {
  max-width: 360px;
  margin: 0 auto;
}
.popup form .btn {
  min-width: 280px;
}
.popup__iconthank {
  margin-bottom: 50px;
}
.popup-thank .popup__title {
  margin-bottom: 0;
}

/**************************************************************
header
**************************************************************/
.header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 132px;
  padding: 10px 0;
}
.header__contacts {
  display: flex;
  justify-content: center;
  margin: 0 auto;
  gap: 16px;
}
.header__citem {
  display: flex;
  align-items: center;
  gap: 17px;
  font-size: 18px;
}
.header__citem:hover {
  text-decoration: underline;
}
.header__citem-icon {
  width: 42px;
  flex: 0 0 auto;
}
@media (max-width: 1023.98px) {
  .header__inner {
    padding: 0 70px;
  }
  .header__burger {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 60px;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    background: none;
    outline: none;
    cursor: pointer;
  }
}
@media (max-width: 767.98px) {
  .header__inner {
    min-height: 80px;
    padding: 0;
  }
  .header__logo {
    max-width: 166px;
  }
  .header__burger {
    width: 40px;
    height: 40px;
    position: relative;
    right: auto;
    top: auto;
    transform: initial;
  }
}

.navfix {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(var(--vh) * 100);
  background: #fff;
  z-index: 999;
  padding: 30px 0;
  margin: 0;
  overflow: auto;
  background: #010101;
}
.navfix__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 0;
  margin-bottom: 60px;
  position: relative;
}
.navfix__head::after {
  position: absolute;
  left: 50%;
  bottom: 0;
  width: 1000px;
  transform: translateX(-50%);
  border-bottom: 1px solid #373737;
  content: "";
}
.navfix__logo {
  max-width: 166px;
}
.navfix__close {
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: none;
  background: none;
  outline: none;
  cursor: pointer;
}
.navfix__inner {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  text-align: right;
}
.navfix__menu {
  margin-bottom: 48px;
}
.navfix__menu li + li {
  margin-top: 30px;
}
.navfix__menu li a {
  font-size: 20px;
}
.navfix__citem {
  display: flex;
  align-items: center;
  gap: 17px;
  font-size: 18px;
  margin-top: 24px;
}
.navfix__citem:hover {
  text-decoration: underline;
}
.navfix__citem-icon {
  width: 42px;
  flex: 0 0 auto;
}
.navfix__buttons {
  margin-top: 40px;
}
@media (max-width: 767.98px) {
  .navfix {
    padding-top: 0;
  }
  .navfix__head {
    min-height: 80px;
    padding: 10px 0;
    margin-bottom: 55px;
  }
}

/**************************************************************
footer
**************************************************************/
.footer {
  padding: 60px 0 80px;
  text-align: center;
}
@media (max-width: 767.98px) {
  .footer {
    padding: 60px 0;
  }
}

/**************************************************************

**************************************************************/
.hero {
  padding: 90px 0;
  text-align: center;
  background: url(../images/hero-bg.jpg) no-repeat center;
  background-size: cover;
}
.hero__logo {
  max-width: 340px;
  margin: 0 auto 95px;
}
.hero__logo img {
  width: 100%;
}
.hero__title {
  font-size: 40px;
  text-transform: uppercase;
}
.hero__title b {
  font-weight: 600;
}
.hero__buttons {
  margin-top: 80px;
}
.hero__bottom {
  margin-top: 60px;
  font-size: 24px;
}
.hero__bottom p + p {
  margin-top: 18px;
}
@media (min-width: 1024px) and (max-height: 1000px) {
  .hero {
    padding: 30px 0 60px;
  }
  .hero__logo {
    margin-bottom: 70px;
    max-width: 280px;
  }
  .hero__buttons {
    margin-top: 60px;
  }
  .hero__bottom {
    margin-top: 40px;
    font-size: 20px;
  }
}
@media (max-width: 1023.98px) {
  .hero {
    background-image: url(../images/hero-bg-tablet.jpg);
  }
}
@media (max-width: 767.98px) {
  .hero {
    padding: 30px 0 0;
    text-align: left;
  }
  .hero__logo {
    display: none;
  }
  .hero__title {
    font-size: 22px;
  }
  .hero__buttons {
    margin-top: 28px;
  }
  .hero__bottom {
    margin-top: 40px;
    font-size: 16px;
  }
  .hero__bottom p + p {
    margin-top: 14px;
  }
}

/**************************************************************

**************************************************************/
.equip__items {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-gap: 22px 30px;
}
.equip__item {
  min-height: 167px;
  padding: 22px;
  display: flex;
  align-items: center;
  gap: 30px;
  background: url(../images/equip/bg-item.png) no-repeat center center;
  background-size: 100% 100%;
}
.equip__item-icon {
  flex: 0 0 auto;
  width: 103px;
  height: 100px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.equip__item-icon img {
  max-height: 100%;
}
.equip__item-title {
  font-size: 20px;
}
@media (max-width: 1219.98px) {
  .equip__items {
    max-width: 786px;
    margin: 0 auto;
    grid-template-columns: 1fr 1fr;
    grid-gap: 30px;
  }
}
@media (max-width: 767.98px) {
  .equip__items {
    grid-gap: 10px;
  }
  .equip__item {
    min-height: 90px;
    padding: 15px 18px;
    gap: 25px;
    background-image: url(../images/equip/bg-item-mob.png);
  }
  .equip__item-icon {
    width: 59px;
    height: 51px;
  }
}
@media (max-width: 609.98px) {
  .equip__items {
    grid-template-columns: 1fr;
  }
}

/**************************************************************

**************************************************************/
.gallery__items {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-gap: 5px;
}
.gallery__item {
  position: relative;
  padding-bottom: 75%;
  overflow: hidden;
}
.gallery__item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
  transition: all 0.3s ease-in-out;
}
@media (any-hover: hover) {
  .gallery__item:hover img {
    transform: scale(1.1);
  }
}
@media (max-width: 1023.98px) {
  .gallery__carousel .swiper-pagination {
    left: auto;
    right: 20px;
    bottom: 10px;
    width: auto;
  }
  .gallery__items {
    padding: 0;
    display: flex;
    grid-gap: 0;
  }
  .gallery__item {
    padding-bottom: 75%;
  }
}

/**************************************************************

**************************************************************/
.services {
  overflow: hidden;
}
.services__cols {
  display: flex;
  align-items: flex-start;
  gap: 60px;
}
.services__items {
  flex: 1 0 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 50px 45px;
}
.services__item-title {
  font-weight: 600;
  font-size: 24px;
  background: linear-gradient(39deg, #f9be32 0%, #da9900 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.services__item-text {
  margin-top: 20px;
}
.services__item-text p + p {
  margin-top: 5px;
}
.services__photos {
  flex: 0 0 auto;
  width: 400px;
  position: relative;
}
.services__img {
  width: calc(100% + 40px);
  padding-bottom: 80%;
  position: relative;
  z-index: 1;
}
.services__img.img--2 {
  margin: -100px 0 -100px 130px;
}
.services__img::after {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: calc(100% + 3px);
  height: calc(100% + 3px);
  background: linear-gradient(129deg, rgba(0, 0, 0, 0.2) 0%, rgba(255, 255, 255, 0.5) 100%);
  content: "";
  z-index: -1;
}
.services__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}
@media (max-width: 1219.98px) {
  .services__items {
    grid-template-columns: 1fr;
    grid-gap: 30px;
  }
}
@media (max-width: 1023.98px) {
  .services__cols {
    gap: 30px;
  }
  .services__photos {
    width: calc(50% - 15px);
  }
  .services__img {
    width: 90%;
    padding-bottom: 65%;
  }
  .services__img.img--2 {
    margin: -80px 0 -80px 100px;
  }
}
@media (max-width: 767.98px) {
  .services__cols {
    flex-direction: column;
  }
  .services__items {
    grid-gap: 20px;
  }
  .services__item-title {
    font-size: 20px;
  }
  .services__item-text {
    margin-top: 10px;
  }
  .services__photos {
    width: 100%;
    max-width: 480px;
  }
  .services__img {
    width: 75%;
    padding-bottom: 56%;
  }
  .services__img.img--2 {
    margin: -15% 0 -15% 25%;
  }
}

/**************************************************************

**************************************************************/
.tariffs__items {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-gap: 58px 23px;
}
.tariffs__item {
  background: url(../images/tariffs-item-bg.png) no-repeat;
  background-size: 100% 100%;
  padding: 40px 41px 48px 31px;
  display: flex;
  flex-direction: column;
}
.tariffs__item-head {
  margin-bottom: 30px;
  min-height: 115px;
  text-align: center;
}
.tariffs__item-title {
  font-weight: 600;
  font-size: 24px;
  background: linear-gradient(39deg, #f9be32 0%, #da9900 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.tariffs__item-price {
  margin-top: 16px;
  font-size: 28px;
  font-weight: 600;
}
.tariffs__item-time {
  margin-top: 10px;
}
.tariffs__item-desc {
  margin-bottom: 20px;
}
.tariffs__item-desc p + p {
  margin-top: 5px;
}
.tariffs__item-list li {
  padding-left: 24px;
  position: relative;
}
.tariffs__item-list li + li {
  margin-top: 5px;
}
.tariffs__item-list li::before {
  width: 16px;
  height: 16px;
  position: absolute;
  left: 0;
  top: 2px;
  background: url(../images/icons/check.svg) no-repeat;
  content: "";
}
.tariffs__item-t {
  font-weight: 500;
  margin-bottom: 20px;
}
.tariffs__item-buttons {
  padding-top: 28px;
  margin-top: auto;
}
@media (max-width: 1219.98px) {
  .tariffs__items {
    max-width: 786px;
    margin: 0 auto;
    grid-gap: 30px;
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 767.98px) {
  .tariffs__items {
    grid-gap: 20px;
  }
}
@media (max-width: 609.98px) {
  .tariffs__items {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 478.98px) {
  .tariffs__item {
    padding: 20px 10px;
  }
  .tariffs__item-head {
    margin-bottom: 10px;
    min-height: 1px;
  }
  .tariffs__item-title {
    font-size: 20px;
  }
  .tariffs__item-price {
    margin-top: 10px;
    font-size: 28px;
  }
}

/**************************************************************

**************************************************************/
.map {
  position: relative;
  overflow: hidden;
}
.map::before {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 5;
  mix-blend-mode: difference;
  background: #fff;
  content: "";
  pointer-events: none;
}
.map::after {
  position: absolute;
  left: 0;
  bottom: 0;
  height: 5px;
  width: 100%;
  background: #010101;
  content: "";
  z-index: 6;
}
.map [class*=ground-pane] {
  filter: grayscale(1);
}
.map [class*=copyrights-pane] {
  display: none !important;
}

.contacts__cols {
  padding: 0 130px 0 90px;
  display: flex;
  justify-content: space-between;
  gap: 30px;
}
.contacts__cl {
  flex: 0 0 auto;
  width: 380px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 30px;
}
.contacts__qrit {
  display: flex;
  align-items: center;
  gap: 36px;
}
.contacts__qr {
  width: 104px;
  display: flex;
  flex: 0 0 auto;
}
.contacts__citem {
  display: flex;
  align-items: center;
  gap: 17px;
  font-size: 18px;
}
.contacts__citem + .contacts__citem {
  margin-top: 18px;
}
.contacts__citem:hover {
  text-decoration: underline;
}
.contacts__citem-icon {
  width: 42px;
  flex: 0 0 auto;
}
.contacts__info {
  max-width: 460px;
  font-size: 18px;
}
.contacts__warn {
  font-weight: 500;
  margin-top: 34px;
}
.contacts__map {
  margin-top: 90px;
  position: relative;
  height: 700px;
}
.contacts__map > * {
  position: absolute !important;
  top: 0px;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}
@media (min-width: 1024px) and (max-height: 1000px) {
  .contacts__map {
    height: 500px;
  }
}
@media (max-width: 1219.98px) {
  .contacts__cols {
    padding: 0;
  }
}
@media (max-width: 767.98px) {
  .contacts__cols {
    gap: 60px;
    flex-direction: column;
  }
  .contacts__cl {
    width: 100%;
    max-width: 480px;
  }
  .contacts__qr {
    display: none;
  }
  .contacts__citem {
    font-size: 16px;
  }
  .contacts__warn {
    margin-top: 25px;
  }
  .contacts__map {
    margin-top: 60px;
    height: 500px;
  }
}

/**************************************************************
.error404
**************************************************************/
.error404 {
  display: flex;
  height: 100%;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.error404__numb {
  font-size: 96px;
  line-height: 1;
  text-transform: uppercase;
}
.error404__title {
  font-size: 45px;
  text-transform: uppercase;
}
.error404__buttons {
  padding-top: 60px;
}
@media (max-width: 1023.98px) {
  .error404__numb {
    font-size: 76px;
  }
  .error404__title {
    font-size: 32px;
  }
  .error404__buttons {
    padding-top: 30px;
  }
}
@media (max-width: 609.98px) {
  .error404__numb {
    font-size: 64px;
  }
  .error404__title {
    font-size: 26px;
  }
  .error404__buttons {
    padding-top: 30px;
  }
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIl9mb250cy5zY3NzIiwiX3Jlc2V0LnNjc3MiLCJpbmMvX3ZhcnMuc2NzcyIsIl9jb21tb24uc2NzcyIsImNvbW1vbi9fY29udGVudC5zY3NzIiwiY29tbW9uL19zZWN0aW9uLnNjc3MiLCJjb21tb24vX2VsZW1lbnRzLnNjc3MiLCJfbGlicy5zY3NzIiwiX2Zvcm1zLnNjc3MiLCJpbmMvX21peGlucy5zY3NzIiwiX3BvcHVwLnNjc3MiLCJfaGVhZGVyLnNjc3MiLCJjb21wb25lbnRzL19uYXZmaXguc2NzcyIsIl9mb290ZXIuc2NzcyIsInN0eWxlcy5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFDQTtFQUNDO0VBQ0E7RUFDQSxLQUNDO0VBR0Q7RUFDQTs7QUFHRDtFQUNDO0VBQ0E7RUFDQSxLQUNDO0VBR0Q7RUFDQTs7QUFHRDtFQUNDO0VBQ0E7RUFDQSxLQUNDO0VBR0Q7RUFDQTs7QUFHRDtFQUNDO0VBQ0E7RUFDQSxLQUNDO0VBR0Q7RUFDQTs7QUMxQ0Q7RUFDSTtFQUNBO0VBQ0E7OztBQUVKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFHSjtFQUNJOzs7QUFFSjtFQUNJO0VBQ0E7RUFDQSxhQzFCRztFRDJCSCxPQ3ZCUztFRHdCVDtFQUNBO0VBQ0E7RUFDQTtFQUNBLFlDOUJNOztBRG1DVjtBQUFBO0FBQUE7RUFHSTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBOzs7QUFHSjtFQUNFOzs7QUFHRjtFQUNJO0VBQ0E7RUFDQTtFQUFXOzs7QUV6RGY7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7OztBQUVKO0VBQ0k7RUFDQSxXREpjO0VDS2Q7RUFBbUI7RUFDbkI7O0FBT0E7RUFYSjtJQVlTOzs7QUFFTDtFQWRKO0lBZVE7OztBQUVKO0VBakJKO0lBa0JRO0lBQ0E7OztBQVNSO0VBQ0k7RUFBa0I7RUFDbEI7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0ksYUQ3Qk87OztBQ21DUDtFQURKO0lBRVE7Ozs7QUFJSjtFQURKO0lBRVE7Ozs7QUFJSjtFQURKO0lBRVE7Ozs7QUFJSjtFQURKO0lBRVE7Ozs7QUFJSjtFQURKO0lBRVE7Ozs7QUFJSjtFQURKO0lBRVE7Ozs7QUFJSjtFQURKO0lBRVE7Ozs7QUFJSjtFQURKO0lBRVE7Ozs7QUFJSjtFQURKO0lBRVE7Ozs7QUFJSjtFQURKO0lBRVE7Ozs7QUFJUjtFQUNJOzs7QUFHSjtFQUNJOzs7QUFLSjtFQUNJOztBQUVBO0VBSEo7SUFLWTtJQUNBO0lBQ0E7Ozs7QUM3SFo7RUFDSTtFQUNBOztBQUNBO0VBQ0k7O0FBRUo7RUFFSTs7QUFDQTtFQUNJOztBQUdSO0VBQ0ksT0ZYSztFRVlMO0VBQ0E7O0FBRUo7RUFDSTtFQUNBOztBQUVKO0VBQ0k7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7O0FBRUo7RUFDSTtFQUNBOztBQUVKO0VBQ0k7RUFDQTs7QUFFSjtBQUFBO0VBRUU7O0FBRUY7RUFDSTtFQUNBOztBQUVKO0VBQ0k7O0FBRUo7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLE9GbkRPO0VFb0RQO0VBQ0E7O0FBRUY7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVGO0VBQ0k7O0FBR0o7RUF4RUo7SUF5RVE7O0VBQ0E7SUFDSTs7RUFFSjtJQUNJO0lBQ0E7O0VBRUo7SUFDSTtJQUNBOztFQUVKO0lBQ0k7SUFDQTs7RUFFSjtJQUNJO0lBQ0E7O0VBRUo7SUFDSTtJQUNBOzs7O0FDL0ZSO0VBQ0k7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7O0FBS0o7RUFDSTtFQUNBOztBQUNBO0VBQ0k7RUFDQTs7QUFHUjtFQUNJO0VBQ0E7O0FBRUo7RUFDSTs7QUFFSjtFQUNJOztBQWFKO0VBQ0k7O0FBRUo7RUFDSTs7QUFFSjtFQUNJOztBQUNBO0VBQ0k7O0FBSVI7RUFFSTtJQUNJOzs7QUFPUjtFQUVJO0lBQ0c7SUFDQTs7RUFFSDtJQUNJOztFQUdKO0lBQ0k7O0VBRUo7SUFDSTs7O0FBZVo7RUFDSTs7O0FBRUo7RUFDSTs7O0FDakdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0k7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUF1RFI7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDSTtFQUFhO0VBQ2I7O0FBTUE7RUFDSTs7QUFFSjtFQUNJOztBQUVKO0VBQ0k7O0FBR1I7RUExQko7SUEyQlE7Ozs7QUNqR1I7QUFBQTtBQUFBO0FBTUE7RUFDSTs7O0FBRUo7RUFDRTs7QUFDQTtFQUNFO0VBQ0E7RUFBYTtFQUNiO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0U7O0FBR0o7RUFDRTs7QUFFRjtFQUNFO0lBQ0U7SUFBWTtJQUNaOzs7O0FBSU47RUFDSTtFQUFhO0VBQ2I7RUFDQTtFQUNBO0VBQ0E7RUFBVztFQUFVO0VBQ3JCO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0k7O0FBRUo7RUFDRTs7QUFNRjtFQUNJO0VBQ0E7RUFDQTs7QUFDQTtFQUNFO0VBQ0E7RUFDQTs7O0FBSVY7RUFDRTs7O0FDaEVGO0FBQUE7QUFBQTtBQ0dJO0VBQXNDO0VBQWM7OztBQUNwRDtFQUFnQyxPRERDO0VDQ2EsU0REVTs7O0FDRXhEO0VBQW1DLE9ERkY7RUNFZ0IsU0RGTzs7O0FDR3hEO0VBQW1DLE9ESEY7RUNHZ0IsU0RITzs7O0FDSXhEO0VBQW1DLE9ESkY7RUNJZ0IsU0RKTzs7O0FDS3hEO0VBQStCLE9ETEU7RUNLWSxTRExXOzs7QUNNeEQ7RUFBd0IsT0ROUztFQ01LLFNETmtCOzs7QUNPeEQ7RUFBNkIsT0RQSTtFQ09VLFNEUGE7OztBQUU1RDtFQUF5QztFQUFvQjs7O0FBQzdEO0VBQXNDO0VBQW9COzs7QUFDMUQ7RUFBd0M7RUFBb0I7OztBQUM1RDtFQUFzQztFQUFvQjs7O0FBQzFEO0VBQXNDO0VBQW9COzs7QUFDMUQ7RUFBZ0M7RUFBb0I7OztBQUVwRDtFQUE2Qjs7O0FBQzdCO0VBQTZCOzs7QUFDN0I7RUFBNkI7OztBQUM3QjtFQUE2Qjs7O0FBSTdCO0VBQWdCOzs7QUFJaEI7RUFDSTtFQUNBO0VBQWM7RUFDZCxhTjFCRzs7O0FNNEJQO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUlKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsYU45Q0c7RU0rQ0g7RUFBaUI7RUFDakI7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUNyQ0E7RUFDQTtFQUFTO0VBQ1Q7RUFBYTtFRHFDVDtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVKO0VBQ0k7RUFDQTtFQUNBOztBQUVKO0VBRVE7SUFDSTs7O0FBSVo7RUFDSTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQXJESjtJQXNEUTtJQUNBO0lBQ0E7SUFDQTs7O0FBSUo7RUFDSTtFQUNBOzs7QUVsR1I7QUFBQTtBQUFBO0FBR0E7RUFDSTtFQUNBO0VBQVE7RUFDUjtFQUFhO0VBQ2I7RUFDQTs7QUFDQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTtFQUNBO0VBQWE7RUFDYjtFQUNBO0VBQ0E7RUFDQTs7QUFJSjtFQUNJO0VBQ0E7RUFBYTtFQUNiO0VBQWE7RUFDYjtFQUNBO0VBQ0E7O0FBRUo7RUFDSTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGFSM0REOztBUTZESDtFQUNJO0VBQ0E7O0FBQ0E7RUFDSTs7QUFHUjtFQUNJOztBQUVKO0VBQ0k7OztBQ3hFUjtBQUFBO0FBQUE7QUFJSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0k7O0FBRUo7RUFDSTtFQUNBOztBQUdSO0VBQ0k7SUFDSTs7RUFFSjtJQUNJO0lBQ0E7SUFBVTtJQUNWO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBOzs7QUFHUjtFQUNJO0lBQ0k7SUFDQTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7SUFBYTtJQUNiO0lBQ0E7SUFBYTtJQUNiOzs7O0FDN0RaO0VBQ0k7RUFDQTtFQUNBO0VBQVE7RUFDUjtFQUFhO0VBQ2I7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0k7RUFDQTtFQUFXO0VBQ1g7RUFDQTtFQUNBO0VBQ0E7O0FBR1I7RUFDSTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7O0FBRUk7RUFDSTs7QUFFSjtFQUNJOztBQUtaO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNJOztBQUVKO0VBQ0k7RUFDQTs7QUFHUjtFQUNJOztBQUdKO0VBaEZKO0lBaUZROztFQUNBO0lBQ0k7SUFDQTtJQUNBOzs7O0FDcEZaO0FBQUE7QUFBQTtBQUdBO0VBQ0k7RUFDQTs7QUFDQTtFQUhKO0lBSVE7Ozs7QUNLUjs7QUFBQTtBQUdBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDSTtFQUNBOztBQUNBO0VBQ0k7O0FBR1I7RUFDSTtFQUNBOztBQUNBO0VBQ0k7O0FBR1I7RUFDSTs7QUFFSjtFQUNJO0VBQ0E7O0FBQ0E7RUFDSTs7QUFHUjtFQTdCSjtJQThCUTs7RUFDQTtJQUNJO0lBQ0E7O0VBRUo7SUFDSTs7RUFFSjtJQUNJO0lBQ0E7OztBQUdSO0VBM0NKO0lBNENROzs7QUFFSjtFQTlDSjtJQStDUTtJQUNBOztFQUNBO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7SUFDQTs7RUFDQTtJQUNJOzs7O0FBU2hCOztBQUFBO0FBSUk7RUFDSTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNJO0VBQ0E7RUFBYztFQUNkO0VBQ0E7RUFDQTs7QUFDQTtFQUNJOztBQUdSO0VBQ0k7O0FBSVI7RUFDSTtJQUNJO0lBQ0E7SUFDQTtJQUNBOzs7QUFHUjtFQUNJO0lBQ0k7O0VBRUo7SUFDSTtJQUNBO0lBQ0E7SUFDQTs7RUFDQTtJQUNJO0lBQWE7OztBQUl6QjtFQUNJO0lBQ0k7Ozs7QUFRWjs7QUFBQTtBQUlJO0VBQ0k7RUFDQTtFQUNBOztBQUVKO0VBQ0k7RUFDQTtFQUNBOztBQUNBO0VMMUlKO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFS3VJUTs7QUFFSjtFQUNJO0lBQ0k7OztBQUlaO0VBRVE7SUFDSTtJQUNBO0lBQWE7SUFDYjs7RUFHUjtJQUNJO0lBQ0E7SUFDQTs7RUFFSjtJQUNJOzs7O0FBT1o7O0FBQUE7QUFHQTtFQUNJOztBQUNBO0VBQ0k7RUFDQTtFQUNBOztBQUVKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBR0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTs7QUFDQTtFQUNJOztBQUtaO0VBQ0k7RUFDQTtFQUNBOztBQUVKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDSTs7QUFFSjtFTDdOSjtFQUNBO0VBQVc7RUFDWDtFSzZOUTtFQUF5QjtFQUN6QjtFQUNBO0VBQ0E7O0FBRUo7RUw5Tko7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBSzhOQTtFQUNJO0lBQ0k7SUFDQTs7O0FBR1I7RUFDSTtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTtJQUNBOztFQUNBO0lBQ0k7OztBQUlaO0VBQ0k7SUFDSTs7RUFFSjtJQUNJOztFQUdBO0lBQ0k7O0VBRUo7SUFDSTs7RUFHUjtJQUNJO0lBQ0E7O0VBR0o7SUFDSTtJQUNBOztFQUNBO0lBQ0k7Ozs7QUFTaEI7O0FBQUE7QUFJSTtFQUNJO0VBQ0E7RUFDQTs7QUFFSjtFQUdJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTs7QUFFSjtFQUNJOztBQUNBO0VBQ0k7O0FBSUo7RUFDSTtFQUNBOztBQUNBO0VBQ0k7O0FBRUo7RUFDSTtFQUFhO0VBQ2I7RUFDQTtFQUFTO0VBQ1Q7RUFDQTs7QUFJWjtFQUNJO0VBQ0E7O0FBRUo7RUFDSTtFQUNBOztBQUdSO0VBQ0k7SUFDSTtJQUNBO0lBQ0E7SUFDQTs7O0FBR1I7RUFDSTtJQUNJOzs7QUFHUjtFQUNJO0lBQ0k7OztBQUdSO0VBQ0k7SUFDSTs7RUFDQTtJQUNJO0lBQ0E7O0VBRUo7SUFDSTs7RUFFSjtJQUNJO0lBQ0E7Ozs7QUFTaEI7O0FBQUE7QUFJQTtFQUNJO0VBQ0E7O0FBQ0E7RUx4WkE7RUFDQTtFQUFTO0VBQ1Q7RUFBYTtFS3daVDtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVKO0VBQ0k7RUFDQTtFQUFTO0VBQ1Q7RUFBYTtFQUNiLFlaamJFO0VZa2JGO0VBQ0E7O0FBRUo7RUFDSTs7QUFHSjtFQUNJOzs7QUFLSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUVKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVKO0VBQ0k7RUFDQTtFQUNBOztBQUVKO0VBQ0k7RUFDQTtFQUNBOztBQUVKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDSTs7QUFFSjtFQUNJOztBQUVKO0VBQ0k7RUFDQTs7QUFHUjtFQUNJO0VBQ0E7O0FBS0o7RUFDSTtFQUNBOztBQUVKO0VBQ0k7RUFDQTtFQUNBOztBQUNBO0VBQ0k7RUFDQTtFQUFVO0VBQ1Y7RUFDQTs7QUFHUjtFQUNJO0lBQ0k7OztBQUdSO0VBQ0k7SUFDSTs7O0FBR1I7RUFDSTtJQUNJO0lBQ0E7O0VBRUo7SUFDSTtJQUNBOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7SUFDQTs7OztBQU1aO0FBQUE7QUFBQTtBQUdBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFFQTs7QUFDQTtFQUNJO0VBQ0E7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7O0FBRUo7RUFDSTs7QUFHSjtFQUNJO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOzs7QUFJUjtFQUNJO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJIiwiZmlsZSI6InN0eWxlcy5taW4uY3NzIiwic291cmNlc0NvbnRlbnQiOlsiXHJcbkBmb250LWZhY2Uge1xyXG5cdGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCc7XHJcblx0c3JjOiB1cmwoJy4uL2ZvbnRzL01vbnRzZXJyYXQtQm9sZC5lb3QnKTtcclxuXHRzcmM6XHJcblx0XHR1cmwoJy4uL2ZvbnRzL01vbnRzZXJyYXQtQm9sZC5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxyXG5cdFx0dXJsKCcuLi9mb250cy9Nb250c2VycmF0LUJvbGQud29mZicpIGZvcm1hdCgnd29mZicpLFxyXG5cdFx0dXJsKCcuLi9mb250cy9Nb250c2VycmF0LUJvbGQudHRmJykgZm9ybWF0KCd0cnVldHlwZScpO1xyXG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cdGZvbnQtc3R5bGU6IG5vcm1hbDtcclxufVxyXG5cclxuQGZvbnQtZmFjZSB7XHJcblx0Zm9udC1mYW1pbHk6ICdNb250c2VycmF0JztcclxuXHRzcmM6IHVybCgnLi4vZm9udHMvTW9udHNlcnJhdC1TZW1pQm9sZC5lb3QnKTtcclxuXHRzcmM6IFxyXG5cdFx0dXJsKCcuLi9mb250cy9Nb250c2VycmF0LVNlbWlCb2xkLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXHJcblx0XHR1cmwoJy4uL2ZvbnRzL01vbnRzZXJyYXQtU2VtaUJvbGQud29mZicpIGZvcm1hdCgnd29mZicpLFxyXG5cdFx0dXJsKCcuLi9mb250cy9Nb250c2VycmF0LVNlbWlCb2xkLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdGZvbnQtc3R5bGU6IG5vcm1hbDtcclxufVxyXG5cclxuQGZvbnQtZmFjZSB7XHJcblx0Zm9udC1mYW1pbHk6ICdNb250c2VycmF0JztcclxuXHRzcmM6IHVybCgnLi4vZm9udHMvTW9udHNlcnJhdC1SZWd1bGFyLmVvdCcpO1xyXG5cdHNyYzogXHJcblx0XHR1cmwoJy4uL2ZvbnRzL01vbnRzZXJyYXQtUmVndWxhci5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxyXG5cdFx0dXJsKCcuLi9mb250cy9Nb250c2VycmF0LVJlZ3VsYXIud29mZicpIGZvcm1hdCgnd29mZicpLFxyXG5cdFx0dXJsKCcuLi9mb250cy9Nb250c2VycmF0LVJlZ3VsYXIudHRmJykgZm9ybWF0KCd0cnVldHlwZScpO1xyXG5cdGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcblx0Zm9udC1zdHlsZTogbm9ybWFsO1xyXG59XHJcblxyXG5AZm9udC1mYWNlIHtcclxuXHRmb250LWZhbWlseTogJ01vbnRzZXJyYXQnO1xyXG5cdHNyYzogdXJsKCcuLi9mb250cy9Nb250c2VycmF0LU1lZGl1bS5lb3QnKTtcclxuXHRzcmM6IFxyXG5cdFx0dXJsKCcuLi9mb250cy9Nb250c2VycmF0LU1lZGl1bS5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxyXG5cdFx0dXJsKCcuLi9mb250cy9Nb250c2VycmF0LU1lZGl1bS53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXHJcblx0XHR1cmwoJy4uL2ZvbnRzL01vbnRzZXJyYXQtTWVkaXVtLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKTtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG5cdGZvbnQtc3R5bGU6IG5vcm1hbDtcclxufVxyXG5cclxuIiwiKiB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgb3V0bGluZTogbm9uZTtcbn1cbmh0bWwsIGJvZHksIGRpdiwgc3BhbiwgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgcCwgZW0sIGltZywgc3Ryb25nLCBzdWIsIHN1cCwgYiwgdSwgaSwgIGRsLCBkdCwgZGQsIG9sLCB1bCwgbGksIGZpZWxkc2V0LCBmb3JtLCBsYWJlbCwgdGFibGUsIHRib2R5LCB0Zm9vdCwgdGhlYWQsIHRyLCB0aCwgdGQsIGFydGljbGUsIGFzaWRlLCBjYW52YXMsIGRldGFpbHMsIGZpZ2NhcHRpb24sIGZpZ3VyZSwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCwgbWVudSwgbmF2LCBzZWN0aW9uLCBzdW1tYXJ5LCB0aW1lLCBtYXJrLCBhdWRpbywgdmlkZW8ge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGZvbnQtc2l6ZTogMTAwJTtcbn1cbmhlYWRlciwgbmF2LCBzZWN0aW9uLCBhcnRpY2xlLCBhc2lkZSwgZm9vdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5cbmh0bWwgeyAgXG4gICAgaGVpZ2h0OjEwMCU7IFxufVxuYm9keSB7ICBcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTsgXG4gICAgaGVpZ2h0OjEwMCU7IFxuICAgIGZvbnQtZmFtaWx5OiAkZm9udDsgXG4gICAgY29sb3I6ICRjb2xvci1ib2R5O1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGJhY2tncm91bmQ6ICRiZy1ib2R5O1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtdGFibGV0LXNtKSB7XG4gICAgICAgIC8vIGZvbnQtc2l6ZTogMTRweDtcbiAgICB9XG59XG5ib2R5ICosXG5ib2R5ICo6YmVmb3JlLFxuYm9keSAqOmFmdGVyIHtcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IFxufVxuXG5pbWcgeyBcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG59XG5cbnVsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuYSB7IFxuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgXG4gICAgbWFyZ2luOiAwOyBwYWRkaW5nOiAwO1xufVxuIiwiJGZvbnQ6ICdNb250c2VycmF0Jywgc2Fucy1zZXJpZjtcclxuXHJcbiRiZy1ib2R5OiAjMDEwMTAxO1xyXG5cclxuJGNvbG9yLWJvZHk6ICNGRkY7XHJcbiRjb2xvci10aXRsZTogIzE5MTkxODtcclxuJGNvbG9yLXRleHQ6ICM1NzdDODc7XHJcblxyXG5cclxuXHJcbiR3aWR0aC1jb250YWluZXI6IDExODBweDtcclxuJHBkLWNvbnRhaW5lcjogMTVweDtcclxuJHBkLWNvbnRhaW5lci1zbXg6IDE1cHg7XHJcblxyXG4kbWQtZGVza3RvcC1sZzogMTY5OS45OHB4O1xyXG4kbWQtZGVza3RvcC1tZDogMTMzOS45OHB4O1xyXG4kbWQtZGVza3RvcDogMTIxOS45OHB4O1xyXG4kbWQtdGFibGV0OiAxMDIzLjk4cHg7XHJcbiRtZC10YWJsZXQtc206IDc2Ny45OHB4O1xyXG4kbWQtbW9iaWxlLWxnOiA2MDkuOThweDtcclxuJG1kLW1vYmlsZTogNDc4Ljk4cHg7XHJcbiRtZC1tb2JpbGUtc206IDM5OS45OHB4O1xyXG4kbWQtbW9iaWxlLXNteDogMzYwcHg7XHJcblxyXG4kaGVhZGVyLWg6IDEwMHB4O1xyXG4kaGVhZGVyLWgtdDogODBweDtcclxuJGhlYWRlci1oLW06IDcwcHg7IiwiXG4uY2xlYXIgeyBcbiAgICBjbGVhcjogYm90aDsgXG4gICAgaGVpZ2h0OiAwOyBcbiAgICBvdmVyZmxvdzogaGlkZGVuOyBcbiAgICBmb250LXNpemU6IDA7XG59XG4uY2xlYXJmaXg6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY2xlYXI6IGJvdGg7XG59XG4uY29udGFpbmVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6ICR3aWR0aC1jb250YWluZXI7IFxuICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtZC1kZXNrdG9wLWxnKSB7XG4gICAgICAgXG4gICAgfVx0XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1kLWRlc2t0b3AtbWQpIHtcbiAgICAgICBcbiAgICB9XHRcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbWQtZGVza3RvcCkge1xuICAgICAgICAgbWF4LXdpZHRoOiA5NDVweDtcbiAgICB9XHRcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbWQtdGFibGV0KSB7XG4gICAgICAgIG1heC13aWR0aDogNzEwcHg7XG4gICAgfVx0XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1kLXRhYmxldC1zbSkge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDAgJHBkLWNvbnRhaW5lcjtcbiAgICB9XHRcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbWQtbW9iaWxlLWxnKSB7XG4gICAgICAgIFxuICAgIH1cbn1cblxuXG5cbi53cmFwcGVyIHtcbiAgICBtaW4taGVpZ2h0OiAxMDAlOyB3aWR0aDogMTAwJTsgIFxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgXG4gICAgei1pbmRleDogMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbi5jb250ZW50X193cmFwcGVyIHtcbiAgICBmbGV4OiAxIDAgYXV0bztcbn1cblxuLnBkX19oZWFkZXIge1xuICAgIHBhZGRpbmctdG9wOiAkaGVhZGVyLWg7XG59XG5cblxuXG4uaGlkZS1kZXNrdG9wLWxnIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLWRlc2t0b3AtbGcpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbn1cbi5oaWRlLWRlc2t0b3AtbWQge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtZGVza3RvcC1tZCkge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuLmhpZGUtZGVza3RvcCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1kZXNrdG9wKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG59XG4uaGlkZS10YWJsZXQge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtdGFibGV0KSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG59XG4uaGlkZS10YWJsZXQtc20ge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtdGFibGV0LXNtKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG59XG4uaGlkZS1tb2JpbGUtbGcge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtbW9iaWxlLWxnKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG59XG4uc2hvdy1kZXNrdG9wIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1kLWRlc2t0b3ArIDAuMDJweCkge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuLnNob3ctdGFibGV0IHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1kLXRhYmxldCsgMC4wMnB4KSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG59XG4uc2hvdy10YWJsZXQtc20ge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWQtdGFibGV0LXNtKyAwLjAycHgpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbn1cbi5zaG93LW1vYmlsZS1sZyB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtZC1tb2JpbGUtbGcrIDAuMDJweCkge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG4ubm9zY3JvbGwge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5ub3dyYXAge1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cblxuXG4ud293IHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIFxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtdGFibGV0KSB7XG4gICAgICAgIFxuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgLXdlYmtpdC1hbmltYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGFuaW1hdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuXG4gICAgfVxuXG59XG5cblxuXG5AaW1wb3J0IFwiY29tbW9uL2NvbnRlbnRcIjtcbkBpbXBvcnQgXCJjb21tb24vc2VjdGlvblwiO1xuQGltcG9ydCBcImNvbW1vbi9lbGVtZW50c1wiOyIsIlxyXG4uY29udGVudF9fdGV4dCB7XHJcbiAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICBsaW5lLWhlaWdodDogbGgoMjgsIDE4KTtcclxuICAgID4gKiB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzVweDtcclxuICAgIH1cclxuICAgIGEge1xyXG4gICAgICAgIFxyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgaDEsIGgyLCBoMywgaDQsIGg1IHtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLWJvZHk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTtcclxuICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgfVxyXG4gICAgaDEge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMzZweDtcclxuICAgICAgICBtYXJnaW46IDQ1cHggMDtcclxuICAgIH1cclxuICAgIGgyIHtcclxuICAgICAgICBmb250LXNpemU6IDMycHg7XHJcbiAgICAgICAgbWFyZ2luOiA0NXB4IDA7XHJcbiAgICB9XHJcbiAgICBoMyB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgICAgIG1hcmdpbjogMzBweCAwO1xyXG4gICAgfVxyXG4gICAgaDQge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICBtYXJnaW46IDMwcHggMDtcclxuICAgIH1cclxuICAgIGg1IHtcclxuICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgbWFyZ2luOiAzMHB4IDA7XHJcbiAgICB9XHJcbiAgICB1bCxcclxuICAgIG9sIHtcclxuICAgICAgcGFkZGluZy1sZWZ0OiAyNnB4O1xyXG4gICAgfVxyXG4gICAgb2wge1xyXG4gICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTsgXHJcbiAgICAgICAgY291bnRlci1yZXNldDogbnVtO1xyXG4gICAgfVxyXG4gICAgbGkge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIH1cclxuICAgIHVsIGxpOmJlZm9yZSB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiAwcHg7XHJcbiAgICAgIHJpZ2h0OiAxMDAlO1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IDExcHg7IFxyXG4gICAgICBjb2xvcjogJGNvbG9yLWJvZHk7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgY29udGVudDogJ+KAoic7XHJcbiAgICB9XHJcbiAgICBvbCBsaTpiZWZvcmUge1xyXG4gICAgICBjb250ZW50OiBjb3VudGVyKG51bSkgJy4nOyBcclxuICAgICAgY291bnRlci1pbmNyZW1lbnQ6IG51bTtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1x0XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiAwcHg7XHJcbiAgICAgIHJpZ2h0OiAxMDAlO1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IDhweDsgXHJcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgfVxyXG4gICAgaW1nIHtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtdGFibGV0LXNtKSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgID4gKiB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGgxIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyOHB4O1xyXG4gICAgICAgICAgICBtYXJnaW46IDQwcHggMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgaDIge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgICAgICAgICAgIG1hcmdpbjogNDBweCAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICBoMyB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgICAgICAgICAgbWFyZ2luOiAyNXB4IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGg0IHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgICAgICBtYXJnaW46IDI1cHggMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgaDUge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMjVweCAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIuc2VjdGlvbiB7XHJcbiAgICAmX19oZWFkIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIH1cclxuICAgICZfX3RpdGxlIHtcclxuICAgICAgICBmb250LXNpemU6IDQycHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICAmLmZzLS1zbSB7XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICZfX2ludHJvIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgICAgICAudGV4dC0tY2VudGVyICYge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICZfX2J1dHRvbnMge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDY4cHg7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgfVxyXG4gICAgJl9fZmlyc3Qge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcclxuICAgIH1cclxuICAgICZfX21nIHtcclxuICAgICAgICBtYXJnaW46IDEyMHB4IDA7XHJcbiAgICAgICAgJi0tbWQge1xyXG4gICAgICAgICAgXHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtLXNtIHtcclxuICAgICAgICAgICBcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmX19tZ3Qge1xyXG4gICAgICAgICYtLXNtIHtcclxuICAgICAgICAgIFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICZfX3BkIHtcclxuICAgICAgICBwYWRkaW5nOiAxMzBweCAwO1xyXG4gICAgfVxyXG4gICAgJl9fcGR0IHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogNzBweDtcclxuICAgIH1cclxuICAgICZfX3RhYiB7XHJcbiAgICAgICAgZGlzcGxheTpub25lO1xyXG4gICAgICAgICYuc2hvdyB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLWRlc2t0b3ApIHtcclxuICAgICAgIFxyXG4gICAgICAgICZfX21nIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAxMDBweCAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLXRhYmxldCkge1xyXG4gICAgICAgXHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLXRhYmxldC1zbSkge1xyXG4gICAgIFxyXG4gICAgICAgICZfX2hlYWQge1xyXG4gICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMycHg7XHJcbiAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fdGl0bGUge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgIH1cclxuICAgICAgICAmX19pbnRybyB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fbWcge1xyXG4gICAgICAgICAgICBtYXJnaW46IDYwcHggMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLW1vYmlsZSkge1xyXG4gICAgICAgICAgXHJcbiAgICB9XHJcbn1cclxuXHJcbi50aXRsZSB7XHJcbiAgICBcclxufVxyXG4udGV4dCB7XHJcbiAgIFxyXG59XHJcblxyXG4udGV4dC0tY2VudGVyIHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG4udGV4dC0td2hpdGUge1xyXG4gICAgY29sb3I6ICNmZmZmO1xyXG59IiwiLmljb24ge1xuICAgIHN0cm9rZTogY3VycmVudENvbG9yO1xuICAgIGZpbGw6IG5vbmU7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICYtLWZpbGwge1xuICAgICAgICBmaWxsOiBjdXJyZW50Q29sb3I7XG4gICAgICAgIHN0cm9rZTogaW5pdGlhbDtcbiAgICB9XG4gICAgcGF0aCB7XG4gICAgICAgIHN0cm9rZTogY3VycmVudENvbG9yO1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgICB9XG59XG5cbi8vIC5zb2NpYWwge1xuLy8gICAgICZfX2l0ZW1zIHtcbi8vICAgICAgICAgZGlzcGxheTogZmxleDtcbi8vICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbi8vICAgICAgICAgZ2FwOiAxNnB4O1xuLy8gICAgIH1cbi8vICAgICBhIHtcbi8vICAgICAgICAgd2lkdGg6IDU1cHg7IGhlaWdodDogNTVweDtcbi8vICAgICAgICAgZGlzcGxheTogZmxleDtcbi8vICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbi8vICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4vLyAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNGMEZGRTk7XG4vLyAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xuLy8gICAgICAgICBjb2xvcjogI0YwRkZFOTtcbi8vICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4vLyAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgXG4vLyAgICAgICAgIH1cbi8vICAgICB9XG4vLyAgICAgLmljb24ge1xuLy8gICAgICAgICB3aWR0aDogMTlweDsgaGVpZ2h0OiAxOXB4O1xuLy8gICAgIH1cbi8vIH0gICBcblxuXG5cblxuXG5cbi8vIC5yYXRpbmcge1xuLy8gXHRtYXJnaW46IDAgYXV0bztcbi8vIFx0ZGlzcGxheTogaW5saW5lLWZsZXg7XG4vLyAgICAgZmxleC13cmFwOiB3cmFwO1xuLy8gICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbi8vICAgICBtYXJnaW46IDAgLTJweDtcbi8vICAgICBzcGFuIHtcbi8vICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuLy8gICAgICAgICB0b3A6IC0xcHg7XG4vLyAgICAgICAgIHdpZHRoOiAxOXB4OyBoZWlnaHQ6IDE4cHg7XG4vLyAgICAgICAgIG1hcmdpbjogMCAycHg7XG4vLyAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvaWNvbnMvc3Rhci5zdmcpIG5vLXJlcGVhdDtcbi8vICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlciAhaW1wb3J0YW50O1xuLy8gICAgICAgICAmLmFjdGl2ZSB7XG4vLyAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2ljb25zL3N0YXItYWN0aXZlLnN2Zykgbm8tcmVwZWF0O1xuLy8gICAgICAgICB9XG4vLyAgICAgfVxuLy8gfVxuXG5cblxuXG4ubGluayB7XG5cbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgbGluZS1oZWlnaHQ6IGxoKDI3LCAyMCk7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIC5pY29uIHtcbiAgICAgICAgd2lkdGg6IDIwcHg7IGhlaWdodDogMjBweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDhweDtcbiAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICAgXG4gICAgfVxuICAgICZfX21vcmUge1xuICAgICAgICAuY2xvc2VfdCB7XG4gICAgICAgICAgICBkaXNwbGF5Om5vbmVcbiAgICAgICAgfVxuICAgICAgICAmLm9wZW5lZCAub3Blbl90IHtcbiAgICAgICAgICAgIGRpc3BsYXk6bm9uZVxuICAgICAgICB9XG4gICAgICAgICYub3BlbmVkIC5jbG9zZV90IHtcbiAgICAgICAgICAgIGRpc3BsYXk6YmxvY2tcbiAgICAgICAgfVxuICAgIH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLWRlc2t0b3ApIHtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4XG4gICAgfVxufVxuXG4vLyAuY29udGVudF9fdG9nZ2xlIHtcbi8vICAgICA+ICoge1xuLy8gICAgICAgICBkaXNwbGF5OiBub25lO1xuLy8gICAgIH1cbi8vICAgICAmID4gOm50aC1jaGlsZCgxKSxcbi8vICAgICAmID4gOm50aC1jaGlsZCgyKSB7XG4vLyAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuLy8gICAgIH1cbi8vICAgICAmLm9wZW5lZCA+ICoge1xuLy8gICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuLy8gICAgIH1cbi8vICAgICAmLS1tb2JpbGUge1xuLy8gICAgICAgICA+ICoge1xuLy8gICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4vLyAgICAgICAgIH1cbi8vICAgICB9XG4vLyAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQtc20pIHtcbi8vICAgICAgICAgPiAqIHtcbi8vICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbi8vICAgICAgICAgfVxuLy8gICAgICAgICAmID4gOm50aC1jaGlsZCgxKSB7XG4vLyAgICAgICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuLy8gICAgICAgICB9XG4vLyAgICAgfVxuLy8gfVxuXG5cblxuQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1kZXNrdG9wKSB7XG5cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAkbWQtdGFibGV0KSB7XG5cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAkbWQtdGFibGV0LXNtKSB7XG5cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAkbWQtbW9iaWxlLWxnKSB7XG5cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAkbWQtbW9iaWxlKSB7XG5cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAkbWQtbW9iaWxlLXNtKSB7XG5cbn0iLCIvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbnN3aXBlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4uc3dpcGVyIHtcblxufVxuLnN3aXBlci1zbGlkZSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgJi1idWxsZXQge1xuICAgIG1hcmdpbjogMCA1cHggIWltcG9ydGFudDtcbiAgICB3aWR0aDogMTZweDsgaGVpZ2h0OiAxNnB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNGRkY7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgICBvcGFjaXR5OiAxO1xuICAgICYtYWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgzOWRlZywgI2Y5YmUzMiAwJSwgI2RhOTkwMCAxMDAlKTs7XG4gICAgfVxuICB9XG4gICYtY2xpY2thYmxlIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuICBAbWVkaWEgKG1heC13aWR0aDogJG1kLXRhYmxldC1zbSkge1xuICAgICYtYnVsbGV0IHtcbiAgICAgIHdpZHRoOiA3cHg7IGhlaWdodDogN3B4O1xuICAgICAgbWFyZ2luOiAwIDNweCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuLnN3aXBlci1idXR0b24ge1xuICAgIHdpZHRoOiAzMnB4OyBoZWlnaHQ6IDMycHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHRvcDogYXV0bzsgcmlnaHQ6IDA7IGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAyNHB4O1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgY29sb3I6IGJsYWNrO1xuICAgICY6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAuaWNvbiB7XG4gICAgICB3aWR0aDogOTAlO1xuICAgIH1cbiAgICAmOmhvdmVyIC5pY29uIHtcbiAgICAgIFxuICAgIH1cblxuICAgICYtbmF2IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAuc3dpcGVyLXBhZ2luYXRpb24ge1xuICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgbWFyZ2luOiAwIC02cHg7XG4gICAgICAgIH1cbiAgICB9XG59XG4uc3dpcGVyLXNjcm9sbGJhciB7XG4gIGJhY2tncm91bmQ6IG5vbmUgO1xufVxuXG5cblxuIiwiLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5mb3Jtc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5AaW5jbHVkZSBpbnB1dC1wbGFjZWhvbGRlcignLmlucHV0JywgcmdiYSg4NSwgODUsIDg1LCAwLjYpLCAxKTtcblxuLmlucHV0OmZvY3VzOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtjb2xvcjogdHJhbnNwYXJlbnQ7IG9wYWNpdHk6IDA7fVxuLmlucHV0OmZvY3VzOjotby1pbnB1dC1wbGFjZWhvbGRlciB7ICBjb2xvcjogdHJhbnNwYXJlbnQ7IG9wYWNpdHk6IDA7fVxuLmlucHV0OmZvY3VzOjotbW96LWlucHV0LXBsYWNlaG9sZGVyIHsgIGNvbG9yOiB0cmFuc3BhcmVudDsgb3BhY2l0eTogMDt9XG4uaW5wdXQ6Zm9jdXM6LW1vei1pbnB1dC1wbGFjZWhvbGRlciB7IGNvbG9yOiB0cmFuc3BhcmVudDsgb3BhY2l0eTogMDt9XG4uaW5wdXQ6Zm9jdXM6Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7IGNvbG9yOiB0cmFuc3BhcmVudDsgb3BhY2l0eTogMDt9XG4uaW5wdXQ6Zm9jdXM6aW5wdXQtcGxhY2Vob2xkZXIge2NvbG9yOiB0cmFuc3BhcmVudDsgb3BhY2l0eTogMDt9XG5cbmlucHV0W3BsYWNlaG9sZGVyXSAgICAgICAgICB7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt9XG5pbnB1dDo6LW1vei1wbGFjZWhvbGRlciAgICAge3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7fSBcbmlucHV0Oi1tb3otcGxhY2Vob2xkZXIgICAgICB7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt9IFxuaW5wdXQ6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO31cblxuXG5cbmlucHV0LCBidXR0b24geyAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7fVxuXG5cblxuLmlucHV0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDM1cHg7IGxpbmUtaGVpZ2h0OiAzM3B4O1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udDtcbn1cbnRleHRhcmVhLmlucHV0IHtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgICByZXNpemU6IG5vbmU7XG4gICAgaGVpZ2h0OiAxMDBweDtcbn1cblxuXG4uYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaGVpZ2h0OiA5MHB4O1xuICAgIHBhZGRpbmc6IDAgODBweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICBmb250LWZhbWlseTogJGZvbnQ7XG4gICAgZm9udC1zaXplOiAyNHB4OyBjb2xvcjogYmxhY2s7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB6LWluZGV4OiAyO1xuICAgICY6OmJlZm9yZSwgJjo6YWZ0ZXIge1xuICAgICAgICBAaW5jbHVkZSBhYnMtYWxsO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoNHB4KTtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDM5ZGVnLCAjZjliZTMyIDAlLCAjZGE5OTAwIDEyMCUpO1xuICAgICAgICB6LWluZGV4OiAtMjtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgzOWRlZywgI2ZiYjEwMSAwJSwgI2Q5ODIwMCAxMjAlKTtcbiAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICAgIEBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi0tbWQge1xuICAgICAgICBoZWlnaHQ6IDY5cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgcGFkZGluZzogMCA0MHB4O1xuICAgIH1cbiAgICAmLS1tZHgge1xuICAgICAgICBoZWlnaHQ6IDU5cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgcGFkZGluZzogMCA0MHB4O1xuICAgIH1cbiAgICAmLS1zbSB7XG4gICAgICAgIGhlaWdodDogNDRweDtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBwYWRkaW5nOiAwIDMwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICB9XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLXRhYmxldC1zbSkge1xuICAgICAgICBoZWlnaHQ6IDQ4cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgcGFkZGluZzogMCAzMHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgICAgIFxuICAgIH1cblxuICAgICYtLXdhbGwge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZzogMCA0MHB4O1xuICAgIH1cbn0iLCJAdXNlIFwic2FzczptYXRoXCI7XHJcblxyXG5AbWl4aW4gaW5wdXQtcGxhY2Vob2xkZXIoJGNsYXNzLCAkY29sb3IsICRvcGFjaXR5OjAuNikge1xyXG4gICAgI3skY2xhc3N9Ojotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtjb2xvcjogJGNvbG9yO29wYWNpdHk6ICRvcGFjaXR5O31cclxuICAgICN7JGNsYXNzfTo6LW8taW5wdXQtcGxhY2Vob2xkZXJ7Y29sb3I6ICRjb2xvcjtvcGFjaXR5OiAkb3BhY2l0eTt9XHJcbiAgICAjeyRjbGFzc306Oi1tb3otaW5wdXQtcGxhY2Vob2xkZXJ7IGNvbG9yOiAkY29sb3I7b3BhY2l0eTogJG9wYWNpdHk7fVxyXG4gICAgI3skY2xhc3N9Oi1tb3otaW5wdXQtcGxhY2Vob2xkZXJ7ICBjb2xvcjogJGNvbG9yO29wYWNpdHk6ICRvcGFjaXR5O31cclxuICAgICN7JGNsYXNzfTo6LW1zLWlucHV0LXBsYWNlaG9sZGVyeyAgY29sb3I6ICRjb2xvcjtvcGFjaXR5OiAkb3BhY2l0eTt9XHJcbiAgICAjeyRjbGFzc30gaW5wdXQtcGxhY2Vob2xkZXIgeyAgY29sb3I6ICRjb2xvcjtvcGFjaXR5OiAkb3BhY2l0eTt9XHJcbiAgICAjeyRjbGFzc306OnBsYWNlaG9sZGVyIHtjb2xvcjogJGNvbG9yO29wYWNpdHk6ICRvcGFjaXR5O31cclxuICAgICN7JGNsYXNzfTpwbGFjZWhvbGRlci1zaG93biB7Y29sb3I6ICRjb2xvcjtvcGFjaXR5OiAkb3BhY2l0eTt9XHJcbn1cclxuXHJcblxyXG5AbWl4aW4gYWJzLWFsbCB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBsZWZ0OiAwOyB0b3A6IDA7XHJcbiAgICB3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlO1xyXG59XHJcbkBtaXhpbiBhYnMtY2VudGVyIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGxlZnQ6IDUwJTsgdG9wOiA1MCU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKVxyXG59XHJcblxyXG5AbWl4aW4gcGhvdG8tY292ZXIge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbn1cclxuXHJcbkBmdW5jdGlvbiBsaCgkbGgsICRmcykge1xyXG4gICAgQHJldHVybiAje21hdGguZGl2KCRsaCwgJGZzKX07XHJcbn0iLCJcclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbnBvcHVwXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4ucG9wdXAge1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgdG9wOiAwOyBsZWZ0OiAwO1xyXG4gICAgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTtcclxuICAgIG92ZXJmbG93OiBhdXRvO1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICAgICZfX2NvbnRlbnQge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGF1dG87XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIHBhZGRpbmc6IDE1cHggMTVweDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgei1pbmRleDogMTtcclxuICAgIH1cclxuICAgICZfX2JnIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICMyMzI3MzA7XHJcbiAgICAgICAgb3BhY2l0eTogMC43O1xyXG4gICAgfVxyXG4gICAgJl9fY29udGFpbmVyIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7IG1heC13aWR0aDogNTEwcHg7XHJcbiAgICAgICAgcGFkZGluZzogNjBweCAzMHB4IDcwcHg7XHJcbiAgICAgICAgYmFja2dyb3VuZDogIzJCMkQzODtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAvLyBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIC8vIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICB9XHJcbiAgICAmX19jbG9zZSB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHJpZ2h0OiAxM3B4OyB0b3A6IDEzcHg7XHJcbiAgICAgICAgd2lkdGg6IDI4cHg7IGhlaWdodDogMjhweDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL3BvcHVwLWNsb3NlLnN2Zykgbm8tcmVwZWF0IGNlbnRlcjtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgei1pbmRleDogOTk7XHJcbiAgICB9XHJcbiAgICAmX19oZWFkIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgfVxyXG4gICAgJl9fdGl0bGUge1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogNDhweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDJlbTtcclxuICAgICAgICBjb2xvcjogI0ZGRkZGRjtcclxuICAgICAgICBmb250LWZhbWlseTogJGZvbnQ7XHJcbiAgICB9XHJcbiAgICBmb3JtIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDM2MHB4O1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgIC5idG4ge1xyXG4gICAgICAgICAgICBtaW4td2lkdGg6IDI4MHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICZfX2ljb250aGFuayB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcclxuICAgIH1cclxuICAgICYtdGhhbmsgJl9fdGl0bGUge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICB9XHJcblxyXG59IiwiLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbmhlYWRlclxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuLmhlYWRlciB7XHJcbiAgICAmX19pbm5lciB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICBtaW4taGVpZ2h0OiAxMzJweDtcclxuICAgICAgICBwYWRkaW5nOiAxMHB4IDA7XHJcbiAgICB9XHJcbiAgICAmX19jb250YWN0cyB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICBnYXA6IDE2cHg7XHJcbiAgICB9XHJcbiAgICAmX19jaXRlbSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGdhcDogMTdweDtcclxuICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWljb24ge1xyXG4gICAgICAgICAgICB3aWR0aDogNDJweDtcclxuICAgICAgICAgICAgZmxleDogMCAwIGF1dG87XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQpIHtcclxuICAgICAgICAmX19pbm5lciB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgNzBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fYnVyZ2VyIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICByaWdodDogMDsgdG9wOiA1MCU7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgICAgICAgd2lkdGg6IDYwcHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogNjBweDtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtdGFibGV0LXNtKSB7XHJcbiAgICAgICAgJl9faW5uZXIge1xyXG4gICAgICAgICAgICBtaW4taGVpZ2h0OiA4MHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19sb2dvIHtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiAxNjZweFxyXG4gICAgICAgIH1cclxuICAgICAgICAmX19idXJnZXIge1xyXG4gICAgICAgICAgICB3aWR0aDogNDBweDsgaGVpZ2h0OiA0MHB4O1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIHJpZ2h0OiBhdXRvOyB0b3A6IGF1dG87XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogaW5pdGlhbFxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQGltcG9ydCAnY29tcG9uZW50cy9uYXZmaXgnOyIsIi5uYXZmaXgge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHRvcDogMDsgbGVmdDogMDtcclxuICAgIHdpZHRoOiAxMDAlOyBoZWlnaHQ6IGNhbGModmFyKC0tdmgpICogMTAwKTtcclxuICAgIGJhY2tncm91bmQ6ICNmZmY7XHJcbiAgICB6LWluZGV4OiA5OTk7XHJcbiAgICBwYWRkaW5nOiAzMHB4IDA7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBvdmVyZmxvdzogYXV0bztcclxuICAgIGJhY2tncm91bmQ6ICMwMTAxMDE7XHJcbiAgICBcclxuICAgICZfX2hlYWQge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgcGFkZGluZzogMTZweCAwO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBsZWZ0OiA1MCU7IGJvdHRvbTogMDtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMDBweDtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzM3MzczNztcclxuICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJl9fbG9nbyB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAxNjZweDtcclxuICAgIH1cclxuICAgICZfX2Nsb3NlIHtcclxuICAgICAgICB3aWR0aDogNDBweDtcclxuICAgICAgICBoZWlnaHQ6IDQwcHg7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgfVxyXG5cclxuICAgICZfX2lubmVyIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xyXG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgfVxyXG5cclxuICAgICZfX21lbnUge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQ4cHg7XHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAmICsgbGkge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIFxyXG4gICAgJl9fY2l0ZW0ge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBnYXA6IDE3cHg7XHJcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDI0cHg7XHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWljb24ge1xyXG4gICAgICAgICAgICB3aWR0aDogNDJweDtcclxuICAgICAgICAgICAgZmxleDogMCAwIGF1dG87XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJl9fYnV0dG9ucyB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcclxuICAgIH1cclxuICAgIFxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQtc20pIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogMDtcclxuICAgICAgICAmX19oZWFkIHtcclxuICAgICAgICAgICAgbWluLWhlaWdodDogODBweDtcclxuICAgICAgICAgICAgcGFkZGluZzogMTBweCAwO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1NXB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsIlxyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuZm9vdGVyXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4uZm9vdGVyIHtcclxuICAgIHBhZGRpbmc6IDYwcHggMCA4MHB4O1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQtc20pIHtcclxuICAgICAgICBwYWRkaW5nOiA2MHB4IDA7XHJcbiAgICB9XHJcbn1cclxuIiwiQGltcG9ydCBcImluYy9jb3JlXCI7XHJcblxyXG5AaW1wb3J0IFwiZm9udHNcIjtcclxuQGltcG9ydCBcInJlc2V0XCI7XHJcbkBpbXBvcnQgXCJjb21tb25cIjtcclxuQGltcG9ydCBcImxpYnNcIjtcclxuQGltcG9ydCBcImZvcm1zXCI7XHJcbkBpbXBvcnQgXCJwb3B1cFwiO1xyXG5AaW1wb3J0IFwiaGVhZGVyXCI7XHJcbkBpbXBvcnQgXCJmb290ZXJcIjtcclxuXHJcblxyXG5cclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuLmhlcm8ge1xyXG4gICAgcGFkZGluZzogOTBweCAwO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9oZXJvLWJnLmpwZykgbm8tcmVwZWF0IGNlbnRlcjtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgICAmX19sb2dvIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDM0MHB4O1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvIDk1cHg7XHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJl9fdGl0bGUge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogNDBweDtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgIGIge1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICZfX2J1dHRvbnMge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDgwcHg7XHJcbiAgICB9XHJcbiAgICAmX19ib3R0b20ge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDYwcHg7XHJcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgICAgIHAgKyBwIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMThweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1kLXRhYmxldCswLjAycHgpIGFuZCAobWF4LWhlaWdodDogMTAwMHB4KSB7XHJcbiAgICAgICAgcGFkZGluZzogMzBweCAwIDYwcHg7XHJcbiAgICAgICAgJl9fbG9nbyB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDcwcHg7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogMjgwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2J1dHRvbnMge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA2MHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19ib3R0b20ge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQpIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2hlcm8tYmctdGFibGV0LmpwZyk7XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLXRhYmxldC1zbSkge1xyXG4gICAgICAgIHBhZGRpbmc6IDMwcHggMCAwO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgJl9fbG9nbyB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX3RpdGxlIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19idXR0b25zIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjhweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fYm90dG9tIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgICAgICBwICsgcCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxNHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuXHJcblxyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4uZXF1aXAge1xyXG4gICAgJl9faXRlbXMge1xyXG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcclxuICAgICAgICBncmlkLWdhcDogMjJweCAzMHB4O1xyXG4gICAgfVxyXG4gICAgJl9faXRlbSB7XHJcbiAgICAgICAgbWluLWhlaWdodDogMTY3cHg7XHJcbiAgICAgICAgcGFkZGluZzogMjJweDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgZ2FwOiAzMHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvZXF1aXAvYmctaXRlbS5wbmcpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xyXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xyXG4gICAgICAgICYtaWNvbiB7XHJcbiAgICAgICAgICAgIGZsZXg6IDAgMCBhdXRvO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAzcHg7IGhlaWdodDogMTAwcHg7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyBcclxuICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi10aXRsZSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1kZXNrdG9wKSB7XHJcbiAgICAgICAgJl9faXRlbXMge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDc4NnB4O1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xyXG4gICAgICAgICAgICBncmlkLWdhcDogMzBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLXRhYmxldC1zbSkge1xyXG4gICAgICAgICZfX2l0ZW1zIHtcclxuICAgICAgICAgICAgZ3JpZC1nYXA6IDEwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2l0ZW0ge1xyXG4gICAgICAgICAgICBtaW4taGVpZ2h0OiA5MHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDE4cHg7XHJcbiAgICAgICAgICAgIGdhcDogMjVweDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9lcXVpcC9iZy1pdGVtLW1vYi5wbmcpO1xyXG4gICAgICAgICAgICAmLWljb24ge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDU5cHg7IGhlaWdodDogNTFweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtbW9iaWxlLWxnKSB7XHJcbiAgICAgICAgJl9faXRlbXMge1xyXG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5cclxuXHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5cclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbi5nYWxsZXJ5IHtcclxuICAgICZfX2l0ZW1zIHtcclxuICAgICAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7XHJcbiAgICAgICAgZ3JpZC1nYXA6IDVweDtcclxuICAgIH1cclxuICAgICZfX2l0ZW0ge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNzUlO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgcGhvdG8tY292ZXI7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIH1cclxuICAgICAgICBAbWVkaWEgKGFueS1ob3ZlcjogaG92ZXIpIHtcclxuICAgICAgICAgICAgJjpob3ZlciBpbWcge1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQpIHtcclxuICAgICAgICAmX19jYXJvdXNlbCB7XHJcbiAgICAgICAgICAgIC5zd2lwZXItcGFnaW5hdGlvbiB7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgcmlnaHQ6IDIwcHg7IGJvdHRvbTogMTBweDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2l0ZW1zIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgZ3JpZC1nYXA6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2l0ZW0ge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNzUlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcblxyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4uc2VydmljZXMge1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICZfX2NvbHMge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgZ2FwOiA2MHB4O1xyXG4gICAgfVxyXG4gICAgJl9faXRlbXMge1xyXG4gICAgICAgIGZsZXg6IDEgMCAwO1xyXG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xyXG4gICAgICAgIGdyaWQtZ2FwOiA1MHB4IDQ1cHg7XHJcbiAgICB9XHJcbiAgICAmX19pdGVtIHtcclxuICAgICAgICAmLXRpdGxlIHtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMzlkZWcsICNmOWJlMzIgMCUsICNkYTk5MDAgMTAwJSk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY2xpcDogdGV4dDtcclxuICAgICAgICAgICAgLXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6IHRleHQ7XHJcbiAgICAgICAgICAgIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi10ZXh0IHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgICAgICAgICAgcCArIHAge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX3Bob3RvcyB7XHJcbiAgICAgICAgZmxleDogMCAwIGF1dG87XHJcbiAgICAgICAgd2lkdGg6IDQwMHB4O1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIH1cclxuICAgICZfX2ltZyB7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDQwcHgpO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA4MCU7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgJi5pbWctLTIge1xyXG4gICAgICAgICAgICBtYXJnaW46IC0xMDBweCAwIC0xMDBweCAxMzBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBhYnMtY2VudGVyO1xyXG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgM3B4KTsgaGVpZ2h0OiBjYWxjKDEwMCUgKyAzcHgpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTI5ZGVnLCByZ2JhKDAsMCwwLDAuMikgMCUsIHJnYmEoMjU1LDI1NSwyNTUsMC41KSAxMDAlKTtcclxuICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBwaG90by1jb3ZlclxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLWRlc2t0b3ApIHtcclxuICAgICAgICAmX19pdGVtcyB7XHJcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xyXG4gICAgICAgICAgICBncmlkLWdhcDogMzBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLXRhYmxldCkge1xyXG4gICAgICAgICZfX2NvbHMge1xyXG4gICAgICAgICAgICBnYXA6IDMwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX3Bob3RvcyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDE1cHgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19pbWcge1xyXG4gICAgICAgICAgICB3aWR0aDogOTAlO1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNjUlO1xyXG4gICAgICAgICAgICAmLmltZy0tMiB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IC04MHB4IDAgLTgwcHggMTAwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLXRhYmxldC1zbSkge1xyXG4gICAgICAgICZfX2NvbHMge1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19pdGVtcyB7XHJcbiAgICAgICAgICAgIGdyaWQtZ2FwOiAyMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19pdGVtIHtcclxuICAgICAgICAgICAgJi10aXRsZSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi10ZXh0IHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fcGhvdG9zIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogNDgwcHg7XHJcblxyXG4gICAgICAgIH1cclxuICAgICAgICAmX19pbWcge1xyXG4gICAgICAgICAgICB3aWR0aDogNzUlO1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNTYlO1xyXG4gICAgICAgICAgICAmLmltZy0tMiB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IC0xNSUgMCAtMTUlIDI1JTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcblxyXG5cclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuLnRhcmlmZnMge1xyXG4gICAgJl9faXRlbXMge1xyXG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcclxuICAgICAgICBncmlkLWdhcDogNThweCAyM3B4O1xyXG4gICAgfVxyXG4gICAgJl9faXRlbSB7XHJcbiAgICAgICAgLy8gYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE1NGRlZywgI2ZmZiAwJSwgIzM2MzU2NyAxMDAlKTtcclxuICAgICAgICAvLyBib3JkZXItcmFkaXVzOiA2cHg7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy90YXJpZmZzLWl0ZW0tYmcucG5nKSBuby1yZXBlYXQ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XHJcbiAgICAgICAgcGFkZGluZzogNDBweCA0MXB4IDQ4cHggMzFweDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblxyXG4gICAgICAgICYtaGVhZCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDExNXB4O1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtdGl0bGUge1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgzOWRlZywgI2Y5YmUzMiAwJSwgI2RhOTkwMCAxMDAlKTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jbGlwOiB0ZXh0O1xyXG4gICAgICAgICAgICAtd2Via2l0LWJhY2tncm91bmQtY2xpcDogdGV4dDtcclxuICAgICAgICAgICAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLXByaWNlIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTZweDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyOHB4O1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLXRpbWUge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWRlc2Mge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgICAgICBwICsgcCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi1saXN0IHtcclxuICAgICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyNHB4O1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgJiArIGxpIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxNnB4OyBoZWlnaHQ6IDE2cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7IHRvcDogMnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvaWNvbnMvY2hlY2suc3ZnKSBuby1yZXBlYXQ7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi10IHtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1idXR0b25zIHtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IDI4cHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IGF1dG87XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1kZXNrdG9wKSB7XHJcbiAgICAgICAgJl9faXRlbXMge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDc4NnB4O1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICAgICAgZ3JpZC1nYXA6IDMwcHg7XHJcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLXRhYmxldC1zbSkge1xyXG4gICAgICAgICZfX2l0ZW1zIHtcclxuICAgICAgICAgICAgZ3JpZC1nYXA6IDIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1tb2JpbGUtbGcpIHtcclxuICAgICAgICAmX19pdGVtcyB7XHJcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtbW9iaWxlKSB7XHJcbiAgICAgICAgJl9faXRlbSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMTBweDtcclxuICAgICAgICAgICAgJi1oZWFkIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAxcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi10aXRsZSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1wcmljZSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyOHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuXHJcblxyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5cclxuLm1hcCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgICBAaW5jbHVkZSBhYnMtYWxsO1xyXG4gICAgICAgIHotaW5kZXg6IDU7XHJcbiAgICAgICAgbWl4LWJsZW5kLW1vZGU6IGRpZmZlcmVuY2U7XHJcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgIH1cclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgbGVmdDogMDsgYm90dG9tOiAwO1xyXG4gICAgICAgIGhlaWdodDogNXB4OyB3aWR0aDogMTAwJTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkYmctYm9keTtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICB6LWluZGV4OiA2O1xyXG4gICAgfVxyXG4gICAgW2NsYXNzKj1ncm91bmQtcGFuZV0ge1xyXG4gICAgICAgIGZpbHRlcjogZ3JheXNjYWxlKDEpO1xyXG4gICAgICAgIFxyXG4gICAgfVxyXG4gICAgW2NsYXNzKj1jb3B5cmlnaHRzLXBhbmVdIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jb250YWN0cyB7XHJcbiAgICAmX19jb2xzIHtcclxuICAgICAgICBwYWRkaW5nOiAwIDEzMHB4IDAgOTBweDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICBnYXA6IDMwcHg7XHJcbiAgICB9XHJcbiAgICAmX19jbCB7XHJcbiAgICAgICAgZmxleDogMCAwIGF1dG87XHJcbiAgICAgICAgd2lkdGg6IDM4MHB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgZ2FwOiAzMHB4O1xyXG4gICAgfVxyXG4gICAgJl9fcXJpdCB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGdhcDogMzZweDtcclxuICAgIH1cclxuICAgICZfX3FyIHtcclxuICAgICAgICB3aWR0aDogMTA0cHg7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4OiAwIDAgYXV0bztcclxuICAgIH1cclxuICAgICZfX2NpdGVtIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgZ2FwOiAxN3B4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICAmICsgJiB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDE4cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1pY29uIHtcclxuICAgICAgICAgICAgd2lkdGg6IDQycHg7XHJcbiAgICAgICAgICAgIGZsZXg6IDAgMCBhdXRvO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICZfX2luZm8ge1xyXG4gICAgICAgIG1heC13aWR0aDogNDYwcHg7XHJcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgfVxyXG4gICAgJl9fYWRkciB7XHJcbiAgICAgICAgXHJcbiAgICB9XHJcbiAgICAmX193YXJuIHtcclxuICAgICAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDM0cHg7XHJcbiAgICB9XHJcbiAgICAmX19tYXAge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDkwcHg7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGhlaWdodDogNzAwcHg7XHJcbiAgICAgICAgPiAqIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIHRvcDogMHB4OyBsZWZ0OiAwO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1kLXRhYmxldCswLjAycHgpIGFuZCAobWF4LWhlaWdodDogMTAwMHB4KSB7XHJcbiAgICAgICAgJl9fbWFwIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiA1MDBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLWRlc2t0b3ApIHtcclxuICAgICAgICAmX19jb2xzIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLXRhYmxldC1zbSkge1xyXG4gICAgICAgICZfX2NvbHMge1xyXG4gICAgICAgICAgICBnYXA6IDYwcHg7XHJcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2NsIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogNDgwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX3FyIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fY2l0ZW0ge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX3dhcm4ge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyNXB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19tYXAge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA2MHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDUwMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4uZXJyb3I0MDRcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbi5lcnJvcjQwNCB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgXHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAmX19udW1iIHtcclxuICAgICAgICBmb250LXNpemU6IDk2cHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIH1cclxuICAgICZfX3RpdGxlIHtcclxuICAgICAgICBmb250LXNpemU6IDQ1cHg7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIH1cclxuICAgICZfX2J1dHRvbnMge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiA2MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtdGFibGV0KSB7XHJcbiAgICAgICAgJl9fbnVtYiB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNzZweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fdGl0bGUge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDMycHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2J1dHRvbnMge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMzBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1tb2JpbGUtbGcpIHtcclxuICAgICAgICAmX19udW1iIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiA2NHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX190aXRsZSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjZweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fYnV0dG9ucyB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAzMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbn1cclxuIl19 */
