/* Breakpoints */

/* Sizes */

.restaurants {
  overflow: hidden;
}

.restaurants .g-sliderArrows__btn-prev {
  left: -18px;
}

.restaurants .g-sliderArrows__btn-next {
  right: -18px;
}

.restaurants .swiper-horizontal {
  overflow: unset;
}

.restaurants__titled {
  margin-bottom: var(--padding-big);
}

.restaurants__switch {
  width: 237px;
}

.restaurants__sliders {
  position: relative;
}

.restaurants__sliderWrap {
  display: flex;
  flex-flow: row nowrap;
  justify-content: flex-start;
  align-items: stretch;
}

.restaurants__slide {
  background: var(--white);
  border-top-left-radius: var(--border-radius-medium);
  border-top-right-radius: var(--border-radius-medium);
  overflow: hidden;
  height: auto;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  justify-content: stretch;
  align-items: stretch;
}

.restaurants__inner {
  padding: var(--padding-medium);
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: flex-start;
  flex-grow: 1;
}

.restaurants__picture {
  height: 243px;
  margin-bottom: var(--padding-medium);
}

.restaurants__itemsWrap {
  flex-shrink: 0;
}

.restaurants__item {
  display: block;
}

.restaurants__item-main {
  font-size: var(--font-size-large);
  font-weight: bold;
}

.restaurants__item-address {
  margin-bottom: var(--padding-medium);
}

.restaurants__item-phone {
  color: var(--red);
}

.restaurants__item-noHall {
  color: var(--red);
  font-size: 14px;
  text-wrap: balance;
}

.restaurants__item + .restaurants__item {
  margin-top: var(--padding-small);
}

.restaurants__btn {
  margin-top: var(--padding-big);
  width: 100%;
}

.restaurants__mapWrap {
  position: relative;
}

.restaurants__map {
  height: 440px;
}

.restaurants__list {
  overflow: auto;
  position: absolute;
  bottom: var(--padding-medium);
  left: var(--padding-container-left-right);
  right: var(--padding-container-left-right);
}

.restaurants__overflowContent {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: flex-end;
}

.restaurant {
  cursor: pointer;
  width: 280px;
  flex-shrink: 0;
  padding: var(--padding-medium) var(--padding-big);
  border: 1px solid var(--gray-400);
  border-radius: var(--border-radius-medium);
  background-color: var(--white);
  position: relative;
}

.restaurant + .restaurant {
  margin-left: var(--padding-medium);
}

.restaurant__short {
  font-weight: bold;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
  margin-bottom: var(--padding-small);
  font-size: var(--font-size-medium);
}

.restaurant__shortIcon {
  height: 12px;
  width: 12px;
}

.restaurant-opened .restaurant__shortIcon {
  transform: rotate(180deg);
}

.restaurant__address {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
  margin-bottom: var(--padding-small);
}

.restaurant__labelAddress {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
  color: var(--gray-500);
  font-size: var(--font-size-small);
}

.restaurant__labelIcon {
  border: 1px solid var(--gray-400);
  padding: var(--padding-small);
  border-radius: 50%;
  margin-right: var(--padding-small);
  flex-shrink: 0;
  height: 32px;
  width: 32px;
  stroke: var(--red);
}

.restaurant__additionalContent {
  display: none;
}

.restaurant-opened .restaurant__additionalContent {
  display: block;
}

.restaurant__timetable,
.restaurant__phone {
  margin-bottom: var(--padding-small);
  color: var(--gray-500);
  font-size: var(--font-size-small);
}

.restaurant__kitchenLabel {
  font-weight: bold;
}

.restaurant__noHall {
  font-size: 12px;
  color: var(--red);
  text-wrap: balance;
  margin-bottom: 5px;
}

.restaurantBallon {
  display: block;
  max-width: 320px;
  border-radius: var(--border-radius-medium);
  background-color: var(--gray-300);
  background-clip: padding-box;
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
  margin-top: -10px;
  text-align: left;
  white-space: normal;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1010;
}

.restaurantBallon__close {
  text-decoration: none;
  position: absolute;
  right: var(--padding-small);
  top: var(--padding-small);
}

.restaurantBallon__closeIcon {
  display: block;
  fill: var(--gray-500);
  height: 12px;
  width: 12px;
}

.restaurantBallon__title {
  font-weight: bold;
}

.restaurantBallon__address {
  font-size: var(--font-size-small);
}

.restaurantBallon__content {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  height: 100%;
  padding: var(--padding-small) var(--padding-big) var(--padding-small) var(--padding-small);
}

.restaurantBallon__preview {
  width: 48px;
  height: 48px;
  object-fit: cover;
  border-radius: 50%;
  margin-right: var(--padding-small);
}

.restaurantBallon .arrow,
.restaurantBallon .arrow:after {
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid;
}

.restaurantBallon .arrow {
  border-width: 10px;
  bottom: -10px;
  left: 50%;
  margin-left: -9px;
  border-top-color: var(--gray-400);
  border-bottom-width: 0;
}

.restaurantBallon .arrow:after {
  border-width: 10px;
  content: "";
  bottom: 1px;
  margin-left: -10px;
  border-top-color: var(--gray-400);
  border-bottom-width: 0;
}

@media (min-width: 768px) {
  .restaurants__map {
    height: 500px;
  }

  .restaurants__list {
    padding-right: var(--padding-medium);
    left: auto;
    top: var(--padding-medium);
  }

  .restaurants__overflowContent {
    flex-direction: column;
  }

  .restaurant {
    width: 315px;
  }

  .restaurant + .restaurant {
    margin-left: 0;
    margin-top: var(--padding-medium);
  }
}

@media (min-width: 1100px) {
  .restaurants__slide {
    width: 360px;
    flex-shrink: 0;
    margin-right: 7px;
  }
}

@media (min-width: 1200px) {
  .restaurants__titled .restaurants__title {
    margin-bottom: 0;
  }

  .restaurants__titled {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
  }
}

@media (max-width: 1099px) {
  .restaurants__slide {
    width: 320px;
  }

  .restaurants__slide + .restaurants__slide {
    margin-left: 7px;
  }

  .restaurants__arrowContainer {
    display: none;
  }
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NldHVwL192YXJpYWJsZXMuc2NzcyIsInJlc3RhdXJhbnRzL19zbGlkZXIuc2NzcyIsInJlc3RhdXJhbnRzLmNzcyIsIi4uL3NldHVwL19taXhpbnMuc2NzcyIsInJlc3RhdXJhbnRzL19tYXAuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxnQkFBQTs7QUNBQSxVQUFBOztBQ0lBO0VEREksZ0JBQUE7QUNHSjs7QURBSTtFQUNJLFdBQUE7QUNHUjs7QURDQTtFQUNJLFlBQUE7QUNFSjs7QURDQTtFQUNJLGVBQUE7QUNFSjs7QUFFQTtFQUNFLGlDRERVO0FDRVo7O0FDaUNJO0VGeENKLFlBQUE7QUNXQTs7QUFFQTtFQUNFLGtCQzRDRTtBRDNDSjs7QUFFQTtFQUNFLGFBQWE7RURMZixxQkFBQTtFQUNJLDJCQUFBO0VDT0Ysb0JBQW9CO0FBQ3RCOztBQUVBO0VBQ0Usd0JBQXdCO0VBQ3hCLG1EQUFtRDtFRE5yRCxvREFBQTtFQUNJLGdCQUFBO0VBQ0EsWUFBQTtFQUNBLGFBQUE7RUFDQSxzQkFBQTtFQ1FGLGlCQUFpQjtFQUNqQix3QkFBd0I7RURQMUIsb0JBQUE7QUNTQTs7QUFFQTtFRFBJLDhCQUFBO0VBQ0EsYUFBQTtFRXdCQSxzQkFEa0I7RUFFbEIsaUJGeEJvQjtFRXlCcEIsOEJBSDBDO0VBSTFDLHVCRjFCaUM7RUUyQmpDLFlBQUE7QURkSjs7QUFFQTtFQUNFLGFEYk07RUNjTixvQ0FBb0M7QUFDdEM7O0FBRUE7RUFDRSxjQUFjO0FDeEJaOztBRDJCSjtFQUNFLGNEYk07QUNjUjs7QUFFQTtFQUNFLGlDQUFpQztFRGJuQyxpQkFBQTtBQ2VBOztBQUVBO0VDUkksb0NBSDBDO0FEYTlDOztBQUVBO0VBQ0UsaUJBQWlCO0FBQ25COztBQUVBO0VEbEJJLGlCQUFBO0VDb0JGLGVBQWU7RUFDZixrQkFBa0I7QURuQnBCOztBQ3NCQTtFQUNFLGdDQUFnQztBRHBCbEM7O0FDdUJBO0VEcEJJLDhCQUFBO0VBQ0ksV0FBQTtBQ3NCUjs7QURs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QUNBOztFRnNLRjtJQUNFLGNBQWM7SUVwS2xCLGlDQUFBO0VBQ0k7QUZzS0o7O0FBRUE7RUVwS0k7SUFDQSxZQUFBO0lGc0tBLGNBQWM7SUFDZCxpQkFBaUI7RUVyS3JCO0FGdUtBOztBQUVBO0VFcktJO0lBQ0EsZ0JBQUE7RUFDQTs7RUZ3S0Y7SUV0S0YsYUFBQTtJQUNJLG1CQUFBO0lBQ0EsaUJBQUE7SUFDQSw4QkFBQTtJQUNBLG1CQUFBO0VBQ0E7QUZ3S0o7O0FBRUE7RUFDRTtJQUNFLFlBQVk7RUFDZDs7RUFFQTtJQUNFLGdCQUFnQjtFQUNsQjs7RUFFQTtJQUNFLGFBQWE7RUFDZjtBQUNGIiwiZmlsZSI6InJlc3RhdXJhbnRzLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qIEJyZWFrcG9pbnRzICovXHJcbi8vIDwgMzgyIC0gbW9iaWxlXHJcbiRzbWFydHBob25lLXdpZHRoOiAzODJweDsgICAvLyBmcm9tLXNtYXJ0cGhvbmVcclxuJGZhYmxldC13aWR0aDogNTY4cHg7ICAgICAgIC8vIGZyb20tZmFibGV0XHJcbiR0YWJsZXQtd2lkdGg6IDc2OHB4OyAgICAgICAvLyBmcm9tLXRhYmxldFxyXG4kbGFwdG9wLXdpZHRoOiAxMTAwcHg7ICAgICAgLy8gZnJvbS1sYXB0b3BcclxuJG5vdGVib29rLXdpZHRoOiAxMjAwcHg7ICAgIC8vIGZyb20tbm90ZWJvb2tcclxuJGRlc2t0b3Atd2lkdGg6IDEzMjhweDsgICAgIC8vIGZyb20tZGVza3RvcFxyXG4vKiBTaXplcyAqL1xyXG4kaHRtbC1taW4td2lkdGg6IDM3NXB4O1xyXG4kaHRtbC1tYXgtd2lkdGg6IDE5MjBweDtcclxuIiwiLnJlc3RhdXJhbnRzIHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgJiAuZy1zbGlkZXJBcnJvd3NfX2J0bi1wcmV2IHtcclxuICAgICAgICBsZWZ0OiAtMThweDtcclxuICAgIH1cclxuICAgICYgLmctc2xpZGVyQXJyb3dzX19idG4tbmV4dCB7XHJcbiAgICAgICAgcmlnaHQ6IC0xOHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4ucmVzdGF1cmFudHMgLnN3aXBlci1ob3Jpem9udGFsIHtcclxuICAgIG92ZXJmbG93OiB1bnNldDtcclxufVxyXG5cclxuLnJlc3RhdXJhbnRzX190aXRsZWQge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tcGFkZGluZy1iaWcpO1xyXG5cclxuICAgICYgLnJlc3RhdXJhbnRzX190aXRsZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgZnJvbS1ub3RlYm9vayB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgZnJvbS1ub3RlYm9vayB7XHJcbiAgICAgICAgQGluY2x1ZGUgZmxleCgkamM6IHNwYWNlLWJldHdlZW4pO1xyXG4gICAgfVxyXG59XHJcblxyXG4ucmVzdGF1cmFudHNfX3N3aXRjaCB7XHJcbiAgICB3aWR0aDogMjM3cHg7XHJcbn1cclxuXHJcbi5yZXN0YXVyYW50c19fc2xpZGVycyB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuLnJlc3RhdXJhbnRzX19zbGlkZXJXcmFwIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcclxufVxyXG4ucmVzdGF1cmFudHNfX3NsaWRlIHtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLXdoaXRlKTtcclxuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbWVkaXVtKTtcclxuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLW1lZGl1bSk7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgQGluY2x1ZGUgZmxleCgkZGlyOiBjb2x1bW4sICRqYzogc3RyZXRjaCwgJGFpOiBzdHJldGNoKTtcclxuXHJcbiAgICBAaW5jbHVkZSB0by1sYXB0b3Age1xyXG4gICAgICAgIHdpZHRoOiAzMjBweDtcclxuXHJcbiAgICAgICAgJiArICYge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogN3B4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBmcm9tLWxhcHRvcCB7XHJcbiAgICAgICAgd2lkdGg6IDM2MHB4O1xyXG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogN3B4O1xyXG4gICAgfVxyXG59XHJcbi5yZXN0YXVyYW50c19faW5uZXIge1xyXG4gICAgcGFkZGluZzogdmFyKC0tcGFkZGluZy1tZWRpdW0pO1xyXG4gICAgQGluY2x1ZGUgZmxleCgkZGlyOiBjb2x1bW4sICRqYzogc3BhY2UtYmV0d2VlbiwgJGFpOiBmbGV4LXN0YXJ0KTtcclxuICAgIGZsZXgtZ3JvdzogMTtcclxufVxyXG4ucmVzdGF1cmFudHNfX3BpY3R1cmUge1xyXG4gICAgaGVpZ2h0OiAyNDNweDtcclxuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXBhZGRpbmctbWVkaXVtKTtcclxufVxyXG4ucmVzdGF1cmFudHNfX2l0ZW1zV3JhcCB7XHJcbiAgICBmbGV4LXNocmluazogMDtcclxufVxyXG4ucmVzdGF1cmFudHNfX2l0ZW0ge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcblxyXG4gICAgJi1tYWluIHtcclxuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sYXJnZSk7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICB9XHJcblxyXG4gICAgJi1hZGRyZXNzIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1wYWRkaW5nLW1lZGl1bSk7XHJcbiAgICB9XHJcblxyXG4gICAgJi1waG9uZSB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXJlZCk7XHJcbiAgICB9XHJcblxyXG4gICAgJi1ub0hhbGwge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1yZWQpO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICB0ZXh0LXdyYXA6IGJhbGFuY2U7XHJcbiAgICB9XHJcblxyXG4gICAgJiArICYge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXBhZGRpbmctc21hbGwpO1xyXG4gICAgfVxyXG59XHJcbi5yZXN0YXVyYW50c19fYnRuIHtcclxuICAgIG1hcmdpbi10b3A6IHZhcigtLXBhZGRpbmctYmlnKTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG59XHJcbi5yZXN0YXVyYW50c19fYXJyb3dDb250YWluZXIge1xyXG4gICAgQGluY2x1ZGUgdG8tbGFwdG9wIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG59IiwiLyogQnJlYWtwb2ludHMgKi9cblxuLyogU2l6ZXMgKi9cblxuLnJlc3RhdXJhbnRzIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnJlc3RhdXJhbnRzIC5nLXNsaWRlckFycm93c19fYnRuLXByZXYge1xuICBsZWZ0OiAtMThweDtcbn1cblxuLnJlc3RhdXJhbnRzIC5nLXNsaWRlckFycm93c19fYnRuLW5leHQge1xuICByaWdodDogLTE4cHg7XG59XG5cbi5yZXN0YXVyYW50cyAuc3dpcGVyLWhvcml6b250YWwge1xuICBvdmVyZmxvdzogdW5zZXQ7XG59XG5cbi5yZXN0YXVyYW50c19fdGl0bGVkIHtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tcGFkZGluZy1iaWcpO1xufVxuXG4ucmVzdGF1cmFudHNfX3N3aXRjaCB7XG4gIHdpZHRoOiAyMzdweDtcbn1cblxuLnJlc3RhdXJhbnRzX19zbGlkZXJzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ucmVzdGF1cmFudHNfX3NsaWRlcldyYXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG59XG5cbi5yZXN0YXVyYW50c19fc2xpZGUge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS13aGl0ZSk7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbWVkaXVtKTtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbWVkaXVtKTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgaGVpZ2h0OiBhdXRvO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBzdHJldGNoO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbn1cblxuLnJlc3RhdXJhbnRzX19pbm5lciB7XG4gIHBhZGRpbmc6IHZhcigtLXBhZGRpbmctbWVkaXVtKTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGZsZXgtZ3JvdzogMTtcbn1cblxuLnJlc3RhdXJhbnRzX19waWN0dXJlIHtcbiAgaGVpZ2h0OiAyNDNweDtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tcGFkZGluZy1tZWRpdW0pO1xufVxuXG4ucmVzdGF1cmFudHNfX2l0ZW1zV3JhcCB7XG4gIGZsZXgtc2hyaW5rOiAwO1xufVxuXG4ucmVzdGF1cmFudHNfX2l0ZW0ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnJlc3RhdXJhbnRzX19pdGVtLW1haW4ge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sYXJnZSk7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4ucmVzdGF1cmFudHNfX2l0ZW0tYWRkcmVzcyB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXBhZGRpbmctbWVkaXVtKTtcbn1cblxuLnJlc3RhdXJhbnRzX19pdGVtLXBob25lIHtcbiAgY29sb3I6IHZhcigtLXJlZCk7XG59XG5cbi5yZXN0YXVyYW50c19faXRlbS1ub0hhbGwge1xuICBjb2xvcjogdmFyKC0tcmVkKTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICB0ZXh0LXdyYXA6IGJhbGFuY2U7XG59XG5cbi5yZXN0YXVyYW50c19faXRlbSArIC5yZXN0YXVyYW50c19faXRlbSB7XG4gIG1hcmdpbi10b3A6IHZhcigtLXBhZGRpbmctc21hbGwpO1xufVxuXG4ucmVzdGF1cmFudHNfX2J0biB7XG4gIG1hcmdpbi10b3A6IHZhcigtLXBhZGRpbmctYmlnKTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5yZXN0YXVyYW50c19fbWFwV3JhcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnJlc3RhdXJhbnRzX19tYXAge1xuICBoZWlnaHQ6IDQ0MHB4O1xufVxuXG4ucmVzdGF1cmFudHNfX2xpc3Qge1xuICBvdmVyZmxvdzogYXV0bztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IHZhcigtLXBhZGRpbmctbWVkaXVtKTtcbiAgbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItbGVmdC1yaWdodCk7XG4gIHJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1sZWZ0LXJpZ2h0KTtcbn1cblxuLnJlc3RhdXJhbnRzX19vdmVyZmxvd0NvbnRlbnQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG59XG5cbi5yZXN0YXVyYW50IHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB3aWR0aDogMjgwcHg7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBwYWRkaW5nOiB2YXIoLS1wYWRkaW5nLW1lZGl1bSkgdmFyKC0tcGFkZGluZy1iaWcpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ncmF5LTQwMCk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbWVkaXVtKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2hpdGUpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5yZXN0YXVyYW50ICsgLnJlc3RhdXJhbnQge1xuICBtYXJnaW4tbGVmdDogdmFyKC0tcGFkZGluZy1tZWRpdW0pO1xufVxuXG4ucmVzdGF1cmFudF9fc2hvcnQge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tcGFkZGluZy1zbWFsbCk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW1lZGl1bSk7XG59XG5cbi5yZXN0YXVyYW50X19zaG9ydEljb24ge1xuICBoZWlnaHQ6IDEycHg7XG4gIHdpZHRoOiAxMnB4O1xufVxuXG4ucmVzdGF1cmFudC1vcGVuZWQgLnJlc3RhdXJhbnRfX3Nob3J0SWNvbiB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG59XG5cbi5yZXN0YXVyYW50X19hZGRyZXNzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tcGFkZGluZy1zbWFsbCk7XG59XG5cbi5yZXN0YXVyYW50X19sYWJlbEFkZHJlc3Mge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBjb2xvcjogdmFyKC0tZ3JheS01MDApO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbWFsbCk7XG59XG5cbi5yZXN0YXVyYW50X19sYWJlbEljb24ge1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ncmF5LTQwMCk7XG4gIHBhZGRpbmc6IHZhcigtLXBhZGRpbmctc21hbGwpO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tcGFkZGluZy1zbWFsbCk7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBoZWlnaHQ6IDMycHg7XG4gIHdpZHRoOiAzMnB4O1xuICBzdHJva2U6IHZhcigtLXJlZCk7XG59XG5cbi5yZXN0YXVyYW50X19hZGRpdGlvbmFsQ29udGVudCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5yZXN0YXVyYW50LW9wZW5lZCAucmVzdGF1cmFudF9fYWRkaXRpb25hbENvbnRlbnQge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnJlc3RhdXJhbnRfX3RpbWV0YWJsZSxcbi5yZXN0YXVyYW50X19waG9uZSB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXBhZGRpbmctc21hbGwpO1xuICBjb2xvcjogdmFyKC0tZ3JheS01MDApO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbWFsbCk7XG59XG5cbi5yZXN0YXVyYW50X19raXRjaGVuTGFiZWwge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLnJlc3RhdXJhbnRfX25vSGFsbCB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgY29sb3I6IHZhcigtLXJlZCk7XG4gIHRleHQtd3JhcDogYmFsYW5jZTtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xufVxuXG4ucmVzdGF1cmFudEJhbGxvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6IDMyMHB4O1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLW1lZGl1bSk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdyYXktMzAwKTtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm94LXNoYWRvdzogMCA1cHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIG1hcmdpbi10b3A6IC0xMHB4O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTAxMDtcbn1cblxuLnJlc3RhdXJhbnRCYWxsb25fX2Nsb3NlIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiB2YXIoLS1wYWRkaW5nLXNtYWxsKTtcbiAgdG9wOiB2YXIoLS1wYWRkaW5nLXNtYWxsKTtcbn1cblxuLnJlc3RhdXJhbnRCYWxsb25fX2Nsb3NlSWNvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmaWxsOiB2YXIoLS1ncmF5LTUwMCk7XG4gIGhlaWdodDogMTJweDtcbiAgd2lkdGg6IDEycHg7XG59XG5cbi5yZXN0YXVyYW50QmFsbG9uX190aXRsZSB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4ucmVzdGF1cmFudEJhbGxvbl9fYWRkcmVzcyB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtYWxsKTtcbn1cblxuLnJlc3RhdXJhbnRCYWxsb25fX2NvbnRlbnQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGhlaWdodDogMTAwJTtcbiAgcGFkZGluZzogdmFyKC0tcGFkZGluZy1zbWFsbCkgdmFyKC0tcGFkZGluZy1iaWcpIHZhcigtLXBhZGRpbmctc21hbGwpIHZhcigtLXBhZGRpbmctc21hbGwpO1xufVxuXG4ucmVzdGF1cmFudEJhbGxvbl9fcHJldmlldyB7XG4gIHdpZHRoOiA0OHB4O1xuICBoZWlnaHQ6IDQ4cHg7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tcGFkZGluZy1zbWFsbCk7XG59XG5cbi5yZXN0YXVyYW50QmFsbG9uIC5hcnJvdyxcbi5yZXN0YXVyYW50QmFsbG9uIC5hcnJvdzphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG59XG5cbi5yZXN0YXVyYW50QmFsbG9uIC5hcnJvdyB7XG4gIGJvcmRlci13aWR0aDogMTBweDtcbiAgYm90dG9tOiAtMTBweDtcbiAgbGVmdDogNTAlO1xuICBtYXJnaW4tbGVmdDogLTlweDtcbiAgYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tZ3JheS00MDApO1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xufVxuXG4ucmVzdGF1cmFudEJhbGxvbiAuYXJyb3c6YWZ0ZXIge1xuICBib3JkZXItd2lkdGg6IDEwcHg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvdHRvbTogMXB4O1xuICBtYXJnaW4tbGVmdDogLTEwcHg7XG4gIGJvcmRlci10b3AtY29sb3I6IHZhcigtLWdyYXktNDAwKTtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5yZXN0YXVyYW50c19fbWFwIHtcbiAgICBoZWlnaHQ6IDUwMHB4O1xuICB9XG5cbiAgLnJlc3RhdXJhbnRzX19saXN0IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLW1lZGl1bSk7XG4gICAgbGVmdDogYXV0bztcbiAgICB0b3A6IHZhcigtLXBhZGRpbmctbWVkaXVtKTtcbiAgfVxuXG4gIC5yZXN0YXVyYW50c19fb3ZlcmZsb3dDb250ZW50IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG5cbiAgLnJlc3RhdXJhbnQge1xuICAgIHdpZHRoOiAzMTVweDtcbiAgfVxuXG4gIC5yZXN0YXVyYW50ICsgLnJlc3RhdXJhbnQge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi10b3A6IHZhcigtLXBhZGRpbmctbWVkaXVtKTtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTEwMHB4KSB7XG4gIC5yZXN0YXVyYW50c19fc2xpZGUge1xuICAgIHdpZHRoOiAzNjBweDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDdweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5yZXN0YXVyYW50c19fdGl0bGVkIC5yZXN0YXVyYW50c19fdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAucmVzdGF1cmFudHNfX3RpdGxlZCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDk5cHgpIHtcbiAgLnJlc3RhdXJhbnRzX19zbGlkZSB7XG4gICAgd2lkdGg6IDMyMHB4O1xuICB9XG5cbiAgLnJlc3RhdXJhbnRzX19zbGlkZSArIC5yZXN0YXVyYW50c19fc2xpZGUge1xuICAgIG1hcmdpbi1sZWZ0OiA3cHg7XG4gIH1cblxuICAucmVzdGF1cmFudHNfX2Fycm93Q29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59IiwiQG1peGluIHRvLXdpZHRoKCRtYXgtd2lkdGgpIHtcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWF4LXdpZHRoKSB7XHJcbiAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbn1cclxuQG1peGluIGZyb20td2lkdGgoJG1pbi13aWR0aCkge1xyXG4gICAgQGlmICRtaW4td2lkdGggPT0gMCB7XHJcbiAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9IEBlbHNlIHtcclxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbi13aWR0aCkge1xyXG4gICAgICAgICAgICBAY29udGVudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLy8gZnJvbSAzODJcclxuQG1peGluIGZyb20tc21hcnRwaG9uZSB7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNtYXJ0cGhvbmUtd2lkdGgpIHtcclxuICAgICAgICBAY29udGVudDtcclxuICAgIH1cclxufVxyXG4vLyBmcm9tIDU2OFxyXG5AbWl4aW4gZnJvbS1mYWJsZXQge1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRmYWJsZXQtd2lkdGgpIHtcclxuICAgICAgICBAY29udGVudDtcclxuICAgIH1cclxufVxyXG5AbWl4aW4gdG8tZmFibGV0IHtcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkZmFibGV0LXdpZHRoIC0gMXB4KSB7XHJcbiAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbn1cclxuLy8gZnJvbSA3NjhcclxuQG1peGluIGZyb20tdGFibGV0IHtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdGFibGV0LXdpZHRoKSB7XHJcbiAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbn1cclxuQG1peGluIHRvLXRhYmxldCB7XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHRhYmxldC13aWR0aCAtIDFweCkge1xyXG4gICAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG59XHJcbi8vIGZyb20gMTEwMFxyXG5AbWl4aW4gZnJvbS1sYXB0b3Age1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRsYXB0b3Atd2lkdGgpIHtcclxuICAgICAgICBAY29udGVudDtcclxuICAgIH1cclxufVxyXG5AbWl4aW4gdG8tbGFwdG9wIHtcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbGFwdG9wLXdpZHRoIC0gMXB4KSB7XHJcbiAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbn1cclxuLy8gZnJvbSAxMjAwXHJcbkBtaXhpbiBmcm9tLW5vdGVib29rIHtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbm90ZWJvb2std2lkdGgpIHtcclxuICAgICAgICBAY29udGVudDtcclxuICAgIH1cclxufVxyXG4vLyBmcm9tIDEzMjhcclxuQG1peGluIGZyb20tZGVza3RvcCB7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJGRlc2t0b3Atd2lkdGgpIHtcclxuICAgICAgICBAY29udGVudDtcclxuICAgIH1cclxufVxyXG5AbWl4aW4gdmgoJGFyZ3VtZW50LCAkcGVyY2VudCkge1xyXG4gICAgI3skYXJndW1lbnR9OiAjeyRwZXJjZW50fXZoO1xyXG4gICAgI3skYXJndW1lbnR9OiBjYWxjKHZhcigtLXZoLCAxdmgpICogJHBlcmNlbnQpO1xyXG59XHJcbkBtaXhpbiBmbGV4KCRkaXNwbGF5OiBmbGV4LCAkZGlyOiByb3csICR3cmFwOiBub3dyYXAsICRqYzogY2VudGVyLCAkYWk6IGNlbnRlcikge1xyXG4gICAgZGlzcGxheTogJGRpc3BsYXk7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogJGRpcjtcclxuICAgIGZsZXgtd3JhcDogJHdyYXA7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6ICRqYztcclxuICAgIGFsaWduLWl0ZW1zOiAkYWk7XHJcbn1cclxuQG1peGluIGhvdmVyIHtcclxuICAgIEBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIEBjb250ZW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5AbWl4aW4gdHJhbnNpdGlvbigkdHJhbnNpdGlvbnMuLi4pIHtcclxuICAgICRyZXN1bHQ6ICgpO1xyXG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCBsZW5ndGgoJHRyYW5zaXRpb25zKSB7XHJcbiAgICAgICAgJHRyYW5zaXRpb246IG50aCgkdHJhbnNpdGlvbnMsICRpKTtcclxuICAgICAgICAkcmVzdWx0OiBhcHBlbmQoJHJlc3VsdCwgJHRyYW5zaXRpb24pO1xyXG4gICAgICAgICRyZXN1bHQ6IGFwcGVuZCgkcmVzdWx0LCAuMjVzIGVhc2UpO1xyXG4gICAgICAgIEBpZiAkaSAhPSBsZW5ndGgoJHRyYW5zaXRpb25zKSB7XHJcbiAgICAgICAgICAgICRyZXN1bHQ6IGFwcGVuZCgkcmVzdWx0LCB1bnF1b3RlKCRzdHJpbmc6IFwiLFwiKSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgdHJhbnNpdGlvbjogJHJlc3VsdDtcclxufVxyXG5AbWl4aW4gaW9zLXNhZmUtdG9wKCRmaWVsZCwgJHBpeGVscykge1xyXG4gICAgI3skZmllbGR9OiAkcGl4ZWxzO1xyXG4gICAgI3skZmllbGR9OiBjYWxjKGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC10b3ApICsgI3skcGl4ZWxzfSk7XHJcbiAgICAjeyRmaWVsZH06IGNhbGMoZW52KHNhZmUtYXJlYS1pbnNldC10b3ApICsgI3skcGl4ZWxzfSk7XHJcbn1cclxuQG1peGluIGlvcy1zYWZlLWJvdCgkZmllbGQsICRwaXhlbHMpIHtcclxuICAgICN7JGZpZWxkfTogJHBpeGVscztcclxuICAgICN7JGZpZWxkfTogY2FsYyhjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSArICN7JHBpeGVsc30pO1xyXG4gICAgI3skZmllbGR9OiBjYWxjKGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSArICN7JHBpeGVsc30pO1xyXG59XHJcblxyXG5AbWl4aW4gaGlkZS1zY3JvbGxiYXIge1xyXG4gICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lO1xyXG5cclxuICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWl4aW4gcHdhIHtcclxuICAgIEBtZWRpYSAoZGlzcGxheS1tb2RlOiBzdGFuZGFsb25lKSB7XHJcbiAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbn0iLCIucmVzdGF1cmFudHNfX21hcFdyYXAge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcbi5yZXN0YXVyYW50c19fbWFwIHtcclxuICAgIGhlaWdodDogNDQwcHg7XHJcblxyXG4gICAgQGluY2x1ZGUgZnJvbS10YWJsZXQge1xyXG4gICAgICAgIGhlaWdodDogNTAwcHg7XHJcbiAgICB9XHJcbn1cclxuLnJlc3RhdXJhbnRzX19saXN0IHtcclxuICAgIG92ZXJmbG93OiBhdXRvO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgYm90dG9tOiB2YXIoLS1wYWRkaW5nLW1lZGl1bSk7XHJcbiAgICBsZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1sZWZ0LXJpZ2h0KTtcclxuICAgIHJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1sZWZ0LXJpZ2h0KTtcclxuXHJcbiAgICBAaW5jbHVkZSBmcm9tLXRhYmxldCB7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1tZWRpdW0pO1xyXG5cclxuICAgICAgICBsZWZ0OiBhdXRvO1xyXG4gICAgICAgIHRvcDogdmFyKC0tcGFkZGluZy1tZWRpdW0pO1xyXG4gICAgfVxyXG59XHJcbi5yZXN0YXVyYW50c19fb3ZlcmZsb3dDb250ZW50IHtcclxuICAgIEBpbmNsdWRlIGZsZXgoJGpjOiBmbGV4LXN0YXJ0LCAkYWk6IGZsZXgtZW5kKTtcclxuXHJcbiAgICBAaW5jbHVkZSBmcm9tLXRhYmxldCB7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIH1cclxufVxyXG4ucmVzdGF1cmFudCB7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICB3aWR0aDogMjgwcHg7XHJcbiAgICBmbGV4LXNocmluazogMDtcclxuICAgIHBhZGRpbmc6IHZhcigtLXBhZGRpbmctbWVkaXVtKSB2YXIoLS1wYWRkaW5nLWJpZyk7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ncmF5LTQwMCk7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLW1lZGl1bSk7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13aGl0ZSk7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgJiArICYge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1wYWRkaW5nLW1lZGl1bSk7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgZnJvbS10YWJsZXQge1xyXG4gICAgICAgIHdpZHRoOiAzMTVweDtcclxuXHJcbiAgICAgICAgJiArICYge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tcGFkZGluZy1tZWRpdW0pO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4ucmVzdGF1cmFudF9fc2hvcnQge1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICBAaW5jbHVkZSBmbGV4KCRqYzogc3BhY2UtYmV0d2Vlbik7XHJcblxyXG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tcGFkZGluZy1zbWFsbCk7XHJcblxyXG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbWVkaXVtKTtcclxufVxyXG4ucmVzdGF1cmFudF9fc2hvcnRJY29uIHtcclxuICAgIGhlaWdodDogMTJweDtcclxuICAgIHdpZHRoOiAxMnB4O1xyXG5cclxuICAgIC5yZXN0YXVyYW50LW9wZW5lZCAmIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgfVxyXG59XHJcbi5yZXN0YXVyYW50X19hZGRyZXNzIHtcclxuICAgIEBpbmNsdWRlIGZsZXgoJGpjOiBmbGV4LXN0YXJ0KTtcclxuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXBhZGRpbmctc21hbGwpO1xyXG59XHJcbi5yZXN0YXVyYW50X19sYWJlbEFkZHJlc3Mge1xyXG4gICAgQGluY2x1ZGUgZmxleCgkamM6IGZsZXgtc3RhcnQpO1xyXG4gICAgY29sb3I6IHZhcigtLWdyYXktNTAwKTtcclxuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtYWxsKTtcclxufVxyXG4ucmVzdGF1cmFudF9fbGFiZWxJY29uIHtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWdyYXktNDAwKTtcclxuICAgIHBhZGRpbmc6IHZhcigtLXBhZGRpbmctc21hbGwpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLXNtYWxsKTtcclxuICAgIGZsZXgtc2hyaW5rOiAwO1xyXG4gICAgaGVpZ2h0OiAzMnB4O1xyXG4gICAgd2lkdGg6IDMycHg7XHJcbiAgICBzdHJva2U6IHZhcigtLXJlZCk7XHJcbn1cclxuLnJlc3RhdXJhbnRfX2FkZGl0aW9uYWxDb250ZW50IHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcblxyXG4gICAgLnJlc3RhdXJhbnQtb3BlbmVkICYge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG59XHJcbi5yZXN0YXVyYW50X190aW1ldGFibGUsXHJcbi5yZXN0YXVyYW50X19waG9uZSwge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tcGFkZGluZy1zbWFsbCk7XHJcbiAgICBjb2xvcjogdmFyKC0tZ3JheS01MDApO1xyXG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc21hbGwpO1xyXG59XHJcbi5yZXN0YXVyYW50X19raXRjaGVuTGFiZWwge1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuLnJlc3RhdXJhbnRfX25vSGFsbCB7XHJcbiAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICBjb2xvcjogdmFyKC0tcmVkKTtcclxuICAgIHRleHQtd3JhcDogYmFsYW5jZTtcclxuICAgIG1hcmdpbi1ib3R0b206IDVweDtcclxufVxyXG4ucmVzdGF1cmFudEJhbGxvbiB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG1heC13aWR0aDogMzIwcHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLW1lZGl1bSk7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncmF5LTMwMCk7XHJcbiAgICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xyXG4gICAgYm94LXNoYWRvdzogMCA1cHggMTBweCByZ2JhKDAsIDAsIDAsIC4yKTtcclxuICAgIG1hcmdpbi10b3A6IC0xMHB4O1xyXG5cclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xyXG5cclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB6LWluZGV4OiAxMDEwO1xyXG59XHJcbi5yZXN0YXVyYW50QmFsbG9uX19jbG9zZSB7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICByaWdodDogdmFyKC0tcGFkZGluZy1zbWFsbCk7XHJcbiAgICB0b3A6IHZhcigtLXBhZGRpbmctc21hbGwpO1xyXG59XHJcbi5yZXN0YXVyYW50QmFsbG9uX19jbG9zZUljb24ge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBmaWxsOiB2YXIoLS1ncmF5LTUwMCk7XHJcbiAgICBoZWlnaHQ6IDEycHg7XHJcbiAgICB3aWR0aDogMTJweDtcclxufVxyXG4ucmVzdGF1cmFudEJhbGxvbl9fdGl0bGUge1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuLnJlc3RhdXJhbnRCYWxsb25fX2FkZHJlc3Mge1xyXG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc21hbGwpO1xyXG59XHJcbi5yZXN0YXVyYW50QmFsbG9uX19jb250ZW50IHtcclxuICAgIEBpbmNsdWRlIGZsZXg7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBwYWRkaW5nOiB2YXIoLS1wYWRkaW5nLXNtYWxsKSB2YXIoLS1wYWRkaW5nLWJpZykgdmFyKC0tcGFkZGluZy1zbWFsbCkgdmFyKC0tcGFkZGluZy1zbWFsbCk7XHJcbn1cclxuLnJlc3RhdXJhbnRCYWxsb25fX3ByZXZpZXcge1xyXG4gICAgd2lkdGg6IDQ4cHg7XHJcbiAgICBoZWlnaHQ6IDQ4cHg7XHJcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tcGFkZGluZy1zbWFsbCk7XHJcbn1cclxuLnJlc3RhdXJhbnRCYWxsb24gLmFycm93LCAucmVzdGF1cmFudEJhbGxvbiAuYXJyb3c6YWZ0ZXIge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB3aWR0aDogMDtcclxuICAgIGhlaWdodDogMDtcclxuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xyXG59XHJcbi5yZXN0YXVyYW50QmFsbG9uIC5hcnJvdyB7XHJcbiAgICBib3JkZXItd2lkdGg6IDEwcHg7XHJcbiAgICBib3R0b206IC0xMHB4O1xyXG4gICAgbGVmdDogNTAlO1xyXG4gICAgbWFyZ2luLWxlZnQ6IC05cHg7XHJcbiAgICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS1ncmF5LTQwMCk7XHJcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xyXG59XHJcbi5yZXN0YXVyYW50QmFsbG9uIC5hcnJvdzphZnRlciB7XHJcbiAgICBib3JkZXItd2lkdGg6IDEwcHg7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgYm90dG9tOiAxcHg7XHJcbiAgICBtYXJnaW4tbGVmdDogLTEwcHg7XHJcbiAgICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS1ncmF5LTQwMCk7XHJcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xyXG59XHJcbiJdfQ== */
