@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,400;0,500;0,700;1,400;1,700&display=swap");
* {
  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: 12px;
  line-height: 1.3;
  font-weight: normal;
  font-style: normal;
  background: #000;
}

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 {
  text-decoration: none;
  margin: 0;
  padding: 0;
  color: #fff;
}

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

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

.container {
  width: 100%;
  max-width: 1640px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}
@media screen and (max-width: 1699.98px) {
  .container {
    max-width: 1270px;
  }
}
@media screen and (min-width: 1340px) {
  .container--sm {
    max-width: 960px;
  }
}
@media screen and (max-width: 1339.98px) {
  .container {
    max-width: 1140px;
  }
  .container--sm {
    max-width: 900px;
  }
}
@media screen and (max-width: 1199.98px) {
  .container {
    max-width: 960px;
  }
}
@media screen and (max-width: 1023.98px) {
  .container {
    max-width: 710px;
  }
}
@media screen and (max-width: 767.98px) {
  .container {
    max-width: 100%;
    padding: 0 20px;
  }
}
.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: 140px;
}

@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: 1199.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: 1200px) {
  .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;
}

#jGrowl {
  display: none !important;
}

.grecaptcha-badge {
  opacity: 0;
  visibility: hidden;
}

.map {
  position: relative;
}
.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 [class*=ground-pane] {
  filter: grayscale(1);
}
.map [class*=copyrights-pane] {
  display: none !important;
}
.map--all {
  height: 34vw;
  height: 650px;
}
.map__ballon {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background: #fff;
  width: 350px;
  min-height: 226px;
  padding: 32px;
  text-align: center;
  font-size: 15px;
  line-height: 1.3;
  margin-left: 25px;
  transform: translateY(-50%);
  position: relative;
}
.map__ballon > * + * {
  margin-top: 20px;
}
.map__ballon-close {
  display: flex;
  position: absolute;
  top: 10px;
  right: 10px;
  width: 20px;
  height: 20px;
  background: none;
  border: none;
  outline: 0;
  cursor: pointer;
  transition: all 0.3s ease-in-out;
}
.map__ballon-close .icon {
  width: 100%;
  height: 100%;
}
.map__ballon-close:hover {
  transform: scale(1.1);
}
@media (max-width: 767.98px) {
  .map {
    height: 500px;
  }
  .map__ballon {
    margin-left: 0;
    transform: translate(-50%, -50%);
  }
  .map__ballon-close {
    display: flex;
  }
}
@media (max-width: 360px) {
  .map__ballon {
    width: 320px;
  }
}

.content__text {
  line-height: 1.5;
  font-size: 15px;
}
.content__text > * {
  margin-bottom: 15px;
}
.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:first-child, .content__text h2:first-child, .content__text h3:first-child, .content__text h4:first-child, .content__text h5:first-child {
  margin-top: 0 !important;
}
.content__text h1 {
  font-size: 25px;
  margin: 45px 0;
}
.content__text h2 {
  font-size: 20px;
  margin: 45px 0;
}
.content__text h3 {
  font-size: 18px;
  margin: 30px 0;
}
.content__text h4 {
  font-size: 14px;
  margin: 30px 0;
}
.content__text h5 {
  font-size: 12px;
  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: 14px;
  }
}

.section__head {
  margin-bottom: 40px;
}
.section__head.md--md {
  margin-bottom: 32px;
}
.section__head.mb--sm {
  margin-bottom: 20px;
}
.section__head.mb--smx {
  margin-bottom: 10px;
}
.section__head.mb0 {
  margin-bottom: 0;
}
.section__head.hcols {
  display: flex;
  justify-content: space-between;
  gap: 40px;
}
.section__title {
  display: flex;
  align-items: center;
  min-height: 67px;
  padding: 4px 0 4px 20px;
  border-left: 3px solid;
  font-size: 25px;
  font-weight: bold;
}
.section__title.fs--lg {
  font-size: 36px;
  padding: 12px 0 12px 23px;
}
.text--center .section__intro {
  margin-left: auto;
  margin-right: auto;
}
.section__buttons {
  margin-top: 40px;
  text-align: center;
}
.section__first {
  padding: 20px 0 60px !important;
}
.section__mg {
  margin: 160px 0;
}
.section__mg--sm {
  margin: 80px 0;
}
.section__pd {
  padding: 130px 0;
}
.section__pdt {
  padding-top: 70px;
}
.section__tab {
  display: none;
}
.section__tab.show {
  display: block;
}
@media (max-width: 1699.98px) {
  .section__title {
    font-size: 23px;
  }
  .section__title.fs--lg {
    font-size: 32px;
    padding: 8px 0 8px 23px;
  }
}
@media (max-width: 1339.98px) {
  .section__title.fs--lg {
    font-size: 26px;
    padding: 4px 0 4px 20px;
  }
}
@media (max-width: 1199.98px) {
  .section__title.fs--lg {
    font-size: 36px;
    padding: 12px 0 12px 23px;
  }
}
@media (max-width: 1023.98px) {
  .section__head.hcols {
    flex-direction: column;
    gap: 20px;
  }
}
@media (max-width: 767.98px) {
  .section__head {
    margin-bottom: 30px;
  }
  .section__title {
    padding: 0 !important;
    border: none;
    min-height: 1px !important;
  }
  .section__title br {
    display: none;
  }
}
@media (max-width: 609.98px) {
  .section__title.fs--lg {
    font-size: 24px;
  }
  .section__mg--sm {
    margin: 40px 0;
  }
}

.title {
  font-size: 17px;
  font-weight: bold;
}
.title.fs--md {
  font-size: 19px;
  font-weight: 600;
}

.text {
  font-size: 15px;
}

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

.text--white {
  color: white;
}

.fw-600 {
  font-weight: 600;
}

.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;
}

.social__items {
  display: flex;
  align-items: center;
  gap: 16px;
}
.social__item {
  display: flex;
  align-items: center;
  justify-content: center;
  transition: opacity 0.3s ease-in-out;
  color: #fff;
  opacity: 0.5;
}
.social__item:hover {
  opacity: 1;
}
.social .icon {
  height: 21px;
  width: 20px;
}
.social .icon--yuotube {
  width: 28px;
}
@media (max-width: 1023.98px) {
  .social__item {
    opacity: 1;
  }
}

.snav {
  margin-bottom: 40px;
}
.snav.mb--md {
  margin-bottom: 60px;
}
.snav__list {
  display: flex;
  justify-content: stretch;
  gap: 20px;
}
.snav__link {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  height: 40px;
  padding: 0 12px;
  background: none;
  border: 3px solid rgba(255, 255, 255, 0.25);
  color: rgba(255, 255, 255, 0.5);
  font-size: 15px;
  transition: all 0.3s ease-in-out;
}
.snav__link:hover {
  border-color: rgba(255, 255, 255, 0.5);
  color: rgba(255, 255, 255, 0.75);
}
.snav__link.active {
  color: #fff;
  border-color: #fff;
  pointer-events: none;
}
.wmin .snav__link {
  min-width: 408px;
  height: 48px;
}
@media (max-width: 767.98px) {
  .snav.mb--md {
    margin-bottom: 32px;
  }
  .snav__list {
    gap: 16px;
  }
  .snav__link {
    height: 32px;
    padding: 0 16px;
  }
}
@media (max-width: 478.98px) {
  .snav__item.wmin {
    width: 100%;
  }
  .wmin .snav__link {
    min-width: 8px;
    width: 100%;
  }
}

.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: 1199.98px) {
  .link {
    font-size: 16px;
  }
}

.back_link {
  margin-bottom: 40px;
  display: inline-block;
  font-size: 15px;
  color: rgba(255, 255, 255, 0.5);
  font-weight: bold;
  transition: all 0.3s ease-in-out;
}
.back_link:hover {
  color: #fff;
}
@media (max-width: 767.98px) {
  .back_link {
    margin-bottom: 20px;
  }
}

.pagination {
  display: flex;
  justify-content: flex-end;
  margin-top: 60px;
}
.pagination__list {
  width: 140px;
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
}
.pagination .page-item {
  position: relative;
  color: #fff;
  font-size: 15px;
  opacity: 0.5;
  transition: all 0.3s ease-in-out;
}
.pagination .page-item:hover {
  opacity: 1;
}
.pagination .page-item.active {
  opacity: 1;
}
.pagination .page-item .icon {
  width: 14px;
  height: 21px;
}
.pagination .page-first, .pagination .page-last {
  display: none;
}
.pagination .page-item-next, .pagination .page-item-prev {
  order: 5;
  margin-top: 5px;
  width: 60px;
  height: 40px;
  background: none;
  border: 3px solid rgba(255, 255, 255, 0.5);
}
.pagination .page-item-next .page-link, .pagination .page-item-prev .page-link {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.pagination .page-item-next {
  margin-left: 5px;
}
@media (max-width: 1023.98px) {
  .pagination {
    margin-top: 80px;
    justify-content: center;
  }
  .pagination__list {
    justify-content: center;
  }
}

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

.swiper-pagination {
  display: flex;
  justify-content: center;
  gap: 10px;
  position: static;
}
.swiper-pagination-bullet {
  flex: 1 1 0;
  margin: 0 !important;
  max-width: initial;
  width: auto;
  height: 5px;
  border-radius: 0;
  background: #fff;
  opacity: 0.2;
  transition: all 0.3s ease-in-out;
}
.swiper-pagination-bullet-active {
  opacity: 1;
  flex: 1 0.5 0;
}
.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer;
}

.swiper-button {
  width: 60px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  background: none;
  border: 3px solid rgba(255, 255, 255, 0.5);
  color: #fff;
  opacity: 0.5;
  transition: all 0.3s ease-in-out;
}
.swiper-button-lock {
  display: none;
}
.swiper-button:after {
  display: none;
}
.swiper-button .icon {
  width: 14px;
  height: 21px;
}
@media (any-hover: hover) {
  .swiper-button:hover {
    opacity: 1;
  }
}

.swiper-scrollbar {
  background: none;
}

.swiper-nav {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 20px;
  max-width: 140px;
  margin-top: 50px;
}
.swiper-nav-right {
  float: right;
}
.swiper-nav .swiper-fraction {
  width: 50px;
}
.swiper-nav .swiper-pagination {
  width: 100%;
  margin-bottom: 20px;
  position: static;
}
.swiper-nav .swiper-button {
  position: static;
}

@media (max-width: 1699.98px) {
  .swiper-nav .swiper-pagination {
    margin-bottom: 0;
  }
}
@media (max-width: 1023.98px) {
  .swiper-button {
    width: 64px;
    height: 32px;
  }
  .swiper-nav {
    gap: 16px;
    max-width: 144px;
  }
}
/**************************************************************
ui-datepicker
**************************************************************/
.ui-datepicker {
  background: #1E1E1E;
  padding: 10px;
  width: 260px;
  z-index: 2999999 !important;
  border-radius: 0;
  border-color: rgba(255, 255, 255, 0.5) !important;
  margin-top: 2px;
}
.ui-datepicker .ui-datepicker-header {
  padding: 0 5px;
  background: none;
  border: none;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 5px;
}
.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next {
  position: relative;
  left: auto;
  right: auto;
  top: auto;
  margin: 0;
  cursor: pointer;
  width: 15px;
  height: 15px;
  background-size: auto 100% !important;
  border: none;
}
.ui-datepicker .ui-datepicker-prev .ui-icon, .ui-datepicker .ui-datepicker-next .ui-icon {
  display: none;
}
.ui-datepicker .ui-datepicker-next {
  order: 2;
  background: url(../images/icons/date-next.svg) no-repeat center center;
}
.ui-datepicker .ui-datepicker-prev {
  background: url(../images/icons/date-prev.svg) no-repeat center center;
}
.ui-datepicker .ui-state-disabled {
  opacity: 0.5;
}
.ui-datepicker .ui-datepicker-title {
  flex: 1 0 0;
  padding: 0 10px;
  font-size: 14px;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
}
.ui-datepicker .ui-datepicker-title select {
  width: 45%;
  background: none;
  border: none;
  width: 88px;
  padding: 8px 16px;
  color: #FFF;
  margin: 0;
  webkit-appearance: none;
  -moz-appearance: none;
  -ms-appearance: none;
  appearance: none !important;
}
.ui-datepicker select.ui-datepicker-month {
  border-radius: 8px;
  color: #fff;
  order: -1;
  background: url(../images/icons/drop-select-purple.svg) no-repeat right 16px center;
  background-color: #F1F1F1;
}
.ui-datepicker select.ui-datepicker-year {
  background: url(../images/icons/drop-select.svg) no-repeat right 16px center;
}
.ui-datepicker table {
  margin: 0;
}
.ui-datepicker th {
  padding: 0;
  color: #FFF;
  height: 30px;
  text-transform: uppercase;
  font-size: 12px;
  line-height: 30px;
  font-weight: 600;
}
.ui-datepicker td {
  text-align: center;
  padding: 0 0;
}
.ui-datepicker td .ui-state-default {
  display: block;
  width: 30px;
  height: 30px;
  line-height: 30px;
  text-align: center;
  color: #FFF;
  font-size: 12px;
  background: none;
  border: none;
  padding: 0;
  position: relative;
  z-index: 1;
  display: inline-block;
  border-radius: 100px;
}
.ui-datepicker td .ui-state-default:hover {
  background: #fff;
  color: #000;
}
.ui-datepicker td.ui-state-disabled .ui-state-default {
  color: #7D7D7D;
}
.ui-datepicker td.ui-datepicker-today a {
  background: rgba(255, 255, 255, 0.2);
  color: #fff;
}
.ui-datepicker td .ui-state-active {
  background: #fff;
  color: #000;
}

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

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

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

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

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

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

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

.input:placeholder-shown {
  color: rgba(255, 255, 255, 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;
}

.form__box + .form__box {
  margin-top: 32px;
}
.form__cols {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 0 20px;
}
.form__input {
  margin-bottom: 13px;
}
.form__label {
  font-size: 10px;
  margin-bottom: 12px;
}
.form__buttons {
  margin-top: 20px;
}
.form__policy {
  text-align: left;
  display: flex;
  align-items: center;
  gap: 20px;
  font-size: 10px;
  margin-top: 40px;
}
.form__policy input {
  position: absolute;
  z-index: -99;
  opacity: 0;
  visibility: hidden;
}
.form__policy-t {
  padding-top: 2px;
}
.form__policy-sq {
  display: block;
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
  cursor: pointer;
  border: 1px solid #fff;
  background: rgba(255, 255, 255, 0.29);
  opacity: 0.63;
}
.form__policy .error + .form__policy-sq {
  border-color: rgb(251, 3, 3);
  background: rgba(255, 113, 113, 0.3);
}
.form__policy :checked + .form__policy-sq {
  background: url(../images/icons/check.svg) no-repeat center center;
  opacity: 1;
}
.form__policy a {
  color: inherit;
  text-decoration: underline;
}
.form__policy a:hover {
  text-decoration: none;
}
@media (max-width: 609.98px) {
  .form__cols {
    display: block;
  }
  .form__label {
    margin-bottom: 8px;
  }
}

.input {
  width: 100%;
  height: 42px;
  padding: 0 20px;
  background: rgba(255, 255, 255, 0.2);
  border: none;
  font-family: "Montserrat", sans-serif;
  color: #fff !important;
  font-size: 15px;
  font-weight: normal;
  outline: none;
}
.input--date {
  padding-left: 60px;
  background-image: url(../images/icons/calendar.svg);
  background-position: 20px center;
  background-repeat: no-repeat;
}
.input.error {
  border-color: rgb(235, 0, 0);
  background: rgb(177, 84, 84);
}
@media (max-width: 609.98px) {
  .input {
    height: 38px;
  }
}

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

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  height: 40px;
  padding: 0 20px;
  background: rgba(0, 0, 0, 0.2);
  border: 1px solid #fff;
  color: #fff;
  font-size: 15px;
  font-family: "Montserrat", sans-serif;
  opacity: 0.7;
  cursor: pointer;
  outline: none;
  transition: all 0.3s ease-in-out;
  overflow: hidden;
  position: relative;
}
.btn:hover {
  opacity: 1;
}
.btn img {
  max-width: 25px;
  max-height: 32px;
}
.btn .icon {
  width: 25px;
  height: 32px;
}
.btn--soc {
  padding: 0;
  width: 40px;
}
.btn--soc img {
  max-width: 25px;
  max-height: 25px;
}
.btn--lg {
  height: 60px;
}
.btn--v2 {
  min-width: 340px;
  height: 46px;
  opacity: 1;
  background: linear-gradient(90deg, #F45FFF 0%, #A238FF 100%);
  border: none;
}
.btn--v2::after, .btn--v2:before {
  content: "";
  position: absolute;
  top: 1px;
  bottom: 1px;
  left: 1px;
  right: 1px;
  background: linear-gradient(88.51deg, #0F0F0F 0.95%, #2C2C2C 100.69%);
  z-index: 1;
  transition: all 0.3s ease-in-out;
}
.btn--v2::before {
  opacity: 0;
  background: #0F0F0F;
  z-index: 2;
}
.btn--v2:hover::before {
  opacity: 1;
}
.btn--flare:before {
  position: absolute;
  top: 0;
  height: 100%;
  width: 35px;
  transform: skewX(-30deg);
  animation: flareAnimation;
  left: -150%;
  background: linear-gradient(359.37deg, rgba(81, 81, 81, 0) -0.61%, rgba(98, 98, 98, 0.48) 48.77%, rgba(81, 81, 81, 0) 99.44%);
  background: linear-gradient(43.68deg, rgba(255, 255, 255, 0) 0%, rgba(205, 205, 205, 0.024) 49.35%, rgba(153, 153, 153, 0.003) 100%);
  backdrop-filter: blur(86px);
  box-shadow: 0px 2px 4px 0px rgba(255, 255, 255, 0.1490196078) inset, 0px 0px 68px 0px rgba(255, 255, 255, 0.0509803922) inset, 0px 4px 4px 0px rgba(0, 0, 0, 0.2509803922);
  animation: flareAnimation 3.5s infinite linear;
  content: "";
  transition: all 0.3s;
}
.btn--flare:hover::before {
  opacity: 0;
}
.btn span {
  position: relative;
  z-index: 2;
}
@keyframes flareAnimation {
  0% {
    left: -150%;
  }
  100% {
    left: 150%;
  }
}
.btn--wall {
  width: 100%;
}
.btn--mwall {
  width: 100%;
  max-width: 635px;
}
.wait .btn {
  cursor: wait;
  pointer-events: none;
}
@media (max-width: 609.98px) {
  .btn--v2 {
    min-width: 1px;
    width: 100%;
    max-width: 340px;
  }
}

.addfile {
  position: relative;
}
.addfile + .addfile {
  margin-top: 20px;
}
.addfile input {
  display: none;
}
.addfile__label {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 5px 20px 5px 60px;
  cursor: pointer;
  height: 40px;
  color: #fff;
  font-size: 15px;
  font-family: "Montserrat", sans-serif;
  background: url(../images/icons/browse.svg) no-repeat left 20px center;
  background-color: rgba(255, 255, 255, 0.2);
  transition: all 0.3s ease-in-out;
}
.addfile__t {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  padding-right: 15px;
}
.addfile__placeholder {
  margin-left: auto;
  font-size: 15px;
  color: rgba(255, 255, 255, 0.5);
}
.addfile.changed .addfile__placeholder {
  display: none;
}
.addfile__remove {
  margin-left: auto;
  font-size: 15px;
  color: rgba(255, 255, 255, 0.5);
  display: none;
}
.addfile__remove:hover {
  color: #fff;
}
.addfile.changed .addfile__remove {
  display: block;
}
.addfile__browse {
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
  border-radius: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.addfile__browse .icon {
  width: 100%;
  height: 100%;
  transition: initial;
}
.addfile__preview {
  position: absolute;
  left: 0;
  top: 100%;
  margin-top: 4px;
  color: #475569;
  font-size: 16px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
@media (max-width: 767.98px) {
  .addfile__label {
    height: 54px;
    font-size: 16px;
  }
}

/**************************************************************
popup
**************************************************************/
.popup {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  display: none;
  z-index: 99999;
}
.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: #FFFFFF;
  opacity: 0.7;
}
.popup__container {
  position: relative;
  width: 100%;
  max-width: 680px;
  padding: 40px 60px;
  background: #1E1E1E;
  overflow: hidden;
}
.popup-thank .popup__container {
  max-width: 600px;
}
.popup__close {
  max-width: 65px;
  text-align: center;
  font-size: 10px;
  cursor: pointer;
  z-index: 99;
}
.popup__close img {
  margin-bottom: 10px;
  opacity: 0.6;
  transition: all 0.3s ease-in-out;
}
.popup__close:hover img {
  opacity: 1;
}
.popup__head {
  margin-bottom: 35px;
  display: flex;
  justify-content: space-between;
  gap: 30px;
}
.popup-thank .popup__head {
  margin-bottom: 0;
}
.popup__title {
  font-size: 25px;
  max-width: 300px;
}
.popup__intro {
  margin-top: 10px;
}
.popup__iconthank {
  margin-bottom: 50px;
}
.popup-thank .popup__title {
  margin-bottom: 0;
}
@media (max-width: 609.98px) {
  .popup__content {
    padding: 0;
  }
  .popup__container {
    max-width: 100%;
    min-height: calc(var(--vh) * 100);
    padding: 45px 20px 64px;
  }
  .popup__close {
    max-width: 52px;
  }
  .popup__close img {
    margin-bottom: 0;
  }
  .popup__title {
    font-size: 20px;
  }
}
@media (max-width: 360px) {
  .popup__title {
    font-size: 16px;
  }
}

/**************************************************************
header
**************************************************************/
.header {
  position: relative;
  z-index: 10;
  background: linear-gradient(0deg, rgba(0, 0, 0, 0) 0%, rgb(0, 0, 0) 100%);
}
.header__inner {
  padding: 25px 0 10px;
  height: 140px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
}
.header__logo {
  display: flex;
  margin-right: auto;
}
.header__contacts {
  margin-left: 30px;
  text-align: right;
}
.header__phone {
  font-size: 15px;
  font-weight: bold;
}
.header__email {
  margin-top: 5px;
  display: inline-block;
}
.header__social {
  display: flex;
  gap: 20px;
}
.header__menu {
  margin-right: 155px;
}
.contacts-page .header__menu {
  margin-right: 50px;
}
.header__burger {
  display: none;
}
@media (max-width: 1699.98px) {
  .header__inner {
    height: 110px;
    gap: 20px;
  }
  .header__menu {
    margin-right: 50px;
  }
  .contacts-page .header__menu {
    margin-right: 10px;
  }
}
@media (max-width: 1339.98px) {
  .header__demo {
    width: 40px;
    position: relative;
    z-index: 5;
    padding: 0 5px;
  }
  .header__demo img {
    max-width: 100%;
  }
  .header__demo span {
    display: none;
  }
}
@media (max-width: 1199.98px) {
  .header__contacts {
    margin-left: 20px;
  }
  .header__menu {
    margin-right: 20px;
  }
}
@media (max-width: 1023.98px) {
  .header__inner {
    height: 100px;
  }
  .header__menu {
    display: none;
  }
  .header__burger {
    width: 40px;
    height: 40px;
    display: flex;
    position: relative;
    border: none;
    background: none;
    outline: none;
    z-index: 5;
  }
  .header__burger img {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    transition: all 0.3s ease-in-out;
  }
  .header__burger .img-active {
    opacity: 0;
  }
  .header__burger.active img {
    opacity: 0;
  }
  .header__burger.active .img-active {
    opacity: 1;
  }
  .header__logo {
    margin: 0 auto;
  }
  .header__contacts {
    display: none;
  }
}
@media (max-width: 767.98px) {
  .header__inner {
    height: 90px;
  }
  .header__burger {
    width: 32px;
    height: 32px;
  }
  .header__demo {
    width: 32px;
    height: 32px;
  }
  .header__logo img {
    height: 32px;
  }
  .header__social {
    display: none;
  }
}

.menu__list {
  display: flex;
  align-items: center;
  gap: 70px;
}
.contacts-page .menu__list {
  gap: 50px;
}
.menu__list > li > ul {
  position: absolute;
  left: -20px;
  top: 100%;
  opacity: 0;
  visibility: hidden;
  padding: 10px 20px 20px;
}
.menu__list ul {
  background: #000;
  flex-direction: column;
  padding-left: 20px;
  gap: 0;
  transition: all 0.3s ease-in-out;
}
.menu__list ul li {
  margin-top: 20px;
  white-space: nowrap;
}
.menu__item {
  position: relative;
}
.menu__item:hover > ul {
  opacity: 1;
  visibility: visible;
}
.menu__link {
  display: flex;
  align-items: center;
  gap: 7px;
  height: 20px;
  color: #fff;
  font-size: 15px;
  opacity: 0.7;
  transition: opacity 0.2s ease-in-out;
}
.menu__link:hover {
  opacity: 1;
}
.menu__item.active > .menu__link {
  font-weight: 700;
  opacity: 1;
}
@media (max-width: 1699.98px) {
  .menu__list {
    gap: 30px;
  }
  .contacts-page .menu__link {
    font-size: 14px;
  }
}
@media (max-width: 1199.98px) {
  .menu__list {
    gap: 30px;
  }
  .menu__link {
    font-size: 12px;
  }
}
@media (max-width: 1023.98px) {
  .menu__list {
    flex-direction: column;
    gap: 25px;
  }
  .menu__list > li > ul {
    position: relative;
    opacity: 1;
    visibility: visible;
    padding: 0;
    left: auto;
    top: auto;
  }
  .menu__list ul {
    transition: initial;
    display: none;
    padding: 0;
    text-align: center;
  }
  .menu__list ul li {
    margin-top: 15px;
  }
  .menu__link {
    font-size: 15px;
    justify-content: center;
  }
}

.navfix {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(var(--vh) * 100);
  background: #000;
  z-index: 0;
  margin: 0;
  overflow: auto;
  color: #fff;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
}
.navfix.opened {
  opacity: 1;
  visibility: visible;
}
.navfix__inner {
  height: calc(var(--vh) * 100);
  display: flex;
  flex-direction: column;
  gap: 50px;
  padding: 100px 0 30px;
  text-align: center;
}
.navfix__menu {
  height: 100%;
  display: flex;
  justify-content: center;
}
.navfix__contacts {
  text-align: center;
}
.navfix__contacts-item + .navfix__contacts-item {
  margin-top: 20px;
}
.navfix__contacts-label {
  margin-bottom: 8px;
  font-size: 10px;
  display: none;
}
.navfix__contacts-val {
  font-size: 15px;
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
}
.navfix__contacts-icon {
  width: 21px;
  display: flex;
}
.navfix__copy {
  font-size: 10px;
  margin-top: 10px;
}
@media (max-height: 767.98px) {
  .navfix__inner {
    padding-top: 90px;
  }
}

/**************************************************************
footer
**************************************************************/
.footer {
  position: relative;
  background: #000;
}
.footer__info {
  min-height: 380px;
  padding: 100px 0 40px;
  background: #000;
  width: 50%;
}
.footer__inner {
  display: flex;
  gap: 35px;
}
.footer__logo {
  max-width: 150px;
  opacity: 0.5;
  transition: all 0.3s ease-in-out;
}
.footer__logo:hover {
  opacity: 1;
}
.footer__menu {
  max-width: 120px;
}
.footer__menu li + li {
  margin-top: 15px;
}
.footer__menu a {
  color: rgba(255, 255, 255, 0.7);
  transition: all 0.3s ease-in-out;
}
.footer__menu a:hover {
  color: #fff;
}
.footer__menu li.active a {
  color: #fff;
  font-weight: bold;
}
.footer__contacts {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}
.footer__contacts-item + .footer__contacts-item {
  margin-top: 20px;
}
.footer__contacts-label {
  margin-bottom: 8px;
  font-size: 10px;
  display: none;
}
.footer__contacts-val {
  font-size: 15px;
  font-weight: bold;
  display: flex;
  align-items: center;
  gap: 10px;
}
.footer__contacts-icon {
  width: 21px;
  display: flex;
  opacity: 0.5;
  transition: all 0.3s ease-in-out;
}
.footer__contacts-item:hover .footer__contacts-icon {
  opacity: 1;
}
.footer__social {
  margin-top: 27px;
}
.footer__social-tt {
  color: rgb(225, 225, 225);
  font-size: 13px;
  margin-bottom: 20px;
  max-width: 300px;
}
.footer__social .social__items {
  gap: 10px;
}
.footer__social .icon {
  height: 30px;
  width: 30px;
}
.footer__social .icon--youtube {
  width: 41px;
}
.footer__copy {
  color: rgba(255, 255, 255, 0.7);
  font-size: 10px;
  margin-top: 67px;
}
.footer__map {
  position: absolute;
  right: 0;
  top: 0;
  width: 50%;
  height: 100%;
  overflow: hidden;
}
.footer__map > * {
  position: absolute !important;
  top: -2px;
  left: 0;
  width: 100% !important;
  height: 102% !important;
}
@media (max-width: 1199.98px) {
  .footer__info {
    width: 100%;
  }
  .footer__inner {
    justify-content: space-between;
  }
  .footer__map {
    height: 380px;
    position: relative;
    width: 100%;
  }
}
@media (max-width: 1023.98px) {
  .footer .container {
    position: static;
  }
  .footer__info {
    padding: 90px 0;
    min-height: 1px;
  }
  .footer__copy {
    text-align: center;
    color: #fff;
    z-index: 10;
  }
}
@media (max-width: 609.98px) {
  .footer__inner {
    flex-wrap: wrap;
    justify-content: space-around;
    gap: 20px;
  }
  .footer__menu {
    min-width: 100px;
  }
  .footer__contacts {
    width: 100%;
    margin-top: 80px;
    text-align: center;
  }
  .footer__contacts-val {
    justify-content: center;
  }
  .footer__social {
    display: flex;
    flex-direction: column;
    align-items: center;
    opacity: 0.5;
  }
}

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

**************************************************************/
.hero {
  overflow: hidden;
  position: relative;
}
.hero__inner {
  position: relative;
  height: calc(var(--vh) * 100 - 140px);
  padding: 40px 0 140px;
  display: flex;
  align-items: center;
  z-index: 5;
}
.hero__copy {
  position: absolute;
  left: 0;
  bottom: 40px;
  font-size: 10px;
}
.hero__info {
  display: flex;
  align-items: center;
  gap: 60px;
}
.hero__logo {
  max-width: 176px;
}
.hero__logo g, .hero__logo path {
  transition: all 0.3s ease-in-out;
}
.hero__logo .c-1 {
  transform: translate(-1.5px, -38px);
}
.hero__logo .c-2 {
  transform: translate(-14px, -67px);
}
.hero__logo .c-3 {
  transform: translate(-27px, -53px);
}
.hero__logo .c-4 {
  transform: translate(-39px, -27px);
}
.hero__logo .c-5 {
  transform: translate(-52px, -41px);
}
.hero__logo .c-6 {
  transform: translate(-65px, -55px);
}
.hero__logo .c-7 {
  transform: translate(-78px, -30px);
}
.hero__logo:hover g {
  opacity: 1;
}
.hero__logo:hover .c-1 {
  transform: translate(-1.5px, 5px);
}
.hero__logo:hover .c-2 {
  transform: translate(-14px, -110px);
}
.hero__logo:hover .c-3 {
  transform: translate(-27px, -100px);
}
.hero__logo:hover .c-4 {
  transform: translate(-39px, 10px);
}
.hero__logo:hover .c-5 {
  transform: translate(-52px, 10px);
}
.hero__logo:hover .c-6 {
  transform: translate(-65px, -100px);
}
.hero__logo:hover .c-7 {
  transform: translate(-78px, 15px);
}
.hero__slider {
  max-width: 900px;
  height: 280px;
}
.hero__slider .swiper-slide {
  display: flex;
  align-items: center;
}
.hero__title {
  font-size: 40px;
  line-height: 1;
  font-weight: bold;
}
.hero__nav {
  position: absolute;
  right: 0;
  bottom: 120px;
}
.hero__nav .swiper-pagination-lock ~ .swiper-button-disabled {
  display: none;
}
.hero__video {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.hero__video-item {
  background: black;
}
.hero__video::before {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  content: "";
  background: linear-gradient(-90deg, rgba(255, 255, 255, 0) 0%, rgb(0, 0, 0) 60%);
}
.hero__video video {
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  transform: translate(-50%, -50%);
}
.hero__video img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}
@media (max-width: 1699.98px) {
  .hero__inner {
    height: calc(var(--vh) * 100 - 110px);
    padding: 40px 0 110px;
  }
  .hero__ingo {
    gap: 40px;
  }
  .hero__logo {
    max-width: 140px;
  }
  .hero__logo svg {
    max-width: 100%;
  }
  .hero__slider {
    max-width: 600px;
    height: 180px;
    max-width: 800px;
    height: 280px;
  }
  .hero__nav {
    bottom: 60px;
  }
  .hero__copy {
    bottom: 30px;
  }
}
@media (max-width: 1199.98px) {
  .hero__ingo {
    gap: 30px;
  }
  .hero__logo {
    max-width: 120px;
  }
  .hero__slider {
    max-width: 500px;
    height: 120px;
    max-width: 600px;
    height: 170px;
  }
}
@media (max-width: 1023.98px) {
  .hero__inner {
    height: calc(100vh - 100px);
    padding: 40px 0 44px;
    flex-direction: column;
    align-items: flex-start;
  }
  .hero__copy {
    display: none;
  }
  .hero__info {
    margin-top: auto;
    text-align: center;
    width: 100%;
  }
  .hero__slider {
    margin: 0 auto;
  }
  .hero__logo {
    display: none;
  }
  .hero__nav {
    margin-top: 90px;
    position: static;
  }
  .hero__video {
    height: 75%;
  }
  .hero__video::before {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgb(0, 0, 0) 60%);
  }
}
@media (max-width: 609.98px) {
  .hero__title {
    font-size: 25px;
  }
  .hero__nav {
    margin-top: 70px;
  }
}

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

**************************************************************/
.about {
  padding: 120px 0 120px;
  position: relative;
  overflow: hidden;
}
.about__info {
  width: 63%;
  padding-right: 100px;
}
.about__nav {
  margin-bottom: 80px;
}
.about__video {
  position: absolute;
  right: 0;
  top: 0;
  width: 37%;
  height: 100%;
  overflow: hidden;
}
.about__video video {
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  z-index: 2;
  transform: translate(-50%, -50%);
}
@media (max-width: 1699.98px) {
  .about {
    padding: 80px 0;
  }
  .about__nav {
    margin-bottom: 60px;
  }
  .about__info {
    padding-right: 80px;
  }
}
@media (max-width: 1199.98px) {
  .about__info {
    padding-right: 20px;
  }
}
@media (max-width: 1023.98px) {
  .about {
    padding: 40px 0 45px;
  }
  .about__video {
    position: relative;
    width: 100%;
    height: 500px;
    margin-bottom: 64px;
    display: none;
  }
  .about__nav {
    margin-bottom: 48px;
  }
  .about__info {
    width: 100%;
    padding: 0;
  }
}
@media (max-width: 609.98px) {
  .about__video {
    height: 500px;
  }
  .about:first-child .about__video::before {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 5;
    background: rgba(0, 0, 0, 0.5);
    content: "";
  }
}

.a_about {
  margin-bottom: 30px;
  position: relative;
}
.a_about__inner {
  padding: 40px 30px;
  position: relative;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  min-height: 350px;
  max-width: 900px;
}
.a_about__advants {
  padding-left: 30px;
  margin: 40px 0;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  position: relative;
}
.a_about__advant {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 15px;
  line-height: 1.3;
}
.a_about__advant + .a_about__advant {
  margin-top: 16px;
}
.a_about__advant-icon {
  flex: 0 0 auto;
  width: 40px;
  text-align: center;
}
.a_about__advant-title {
  font-weight: 600;
}
.a_about__advant-text {
  margin-top: 6px;
  font-style: italic;
  font-weight: 500;
}
.a_about__bgimg {
  position: absolute;
  right: -100px;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}
.a_about__bgimg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}
.a_about__cont-title {
  text-wrap: balance;
}
.a_about__cont-text {
  margin-top: 25px;
}
.a_about__cont-text > * + * {
  margin-top: 20px;
}
.a_about__cont-text ul {
  padding-left: 24px;
}
.a_about__cont-text li {
  position: relative;
  padding-left: 20px;
}
.a_about__cont-text li + li {
  margin-top: 10px;
}
.a_about__cont-text li::before {
  position: absolute;
  left: 0;
  top: 8px;
  width: 14px;
  height: 1px;
  background: #fff;
  content: "";
}
.a_about__bottom {
  margin-top: 20px;
}
.a_about__buttons {
  margin-top: 40px;
}
.a_about__genre {
  margin-top: 40px;
}
.a_about__genre-list {
  margin-top: 20px;
}
.a_about__genre-list ul {
  display: flex;
  align-items: center;
  gap: 10px;
}
.a_about__genre-list li {
  border: 1px solid;
  padding: 11px 18px;
}
.a_about__genre-list li:last-child {
  padding: 11px 10px;
  border-color: transparent;
}
@media (max-width: 1023.98px) {
  .a_about__bgimg {
    right: 0;
  }
}
@media (max-width: 767.98px) {
  .a_about {
    margin-bottom: 50px;
  }
  .a_about__inner {
    margin: 0 -20px;
    padding: 0 20px;
    min-height: 1px;
    margin-top: 30px;
  }
  .a_about__cont ul {
    padding-left: 0px;
  }
  .a_about__genre {
    margin-top: 30px;
  }
  .a_about__genre-list {
    margin-top: 16px;
  }
  .a_about__genre-list li {
    white-space: nowrap;
  }
  .a_about__genre-list li:last-child {
    padding: 0;
  }
  .a_about__advants {
    padding-left: 0;
  }
  .a_about__advant {
    gap: 10px;
    font-size: 14px;
    line-height: 1.2;
  }
  .a_about__advant + .a_about__advant {
    margin-top: 12px;
  }
  .a_about__bgimg {
    right: auto;
    width: 550px;
    height: 215px;
    left: -20px;
    top: -100px;
  }
}

.a_advant {
  margin-bottom: 70px;
}
.a_advant__item {
  max-width: 930px;
  display: flex;
  gap: 20px;
}
.a_advant__item + .a_advant__item {
  margin-top: 30px;
}
.a_advant__item-title {
  flex: 0 0 auto;
  width: 250px;
}
.a_advant__item-text {
  flex: 1 0 0;
}
@media (max-width: 767.98px) {
  .a_advant {
    margin-bottom: 50px;
  }
  .a_advant__item {
    flex-direction: column;
    gap: 15px;
  }
  .a_advant__item + .a_advant__item {
    margin-top: 25px;
  }
  .a_advant__item-title {
    width: auto;
  }
  .a_advant__item-text {
    flex: 1 0 0;
  }
}

.a_team {
  margin-bottom: 70px;
}
.a_team__items {
  display: grid;
  grid-template-columns: 1fr 1.1fr;
  grid-gap: 30px 15px;
  width: 110%;
}
.a_team__item {
  display: flex;
  align-items: center;
  gap: 30px;
}
.a_team__item-photo {
  flex: 0 0 auto;
  width: 190px;
  height: 280px;
  border: 1px solid #fff;
  position: relative;
}
.a_team__item-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}
.a_team__item-info {
  flex: 1 0 0;
}
.a_team__item-name {
  margin-bottom: 20px;
  font-size: 17px;
  font-weight: 600;
}
.a_team__item-text {
  max-width: 450px;
  font-size: 15px;
  line-height: 1.2;
  text-wrap: balance;
}
.a_team__item-text > * {
  margin-top: 10px;
}
@media (max-width: 1699.98px) {
  .a_team__items {
    grid-template-columns: 1fr;
    width: 100%;
  }
}
@media (max-width: 609.98px) {
  .a_team {
    margin-bottom: 50px;
  }
  .a_team__item {
    flex-direction: column;
    align-items: flex-start;
  }
}

.a_contacts {
  margin-bottom: 40px;
}
.a_contacts__inner {
  padding-left: 40px;
}
.a_contacts__inner.pdl--sm {
  padding-left: 20px;
}
.a_contacts__t {
  font-weight: bold;
  margin-bottom: 20px;
}
.a_contacts__cols {
  display: flex;
  flex-wrap: wrap;
  gap: 50px;
}
.a_contacts__col-label {
  margin-bottom: 20px;
}
.a_contacts__sign {
  margin-top: 40px;
  padding: 8% 0 16%;
  position: relative;
  z-index: 2;
  font-size: 36px;
  font-weight: bold;
}
.a_contacts__sign-img {
  position: absolute;
  right: 0;
  top: 0;
  height: 100%;
  width: 55%;
  z-index: -1;
}
.a_contacts__sign-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}
@media (max-width: 767.98px) {
  .a_contacts {
    margin-bottom: 20px;
  }
  .a_contacts__inner {
    padding: 0 !important;
  }
  .a_contacts__cols {
    gap: 35px;
    flex-direction: column;
  }
  .a_contacts__col-label br {
    display: none;
  }
  .a_contacts__col .btn {
    width: 100%;
    max-width: 480px;
  }
  .a_contacts__sign {
    margin-top: 50px;
    padding: 0 0 50%;
    font-size: 21px;
  }
  .a_contacts__sign-img {
    position: absolute;
    right: 0;
    top: 30px;
    height: auto;
    padding-bottom: 49%;
    width: 85%;
  }
}

.m_mission {
  margin-bottom: 60px;
}
.m_mission__inner {
  padding-left: 30px;
}
.m_mission__item {
  display: flex;
  align-items: center;
  gap: 10px;
}
.m_mission__item + .m_mission__item {
  margin-top: 20px;
}
.m_mission__item-icon {
  flex: 0 0 auto;
  width: 25px;
}
.m_mission__item-text b {
  font-weight: 500;
}
@media (max-width: 767.98px) {
  .m_mission {
    margin-bottom: 50px;
  }
  .m_mission__inner {
    padding: 0;
  }
}

.m_aspects {
  margin-bottom: 30px;
}
.m_aspects__wrap {
  padding-bottom: 50px;
  max-width: 900px;
  background: url(../images/m_aspects-img.jpg) no-repeat center;
  background-size: cover;
}
.m_aspects__inner {
  padding-left: 30px;
}
.m_aspects__item {
  max-width: 350px;
  border: 1px solid #fff;
  padding: 12px 20px;
  font-weight: 500;
}
.m_aspects__item + .m_aspects__item {
  margin-top: 15px;
}
@media (max-width: 767.98px) {
  .m_aspects__wrap {
    margin: 0 -20px;
    padding: 0 20px 46px;
  }
  .m_aspects__inner {
    padding: 0;
  }
}

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

**************************************************************/
.artist {
  padding: 140px 0 90px;
  overflow: hidden;
  position: relative;
}
.artist__carousel {
  overflow: initial;
}
.artist__item {
  width: 340px !important;
}
.artist__item-photo {
  position: relative;
  padding-bottom: 130%;
  overflow: hidden;
  margin-bottom: 30px;
}
.artist__item-photo::before {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.79) 0.36%, rgba(0, 0, 0, 0) 52.74%);
  z-index: 2;
  content: "";
}
.artist__item-itph {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}
.artist__item-social .social__items {
  gap: 6px;
}
.artist__item-social .social__item {
  opacity: 1;
  color: rgb(209, 209, 209);
}
.artist__item-social .social__item:hover {
  color: #fff;
}
.artist__item-name {
  opacity: 0.6;
  font-size: 25px;
  font-weight: bold;
  transition: opacity 0.3s ease-in-out;
}
.artist__item-name.fs--md {
  font-size: 20px;
}
.artist__item:hover .artist__item-name {
  opacity: 1;
}
.artist__item-ts {
  margin-top: 18px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.artist__item-ts.al-top {
  align-items: flex-start;
}
.artist__item-type {
  opacity: 0.7;
  transition: opacity 0.3s ease-in-out;
}
.artist__item-ianim {
  opacity: 0.6;
  transition: opacity 0.3s ease-in-out;
  font-size: 12px;
}
.artist__item-ianim > * + * {
  margin-top: 10px;
}
.artist__item:hover .artist__item-ianim {
  opacity: 1;
}
.artist__item-desc {
  margin-top: 22px;
  line-height: 2;
  opacity: 0.6;
  transition: opacity 0.3s ease-in-out;
  -webkit-line-clamp: 4;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.artist__item:hover .artist__item-desc {
  opacity: 1;
}
.artist__item-audio {
  margin-top: 20px;
}
.artist__item-audio > * {
  margin-top: 10px;
  width: 100%;
}
.artist__video {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}
.artist__video::before {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  content: "";
  background: rgba(0, 0, 0, 0.2);
  backdrop-filter: blur(10px);
}
.artist__video video {
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  transform: translate(-50%, -50%);
}
@media (max-width: 1699.98px) {
  .artist {
    padding: 80px 0 60px;
  }
  .artist__item {
    width: 300px !important;
  }
}
@media (max-width: 1023.98px) {
  .artist {
    padding: 70px 0 96px;
  }
  .artist__item-photo {
    margin-bottom: 18px;
  }
  .artist__item-ts {
    margin-top: 15px;
  }
  .artist__item-desc {
    margin-top: 13px;
  }
}
@media (max-width: 609.98px) {
  .artist__items .swiper-wrapper {
    flex-direction: column;
    gap: 40px;
  }
  .artist__items .swiper-nav {
    display: none;
  }
  .artist__items .artist__item {
    width: 100% !important;
  }
}
@media (max-width: 360px) {
  .artist__item {
    width: 280px !important;
  }
  .artist__items .artist__item {
    width: 100% !important;
  }
}

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

**************************************************************/
.artistd {
  padding-bottom: 120px !important;
  background-size: 100%;
  position: relative;
}
.artistd__video {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100vh;
}
.artistd__video::before {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  content: "";
  background: rgba(0, 0, 0, 0.5);
  backdrop-filter: blur(10px);
}
.artistd__video video {
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  transform: translate(-50%, -50%);
}
.artistd__cols {
  display: flex;
  gap: 140px;
  position: relative;
  z-index: 5;
}
.artistd__photos {
  flex: 1 0 0;
  max-width: 680px;
  min-width: 1px;
}
.artistd__photos-sticky {
  position: sticky;
  top: 10px;
}
.artistd__slider {
  position: relative;
}
.artistd__slider-item {
  position: relative;
  padding-bottom: 108%;
}
.artistd__slider-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}
.artistd__thumbs {
  position: absolute;
  left: 0;
  bottom: 20px;
  width: 100%;
  padding: 0 20px;
}
.artistd__thumbs .swiper-slide {
  background: #000;
}
.artistd__thumbs-item {
  position: relative;
  padding-bottom: 70%;
  cursor: pointer;
  transition: all 0.3s ease-in-out;
  opacity: 0.8;
}
.swiper-slide-thumb-active .artistd__thumbs-item {
  opacity: 1;
}
.artistd__thumbs-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}
.artistd__info {
  flex: 1 0 0;
  max-width: 680px;
}
.artistd__head {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 20px;
}
.artistd__social {
  z-index: 5;
}
.artistd__name {
  font-size: 25px;
  font-weight: bold;
  margin-right: 20px;
}
.artistd__type {
  margin-top: 18px;
  font-size: 15px;
  font-style: italic;
}
.artistd__desc {
  margin-top: 22px;
}
.artistd__widgets {
  margin-top: 60px;
}
.artistd__widgets-item + .artistd__widgets-item {
  margin-top: 20px;
}
.artistd__widgets-item > * {
  width: 100%;
}
.artistd__widgets-item video {
  height: 380px;
}
.artistd__widgets-item__name {
  margin-bottom: 5px;
  font-size: 16px;
}
@media (max-width: 1699.98px) {
  .artistd__cols {
    gap: 80px;
    padding-right: 80px;
  }
}
@media (max-width: 1199.98px) {
  .artistd__cols {
    gap: 40px;
    padding-right: 0px;
  }
}
@media (max-width: 1023.98px) {
  .artistd {
    background: none;
    padding-bottom: 80px !important;
  }
  .artistd__cols {
    display: block;
  }
  .artistd__photos {
    max-width: 600px;
  }
  .artistd__info {
    margin-top: 50px;
    max-width: 100%;
  }
  .artistd__video {
    display: none;
  }
}
@media (max-width: 609.98px) {
  .artistd__thumbs {
    position: static;
    margin: 30px -20px 0;
    width: auto;
  }
  .artistd__thumbs-item {
    padding-bottom: 55%;
  }
  .artistd__slider-nav {
    position: absolute;
    left: 20px;
    bottom: 20px;
    z-index: 300;
  }
  .artistd__info {
    margin-top: 30px;
  }
}

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

**************************************************************/
.ordform {
  padding: 140px 0;
  position: relative;
}
.ordform.pd--md {
  padding: 115px 0;
}
.ordform__inner {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 40px;
  position: relative;
  z-index: 5;
}
.ordform__title {
  font-size: 60px;
  line-height: 1.1;
  font-weight: bold;
  transform: translateY(-2px);
  text-align: center;
}
.ordform__title.fs--md {
  font-size: 40px;
  text-wrap: balance;
}
.ordform__buttons {
  flex: 0 0 auto;
}
.ordform__video {
  overflow: hidden;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.ordform__video::before {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  content: "";
  background: rgba(0, 0, 0, 0.2);
  backdrop-filter: blur(10px);
}
.ordform__video video {
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  transform: translate(-50%, -50%);
}
.ordform__scrolltop {
  position: absolute;
  left: 50%;
  top: 100%;
  transform: translate(-50%, -50%);
  width: 40px;
  height: 40px;
  border-radius: 100%;
  border: none;
  background: #303030;
  cursor: pointer;
  outline: none;
  color: #707070;
  z-index: 10;
  display: flex;
  align-items: center;
  justify-content: center;
}
.ordform__scrolltop .icon {
  width: 14px;
  height: 20px;
  transform: rotate(-90deg);
  top: -2px;
  position: relative;
}
@media (max-width: 1699.98px) {
  .ordform {
    padding: 120px 0;
  }
  .ordform.pd--md {
    padding: 100px 0;
  }
  .ordform__title {
    font-size: 44px;
  }
  .ordform__title.fs--md {
    font-size: 36px;
  }
}
@media (max-width: 1023.98px) {
  .ordform {
    z-index: 20;
  }
  .ordform__title {
    font-size: 34px;
  }
}
@media (max-width: 609.98px) {
  .ordform {
    padding: 110px 0 80px;
  }
  .ordform.pd--md {
    padding: 80px 0;
  }
  .ordform__title {
    font-size: 24px;
  }
  .ordform__title.fs--md {
    font-size: 25px;
  }
}

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

**************************************************************/
.news {
  position: relative;
}
.news--bg {
  padding: 180px 0 60px;
}
.news .container {
  position: static;
}
.news__inner {
  width: 50%;
  max-width: 600px;
}
.news__iteml + .news__iteml {
  margin-top: 60px;
}
.news__iteml-wrap {
  position: relative;
  padding-right: 20px;
  opacity: 0.4;
  transition: all 0.3s ease-in-out;
  z-index: 2;
}
.news__iteml-wrap:before {
  position: absolute;
  left: 0;
  top: 0;
  width: 0px;
  height: 100%;
  background: #fff;
  content: "";
  transition: all 0.3s ease-in-out;
}
.news__iteml.active .news__iteml-wrap {
  padding-left: 20px;
  padding-right: 0;
  opacity: 1;
}
.news__iteml.active .news__iteml-wrap:before {
  width: 3px;
}
.news__iteml-title {
  font-size: 25px;
  line-height: 1.1;
  font-weight: bold;
}
.news__iteml-date {
  opacity: 0.7;
  font-size: 15px;
  font-style: italic;
  margin-top: 12px;
}
.news__iteml-desc {
  margin-top: 25px;
  line-height: 2;
  -webkit-line-clamp: 4;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.news__iteml-mlink {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  display: block;
}
.news__iteml-bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  opacity: 0;
  transition: all 0.3s ease-in-out;
}
.news__iteml-bg:after {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: radial-gradient(ellipse at 110% 60%, rgba(255, 255, 255, 0) 0%, #000 55%, #000 100%);
  background: url(../images/news-bg.png) no-repeat center center;
  background-size: 100% 100%;
  z-index: 1;
  content: "";
}
.news__iteml-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}
.news__iteml.active .news__iteml-bg {
  opacity: 1;
}
.news__items {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-gap: 40px;
}
.news__item {
  border: 3px solid rgba(255, 255, 255, 0.5);
  padding: 40px;
  transition: all 0.3s ease-in-out;
}
.news__item:hover {
  border-color: #fff;
}
.news__item-title {
  font-size: 25px;
  line-height: 1.1;
  font-weight: bold;
}
.news__item-date {
  opacity: 0.8;
  font-size: 15px;
  font-style: italic;
  margin-top: 20px;
}
.news__item-desc {
  margin-top: 20px;
  line-height: 2;
  -webkit-line-clamp: 2;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
@media (max-width: 1699.98px) {
  .news--bg {
    padding: 100px 0 60px;
  }
  .news__iteml + .news__iteml {
    margin-top: 40px;
  }
  .news__iteml-desc {
    margin-top: 20px;
  }
  .news__items {
    grid-gap: 30px;
  }
  .news__item {
    padding: 30px;
  }
  .news__item-title {
    font-size: 22px;
  }
}
@media (max-width: 1199.98px) {
  .news__items {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 1023.98px) {
  .news--bg {
    padding: 90px 0 60px;
  }
  .news__nav {
    display: none;
  }
  .news__inner {
    width: 70%;
  }
  .news__item-title {
    font-size: 18px;
    padding-right: 25px;
  }
  .news__item-desc {
    -webkit-line-clamp: 4;
  }
}
@media (max-width: 767.98px) {
  .news__inner {
    width: 100%;
  }
  .news__iteml {
    position: relative;
    padding-right: 5%;
  }
  .news__iteml-wrap {
    padding: 0 !important;
  }
  .news__iteml-wrap::before {
    display: none;
  }
  .news__iteml-bg {
    left: -20px;
    top: -60px;
    width: calc(100% + 40px);
    height: calc(100% + 120px);
  }
  .news__items {
    grid-template-columns: 1fr;
    grid-gap: 40px;
  }
  .news__item {
    padding: 32px 32px 40px;
  }
  .news__item-title {
    font-size: 14px;
  }
  .news__item-date {
    margin-top: 22px;
  }
  .news__item-desc {
    margin-top: 16px;
  }
}

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

**************************************************************/
.newsd .container {
  z-index: 2;
}
.newsd__head {
  position: relative;
  padding-bottom: 20px;
  margin-bottom: 40px;
}
.newsd__bg {
  position: absolute;
  left: 0;
  top: -160px;
  width: 100%;
  height: calc(100% + 140px + 20px);
}
.newsd__bg:before {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  background: url(../images/blur.png) no-repeat center center;
  background-size: cover;
  backdrop-filter: blur(25px);
  content: "";
}
.newsd__bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}
.newsd__title {
  font-size: 25px;
  font-weight: bold;
  line-height: 1.1;
}
.newsd__props {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0px 30px;
}
.newsd__date {
  margin-top: 30px;
  display: inline-block;
  padding: 10px 20px;
  border: 1px solid #fff;
  font-size: 15px;
  color: rgba(255, 255, 255, 0.8);
  font-weight: bold;
}
.newsd__date i {
  font-weight: normal;
}
.newsd__audio {
  margin-top: 20px;
}
.newsd__social {
  margin-top: 20px;
}
.newsd__social .social__item {
  opacity: 1;
}
.newsd__social .social__item .icon {
  width: 40px;
  height: 40px;
}
.newsd__intro {
  line-height: 2;
  margin-top: 40px;
}
.newsd__slider {
  margin-top: 50px;
}
.newsd__photo {
  position: relative;
  border-radius: 5px;
  overflow: hidden;
  padding-bottom: 50%;
}
.newsd__photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}
.newsd__content {
  margin-top: 30px;
}
@media (max-width: 767.98px) {
  .newsd__slider {
    margin-top: 30px;
  }
  .newsd__content img {
    margin: 10px 0 !important;
    float: none !important;
    height: auto !important;
    width: auto !important;
  }
  .newsd__content img:first-child {
    margin-top: 0 !important;
  }
}

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

**************************************************************/
.contacts {
  display: flex;
  min-height: calc(var(--vh) * 100);
  margin-top: -140px;
}
.contacts__aside {
  width: 27%;
  max-width: 500px;
  flex: 0 0 auto;
  position: relative;
  z-index: 500;
  background: #000;
  display: flex;
  align-items: center;
  padding: 30px 0 50px;
}
.contacts__info {
  padding: 0 50px 0 27%;
}
.contacts__logo {
  max-width: 150px;
  display: flex;
  margin-bottom: 120px;
}
.contacts__item + .contacts__item {
  margin-top: 20px;
}
.contacts__item-label {
  margin-bottom: 18px;
  font-size: 10px;
}
.contacts__item-val {
  font-size: 15px;
  font-weight: bold;
  display: flex;
  align-items: center;
  gap: 10px;
}
.contacts__item-icon {
  width: 21px;
  display: flex;
}
.contacts__social {
  margin-top: 27px;
}
.contacts__social-tt {
  color: rgb(225, 225, 225);
  font-size: 12px;
  margin-bottom: 20px;
}
.contacts__social .social__items {
  gap: 10px;
}
.contacts__social .icon {
  flex: 0 0 auto;
  height: 30px;
  width: 30px;
}
.contacts__social .icon--youtube {
  width: 41px;
}
.contacts__copy {
  position: absolute;
  bottom: 40px;
  left: 27%;
  font-size: 10px;
  color: rgba(255, 255, 255, 0.7);
}
.contacts__map {
  position: relative;
  flex: 1 0 0;
  background: #000;
  overflow: hidden;
}
.contacts__map > * {
  position: absolute !important;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}
.contacts__map [class*=controls__control] {
  inset: 180px auto auto 10px !important;
}
.contacts__map-ballon {
  background: #fff;
  width: 270px;
  padding: 32px;
  font-size: 12px;
  line-height: 2;
  margin-left: 25px;
  transform: translateY(-50%);
  position: relative;
}
.contacts__map-ballon__label {
  font-size: 10px;
  opacity: 0.6;
  margin-top: 5px;
}
.contacts__map-ballon a {
  font-weight: 700;
  color: black;
  display: inline-block;
}
.contacts__menu li + li {
  margin-top: 20px;
}
.contacts__menu a {
  color: rgba(255, 255, 255, 0.7);
  transition: all 0.3s ease-in-out;
}
.contacts__menu a:hover {
  color: #fff;
}
.contacts__menu li.active a {
  color: #fff;
  font-weight: bold;
}
@media (max-width: 1699.98px) {
  .contacts {
    margin-top: -110px;
  }
  .contacts__aside {
    width: 25%;
  }
  .contacts__info {
    padding-left: 20%;
  }
  .contacts__logo {
    margin-bottom: 90px;
  }
  .contacts__copy {
    left: 20%;
  }
}
@media (max-width: 1199.98px) {
  .contacts__aside {
    width: 27%;
  }
  .contacts__info {
    padding: 0 30px;
  }
  .contacts__copy {
    left: 30px;
  }
}
@media (max-width: 1023.98px) {
  .contacts {
    display: block;
  }
  .contacts .container {
    position: static;
  }
  .contacts__aside {
    width: 100%;
    text-align: center;
    max-width: 100%;
    padding-bottom: 80px;
    display: block;
    background: none;
    position: static;
  }
  .contacts__logo {
    margin: 0 auto 60px;
    text-align: center;
    justify-content: center;
    background: black;
    max-width: 400px;
    position: relative;
    z-index: 100;
  }
  .contacts__menu {
    margin-bottom: 60px;
  }
  .contacts__item-val {
    justify-content: center;
  }
  .contacts__social {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    opacity: 0.5;
  }
  .contacts__social-tt {
    margin-bottom: 10px;
  }
  .contacts__copy {
    bottom: 35px;
    left: 0;
    width: 100%;
    padding: 0 20px;
    text-align: center;
    color: #fff;
    z-index: 10;
  }
  .contacts__map {
    height: 380px;
    position: relative;
    width: 100%;
  }
  .contacts__map [class*=controls__control] {
    inset: 110px auto auto 10px !important;
  }
  .contacts__map::after {
    position: absolute;
    left: 0;
    bottom: -2px;
    width: 100%;
    height: 5px;
    background: #000;
    z-index: 20;
    content: "";
  }
}
@media (max-width: 609.98px) {
  .contacts__logo {
    max-width: 150px;
  }
  .contacts__map {
    height: 450px;
  }
  .contacts__map-ballon {
    width: 200px;
    padding: 15px;
    font-size: 12px;
    margin-left: 0;
    transform: translate(-50%, -100%);
    margin-top: -40px;
    display: none;
  }
}

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

**************************************************************/
.concerts {
  padding: 50px 0;
}
.concerts__blocks {
  position: relative;
  opacity: 0.4;
  transition: all 0.3s ease-in-out;
}
.concerts__blocks:before {
  position: absolute;
  left: 0;
  top: 0;
  width: 0px;
  height: 100%;
  background: #fff;
  content: "";
  transition: all 0.3s ease-in-out;
}
.concerts__blocks.hover {
  opacity: 1;
  padding-left: 25px;
}
.concerts__blocks.hover:before {
  width: 3px;
}
@media (any-hover: hover) {
  .concerts__blocks:hover {
    opacity: 1;
    padding-left: 25px;
  }
  .concerts__blocks:hover:before {
    width: 3px;
  }
}
.concerts__blocks + .concerts__blocks {
  margin-top: 50px;
}
.concerts__blocks-head {
  margin-bottom: 20px;
  font-size: 25px;
  font-weight: 400;
}
.concerts__blocks-row {
  display: flex;
  align-items: center;
  gap: 15px;
  text-align: center;
  font-size: 15px;
}
.concerts__blocks-row + .concerts__blocks-row {
  margin-top: 30px;
}
.concerts__blocks-col {
  display: flex;
  align-items: center;
  gap: 15px;
}
.concerts__blocks-col-f {
  flex: 1 0 0;
}
.concerts__blocks-col-l {
  width: 50%;
  max-width: 500px;
}
.concerts__blocks-date {
  flex: 0 0 auto;
  width: 140px;
}
.concerts__blocks-name {
  flex: 1 0 0;
}
.concerts__blocks-city {
  flex: 0 0 auto;
  width: 45%;
}
.concerts__blocks-address {
  flex: 0 0 auto;
  width: 55%;
  max-width: 250px;
}
.concerts__blocks-btn {
  flex: 0 0 auto;
}
.concerts__nav {
  display: none;
}
@media (max-width: 1199.98px) {
  .concerts__blocks-row {
    text-align: left;
  }
  .concerts__blocks-col {
    flex-direction: column;
    align-items: flex-start;
    gap: 7px;
  }
  .concerts__blocks-col-l {
    width: 30%;
  }
  .concerts__blocks-name {
    font-weight: 600;
  }
  .concerts__blocks-city, .concerts__blocks-address {
    width: 100%;
  }
}
@media (max-width: 1023.98px) {
  .concerts__blocks.active {
    opacity: 1;
    padding-left: 25px;
  }
  .concerts__blocks.active:before {
    width: 3px;
  }
}
@media (max-width: 767.98px) {
  .concerts__blocks {
    padding-left: 10px !important;
    opacity: 1;
    display: none;
    margin: 0 !important;
    transition: initial;
  }
  .concerts__blocks.show {
    display: block;
  }
  .concerts__blocks::before {
    display: none;
  }
  .concerts__blocks-head {
    display: none;
  }
  .concerts__blocks-row {
    position: relative;
    flex-direction: column;
    gap: 10px;
  }
  .concerts__blocks-row:before {
    position: absolute;
    left: -10px;
    top: 0;
    width: 0px;
    height: 100%;
    background: #fff;
    content: "";
    transition: all 0.3s ease-in-out;
  }
  .concerts__blocks-row.active {
    opacity: 1;
  }
  .concerts__blocks-row.active::before {
    width: 2px;
  }
  .concerts__blocks-col {
    padding-left: 28px;
    flex: 0 0 auto !important;
    width: 100%;
  }
  .concerts__blocks-cell {
    opacity: 0.5;
    transition: all 0.3s ease-in-out;
  }
  .concerts__blocks-row.active .concerts__blocks-cell {
    opacity: 1;
  }
  .concerts__blocks-name {
    width: calc(100% + 23px);
    margin-left: -23px;
  }
  .concerts__blocks-btn {
    width: 100%;
    display: flex;
    justify-content: flex-end;
  }
  .concerts__blocks-btn .btn {
    height: 30px;
    padding: 0 23px;
  }
  .concerts__blocks-btn .btn img {
    display: none;
  }
  .concerts__nav {
    display: flex;
    gap: 50px;
    overflow: auto;
    margin: 0 -20px 28px;
    padding: 0 20px 5px;
  }
  .concerts__nav-link {
    font-size: 18px;
    opacity: 0.4;
    white-space: nowrap;
  }
  .concerts__nav-link.active {
    opacity: 1;
  }
}

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

**************************************************************/
.lassist__cols {
  display: grid;
  grid-template-columns: 1fr 1.1fr;
  grid-gap: 80px;
}
.lassist__photo img {
  position: sticky;
  top: 10px;
}
.lassist__text {
  margin-bottom: 30px;
}
.lassist__consult {
  margin-bottom: 40px;
}
.lassist__consult-cols {
  display: flex;
  justify-content: space-between;
  gap: 64px;
  margin-top: 20px;
}
.lassist__consult-action {
  flex: 0 0 auto;
  text-align: center;
  padding-top: 5px;
}
.lassist__consult-action .btn {
  width: 220px;
  height: 46px;
  border-width: 2px;
  font-weight: 600;
  opacity: 1;
}
.lassist__consult-email {
  font-weight: 600;
  margin-top: 10px;
  display: block;
}
.lassist__advant {
  margin-bottom: 60px;
}
.lassist__advant-inner {
  padding-left: 27px;
}
.lassist__advant-item {
  display: flex;
  align-items: center;
  gap: 10px;
}
.lassist__advant-item + .lassist__advant-item {
  margin-top: 20px;
}
.lassist__advant-item__icon {
  flex: 0 0 auto;
  width: 25px;
}
.lassist__advant-item__text b {
  font-weight: 500;
}
.lassist__warn {
  margin-bottom: 60px;
  border: 2px solid #FFF;
  padding: 32px 42px 32px 28px;
}
@media (max-width: 1699.98px) {
  .lassist__cols {
    grid-gap: 40px;
  }
  .lassist__consult-cols {
    gap: 20px;
  }
}
@media (max-width: 1199.98px) {
  .lassist__cols {
    display: block;
  }
  .lassist__photo {
    max-width: 680px;
  }
  .lassist__info {
    max-width: 740px;
    margin-top: 60px;
  }
}
@media (max-width: 609.98px) {
  .lassist__info {
    margin-top: 40px;
  }
  .lassist__consult-cols {
    flex-direction: column;
    align-items: stretch;
    gap: 30px;
  }
  .lassist__consult-action .btn {
    width: 100%;
  }
  .lassist__advant {
    margin-bottom: 40px;
  }
  .lassist__advant-inner {
    padding-left: 0;
  }
  .lassist__warn {
    padding: 32px 20px 36px;
    margin-bottom: 40px;
  }
}

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

**************************************************************/
.animd {
  overflow: hidden;
}
.animd__photo {
  margin-bottom: 100px;
}
.animd .section__head {
  margin-bottom: 30px;
}
.animd .section__title {
  min-height: 80px;
}
.animd__desc {
  margin-bottom: 40px;
}
.animd__lang {
  margin-bottom: 40px;
}
.animd__info {
  max-width: 877px;
}
.animd__text {
  font-size: 15px;
}
.animd__text > * + * {
  margin-top: 10px;
}
.animd__buttons {
  text-align: right;
  margin-top: 60px;
}
.animd__buttons .btn {
  font-weight: 600;
  height: 46px;
  min-width: 315px;
  border-width: 2px;
  opacity: 1;
}
@media (hover: hover) {
  .animd__buttons .btn:hover {
    background: #fff;
    color: black;
  }
}
.animd__awards {
  margin-bottom: 200px;
  position: relative;
  z-index: 1;
}
.animd__awards-cols {
  display: flex;
}
.animd__awards-info {
  width: 700px;
  flex: 0 0 auto;
  position: relative;
  z-index: 10;
}
.animd__awards-item {
  display: flex;
  align-items: flex-start;
  gap: 20px;
  font-size: 15px;
}
.animd__awards-item + .animd__awards-item {
  margin-top: 10px;
}
.animd__awards-item__year {
  flex: 0 0 auto;
  width: 100px;
  min-height: 46px;
  border: 2px solid #FFFFFF;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 5px;
  text-align: center;
}
.animd__awards-item__info {
  min-height: 46px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.animd__awards-item__name {
  margin-top: 8px;
  font-weight: 700;
}
.animd__awards-photo {
  position: relative;
  flex: 1 0 0;
}
.animd__awards-photo img {
  width: 180%;
  max-width: initial;
  position: absolute;
  left: 0;
  top: 0;
  transform: translate(-10%, -100px);
}
@media (max-width: 1699.98px) {
  .animd__awards-photo img {
    width: 250%;
    transform: translate(-15%, 0);
  }
}
@media (max-width: 1199.98px) {
  .animd__photo {
    margin-bottom: 80px;
  }
  .animd__awards-info {
    width: 500px;
  }
  .animd__awards-photo img {
    width: 190%;
    transform: translate(-10%, 0);
  }
}
@media (max-width: 1023.98px) {
  .animd__awards {
    margin-bottom: 0;
  }
  .animd__awards-cols {
    flex-direction: column-reverse;
  }
  .animd__awards-info {
    width: 100%;
    max-width: 700px;
  }
  .animd__awards-photo {
    padding-bottom: 110%;
  }
  .animd__awards-photo img {
    width: 125%;
    left: 50%;
    transform: translateX(-50%);
  }
}
@media (max-width: 609.98px) {
  .animd__photo {
    margin: 0 -20px 30px;
  }
  .animd__photo img {
    width: 100%;
  }
  .animd .section__title {
    font-size: 19px;
  }
  .animd .section__title div + div {
    margin-top: 10px;
  }
  .animd__buttons {
    margin-top: 30px;
    text-align: left;
  }
  .animd__buttons .btn {
    width: 100%;
    max-width: 480px;
  }
  .animd__awards-item {
    gap: 10px;
  }
  .animd__awards-item__year {
    width: 73px;
  }
  .animd__awards-photo img {
    width: 100%;
  }
}

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

**************************************************************/
.workshop {
  overflow: hidden;
}
.workshop__cols {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 30px;
}
.workshop__body {
  flex: 1 0 0;
}
.workshop__info {
  max-width: 600px;
}
.workshop__intro {
  font-size: 25px;
  font-weight: bold;
}
.workshop__text {
  margin-top: 40px;
}
.workshop__text > * + * {
  margin-top: 10px;
}
.workshop__actt {
  font-size: 19px;
  font-weight: bold;
  white-space: nowrap;
  margin-top: 40px;
}
.workshop__action {
  margin-top: 40px;
  display: flex;
  align-items: center;
  gap: 50px;
}
.workshop__social {
  flex: 0 0 auto;
  display: flex;
  gap: 10px;
}
.workshop__social a {
  display: flex;
  transition: all 0.3s linear;
}
.workshop__social a:hover {
  transform: scale(1.1);
}
.workshop__social a img {
  height: 46px;
}
.workshop__img {
  flex: 0 0 auto;
  width: 52%;
}
@media (max-width: 1699.98px) {
  .workshop__intro {
    font-size: 22px;
  }
  .workshop__actt {
    font-size: 17px;
  }
}
@media (max-width: 1339.98px) {
  .workshop__intro {
    font-size: 18px;
  }
  .workshop__text {
    margin-top: 30px;
  }
  .workshop__actt {
    font-size: 15px;
  }
  .workshop__action {
    gap: 50px;
    margin-top: 40px;
  }
}
@media (max-width: 1199.98px) {
  .workshop__cols {
    flex-direction: column;
    gap: 100px;
  }
  .workshop__intro {
    font-size: 25px;
  }
  .workshop__action {
    gap: 30px;
    margin-top: 30px;
  }
  .workshop__actt {
    font-size: 19px;
  }
  .workshop__img {
    width: 100%;
    max-width: 900px;
  }
}
@media (max-width: 767.98px) {
  .workshop .snav__list {
    justify-content: center;
  }
  .workshop__cols {
    text-align: center;
    align-items: center;
  }
  .workshop__action {
    flex-direction: column;
  }
}
@media (max-width: 609.98px) {
  .workshop__intro {
    font-size: 17px;
  }
  .workshop__img {
    margin: 30px -20px 0;
    width: auto;
  }
  .workshop__action {
    margin-top: 32px;
    gap: 32px;
  }
  .workshop__buttons {
    width: 100%;
  }
}

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

**************************************************************/
.mws_items {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-gap: 20px;
}

.mws_item {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  text-align: center;
  padding: 20px 2px;
  min-height: 155px;
  border: 1px solid #fff;
}
.mws_item-text {
  margin-top: 20px;
}
.mws_item-text:before {
  display: inline-block;
  width: 21px;
  height: 8px;
  background-image: url("data:image/svg+xml,%3Csvg width='21' height='8' viewBox='0 0 21 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20.3536 4.03519C20.5488 3.83993 20.5488 3.52335 20.3536 3.32809L17.1716 0.146107C16.9763 -0.0491555 16.6597 -0.0491555 16.4645 0.146107C16.2692 0.341369 16.2692 0.657951 16.4645 0.853214L19.2929 3.68164L16.4645 6.51007C16.2692 6.70533 16.2692 7.02191 16.4645 7.21717C16.6597 7.41244 16.9763 7.41244 17.1716 7.21717L20.3536 4.03519ZM0 3.68164V4.18164H20V3.68164V3.18164H0V3.68164Z' fill='white'/%3E%3C/svg%3E%0A");
  background-size: 100%;
  margin-right: 10px;
  transform: translateY(-20%);
  content: "";
}

@media (max-width: 1023.98px) {
  .mws_items {
    grid-template-columns: 1fr;
  }
}
/**************************************************************

**************************************************************/
.mws_gallery__items {
  display: grid;
  grid-template-columns: 2fr 1fr;
  grid-gap: 10px;
}
.mws_gallery__item {
  position: relative;
  padding-bottom: 55%;
}
.mws_gallery__item.item--lg {
  grid-row: span 2;
}
.mws_gallery__item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}
@media (max-width: 1023.98px) {
  .mws_gallery {
    overflow: initial;
  }
  .mws_gallery__items {
    grid-gap: 0;
    display: flex;
  }
}
@media (max-width: 609.98px) {
  .mws_gallery {
    margin-left: -20px;
    margin-right: -20px;
  }
}

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

**************************************************************/
.mws_foot {
  display: flex;
  align-items: flex-start;
  gap: 90px;
}
.mws_foot__logo {
  width: 155px;
}
.mws_foot__logo img {
  width: 100%;
}
.mws_foot__creating {
  max-width: 505px;
}
.mws_foot__creating-t {
  font-size: 25px;
  font-weight: bold;
}
.mws_foot__creating-list {
  margin-top: 32px;
}
.mws_foot__creating-item {
  display: flex;
  align-items: center;
  gap: 20px;
}
.mws_foot__creating-item + .mws_foot__creating-item {
  margin-top: 13px;
}
.mws_foot__creating-item__icon {
  flex: 0 0 auto;
  width: 31px;
}
.mws_foot__creating-item__text {
  text-wrap: balance;
}
.mws_foot__creating-item__text b {
  font-weight: 500;
}
.mws_foot__end {
  max-width: 505px;
}
.mws_foot__end-text {
  margin-top: 20px;
}
.mws_foot__end-text > * + * {
  margin-top: 10px;
}
.mws_foot__end-buttons {
  margin-top: 24px;
}
@media (max-width: 1339.98px) {
  .mws_foot {
    gap: 40px;
  }
  .mws_foot__creating-t {
    font-size: 22px;
  }
}
@media (max-width: 1199.98px) {
  .mws_foot {
    flex-wrap: wrap;
    gap: 40px 60px;
  }
  .mws_foot__creating-t {
    font-size: 25px;
  }
  .mws_foot__end {
    max-width: 880px;
  }
}
@media (max-width: 609.98px) {
  .mws_foot {
    flex-direction: column;
    align-items: center;
    gap: 40px;
    text-align: center;
  }
  .mws_foot__logo {
    width: 200px;
  }
  .mws_foot__creating-t br {
    display: none;
  }
  .mws_foot__creating-item {
    text-align: left;
  }
}

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

**************************************************************/
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIl9mb250cy5zY3NzIiwiX3Jlc2V0LnNjc3MiLCJpbmMvX3ZhcnMuc2NzcyIsIl9jb21tb24uc2NzcyIsImluYy9fbWl4aW5zLnNjc3MiLCJjb21tb24vX2NvbnRlbnQuc2NzcyIsImNvbW1vbi9fc2VjdGlvbi5zY3NzIiwiY29tbW9uL19lbGVtZW50cy5zY3NzIiwiX2xpYnMuc2NzcyIsIl9mb3Jtcy5zY3NzIiwiX3BvcHVwLnNjc3MiLCJfaGVhZGVyLnNjc3MiLCJjb21wb25lbnRzL19tZW51LnNjc3MiLCJjb21wb25lbnRzL19uYXZmaXguc2NzcyIsIl9mb290ZXIuc2NzcyIsInN0eWxlcy5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBUTtBQ0NSO0VBQ0k7RUFDQTtFQUNBOzs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUo7RUFDSTs7O0FBRUo7RUFDSTs7O0FBR0o7RUFDSTs7O0FBRUo7RUFDSTtFQUNBO0VBQ0EsYUMzQkc7RUQ0QkgsT0N4QlM7RUR5QlQ7RUFDQTtFQUNBO0VBQ0E7RUFDQSxZQy9CTTs7O0FEaUNWO0FBQUE7QUFBQTtFQUdJO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0U7OztBQUdGO0VBQ0k7RUFDQTtFQUFXO0VBQ1g7OztBRXZESjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFFSjtFQUNJO0VBQ0E7RUFDQTs7O0FBRUo7RUFDSTtFQUNBLFdETmM7RUNPZDtFQUFtQjtFQUNuQjs7QUFDQTtFQUxKO0lBTVE7OztBQUVKO0VBRUk7SUFDSTs7O0FBR1I7RUFkSjtJQWVROztFQUNBO0lBQ0k7OztBQUdSO0VBcEJKO0lBcUJTOzs7QUFFTDtFQXZCSjtJQXdCUTs7O0FBRUo7RUExQko7SUEyQlE7SUFDQTs7O0FBU1I7RUFDSTtFQUFrQjtFQUNsQjtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSSxhRHhDTzs7O0FDOENQO0VBREo7SUFFUTs7OztBQUlKO0VBREo7SUFFUTs7OztBQUlKO0VBREo7SUFFUTs7OztBQUlKO0VBREo7SUFFUTs7OztBQUlKO0VBREo7SUFFUTs7OztBQUlKO0VBREo7SUFFUTs7OztBQUlKO0VBREo7SUFFUTs7OztBQUlKO0VBREo7SUFFUTs7OztBQUlKO0VBREo7SUFFUTs7OztBQUlKO0VBREo7SUFFUTs7OztBQUlSO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUVKO0VBQ0k7RUFDQTs7O0FBR0o7RUFDSTs7QUFDQTtFQ3pIQTtFQUNBO0VBQVM7RUFDVDtFQUFhO0VEeUhUO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTs7QUFHSjtFQUNJOztBQUVKO0VBQ0c7RUFDQTs7QUFHSDtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUFjO0VBQ2Q7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDSTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUFXO0VBQ1g7RUFBYTtFQUNiO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDSTtFQUFhOztBQUVqQjtFQUNJOztBQUlaO0VBekRKO0lBMERROztFQUNBO0lBQ0k7SUFDQTs7RUFDQTtJQUNJOzs7QUFJWjtFQUNJO0lBQ0k7Ozs7QUUxTVo7RUFDSTtFQUNBOztBQUNBO0VBQ0k7O0FBRUo7RUFFSTs7QUFDQTtFQUNJOztBQUdSO0VBQ0ksT0hYSztFR1lMO0VBQ0E7O0FBQ0E7RUFDSTs7QUFHUjtFQUNJO0VBQ0E7O0FBRUo7RUFDSTtFQUNBOztBQUVKO0VBQ0k7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7O0FBRUo7RUFDSTtFQUNBOztBQUVKO0FBQUE7RUFFRTs7QUFFRjtFQUNJO0VBQ0E7O0FBRUo7RUFDSTs7QUFFSjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsT0h0RE87RUd1RFA7RUFDQTs7QUFFRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUY7RUFDSTs7QUFNSjtFQTlFSjtJQWdGUTs7OztBQy9FSjtFQUNJOztBQUNBO0VBQ0k7O0FBRUo7RUFDSTs7QUFFSjtFQUNJOztBQUVKO0VBQ0k7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7O0FBR1I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNJO0VBQ0E7O0FBS0o7RUFDSTtFQUNBOztBQUdSO0VBQ0k7RUFDQTs7QUFFSjtFQUNJOztBQUVKO0VBQ0k7O0FBSUE7RUFDRzs7QUFRUDtFQUNJOztBQUVKO0VBQ0k7O0FBRUo7RUFDSTs7QUFDQTtFQUNJOztBQUlSO0VBT0k7SUFDRTs7RUFDQTtJQUNJO0lBQ0E7OztBQXNCVjtFQUVRO0lBQ0k7SUFDQTs7O0FBS1o7RUFJUTtJQUNJO0lBQ0E7OztBQUlaO0VBSVE7SUFDSTtJQUNBOzs7QUFVWjtFQUVJO0lBQ0c7O0VBRUg7SUFDRTtJQUNBO0lBQ0E7O0VBQ0U7SUFDSTs7O0FBT1o7RUFNUTtJQUNJOztFQUtKO0lBQ0k7Ozs7QUFNaEI7RUFDSTtFQUNBOztBQUNBO0VBQ0k7RUFDQTs7O0FBR1I7RUFDRzs7O0FBR0g7RUFDSTs7O0FBRUo7RUFDSTs7O0FBR0o7RUFDSTs7O0FDeE1KO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0k7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFNSjtFQUNJO0VBQ0E7RUFDQTs7QUFFSjtFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNJOztBQUdSO0VBQ0k7RUFBYzs7QUFDZDtFQUNJOztBQUdSO0VBQ0k7SUFDSTs7OztBQVFaO0VBQ0k7O0FBQ0E7RUFDSTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTs7QUFJSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDSTtFQUNBOztBQUVKO0VBQ0k7RUFDQTtFQUNBOztBQUVKO0VBQ0k7RUFDQTs7QUFJUjtFQUNJO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJO0lBQ0E7OztBQUdSO0VBQ0k7SUFDSTs7RUFJQTtJQUNJO0lBQ0E7Ozs7QUFPaEI7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDSTtFQUFhO0VBQ2I7O0FBTUE7RUFDSTs7QUFFSjtFQUNJOztBQUVKO0VBQ0k7O0FBR1I7RUExQko7SUEyQlE7Ozs7QUFLUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNJOztBQUdKO0VBWEo7SUFZUTs7OztBQStCUjtFQUNJO0VBQ0E7RUFDQTs7QUFDQTtFQUNJO0VBQ0E7RUFDQTtFQUVBOztBQUVKO0VBQ0k7RUFDQTtFQUFhO0VBQ2I7RUFDQTs7QUFDQTtFQUNJOztBQUVKO0VBQ0k7O0FBR0o7RUFDSTtFQUNBOztBQUdSO0VBQ0k7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUgxTko7RUFDQTtFQUFTO0VBQ1Q7RUFBYTtFRzBOTDtFQUNBO0VBQ0E7O0FBR1I7RUFDSTs7QUFHSjtFQWpESjtJQWtEUTtJQUNBOztFQUNBO0lBQ0k7Ozs7QUN4UFo7QUFBQTtBQUFBO0FBS0E7RUFDRTs7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFLQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNFO0VBQ0E7O0FBS0o7RUFDRTs7O0FBSUo7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBSUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUlBO0VBQ0U7O0FBRUY7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtJQUtFOzs7O0FBTU47RUFDRTs7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0U7O0FBR0Y7RUFDRTs7QUFFRjtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOzs7QUFJSjtFQUVJO0lBQ0U7OztBQUtOO0VBQ0U7SUFDRTtJQUFhOztFQUVmO0lBQ0U7SUFDQTs7O0FBS0o7QUFBQTtBQUFBO0FBR0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVKO0VBR0k7RUFDQTtFQUFZO0VBQWE7RUFDekI7RUFDQTtFQUNBO0VBQWE7RUFDYjtFQUNBOztBQUNBO0VBQ0k7O0FBR1I7RUFDSTtFQUNBOztBQUVKO0VBQ0k7O0FBRUo7RUFDSTs7QUFRSjtFQUNJO0VBQ0E7RUFDQTtFQUFpQjtFQUdqQjtFQUNBO0VBQ0E7O0FBRUo7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsT05wTVM7RU1xTVQ7RUFDQTtFQUNGO0VBQ0E7RUFDQTs7QUFFQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUY7RUFDRTs7QUFFRjtFQUNJOztBQUVKO0VBQ0U7RUFDRSxPTjFOTztFTTJOUDtFQUNBO0VBQ0E7RUFBaUI7RUFDakI7O0FBRUo7RUFDSTtFQUNBOztBQU9BO0VBQ0k7RUFDQTtFQUNBO0VBQWM7RUFDZDtFQUNBLE9OOU9HO0VNK09IO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBOztBQUdSO0VBQ0U7O0FBRUY7RUFDRTtFQUNBOztBQUVGO0VBQ0U7RUFDQTs7O0FDMVFSO0FBQUE7QUFBQTtBTEdJO0VBQXNDO0VBQWM7OztBQUNwRDtFQUFnQyxPS0RDO0VMQ2EsU0tEYTs7O0FMRTNEO0VBQW1DLE9LRkY7RUxFZ0IsU0tGVTs7O0FMRzNEO0VBQW1DLE9LSEY7RUxHZ0IsU0tIVTs7O0FMSTNEO0VBQW1DLE9LSkY7RUxJZ0IsU0tKVTs7O0FMSzNEO0VBQStCLE9LTEU7RUxLWSxTS0xjOzs7QUxNM0Q7RUFBd0IsT0tOUztFTE1LLFNLTnFCOzs7QUxPM0Q7RUFBNkIsT0tQSTtFTE9VLFNLUGdCOzs7QUFFL0Q7RUFBeUM7RUFBb0I7OztBQUM3RDtFQUFzQztFQUFvQjs7O0FBQzFEO0VBQXdDO0VBQW9COzs7QUFDNUQ7RUFBc0M7RUFBb0I7OztBQUMxRDtFQUFzQztFQUFvQjs7O0FBQzFEO0VBQWdDO0VBQW9COzs7QUFFcEQ7RUFBNkI7OztBQUM3QjtFQUE2Qjs7O0FBQzdCO0VBQTZCOzs7QUFDN0I7RUFBNkI7OztBQUk3QjtFQUFnQjs7O0FBS1I7RUFDSTs7QUFHUjtFQUNJO0VBQ0E7RUFDQTs7QUFFSjtFQUNJOztBQUVKO0VBQ0k7RUFDQTs7QUFFSjtFQUNJOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0k7RUFDQTtFQUNBO0VBQVk7O0FBRWhCO0VBQ0k7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFBYTtFQUNiO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7O0FBRUo7RUFDSTtFQUNBOztBQUNBO0VBQ0k7O0FBS1o7RUFDSTtJQUNJOztFQUVKO0lBQ0k7Ozs7QUFNWjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxhUHZHRztFT3dHSDtFQUNBO0VBQ0E7RUFFQTs7QUFDQTtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUVKO0VBQ0k7RUFFQTs7QUFJSjtFQXpCSjtJQTBCUTs7OztBQUdSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUlKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQWE7RUFDYixhUGhKRztFT2lKSDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDSTs7QUFHSjtFQUNJO0VBQWlCOztBQUVyQjtFQUNJO0VBQWE7O0FBRWpCO0VBQ0k7RUFDQTs7QUFDQTtFQUNJO0VBQ0E7O0FBR1I7RUFDSTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDSTtFQUNBO0VBQ0E7RUFBVTtFQUNWO0VBQVc7RUFDWDtFQUNBO0VBQ0E7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTs7QUFHUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUVBO0VBRUE7RUFHQTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTs7QUFFSjtFQUNJO0VBQ0E7O0FBR0o7RUFDSTtJQUNJOztFQUVKO0lBQ0k7OztBQUdSO0VBQ0k7O0FBRUo7RUFDSTtFQUNBOztBQUVKO0VBQ0k7RUFDQTs7QUFFSjtFQUNJO0lBQ0s7SUFDQTtJQUNEOzs7O0FBTVo7RUFDSTs7QUFDQTtFQUNJOztBQUVKO0VBQ0k7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsYVAvUUQ7RU9nUkM7RUFDQTtFQUNBOztBQUtKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0k7O0FBR1I7RUFDSTs7QUFFSjtFQUNJO0VBQ0E7RUFBYTtFQUNiO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0k7RUFBYTtFQUNiOztBQUdSO0VBQ0k7RUFDQTtFQUFTO0VBQ1Q7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7SUFDSTtJQUNBOzs7O0FDMVVaO0FBQUE7QUFBQTtBQUdBO0VBQ0k7RUFDQTtFQUFRO0VBQ1I7RUFBYTtFQUNiO0VBQ0E7RUFDQTs7QUFDQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTtFQUNBO0VBQWE7RUFDYjtFQUNBO0VBQ0E7O0FBR0E7RUFDSTs7QUFHUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDSTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTs7QUFHUjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0k7O0FBR1I7RUFDSTtFQUNBOztBQUVKO0VBQ0k7O0FBRUo7RUFDSTs7QUFFSjtFQUNJOztBQUdKO0VBQ0k7SUFDSTs7RUFFSjtJQUNJO0lBQ0E7SUFDQTs7RUFFSjtJQUNJOztFQUNBO0lBQ0k7O0VBR1I7SUFDSTs7O0FBU1I7RUFJSTtJQUNJOzs7O0FDaEhaO0FBQUE7QUFBQTtBQUdBO0VBQ0k7RUFDQTtFQUNBOztBQUNBO0VBQ0k7RUFDQSxRVGFHO0VTWkg7RUFDQTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTtFQUNBOztBQUVKO0VBQ0k7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7O0FBRUo7RUFDSTtFQUNBOztBQUtKO0VBQ0k7RUFDQTs7QUFFSjtFQUNJOztBQUVBO0VBQ0k7O0FBSVI7RUFDSTs7QUFHSjtFQUNJO0lBQ0ksUVQ3QkM7SVM4QkQ7O0VBRUo7SUFDSTs7RUFDQTtJQUNJOzs7QUFJWjtFQUNJO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7O0VBQ0E7SUFDSTs7RUFFSjtJQUNJOzs7QUFJWjtFQUNJO0lBQ0k7O0VBRUo7SUFDSTs7O0FBR1I7RUFDSTtJQUNJLFFUOURDOztFU2dFTDtJQUNJOztFQUVKO0lBQ0k7SUFBYTtJQUNiO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7RUFDQTtJUC9FUjtJQUNBO0lBQVc7SUFDWDtJTytFWTs7RUFFSjtJQUNJOztFQUdBO0lBQ0k7O0VBRUo7SUFDSTs7RUFJWjtJQUNJOztFQUVKO0lBQ0k7OztBQUdSO0VBQ0k7SUFDSSxRVG5HQzs7RVNxR0w7SUFDSTtJQUFhOztFQUVqQjtJQUNJO0lBQWE7O0VBRWpCO0lBQ0k7O0VBRUo7SUFDSTs7OztBQ3ZJUjtFQUNJO0VBQ0E7RUFDQTs7QUFDQTtFQUNJOztBQUVKO0VBQ0k7RUFDQTtFQUFhO0VBQ2I7RUFBWTtFQUNaOztBQUVKO0VBQ0ksWVZiRjtFVWNFO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0k7RUFDQTs7QUFJWjtFQUNJOztBQUNBO0VBQ0k7RUFBWTs7QUFHcEI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQWE7RUFDYjtFQUNBOztBQUNBO0VBQ0k7O0FBR1I7RUFDSTtFQUNBOztBQUdKO0VBQ0k7SUFDSTs7RUFHSjtJQUNJOzs7QUFHUjtFQUNJO0lBQ0k7O0VBRUo7SUFDSTs7O0FBR1I7RUFDSTtJQUNJO0lBQ0E7O0VBQ0E7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQVk7O0VBRWhCO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7O0VBQ0E7SUFDSTs7RUFJWjtJQUNJO0lBQ0E7Ozs7QUN6Rlo7RUFDSTtFQUNBO0VBQVE7RUFDUjtFQUFhO0VBQ2I7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQVk7RUFDWjs7QUFDQTtFQUNJO0VBQVk7O0FBRWhCO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVKO0VBQ0k7RUFDQTtFQUVBOztBQUVKO0VBQ0k7O0FBRUk7RUFDSTs7QUFHUjtFQUNJO0VBQ0E7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7O0FBSVI7RUFDSTtFQUNBOztBQUtKO0VBQ0k7SUFDSSxhWHRDQzs7OztBWXhCYjtBQUFBO0FBQUE7QUFHQTtFQUNJO0VBRUEsWVpMTTs7QVlNTjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUVKO0VBQ0k7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTs7QUFDQTtFQUNJOztBQUdSO0VBQ0k7O0FBQ0E7RUFDSTs7QUFFSjtFQUNJO0VBQ0E7O0FBQ0E7RUFDSTs7QUFHUjtFQUNJO0VBQ0E7O0FBR1I7RUFDSTtFQUNBO0VBQ0E7O0FBRUk7RUFDSTs7QUFHUjtFQUNJO0VBQ0E7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFFSjtFQUNJOztBQUdSO0VBQ0k7O0FBQ0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFFSjtFQUNJOztBQUVKO0VBQ0k7RUFBYzs7QUFFbEI7RUFDSTs7QUFJUjtFQUNJO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFBVTtFQUNWO0VBQVk7RUFDWjs7QUFDQTtFQUNJO0VBQ0E7RUFBVztFQUNYO0VBQ0E7O0FBS1I7RUFDSTtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTtJQUNBO0lBQ0E7OztBQUlSO0VBQ0k7SUFDSTs7RUFFSjtJQUNJO0lBQ0E7O0VBRUo7SUFLSTtJQUNBO0lBQ0E7OztBQUdSO0VBQ0k7SUFDSTtJQUNBO0lBQ0E7O0VBRUo7SUFDSTs7RUFFSjtJQUNJO0lBQ0E7SUFDQTs7RUFDQTtJQUNJOztFQUdSO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7Ozs7QUN6Slo7O0FBQUE7QUFHQTtFQUNJO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7QUFFSjtFQUNJOztBQUNBO0VBQ0k7O0FBRUo7RUFDSTs7QUFFSjtFQUNJOztBQUVKO0VBQ0k7O0FBRUo7RUFDSTs7QUFFSjtFQUNJOztBQUVKO0VBQ0k7O0FBRUo7RUFDSTs7QUFHQTtFQUNJOztBQUVKO0VBQ0k7O0FBRUo7RUFDSTs7QUFFSjtFQUNJOztBQUVKO0VBQ0k7O0FBRUo7RUFDSTs7QUFFSjtFQUNJOztBQUVKO0VBQ0k7O0FBSVo7RUFDSTtFQUNBOztBQUNBO0VBQ0k7RUFDQTs7QUFHUjtFQUNJO0VBQ0E7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTs7QUFDQTtFQUNJOztBQUdSO0VYbkdBO0VBQ0E7RUFBUztFQUNUO0VBQWE7RVdtR1Q7O0FBQ0E7RUFDSTs7QUFFSjtFQUNJO0VBQ0E7RUFBUztFQUNUO0VBQWE7RUFDYjtFQUNBO0VBRUE7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVKO0VYakhKO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QVdrSEE7RUFDSTtJQUNJO0lBQ0E7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUNBO0lBQ0k7O0VBR1I7SUFDSTtJQUNBO0lBQ0E7SUFDQTs7RUFLSjtJQUNJOztFQUVKO0lBQ0k7OztBQUlSO0VBQ0k7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7OztBQU1SO0VBQ0k7SUFDSTtJQUNBO0lBQ0E7SUFDQTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7SUFDQTtJQUNBOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJO0lBQ0E7O0VBRUo7SUFDSTs7RUFDQTtJQUNJOzs7QUFJWjtFQUNJO0lBQ0k7O0VBRUo7SUFDSTs7OztBQVFaOztBQUFBO0FBR0E7RUFDSTtFQUNBO0VBQ0E7O0FBQ0E7RUFDSTtFQUNBOztBQUVKO0VBQ0k7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUFZO0VBQ1o7O0FBQ0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBSVI7RUE5Qko7SUErQlE7O0VBQ0E7SUFDSTs7RUFFSjtJQUNJOzs7QUFHUjtFQUNJO0lBQ0k7OztBQUdSO0VBNUNKO0lBNkNROztFQUNBO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7SUFDQTs7O0FBR1I7RUFJSTtJQUNJOztFQUVKO0lYdFNKO0lBQ0E7SUFBUztJQUNUO0lBQWE7SVdzU0w7SUFDQTtJQUNBOzs7O0FBS1o7RUFDSTtFQUNBOztBQUNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0k7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTs7QUFHUjtFQUNJO0VBQ0E7RUFBZTtFQUNmO0VBQWE7RUFDYjs7QUFDQTtFWHZWSjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FXd1ZJO0VBQ0k7O0FBRUo7RUFDSTs7QUFDQTtFQUNJOztBQUVKO0VBQ0k7O0FBRUo7RUFDSTtFQUNBOztBQUNBO0VBQ0k7O0FBRUo7RUFDSTtFQUNBO0VBQVM7RUFDVDtFQUFhO0VBQ2I7RUFDQTs7QUFLaEI7RUFDSTs7QUFFSjtFQUNJOztBQUVKO0VBQ0k7O0FBQ0E7RUFDSTs7QUFDQTtFQUNJO0VBQ0E7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7O0FBQ0E7RUFDSTtFQUNBOztBQUtoQjtFQUNJO0lBQ0k7OztBQUlSO0VBbkhKO0lBb0hROztFQUNBO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7O0VBR0E7SUFDSTs7RUFHUjtJQUNJOztFQUNBO0lBQ0k7O0VBQ0E7SUFDSTs7RUFDQTtJQUNJOztFQUtoQjtJQUNJOztFQUVKO0lBQ0k7SUFDQTtJQUNBOztFQUNBO0lBQ0k7O0VBU1I7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBOzs7O0FBS1o7RUFDSTs7QUFDQTtFQUNJO0VBQ0E7RUFDQTs7QUFDQTtFQUNJOztBQUVKO0VBQ0k7RUFDQTs7QUFFSjtFQUNJOztBQUdSO0VBakJKO0lBa0JROztFQUNBO0lBQ0k7SUFDQTs7RUFDQTtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7OztBQUtoQjtFQUNJOztBQUNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7O0FBQ0E7RUFDSTtFQUNBO0VBQWM7RUFDZDtFQUNBOztBQUNBO0VYOWZSO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QVc2Zkk7RUFDSTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0k7O0FBSVo7RUFDSTtJQUNJO0lBQ0E7OztBQUdSO0VBN0NKO0lBOENROztFQUNBO0lBQ0k7SUFDQTs7OztBQUlaO0VBQ0k7O0FBQ0E7RUFDSTs7QUFDQTtFQUNJOztBQUdSO0VBQ0k7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTs7QUFHQTtFQUNJOztBQUdSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VYdGtCUjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FXc2tCQTtFQXpDSjtJQTBDUTs7RUFDQTtJQUNJOztFQUVKO0lBQ0k7SUFDQTs7RUFJSTtJQUNJOztFQUdSO0lBQ0k7SUFDQTs7RUFHUjtJQUNJO0lBQ0E7SUFDQTs7RUFDQTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7OztBQU1oQjtFQUNJOztBQUNBO0VBQ0k7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7O0FBQ0E7RUFDSTs7QUFFSjtFQUNJO0VBQ0E7O0FBR0E7RUFDSTs7QUFJWjtFQXRCSjtJQXVCUTs7RUFDQTtJQUNJOzs7O0FBSVo7RUFDSTs7QUFDQTtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUVKO0VBQ0k7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNJOztBQUdSO0VBQ0k7SUFDSTtJQUNBOztFQUVKO0lBQ0k7Ozs7QUFLWjs7QUFBQTtBQUdBO0VBQ0k7RUFDQTtFQUNBOztBQUlBO0VBQ0k7O0FBRUo7RUFDSTs7QUFDQTtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VYMXNCUjtFQUNBO0VBQVM7RUFDVDtFQUFhO0VXMHNCRDtFQUNBO0VBQ0E7O0FBR1I7RVh0c0JKO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QVd5c0JRO0VBQ0k7O0FBRUo7RUFDSTtFQUNBOztBQUNBO0VBQ0k7O0FBSVo7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNJOztBQVFSO0VBQ0k7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNJOztBQU1SO0VBQ0k7RUFDQTs7QUFLSjtFQUNJO0VBQ0E7RUFDQTs7QUFFQTtFQUNJOztBQUdSO0VBQ0k7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVKO0VBQ0k7O0FBRUo7RUFDSTs7QUFDQTtFQUNJO0VBQ0E7O0FBSVo7RUFDSTtFQUNBO0VBQVM7RUFDVDtFQUFhO0VBQ2I7O0FBQ0E7RUFDSTtFQUNBO0VBQVM7RUFDVDtFQUFhO0VBQ2I7RUFDQTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUtSO0VBM0lKO0lBNElROztFQUNBO0lBQ0k7OztBQUdSO0VBakpKO0lBa0pROztFQUVJO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOzs7QUFJWjtFQUVRO0lBQ0k7SUFDQTs7RUFFSjtJQUNJOztFQUdSO0lBQ0k7OztBQUdSO0VBQ0k7SUFDSTs7RUFFSjtJQUNJOzs7O0FBT1o7O0FBQUE7QUFHQTtFQUNJO0VBRUE7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFBUztFQUNUO0VBQWE7O0FBQ2I7RUFDSTtFQUNBO0VBQVM7RUFDVDtFQUFhO0VBQ2I7RUFDQTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdSO0VBQ0k7RUFFQTtFQUNBO0VBQ0E7O0FBSUo7RUFDSTtFQUNBO0VBQ0E7O0FBR0E7RUFDSTtFQUNBOztBQUdSO0VBQ0k7O0FBQ0E7RUFDSTtFQUNBOztBQUNBO0VYajZCUjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FXaTZCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDSTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBT0E7RUFDSTs7QUFFSjtFWDk3QlI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBVys3QkE7RUFDSTtFQUNBOztBQUVKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTs7QUFFSjtFQUNJOztBQUdKO0VBQ0k7O0FBRUk7RUFDSTs7QUFFSjtFQUNJOztBQUVKO0VBQ0k7O0FBRUo7RUFDSTtFQUNBOztBQUtaO0VBQ0k7SUFDSTtJQUNBOzs7QUFHUjtFQUNJO0lBQ0k7SUFDQTs7O0FBSVI7RUFySko7SUFzSlE7SUFDQTs7RUFDQTtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTtJQUNBOztFQUVKO0lBQ0k7OztBQUdSO0VBVUk7SUFDSTtJQUNBO0lBQ0E7O0VBQ0E7SUFDSTs7RUFHUjtJQUNJO0lBQ0EsTWJyakNHO0lhcWpDa0I7SUFDckI7O0VBRUo7SUFDSTs7OztBQVFaOztBQUFBO0FBSUE7RUFDSTtFQUNBOztBQUNBO0VBQ0k7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDSTtFQUNBOztBQUdSO0VBQ0k7O0FBRUo7RUFDSTtFWDdsQ0o7RUFDQTtFQUFTO0VBQ1Q7RUFBYTs7QVc2bENUO0VBQ0k7RUFDQTtFQUFTO0VBQ1Q7RUFBYTtFQUNiO0VBQ0E7RUFDQTtFQUNBOztBQUVKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFJUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFBYTtFQUNiO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0k7RUFBYTtFQUNiO0VBQ0E7RUFDQTs7QUFJUjtFQTdFSjtJQThFUTs7RUFDQTtJQUNJOztFQUVKO0lBQ0k7O0VBQ0E7SUFDSTs7O0FBSVo7RUF6Rko7SUEwRlE7O0VBQ0E7SUFDSTs7O0FBR1I7RUEvRko7SUFnR1E7O0VBQ0E7SUFDSTs7RUFFSjtJQUNJOztFQUNBO0lBQ0k7Ozs7QUFRaEI7O0FBQUE7QUFHQTtFQUNJOztBQUNBO0VBQ0k7O0FBRUo7RUFDSTs7QUFFSjtFQUNJO0VBQ0E7O0FBSUE7RUFDSTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDSTtFQUNBO0VBQVM7RUFDVDtFQUFZO0VBQ1o7RUFDQTtFQUNBOztBQUdSO0VBQ0k7RUFDQTtFQUNBOztBQUNBO0VBQ0k7O0FBR1I7RUFDSTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFSjtFWDV1Q0o7RUFDQTtFQUFTO0VBQ1Q7RUFBYTtFVzR1Q0w7O0FBRUo7RVhodkNKO0VBQ0E7RUFBUztFQUNUO0VBQWE7RVdndkNMO0VBQ0E7RUFDQTs7QUFDQztFQUNHO0VBQ0E7RUFBUztFQUNUO0VBQWE7RUFDYjtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVKO0VYcHZDUjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FXbXZDSTtFQUNJOztBQUlSO0VBQ0k7RUFDQTtFQUNBOztBQUVKO0VBQ0k7RUFDQTtFQUNBOztBQUNBO0VBQ0k7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFJUjtFQUNJO0lBQ0k7O0VBS0E7SUFDSTs7RUFFSjtJQUNJOztFQUlSO0lBQ0k7O0VBRUo7SUFDSTs7RUFDQTtJQUNJOzs7QUFJWjtFQUNJO0lBQ0k7OztBQUlSO0VBQ0k7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBSUE7SUFDSTtJQUNBOztFQUVKO0lBRUk7OztBQUtaO0VBQ0k7SUFDSTs7RUFFSjtJQUNJO0lBQ0E7O0VBQ0E7SUFDSTs7RUFDQTtJQUNJOztFQUdSO0lBQ0k7SUFBd0I7SUFDeEI7SUFDQTs7RUFJUjtJQUNJO0lBQ0E7O0VBRUo7SUFDSTs7RUFDQTtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7OztBQVNoQjs7QUFBQTtBQUlJO0VBQ0k7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7O0FBRUo7RUFJSTtFQUNBO0VBQVM7RUFDVDtFQUFhOztBQUNiO0VYNzVDSjtFQUNBO0VBQVM7RUFDVDtFQUFhO0VXNjVDTDtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVKO0VYMTVDSjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FXMDVDQTtFQUNJO0VBQ0E7RUFDQTs7QUFFSjtFQUVJO0VBQ0E7RUFDQTtFQUNBOztBQUVKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDSTs7QUFHUjtFQUNJOztBQUVKO0VBQ0k7O0FBQ0E7RUFDSTs7QUFDQTtFQUNJO0VBQWE7O0FBSXpCO0VBQ0k7RUFDQTs7QUFFSjtFQUNJOztBQUVKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RVgvOENKO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QVc4OENBO0VBQ0k7O0FBR0o7RUFDSTtJQUNJOztFQUdBO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7O0VBRUo7SUFDSTs7OztBQVVoQjs7QUFBQTtBQUdBO0VBQ0k7RUFDQTtFQUNBOztBQUNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVKO0VBQ0k7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7O0FBR0E7RUFDSTs7QUFFSjtFQUNJO0VBQ0E7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVKO0VBQ0k7RUFDQTs7QUFHUjtFQUNJOztBQUVBO0VBQ0k7RUFDQTtFQUNBOztBQUVKO0VBQ0k7O0FBRUo7RUFDSTtFQUNBO0VBQWM7O0FBRWxCO0VBQ0k7O0FBS1I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDSTtFQUNBO0VBQVE7RUFDUjtFQUNBOztBQUVKO0VBQ0k7O0FBRUo7RUFLSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0k7RUFDQTtFQUNBOztBQUVKO0VBQ0k7RUFDQTtFQUNBOztBQU9SO0VBQ0k7O0FBRUo7RUFDSTtFQUNBOztBQUNBO0VBQ0k7O0FBR1I7RUFDSTtFQUNBOztBQUtSO0VBbklKO0lBb0lROztFQUNBO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7OztBQUlSO0VBQ0k7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7OztBQUlSO0VBL0pKO0lBZ0tROztFQUNBO0lBQ0k7O0VBRUo7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7RUFFSjtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBOztFQUVKO0lBQ0k7O0VBR0E7SUFDSTs7RUFHUjtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7O0VBQ0E7SUFDRTs7RUFHTjtJQUNJO0lBQWM7SUFDZDtJQUNBO0lBQ0E7SUFDQTtJQUNBOztFQUVKO0lBQ0k7SUFDQTtJQUNBOztFQUNBO0lBQ0k7O0VBRUo7SUFDSTtJQUNBO0lBQVM7SUFDVDtJQUFhO0lBQ2I7SUFDQTtJQUNBOzs7QUFJWjtFQUNJO0lBQ0k7O0VBRUo7SUFDSTs7RUFNSjtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBOzs7O0FBUVo7O0FBQUE7QUFHQTtFQUNJOztBQUNBO0VBQ0k7RUFDQTtFQUNBOztBQUNBO0VBQ0k7RUFDQTtFQUFTO0VBQ1Q7RUFBWTtFQUNaO0VBQ0E7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7O0FBQ0E7RUFDSTs7QUFHUjtFQUNJO0lBQ0k7SUFDQTs7RUFDQTtJQUNJOzs7QUFLWjtFQUNJOztBQUVKO0VBQ0k7RUFDQTtFQUNBOztBQUVKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNJOztBQUdSO0VBQ0k7RUFDQTtFQUNBOztBQUNBO0VBQ0k7O0FBRUo7RUFDSTtFQUNBOztBQUdSO0VBQ0k7RUFDQTs7QUFFSjtFQUNJOztBQUVKO0VBQ0k7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTs7QUFFSjtFQUNJOztBQUdSO0VBQ0k7O0FBRUo7RUFFUTtJQUNJOztFQUVKO0lBQ0k7SUFDQTtJQUNBOztFQUNBO0lBQ0k7O0VBR1I7SUFDSTs7RUFFSjtJQUNJOzs7QUFJWjtFQUdRO0lBQ0k7SUFDQTs7RUFDQTtJQUNJOzs7QUFLaEI7RUFDSTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7O0VBQ0E7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTtJQUNBO0lBQ0E7O0VBQ0E7SUFDSTtJQUNBO0lBQWE7SUFDYjtJQUFZO0lBQ1o7SUFDQTtJQUNBOztFQUVKO0lBQ0k7O0VBQ0E7SUFDSTs7RUFJWjtJQUNJO0lBQ0E7SUFDQTs7RUFFSjtJQUNJO0lBQ0E7O0VBR0o7SUFDSTs7RUFFSjtJQUNJO0lBQ0E7O0VBR0o7SUFDSTtJQUNBO0lBQ0E7O0VBQ0E7SUFDSTtJQUNBOztFQUNBO0lBQ0k7O0VBS2hCO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7RUFDQTtJQUNJO0lBQ0E7SUFDQTs7RUFDQTtJQUNJOzs7O0FBV3BCOztBQUFBO0FBSUk7RUFDSTtFQUNBO0VBQ0E7O0FBR0E7RUFDSTtFQUNBOztBQUdSO0VBQ0k7O0FBRUo7RUFDSTs7QUFDQTtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUVKO0VBQ0k7RUFDQTtFQUNBOztBQUNBO0VBQ0k7RUFBYztFQUNkO0VBQ0E7RUFDQTs7QUFHUjtFQUNJO0VBQ0E7RUFDQTs7QUFHUjtFQUNJOztBQUNBO0VBQ0k7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7O0FBQ0E7RUFDSTs7QUFFSjtFQUNJO0VBQ0E7O0FBR0E7RUFDSTs7QUFLaEI7RUFDSTtFQUNBO0VBQ0Q7O0FBR0g7RUFDSTtJQUNJOztFQUdBO0lBQ0k7OztBQUlaO0VBQ0k7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7SUFDQTs7O0FBR1I7RUFDSTtJQUNJOztFQUdBO0lBQ0k7SUFDQTtJQUNBOztFQUdBO0lBQ0k7O0VBSVo7SUFDSTs7RUFDQTtJQUNJOztFQUdSO0lBQ0k7SUFDQTs7OztBQVFaOztBQUFBO0FBR0E7RUFDSTs7QUFDQTtFQUNJOztBQUVKO0VBQ0k7O0FBRUo7RUFDSTs7QUFFSjtFQUNJOztBQUVKO0VBQ0k7O0FBRUo7RUFDSTs7QUFFSjtFQUNJOztBQUNBO0VBQ0k7O0FBR1I7RUFDSTtFQUNBOztBQUNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNJO0lBQ0k7SUFDQTs7O0FBS2hCO0VBQ1E7RUFDQTtFQUNBOztBQUNKO0VBQ0k7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0k7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7O0FBR1I7RUFDSTtFQUNBOztBQUNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFBUztFQUNUOztBQUtaO0VBR1k7SUFDSTtJQUNBOzs7QUFLaEI7RUFDSTtJQUNJOztFQUdBO0lBQ0k7O0VBR0E7SUFDSTtJQUNBOzs7QUFLaEI7RUFDSTtJQUNJOztFQUNBO0lBQ0k7O0VBRUo7SUFDSTtJQUNBOztFQUVKO0lBQ0k7O0VBQ0E7SUFDSTtJQUNBO0lBQ0E7OztBQUtoQjtFQUNJO0lBQ0k7O0VBQ0E7SUFDSTs7RUFHUjtJQUNJOztFQUNBO0lBQ0k7O0VBR1I7SUFDSTtJQUNBOztFQUNBO0lBQ0k7SUFDQTs7RUFJSjtJQUNJOztFQUNBO0lBQ0k7O0VBSUo7SUFDSTs7OztBQVdwQjs7QUFBQTtBQUdBO0VBQ0k7O0FBQ0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFFSjtFQUNJOztBQUVKO0VBQ0k7O0FBRUo7RUFDSTtFQUNBOztBQUVKO0VBQ0k7O0FBQ0E7RUFDSTs7QUFHUjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUVKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7O0FBQ0E7RUFDSTtFQUNBOztBQUNBO0VBQ0k7O0FBRUo7RUFDSTs7QUFJWjtFQUNJO0VBQ0E7O0FBR0o7RUFDSTtJQUNJOztFQUVKO0lBQ0k7OztBQUdSO0VBQ0k7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTtJQUNBOzs7QUFHUjtFQUNJO0lBQ0k7SUFDQTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7SUFDQTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7SUFDQTs7O0FBR1I7RUFDSTtJQUNJOztFQUVKO0lBQ0k7SUFDQTs7RUFLSjtJQUNJOzs7QUFHUjtFQUVJO0lBQ0k7O0VBRUo7SUFDSTtJQUNBOztFQUVKO0lBQ0k7SUFDQTs7RUFFSjtJQUNJOzs7O0FBUVo7O0FBQUE7QUFHQTtFQUNJO0VBQ0E7RUFDQTs7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFJQTtFQUNJOztBQUNBO0VBQ0k7RUFDQTtFQUFhO0VBQ2I7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBS1o7RUFDSTtJQUNJOzs7QUFTUjs7QUFBQTtBQUlJO0VBQ0k7RUFDQTtFQUNBOztBQUVKO0VBQ0k7RUFDQTs7QUFDQTtFQUNJOztBQUVKO0VYNTdFSjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FXMjdFQTtFQWhCSjtJQWlCUTs7RUFDQTtJQUNJO0lBQ0E7OztBQU1SO0VBMUJKO0lBMkJRO0lBQ0E7Ozs7QUFRUjs7QUFBQTtBQUdBO0VBQ0k7RUFDQTtFQUNBOztBQUNBO0VBQ0k7O0FBQ0E7RUFDSTs7QUFHUjtFQUNJOztBQUNBO0VBQ0k7RUFDQTs7QUFFSjtFQUNJOztBQUdKO0VBQ0k7RUFDQTtFQUNBOztBQUNBO0VBQ0k7O0FBRUo7RUFDSTtFQUNBOztBQUVKO0VBQ0k7O0FBQ0E7RUFDSTs7QUFLaEI7RUFDSTs7QUFDQTtFQUNJOztBQUNBO0VBQ0k7O0FBR1I7RUFDSTs7QUFJUjtFQXBESjtJQXFEUTs7RUFFSTtJQUNJOzs7QUFLWjtFQTdESjtJQThEUTtJQUNBOztFQUVJO0lBQ0k7O0VBR1I7SUFDSTs7O0FBR1I7RUF6RUo7SUEwRVE7SUFDQTtJQUNBO0lBQ0E7O0VBQ0E7SUFDSTs7RUFHQTtJQUNJOztFQUVKO0lBQ0k7Ozs7QUFhaEI7O0FBQUEiLCJmaWxlIjoic3R5bGVzLm1pbi5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0IHVybCgnaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3MyP2ZhbWlseT1Nb250c2VycmF0Oml0YWwsd2dodEAwLDQwMDswLDUwMDswLDcwMDsxLDQwMDsxLDcwMCZkaXNwbGF5PXN3YXAnKTsiLCJAY2hhcnNldCBcInV0Zi04XCI7XG4qIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBvdXRsaW5lOiBub25lO1xufVxuaHRtbCwgYm9keSwgZGl2LCBzcGFuLCBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2LCBwLCBlbSwgaW1nLCBzdHJvbmcsIHN1Yiwgc3VwLCBiLCB1LCBpLCAgZGwsIGR0LCBkZCwgb2wsIHVsLCBsaSwgZmllbGRzZXQsIGZvcm0sIGxhYmVsLCB0YWJsZSwgdGJvZHksIHRmb290LCB0aGVhZCwgdHIsIHRoLCB0ZCwgYXJ0aWNsZSwgYXNpZGUsIGNhbnZhcywgZGV0YWlscywgZmlnY2FwdGlvbiwgZmlndXJlLCBmb290ZXIsIGhlYWRlciwgaGdyb3VwLCBtZW51LCBuYXYsIHNlY3Rpb24sIHN1bW1hcnksIHRpbWUsIG1hcmssIGF1ZGlvLCB2aWRlbyB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiAwO1xuICAgIG91dGxpbmU6IDA7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgZm9udC1zaXplOiAxMDAlO1xufVxuaGVhZGVyLCBuYXYsIHNlY3Rpb24sIGFydGljbGUsIGFzaWRlLCBmb290ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cblxuaHRtbCB7ICBcbiAgICBoZWlnaHQ6MTAwJTsgXG59XG5ib2R5IHsgIFxuICAgIHBvc2l0aW9uOnJlbGF0aXZlOyBcbiAgICBoZWlnaHQ6MTAwJTsgXG4gICAgZm9udC1mYW1pbHk6ICRmb250OyBcbiAgICBjb2xvcjogJGNvbG9yLWJvZHk7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgYmFja2dyb3VuZDogJGJnLWJvZHk7XG59XG5ib2R5ICosXG5ib2R5ICo6YmVmb3JlLFxuYm9keSAqOmFmdGVyIHtcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IFxufVxuXG5pbWcgeyBcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG59XG5cbnVsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuYSB7IFxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgXG4gICAgbWFyZ2luOiAwOyBwYWRkaW5nOiAwO1xuICAgIGNvbG9yOiAjZmZmO1xufVxuIiwiJGZvbnQ6ICdNb250c2VycmF0Jywgc2Fucy1zZXJpZjtcclxuXHJcbiRiZy1ib2R5OiAjMDAwO1xyXG5cclxuJGNvbG9yLWJvZHk6ICNGRkY7XHJcblxyXG5cclxuXHJcbiR3aWR0aC1jb250YWluZXI6IDE2NDBweDtcclxuJHBkLWNvbnRhaW5lcjogMjBweDtcclxuJHBkLWNvbnRhaW5lci1zbXg6IDE1cHg7XHJcblxyXG4kbWQtZGVza3RvcC1sZzogMTY5OS45OHB4O1xyXG4kbWQtZGVza3RvcC1tZDogMTMzOS45OHB4O1xyXG4kbWQtZGVza3RvcDogMTE5OS45OHB4O1xyXG4kbWQtdGFibGV0OiAxMDIzLjk4cHg7XHJcbiRtZC10YWJsZXQtc206IDc2Ny45OHB4O1xyXG4kbWQtbW9iaWxlLWxnOiA2MDkuOThweDtcclxuJG1kLW1vYmlsZTogNDc4Ljk4cHg7XHJcbiRtZC1tb2JpbGUtc206IDM5OS45OHB4O1xyXG4kbWQtbW9iaWxlLXNteDogMzYwcHg7XHJcblxyXG4kaGVhZGVyLWg6IDE0MHB4O1xyXG4kaGVhZGVyLWgtZDogMTEwcHg7XHJcbiRoZWFkZXItaC10OiAxMDBweDtcclxuJGhlYWRlci1oLW06IDkwcHg7IiwiXG4uY2xlYXIgeyBcbiAgICBjbGVhcjogYm90aDsgXG4gICAgaGVpZ2h0OiAwOyBcbiAgICBvdmVyZmxvdzogaGlkZGVuOyBcbiAgICBmb250LXNpemU6IDA7XG59XG4uY2xlYXJmaXg6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY2xlYXI6IGJvdGg7XG59XG4uY29udGFpbmVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6ICR3aWR0aC1jb250YWluZXI7IFxuICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtZC1kZXNrdG9wLWxnKSB7XG4gICAgICAgIG1heC13aWR0aDogMTI3MHB4O1xuICAgIH1cdFxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZC1kZXNrdG9wLW1kKzAuMDJweCkge1xuICAgICAgIFxuICAgICAgICAmLS1zbSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDk2MHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtZC1kZXNrdG9wLW1kKSB7XG4gICAgICAgIG1heC13aWR0aDogMTE0MHB4O1xuICAgICAgICAmLS1zbSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDkwMHB4O1xuICAgICAgICB9XG4gICAgfVx0XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1kLWRlc2t0b3ApIHtcbiAgICAgICAgIG1heC13aWR0aDogOTYwcHg7XG4gICAgfVx0XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1kLXRhYmxldCkge1xuICAgICAgICBtYXgtd2lkdGg6IDcxMHB4O1xuICAgIH1cdFxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtZC10YWJsZXQtc20pIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAwICRwZC1jb250YWluZXI7XG4gICAgfVx0XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1kLW1vYmlsZS1sZykge1xuICAgICAgICBcbiAgICB9XG59XG5cblxuXG4ud3JhcHBlciB7XG4gICAgbWluLWhlaWdodDogMTAwJTsgd2lkdGg6IDEwMCU7ICBcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IFxuICAgIHotaW5kZXg6IDA7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG4uY29udGVudF9fd3JhcHBlciB7XG4gICAgZmxleDogMSAwIGF1dG87XG59XG5cbi5wZF9faGVhZGVyIHtcbiAgICBwYWRkaW5nLXRvcDogJGhlYWRlci1oO1xufVxuXG5cblxuLmhpZGUtZGVza3RvcC1sZyB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1kZXNrdG9wLWxnKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG59XG4uaGlkZS1kZXNrdG9wLW1kIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLWRlc2t0b3AtbWQpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbn1cbi5oaWRlLWRlc2t0b3Age1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtZGVza3RvcCkge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuLmhpZGUtdGFibGV0IHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLXRhYmxldCkge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuLmhpZGUtdGFibGV0LXNtIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLXRhYmxldC1zbSkge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuLmhpZGUtbW9iaWxlLWxnIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLW1vYmlsZS1sZykge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuLnNob3ctZGVza3RvcCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtZC1kZXNrdG9wKyAwLjAycHgpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbn1cbi5zaG93LXRhYmxldCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtZC10YWJsZXQrIDAuMDJweCkge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuLnNob3ctdGFibGV0LXNtIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1kLXRhYmxldC1zbSsgMC4wMnB4KSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG59XG4uc2hvdy1tb2JpbGUtbGcge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWQtbW9iaWxlLWxnKyAwLjAycHgpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLm5vc2Nyb2xsIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ubm93cmFwIHtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4jakdyb3dsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG4uZ3JlY2FwdGNoYS1iYWRnZSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5tYXAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBAaW5jbHVkZSBhYnMtYWxsO1xuICAgICAgICB6LWluZGV4OiA1O1xuICAgICAgICBtaXgtYmxlbmQtbW9kZTogZGlmZmVyZW5jZTtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cbiAgICBbY2xhc3MqPWdyb3VuZC1wYW5lXSB7XG4gICAgICAgIGZpbHRlcjogZ3JheXNjYWxlKDEpO1xuICAgICAgICBcbiAgICB9XG4gICAgW2NsYXNzKj1jb3B5cmlnaHRzLXBhbmVdIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAmLS1hbGwge1xuICAgICAgIGhlaWdodDogMzR2dztcbiAgICAgICBoZWlnaHQ6IDY1MHB4O1xuICAgIH1cbiAgICBcbiAgICAmX19iYWxsb24ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgd2lkdGg6IDM1MHB4OyBtaW4taGVpZ2h0OiAyMjZweDtcbiAgICAgICAgcGFkZGluZzogMzJweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAyNXB4O1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgPiAqICsgKiB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICB9XG4gICAgICAgICYtY2xvc2Uge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMTBweDsgcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICB3aWR0aDogMjBweDsgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIG91dGxpbmU6IDA7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtdGFibGV0LXNtKSB7XG4gICAgICAgIGhlaWdodDogNTAwcHg7XG4gICAgICAgICZfX2JhbGxvbiB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAgICAgJi1jbG9zZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLW1vYmlsZS1zbXgpIHtcbiAgICAgICAgJl9fYmFsbG9uIHtcbiAgICAgICAgICAgIHdpZHRoOiAzMjBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG5AaW1wb3J0IFwiY29tbW9uL2NvbnRlbnRcIjtcbkBpbXBvcnQgXCJjb21tb24vc2VjdGlvblwiO1xuQGltcG9ydCBcImNvbW1vbi9lbGVtZW50c1wiOyIsIkB1c2UgXCJzYXNzOm1hdGhcIjtcclxuXHJcbkBtaXhpbiBpbnB1dC1wbGFjZWhvbGRlcigkY2xhc3MsICRjb2xvciwgJG9wYWNpdHk6MC42KSB7XHJcbiAgICAjeyRjbGFzc306Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge2NvbG9yOiAkY29sb3I7b3BhY2l0eTogJG9wYWNpdHk7fVxyXG4gICAgI3skY2xhc3N9Ojotby1pbnB1dC1wbGFjZWhvbGRlcntjb2xvcjogJGNvbG9yO29wYWNpdHk6ICRvcGFjaXR5O31cclxuICAgICN7JGNsYXNzfTo6LW1vei1pbnB1dC1wbGFjZWhvbGRlcnsgY29sb3I6ICRjb2xvcjtvcGFjaXR5OiAkb3BhY2l0eTt9XHJcbiAgICAjeyRjbGFzc306LW1vei1pbnB1dC1wbGFjZWhvbGRlcnsgIGNvbG9yOiAkY29sb3I7b3BhY2l0eTogJG9wYWNpdHk7fVxyXG4gICAgI3skY2xhc3N9OjotbXMtaW5wdXQtcGxhY2Vob2xkZXJ7ICBjb2xvcjogJGNvbG9yO29wYWNpdHk6ICRvcGFjaXR5O31cclxuICAgICN7JGNsYXNzfSBpbnB1dC1wbGFjZWhvbGRlciB7ICBjb2xvcjogJGNvbG9yO29wYWNpdHk6ICRvcGFjaXR5O31cclxuICAgICN7JGNsYXNzfTo6cGxhY2Vob2xkZXIge2NvbG9yOiAkY29sb3I7b3BhY2l0eTogJG9wYWNpdHk7fVxyXG4gICAgI3skY2xhc3N9OnBsYWNlaG9sZGVyLXNob3duIHtjb2xvcjogJGNvbG9yO29wYWNpdHk6ICRvcGFjaXR5O31cclxufVxyXG5cclxuXHJcbkBtaXhpbiBhYnMtYWxsIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGxlZnQ6IDA7IHRvcDogMDtcclxuICAgIHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7XHJcbn1cclxuQG1peGluIGFicy1jZW50ZXIge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgbGVmdDogNTAlOyB0b3A6IDUwJTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpXHJcbn1cclxuXHJcbkBtaXhpbiBwaG90by1jb3ZlciB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxufVxyXG5cclxuQGZ1bmN0aW9uIGxoKCRsaCwgJGZzKSB7XHJcbiAgICBAcmV0dXJuICN7bWF0aC5kaXYoJGxoLCAkZnMpfTtcclxufSIsIlxyXG4uY29udGVudF9fdGV4dCB7XHJcbiAgICBsaW5lLWhlaWdodDogMS41O1xyXG4gICAgZm9udC1zaXplOiAxNXB4O1xyXG4gICAgPiAqIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG4gICAgfVxyXG4gICAgYSB7XHJcbiAgICAgICAgXHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBoMSwgaDIsIGgzLCBoNCwgaDUge1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3ItYm9keTtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS4xO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBoMSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyNXB4O1xyXG4gICAgICAgIG1hcmdpbjogNDVweCAwO1xyXG4gICAgfVxyXG4gICAgaDIge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICBtYXJnaW46IDQ1cHggMDtcclxuICAgIH1cclxuICAgIGgzIHtcclxuICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgbWFyZ2luOiAzMHB4IDA7XHJcbiAgICB9XHJcbiAgICBoNCB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgIG1hcmdpbjogMzBweCAwO1xyXG4gICAgfVxyXG4gICAgaDUge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgICBtYXJnaW46IDMwcHggMDtcclxuICAgIH1cclxuICAgIHVsLFxyXG4gICAgb2wge1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDI2cHg7XHJcbiAgICB9XHJcbiAgICBvbCB7XHJcbiAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lOyBcclxuICAgICAgICBjb3VudGVyLXJlc2V0OiBudW07XHJcbiAgICB9XHJcbiAgICBsaSB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgfVxyXG4gICAgdWwgbGk6YmVmb3JlIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDBweDtcclxuICAgICAgcmlnaHQ6IDEwMCU7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogMTFweDsgXHJcbiAgICAgIGNvbG9yOiAkY29sb3ItYm9keTtcclxuICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICBjb250ZW50OiAn4oCiJztcclxuICAgIH1cclxuICAgIG9sIGxpOmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6IGNvdW50ZXIobnVtKSAnLic7IFxyXG4gICAgICBjb3VudGVyLWluY3JlbWVudDogbnVtO1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHRcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDBweDtcclxuICAgICAgcmlnaHQ6IDEwMCU7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogOHB4OyBcclxuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICB9XHJcbiAgICBpbWcge1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1kZXNrdG9wLWxnKSB7XHJcbiAgICAgICAgLy8gZm9udC1zaXplOiAxNHB4O1xyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQtc20pIHtcclxuICAgICAgICAvLyBsaW5lLWhlaWdodDogMjtcclxuICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgLy8gPiAqIHtcclxuICAgICAgICAvLyAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICAgICAgICAvLyB9XHJcbiAgICAgICAgLy8gaDEge1xyXG4gICAgICAgIC8vICAgICBmb250LXNpemU6IDI4cHg7XHJcbiAgICAgICAgLy8gICAgIG1hcmdpbjogNDBweCAwO1xyXG4gICAgICAgIC8vIH1cclxuICAgICAgICAvLyBoMiB7XHJcbiAgICAgICAgLy8gICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgICAgICAvLyAgICAgbWFyZ2luOiA0MHB4IDA7XHJcbiAgICAgICAgLy8gfVxyXG4gICAgICAgIC8vIGgzIHtcclxuICAgICAgICAvLyAgICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgICAgIC8vICAgICBtYXJnaW46IDI1cHggMDtcclxuICAgICAgICAvLyB9XHJcbiAgICAgICAgLy8gaDQge1xyXG4gICAgICAgIC8vICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgLy8gICAgIG1hcmdpbjogMjVweCAwO1xyXG4gICAgICAgIC8vIH1cclxuICAgICAgICAvLyBoNSB7XHJcbiAgICAgICAgLy8gICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICAvLyAgICAgbWFyZ2luOiAyNXB4IDA7XHJcbiAgICAgICAgLy8gfVxyXG4gICAgfVxyXG59XHJcbiIsIlxyXG4uc2VjdGlvbiB7XHJcbiAgICAmX19oZWFkIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gICAgICAgICYubWQtLW1kIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzJweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi5tYi0tc20ge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLm1iLS1zbXgge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLm1iMCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuaGNvbHMge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgICAgIGdhcDogNDBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmX190aXRsZSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDY3cHg7XHJcbiAgICAgICAgcGFkZGluZzogNHB4IDAgNHB4IDIwcHg7XHJcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZDtcclxuICAgICAgICBmb250LXNpemU6IDI1cHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgJi5mcy0tbGcge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDM2cHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEycHggMCAxMnB4IDIzcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJl9faW50cm8ge1xyXG4gICAgICAgIFxyXG4gICAgICAgIC50ZXh0LS1jZW50ZXIgJiB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJl9fYnV0dG9ucyB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9XHJcbiAgICAmX19maXJzdCB7XHJcbiAgICAgICAgcGFkZGluZzogMjBweCAwIDYwcHggIWltcG9ydGFudDtcclxuICAgIH1cclxuICAgICZfX21nIHtcclxuICAgICAgICBtYXJnaW46IDE2MHB4IDA7XHJcbiAgICAgICAgJi0tbWQge1xyXG4gICAgICAgICAgXHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtLXNtIHtcclxuICAgICAgICAgICBtYXJnaW46IDgwcHggMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmX19tZ3Qge1xyXG4gICAgICAgICYtLXNtIHtcclxuICAgICAgICAgIFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICZfX3BkIHtcclxuICAgICAgICBwYWRkaW5nOiAxMzBweCAwO1xyXG4gICAgfVxyXG4gICAgJl9fcGR0IHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogNzBweDtcclxuICAgIH1cclxuICAgICZfX3RhYiB7XHJcbiAgICAgICAgZGlzcGxheTpub25lO1xyXG4gICAgICAgICYuc2hvdyB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLWRlc2t0b3AtbGcpIHtcclxuICAgICAgICAmX19pbm5lciB7XHJcbiAgICAgICAgICAgXHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2hlYWQge1xyXG4gICAgICAgICBcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fdGl0bGUge1xyXG4gICAgICAgICAgZm9udC1zaXplOiAyM3B4O1xyXG4gICAgICAgICAgJi5mcy0tbGcge1xyXG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMzJweDtcclxuICAgICAgICAgICAgICBwYWRkaW5nOiA4cHggMCA4cHggMjNweDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICZfX21nIHtcclxuICAgICAgICAgICBcclxuICAgICAgICAgICAgJi0tbWQge1xyXG4gICAgICAgICAgICBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLS1zbSB7XHJcbiAgICAgICAgICAgICBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmX19tZ3Qge1xyXG4gICAgICAgICAgICAmLS1zbSB7XHJcbiAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2J1dHRvbnMge1xyXG4gICAgICAgICAgIFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtZGVza3RvcC1tZCkge1xyXG4gICAgICAgJl9fdGl0bGUgeyAgICAgICAgXHJcbiAgICAgICAgICAgICYuZnMtLWxnIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjZweDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDRweCAwIDRweCAyMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIFxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1kZXNrdG9wKSB7XHJcbiAgICAgICAgXHJcbiAgICAgICAgJl9fdGl0bGUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICYuZnMtLWxnIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMzZweDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEycHggMCAxMnB4IDIzcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLXRhYmxldCkge1xyXG4gICAgICAgXHJcbiAgICAgICAgJl9faGVhZCB7XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAmLmhjb2xzIHtcclxuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgICAgICBnYXA6IDIwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fdGl0bGUge1xyXG4gICAgICAgICAgICAgICAgXHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2J1dHRvbnMge1xyXG4gICAgICAgICAgIFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtdGFibGV0LXNtKSB7XHJcbiAgICAgICBcclxuICAgICAgICAmX19oZWFkIHtcclxuICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX190aXRsZSB7XHJcbiAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgICBtaW4taGVpZ2h0OiAxcHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgYnIge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmX19idXR0b25zIHtcclxuICAgICAgICAgICAgXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1tb2JpbGUtbGcpIHtcclxuICAgICAgICAmX19oZWFkIHtcclxuICAgICAgICAgICAgXHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX3RpdGxlIHtcclxuICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgJi5mcy0tbGcge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX21nIHtcclxuICAgICAgICBcclxuICAgICAgICAgICAgJi0tc20ge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiA0MHB4IDA7XHJcbiAgICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4udGl0bGUge1xyXG4gICAgZm9udC1zaXplOiAxN3B4O1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAmLmZzLS1tZCB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxOXB4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICB9XHJcbn1cclxuLnRleHQge1xyXG4gICBmb250LXNpemU6IDE1cHg7XHJcbn1cclxuXHJcbi50ZXh0LS1jZW50ZXIge1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcbi50ZXh0LS13aGl0ZSB7XHJcbiAgICBjb2xvcjogI2ZmZmY7XHJcbn1cclxuXHJcbi5mdy02MDAge1xyXG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcclxufSIsIi5pY29uIHtcbiAgICBzdHJva2U6IGN1cnJlbnRDb2xvcjtcbiAgICBmaWxsOiBub25lO1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAmLS1maWxsIHtcbiAgICAgICAgZmlsbDogY3VycmVudENvbG9yO1xuICAgICAgICBzdHJva2U6IGluaXRpYWw7XG4gICAgfVxuICAgIHBhdGgge1xuICAgICAgICBzdHJva2U6IGN1cnJlbnRDb2xvcjtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgfVxufVxuXG5cbi5zb2NpYWwge1xuICAgICZfX2l0ZW1zIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZ2FwOiAxNnB4O1xuICAgIH1cbiAgICAmX19pdGVtIHtcbiAgICAgICAgXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuaWNvbiB7XG4gICAgICAgIGhlaWdodDogMjFweDsgd2lkdGg6IDIwcHg7XG4gICAgICAgICYtLXl1b3R1YmUge1xuICAgICAgICAgICAgd2lkdGg6IDI4cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQpIHtcbiAgICAgICAgJl9faXRlbSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgfVxufSAgIFxuXG5cblxuXG4uc25hdiB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAmLm1iLS1tZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgfVxuICAgICZfX2xpc3Qge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHN0cmV0Y2g7XG4gICAgICAgIGdhcDogMjBweDtcbiAgICB9XG4gICAgJl9faXRlbSB7XG4gICAgfVxuICAgICZfX2xpbmsge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgZ2FwOiAxMHB4O1xuICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgIHBhZGRpbmc6IDAgMTJweDtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgYm9yZGVyOiAzcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KTtcbiAgICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgICAgICAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzUpO1xuICAgICAgICB9XG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgLndtaW4gJiB7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDQwOHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA0OHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQtc20pIHtcbiAgICAgICAgJi5tYi0tbWQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzJweDtcbiAgICAgICAgfVxuICAgICAgICAmX19saXN0IHtcbiAgICAgICAgICAgIGdhcDogMTZweDtcbiAgICAgICAgfVxuICAgICAgICAmX19saW5rIHtcbiAgICAgICAgICAgIGhlaWdodDogMzJweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMTZweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLW1vYmlsZSkge1xuICAgICAgICAmX19pdGVtLndtaW4ge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgICAgJl9fbGluayB7XG4gICAgICAgIFxuICAgICAgICAgICAgLndtaW4gJiB7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiA4cHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLmxpbmsge1xuXG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiBsaCgyNywgMjApO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAuaWNvbiB7XG4gICAgICAgIHdpZHRoOiAyMHB4OyBoZWlnaHQ6IDIwcHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7XG4gICAgfVxuICAgICY6aG92ZXIge1xuICAgICAgIFxuICAgIH1cbiAgICAmX19tb3JlIHtcbiAgICAgICAgLmNsb3NlX3Qge1xuICAgICAgICAgICAgZGlzcGxheTpub25lXG4gICAgICAgIH1cbiAgICAgICAgJi5vcGVuZWQgLm9wZW5fdCB7XG4gICAgICAgICAgICBkaXNwbGF5Om5vbmVcbiAgICAgICAgfVxuICAgICAgICAmLm9wZW5lZCAuY2xvc2VfdCB7XG4gICAgICAgICAgICBkaXNwbGF5OmJsb2NrXG4gICAgICAgIH1cbiAgICB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1kZXNrdG9wKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweFxuICAgIH1cbn1cblxuXG4uYmFja19saW5rIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgfVxuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQtc20pIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICB9XG59XG5cbi8vIC5jb250ZW50X190b2dnbGUge1xuLy8gICAgID4gKiB7XG4vLyAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4vLyAgICAgfVxuLy8gICAgICYgPiA6bnRoLWNoaWxkKDEpLFxuLy8gICAgICYgPiA6bnRoLWNoaWxkKDIpIHtcbi8vICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4vLyAgICAgfVxuLy8gICAgICYub3BlbmVkID4gKiB7XG4vLyAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4vLyAgICAgfVxuLy8gICAgICYtLW1vYmlsZSB7XG4vLyAgICAgICAgID4gKiB7XG4vLyAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbi8vICAgICAgICAgfVxuLy8gICAgIH1cbi8vICAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLXRhYmxldC1zbSkge1xuLy8gICAgICAgICA+ICoge1xuLy8gICAgICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuLy8gICAgICAgICB9XG4vLyAgICAgICAgICYgPiA6bnRoLWNoaWxkKDEpIHtcbi8vICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4vLyAgICAgICAgIH1cbi8vICAgICB9XG4vLyB9XG5cblxuLnBhZ2luYXRpb24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICBtYXJnaW4tdG9wOiA2MHB4O1xuICAgICZfX2xpc3Qge1xuICAgICAgICB3aWR0aDogMTQwcHg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgLy8ganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBnYXA6IDE1cHg7XG4gICAgfVxuICAgIC5wYWdlLWl0ZW0ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGNvbG9yOiAjZmZmOyBmb250LXNpemU6IDE1cHg7XG4gICAgICAgIG9wYWNpdHk6IDAuNTsgICAgICAgIFxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAvLyBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgfVxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICB3aWR0aDogMTRweDtcbiAgICAgICAgICAgIGhlaWdodDogMjFweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAucGFnZS1maXJzdCwgLnBhZ2UtbGFzdCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5wYWdlLWl0ZW0tbmV4dCwgLnBhZ2UtaXRlbS1wcmV2IHtcbiAgICAgICAgb3JkZXI6IDU7XG4gICAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgYm9yZGVyOiAzcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xuICAgICAgICAucGFnZS1saW5rIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGFicy1hbGw7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5wYWdlLWl0ZW0tbmV4dCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgfVxuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogODBweDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICZfX2xpc3Qge1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1kZXNrdG9wKSB7XG5cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAkbWQtdGFibGV0KSB7XG5cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAkbWQtdGFibGV0LXNtKSB7XG5cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAkbWQtbW9iaWxlLWxnKSB7XG5cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAkbWQtbW9iaWxlKSB7XG5cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAkbWQtbW9iaWxlLXNtKSB7XG5cbn0iLCIvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbnN3aXBlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4uc3dpcGVyIHt9XG5cbi5zd2lwZXItc2xpZGUge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi5zd2lwZXItcGFnaW5hdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBnYXA6IDEwcHg7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIC8vIGJvdHRvbTogNDBweCAhaW1wb3J0YW50O1xuICAvLyBsZWZ0OiA1MCUgIWltcG9ydGFudDtcbiAgLy8gdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO3hcblxuICAmLWJ1bGxldCB7XG4gICAgZmxleDogMSAxIDA7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgbWF4LXdpZHRoOiBpbml0aWFsO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogNXB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBvcGFjaXR5OiAwLjI7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG5cbiAgICAmLWFjdGl2ZSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgZmxleDogMSAwLjUgMDtcbiAgICB9XG4gIH1cblxuXG4gICYtY2xpY2thYmxlIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuXG4uc3dpcGVyLWJ1dHRvbiB7XG4gIHdpZHRoOiA2MHB4O1xuICBoZWlnaHQ6IDQwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAvLyB0b3A6IGF1dG87XG4gIC8vIHJpZ2h0OiAwO1xuICAvLyBsZWZ0OiBhdXRvO1xuICBtYXJnaW46IDA7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogM3B4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgY29sb3I6ICNmZmY7XG4gIG9wYWNpdHk6IDAuNTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gICYtZGlzYWJsZWQge1xuICAgIC8vIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgJi1sb2NrIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gICY6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAuaWNvbiB7XG4gICAgd2lkdGg6IDE0cHg7XG4gICAgaGVpZ2h0OiAyMXB4O1xuICB9XG5cbiAgQG1lZGlhIChhbnktaG92ZXI6aG92ZXIpIHtcbiAgICAmOmhvdmVyIHtcbiAgICAgIC8vIGJvcmRlci1jb2xvcjogI2ZmZjtcbiAgICAgIC8vIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAvLyBjb2xvcjogYmxhY2s7XG5cbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG5cbn1cblxuLnN3aXBlci1zY3JvbGxiYXIge1xuICBiYWNrZ3JvdW5kOiBub25lO1xufVxuXG4uc3dpcGVyLW5hdiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgZ2FwOiAyMHB4O1xuICBtYXgtd2lkdGg6IDE0MHB4O1xuICBtYXJnaW4tdG9wOiA1MHB4O1xuICAmLXJpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cblxuICAuc3dpcGVyLWZyYWN0aW9uIHtcbiAgICB3aWR0aDogNTBweDtcbiAgfVxuICAuc3dpcGVyLXBhZ2luYXRpb24ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgfVxuXG4gIC5zd2lwZXItYnV0dG9uIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAkbWQtZGVza3RvcC1sZykge1xuICAuc3dpcGVyLW5hdiB7XG4gICAgLnN3aXBlci1wYWdpbmF0aW9uIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICAgIFxuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogJG1kLXRhYmxldCkge1xuICAuc3dpcGVyLWJ1dHRvbiB7XG4gICAgd2lkdGg6IDY0cHg7IGhlaWdodDogMzJweDtcbiAgfVxuICAuc3dpcGVyLW5hdiB7XG4gICAgZ2FwOiAxNnB4O1xuICAgIG1heC13aWR0aDogMTQ0cHg7XG4gIH1cbiBcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG51aS1kYXRlcGlja2VyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi51aS1kYXRlcGlja2VyIHtcbiAgYmFja2dyb3VuZDogIzFFMUUxRTtcbiAgcGFkZGluZzogMTBweDtcbiAgd2lkdGg6IDI2MHB4O1xuICB6LWluZGV4OiAyOTk5OTk5ICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi10b3A6IDJweDtcblxuICAudWktZGF0ZXBpY2tlci1oZWFkZXIge1xuICAgICAgcGFkZGluZzogMCA1cHg7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgfVxuICAudWktZGF0ZXBpY2tlci1wcmV2LCAudWktZGF0ZXBpY2tlci1uZXh0IHtcbiAgICAgIC8vIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGxlZnQ6IGF1dG87IHJpZ2h0OiBhdXRvOyB0b3A6IGF1dG87XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICB3aWR0aDogMTVweDsgaGVpZ2h0OiAxNXB4O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDEwMCUgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIC51aS1pY29uIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICB9XG4gIC51aS1kYXRlcGlja2VyLW5leHQge1xuICAgICAgb3JkZXI6IDI7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2ljb25zL2RhdGUtbmV4dC5zdmcpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICB9XG4gIC51aS1kYXRlcGlja2VyLXByZXYge1xuICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9pY29ucy9kYXRlLXByZXYuc3ZnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgfVxuICAudWktc3RhdGUtZGlzYWJsZWQge1xuICAgICAgb3BhY2l0eTogMC41O1xuICB9XG4gIC51aS1zdGF0ZS1kaXNhYmxlZC51aS1kYXRlcGlja2VyLW5leHQge1xuICAgICBcbiAgfVxuICAudWktc3RhdGUtZGlzYWJsZWQudWktZGF0ZXBpY2tlci1wcmV2IHtcbiAgICAgIFxuICB9XG4gIC51aS1kYXRlcGlja2VyLXRpdGxlIHtcbiAgICAgIGZsZXg6IDEgMCAwO1xuICAgICAgcGFkZGluZzogMCAxMHB4O1xuICAgICAgZm9udC1zaXplOiAxNHB4OyBjb2xvcjogI2ZmZjtcbiAgICAgIC8vIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAvLyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuICAudWktZGF0ZXBpY2tlci10aXRsZSBzZWxlY3Qge1xuICAgIHdpZHRoOiA0NSU7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgd2lkdGg6IDg4cHg7XG4gICAgcGFkZGluZzogOHB4IDE2cHg7XG4gICAgY29sb3I6ICRjb2xvci1ib2R5O1xuICAgIG1hcmdpbjogMDtcbiAgICB3ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAtbXMtYXBwZWFyYW5jZTogbm9uZTtcbiAgYXBwZWFyYW5jZTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIHNlbGVjdC51aS1kYXRlcGlja2VyLW1vbnRoIHtcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgb3JkZXI6IC0xO1xuICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvaWNvbnMvZHJvcC1zZWxlY3QtcHVycGxlLnN2Zykgbm8tcmVwZWF0IHJpZ2h0IDE2cHggY2VudGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGMUYxRjE7XG4gIH1cbiAgc2VsZWN0LnVpLWRhdGVwaWNrZXIteWVhciB7XG4gICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9pY29ucy9kcm9wLXNlbGVjdC5zdmcpIG5vLXJlcGVhdCByaWdodCAxNnB4IGNlbnRlcjtcbiAgfVxuICB0YWJsZSB7XG4gICAgICBtYXJnaW46IDA7XG4gIH1cbiAgdGgge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgICBjb2xvcjogJGNvbG9yLWJvZHk7XG4gICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC1zaXplOiAxMnB4OyBsaW5lLWhlaWdodDogMzBweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIH1cbiAgdGQge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgcGFkZGluZzogMCAwO1xuICAgICAgLy8gJjpmaXJzdC1jaGlsZCB7XG4gICAgICAvLyAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgICAgLy8gfVxuICAgICAgLy8gJjpsYXN0LWNoaWxkIHtcbiAgICAgIC8vICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICAgICAgLy8gfVxuICAgICAgLnVpLXN0YXRlLWRlZmF1bHQge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgIGhlaWdodDogMzBweDsgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIGNvbG9yOiAkY29sb3ItYm9keTtcbiAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwcHg7XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgICAgICAgY29sb3I6ICMwMDA7XG4gICAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi51aS1zdGF0ZS1kaXNhYmxlZCAudWktc3RhdGUtZGVmYXVsdCB7XG4gICAgICAgIGNvbG9yOiAjN0Q3RDdEO1xuICAgICAgfVxuICAgICAgJi51aS1kYXRlcGlja2VyLXRvZGF5IGEge1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgfVxuICAgICAgLnVpLXN0YXRlLWFjdGl2ZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgfVxuICAgICAgLy8gJi5zZWxlY3RlZCBhIHtcbiAgICAgIC8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1MSwgMjM0LCAyMDksIDAuNSk7XG4gICAgICAvLyAgICAgY29sb3I6ICNBOUQzQUI7XG4gICAgICAvLyB9XG4gICAgICAvLyAmLnNlbGVjdGVkLXN0YXJ0IGEsXG4gICAgICAvLyAmOmZpcnN0LWNoaWxkLnNlbGVjdGVkIGEge1xuICAgICAgLy8gICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDEwMHB4O1xuICAgICAgLy8gICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDEwMHB4O1xuICAgICAgLy8gfVxuICAgICAgLy8gJi5zZWxlY3RlZC1lbmQgYSxcbiAgICAgIC8vICY6bGFzdC1jaGlsZC5zZWxlY3RlZCBhIHtcbiAgICAgIC8vICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMTAwcHg7XG4gICAgICAvLyAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDEwMHB4O1xuICAgICAgLy8gfVxuICAgICAgLy8gJi5zZWxlY3RlZC1zdGFydCBhOmFmdGVyLFxuICAgICAgLy8gJi5zZWxlY3RlZC1lbmQgYTphZnRlciB7XG4gICAgICAvLyAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgLy8gICAgIGxlZnQ6IDNweDsgdG9wOiAzcHg7XG4gICAgICAvLyAgICAgd2lkdGg6IDMycHg7IGhlaWdodDogMzJweDtcbiAgICAgIC8vICAgICBiYWNrZ3JvdW5kOiAjMDYxMDMwO1xuICAgICAgLy8gICAgIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xuICAgICAgLy8gICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgLy8gICAgIHotaW5kZXg6IC0xO1xuICAgICAgLy8gfVxuICAgICAgIFxuICB9XG59IiwiLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5mb3Jtc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5AaW5jbHVkZSBpbnB1dC1wbGFjZWhvbGRlcignLmlucHV0JywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjYpLCAxKTtcblxuLmlucHV0OmZvY3VzOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtjb2xvcjogdHJhbnNwYXJlbnQ7IG9wYWNpdHk6IDA7fVxuLmlucHV0OmZvY3VzOjotby1pbnB1dC1wbGFjZWhvbGRlciB7ICBjb2xvcjogdHJhbnNwYXJlbnQ7IG9wYWNpdHk6IDA7fVxuLmlucHV0OmZvY3VzOjotbW96LWlucHV0LXBsYWNlaG9sZGVyIHsgIGNvbG9yOiB0cmFuc3BhcmVudDsgb3BhY2l0eTogMDt9XG4uaW5wdXQ6Zm9jdXM6LW1vei1pbnB1dC1wbGFjZWhvbGRlciB7IGNvbG9yOiB0cmFuc3BhcmVudDsgb3BhY2l0eTogMDt9XG4uaW5wdXQ6Zm9jdXM6Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7IGNvbG9yOiB0cmFuc3BhcmVudDsgb3BhY2l0eTogMDt9XG4uaW5wdXQ6Zm9jdXM6aW5wdXQtcGxhY2Vob2xkZXIge2NvbG9yOiB0cmFuc3BhcmVudDsgb3BhY2l0eTogMDt9XG5cbmlucHV0W3BsYWNlaG9sZGVyXSAgICAgICAgICB7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt9XG5pbnB1dDo6LW1vei1wbGFjZWhvbGRlciAgICAge3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7fSBcbmlucHV0Oi1tb3otcGxhY2Vob2xkZXIgICAgICB7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt9IFxuaW5wdXQ6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO31cblxuXG5cbmlucHV0LCBidXR0b24geyAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7fVxuXG5cbi5mb3JtIHtcbiAgICAmX19ib3gge1xuICAgICAgICAmICsgJiB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzMnB4O1xuICAgICAgICB9XG4gICAgfVxuICAgICZfX2NvbHMge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gICAgICAgIGdyaWQtZ2FwOiAwIDIwcHg7XG4gICAgfVxuICAgICZfX2lucHV0IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTNweDtcbiAgICB9XG4gICAgJl9fbGFiZWwge1xuICAgICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEycHg7XG4gICAgfVxuICAgICZfX2J1dHRvbnMge1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIH1cbiAgICBcbiAgICAmX19wb2xpY3kge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBnYXA6IDIwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgei1pbmRleDogLTk5O1xuICAgICAgICAgICAgb3BhY2l0eTogMDsgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICB9XG4gICAgICAgICYtdCB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMnB4O1xuICAgICAgICB9XG4gICAgICAgICYtc3Ege1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgICAgICAgIHdpZHRoOiAyMHB4OyBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZmO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI5KTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuNjM7XG4gICAgICAgICAgICAvLyB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgICAgICAgfVxuICAgICAgICAmIC5lcnJvciArICYtc3Ege1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2IoMjUxLCAzLCAzKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAxMTMsIDExMywgMC4zKTtcbiAgICAgICAgfVxuICAgICAgICAmIDpjaGVja2VkICsgJi1zcSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2ljb25zL2NoZWNrLnN2Zykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtbW9iaWxlLWxnKSB7XG4gICAgICAgICZfX2NvbHMge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICAgICAgJl9fbGFiZWwge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi5pbnB1dCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiA0MnB4O1xuICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udDtcbiAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuXG4gICAgb3V0bGluZTogbm9uZTtcbiAgICAmLS1kYXRlIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA2MHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb25zL2NhbGVuZGFyLnN2Zyk7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDIwcHggY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIH1cbiAgICAmLmVycm9yIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2IoMjM1LCAwLCAwKTtcbiAgICAgICAgLy8gY29sb3I6IHJnYigyMzUsIDAsIDApO1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2IoMTc3LCA4NCwgODQpO1xuICAgICAgICAvLyBAaW5jbHVkZSBpbnB1dC1wbGFjZWhvbGRlcignJicsIHJnYmEoMjM1LCAwLCAwLCAwLjcpLCAxKTtcbiAgICB9XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLW1vYmlsZS1sZykge1xuICAgICAgICBoZWlnaHQ6IDM4cHg7XG4gICAgfVxufVxudGV4dGFyZWEuaW5wdXQge1xuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgcGFkZGluZzogMTBweCAyMHB4O1xuICAgIHJlc2l6ZTogbm9uZTtcbiAgICBoZWlnaHQ6IDEwMHB4O1xufVxuXG5cbi5idG4ge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZ2FwOiAxNHB4O1xuICAgIGhlaWdodDogNDBweDtcbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmY7XG4gICAgY29sb3I6ICNmZmY7IGZvbnQtc2l6ZTogMTVweDtcbiAgICBmb250LWZhbWlseTogJGZvbnQ7XG4gICAgb3BhY2l0eTogMC43O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICY6aG92ZXIge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cblxuICAgIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogMjVweDsgbWF4LWhlaWdodDogMzJweDtcbiAgICB9XG4gICAgLmljb24ge1xuICAgICAgICB3aWR0aDogMjVweDsgaGVpZ2h0OiAzMnB4O1xuICAgIH1cbiAgICAmLS1zb2Mge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMjVweDtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDI1cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi0tbGcge1xuICAgICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgfVxuICAgICYtLXYyIHtcbiAgICAgICAgbWluLXdpZHRoOiAzNDBweDtcbiAgICAgICAgaGVpZ2h0OiA0NnB4O1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsICNGNDVGRkYgMCUsICNBMjM4RkYgMTAwJSk7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgJjo6YWZ0ZXIsICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDFweDsgYm90dG9tOiAxcHg7XG4gICAgICAgICAgICBsZWZ0OiAxcHg7IHJpZ2h0OiAxcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoODguNTFkZWcsICMwRjBGMEYgMC45NSUsICMyQzJDMkMgMTAwLjY5JSk7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICAgIH1cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMEYwRjBGO1xuICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyOjpiZWZvcmUge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLS1mbGFyZTpiZWZvcmUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB3aWR0aDogMzVweDtcbiAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgtMzBkZWcpOyAvLyDQndCw0LrQu9C+0L1cbiAgICAgICAgYW5pbWF0aW9uOiBmbGFyZUFuaW1hdGlvbjtcbiAgICAgICAgbGVmdDogLTE1MCU7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgzNTkuMzdkZWcsIHJnYmEoODEsIDgxLCA4MSwgMCkgLTAuNjElLCByZ2JhKDk4LCA5OCwgOTgsIDAuNDgpIDQ4Ljc3JSwgcmdiYSg4MSwgODEsIDgxLCAwKSA5OS40NCUpO1xuXG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg0My42OGRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAwJSwgcmdiYSgyMDUsIDIwNSwgMjA1LCAwLjAyNCkgNDkuMzUlLCByZ2JhKDE1MywgMTUzLCAxNTMsIDAuMDAzKSAxMDAlKTtcblxuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoODZweCk7XG5cbiAgICAgICAgYm94LXNoYWRvdzogMHB4IDJweCA0cHggMHB4ICNGRkZGRkYyNiBpbnNldCwgIDBweCAwcHggNjhweCAwcHggI0ZGRkZGRjBEIGluc2V0LCAwcHggNHB4IDRweCAwcHggIzAwMDAwMDQwO1xuXG5cbiAgICAgICAgYW5pbWF0aW9uOiBmbGFyZUFuaW1hdGlvbiAzLjVzIGluZmluaXRlIGxpbmVhcjsgXG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcztcbiAgICB9XG4gICAgJi0tZmxhcmU6aG92ZXI6OmJlZm9yZSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICAgIHNwYW4ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgfVxuXG4gICAgQGtleWZyYW1lcyBmbGFyZUFuaW1hdGlvbiB7XG4gICAgICAgIDAlIHtcbiAgICAgICAgICAgIGxlZnQ6IC0xNTAlO1xuICAgICAgICB9XG4gICAgICAgIDEwMCUge1xuICAgICAgICAgICAgbGVmdDogMTUwJTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLS13YWxsIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgICYtLW13YWxsIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogNjM1cHg7XG4gICAgfVxuICAgIC53YWl0ICYge1xuICAgICAgICBjdXJzb3I6IHdhaXQ7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLW1vYmlsZS1sZykge1xuICAgICAgICAmLS12MiB7XG4gICAgICAgICAgICAgbWluLXdpZHRoOiAxcHg7XG4gICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDM0MHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi5hZGRmaWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgJiArICYge1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIH1cbiAgICBpbnB1dCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgICZfX2xhYmVsIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZ2FwOiAxMHB4O1xuICAgICAgICBwYWRkaW5nOiA1cHggMjBweCA1cHggNjBweDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udDtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9pY29ucy9icm93c2Uuc3ZnKSBuby1yZXBlYXQgbGVmdCAyMHB4IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgICB9XG4gICAgJjpob3ZlciAmX19sYWJlbCB7XG4gICAgICAgIFxuICAgIH1cbiAgICAmX190IHtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgfVxuICAgICZfX3BsYWNlaG9sZGVyIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgICB9XG4gICAgJi5jaGFuZ2VkICZfX3BsYWNlaG9sZGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgJl9fcmVtb3ZlIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmNoYW5nZWQgJl9fcmVtb3ZlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICAgICZfX2Jyb3dzZSB7XG4gICAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgICB3aWR0aDogMjBweDsgaGVpZ2h0OiAyMHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGluaXRpYWw7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJl9fcHJldmlldyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDsgdG9wOiAxMDAlO1xuICAgICAgICBtYXJnaW4tdG9wOiA0cHg7XG4gICAgICAgIGNvbG9yOiAjNDc1NTY5O1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gICAgXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQtc20pIHtcbiAgICAgICAgJl9fbGFiZWwge1xuICAgICAgICAgICAgaGVpZ2h0OiA1NHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICB9XG4gICAgfVxufSIsIlxyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxucG9wdXBcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbi5wb3B1cCB7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB0b3A6IDA7IGxlZnQ6IDA7XHJcbiAgICB3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlO1xyXG4gICAgb3ZlcmZsb3c6IGF1dG87XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgei1pbmRleDogOTk5OTk7XHJcbiAgICAmX19jb250ZW50IHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBtaW4taGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIG92ZXJmbG93OiBhdXRvO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBwYWRkaW5nOiAxNXB4IDE1cHg7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICB9XHJcbiAgICAmX19iZyB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xyXG4gICAgICAgIG9wYWNpdHk6IDAuNztcclxuICAgIH1cclxuICAgICZfX2NvbnRhaW5lciB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlOyBtYXgtd2lkdGg6IDY4MHB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDQwcHggNjBweDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjMUUxRTFFO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgLy8gZGlzcGxheTogZmxleDtcclxuICAgICAgICAvLyBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIC5wb3B1cC10aGFuayAmIHtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiA2MDBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmX19jbG9zZSB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA2NXB4O1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBmb250LXNpemU6IDEwcHg7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIHotaW5kZXg6IDk5O1xyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuNjtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6aG92ZXIgaW1nIHtcclxuICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmX19oZWFkIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgIGdhcDogMzBweDtcclxuICAgICAgICAucG9wdXAtdGhhbmsgJiB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJl9fdGl0bGUge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjVweDtcclxuICAgICAgICBtYXgtd2lkdGg6IDMwMHB4O1xyXG4gICAgfVxyXG4gICAgJl9faW50cm8ge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICB9XHJcbiAgICAmX19pY29udGhhbmsge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XHJcbiAgICB9XHJcbiAgICAmLXRoYW5rICZfX3RpdGxlIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtbW9iaWxlLWxnKSB7XHJcbiAgICAgICAgJl9fY29udGVudCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgfSBcclxuICAgICAgICAmX19jb250YWluZXIge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IGNhbGModmFyKC0tdmgpICogMTAwKTtcclxuICAgICAgICAgICAgcGFkZGluZzogNDVweCAkcGQtY29udGFpbmVyIDY0cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2Nsb3NlIHtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiA1MnB4O1xyXG4gICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmX190aXRsZSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLW1vYmlsZS1zbSkge1xyXG4gICAgICAgICZfX3RpdGxlIHtcclxuICAgICAgICAgICAgLy8gZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtbW9iaWxlLXNteCkge1xyXG4gICAgICAgICZfX2NvbnRhaW5lciB7XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgIH1cclxuICAgICAgICAmX190aXRsZSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICB9XHJcbn0iLCIvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuaGVhZGVyXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4uaGVhZGVyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHotaW5kZXg6IDEwO1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDBkZWcsIHJnYmEoMCwwLDAsMCkgMCUsIHJnYmEoMCwwLDAsMSkgMTAwJSk7XHJcbiAgICAmX19pbm5lciB7XHJcbiAgICAgICAgcGFkZGluZzogMjVweCAwIDEwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiAkaGVhZGVyLWg7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICBnYXA6IDMwcHg7XHJcbiAgICB9XHJcbiAgICAmX19sb2dvIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgIH1cclxuICAgICZfX2NvbnRhY3RzIHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogMzBweDtcclxuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgIH1cclxuICAgICZfX3Bob25lIHtcclxuICAgICAgICBmb250LXNpemU6IDE1cHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICB9XHJcbiAgICAmX19lbWFpbCB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIH1cclxuICAgICZfX2J0biB7XHJcbiAgICAgICAgXHJcbiAgICB9XHJcbiAgICAmX19zb2NpYWwge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZ2FwOiAyMHB4O1xyXG4gICAgfVxyXG4gICAgJl9fbWVudSB7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNTVweDtcclxuICAgICAgICBcclxuICAgICAgICAuY29udGFjdHMtcGFnZSAmIHtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1MHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIFxyXG4gICAgJl9fYnVyZ2VyIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtZGVza3RvcC1sZykge1xyXG4gICAgICAgICZfX2lubmVyIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiAkaGVhZGVyLWgtZDtcclxuICAgICAgICAgICAgZ2FwOiAyMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19tZW51IHtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1MHB4O1xyXG4gICAgICAgICAgICAuY29udGFjdHMtcGFnZSAmIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtZGVza3RvcC1tZCkge1xyXG4gICAgICAgICZfX2RlbW8ge1xyXG4gICAgICAgICAgICB3aWR0aDogNDBweDtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICB6LWluZGV4OiA1O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwIDVweDtcclxuICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLWRlc2t0b3ApIHtcclxuICAgICAgICAmX19jb250YWN0cyB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19tZW51IHtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtdGFibGV0KSB7XHJcbiAgICAgICAgJl9faW5uZXIge1xyXG4gICAgICAgICAgICBoZWlnaHQ6ICRoZWFkZXItaC10O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19tZW51IHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZVxyXG4gICAgICAgIH1cclxuICAgICAgICAmX19idXJnZXIge1xyXG4gICAgICAgICAgICB3aWR0aDogNDBweDsgaGVpZ2h0OiA0MHB4O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgICAgICAgICAgei1pbmRleDogNTtcclxuICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGFicy1jZW50ZXI7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuaW1nLWFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5pbWctYWN0aXZlIHtcclxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2xvZ28ge1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fY29udGFjdHMge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQtc20pIHtcclxuICAgICAgICAmX19pbm5lciB7XHJcbiAgICAgICAgICAgIGhlaWdodDogJGhlYWRlci1oLW07XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2J1cmdlciB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAzMnB4OyBoZWlnaHQ6IDMycHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2RlbW8ge1xyXG4gICAgICAgICAgICB3aWR0aDogMzJweDsgaGVpZ2h0OiAzMnB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19sb2dvIGltZyB7XHJcbiAgICAgICAgICAgIGhlaWdodDogMzJweFxyXG4gICAgICAgIH1cclxuICAgICAgICAmX19zb2NpYWwge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuQGltcG9ydCBcImNvbXBvbmVudHMvbWVudVwiO1xyXG5AaW1wb3J0IFwiY29tcG9uZW50cy9uYXZmaXhcIjsiLCIubWVudSB7XHJcbiAgICAmX19saXN0IHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgZ2FwOiA3MHB4O1xyXG4gICAgICAgIC5jb250YWN0cy1wYWdlICYge1xyXG4gICAgICAgICAgICBnYXA6IDUwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgID4gbGkgPiB1bCB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgbGVmdDogLTIwcHg7IHRvcDogMTAwJTtcclxuICAgICAgICAgICAgb3BhY2l0eTogMDsgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHggMjBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgdWwge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmctYm9keTtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xyXG4gICAgICAgICAgICBnYXA6IDA7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICZfX2l0ZW0ge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAmOmhvdmVyID4gdWwge1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAxOyB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICZfX2xpbmsge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBnYXA6IDdweDtcclxuICAgICAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgY29sb3I6ICNmZmY7IGZvbnQtc2l6ZTogMTVweDtcclxuICAgICAgICBvcGFjaXR5OiAwLjc7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAxOyAgICBcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmX19pdGVtLmFjdGl2ZSA+ICZfX2xpbmsge1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLWRlc2t0b3AtbGcpIHtcclxuICAgICAgICAmX19saXN0IHtcclxuICAgICAgICAgICAgZ2FwOiAzMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgICAgICAuY29udGFjdHMtcGFnZSAmX19saW5rIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtZGVza3RvcCkge1xyXG4gICAgICAgICZfX2xpc3Qge1xyXG4gICAgICAgICAgICBnYXA6IDMwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2xpbmsge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQpIHtcclxuICAgICAgICAmX19saXN0IHtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgZ2FwOiAyNXB4O1xyXG4gICAgICAgICAgICA+IGxpID4gdWwge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICAgICAgbGVmdDogYXV0bzsgdG9wOiBhdXRvO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHVsIHtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGluaXRpYWw7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2xpbmsge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgIH1cclxuXHJcbn1cclxuIiwiLm5hdmZpeCB7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB0b3A6IDA7IGxlZnQ6IDA7XHJcbiAgICB3aWR0aDogMTAwJTsgaGVpZ2h0OiBjYWxjKHZhcigtLXZoKSAqIDEwMCk7XHJcbiAgICBiYWNrZ3JvdW5kOiAjMDAwO1xyXG4gICAgei1pbmRleDogMDtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIG92ZXJmbG93OiBhdXRvO1xyXG4gICAgY29sb3I6ICNmZmY7XHJcbiAgICBvcGFjaXR5OiAwOyB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZS1pbi1vdXQsIHZpc2liaWxpdHkgMC4zcyBlYXNlLWluLW91dDtcclxuICAgICYub3BlbmVkIHtcclxuICAgICAgICBvcGFjaXR5OiAxOyB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgfVxyXG4gICAgJl9faW5uZXIge1xyXG4gICAgICAgIGhlaWdodDogY2FsYyh2YXIoLS12aCkgKiAxMDApO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICBnYXA6IDUwcHg7XHJcbiAgICAgICAgcGFkZGluZzogJGhlYWRlci1oLXQgMCAzMHB4O1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIH1cclxuICAgICZfX21lbnUge1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIC8vIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICB9XHJcbiAgICAmX19jb250YWN0cyB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICYtaXRlbSB7XHJcbiAgICAgICAgICAgICYgKyAmIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi1sYWJlbCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDhweDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxMHB4O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLXZhbCB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICBnYXA6IDEwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtaWNvbiB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAyMXB4O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19jb3B5IHtcclxuICAgICAgICBmb250LXNpemU6IDEwcHg7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgIH1cclxuXHJcbiAgICBcclxuICAgIFxyXG4gICAgQG1lZGlhICAobWF4LWhlaWdodDogJG1kLXRhYmxldC1zbSkge1xyXG4gICAgICAgICZfX2lubmVyIHtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6ICRoZWFkZXItaC1tO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsIlxyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuZm9vdGVyXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4uZm9vdGVyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIC8vIHotaW5kZXg6IDEwO1xyXG4gICAgYmFja2dyb3VuZDogJGJnLWJvZHk7XHJcbiAgICAmX19pbmZvIHtcclxuICAgICAgICBtaW4taGVpZ2h0OiAzODBweDtcclxuICAgICAgICBwYWRkaW5nOiAxMDBweCAwIDQwcHg7XHJcbiAgICAgICAgYmFja2dyb3VuZDogIzAwMDtcclxuICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgfVxyXG4gICAgJl9faW5uZXIge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZ2FwOiAzNXB4O1xyXG4gICAgfVxyXG4gICAgJl9fbG9nbyB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAxNTBweDtcclxuICAgICAgICBvcGFjaXR5OiAwLjU7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJl9fbWVudSB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAxMjBweDtcclxuICAgICAgICBsaSArIGxpIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LCAwLjcpO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBsaS5hY3RpdmUgYSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmX19jb250YWN0cyB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcbiAgICAgICAgJi1pdGVtIHtcclxuICAgICAgICAgICAgJiArICYge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLWxhYmVsIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4O1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDEwcHg7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtdmFsIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgZ2FwOiAxMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWljb24ge1xyXG4gICAgICAgICAgICB3aWR0aDogMjFweDtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgb3BhY2l0eTogMC41O1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1pdGVtOmhvdmVyICYtaWNvbiB7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJl9fc29jaWFsIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAyN3B4O1xyXG4gICAgICAgICYtdHQge1xyXG4gICAgICAgICAgICBjb2xvcjogcmdiYSgyMjUsIDIyNSwgMjI1LCAxKTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDMwMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAuc29jaWFsX19pdGVtcyB7XHJcbiAgICAgICAgICAgIGdhcDogMTBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmljb24ge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDMwcHg7IHdpZHRoOiAzMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAuaWNvbi0teW91dHViZSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA0MXB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19jb3B5IHtcclxuICAgICAgICBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwgMC43KTtcclxuICAgICAgICBmb250LXNpemU6IDEwcHg7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogNjdweDtcclxuICAgIH1cclxuXHJcbiAgICAmX19tYXAge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICByaWdodDogMDsgdG9wOiAwO1xyXG4gICAgICAgIHdpZHRoOiA1MCU7IGhlaWdodDogMTAwJTtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgID4gKiB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB0b3A6IC0ycHg7IGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAyJSAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1kZXNrdG9wKSB7XHJcbiAgICAgICAgJl9faW5mbyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19pbm5lciB7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fbWFwIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiAzODBweDtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQpIHtcclxuICAgICAgICAuY29udGFpbmVyIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9faW5mbyB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDkwcHggMDtcclxuICAgICAgICAgICAgbWluLWhlaWdodDogMXB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19jb3B5IHtcclxuICAgICAgICAgICAgLy8gcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAvLyBib3R0b206IDM1cHg7IGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIC8vIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAvLyBwYWRkaW5nOiAwICRwZC1jb250YWluZXI7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDEwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtbW9iaWxlLWxnKSB7XHJcbiAgICAgICAgJl9faW5uZXIge1xyXG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xyXG4gICAgICAgICAgICBnYXA6IDIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX21lbnUge1xyXG4gICAgICAgICAgICBtaW4td2lkdGg6IDEwMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19jb250YWN0cyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA4MHB4O1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICYtdmFsIHtcclxuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX3NvY2lhbCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuNTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiQGltcG9ydCBcImluYy9jb3JlXCI7XHJcblxyXG5AaW1wb3J0IFwiZm9udHNcIjtcclxuQGltcG9ydCBcInJlc2V0XCI7XHJcbkBpbXBvcnQgXCJjb21tb25cIjtcclxuQGltcG9ydCBcImxpYnNcIjtcclxuQGltcG9ydCBcImZvcm1zXCI7XHJcbkBpbXBvcnQgXCJwb3B1cFwiO1xyXG5AaW1wb3J0IFwiaGVhZGVyXCI7XHJcbkBpbXBvcnQgXCJmb290ZXJcIjtcclxuXHJcblxyXG5cclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuLmhlcm8ge1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIC8vIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XHJcbiAgICAmX19pbm5lciB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGhlaWdodDogY2FsYyh2YXIoLS12aCkgKiAxMDAgLSAkaGVhZGVyLWgpO1xyXG4gICAgICAgIHBhZGRpbmc6IDQwcHggMCAkaGVhZGVyLWg7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIHotaW5kZXg6IDU7XHJcbiAgICB9XHJcbiAgICAmX19jb3B5IHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICBib3R0b206IDQwcHg7XHJcbiAgICAgICAgZm9udC1zaXplOiAxMHB4O1xyXG4gICAgfVxyXG5cclxuICAgICZfX2luZm8ge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBnYXA6IDYwcHg7XHJcbiAgICB9XHJcbiAgICAmX19sb2dvIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDE3NnB4O1xyXG4gICAgICAgIGcsIHBhdGgge1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmMtMSB7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0xLjVweCwgLTM4cHgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuYy0yIHtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTE0cHgsIC02N3B4KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmMtMyB7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0yN3B4LCAtNTNweCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5jLTQge1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMzlweCwgLTI3cHgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuYy01IHtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUycHgsIC00MXB4KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmMtNiB7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC02NXB4LCAtNTVweCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5jLTcge1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNzhweCwgLTMwcHgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgZyB7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5jLTEge1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTEuNXB4LCA1cHgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5jLTIge1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTE0cHgsIC0xMTBweCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmMtMyB7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMjdweCwgLTEwMHB4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuYy00IHtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0zOXB4LCAxMHB4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuYy01IHtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MnB4LCAxMHB4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuYy02IHtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC02NXB4LCAtMTAwcHgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5jLTcge1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTc4cHgsIDE1cHgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJl9fc2xpZGVyIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDkwMHB4O1xyXG4gICAgICAgIGhlaWdodDogMjgwcHg7XHJcbiAgICAgICAgLnN3aXBlci1zbGlkZSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJl9fdGl0bGUge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogNDBweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIH1cclxuICAgICZfX25hdiB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIGJvdHRvbTogMTIwcHg7XHJcbiAgICAgICAgLnN3aXBlci1wYWdpbmF0aW9uLWxvY2sgfiAuc3dpcGVyLWJ1dHRvbi1kaXNhYmxlZCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmVcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmX192aWRlbyB7XHJcbiAgICAgICAgQGluY2x1ZGUgYWJzLWFsbDtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICYtaXRlbSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGJsYWNrO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7IHRvcDogMDtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgei1pbmRleDogMjtcclxuICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgIC8vIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUsIHJnYmEoMjU1LDI1NSwyNTUsMC4yOTQwNzA5NzMxMTU4MDg5KSAwJSwgcmdiYSgwLDAsMCwxKSAxMDAlKTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KC05MGRlZywgcmdiYSgyNTUsMjU1LDI1NSwwKSAwJSwgcmdiYSgwLDAsMCwxKSA2MCUpO1xyXG4gICAgICAgIH1cclxuICAgICAgICB2aWRlbyB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgcGhvdG8tY292ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIFxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1kZXNrdG9wLWxnKSB7XHJcbiAgICAgICAgJl9faW5uZXIge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IGNhbGModmFyKC0tdmgpICogMTAwIC0gJGhlYWRlci1oLWQpO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA0MHB4IDAgJGhlYWRlci1oLWQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2luZ28ge1xyXG4gICAgICAgICAgICBnYXA6IDQwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2xvZ28ge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDE0MHB4O1xyXG4gICAgICAgICAgICBzdmcge1xyXG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX3NsaWRlciB7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogNjAwcHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTgwcHg7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogODAwcHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogMjgwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX3RpdGxlIHtcclxuICAgICAgICAgICAgLy8gZm9udC1zaXplOiA1MHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19uYXYge1xyXG4gICAgICAgICAgICBib3R0b206IDYwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2NvcHkge1xyXG4gICAgICAgICAgICBib3R0b206IDMwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtZGVza3RvcCkge1xyXG4gICAgICAgICZfX2luZ28ge1xyXG4gICAgICAgICAgICBnYXA6IDMwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2xvZ28ge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEyMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19zbGlkZXIge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDUwMHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEyMHB4O1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDYwMHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDE3MHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX190aXRsZSB7XHJcbiAgICAgICAgICAgIC8vIGZvbnQtc2l6ZTogNDBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLXRhYmxldCkge1xyXG4gICAgICAgICZfX2lubmVyIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gJGhlYWRlci1oLXQpO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA0MHB4IDAgNDRweDtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2NvcHkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19pbmZvIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogYXV0bztcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fc2xpZGVyIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2xvZ28ge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19uYXYge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA5MHB4O1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX192aWRlbyB7XHJcbiAgICAgICAgICAgIGhlaWdodDogNzUlO1xyXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyNTUsMjU1LDI1NSwwKSAwJSwgcmdiYSgwLDAsMCwxKSA2MCUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1tb2JpbGUtbGcpIHtcclxuICAgICAgICAmX190aXRsZSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjVweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fbmF2IHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogNzBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5cclxuXHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5cclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbi5hYm91dCB7XHJcbiAgICBwYWRkaW5nOiAxMjBweCAwIDEyMHB4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICZfX2luZm8ge1xyXG4gICAgICAgIHdpZHRoOiA2MyU7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTAwcHg7XHJcbiAgICB9XHJcbiAgICAmX19uYXYge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDgwcHg7XHJcbiAgICB9XHJcbiAgICAmX192aWRlbyB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICB3aWR0aDogMzclOyBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICB2aWRlbyB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAyO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1kZXNrdG9wLWxnKSB7XHJcbiAgICAgICAgcGFkZGluZzogODBweCAwO1xyXG4gICAgICAgICZfX25hdiB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2luZm8ge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA4MHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtZGVza3RvcCkge1xyXG4gICAgICAgICZfX2luZm8ge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtdGFibGV0KSB7XHJcbiAgICAgICAgcGFkZGluZzogNDBweCAwIDQ1cHg7XHJcbiAgICAgICAgJl9fdmlkZW8ge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDUwMHB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA2NHB4O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19uYXYge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0OHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19pbmZvIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1tb2JpbGUtbGcpIHtcclxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgLy8gbWFyZ2luLXRvcDogLTEqJGhlYWRlci1oLW07XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX3ZpZGVvIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiA1MDBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpmaXJzdC1jaGlsZCAmX192aWRlbzo6YmVmb3JlIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYWJzLWFsbDtcclxuICAgICAgICAgICAgei1pbmRleDogNTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwwLjUpO1xyXG4gICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5hX2Fib3V0IHtcclxuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAmX19pbm5lciB7XHJcbiAgICAgICAgcGFkZGluZzogNDBweCAzMHB4O1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDM1MHB4O1xyXG4gICAgICAgIG1heC13aWR0aDogOTAwcHg7XHJcbiAgICB9XHJcbiAgICAmX19hZHZhbnRzIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XHJcbiAgICAgICAgbWFyZ2luOiA0MHB4IDA7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB9XHJcbiAgICAmX19hZHZhbnQge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBnYXA6IDEwcHg7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XHJcbiAgICAgICAgJiArICYge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxNnB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWljb24ge1xyXG4gICAgICAgICAgICBmbGV4OiAwIDAgYXV0bztcclxuICAgICAgICAgICAgd2lkdGg6IDQwcHg7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi10aXRsZSB7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtdGV4dCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDZweDtcclxuICAgICAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICZfX2JnaW1nIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgcmlnaHQ6IC0xMDBweDsgdG9wOiAwO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgcGhvdG8tY292ZXJcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmX19jb250IHtcclxuICAgICAgICAvLyBtYXgtd2lkdGg6IDQ1MHB4O1xyXG4gICAgICAgICYtdGl0bGUge1xyXG4gICAgICAgICAgICB0ZXh0LXdyYXA6IGJhbGFuY2VcclxuICAgICAgICB9XHJcbiAgICAgICAgJi10ZXh0IHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjVweDtcclxuICAgICAgICAgICAgPiAqICsgKiB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHVsIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjRweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICAmICsgbGkge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwOyB0b3A6IDhweDtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTRweDsgaGVpZ2h0OiAxcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcclxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICZfX2JvdHRvbSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgIH1cclxuICAgICZfX2J1dHRvbnMge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDQwcHg7XHJcbiAgICB9XHJcbiAgICAmX19nZW5yZSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcclxuICAgICAgICAmLWxpc3Qge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgICAgICAgICB1bCB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGdhcDogMTBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDExcHggMThweDtcclxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTFweCAxMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLXRhYmxldCkge1xyXG4gICAgICAgICZfX2JnaW1nIHtcclxuICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIFxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQtc20pIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xyXG4gICAgICAgICZfX2lubmVyIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIC0xKiRwZC1jb250YWluZXI7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgJHBkLWNvbnRhaW5lcjtcclxuICAgICAgICAgICAgbWluLWhlaWdodDogMXB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19jb250IHtcclxuICAgICAgICAgICAgdWwge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fZ2VucmUge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xyXG4gICAgICAgICAgICAmLWxpc3Qge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTZweDtcclxuICAgICAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2FkdmFudHMge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2FkdmFudCB7XHJcbiAgICAgICAgICAgIGdhcDogMTBweDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xyXG4gICAgICAgICAgICAmICsgJiB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtaWNvbiB7XHJcbiAgICAgICAgICAgICAgICAvLyB3aWR0aDogMzBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLXRleHQge1xyXG4gICAgICAgICAgICAgICAgLy8gbWFyZ2luLXRvcDogNHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2JnaW1nIHtcclxuICAgICAgICAgICAgcmlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgIHdpZHRoOiA1NTBweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAyMTVweDtcclxuICAgICAgICAgICAgbGVmdDogLTIwcHg7XHJcbiAgICAgICAgICAgIHRvcDogLTEwMHB4O1xyXG4gICAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uYV9hZHZhbnQge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNzBweDtcclxuICAgICZfX2l0ZW0ge1xyXG4gICAgICAgIG1heC13aWR0aDogOTMwcHg7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBnYXA6IDIwcHg7XHJcbiAgICAgICAgJiArICYge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLXRpdGxlIHtcclxuICAgICAgICAgICAgZmxleDogMCAwIGF1dG87XHJcbiAgICAgICAgICAgIHdpZHRoOiAyNTBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi10ZXh0IHtcclxuICAgICAgICAgICAgZmxleDogMSAwIDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQtc20pIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xyXG4gICAgICAgICZfX2l0ZW0ge1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICBnYXA6IDE1cHg7XHJcbiAgICAgICAgICAgICYgKyAmIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDI1cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi10aXRsZSB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLXRleHQge1xyXG4gICAgICAgICAgICAgICAgZmxleDogMSAwIDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLmFfdGVhbSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA3MHB4O1xyXG4gICAgJl9faXRlbXMge1xyXG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMS4xZnI7XHJcbiAgICAgICAgZ3JpZC1nYXA6IDMwcHggMTVweDtcclxuICAgICAgICB3aWR0aDogMTEwJTtcclxuICAgIH1cclxuICAgICZfX2l0ZW0ge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBnYXA6IDMwcHg7XHJcbiAgICAgICAgJi1waG90byB7XHJcbiAgICAgICAgICAgIGZsZXg6IDAgMCBhdXRvO1xyXG4gICAgICAgICAgICB3aWR0aDogMTkwcHg7IGhlaWdodDogMjgwcHg7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmY7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBob3RvLWNvdmVyXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi1pbmZvIHtcclxuICAgICAgICAgICAgZmxleDogMSAwIDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtbmFtZSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi10ZXh0IHtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiA0NTBweDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogbGgoMTgsIDE1KTtcclxuICAgICAgICAgICAgdGV4dC13cmFwOiBiYWxhbmNlO1xyXG4gICAgICAgICAgICA+ICoge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtZGVza3RvcC1sZykge1xyXG4gICAgICAgICZfX2l0ZW1zIHtcclxuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtbW9iaWxlLWxnKSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcclxuICAgICAgICAmX19pdGVtIHtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5hX2NvbnRhY3RzIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgICAmX19pbm5lciB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xyXG4gICAgICAgICYucGRsLS1zbSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmX190IHtcclxuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgfVxyXG4gICAgJl9fY29scyB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgZ2FwOiA1MHB4O1xyXG4gICAgfVxyXG4gICAgJl9fY29sIHtcclxuICAgICAgICAmLWxhYmVsIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmX19zaWduIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDglIDAgMTYlO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB6LWluZGV4OiAyO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMzZweDtcclxuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICAmLWltZyB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICB3aWR0aDogNTUlO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBob3RvLWNvdmVyO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQtc20pIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgICZfX2lubmVyIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19jb2xzIHtcclxuICAgICAgICAgICAgZ2FwOiAzNXB4O1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19jb2wge1xyXG4gICAgICAgICAgICAmLWxhYmVsIHtcclxuICAgICAgICAgICAgICAgIGJyIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5idG4ge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDQ4MHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX3NpZ24ge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA1MHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwIDAgNTAlO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDIxcHg7XHJcbiAgICAgICAgICAgICYtaW1nIHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgdG9wOiAzMHB4O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDQ5JTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA4NSU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5tX21pc3Npb24ge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDtcclxuICAgICZfX2lubmVyIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XHJcbiAgICB9XHJcbiAgICAmX19pdGVtIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgZ2FwOiAxMHB4O1xyXG4gICAgICAgICYgKyAmIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1pY29uIHtcclxuICAgICAgICAgICAgZmxleDogMCAwIGF1dG87XHJcbiAgICAgICAgICAgIHdpZHRoOiAyNXB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLXRleHQge1xyXG4gICAgICAgICAgICBiIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLXRhYmxldC1zbSkge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XHJcbiAgICAgICAgJl9faW5uZXIge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4ubV9hc3BlY3RzIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICAmX193cmFwIHtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcclxuICAgICAgICBtYXgtd2lkdGg6IDkwMHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvbV9hc3BlY3RzLWltZy5qcGcpIG5vLXJlcGVhdCBjZW50ZXI7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICAgIH1cclxuICAgICZfX2lubmVyIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XHJcbiAgICB9XHJcbiAgICAmX19pdGVtIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDM1MHB4O1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmY7XHJcbiAgICAgICAgcGFkZGluZzogMTJweCAyMHB4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICAgICAgJiArICYge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtdGFibGV0LXNtKSB7XHJcbiAgICAgICAgJl9fd3JhcCB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAtMSokcGQtY29udGFpbmVyO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwICRwZC1jb250YWluZXIgNDZweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9faW5uZXIge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuLmFydGlzdCB7XHJcbiAgICBwYWRkaW5nOiAxNDBweCAwIDkwcHg7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgJl9fY2Fyb3VzZWwge1xyXG4gICAgICAgIFxyXG4gICAgfVxyXG4gICAgJl9fY2Fyb3VzZWwge1xyXG4gICAgICAgIG92ZXJmbG93OiBpbml0aWFsO1xyXG4gICAgfVxyXG4gICAgJl9faXRlbSB7XHJcbiAgICAgICAgd2lkdGg6IDM0MHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgJi1waG90byB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEzMCU7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICAgICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBhYnMtYWxsO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDBkZWcsIHJnYmEoMCwgMCwgMCwgMC43OSkgMC4zNiUsIHJnYmEoMCwgMCwgMCwgMC4wMCkgNTIuNzQlKTtcclxuICAgICAgICAgICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLWl0cGgge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBwaG90by1jb3ZlcjtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1zb2NpYWwge1xyXG4gICAgICAgICAgICAvLyBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIC8vIGxlZnQ6IDIwcHg7XHJcbiAgICAgICAgICAgIC8vIGJvdHRvbTogMjBweDtcclxuICAgICAgICAgICAgLy8gei1pbmRleDogNTtcclxuICAgICAgICAgICAgLnNvY2lhbF9faXRlbXMge1xyXG4gICAgICAgICAgICAgICAgZ2FwOiA2cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnNvY2lhbF9faXRlbSB7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHJnYmEoMjA5LCAyMDksIDIwOSwgMSk7XHJcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLW5hbWUge1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAwLjY7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjVweDtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgJi5mcy0tbWQge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYuZnMtLXNtIHtcclxuICAgICAgICAgICAgICAgIC8vIGZvbnQtc2l6ZTogMTdweDtcclxuICAgICAgICAgICAgICAgIC8vIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgICAgICAgICAvLyBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6aG92ZXIgJi1uYW1lIHtcclxuICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi10cyB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDE4cHg7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICAgICAgJi5hbC10b3Age1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi5tdC0tbWQge1xyXG4gICAgICAgICAgICAgICAgLy8gbWFyZ2luLXRvcDogMTBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLXR5cGUge1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAwLjc7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlLWluLW91dDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpob3ZlciAmLXR5cGUge1xyXG4gICAgICAgICAgICAvLyBvcGFjaXR5OiAxO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWlhbmltIHtcclxuICAgICAgICAgICAgb3BhY2l0eTogMC42O1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgICAgICAgLy8gZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICAgICAgPiAqICsgKiB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6aG92ZXIgJi1pYW5pbSB7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtZGVzYyB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIycHg7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyO1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAwLjY7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgLXdlYmtpdC1saW5lLWNsYW1wOiA0O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcclxuICAgICAgICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcclxuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpob3ZlciAmLWRlc2Mge1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWF1ZGlvIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgICAgICAgICAgPiAqIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICZfX3ZpZGVvIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgbGVmdDogMDsgdG9wOiAwO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBsZWZ0OiAwOyB0b3A6IDA7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLDAuMik7XHJcbiAgICAgICAgICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdmlkZW8ge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgICAgIG1pbi13aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgbWluLWhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIFxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1kZXNrdG9wLWxnKSB7XHJcbiAgICAgICAgcGFkZGluZzogODBweCAwIDYwcHg7XHJcbiAgICAgICAgJl9faXRlbSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAzMDBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtdGFibGV0KSB7XHJcbiAgICAgICAgcGFkZGluZzogNzBweCAwIDk2cHg7XHJcbiAgICAgICAgJl9faXRlbSB7XHJcbiAgICAgICAgICAgICYtcGhvdG8ge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMThweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLXRzIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1kZXNjIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEzcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLW1vYmlsZS1sZykge1xyXG4gICAgICAgICZfX2l0ZW1zIHtcclxuICAgICAgICAgICAgLnN3aXBlci13cmFwcGVyIHtcclxuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgICAgICBnYXA6IDQwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnN3aXBlci1uYXYge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmX19pdGVtcyAmX19pdGVtIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLW1vYmlsZS1zbXgpIHtcclxuICAgICAgICAmX19pdGVtIHtcclxuICAgICAgICAgICAgd2lkdGg6IDI4MHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2l0ZW1zICZfX2l0ZW0ge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgIH1cclxufVxyXG5cclxuXHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5cclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbi5hcnRpc3RkIHtcclxuICAgIHBhZGRpbmctYm90dG9tOiAxMjBweCAhaW1wb3J0YW50O1xyXG4gICAgLy8gYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9hcnRpc3QtZGV0YWlsLWJnLmpwZykgbm8tcmVwZWF0IGJvdHRvbSBjZW50ZXI7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAvLyBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgJl9fdmlkZW8ge1xyXG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgICAgICBsZWZ0OiAwOyB0b3A6IDA7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwdmg7XHJcbiAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBsZWZ0OiAwOyB0b3A6IDA7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLDAuNSk7XHJcbiAgICAgICAgICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdmlkZW8ge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgICAgIG1pbi13aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgbWluLWhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJl9fY29scyB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAvLyBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgICAgICBnYXA6IDE0MHB4O1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB6LWluZGV4OiA1O1xyXG4gICAgfVxyXG4gICAgJl9fbGVmdCB7XHJcbiAgICB9XHJcbiAgICAmX19waG90b3Mge1xyXG4gICAgICAgIGZsZXg6IDEgMCAwO1xyXG4gICAgICAgIG1heC13aWR0aDogNjgwcHg7XHJcbiAgICAgICAgbWluLXdpZHRoOiAxcHg7XHJcbiAgICAgICAgLy8gcG9zaXRpb246IHN0aWNreTtcclxuICAgICAgICAvLyB0b3A6IDEwcHg7XHJcbiAgICAgICAgJi1zdGlja3kge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogc3RpY2t5O1xyXG4gICAgICAgICAgICB0b3A6IDEwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJl9fc2xpZGVyIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgJi1pdGVtIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTA4JTtcclxuICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBob3RvLWNvdmVyO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJl9fdGh1bWJzIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICBib3R0b206IDIwcHg7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgcGFkZGluZzogMCAyMHB4O1xyXG4gICAgICAgIC5zd2lwZXItc2xpZGUge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMDAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWl0ZW0ge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA3MCU7XHJcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuODtcclxuICAgICAgICAgICAgLy8gJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgLy8gICAgIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsMC4yKTtcclxuICAgICAgICAgICAgLy8gICAgIEBpbmNsdWRlIGFicy1hbGw7XHJcbiAgICAgICAgICAgIC8vICAgICB6LWluZGV4OiAyO1xyXG4gICAgICAgICAgICAvLyAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgIC8vIH1cclxuICAgICAgICAgICAgLnN3aXBlci1zbGlkZS10aHVtYi1hY3RpdmUgJiB7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwaG90by1jb3ZlcjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIFxyXG4gICAgJl9faW5mbyB7XHJcbiAgICAgICAgZmxleDogMSAwIDA7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA2ODBweDtcclxuICAgIH1cclxuICAgICZfX2hlYWQge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcclxuICAgICAgICBnYXA6IDIwcHg7XHJcbiAgICB9XHJcbiAgICAmX19zb2NpYWwge1xyXG4gICAgICAgIHotaW5kZXg6IDU7XHJcbiAgICB9XHJcbiAgICAmX19uYW1lIHtcclxuICAgICAgICBmb250LXNpemU6IDI1cHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xyXG4gICAgfVxyXG4gICAgJl9fdHlwZSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMThweDtcclxuICAgICAgICBmb250LXNpemU6IDE1cHg7XHJcbiAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xyXG4gICAgfVxyXG4gICAgJl9fZGVzYyB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMjJweDtcclxuICAgIH1cclxuXHJcbiAgICAmX193aWRnZXRzIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiA2MHB4O1xyXG4gICAgICAgICYtaXRlbSB7XHJcbiAgICAgICAgICAgICYgKyAmIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgPiAqIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlOyBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB2aWRlbyB7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDM4MHB4O1xyXG4gICAgICAgICAgICB9IFxyXG4gICAgICAgICAgICAmX19uYW1lIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLWRlc2t0b3AtbGcpIHtcclxuICAgICAgICAmX19jb2xzIHtcclxuICAgICAgICAgICAgZ2FwOiA4MHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA4MHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtZGVza3RvcCkge1xyXG4gICAgICAgICZfX2NvbHMge1xyXG4gICAgICAgICAgICBnYXA6IDQwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLXRhYmxldCkge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDgwcHggIWltcG9ydGFudDtcclxuICAgICAgICAmX19jb2xzIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX3Bob3RvcyB7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogNjAwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2luZm8ge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA1MHB4O1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX3ZpZGVvIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLW1vYmlsZS1sZykge1xyXG4gICAgICAgIC8vIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgLmJhY2tfbGluayB7XHJcbiAgICAgICAgICAgIC8vIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgLy8gbGVmdDogJHBkLWNvbnRhaW5lcjsgdG9wOiAkaGVhZGVyLWgtbSsyMHB4O1xyXG4gICAgICAgICAgICAvLyB6LWluZGV4OiAyMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fcGhvdG9zIHtcclxuICAgICAgICAgICAgLy8gbWFyZ2luOiAtMSokaGVhZGVyLWgtbSAtMSokcGQtY29udGFpbmVyIDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX3RodW1icyB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMzBweCAtMSokcGQtY29udGFpbmVyIDA7XHJcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgICAgICAmLWl0ZW0ge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDU1JTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmX19zbGlkZXItbmF2IHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBsZWZ0OiAkcGQtY29udGFpbmVyOyBib3R0b206IDIwcHg7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDMwMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9faW5mbyB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuXHJcblxyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5cclxuLm9yZGZvcm0ge1xyXG4gICAgcGFkZGluZzogMTQwcHggMDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICYucGQtLW1kIHtcclxuICAgICAgICBwYWRkaW5nOiAxMTVweCAwO1xyXG4gICAgfVxyXG4gICAgJl9faW5uZXIge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgZ2FwOiA0MHB4O1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB6LWluZGV4OiA1O1xyXG4gICAgfVxyXG4gICAgJl9fdGl0bGUge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogNjBweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS4xO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgJi5mcy0tbWQge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDQwcHg7XHJcbiAgICAgICAgICAgIHRleHQtd3JhcDogYmFsYW5jZVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICZfX2J1dHRvbnMge1xyXG4gICAgICAgIGZsZXg6IDAgMCBhdXRvO1xyXG4gICAgfVxyXG4gICAgJl9fdmlkZW8ge1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgQGluY2x1ZGUgYWJzLWFsbDtcclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7IHRvcDogMDtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgei1pbmRleDogMjtcclxuICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsMC4yKTtcclxuICAgICAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICB2aWRlbyB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBcclxuICAgICZfX3Njcm9sbHRvcCB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICB0b3A6IDEwMCU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgICAgICAgd2lkdGg6IDQwcHg7IGhlaWdodDogNDBweDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xyXG4gICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjMzAzMDMwO1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgICAgIGNvbG9yOiAjNzA3MDcwO1xyXG4gICAgICAgIHotaW5kZXg6IDEwO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAuaWNvbiB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxNHB4OyBoZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XHJcbiAgICAgICAgICAgIHRvcDogLTJweDtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLWRlc2t0b3AtbGcpIHtcclxuICAgICAgICBwYWRkaW5nOiAxMjBweCAwO1xyXG4gICAgICAgICYucGQtLW1kIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMTAwcHggMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fdGl0bGUge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDQ0cHg7XHJcbiAgICAgICAgICAgICYuZnMtLW1kIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMzZweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtdGFibGV0KSB7XHJcbiAgICAgICAgei1pbmRleDogMjA7XHJcbiAgICAgICAgJl9fdGl0bGUge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDM0cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1tb2JpbGUtbGcpIHtcclxuICAgICAgICBwYWRkaW5nOiAxMTBweCAwIDgwcHg7XHJcbiAgICAgICAgJi5wZC0tbWQge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA4MHB4IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX3RpdGxlIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgICAgICAgICAmLmZzLS1tZCB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDI1cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5cclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuLm5ld3Mge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgJi0tYmcge1xyXG4gICAgICAgIHBhZGRpbmc6IDE4MHB4IDAgNjBweDtcclxuICAgIH1cclxuICAgIC5jb250YWluZXIge1xyXG4gICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XHJcbiAgICB9XHJcbiAgICAmX19pbm5lciB7XHJcbiAgICAgICAgd2lkdGg6IDUwJTtcclxuICAgICAgICBtYXgtd2lkdGg6IDYwMHB4O1xyXG4gICAgfVxyXG4gICAgJl9faXRlbWwge1xyXG4gICAgICAgIC8vIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAmICsgJiB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDYwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtd3JhcCB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcclxuICAgICAgICAgICAgb3BhY2l0eTogMC40O1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgei1pbmRleDogMjsgICAgIFxyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiAwOyB0b3A6IDA7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMHB4OyBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLmFjdGl2ZSAmLXdyYXAge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAzcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi10aXRsZSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjVweDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtZGF0ZSB7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuNztcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xyXG4gICAgICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEycHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtZGVzYyB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDI1cHg7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyO1xyXG4gICAgICAgICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDQ7IFxyXG4gICAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsgXHJcbiAgICAgICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7IFxyXG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOyBcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1tbGluayB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGFicy1hbGw7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWJnIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYWJzLWFsbDtcclxuICAgICAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiAwOyB0b3A6IDA7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KGVsbGlwc2UgYXQgMTEwJSA2MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMCUsICMwMDAgNTUlLCAjMDAwIDEwMCUpO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9uZXdzLWJnLnBuZykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcclxuICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcGhvdG8tY292ZXI7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi5hY3RpdmUgJi1iZyB7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgfVxyXG4gICAgfSBcclxuXHJcbiAgICAmX19pdGVtcyB7XHJcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcclxuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xyXG4gICAgICAgIGdyaWQtZ2FwOiA0MHB4O1xyXG4gICAgfVxyXG4gICAgJl9faXRlbSB7XHJcbiAgICAgICAgYm9yZGVyOiAzcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwwLjUpO1xyXG4gICAgICAgIHBhZGRpbmc6IDQwcHg7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogI2ZmZjtcclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICAgICAgJi10aXRsZSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjVweDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtZGF0ZSB7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuODtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xyXG4gICAgICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtZGVzYyB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyO1xyXG4gICAgICAgICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDI7IFxyXG4gICAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsgXHJcbiAgICAgICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7IFxyXG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOyBcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1kZXNrdG9wLWxnKSB7XHJcbiAgICAgICAgJi0tYmcge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxMDBweCAwIDYwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICAgICBcclxuICAgICAgICAmX19pdGVtbCB7XHJcbiAgICAgICAgICAgIC8vIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgJiArICYge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLWRlc2Mge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJl9faXRlbXMge1xyXG4gICAgICAgICAgICBncmlkLWdhcDogMzBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9faXRlbSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDMwcHg7XHJcbiAgICAgICAgICAgICYtdGl0bGUge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1kZXNrdG9wKSB7XHJcbiAgICAgICAgJl9faXRlbXMge1xyXG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLXRhYmxldCkge1xyXG4gICAgICAgICYtLWJnIHtcclxuICAgICAgICAgICAgcGFkZGluZzogOTBweCAwIDYwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX25hdiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2lubmVyIHtcclxuICAgICAgICAgICAgd2lkdGg6IDcwJTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICZfX2l0ZW0ge1xyXG4gICAgICAgICAgICAmLXRpdGxlIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1kZXNjIHtcclxuICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgLXdlYmtpdC1saW5lLWNsYW1wOiA0OyBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIFxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQtc20pIHtcclxuICAgICAgICAmX19pbm5lciB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19pdGVtbCB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNSU7XHJcbiAgICAgICAgICAgICYtd3JhcCB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1iZyB7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiAtMSokcGQtY29udGFpbmVyOyB0b3A6IC02MHB4O1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDIqJHBkLWNvbnRhaW5lcik7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwJSArIDIqNjBweCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICAgICAgJl9faXRlbXMge1xyXG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcclxuICAgICAgICAgICAgZ3JpZC1nYXA6IDQwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2l0ZW0ge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAzMnB4IDMycHggNDBweDtcclxuICAgICAgICAgICAgJi10aXRsZSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1kYXRlIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDIycHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1kZXNjIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDE2cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5cclxuXHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5cclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbi5uZXdzZCB7XHJcbiAgICAuY29udGFpbmVyIHtcclxuICAgICAgICB6LWluZGV4OiAyO1xyXG4gICAgfVxyXG4gICAgJl9faGVhZCB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgICB9XHJcbiAgICAmX19iZyB7XHJcbiAgICAgICAgLy8gYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICAgICAgICAvLyBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgIC8vIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGxlZnQ6IDA7IHRvcDogLTEqJGhlYWRlci1oIC0gMjBweDtcclxuICAgICAgICB3aWR0aDogMTAwJTsgaGVpZ2h0OiBjYWxjKDEwMCUgKyAkaGVhZGVyLWggKyAyMHB4KTtcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGFicy1hbGw7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvYmx1ci5wbmcpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG4gICAgICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMjVweCk7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBwaG90by1jb3ZlcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fdGl0bGUge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjVweDtcclxuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS4xO1xyXG4gICAgfVxyXG4gICAgJl9fcHJvcHMge1xyXG4gICAgICAgIC8vIG1hcmdpbi10b3A6IDMwcHg7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBnYXA6IDBweCAzMHB4O1xyXG4gICAgfVxyXG4gICAgJl9fZGF0ZSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgcGFkZGluZzogMTBweCAyMHB4O1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmY7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xyXG4gICAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgaSB7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJl9fYXVkaW8ge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICB9XHJcbiAgICAmX19zb2NpYWwge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICAgICAgLnNvY2lhbF9faXRlbSB7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgIC5pY29uIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA0MHB4OyBoZWlnaHQ6IDQwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmX19pbnRybyB7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcclxuICAgIH1cclxuICAgICZfX3NsaWRlciB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogNTBweDtcclxuICAgIH1cclxuICAgICZfX3Bob3RvIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDUwJTtcclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBwaG90by1jb3ZlclxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICZfX2NvbnRlbnQge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQtc20pIHtcclxuICAgICAgICAmX19zbGlkZXIge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19jb250ZW50IHtcclxuICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogMTBweCAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGltZzpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5cclxuXHJcblxyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4uY29udGFjdHMge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIG1pbi1oZWlnaHQ6IGNhbGModmFyKC0tdmgpICogMTAwKTtcclxuICAgIG1hcmdpbi10b3A6IC0xKiRoZWFkZXItaDtcclxuICAgICZfX2FzaWRlIHtcclxuICAgICAgICB3aWR0aDogMjclO1xyXG4gICAgICAgIG1heC13aWR0aDogNTAwcHg7XHJcbiAgICAgICAgZmxleDogMCAwIGF1dG87XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHotaW5kZXg6IDUwMDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjMDAwO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBwYWRkaW5nOiAzMHB4IDAgNTBweDtcclxuICAgIH1cclxuICAgICZfX2luZm8ge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgNTBweCAwIDI3JTtcclxuICAgIH1cclxuICAgICZfX2xvZ28ge1xyXG4gICAgICAgIG1heC13aWR0aDogMTUwcHg7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMjBweDtcclxuICAgIH1cclxuICAgICZfX2l0ZW0ge1xyXG4gICAgICAgICYgKyAmIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1sYWJlbCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE4cHg7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi12YWwge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBnYXA6IDEwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtaWNvbiB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAyMXB4O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICZfX3NvY2lhbCB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMjdweDtcclxuICAgICAgICBcclxuICAgICAgICAmLXR0IHtcclxuICAgICAgICAgICAgY29sb3I6IHJnYmEoMjI1LCAyMjUsIDIyNSwgMSk7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnNvY2lhbF9faXRlbXMge1xyXG4gICAgICAgICAgICBnYXA6IDEwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5pY29uIHtcclxuICAgICAgICAgICAgZmxleDogMCAwIGF1dG87XHJcbiAgICAgICAgICAgIGhlaWdodDogMzBweDsgd2lkdGg6IDMwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5pY29uLS15b3V0dWJlIHtcclxuICAgICAgICAgICAgd2lkdGg6IDQxcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuXHJcbiAgICAmX19jb3B5IHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgYm90dG9tOiA0MHB4O1xyXG4gICAgICAgIGxlZnQ6IDI3JTtcclxuICAgICAgICBmb250LXNpemU6IDEwcHg7XHJcbiAgICAgICAgY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsMC43KTtcclxuICAgIH1cclxuXHJcbiAgICAmX19tYXAge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBmbGV4OiAxIDAgMDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjMDAwO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgPiAqIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIHRvcDogMDsgbGVmdDogMDtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIFtjbGFzcyo9Y29udHJvbHNfX2NvbnRyb2xdIHtcclxuICAgICAgICAgICAgaW5zZXQ6IDE4MHB4IGF1dG8gYXV0byAxMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtYmFsbG9uIHtcclxuICAgICAgICAgICAgLy8gZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgLy8gZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgLy8ganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgIC8vIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XHJcbiAgICAgICAgICAgIHdpZHRoOiAyNzBweDtcclxuICAgICAgICAgICAgcGFkZGluZzogMzJweDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDI1cHg7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAmX19sYWJlbCB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEwcHg7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjY7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IGJsYWNrO1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIFxyXG4gICAgJl9fbWVudSB7XHJcbiAgICAgICAgbGkgKyBsaSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgICBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwgMC43KTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgbGkuYWN0aXZlIGEge1xyXG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLWRlc2t0b3AtbGcpIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAtMSokaGVhZGVyLWgtZDtcclxuICAgICAgICAmX19hc2lkZSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAyNSU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2luZm8ge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwJTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fbG9nbyB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDkwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2NvcHkge1xyXG4gICAgICAgICAgICBsZWZ0OiAyMCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtZGVza3RvcCkge1xyXG4gICAgICAgICZfX2FzaWRlIHtcclxuICAgICAgICAgICAgd2lkdGg6IDI3JTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9faW5mbyB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMzBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fY29weSB7XHJcbiAgICAgICAgICAgIGxlZnQ6IDMwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtdGFibGV0KSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgLmNvbnRhaW5lciB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2FzaWRlIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogODBweDtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2xvZ28ge1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0byA2MHB4O1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBibGFjaztcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiA0MDBweDtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAxMDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX21lbnUge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19pdGVtIHtcclxuICAgICAgICAgICAgJi12YWwge1xyXG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fc29jaWFsIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuNTtcclxuICAgICAgICAgICAgJi10dCB7XHJcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDsgIFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2NvcHkge1xyXG4gICAgICAgICAgICBib3R0b206IDM1cHg7IGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwICRwZC1jb250YWluZXI7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDEwO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19tYXAge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDM4MHB4O1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBbY2xhc3MqPWNvbnRyb2xzX19jb250cm9sXSB7XHJcbiAgICAgICAgICAgICAgICBpbnNldDogMTEwcHggYXV0byBhdXRvIDEwcHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiAwOyBib3R0b206IC0ycHg7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTsgaGVpZ2h0OiA1cHg7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMDAwO1xyXG4gICAgICAgICAgICAgICAgei1pbmRleDogMjA7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtbW9iaWxlLWxnKSB7XHJcbiAgICAgICAgJl9fbG9nbyB7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogMTUwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX21hcCB7XHJcbiAgICAgICAgICAgIGhlaWdodDogNDUwcHg7XHJcbiAgICAgICAgICAgIC8vID4gKiB7XHJcbiAgICAgICAgICAgIC8vICAgICBoZWlnaHQ6IDExMCU7XHJcbiAgICAgICAgICAgIC8vICAgICBtYXJnaW4tdG9wOiAtMTAlO1xyXG4gICAgICAgICAgICAvLyB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX21hcC1iYWxsb24ge1xyXG4gICAgICAgICAgICB3aWR0aDogMjAwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHg7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC0xMDAlKTtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTQwcHg7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuXHJcblxyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4uY29uY2VydHMge1xyXG4gICAgcGFkZGluZzogNTBweCAwO1xyXG4gICAgJl9fYmxvY2tzIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgb3BhY2l0eTogMC40O1xyXG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0OyAgXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7IHRvcDogMDtcclxuICAgICAgICAgICAgd2lkdGg6IDBweDsgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuaG92ZXIge1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAzcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgQG1lZGlhIChhbnktaG92ZXI6IGhvdmVyKSB7XHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjVweDtcclxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogM3B4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9IFxyXG4gICAgICAgICAgICBcclxuICAgICAgICB9XHJcbiAgICAgICAgJiArICYge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA1MHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWhlYWQge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDI1cHg7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtcm93IHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgZ2FwOiAxNXB4O1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcclxuICAgICAgICAgICAgJiArICYge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLWNvbCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGdhcDogMTVweDtcclxuICAgICAgICAgICAgJi1mIHtcclxuICAgICAgICAgICAgICAgIGZsZXg6IDEgMCAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtbCB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA1MDBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLWRhdGUge1xyXG4gICAgICAgICAgICBmbGV4OiAwIDAgYXV0bztcclxuICAgICAgICAgICAgd2lkdGg6IDE0MHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLW5hbWUge1xyXG4gICAgICAgICAgICBmbGV4OiAxIDAgMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1jaXR5IHtcclxuICAgICAgICAgICAgZmxleDogMCAwIGF1dG87XHJcbiAgICAgICAgICAgIHdpZHRoOiA0NSU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtYWRkcmVzcyB7XHJcbiAgICAgICAgICAgIGZsZXg6IDAgMCBhdXRvO1xyXG4gICAgICAgICAgICB3aWR0aDogNTUlO1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDI1MHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWJ0biB7XHJcbiAgICAgICAgICAgIGZsZXg6IDAgMCBhdXRvO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICZfX25hdiB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtZGVza3RvcCkge1xyXG4gICAgICAgICZfX2Jsb2NrcyB7XHJcbiAgICAgICAgICAgICYtcm93IHtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1jb2wge1xyXG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgICAgICAgICAgZ2FwOiA3cHg7XHJcbiAgICAgICAgICAgICAgICAmLWwge1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzMCU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1uYW1lIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1jaXR5LCAmLWFkZHJlc3Mge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLXRhYmxldCkge1xyXG4gICAgICAgICZfX2Jsb2NrcyB7XHJcbiAgICAgICAgXHJcbiAgICAgICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDNweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtdGFibGV0LXNtKSB7XHJcbiAgICAgICAgJl9fYmxvY2tzIHtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBpbml0aWFsO1xyXG4gICAgICAgICAgICAmLnNob3cge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1oZWFkIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1yb3cge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgICAgIGdhcDogMTBweDtcclxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogLTEwcHg7IHRvcDogMDtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMHB4OyBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcclxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAycHg7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtY29sIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjhweDtcclxuICAgICAgICAgICAgICAgIGZsZXg6IDAgMCBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLWNlbGwge1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC41O1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLXJvdy5hY3RpdmUgJi1jZWxsIHtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1uYW1lIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAyM3B4KTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMjNweDtcclxuICAgICAgICAgICAgICAgIC8vb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLWJ0biB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG4gICAgICAgICAgICAgICAgLmJ0biB7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMjNweDtcclxuICAgICAgICAgICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmX19uYXYge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBnYXA6IDUwcHg7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBhdXRvO1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgLTEqJHBkLWNvbnRhaW5lciAyOHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwICRwZC1jb250YWluZXIgNXB4O1xyXG4gICAgICAgICAgICAmLWxpbmsge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC40O1xyXG4gICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6ICBub3dyYXA7XHJcbiAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcblxyXG5cclxuXHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5cclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbi5sYXNzaXN0IHtcclxuICAgICZfX2NvbHMge1xyXG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMS4xZnI7XHJcbiAgICAgICAgZ3JpZC1nYXA6IDgwcHg7XHJcbiAgICB9XHJcbiAgICAmX19waG90byB7XHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHN0aWNreTtcclxuICAgICAgICAgICAgdG9wOiAxMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICZfX3RleHQge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICB9XHJcbiAgICAmX19jb25zdWx0IHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gICAgICAgICYtY29scyB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICAgICAgZ2FwOiA2NHB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWFjdGlvbiB7XHJcbiAgICAgICAgICAgIGZsZXg6IDAgMCBhdXRvO1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA1cHg7XHJcbiAgICAgICAgICAgIC5idG4ge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDIyMHB4OyBoZWlnaHQ6IDQ2cHg7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItd2lkdGg6IDJweDtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtZW1haWwge1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmX19hZHZhbnQge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XHJcbiAgICAgICAgJi1pbm5lciB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjdweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1pdGVtIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgZ2FwOiAxMHB4O1xyXG4gICAgICAgICAgICAmICsgJiB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICZfX2ljb24ge1xyXG4gICAgICAgICAgICAgICAgZmxleDogMCAwIGF1dG87XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMjVweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmX190ZXh0IHtcclxuICAgICAgICAgICAgICAgIGIge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmX193YXJuIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xyXG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNGRkY7XHJcbiAgICAgICBwYWRkaW5nOiAzMnB4IDQycHggMzJweCAyOHB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtZGVza3RvcC1sZykge1xyXG4gICAgICAgICZfX2NvbHMge1xyXG4gICAgICAgICAgICBncmlkLWdhcDogNDBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fY29uc3VsdCB7XHJcbiAgICAgICAgICAgICYtY29scyB7XHJcbiAgICAgICAgICAgICAgICBnYXA6IDIwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLWRlc2t0b3ApIHtcclxuICAgICAgICAmX19jb2xzIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX3Bob3RvIHtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiA2ODBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9faW5mbyB7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogNzQwcHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDYwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1tb2JpbGUtbGcpIHtcclxuICAgICAgICAmX19pbmZvIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fY29uc3VsdCB7XHJcbiAgICAgICAgICAgICYtY29scyB7XHJcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XHJcbiAgICAgICAgICAgICAgICBnYXA6IDMwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1hY3Rpb24ge1xyXG4gICAgICAgICAgICAgICAgLmJ0biB7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fYWR2YW50IHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICAgICAgICAgICAgJi1pbm5lciB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fd2FybiB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDMycHggMjBweCAzNnB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcblxyXG5cclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuLmFuaW1kIHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAmX19waG90byB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTAwcHg7XHJcbiAgICB9XHJcbiAgICAuc2VjdGlvbl9faGVhZCB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgIH1cclxuICAgIC5zZWN0aW9uX190aXRsZSB7XHJcbiAgICAgICAgbWluLWhlaWdodDogODBweDtcclxuICAgIH1cclxuICAgICZfX2Rlc2Mge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgICB9XHJcbiAgICAmX19sYW5nIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gICAgfVxyXG4gICAgJl9faW5mbyB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA4NzdweDtcclxuICAgIH1cclxuICAgICZfX3RleHQge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcclxuICAgICAgICA+ICogKyAqIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmX19idXR0b25zIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICBtYXJnaW4tdG9wOiA2MHB4O1xyXG4gICAgICAgIC5idG4ge1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDQ2cHg7XHJcbiAgICAgICAgICAgIG1pbi13aWR0aDogMzE1cHg7XHJcbiAgICAgICAgICAgIGJvcmRlci13aWR0aDogMnB4O1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICBAbWVkaWEgKGhvdmVyOiBob3Zlcikge1xyXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogYmxhY2s7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmX19hd2FyZHMge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMDBweDtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgICYtY29scyB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtaW5mbyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA3MDBweDtcclxuICAgICAgICAgICAgZmxleDogMCAwIGF1dG87XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgei1pbmRleDogMTA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtaXRlbSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgICAgICBnYXA6IDIwcHg7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcclxuICAgICAgICAgICAgJiArICYge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmX195ZWFyIHtcclxuICAgICAgICAgICAgICAgIGZsZXg6IDAgMCBhdXRvO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMHB4O1xyXG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogNDZweDtcclxuICAgICAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNGRkZGRkY7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogNXB4O1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICZfX2luZm8ge1xyXG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogNDZweDtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJl9fbmFtZSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA4cHg7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtcGhvdG8ge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIGZsZXg6IDEgMCAwO1xyXG4gICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDE4MCU7XHJcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IGluaXRpYWw7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiAwOyB0b3A6IDA7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMTAlLCAtMTAwcHgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtZGVza3RvcC1sZykge1xyXG4gICAgICAgICZfX2F3YXJkcyB7XHJcbiAgICAgICAgICAgICYtcGhvdG8ge1xyXG4gICAgICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjUwJTtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMTUlLCAwKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtZGVza3RvcCkge1xyXG4gICAgICAgICZfX3Bob3RvIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogODBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fYXdhcmRzIHtcclxuICAgICAgICAgICAgJi1pbmZvIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA1MDBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLXBob3RvIHtcclxuICAgICAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE5MCU7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTEwJSwgMCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLXRhYmxldCkge1xyXG4gICAgICAgICZfX2F3YXJkcyB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgICYtY29scyB7XHJcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1pbmZvIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA3MDBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLXBob3RvIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMTAlO1xyXG4gICAgICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTI1JTtcclxuICAgICAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1tb2JpbGUtbGcpIHtcclxuICAgICAgICAmX19waG90byB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAtMSokcGQtY29udGFpbmVyIDMwcHg7XHJcbiAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuc2VjdGlvbl9fdGl0bGUge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE5cHg7XHJcbiAgICAgICAgICAgIGRpdiArIGRpdiB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2J1dHRvbnMge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgICAgICAuYnRuIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA0ODBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmX19hd2FyZHMge1xyXG4gICAgICAgICAgICAmLWl0ZW0ge1xyXG4gICAgICAgICAgICAgICAgZ2FwOiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgJl9feWVhciB7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDczcHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1waG90byB7XHJcbiAgICAgICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuXHJcblxyXG5cclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuLndvcmtzaG9wIHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAmX19jb2xzIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgICAgICBnYXA6IDMwcHg7XHJcbiAgICB9XHJcbiAgICAmX19ib2R5IHtcclxuICAgICAgICBmbGV4OiAxIDAgMDtcclxuICAgIH1cclxuICAgICZfX2luZm8ge1xyXG4gICAgICAgIG1heC13aWR0aDogNjAwcHg7XHJcbiAgICB9XHJcbiAgICAmX19pbnRybyB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyNXB4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgfVxyXG4gICAgJl9fdGV4dCB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcclxuICAgICAgICA+ICogKyAqIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmX19hY3R0IHtcclxuICAgICAgICBmb250LXNpemU6IDE5cHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgICBtYXJnaW4tdG9wOiA0MHB4XHJcbiAgICB9XHJcbiAgICAmX19hY3Rpb24ge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDQwcHg7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGdhcDogNTBweDtcclxuICAgIH1cclxuICAgICZfX3NvY2lhbCB7XHJcbiAgICAgICAgZmxleDogMCAwIGF1dG87XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBnYXA6IDEwcHg7XHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGxpbmVhcjtcclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogNDZweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICZfX2ltZyB7XHJcbiAgICAgICAgZmxleDogMCAwIGF1dG87XHJcbiAgICAgICAgd2lkdGg6IDUyJTtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLWRlc2t0b3AtbGcpIHtcclxuICAgICAgICAmX19pbnRybyB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fYWN0dCB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLWRlc2t0b3AtbWQpIHtcclxuICAgICAgICAmX19pbnRybyB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fdGV4dCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2FjdHQge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2FjdGlvbiB7XHJcbiAgICAgICAgICAgIGdhcDogNTBweDtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLWRlc2t0b3ApIHtcclxuICAgICAgICAmX19jb2xzIHtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgZ2FwOiAxMDBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9faW50cm8ge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDI1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2FjdGlvbiB7XHJcbiAgICAgICAgICAgIGdhcDogMzBweDtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fYWN0dCB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTlweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9faW1nIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogOTAwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQtc20pIHtcclxuICAgICAgICAuc25hdl9fbGlzdCB7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19jb2xzIHtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19ib2R5IHtcclxuICAgICAgICAgICAgXHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2FjdGlvbiB7XHJcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1tb2JpbGUtbGcpIHtcclxuICAgICAgICBcclxuICAgICAgICAmX19pbnRybyB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9faW1nIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAzMHB4IC0xKiRwZC1jb250YWluZXIgMDtcclxuICAgICAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2FjdGlvbiB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDMycHg7XHJcbiAgICAgICAgICAgIGdhcDogMzJweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fYnV0dG9ucyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcblxyXG5cclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuLm13c19pdGVtcyB7XHJcbiAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcclxuICAgIGdyaWQtZ2FwOiAyMHB4O1xyXG59XHJcbi5td3NfaXRlbSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBwYWRkaW5nOiAyMHB4IDJweDtcclxuICAgIG1pbi1oZWlnaHQ6IDE1NXB4O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgI2ZmZjtcclxuICAgICYtdGl0bGUge1xyXG5cclxuICAgIH1cclxuICAgICYtdGV4dCB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgd2lkdGg6IDIxcHg7IGhlaWdodDogOHB4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHdpZHRoPScyMScgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgMjEgOCcgZmlsbD0nbm9uZScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzRSUzQ3BhdGggZD0nTTIwLjM1MzYgNC4wMzUxOUMyMC41NDg4IDMuODM5OTMgMjAuNTQ4OCAzLjUyMzM1IDIwLjM1MzYgMy4zMjgwOUwxNy4xNzE2IDAuMTQ2MTA3QzE2Ljk3NjMgLTAuMDQ5MTU1NSAxNi42NTk3IC0wLjA0OTE1NTUgMTYuNDY0NSAwLjE0NjEwN0MxNi4yNjkyIDAuMzQxMzY5IDE2LjI2OTIgMC42NTc5NTEgMTYuNDY0NSAwLjg1MzIxNEwxOS4yOTI5IDMuNjgxNjRMMTYuNDY0NSA2LjUxMDA3QzE2LjI2OTIgNi43MDUzMyAxNi4yNjkyIDcuMDIxOTEgMTYuNDY0NSA3LjIxNzE3QzE2LjY1OTcgNy40MTI0NCAxNi45NzYzIDcuNDEyNDQgMTcuMTcxNiA3LjIxNzE3TDIwLjM1MzYgNC4wMzUxOVpNMCAzLjY4MTY0VjQuMTgxNjRIMjBWMy42ODE2NFYzLjE4MTY0SDBWMy42ODE2NFonIGZpbGw9J3doaXRlJy8lM0UlM0Mvc3ZnJTNFJTBBXCIpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMCUpO1xyXG4gICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiAkbWQtdGFibGV0KSB7XHJcbiAgICAubXdzX2l0ZW1zIHtcclxuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcclxuICAgIH1cclxufVxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4ubXdzX2dhbGxlcnkge1xyXG4gICAgJl9faXRlbXMge1xyXG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAyZnIgMWZyO1xyXG4gICAgICAgIGdyaWQtZ2FwOiAxMHB4O1xyXG4gICAgfVxyXG4gICAgJl9faXRlbSB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1NSU7XHJcbiAgICAgICAgJi5pdGVtLS1sZyB7XHJcbiAgICAgICAgICAgIGdyaWQtcm93OiBzcGFuIDI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHBob3RvLWNvdmVyXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQpIHtcclxuICAgICAgICBvdmVyZmxvdzogaW5pdGlhbDtcclxuICAgICAgICAmX19pdGVtcyB7XHJcbiAgICAgICAgICAgIGdyaWQtZ2FwOiAwO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19pdGVtIHtcclxuICAgICAgICAgICAgXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1tb2JpbGUtbGcpIHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogIC0xKiRwZC1jb250YWluZXI7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAgLTEqJHBkLWNvbnRhaW5lcjtcclxuICAgIH1cclxufVxyXG5cclxuXHJcblxyXG5cclxuXHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5cclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbi5td3NfZm9vdCB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICBnYXA6IDkwcHg7XHJcbiAgICAmX19sb2dvIHtcclxuICAgICAgICB3aWR0aDogMTU1cHg7XHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJl9fY3JlYXRpbmcge1xyXG4gICAgICAgIG1heC13aWR0aDogNTA1cHg7XHJcbiAgICAgICAgJi10IHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyNXB4O1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1saXN0IHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMzJweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICAgICAgJi1pdGVtIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgZ2FwOiAyMHB4O1xyXG4gICAgICAgICAgICAmICsgJiB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxM3B4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICZfX2ljb24ge1xyXG4gICAgICAgICAgICAgICAgZmxleDogMCAwIGF1dG87XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMzFweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmX190ZXh0IHtcclxuICAgICAgICAgICAgICAgIHRleHQtd3JhcDogYmFsYW5jZTtcclxuICAgICAgICAgICAgICAgIGIge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmX19lbmQge1xyXG4gICAgICAgIG1heC13aWR0aDogNTA1cHg7XHJcbiAgICAgICAgJi10ZXh0IHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgICAgICAgICAgPiAqICsgKiB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtYnV0dG9ucyB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDI0cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtZGVza3RvcC1tZCkge1xyXG4gICAgICAgIGdhcDogNDBweDtcclxuICAgICAgICAmX19jcmVhdGluZyB7XHJcbiAgICAgICAgICAgICYtdCB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIycHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1kZXNrdG9wKSB7XHJcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgIGdhcDogNDBweCA2MHB4O1xyXG4gICAgICAgICZfX2NyZWF0aW5nIHtcclxuICAgICAgICAgICAgJi10IHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjVweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmX19lbmQge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDg4MHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtbW9iaWxlLWxnKSB7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGdhcDogNDBweDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgJl9fbG9nbyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAyMDBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fY3JlYXRpbmcge1xyXG4gICAgICAgICAgICAmLXQgYnIge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLWl0ZW0ge1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmX19lbmQge1xyXG4gICAgICAgIFxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcblxyXG5cclxuXHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5cclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcblxyXG5cclxuIl19 */
