/* Breakpoints */

/* Sizes */

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

.contacts__block + .contacts__block {
  margin-top: var(--font-size-huge);
}

.contacts__blockTitle {
  font-size: var(--font-size-large);
  font-family: var(--font-title);
  font-weight: 600;
  margin-bottom: var(--font-size-tiny);
}

.contacts__row {
  margin: 0 calc(var(--padding-small) * -1);
}

.contacts__box {
  padding: var(--padding-medium);
  background: var(--white);
  margin: var(--padding-small);
  border-radius: var(--border-radius-medium);
  max-width: 300px;
}

.contacts__boxTitle {
  margin-bottom: var(--padding-small);
  font-size: var(--font-size-small);
}

.contacts__map {
  height: 458px;
  width: 100%;
  border-radius: var(--border-radius-big);
}

@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);
  }

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

  .contacts__box {
    flex-grow: 1;
  }
}

@media (min-width: 1100px) {
  .contacts__container {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: flex-start;
  }

  .contacts__col {
    flex-shrink: 0;
  }

  .contacts__map {
    width: 807px;
    margin-left: auto;
  }
}

@media (max-width: 1099px) {
  .contacts__map {
    margin-top: var(--padding-big);
  }
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NldHVwL192YXJpYWJsZXMuc2NzcyIsInJlc3RhdXJhbnRzL19tYXAuc2NzcyIsImNvbnRhY3RzLmNzcyIsIi4uL3NldHVwL19taXhpbnMuc2NzcyIsImNvbnRhY3RzLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsZ0JBQUE7O0FDQUEsVUFBQTs7QUNJQTtFQUNFLGtCQUFrQjtBREZwQjs7QUNLQTtFQ3lCSSxhQUFBO0FEdkJKOztBQUVBO0VBQ0UsY0FBYztFQUNkLGtCQUFrQjtFREpwQiw2QkFBQTtFQUNJLHlDQUFBO0VBQ0EsMENBQUE7QUNNSjs7QUFFQTtFQUNFLGFBQWE7RUNZWCxtQkFBQTtFRnZCSixpQkFBQTtFQ2NFLDJCRE5NO0VDT04scUJETE07QUNNUjs7QUFFQTtFQUNFLGVBQWU7RURMakIsWUFBQTtFRThDSSxjQURrQjtFQUVsQixpREFGOEI7RUFHOUIsaUNBSDBDO0VBSTFDLDBDRmhEbUI7RUVpRG5CLDhCRmpEb0M7RUNXdEMsa0JBQWtCO0FDSGhCOztBRE1KO0VBQ0Usa0NBQWtDO0FBQ3BDOztBRFZBO0VBQ0ksaUJBQUE7RUFDQSxhQUFBO0VBQ0EsbUJBQUE7RUFDQSxpQkFBQTtFQUNBLDhCQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQ0FBQTtFQUNBLGtDQUFBO0FDYUo7O0FBRUE7RUFDRSxZQUFZO0VDdEJWLFdBQUE7QUR3Qko7O0FBRUE7RURYUSx5QkFBQTtBQ2FSOztBQUVBO0VBQ0UsYUFBYTtFQUNiLG1CQUFtQjtFRFhyQixpQkFBQTtFQUNJLDJCQUFBO0VFZUEsbUJBRGtCO0VBRWxCLG1DQUY4QjtBRENsQzs7QUFFQTtFRGRJLGFBQUE7RUFFQSxtQkFBQTtFQ2VGLGlCQUFpQjtFQUNqQiwyQkFBMkI7RURkN0IsbUJBQUE7RUFDSSxzQkFBQTtFQUNBLGlDQUFBO0FDZ0JKOztBQUVBO0VBQ0UsaUNBQWlDO0VBQ2pDLDZCQUE2QjtFRGQvQixrQkFBQTtFRUFJLGtDQURrQjtFQUVsQixjQUFBO0VBQ0EsWUFIMEM7RUFJMUMsV0FBQTtFQUNBLGtCQUxvRTtBRHNCeEU7O0FBRUE7RURuQkEsYUFBQTtBQ3FCQTs7QUFFQTtFQ3hCSSxjQUFBO0FEMEJKOztBQUVBOztFQUVFLG1DQUFtQztFRHhCckMsc0JBQUE7RUFDSSxpQ0FBQTtBQzBCSjs7QUFFQTtFRHhCSSxpQkFBQTtBQzBCSjs7QUFFQTtFQUNFLGVBQWU7RUFDZixpQkFBaUI7RUR6Qm5CLGtCQUFBO0VBQ0ksa0JBQUE7QUMyQko7O0FBRUE7RUFDRSxjQUFjO0VBQ2QsZ0JBQWdCO0VEekJsQiwwQ0FBQTtFQUFBLGlDQUFBO0VBRUksNEJBQUE7RUFDQSx5Q0FBQTtFQUNBLGlCQUFBO0VDMkJGLGdCQUFnQjtFQUNoQixtQkFBbUI7RUQxQnJCLGtCQUFBO0VBQ0ksTUFBQTtFQzRCRixPQUFPO0VBQ1AsYUFBYTtBRDNCZjs7QUM4QkE7RUQzQkkscUJBQUE7RUFDQSxrQkFBQTtFQzZCRiwyQkFBMkI7RUFDM0IseUJBQXlCO0FENUIzQjs7QUMrQkE7RUQ1QkksY0FBQTtFQUNBLHFCQUFBO0VBQ0EsWUFBQTtFQUNBLFdBQUE7QUM4Qko7O0FBRUE7RUQxQkksaUJBQUE7QUM0Qko7O0FBRUE7RUFDRSxpQ0FBaUM7QUFDbkM7O0FBRUE7RUQzQkksYUFBQTtFQUNBLG1CQUFBO0VBQ0EsaUJBQUE7RUM2QkYsdUJBQXVCO0VBQ3ZCLG1CQUFtQjtFRDVCckIsWUFBQTtFQUNJLDBGQUFBO0FDOEJKOztBQUVBO0VBQ0UsV0FBVztFQUNYLFlBQVk7RUQ3QmQsaUJBQUE7RUFDSSxrQkFBQTtFQytCRixrQ0FBa0M7QUFDcEM7O0FBRUE7O0VBRUUsa0JBQWtCO0VEL0JwQixjQUFBO0VFNUVJLFFBQUE7RUFDQSxTQUFBO0VBQ0EseUJBSDBDO0VBSTFDLG1CQUp1RDtBRGtIM0Q7O0FBRUE7RUFDRSxrQkFBa0I7RUFDbEIsYUFBYTtFRHBDZixTQUFBO0VBQ0ksaUJBQUE7RUFDQSxpQ0FBQTtFQUNBLHNCQUFBO0FDc0NKOztBQUVBO0VBQ0Usa0JBQWtCO0VEckNwQixXQUFBO0VBQ0ksV0FBQTtFQUNBLGtCQUFBO0VBQ0EsaUNBQUE7RUFDQSxzQkFBQTtBQ3VDSjs7QUFFQTtFQUNFLGlDQUFpQztBRHRDbkM7O0FDeUNBO0VEdENJLGlDQUFBO0VBQ0EsOEJBQUE7RUFDQSxnQkFBQTtFQUNBLG9DQUFBO0FDd0NKOztBRHRDQTtFQUNJLHlDQUFBO0FDeUNKOztBQUVBO0VEdkNJLDhCQUFBO0VBQ0Esd0JBQUE7RUN5Q0YsNEJBQTRCO0VBQzVCLDBDQUEwQztFQ2xMeEMsZ0JBQUE7QURvTEo7O0FBRUE7RUFDRSxtQ0M5SjRDO0VEK0o1QyxpQ0MvSnlEO0FEZ0szRDs7QUFFQTtFQUNFLGFBQWE7RUM1TFgsV0FBQTtFQ2hDSix1Q0FBQTtBRitOQTs7QUFFQTtFQUNFO0lFek5FLGFBQUE7RUFDSTs7RUY0Tk47SUV6TkYsb0NBQUE7SUFDSSxVQUFBO0lBQ0EsMEJBQUE7RUFDQTs7RUY0TkY7SUFDRSxzQkFBc0I7RUUxTjFCOztFRjZORTtJQzNORSxZQUFBO0VDRko7O0VGaU9FO0lDeExFLGNBSDBDO0lBSTFDLGlDQ3RDdUI7RUZnT3pCOztFQUVBO0lBQ0UsYUFBYTtJRWhPakIsbUJBQUE7SUFDSSxpQkFBQTtJQUNBLDJCQUFBO0lBQ0EsbUJBQUE7RUFDQTs7RUZtT0Y7SUM1T0UsWUFBQTtFQ0tKO0FGME9BOztBQUVBO0VBQ0U7SUVsT0YsYUFBQTtJQUNJLG1CQUFBO0lBQ0EsaUJBQUE7SUZvT0EsdUJBQXVCO0lBQ3ZCLHVCQUF1QjtFRWhPM0I7O0VBRUk7SUFDQSxjQUFBO0VGa09GOztFRXJPRjtJQU1RLFlBQUE7SUZtT0osaUJBQWlCO0VBQ25CO0FDdFBFOztBRHlQSjtFQUNFO0lBQ0UsOEJBQThCO0VBQ2hDO0FBQ0YiLCJmaWxlIjoiY29udGFjdHMuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyogQnJlYWtwb2ludHMgKi9cclxuLy8gPCAzODIgLSBtb2JpbGVcclxuJHNtYXJ0cGhvbmUtd2lkdGg6IDM4MnB4OyAgIC8vIGZyb20tc21hcnRwaG9uZVxyXG4kZmFibGV0LXdpZHRoOiA1NjhweDsgICAgICAgLy8gZnJvbS1mYWJsZXRcclxuJHRhYmxldC13aWR0aDogNzY4cHg7ICAgICAgIC8vIGZyb20tdGFibGV0XHJcbiRsYXB0b3Atd2lkdGg6IDExMDBweDsgICAgICAvLyBmcm9tLWxhcHRvcFxyXG4kbm90ZWJvb2std2lkdGg6IDEyMDBweDsgICAgLy8gZnJvbS1ub3RlYm9va1xyXG4kZGVza3RvcC13aWR0aDogMTMyOHB4OyAgICAgLy8gZnJvbS1kZXNrdG9wXHJcbi8qIFNpemVzICovXHJcbiRodG1sLW1pbi13aWR0aDogMzc1cHg7XHJcbiRodG1sLW1heC13aWR0aDogMTkyMHB4O1xyXG4iLCIucmVzdGF1cmFudHNfX21hcFdyYXAge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcbi5yZXN0YXVyYW50c19fbWFwIHtcclxuICAgIGhlaWdodDogNDQwcHg7XHJcblxyXG4gICAgQGluY2x1ZGUgZnJvbS10YWJsZXQge1xyXG4gICAgICAgIGhlaWdodDogNTAwcHg7XHJcbiAgICB9XHJcbn1cclxuLnJlc3RhdXJhbnRzX19saXN0IHtcclxuICAgIG92ZXJmbG93OiBhdXRvO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgYm90dG9tOiB2YXIoLS1wYWRkaW5nLW1lZGl1bSk7XHJcbiAgICBsZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1sZWZ0LXJpZ2h0KTtcclxuICAgIHJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1sZWZ0LXJpZ2h0KTtcclxuXHJcbiAgICBAaW5jbHVkZSBmcm9tLXRhYmxldCB7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1tZWRpdW0pO1xyXG5cclxuICAgICAgICBsZWZ0OiBhdXRvO1xyXG4gICAgICAgIHRvcDogdmFyKC0tcGFkZGluZy1tZWRpdW0pO1xyXG4gICAgfVxyXG59XHJcbi5yZXN0YXVyYW50c19fb3ZlcmZsb3dDb250ZW50IHtcclxuICAgIEBpbmNsdWRlIGZsZXgoJGpjOiBmbGV4LXN0YXJ0LCAkYWk6IGZsZXgtZW5kKTtcclxuXHJcbiAgICBAaW5jbHVkZSBmcm9tLXRhYmxldCB7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIH1cclxufVxyXG4ucmVzdGF1cmFudCB7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICB3aWR0aDogMjgwcHg7XHJcbiAgICBmbGV4LXNocmluazogMDtcclxuICAgIHBhZGRpbmc6IHZhcigtLXBhZGRpbmctbWVkaXVtKSB2YXIoLS1wYWRkaW5nLWJpZyk7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ncmF5LTQwMCk7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLW1lZGl1bSk7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13aGl0ZSk7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgJiArICYge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1wYWRkaW5nLW1lZGl1bSk7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgZnJvbS10YWJsZXQge1xyXG4gICAgICAgIHdpZHRoOiAzMTVweDtcclxuXHJcbiAgICAgICAgJiArICYge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tcGFkZGluZy1tZWRpdW0pO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4ucmVzdGF1cmFudF9fc2hvcnQge1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICBAaW5jbHVkZSBmbGV4KCRqYzogc3BhY2UtYmV0d2Vlbik7XHJcblxyXG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tcGFkZGluZy1zbWFsbCk7XHJcblxyXG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbWVkaXVtKTtcclxufVxyXG4ucmVzdGF1cmFudF9fc2hvcnRJY29uIHtcclxuICAgIGhlaWdodDogMTJweDtcclxuICAgIHdpZHRoOiAxMnB4O1xyXG5cclxuICAgIC5yZXN0YXVyYW50LW9wZW5lZCAmIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgfVxyXG59XHJcbi5yZXN0YXVyYW50X19hZGRyZXNzIHtcclxuICAgIEBpbmNsdWRlIGZsZXgoJGpjOiBmbGV4LXN0YXJ0KTtcclxuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXBhZGRpbmctc21hbGwpO1xyXG59XHJcbi5yZXN0YXVyYW50X19sYWJlbEFkZHJlc3Mge1xyXG4gICAgQGluY2x1ZGUgZmxleCgkamM6IGZsZXgtc3RhcnQpO1xyXG4gICAgY29sb3I6IHZhcigtLWdyYXktNTAwKTtcclxuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtYWxsKTtcclxufVxyXG4ucmVzdGF1cmFudF9fbGFiZWxJY29uIHtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWdyYXktNDAwKTtcclxuICAgIHBhZGRpbmc6IHZhcigtLXBhZGRpbmctc21hbGwpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLXNtYWxsKTtcclxuICAgIGZsZXgtc2hyaW5rOiAwO1xyXG4gICAgaGVpZ2h0OiAzMnB4O1xyXG4gICAgd2lkdGg6IDMycHg7XHJcbiAgICBzdHJva2U6IHZhcigtLXJlZCk7XHJcbn1cclxuLnJlc3RhdXJhbnRfX2FkZGl0aW9uYWxDb250ZW50IHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcblxyXG4gICAgLnJlc3RhdXJhbnQtb3BlbmVkICYge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG59XHJcbi5yZXN0YXVyYW50X190aW1ldGFibGUsXHJcbi5yZXN0YXVyYW50X19waG9uZSwge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tcGFkZGluZy1zbWFsbCk7XHJcbiAgICBjb2xvcjogdmFyKC0tZ3JheS01MDApO1xyXG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc21hbGwpO1xyXG59XHJcbi5yZXN0YXVyYW50X19raXRjaGVuTGFiZWwge1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuLnJlc3RhdXJhbnRfX25vSGFsbCB7XHJcbiAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICBjb2xvcjogdmFyKC0tcmVkKTtcclxuICAgIHRleHQtd3JhcDogYmFsYW5jZTtcclxuICAgIG1hcmdpbi1ib3R0b206IDVweDtcclxufVxyXG4ucmVzdGF1cmFudEJhbGxvbiB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG1heC13aWR0aDogMzIwcHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLW1lZGl1bSk7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncmF5LTMwMCk7XHJcbiAgICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xyXG4gICAgYm94LXNoYWRvdzogMCA1cHggMTBweCByZ2JhKDAsIDAsIDAsIC4yKTtcclxuICAgIG1hcmdpbi10b3A6IC0xMHB4O1xyXG5cclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xyXG5cclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB6LWluZGV4OiAxMDEwO1xyXG59XHJcbi5yZXN0YXVyYW50QmFsbG9uX19jbG9zZSB7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICByaWdodDogdmFyKC0tcGFkZGluZy1zbWFsbCk7XHJcbiAgICB0b3A6IHZhcigtLXBhZGRpbmctc21hbGwpO1xyXG59XHJcbi5yZXN0YXVyYW50QmFsbG9uX19jbG9zZUljb24ge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBmaWxsOiB2YXIoLS1ncmF5LTUwMCk7XHJcbiAgICBoZWlnaHQ6IDEycHg7XHJcbiAgICB3aWR0aDogMTJweDtcclxufVxyXG4ucmVzdGF1cmFudEJhbGxvbl9fdGl0bGUge1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuLnJlc3RhdXJhbnRCYWxsb25fX2FkZHJlc3Mge1xyXG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc21hbGwpO1xyXG59XHJcbi5yZXN0YXVyYW50QmFsbG9uX19jb250ZW50IHtcclxuICAgIEBpbmNsdWRlIGZsZXg7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBwYWRkaW5nOiB2YXIoLS1wYWRkaW5nLXNtYWxsKSB2YXIoLS1wYWRkaW5nLWJpZykgdmFyKC0tcGFkZGluZy1zbWFsbCkgdmFyKC0tcGFkZGluZy1zbWFsbCk7XHJcbn1cclxuLnJlc3RhdXJhbnRCYWxsb25fX3ByZXZpZXcge1xyXG4gICAgd2lkdGg6IDQ4cHg7XHJcbiAgICBoZWlnaHQ6IDQ4cHg7XHJcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tcGFkZGluZy1zbWFsbCk7XHJcbn1cclxuLnJlc3RhdXJhbnRCYWxsb24gLmFycm93LCAucmVzdGF1cmFudEJhbGxvbiAuYXJyb3c6YWZ0ZXIge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB3aWR0aDogMDtcclxuICAgIGhlaWdodDogMDtcclxuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xyXG59XHJcbi5yZXN0YXVyYW50QmFsbG9uIC5hcnJvdyB7XHJcbiAgICBib3JkZXItd2lkdGg6IDEwcHg7XHJcbiAgICBib3R0b206IC0xMHB4O1xyXG4gICAgbGVmdDogNTAlO1xyXG4gICAgbWFyZ2luLWxlZnQ6IC05cHg7XHJcbiAgICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS1ncmF5LTQwMCk7XHJcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xyXG59XHJcbi5yZXN0YXVyYW50QmFsbG9uIC5hcnJvdzphZnRlciB7XHJcbiAgICBib3JkZXItd2lkdGg6IDEwcHg7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgYm90dG9tOiAxcHg7XHJcbiAgICBtYXJnaW4tbGVmdDogLTEwcHg7XHJcbiAgICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS1ncmF5LTQwMCk7XHJcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xyXG59XHJcbiIsIi8qIEJyZWFrcG9pbnRzICovXG5cbi8qIFNpemVzICovXG5cbi5yZXN0YXVyYW50c19fbWFwV3JhcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnJlc3RhdXJhbnRzX19tYXAge1xuICBoZWlnaHQ6IDQ0MHB4O1xufVxuXG4ucmVzdGF1cmFudHNfX2xpc3Qge1xuICBvdmVyZmxvdzogYXV0bztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IHZhcigtLXBhZGRpbmctbWVkaXVtKTtcbiAgbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItbGVmdC1yaWdodCk7XG4gIHJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1sZWZ0LXJpZ2h0KTtcbn1cblxuLnJlc3RhdXJhbnRzX19vdmVyZmxvd0NvbnRlbnQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG59XG5cbi5yZXN0YXVyYW50IHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB3aWR0aDogMjgwcHg7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBwYWRkaW5nOiB2YXIoLS1wYWRkaW5nLW1lZGl1bSkgdmFyKC0tcGFkZGluZy1iaWcpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ncmF5LTQwMCk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbWVkaXVtKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2hpdGUpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5yZXN0YXVyYW50ICsgLnJlc3RhdXJhbnQge1xuICBtYXJnaW4tbGVmdDogdmFyKC0tcGFkZGluZy1tZWRpdW0pO1xufVxuXG4ucmVzdGF1cmFudF9fc2hvcnQge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tcGFkZGluZy1zbWFsbCk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW1lZGl1bSk7XG59XG5cbi5yZXN0YXVyYW50X19zaG9ydEljb24ge1xuICBoZWlnaHQ6IDEycHg7XG4gIHdpZHRoOiAxMnB4O1xufVxuXG4ucmVzdGF1cmFudC1vcGVuZWQgLnJlc3RhdXJhbnRfX3Nob3J0SWNvbiB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG59XG5cbi5yZXN0YXVyYW50X19hZGRyZXNzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tcGFkZGluZy1zbWFsbCk7XG59XG5cbi5yZXN0YXVyYW50X19sYWJlbEFkZHJlc3Mge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBjb2xvcjogdmFyKC0tZ3JheS01MDApO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbWFsbCk7XG59XG5cbi5yZXN0YXVyYW50X19sYWJlbEljb24ge1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ncmF5LTQwMCk7XG4gIHBhZGRpbmc6IHZhcigtLXBhZGRpbmctc21hbGwpO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tcGFkZGluZy1zbWFsbCk7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBoZWlnaHQ6IDMycHg7XG4gIHdpZHRoOiAzMnB4O1xuICBzdHJva2U6IHZhcigtLXJlZCk7XG59XG5cbi5yZXN0YXVyYW50X19hZGRpdGlvbmFsQ29udGVudCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5yZXN0YXVyYW50LW9wZW5lZCAucmVzdGF1cmFudF9fYWRkaXRpb25hbENvbnRlbnQge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnJlc3RhdXJhbnRfX3RpbWV0YWJsZSxcbi5yZXN0YXVyYW50X19waG9uZSB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXBhZGRpbmctc21hbGwpO1xuICBjb2xvcjogdmFyKC0tZ3JheS01MDApO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbWFsbCk7XG59XG5cbi5yZXN0YXVyYW50X19raXRjaGVuTGFiZWwge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLnJlc3RhdXJhbnRfX25vSGFsbCB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgY29sb3I6IHZhcigtLXJlZCk7XG4gIHRleHQtd3JhcDogYmFsYW5jZTtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xufVxuXG4ucmVzdGF1cmFudEJhbGxvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6IDMyMHB4O1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLW1lZGl1bSk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdyYXktMzAwKTtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm94LXNoYWRvdzogMCA1cHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIG1hcmdpbi10b3A6IC0xMHB4O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTAxMDtcbn1cblxuLnJlc3RhdXJhbnRCYWxsb25fX2Nsb3NlIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiB2YXIoLS1wYWRkaW5nLXNtYWxsKTtcbiAgdG9wOiB2YXIoLS1wYWRkaW5nLXNtYWxsKTtcbn1cblxuLnJlc3RhdXJhbnRCYWxsb25fX2Nsb3NlSWNvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmaWxsOiB2YXIoLS1ncmF5LTUwMCk7XG4gIGhlaWdodDogMTJweDtcbiAgd2lkdGg6IDEycHg7XG59XG5cbi5yZXN0YXVyYW50QmFsbG9uX190aXRsZSB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4ucmVzdGF1cmFudEJhbGxvbl9fYWRkcmVzcyB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtYWxsKTtcbn1cblxuLnJlc3RhdXJhbnRCYWxsb25fX2NvbnRlbnQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGhlaWdodDogMTAwJTtcbiAgcGFkZGluZzogdmFyKC0tcGFkZGluZy1zbWFsbCkgdmFyKC0tcGFkZGluZy1iaWcpIHZhcigtLXBhZGRpbmctc21hbGwpIHZhcigtLXBhZGRpbmctc21hbGwpO1xufVxuXG4ucmVzdGF1cmFudEJhbGxvbl9fcHJldmlldyB7XG4gIHdpZHRoOiA0OHB4O1xuICBoZWlnaHQ6IDQ4cHg7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tcGFkZGluZy1zbWFsbCk7XG59XG5cbi5yZXN0YXVyYW50QmFsbG9uIC5hcnJvdyxcbi5yZXN0YXVyYW50QmFsbG9uIC5hcnJvdzphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG59XG5cbi5yZXN0YXVyYW50QmFsbG9uIC5hcnJvdyB7XG4gIGJvcmRlci13aWR0aDogMTBweDtcbiAgYm90dG9tOiAtMTBweDtcbiAgbGVmdDogNTAlO1xuICBtYXJnaW4tbGVmdDogLTlweDtcbiAgYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tZ3JheS00MDApO1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xufVxuXG4ucmVzdGF1cmFudEJhbGxvbiAuYXJyb3c6YWZ0ZXIge1xuICBib3JkZXItd2lkdGg6IDEwcHg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvdHRvbTogMXB4O1xuICBtYXJnaW4tbGVmdDogLTEwcHg7XG4gIGJvcmRlci10b3AtY29sb3I6IHZhcigtLWdyYXktNDAwKTtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbn1cblxuLmNvbnRhY3RzX19ibG9jayArIC5jb250YWN0c19fYmxvY2sge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1mb250LXNpemUtaHVnZSk7XG59XG5cbi5jb250YWN0c19fYmxvY2tUaXRsZSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWxhcmdlKTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtdGl0bGUpO1xuICBmb250LXdlaWdodDogNjAwO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1mb250LXNpemUtdGlueSk7XG59XG5cbi5jb250YWN0c19fcm93IHtcbiAgbWFyZ2luOiAwIGNhbGModmFyKC0tcGFkZGluZy1zbWFsbCkgKiAtMSk7XG59XG5cbi5jb250YWN0c19fYm94IHtcbiAgcGFkZGluZzogdmFyKC0tcGFkZGluZy1tZWRpdW0pO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS13aGl0ZSk7XG4gIG1hcmdpbjogdmFyKC0tcGFkZGluZy1zbWFsbCk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbWVkaXVtKTtcbiAgbWF4LXdpZHRoOiAzMDBweDtcbn1cblxuLmNvbnRhY3RzX19ib3hUaXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXBhZGRpbmctc21hbGwpO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbWFsbCk7XG59XG5cbi5jb250YWN0c19fbWFwIHtcbiAgaGVpZ2h0OiA0NThweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtYmlnKTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5yZXN0YXVyYW50c19fbWFwIHtcbiAgICBoZWlnaHQ6IDUwMHB4O1xuICB9XG5cbiAgLnJlc3RhdXJhbnRzX19saXN0IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLW1lZGl1bSk7XG4gICAgbGVmdDogYXV0bztcbiAgICB0b3A6IHZhcigtLXBhZGRpbmctbWVkaXVtKTtcbiAgfVxuXG4gIC5yZXN0YXVyYW50c19fb3ZlcmZsb3dDb250ZW50IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG5cbiAgLnJlc3RhdXJhbnQge1xuICAgIHdpZHRoOiAzMTVweDtcbiAgfVxuXG4gIC5yZXN0YXVyYW50ICsgLnJlc3RhdXJhbnQge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi10b3A6IHZhcigtLXBhZGRpbmctbWVkaXVtKTtcbiAgfVxuXG4gIC5jb250YWN0c19fcm93IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cblxuICAuY29udGFjdHNfX2JveCB7XG4gICAgZmxleC1ncm93OiAxO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMTAwcHgpIHtcbiAgLmNvbnRhY3RzX19jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgfVxuXG4gIC5jb250YWN0c19fY29sIHtcbiAgICBmbGV4LXNocmluazogMDtcbiAgfVxuXG4gIC5jb250YWN0c19fbWFwIHtcbiAgICB3aWR0aDogODA3cHg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEwOTlweCkge1xuICAuY29udGFjdHNfX21hcCB7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tcGFkZGluZy1iaWcpO1xuICB9XG59IiwiQG1peGluIHRvLXdpZHRoKCRtYXgtd2lkdGgpIHtcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWF4LXdpZHRoKSB7XHJcbiAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbn1cclxuQG1peGluIGZyb20td2lkdGgoJG1pbi13aWR0aCkge1xyXG4gICAgQGlmICRtaW4td2lkdGggPT0gMCB7XHJcbiAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9IEBlbHNlIHtcclxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbi13aWR0aCkge1xyXG4gICAgICAgICAgICBAY29udGVudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLy8gZnJvbSAzODJcclxuQG1peGluIGZyb20tc21hcnRwaG9uZSB7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNtYXJ0cGhvbmUtd2lkdGgpIHtcclxuICAgICAgICBAY29udGVudDtcclxuICAgIH1cclxufVxyXG4vLyBmcm9tIDU2OFxyXG5AbWl4aW4gZnJvbS1mYWJsZXQge1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRmYWJsZXQtd2lkdGgpIHtcclxuICAgICAgICBAY29udGVudDtcclxuICAgIH1cclxufVxyXG5AbWl4aW4gdG8tZmFibGV0IHtcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkZmFibGV0LXdpZHRoIC0gMXB4KSB7XHJcbiAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbn1cclxuLy8gZnJvbSA3NjhcclxuQG1peGluIGZyb20tdGFibGV0IHtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdGFibGV0LXdpZHRoKSB7XHJcbiAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbn1cclxuQG1peGluIHRvLXRhYmxldCB7XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHRhYmxldC13aWR0aCAtIDFweCkge1xyXG4gICAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG59XHJcbi8vIGZyb20gMTEwMFxyXG5AbWl4aW4gZnJvbS1sYXB0b3Age1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRsYXB0b3Atd2lkdGgpIHtcclxuICAgICAgICBAY29udGVudDtcclxuICAgIH1cclxufVxyXG5AbWl4aW4gdG8tbGFwdG9wIHtcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbGFwdG9wLXdpZHRoIC0gMXB4KSB7XHJcbiAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbn1cclxuLy8gZnJvbSAxMjAwXHJcbkBtaXhpbiBmcm9tLW5vdGVib29rIHtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbm90ZWJvb2std2lkdGgpIHtcclxuICAgICAgICBAY29udGVudDtcclxuICAgIH1cclxufVxyXG4vLyBmcm9tIDEzMjhcclxuQG1peGluIGZyb20tZGVza3RvcCB7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJGRlc2t0b3Atd2lkdGgpIHtcclxuICAgICAgICBAY29udGVudDtcclxuICAgIH1cclxufVxyXG5AbWl4aW4gdmgoJGFyZ3VtZW50LCAkcGVyY2VudCkge1xyXG4gICAgI3skYXJndW1lbnR9OiAjeyRwZXJjZW50fXZoO1xyXG4gICAgI3skYXJndW1lbnR9OiBjYWxjKHZhcigtLXZoLCAxdmgpICogJHBlcmNlbnQpO1xyXG59XHJcbkBtaXhpbiBmbGV4KCRkaXNwbGF5OiBmbGV4LCAkZGlyOiByb3csICR3cmFwOiBub3dyYXAsICRqYzogY2VudGVyLCAkYWk6IGNlbnRlcikge1xyXG4gICAgZGlzcGxheTogJGRpc3BsYXk7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogJGRpcjtcclxuICAgIGZsZXgtd3JhcDogJHdyYXA7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6ICRqYztcclxuICAgIGFsaWduLWl0ZW1zOiAkYWk7XHJcbn1cclxuQG1peGluIGhvdmVyIHtcclxuICAgIEBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIEBjb250ZW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5AbWl4aW4gdHJhbnNpdGlvbigkdHJhbnNpdGlvbnMuLi4pIHtcclxuICAgICRyZXN1bHQ6ICgpO1xyXG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCBsZW5ndGgoJHRyYW5zaXRpb25zKSB7XHJcbiAgICAgICAgJHRyYW5zaXRpb246IG50aCgkdHJhbnNpdGlvbnMsICRpKTtcclxuICAgICAgICAkcmVzdWx0OiBhcHBlbmQoJHJlc3VsdCwgJHRyYW5zaXRpb24pO1xyXG4gICAgICAgICRyZXN1bHQ6IGFwcGVuZCgkcmVzdWx0LCAuMjVzIGVhc2UpO1xyXG4gICAgICAgIEBpZiAkaSAhPSBsZW5ndGgoJHRyYW5zaXRpb25zKSB7XHJcbiAgICAgICAgICAgICRyZXN1bHQ6IGFwcGVuZCgkcmVzdWx0LCB1bnF1b3RlKCRzdHJpbmc6IFwiLFwiKSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgdHJhbnNpdGlvbjogJHJlc3VsdDtcclxufVxyXG5AbWl4aW4gaW9zLXNhZmUtdG9wKCRmaWVsZCwgJHBpeGVscykge1xyXG4gICAgI3skZmllbGR9OiAkcGl4ZWxzO1xyXG4gICAgI3skZmllbGR9OiBjYWxjKGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC10b3ApICsgI3skcGl4ZWxzfSk7XHJcbiAgICAjeyRmaWVsZH06IGNhbGMoZW52KHNhZmUtYXJlYS1pbnNldC10b3ApICsgI3skcGl4ZWxzfSk7XHJcbn1cclxuQG1peGluIGlvcy1zYWZlLWJvdCgkZmllbGQsICRwaXhlbHMpIHtcclxuICAgICN7JGZpZWxkfTogJHBpeGVscztcclxuICAgICN7JGZpZWxkfTogY2FsYyhjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSArICN7JHBpeGVsc30pO1xyXG4gICAgI3skZmllbGR9OiBjYWxjKGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSArICN7JHBpeGVsc30pO1xyXG59XHJcblxyXG5AbWl4aW4gaGlkZS1zY3JvbGxiYXIge1xyXG4gICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lO1xyXG5cclxuICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWl4aW4gcHdhIHtcclxuICAgIEBtZWRpYSAoZGlzcGxheS1tb2RlOiBzdGFuZGFsb25lKSB7XHJcbiAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbn0iLCJAaW1wb3J0IFwiLi4vc2V0dXAvbWl4aW5zXCI7XHJcbkBpbXBvcnQgXCIuLi9zZXR1cC92YXJpYWJsZXNcIjtcclxuQGltcG9ydCBcIi4vcmVzdGF1cmFudHMvbWFwXCI7XHJcblxyXG4uY29udGFjdHNfX2NvbnRhaW5lciB7XHJcblxyXG5cclxuICAgIEBpbmNsdWRlIGZyb20tbGFwdG9wIHtcclxuICAgICAgICBAaW5jbHVkZSBmbGV4KCRhaTogZmxleC1zdGFydCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jb250YWN0c19fY29sIHtcclxuXHJcblxyXG4gICAgQGluY2x1ZGUgZnJvbS1sYXB0b3Age1xyXG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xyXG4gICAgfVxyXG59XHJcbi5jb250YWN0c19fYmxvY2sge1xyXG5cclxuICAgICYrJiB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tZm9udC1zaXplLWh1Z2UpO1xyXG4gICAgfVxyXG59XHJcbi5jb250YWN0c19fYmxvY2tUaXRsZSB7XHJcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sYXJnZSk7XHJcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC10aXRsZSk7XHJcbiAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tZm9udC1zaXplLXRpbnkpO1xyXG59XHJcbi5jb250YWN0c19fcm93IHtcclxuICAgIG1hcmdpbjogMCBjYWxjKHZhcigtLXBhZGRpbmctc21hbGwpICogLTEpO1xyXG5cclxuICAgIEBpbmNsdWRlIGZyb20tdGFibGV0IHtcclxuICAgICAgICBAaW5jbHVkZSBmbGV4KCRqYzogZmxleC1zdGFydCk7XHJcbiAgICB9XHJcbn1cclxuLmNvbnRhY3RzX19ib3gge1xyXG4gICAgcGFkZGluZzogdmFyKC0tcGFkZGluZy1tZWRpdW0pO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0td2hpdGUpO1xyXG4gICAgbWFyZ2luOiB2YXIoLS1wYWRkaW5nLXNtYWxsKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbWVkaXVtKTtcclxuICAgIG1heC13aWR0aDogMzAwcHg7XHJcblxyXG4gICAgQGluY2x1ZGUgZnJvbS10YWJsZXQge1xyXG4gICAgICAgIGZsZXgtZ3JvdzogMTtcclxuICAgIH1cclxufVxyXG4uY29udGFjdHNfX2JveFRpdGxlIHtcclxuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXBhZGRpbmctc21hbGwpO1xyXG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc21hbGwpO1xyXG59XHJcbi5jb250YWN0c19fYm94VGV4dCB7XHJcblxyXG59XHJcbi5jb250YWN0c19fbWFwIHtcclxuICAgIGhlaWdodDogNDU4cHg7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtYmlnKTtcclxuXHJcbiAgICBAaW5jbHVkZSB0by1sYXB0b3Age1xyXG4gICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXBhZGRpbmctYmlnKTtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBmcm9tLWxhcHRvcCB7XHJcbiAgICAgICAgd2lkdGg6IDgwN3B4O1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgfVxyXG59XHJcbiJdfQ== */
