@kando-env/kando-ui 1.2.228-alpha.127 → 1.2.228-alpha.129

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- var packageJsonVersion = "1.2.228-alpha.127";
3
+ var packageJsonVersion = "1.2.228-alpha.129";
4
4
  if (typeof packageJsonVersion === 'string') {
5
5
  // eslint-disable-next-line no-console
6
6
  console.log("%c Kando UI %c v".concat(packageJsonVersion, " "), 'font-size: 15px; background-color: #fff; color: #e20f53;', 'font-weight: bold; font-size: 15px; background-color: #e20f53; color: #fff;', "with NODE_ENV=".concat(process.env.NODE_ENV));
@@ -223,7 +223,9 @@ var EventsList = function EventsList(_ref) {
223
223
  return e.id === parseInt(getEventIdFromURL());
224
224
  });
225
225
  if (event !== undefined) {
226
- handleEventItemClick(event, null);
226
+ setTimeout(function () {
227
+ handleEventItemClick(event, null);
228
+ }, 500);
227
229
  }
228
230
  }
229
231
  };
@@ -251,12 +253,12 @@ var EventsList = function EventsList(_ref) {
251
253
  };
252
254
  (0, _react.useEffect)(function () {
253
255
  dispatch((0, _actions.fetchEvents)(waterAuthorityId, getKQLValuesFromURL() || 'DEFAULT', getEventIdFromURL()));
254
- }, [global_data.waterAuthorityId, global_data.eventFilterParam]);
256
+ }, [global_data.waterAuthorityId, global_data.eventFilterParam, focusedEvent]);
255
257
  (0, _react.useEffect)(function () {
256
- if (!events_data.isFetching && !edges_data.isFetching && !points_data.isFetching && !areas_data.isFetching) {
258
+ if (!events_data.isFetching && !edges_data.isFetching && !points_data.isFetching && !areas_data.isFetching && filterPopupOpen) {
257
259
  setFocusedEventIfFoundInParams();
258
260
  }
259
- }, [events_data.isFetching, edges_data.isFetching, points_data.isFetching, areas_data.isFetching, global_data.eventFilterParam]);
261
+ }, [events_data.isFetching, edges_data.isFetching, points_data.isFetching, areas_data.isFetching, global_data.eventFilterParam, filterPopupOpen]);
260
262
  return /*#__PURE__*/_react.default.createElement("div", {
261
263
  className: 'sidenav ' + (sidenavExpanded ? '' : 'sidenav--collapsed')
262
264
  }, global_data.moreInfo !== undefined && global_data.moreInfo.active && /*#__PURE__*/_react.default.createElement(_MoreInfo.default, null), /*#__PURE__*/_react.default.createElement("div", {
@@ -349,4 +351,4 @@ var EventsList = function EventsList(_ref) {
349
351
  var connector = (0, _reactRedux.connect)(mapStateToProps);
350
352
  var _default = connector(EventsList);
351
353
  exports.default = _default;
352
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZnJlZVNvbGlkU3ZnSWNvbnMiLCJyZXF1aXJlIiwiX3JlYWN0Rm9udGF3ZXNvbWUiLCJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsIl9yZWFjdFJlZHV4IiwiX3JlYWN0Um91dGVyRG9tIiwiX2Fycm93TGVmdCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfZnVubmVsIiwiX25vX2V2ZW50cyIsIl9TZXZlcmVFdmVudCIsIl9VcmxIaXN0b3J5IiwiX2FjdGlvbnMiLCJfYWN0aW9uczIiLCJfaTE4biIsIl9FdmVudEluZm8iLCJfTW9yZUluZm8iLCJfRmlsdGVyQ29udGFpbmVyIiwiX1NvcnQiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJub2RlSW50ZXJvcCIsIldlYWtNYXAiLCJjYWNoZUJhYmVsSW50ZXJvcCIsImNhY2hlTm9kZUludGVyb3AiLCJvYmoiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImRlZmF1bHQiLCJjYWNoZSIsImhhcyIsImdldCIsIm5ld09iaiIsImhhc1Byb3BlcnR5RGVzY3JpcHRvciIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwia2V5IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiZGVzYyIsInNldCIsIm1hcFN0YXRlVG9Qcm9wcyIsInN0YXRlIiwiZXZlbnRzX2RhdGEiLCJnbG9iYWxfZGF0YSIsImVkZ2VzX2RhdGEiLCJwb2ludHNfZGF0YSIsImFyZWFzX2RhdGEiLCJuYXZfY29udGV4dF9kYXRhIiwiRXZlbnRzTGlzdCIsIl9yZWYiLCJzaWRlbmF2RXhwYW5kZWQiLCJkaXNwYXRjaCIsInVzZURpc3BhdGNoIiwiaXRlbXMiLCJpc0ZldGNoaW5nIiwiZm9jdXNlZEV2ZW50IiwiaG92ZXJlZEV2ZW50IiwiaG92ZXJlZEV2ZW50UGF0aHMiLCJob3ZlcmVkRWRnZVBhdGhzIiwid2F0ZXJBdXRob3JpdHlJZCIsIm1hcCIsIl91c2VTdGF0ZSIsInVzZVN0YXRlIiwiX3VzZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5MiIsImZpbHRlclBvcHVwT3BlbiIsInNldEZpbHRlclBvcHVwT3BlbiIsIl91c2VTdGF0ZTMiLCJtZXNzYWdlcyIsIm1lc3NhZ2UiLCJldmVudF9pZCIsImV2ZW50X2lkcyIsIl91c2VTdGF0ZTQiLCJleGNlcHRpb25BbGVydCIsInNldEV4Y2VwdGlvbkFsZXJ0IiwibGFzdFZpc2l0ZWQiLCJ1c2VMYXN0VmlzaXRlZCIsInVzZVF1ZXJ5IiwiVVJMU2VhcmNoUGFyYW1zIiwidXNlTG9jYXRpb24iLCJzZWFyY2giLCJoaXN0b3J5IiwidXNlSGlzdG9yeSIsInF1ZXJ5IiwiZ2V0S1FMVmFsdWVzRnJvbVVSTCIsImdldEV2ZW50SWRGcm9tVVJMIiwibG9hZGVyIiwibGVuZ3RoIiwibmV3QXJlYXMiLCJjcmVhdGVFbGVtZW50IiwiY2xhc3NOYW1lIiwiaGFuZGxlRXhwYW5zaW9uVG9nZ2xlIiwic2lkZU5hdkV4cGFuZGVkIiwiYXBwbHlEZWZhdWx0RmlsdGVyIiwicHVzaCIsImNvbmNhdCIsIm5hdkNvbnRleHQiLCJuYW1lIiwibG9jYWxlIiwic2V0RXZlbnRGaWx0ZXJQYXJhbSIsInZhbGlkYXRlRXZlbnQiLCJldmVudCIsImludmFsaWRPYnNlcnZhdGlvbnNNZXNzYWdlcyIsIm9ic2VydmF0aW9ucyIsImZvckVhY2giLCJvYnNlcnZhdGlvbiIsInBvaW50X2lzX3Jvb3QiLCJlZGdlIiwiZmluZCIsInNvdXJjZV9wb2ludF9pZCIsInBvaW50X2lkIiwidW5kZWZpbmVkIiwicG9pbnRfbmFtZSIsImluZGV4IiwiZmluZEluZGV4IiwibXNnIiwiaWQiLCJfdG9Db25zdW1hYmxlQXJyYXkyIiwiRnJhZ21lbnQiLCJpMThuIiwidCIsImludmFsaWRQYXRoTWVzc2FnZXMiLCJwYXRoIiwiZWRnZV9pZCIsImNvbnNvbGUiLCJlcnJvciIsImxhc3Rfb2JzZXJ2YXRpb25faWQiLCJsYXN0T2JzZXJ2YXRpb25Qb2ludCIsImhhbmRsZUV2ZW50SXRlbUNsaWNrIiwicmVmIiwib25Nb3VzZUxlYXZlRXZlbnQiLCJzZXRGb2N1c2VkRXZlbnQiLCJzZXRUaW1lb3V0IiwiZXZlbnRGaWx0ZXJQYXJhbSIsIm9uTW91c2VFbnRlckV2ZW50Iiwic2V0SG92ZXJlZEV2ZW50IiwicmVtb3ZlTGF5ZXIiLCJsYXllcnMiLCJfbGF5ZXJzIiwicHJvcGVydHkiLCJrYW5kb19vYmplY3QiLCJpbmNsdWRlcyIsInNldEhvdmVyZWRFdmVudFBhdGhzIiwic2V0SG92ZXJlZEVkZ2VQYXRocyIsImlzRGF0YUZldGNoZWRBbmRFdmVudE5vdEZvY3VzZWQiLCJzZXRGb2N1c2VkRXZlbnRJZkZvdW5kSW5QYXJhbXMiLCJlIiwicGFyc2VJbnQiLCJ2YWxpZEV2ZW50IiwidXNlTWVtbyIsInRvU3RyaW5nIiwidHJpZ2dlclNvcnQiLCJzb3J0IiwiYWN0aXZlRmlsdGVyIiwid2FybiIsImNhbGNFdmVudHNSZWFsQW1vdW50IiwiZXZlbnRzQ291bnQiLCJldmVudHNfY291bnQiLCJ1c2VFZmZlY3QiLCJmZXRjaEV2ZW50cyIsIm1vcmVJbmZvIiwiYWN0aXZlIiwicmVPcGVuRmlsdGVyIiwib25DbGljayIsIkZvbnRBd2Vzb21lSWNvbiIsImljb24iLCJmYUNhcmV0TGVmdCIsImZhQ2FyZXRSaWdodCIsImhyZWYiLCJmYUFycm93TGVmdCIsIkxpbmsiLCJ0byIsInNyYyIsIkxlZnRBcnJvd0ljb24iLCJoZWlnaHQiLCJ3aWR0aCIsImFsdCIsImV2ZW50cyIsImV2ZW50c0ZldGNoaW5nIiwiUmVhY3RDb21wb25lbnQiLCJmaWxsIiwiZmV0Y2hUeXBlIiwiTm9FdmVudHNJbWFnZSIsIlNldmVyZUV2ZW50IiwiaGFuZGxlQ2xpY2siLCJjb25uZWN0b3IiLCJjb25uZWN0IiwiX2RlZmF1bHQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL3BhZ2VzL0V2ZW50c1BhZ2UvZXZlbnRzL2V2ZW50c19saXN0L0V2ZW50c0xpc3QudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIGV0Yy9uby1jb21tZW50ZWQtb3V0LWNvZGUgKi9cbmltcG9ydCB7XG4gIGZhQXJyb3dMZWZ0LFxuICBmYUNhcmV0TGVmdCxcbiAgZmFDYXJldFJpZ2h0LFxufSBmcm9tICdAZm9ydGF3ZXNvbWUvZnJlZS1zb2xpZC1zdmctaWNvbnMnO1xuaW1wb3J0IHsgRm9udEF3ZXNvbWVJY29uIH0gZnJvbSAnQGZvcnRhd2Vzb21lL3JlYWN0LWZvbnRhd2Vzb21lJztcbmltcG9ydCBSZWFjdCwgeyBSZWZPYmplY3QsIHVzZUVmZmVjdCwgdXNlTWVtbywgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBjb25uZWN0LCBDb25uZWN0ZWRQcm9wcywgdXNlRGlzcGF0Y2ggfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5pbXBvcnQgeyBMaW5rLCB1c2VIaXN0b3J5LCB1c2VMb2NhdGlvbiB9IGZyb20gJ3JlYWN0LXJvdXRlci1kb20nO1xuaW1wb3J0IExlZnRBcnJvd0ljb24gZnJvbSAnc3JjL2Fzc2V0cy9pY29ucy9hcnJvdy1sZWZ0LnN2Zyc7XG5pbXBvcnQgeyBSZWFjdENvbXBvbmVudCBhcyBGaWx0ZXJJY29uIH0gZnJvbSAnc3JjL2Fzc2V0cy9pY29ucy9mdW5uZWwuc3ZnJztcbmltcG9ydCBOb0V2ZW50c0ltYWdlIGZyb20gJ3NyYy9hc3NldHMvbm9fZXZlbnRzLnN2Zyc7XG5pbXBvcnQgeyBTZXZlcmVFdmVudCB9IGZyb20gJ3NyYy9jb21wb25lbnRzL1NldmVyZUV2ZW50L1NldmVyZUV2ZW50JztcbmltcG9ydCB7IElBcHBTdGF0ZSB9IGZyb20gJ3NyYy9tb2RlbHMvSUFwcFN0YXRlJztcbmltcG9ydCB7IHVzZUxhc3RWaXNpdGVkIH0gZnJvbSAnc3JjL3Byb3ZpZGVycy9VcmxIaXN0b3J5JztcbmltcG9ydCB7XG4gIGZldGNoRXZlbnRzLFxuICBzZXRGb2N1c2VkRXZlbnQsXG4gIHNldEhvdmVyZWRFZGdlUGF0aHMsXG4gIHNldEhvdmVyZWRFdmVudCxcbiAgc2V0SG92ZXJlZEV2ZW50UGF0aHMsXG59IGZyb20gJ3NyYy9zdG9yZS9ldmVudHMvYWN0aW9ucyc7XG5pbXBvcnQgeyBJRXZlbnQgfSBmcm9tICdzcmMvc3RvcmUvZXZlbnRzL21vZGVscy9JRXZlbnQnO1xuaW1wb3J0IHsgc2V0RXZlbnRGaWx0ZXJQYXJhbSwgc2lkZU5hdkV4cGFuZGVkIH0gZnJvbSAnc3JjL3N0b3JlL2dsb2JhbC9hY3Rpb25zJztcbmltcG9ydCBpMThuIGZyb20gJ3NyYy91dGlsaXRpZXMvaTE4bic7XG5pbXBvcnQgJy4uL0V2ZW50c1N0eWxlLnNjc3MnO1xuaW1wb3J0IEV2ZW50SW5mbyBmcm9tICcuLi9ldmVudF9pbmZvL0V2ZW50SW5mbyc7XG5pbXBvcnQgTW9yZUluZm8gZnJvbSAnLi4vTW9yZUluZm8nO1xuaW1wb3J0IEZpbHRlckNvbnRhaW5lciBmcm9tICcuL0ZpbHRlci9GaWx0ZXJDb250YWluZXInO1xuaW1wb3J0IFNvcnQgZnJvbSAnLi9Tb3J0JztcblxuZnVuY3Rpb24gbWFwU3RhdGVUb1Byb3BzKHN0YXRlOiBJQXBwU3RhdGUpIHtcbiAgY29uc3Qge1xuICAgIGV2ZW50c19kYXRhLFxuICAgIGdsb2JhbF9kYXRhLFxuICAgIGVkZ2VzX2RhdGEsXG4gICAgcG9pbnRzX2RhdGEsXG4gICAgYXJlYXNfZGF0YSxcbiAgICBuYXZfY29udGV4dF9kYXRhLFxuICB9ID0gc3RhdGU7XG5cbiAgcmV0dXJuIHtcbiAgICBldmVudHNfZGF0YSxcbiAgICBnbG9iYWxfZGF0YSxcbiAgICBlZGdlc19kYXRhLFxuICAgIHBvaW50c19kYXRhLFxuICAgIGFyZWFzX2RhdGEsXG4gICAgbmF2X2NvbnRleHRfZGF0YSxcbiAgfTtcbn1cblxudHlwZSBJUHJvcHMgPSBDb25uZWN0ZWRQcm9wczx0eXBlb2YgY29ubmVjdG9yPiAmIHtcbiAgc2lkZW5hdkV4cGFuZGVkOiBib29sZWFuO1xufTtcblxuY29uc3QgRXZlbnRzTGlzdDogUmVhY3QuRkM8SVByb3BzPiA9ICh7XG4gIGFyZWFzX2RhdGEsXG4gIHBvaW50c19kYXRhLFxuICBlZGdlc19kYXRhLFxuICBnbG9iYWxfZGF0YSxcbiAgc2lkZW5hdkV4cGFuZGVkLFxuICBldmVudHNfZGF0YSxcbiAgbmF2X2NvbnRleHRfZGF0YSxcbn0pID0+IHtcbiAgY29uc3QgZGlzcGF0Y2ggPSB1c2VEaXNwYXRjaCgpO1xuICBjb25zdCB7XG4gICAgaXRlbXMsXG4gICAgaXNGZXRjaGluZyxcbiAgICBmb2N1c2VkRXZlbnQsXG4gICAgaG92ZXJlZEV2ZW50LFxuICAgIGhvdmVyZWRFdmVudFBhdGhzLFxuICAgIGhvdmVyZWRFZGdlUGF0aHMsXG4gIH0gPSBldmVudHNfZGF0YTtcbiAgY29uc3QgeyB3YXRlckF1dGhvcml0eUlkLCBtYXAgfSA9IGdsb2JhbF9kYXRhO1xuICBjb25zdCBbZmlsdGVyUG9wdXBPcGVuLCBzZXRGaWx0ZXJQb3B1cE9wZW5dID0gdXNlU3RhdGUodHJ1ZSk7XG4gIGNvbnN0IFtleGNlcHRpb25BbGVydCwgc2V0RXhjZXB0aW9uQWxlcnRdID0gdXNlU3RhdGU8e1xuICAgIG1lc3NhZ2VzOiB7IG1lc3NhZ2U6IGFueTsgZXZlbnRfaWQ6IG51bWJlciB9W107XG4gICAgZXZlbnRfaWRzOiBudW1iZXJbXTtcbiAgfT4oeyBtZXNzYWdlczogW3sgbWVzc2FnZTogJycsIGV2ZW50X2lkOiAwIH1dLCBldmVudF9pZHM6IFtdIH0pO1xuICBjb25zdCBsYXN0VmlzaXRlZCA9IHVzZUxhc3RWaXNpdGVkKCk7XG5cbiAgY29uc3QgdXNlUXVlcnkgPSAoKSA9PiB7XG4gICAgcmV0dXJuIG5ldyBVUkxTZWFyY2hQYXJhbXModXNlTG9jYXRpb24oKS5zZWFyY2gpO1xuICB9O1xuICBjb25zdCBoaXN0b3J5ID0gdXNlSGlzdG9yeSgpO1xuICBjb25zdCBxdWVyeSA9IHVzZVF1ZXJ5KCk7XG4gIGNvbnN0IGdldEtRTFZhbHVlc0Zyb21VUkwgPSAoKSA9PiB7XG4gICAgcmV0dXJuIHF1ZXJ5LmdldCgndmFsdWVzRnJvbUtRTCcpO1xuICB9O1xuICBjb25zdCBnZXRFdmVudElkRnJvbVVSTCA9ICgpID0+IHtcbiAgICByZXR1cm4gcXVlcnkuZ2V0KCdldmVudElkJyk7XG4gIH07XG5cbiAgY29uc3QgbG9hZGVyID0gKCkgPT4ge1xuICAgIGlmIChcbiAgICAgIChpc0ZldGNoaW5nICYmIGl0ZW1zLmxlbmd0aCA9PT0gMCkgfHxcbiAgICAgIGFyZWFzX2RhdGEubmV3QXJlYXMubGVuZ3RoID09PSAwIHx8XG4gICAgICBwb2ludHNfZGF0YS5pc0ZldGNoaW5nIHx8XG4gICAgICBlZGdlc19kYXRhLmlzRmV0Y2hpbmdcbiAgICApIHtcbiAgICAgIHJldHVybiA8ZGl2IGNsYXNzTmFtZT17J2xvYWRlcid9PjwvZGl2PjtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGhhbmRsZUV4cGFuc2lvblRvZ2dsZSA9ICgpID0+IHtcbiAgICBkaXNwYXRjaChzaWRlTmF2RXhwYW5kZWQoIXNpZGVuYXZFeHBhbmRlZCkpO1xuICB9O1xuXG4gIGNvbnN0IGFwcGx5RGVmYXVsdEZpbHRlciA9ICgpID0+IHtcbiAgICBoaXN0b3J5LnB1c2goXG4gICAgICBgLyR7bmF2X2NvbnRleHRfZGF0YS5uYXZDb250ZXh0Lm5hbWV9L2luZGV4P3dhdGVyX2F1dGhvcml0eV9pZD0ke2dsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWR9JmxvY2FsZT0ke25hdl9jb250ZXh0X2RhdGEubmF2Q29udGV4dC5sb2NhbGV9JnZhbHVlc0Zyb21LUUw9YCxcbiAgICApO1xuICAgIGRpc3BhdGNoKHNldEV2ZW50RmlsdGVyUGFyYW0oJycpKTtcbiAgfTtcblxuICBjb25zdCB2YWxpZGF0ZUV2ZW50ID0gKGV2ZW50OiBJRXZlbnQpID0+IHtcbiAgICAvLyBjaGVjayB0aGF0IGFsbCBvYnNlcnZhdGlvbnMnIGVkZ2VzIGV4aXN0cy4gSWYgdGhleSBhcmUgbm90IGV4aXN0cyBpdCdzIGluZGljYXRlcyB0aGF0IHRoZWlyIHBvaW50cyBhcmVcbiAgICAvLyBub3QgaW4gdGhlIGhpZXJhcmNoeSBvciBkb2Vzbid0IGhhdmUgbGF0L2xuZy5cbiAgICBsZXQgaW52YWxpZE9ic2VydmF0aW9uc01lc3NhZ2VzOiBhbnkgPSBbXTtcbiAgICBldmVudC5vYnNlcnZhdGlvbnMuZm9yRWFjaCgob2JzZXJ2YXRpb246IGFueSkgPT4ge1xuICAgICAgLy8gaWYgb2JzZXJ2YXRpb24gaXMgcm9vdCAoZXguIFdXVFApIHRoZXJlIGlzIG5vIGVkZ2UgdGhhdCBpdHMgYSBzb3VyY2UuIHNvIHdlIGNhbiBza2lwIHRoaXMgY2hlY2tcbiAgICAgIGlmICghb2JzZXJ2YXRpb24ucG9pbnRfaXNfcm9vdCkge1xuICAgICAgICBsZXQgZWRnZSA9IGVkZ2VzX2RhdGEuaXRlbXMuZmluZChcbiAgICAgICAgICAoZWRnZSkgPT4gZWRnZS5zb3VyY2VfcG9pbnRfaWQgPT09IG9ic2VydmF0aW9uLnBvaW50X2lkLFxuICAgICAgICApO1xuICAgICAgICBpZiAoZWRnZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgaW52YWxpZE9ic2VydmF0aW9uc01lc3NhZ2VzLnB1c2goXG4gICAgICAgICAgICBgJHtvYnNlcnZhdGlvbi5wb2ludF9uYW1lfSAoJHtvYnNlcnZhdGlvbi5wb2ludF9pZH0pIGAsXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuXG4gICAgaWYgKGludmFsaWRPYnNlcnZhdGlvbnNNZXNzYWdlcy5sZW5ndGggIT09IDApIHtcbiAgICAgIGxldCBpbmRleCA9IGV4Y2VwdGlvbkFsZXJ0Lm1lc3NhZ2VzLmZpbmRJbmRleChcbiAgICAgICAgKG1zZykgPT4gbXNnLmV2ZW50X2lkID09PSBldmVudC5pZCxcbiAgICAgICk7XG5cbiAgICAgIGlmIChpbmRleCA9PT0gLTEpIHtcbiAgICAgICAgc2V0RXhjZXB0aW9uQWxlcnQoe1xuICAgICAgICAgIG1lc3NhZ2VzOiBbXG4gICAgICAgICAgICAuLi5leGNlcHRpb25BbGVydC5tZXNzYWdlcyxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbWVzc2FnZTogKFxuICAgICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgICA8cD57aTE4bi50KCdldmVudHNfb3ZlcnZpZXcuZXZlbnRfZGF0YV9taXNzaW5nJyl9PC9wPlxuICAgICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICBldmVudF9pZDogZXZlbnQuaWQsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgZXZlbnRfaWRzOiBbLi4uZXhjZXB0aW9uQWxlcnQuZXZlbnRfaWRzLCBldmVudC5pZF0sXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIC8vIHNhbWUgY2hlY2sgYXMgYWJvdmUgYnV0IHRoaXMgdGltZSBmb3IgdGhlIGV2ZW50IHBhdGguIElmIGVkZ2UgZG9lc24ndCBleGlzdCwgaXQncyBpbmRpY2F0ZXMgdGhhdCBvbmUgb2YgdGhlXG4gICAgLy8gcG9pbnRzIGRvd25zdHJlYW0gZG9lc24ndCBoYXZlIGxhdC9sbmcuXG4gICAgbGV0IGludmFsaWRQYXRoTWVzc2FnZXM6IGFueSA9IFtdO1xuICAgIGV2ZW50LnBhdGguZm9yRWFjaCgocGF0aDogYW55KSA9PiB7XG4gICAgICBsZXQgZWRnZSA9IGVkZ2VzX2RhdGEuaXRlbXMuZmluZCgoZWRnZSkgPT4gZWRnZS5pZCA9PT0gcGF0aC5lZGdlX2lkKTtcbiAgICAgIGlmIChlZGdlID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgY29uc29sZS5lcnJvcihgZWRnZSAke3BhdGguZWRnZV9pZH0gY2FuIG5vdCBiZSBmb3VuZGApO1xuICAgICAgICBsZXQgb2JzZXJ2YXRpb24gPSBldmVudC5vYnNlcnZhdGlvbnMuZmluZChcbiAgICAgICAgICAob2JzZXJ2YXRpb24pID0+IG9ic2VydmF0aW9uLmlkID09PSBwYXRoLmxhc3Rfb2JzZXJ2YXRpb25faWQsXG4gICAgICAgICk7XG4gICAgICAgIGxldCBsYXN0T2JzZXJ2YXRpb25Qb2ludCA9ICdOb3QgZm91bmQnO1xuICAgICAgICBpZiAob2JzZXJ2YXRpb24pIHtcbiAgICAgICAgICBsYXN0T2JzZXJ2YXRpb25Qb2ludCA9IG9ic2VydmF0aW9uLnBvaW50X25hbWU7XG4gICAgICAgICAgY29uc29sZS5lcnJvcignbGFzdE9ic2VydmF0aW9uUG9pbnQnLCBsYXN0T2JzZXJ2YXRpb25Qb2ludCk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBpbnZhbGlkUGF0aE1lc3NhZ2VzLnB1c2goYCR7bGFzdE9ic2VydmF0aW9uUG9pbnR9IGApO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgaWYgKGludmFsaWRQYXRoTWVzc2FnZXMubGVuZ3RoICE9PSAwKSB7XG4gICAgICBzZXRFeGNlcHRpb25BbGVydCh7XG4gICAgICAgIG1lc3NhZ2VzOiBbXG4gICAgICAgICAgLi4uZXhjZXB0aW9uQWxlcnQubWVzc2FnZXMsXG4gICAgICAgICAge1xuICAgICAgICAgICAgbWVzc2FnZTogKFxuICAgICAgICAgICAgICA8PlxuICAgICAgICAgICAgICAgIDxwPntpMThuLnQoJ2V2ZW50c19vdmVydmlldy5ldmVudF92ZXJpZnlfY29vcmRpbmF0ZXMnKX08L3A+XG4gICAgICAgICAgICAgICAgPHNwYW4+e2ludmFsaWRQYXRoTWVzc2FnZXN9PC9zcGFuPlxuICAgICAgICAgICAgICA8Lz5cbiAgICAgICAgICAgICksXG4gICAgICAgICAgICBldmVudF9pZDogZXZlbnQuaWQsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgZXZlbnRfaWRzOiBbLi4uZXhjZXB0aW9uQWxlcnQuZXZlbnRfaWRzLCBldmVudC5pZF0sXG4gICAgICB9KTtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfTtcblxuICBjb25zdCBoYW5kbGVFdmVudEl0ZW1DbGljayA9IChcbiAgICBldmVudDogSUV2ZW50LFxuICAgIHJlZjogUmVmT2JqZWN0PEhUTUxFbGVtZW50PiB8IG51bGwsXG4gICkgPT4ge1xuICAgIGlmIChyZWYgIT09IG51bGwpIG9uTW91c2VMZWF2ZUV2ZW50KCk7XG4gICAgLy8gaWYgKGhvdmVyZWRFdmVudFBhdGhzICYmIG1hcCkge1xuICAgIC8vICAgICBob3ZlcmVkRXZlbnRQYXRocy5mb3JFYWNoKChwYXRoKSA9PiB7XG4gICAgLy8gICAgICAgICBtYXAucmVtb3ZlTGF5ZXIocGF0aCk7XG4gICAgLy8gICAgIH0pO1xuICAgIC8vIH1cbiAgICAvLyBkaXNwYXRjaChzZXRIb3ZlcmVkRXZlbnRQYXRocyhbXSkpO1xuICAgIC8vIGRpc3BhdGNoKHNldEhvdmVyRXZlbnRJbmRpY2F0b3IobnVsbCkpO1xuICAgIGRpc3BhdGNoKHNldEZvY3VzZWRFdmVudChldmVudCkpO1xuICAgIHNldEZpbHRlclBvcHVwT3BlbihmYWxzZSk7XG4gICAgaWYgKGdldEV2ZW50SWRGcm9tVVJMKCkgPT09IG51bGwgfHwgZ2V0RXZlbnRJZEZyb21VUkwoKSA9PT0gJ251bGwnKSB7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgaGlzdG9yeS5wdXNoKFxuICAgICAgICAgIGAvJHtuYXZfY29udGV4dF9kYXRhLm5hdkNvbnRleHQubmFtZX0vaW5kZXg/d2F0ZXJfYXV0aG9yaXR5X2lkPSR7XG4gICAgICAgICAgICBnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkXG4gICAgICAgICAgfSZsb2NhbGU9JHtuYXZfY29udGV4dF9kYXRhLm5hdkNvbnRleHQubG9jYWxlfSZldmVudElkPSR7XG4gICAgICAgICAgICBldmVudC5pZFxuICAgICAgICAgIH0mdmFsdWVzRnJvbUtRTD0ke1xuICAgICAgICAgICAgZ2xvYmFsX2RhdGEuZXZlbnRGaWx0ZXJQYXJhbVxuICAgICAgICAgIH0mdmFsaWRFdmVudD0ke3ZhbGlkYXRlRXZlbnQoZXZlbnQpfWAsXG4gICAgICAgICk7XG4gICAgICB9LCA1MDApO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBvbk1vdXNlRW50ZXJFdmVudCA9IChldmVudCkgPT4ge1xuICAgIGlmICghZm9jdXNlZEV2ZW50ICYmICFob3ZlcmVkRXZlbnQgJiYgdmFsaWRhdGVFdmVudChldmVudCkpIHtcbiAgICAgIGRpc3BhdGNoKHNldEhvdmVyZWRFdmVudChldmVudCkpO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBvbk1vdXNlTGVhdmVFdmVudCA9ICgpID0+IHtcbiAgICBpZiAoaG92ZXJlZEV2ZW50ICYmIGhvdmVyZWRFdmVudFBhdGhzICYmIG1hcCkge1xuICAgICAgaG92ZXJlZEV2ZW50UGF0aHMuZm9yRWFjaCgocGF0aCkgPT4ge1xuICAgICAgICBtYXAucmVtb3ZlTGF5ZXIocGF0aCk7XG4gICAgICB9KTtcblxuICAgICAgaWYgKGhvdmVyZWRFZGdlUGF0aHMpIHtcbiAgICAgICAgaG92ZXJlZEVkZ2VQYXRocy5mb3JFYWNoKChwYXRoKSA9PiB7XG4gICAgICAgICAgbWFwLnJlbW92ZUxheWVyKHBhdGgpO1xuICAgICAgICB9KTtcbiAgICAgIH1cblxuICAgICAgbGV0IGxheWVycyA9IG1hcC5fbGF5ZXJzO1xuICAgICAgZm9yIChjb25zdCBwcm9wZXJ0eSBpbiBsYXllcnMpIHtcbiAgICAgICAgY29uc3Qga2FuZG9fb2JqZWN0ID0gbGF5ZXJzW3Byb3BlcnR5XS5rYW5kb19vYmplY3Q7XG4gICAgICAgIGlmIChcbiAgICAgICAgICBrYW5kb19vYmplY3Q/LmluY2x1ZGVzKCdFdmVudEJvZHknKSB8fFxuICAgICAgICAgIFtcbiAgICAgICAgICAgICdFdmVudFRhaWwnLFxuICAgICAgICAgICAgJ1NhbXBsaW5nUG9pbnQnLFxuICAgICAgICAgICAgJ0RlY29yYXRvcicsXG4gICAgICAgICAgICAnSG92ZXJlZEVkZ2UnLFxuICAgICAgICAgICAgJ0hvdmVyZWRFZGdlRnJvbnQnLFxuICAgICAgICAgICAgJ0ZvY3VzZWRFZGdlJyxcbiAgICAgICAgICAgICdGb2N1c2VkRWRnZUZyb250JyxcbiAgICAgICAgICBdLmluY2x1ZGVzKGthbmRvX29iamVjdClcbiAgICAgICAgKSB7XG4gICAgICAgICAgbWFwLnJlbW92ZUxheWVyKGxheWVyc1twcm9wZXJ0eV0pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIGRpc3BhdGNoKHNldEhvdmVyZWRFdmVudChudWxsKSk7XG4gICAgZGlzcGF0Y2goc2V0SG92ZXJlZEV2ZW50UGF0aHMoW10pKTtcbiAgICBkaXNwYXRjaChzZXRIb3ZlcmVkRWRnZVBhdGhzKFtdKSk7XG4gIH07XG5cbiAgY29uc3QgaXNEYXRhRmV0Y2hlZEFuZEV2ZW50Tm90Rm9jdXNlZCA9ICgpID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgKGdldEV2ZW50SWRGcm9tVVJMKCkgPT09ICdudWxsJyB8fCBnZXRFdmVudElkRnJvbVVSTCgpID09PSBudWxsKSAmJlxuICAgICAgZm9jdXNlZEV2ZW50ID09PSBudWxsICYmXG4gICAgICBpdGVtcy5sZW5ndGggIT09IDAgJiZcbiAgICAgICFpc0ZldGNoaW5nICYmXG4gICAgICAhYXJlYXNfZGF0YS5pc0ZldGNoaW5nICYmXG4gICAgICAhcG9pbnRzX2RhdGEuaXNGZXRjaGluZyAmJlxuICAgICAgIWVkZ2VzX2RhdGEuaXNGZXRjaGluZ1xuICAgICk7XG4gIH07XG5cbiAgY29uc3Qgc2V0Rm9jdXNlZEV2ZW50SWZGb3VuZEluUGFyYW1zID0gKCkgPT4ge1xuICAgIGlmIChcbiAgICAgIGdldEV2ZW50SWRGcm9tVVJMKCkgIT09IG51bGwgJiZcbiAgICAgIGdldEV2ZW50SWRGcm9tVVJMKCkgIT09ICdudWxsJyAmJlxuICAgICAgZm9jdXNlZEV2ZW50ID09PSBudWxsICYmXG4gICAgICBpdGVtcy5sZW5ndGggIT09IDAgJiZcbiAgICAgICFpc0ZldGNoaW5nICYmXG4gICAgICAhYXJlYXNfZGF0YS5pc0ZldGNoaW5nICYmXG4gICAgICAhcG9pbnRzX2RhdGEuaXNGZXRjaGluZyAmJlxuICAgICAgIWVkZ2VzX2RhdGEuaXNGZXRjaGluZ1xuICAgICkge1xuICAgICAgbGV0IGV2ZW50ID0gZXZlbnRzX2RhdGEuaXRlbXMuZmluZChcbiAgICAgICAgKGU6IElFdmVudCkgPT4gZS5pZCA9PT0gcGFyc2VJbnQoZ2V0RXZlbnRJZEZyb21VUkwoKSEpLFxuICAgICAgKTtcbiAgICAgIGlmIChldmVudCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGhhbmRsZUV2ZW50SXRlbUNsaWNrKGV2ZW50LCBudWxsKTtcbiAgICAgIH1cbiAgICB9XG4gIH07XG5cbiAgY29uc3QgdmFsaWRFdmVudCA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGxldCBldmVudCA9IGV2ZW50c19kYXRhLml0ZW1zLmZpbmQoXG4gICAgICAoZSkgPT4gZS5pZC50b1N0cmluZygpID09PSBnZXRFdmVudElkRnJvbVVSTCgpLFxuICAgICk7XG5cbiAgICBpZiAoZXZlbnQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgcmV0dXJuIHZhbGlkYXRlRXZlbnQoZXZlbnQpO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH0sIFtcbiAgICBldmVudHNfZGF0YS5mb2N1c2VkRXZlbnQsXG4gICAgYXJlYXNfZGF0YS5pc0ZldGNoaW5nLFxuICAgIHBvaW50c19kYXRhLmlzRmV0Y2hpbmcsXG4gICAgZWRnZXNfZGF0YS5pc0ZldGNoaW5nLFxuICAgIGV2ZW50c19kYXRhLmlzRmV0Y2hpbmcsXG4gIF0pO1xuXG4gIGNvbnN0IHRyaWdnZXJTb3J0ID0gKHNvcnQ6IG51bWJlcikgPT4ge1xuICAgIGlmIChcbiAgICAgIGdsb2JhbF9kYXRhLmFjdGl2ZUZpbHRlciAhPT0gbnVsbCAmJlxuICAgICAgaXNEYXRhRmV0Y2hlZEFuZEV2ZW50Tm90Rm9jdXNlZCgpXG4gICAgKSB7XG4gICAgICBjb25zb2xlLndhcm4oJ3NvcnQnLCBzb3J0KTtcbiAgICAgIGNvbnNvbGUud2FybigndmFsaWRFdmVudCcsIHZhbGlkRXZlbnQpO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBjYWxjRXZlbnRzUmVhbEFtb3VudCA9ICgpID0+IHtcbiAgICBsZXQgZXZlbnRzQ291bnQ6IG51bWJlciB8IHN0cmluZyA9IDA7XG4gICAgZXZlbnRzQ291bnQgPSBldmVudHNfZGF0YS5ldmVudHNfY291bnQ7XG4gICAgaWYgKGV2ZW50c0NvdW50ID4gNTApXG4gICAgICBldmVudHNDb3VudCA9IGAke2kxOG4udCgnZXZlbnRzX292ZXJ2aWV3Lm1vcmVfdGhhbicpfSA1MGA7XG5cbiAgICByZXR1cm4gZXZlbnRzQ291bnQ7XG4gIH07XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBkaXNwYXRjaChcbiAgICAgIGZldGNoRXZlbnRzKFxuICAgICAgICB3YXRlckF1dGhvcml0eUlkLFxuICAgICAgICBnZXRLUUxWYWx1ZXNGcm9tVVJMKCkgfHwgJ0RFRkFVTFQnLFxuICAgICAgICBnZXRFdmVudElkRnJvbVVSTCgpLFxuICAgICAgKSxcbiAgICApO1xuICB9LCBbZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZCwgZ2xvYmFsX2RhdGEuZXZlbnRGaWx0ZXJQYXJhbV0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKFxuICAgICAgIWV2ZW50c19kYXRhLmlzRmV0Y2hpbmcgJiZcbiAgICAgICFlZGdlc19kYXRhLmlzRmV0Y2hpbmcgJiZcbiAgICAgICFwb2ludHNfZGF0YS5pc0ZldGNoaW5nICYmXG4gICAgICAhYXJlYXNfZGF0YS5pc0ZldGNoaW5nXG4gICAgKSB7XG4gICAgICBzZXRGb2N1c2VkRXZlbnRJZkZvdW5kSW5QYXJhbXMoKTtcbiAgICB9XG4gIH0sIFtcbiAgICBldmVudHNfZGF0YS5pc0ZldGNoaW5nLFxuICAgIGVkZ2VzX2RhdGEuaXNGZXRjaGluZyxcbiAgICBwb2ludHNfZGF0YS5pc0ZldGNoaW5nLFxuICAgIGFyZWFzX2RhdGEuaXNGZXRjaGluZyxcbiAgICBnbG9iYWxfZGF0YS5ldmVudEZpbHRlclBhcmFtLFxuICBdKTtcblxuICByZXR1cm4gKFxuICAgIDxkaXYgY2xhc3NOYW1lPXsnc2lkZW5hdiAnICsgKHNpZGVuYXZFeHBhbmRlZCA/ICcnIDogJ3NpZGVuYXYtLWNvbGxhcHNlZCcpfT5cbiAgICAgIHtnbG9iYWxfZGF0YS5tb3JlSW5mbyAhPT0gdW5kZWZpbmVkICYmIGdsb2JhbF9kYXRhLm1vcmVJbmZvLmFjdGl2ZSAmJiAoXG4gICAgICAgIDxNb3JlSW5mbyAvPlxuICAgICAgKX1cblxuICAgICAgPGRpdlxuICAgICAgICBjbGFzc05hbWU9e1xuICAgICAgICAgICdldmVudC1pbmZvICcgK1xuICAgICAgICAgICghaG92ZXJlZEV2ZW50ICYmIGZvY3VzZWRFdmVudCAhPT0gbnVsbFxuICAgICAgICAgICAgPyAnJ1xuICAgICAgICAgICAgOiAnZXZlbnQtaW5mby0tY29sbGFwc2VkJylcbiAgICAgICAgfVxuICAgICAgPlxuICAgICAgICB7IWhvdmVyZWRFdmVudCAmJiBmb2N1c2VkRXZlbnQgIT09IG51bGwgJiYgKFxuICAgICAgICAgIDxFdmVudEluZm9cbiAgICAgICAgICAgIGV2ZW50PXtmb2N1c2VkRXZlbnR9XG4gICAgICAgICAgICByZU9wZW5GaWx0ZXI9eygpID0+IHNldEZpbHRlclBvcHVwT3Blbih0cnVlKX1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzTmFtZT1cInRvZ2dsZS1leHBhbnNpb24tYnV0dG9uXCJcbiAgICAgICAgb25DbGljaz17KCkgPT4ge1xuICAgICAgICAgIGhhbmRsZUV4cGFuc2lvblRvZ2dsZSgpO1xuICAgICAgICB9fVxuICAgICAgPlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cIm5hdi1leHBhbnNpb24taWNvblwiPlxuICAgICAgICAgIDxGb250QXdlc29tZUljb25cbiAgICAgICAgICAgIGljb249e3NpZGVuYXZFeHBhbmRlZCA/IGZhQ2FyZXRMZWZ0IDogZmFDYXJldFJpZ2h0fVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzTmFtZT17J3RvZ2dsZS1leHBhbnNpb24tYnV0dG9uLW1vYmlsZSd9XG4gICAgICAgIG9uQ2xpY2s9eygpID0+IHtcbiAgICAgICAgICBoYW5kbGVFeHBhbnNpb25Ub2dnbGUoKTtcbiAgICAgICAgfX1cbiAgICAgID5cbiAgICAgICAgPGEgaHJlZj1cIiNcIj5cbiAgICAgICAgICA8Rm9udEF3ZXNvbWVJY29uIGljb249e2ZhQXJyb3dMZWZ0fSAvPlxuICAgICAgICAgIDxzcGFuPiB7aTE4bi50KCdldmVudHNfb3ZlcnZpZXcuYmFja190b19kZXRhaWxzJyl9PC9zcGFuPlxuICAgICAgICA8L2E+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZXZlbnRzLWhlYWRlclwiPlxuICAgICAgICB7bGFzdFZpc2l0ZWQgJiYgIWlzRmV0Y2hpbmcgJiYgKFxuICAgICAgICAgIDxMaW5rIGNsYXNzTmFtZT1cImJhY2tcIiB0bz17bGFzdFZpc2l0ZWR9PlxuICAgICAgICAgICAgeycgJ31cbiAgICAgICAgICAgIDxpbWdcbiAgICAgICAgICAgICAgc3JjPXtMZWZ0QXJyb3dJY29ufVxuICAgICAgICAgICAgICBoZWlnaHQ9XCIxMHB4XCJcbiAgICAgICAgICAgICAgd2lkdGg9XCIxMnB4XCJcbiAgICAgICAgICAgICAgYWx0PVwiYmFja1wiXG4gICAgICAgICAgICAvPnsnICd9XG4gICAgICAgICAgICB7aTE4bi50KCdhcmVhX3NjcmVlbi5iYWNrJyl9XG4gICAgICAgICAgPC9MaW5rPlxuICAgICAgICApfVxuICAgICAgICA8aDQ+XG4gICAgICAgICAge2kxOG4udCgnZXZlbnRzX292ZXJ2aWV3LmV2ZW50c19saXN0Jyl9XG4gICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPXsnZXZlbnRzLWhlYWRlcl9fZXZlbnRzX2Ftb3VudCd9PlxuICAgICAgICAgICAgKHtjYWxjRXZlbnRzUmVhbEFtb3VudCgpfSlcbiAgICAgICAgICA8L3NwYW4+XG4gICAgICAgIDwvaDQ+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmlsdGVyaW5nXCI+XG4gICAgICAgICAge2V2ZW50c19kYXRhLml0ZW1zLmxlbmd0aCAhPT0gMCAmJiAoXG4gICAgICAgICAgICA8U29ydFxuICAgICAgICAgICAgICB0cmlnZ2VyU29ydD17dHJpZ2dlclNvcnR9XG4gICAgICAgICAgICAgIGV2ZW50cz17ZXZlbnRzX2RhdGEuaXRlbXN9XG4gICAgICAgICAgICAgIGV2ZW50c0ZldGNoaW5nPXtldmVudHNfZGF0YS5pc0ZldGNoaW5nfVxuICAgICAgICAgICAgICBhY3RpdmVGaWx0ZXI9e2dsb2JhbF9kYXRhLmFjdGl2ZUZpbHRlcn1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImljb25zXCI+XG4gICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgIGNsYXNzTmFtZT1cImZpbHRlclwiXG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHNldEZpbHRlclBvcHVwT3BlbighZmlsdGVyUG9wdXBPcGVuKX1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPEZpbHRlckljb24gd2lkdGg9XCIxN3B4XCIgaGVpZ2h0PVwiMTdweFwiIGZpbGw9XCIjZjYwMDRmXCIgLz5cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICB7cG9pbnRzX2RhdGEuaXRlbXMubGVuZ3RoICE9PSAwICYmICFmb2N1c2VkRXZlbnQgJiYgKFxuICAgICAgICAgIDxGaWx0ZXJDb250YWluZXJcbiAgICAgICAgICAgIGZpbHRlclBvcHVwT3Blbj17ZmlsdGVyUG9wdXBPcGVufVxuICAgICAgICAgICAgZmV0Y2hUeXBlPXsnRXZlbnRGaWx0ZXInfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZXZlbnRzLWNvbnRhaW5lciBzY3JvbGxiYXIgXCI+XG4gICAgICAgIHtsb2FkZXIoKX1cbiAgICAgICAgeyFpc0ZldGNoaW5nICYmXG4gICAgICAgICAgaXRlbXMubGVuZ3RoID09PSAwICYmXG4gICAgICAgICAgIXBvaW50c19kYXRhLmlzRmV0Y2hpbmcgJiZcbiAgICAgICAgICAhZWRnZXNfZGF0YS5pc0ZldGNoaW5nICYmIChcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXsnZXZlbnRzX19ibGFua3NsYXRlJ30+XG4gICAgICAgICAgICAgIDxpbWcgc3JjPXtOb0V2ZW50c0ltYWdlfSBhbHQ9XCJOb0V2ZW50c0ljb25cIiAvPlxuICAgICAgICAgICAgICA8aDI+e2kxOG4udCgnZXZlbnRzX292ZXJ2aWV3LmZpbHRlci5ibGFua3NsYXRlLmhlYWRlcicpfTwvaDI+XG4gICAgICAgICAgICAgIDxwPntpMThuLnQoJ2V2ZW50c19vdmVydmlldy5maWx0ZXIuYmxhbmtzbGF0ZS5ib2R5Jyl9PC9wPlxuICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17J2FwcGx5X2RlZmF1bHRfZmlsdGVyX2J1dHRvbid9XG4gICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gYXBwbHlEZWZhdWx0RmlsdGVyKCl9XG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7aTE4bi50KCdldmVudHNfb3ZlcnZpZXcuZmlsdGVyLmJsYW5rc2xhdGUuYnV0dG9uJyl9XG4gICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICl9XG4gICAgICAgIHtpdGVtcy5sZW5ndGggIT09IDAgJiZcbiAgICAgICAgICAhYXJlYXNfZGF0YS5pc0ZldGNoaW5nICYmXG4gICAgICAgICAgIXBvaW50c19kYXRhLmlzRmV0Y2hpbmcgJiZcbiAgICAgICAgICAhZWRnZXNfZGF0YS5pc0ZldGNoaW5nICYmIChcbiAgICAgICAgICAgIDx1bCBjbGFzc05hbWU9XCJldmVudHMgXCI+XG4gICAgICAgICAgICAgIHtpdGVtcy5tYXAoKGV2ZW50OiBhbnkpID0+IChcbiAgICAgICAgICAgICAgICA8bGkga2V5PXtldmVudC5pZH0gY2xhc3NOYW1lPVwiZXZlbnRcIiBkYXRhLWV2ZW50LWlkPXtldmVudC5pZH0+XG4gICAgICAgICAgICAgICAgICA8U2V2ZXJlRXZlbnRcbiAgICAgICAgICAgICAgICAgICAgZXZlbnQ9e2V2ZW50fVxuICAgICAgICAgICAgICAgICAgICBoYW5kbGVDbGljaz17aGFuZGxlRXZlbnRJdGVtQ2xpY2t9XG4gICAgICAgICAgICAgICAgICAgIG9uTW91c2VFbnRlckV2ZW50PXtvbk1vdXNlRW50ZXJFdmVudH1cbiAgICAgICAgICAgICAgICAgICAgb25Nb3VzZUxlYXZlRXZlbnQ9e29uTW91c2VMZWF2ZUV2ZW50fVxuICAgICAgICAgICAgICAgICAgICB2YWxpZGF0ZUV2ZW50PXt2YWxpZGF0ZUV2ZW50fVxuICAgICAgICAgICAgICAgICAgICBleGNlcHRpb25BbGVydD17ZXhjZXB0aW9uQWxlcnR9XG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICAgICkpfVxuICAgICAgICAgICAgPC91bD5cbiAgICAgICAgICApfVxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICk7XG59O1xuXG5jb25zdCBjb25uZWN0b3IgPSBjb25uZWN0KG1hcFN0YXRlVG9Qcm9wcyk7XG5leHBvcnQgZGVmYXVsdCBjb25uZWN0b3IoRXZlbnRzTGlzdCk7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFDQSxJQUFBQSxrQkFBQSxHQUFBQyxPQUFBO0FBS0EsSUFBQUMsaUJBQUEsR0FBQUQsT0FBQTtBQUNBLElBQUFFLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUgsT0FBQTtBQUNBLElBQUFJLFdBQUEsR0FBQUosT0FBQTtBQUNBLElBQUFLLGVBQUEs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
354
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZnJlZVNvbGlkU3ZnSWNvbnMiLCJyZXF1aXJlIiwiX3JlYWN0Rm9udGF3ZXNvbWUiLCJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsIl9yZWFjdFJlZHV4IiwiX3JlYWN0Um91dGVyRG9tIiwiX2Fycm93TGVmdCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfZnVubmVsIiwiX25vX2V2ZW50cyIsIl9TZXZlcmVFdmVudCIsIl9VcmxIaXN0b3J5IiwiX2FjdGlvbnMiLCJfYWN0aW9uczIiLCJfaTE4biIsIl9FdmVudEluZm8iLCJfTW9yZUluZm8iLCJfRmlsdGVyQ29udGFpbmVyIiwiX1NvcnQiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJub2RlSW50ZXJvcCIsIldlYWtNYXAiLCJjYWNoZUJhYmVsSW50ZXJvcCIsImNhY2hlTm9kZUludGVyb3AiLCJvYmoiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImRlZmF1bHQiLCJjYWNoZSIsImhhcyIsImdldCIsIm5ld09iaiIsImhhc1Byb3BlcnR5RGVzY3JpcHRvciIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwia2V5IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiZGVzYyIsInNldCIsIm1hcFN0YXRlVG9Qcm9wcyIsInN0YXRlIiwiZXZlbnRzX2RhdGEiLCJnbG9iYWxfZGF0YSIsImVkZ2VzX2RhdGEiLCJwb2ludHNfZGF0YSIsImFyZWFzX2RhdGEiLCJuYXZfY29udGV4dF9kYXRhIiwiRXZlbnRzTGlzdCIsIl9yZWYiLCJzaWRlbmF2RXhwYW5kZWQiLCJkaXNwYXRjaCIsInVzZURpc3BhdGNoIiwiaXRlbXMiLCJpc0ZldGNoaW5nIiwiZm9jdXNlZEV2ZW50IiwiaG92ZXJlZEV2ZW50IiwiaG92ZXJlZEV2ZW50UGF0aHMiLCJob3ZlcmVkRWRnZVBhdGhzIiwid2F0ZXJBdXRob3JpdHlJZCIsIm1hcCIsIl91c2VTdGF0ZSIsInVzZVN0YXRlIiwiX3VzZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5MiIsImZpbHRlclBvcHVwT3BlbiIsInNldEZpbHRlclBvcHVwT3BlbiIsIl91c2VTdGF0ZTMiLCJtZXNzYWdlcyIsIm1lc3NhZ2UiLCJldmVudF9pZCIsImV2ZW50X2lkcyIsIl91c2VTdGF0ZTQiLCJleGNlcHRpb25BbGVydCIsInNldEV4Y2VwdGlvbkFsZXJ0IiwibGFzdFZpc2l0ZWQiLCJ1c2VMYXN0VmlzaXRlZCIsInVzZVF1ZXJ5IiwiVVJMU2VhcmNoUGFyYW1zIiwidXNlTG9jYXRpb24iLCJzZWFyY2giLCJoaXN0b3J5IiwidXNlSGlzdG9yeSIsInF1ZXJ5IiwiZ2V0S1FMVmFsdWVzRnJvbVVSTCIsImdldEV2ZW50SWRGcm9tVVJMIiwibG9hZGVyIiwibGVuZ3RoIiwibmV3QXJlYXMiLCJjcmVhdGVFbGVtZW50IiwiY2xhc3NOYW1lIiwiaGFuZGxlRXhwYW5zaW9uVG9nZ2xlIiwic2lkZU5hdkV4cGFuZGVkIiwiYXBwbHlEZWZhdWx0RmlsdGVyIiwicHVzaCIsImNvbmNhdCIsIm5hdkNvbnRleHQiLCJuYW1lIiwibG9jYWxlIiwic2V0RXZlbnRGaWx0ZXJQYXJhbSIsInZhbGlkYXRlRXZlbnQiLCJldmVudCIsImludmFsaWRPYnNlcnZhdGlvbnNNZXNzYWdlcyIsIm9ic2VydmF0aW9ucyIsImZvckVhY2giLCJvYnNlcnZhdGlvbiIsInBvaW50X2lzX3Jvb3QiLCJlZGdlIiwiZmluZCIsInNvdXJjZV9wb2ludF9pZCIsInBvaW50X2lkIiwidW5kZWZpbmVkIiwicG9pbnRfbmFtZSIsImluZGV4IiwiZmluZEluZGV4IiwibXNnIiwiaWQiLCJfdG9Db25zdW1hYmxlQXJyYXkyIiwiRnJhZ21lbnQiLCJpMThuIiwidCIsImludmFsaWRQYXRoTWVzc2FnZXMiLCJwYXRoIiwiZWRnZV9pZCIsImNvbnNvbGUiLCJlcnJvciIsImxhc3Rfb2JzZXJ2YXRpb25faWQiLCJsYXN0T2JzZXJ2YXRpb25Qb2ludCIsImhhbmRsZUV2ZW50SXRlbUNsaWNrIiwicmVmIiwib25Nb3VzZUxlYXZlRXZlbnQiLCJzZXRGb2N1c2VkRXZlbnQiLCJzZXRUaW1lb3V0IiwiZXZlbnRGaWx0ZXJQYXJhbSIsIm9uTW91c2VFbnRlckV2ZW50Iiwic2V0SG92ZXJlZEV2ZW50IiwicmVtb3ZlTGF5ZXIiLCJsYXllcnMiLCJfbGF5ZXJzIiwicHJvcGVydHkiLCJrYW5kb19vYmplY3QiLCJpbmNsdWRlcyIsInNldEhvdmVyZWRFdmVudFBhdGhzIiwic2V0SG92ZXJlZEVkZ2VQYXRocyIsImlzRGF0YUZldGNoZWRBbmRFdmVudE5vdEZvY3VzZWQiLCJzZXRGb2N1c2VkRXZlbnRJZkZvdW5kSW5QYXJhbXMiLCJlIiwicGFyc2VJbnQiLCJ2YWxpZEV2ZW50IiwidXNlTWVtbyIsInRvU3RyaW5nIiwidHJpZ2dlclNvcnQiLCJzb3J0IiwiYWN0aXZlRmlsdGVyIiwid2FybiIsImNhbGNFdmVudHNSZWFsQW1vdW50IiwiZXZlbnRzQ291bnQiLCJldmVudHNfY291bnQiLCJ1c2VFZmZlY3QiLCJmZXRjaEV2ZW50cyIsIm1vcmVJbmZvIiwiYWN0aXZlIiwicmVPcGVuRmlsdGVyIiwib25DbGljayIsIkZvbnRBd2Vzb21lSWNvbiIsImljb24iLCJmYUNhcmV0TGVmdCIsImZhQ2FyZXRSaWdodCIsImhyZWYiLCJmYUFycm93TGVmdCIsIkxpbmsiLCJ0byIsInNyYyIsIkxlZnRBcnJvd0ljb24iLCJoZWlnaHQiLCJ3aWR0aCIsImFsdCIsImV2ZW50cyIsImV2ZW50c0ZldGNoaW5nIiwiUmVhY3RDb21wb25lbnQiLCJmaWxsIiwiZmV0Y2hUeXBlIiwiTm9FdmVudHNJbWFnZSIsIlNldmVyZUV2ZW50IiwiaGFuZGxlQ2xpY2siLCJjb25uZWN0b3IiLCJjb25uZWN0IiwiX2RlZmF1bHQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL3BhZ2VzL0V2ZW50c1BhZ2UvZXZlbnRzL2V2ZW50c19saXN0L0V2ZW50c0xpc3QudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIGV0Yy9uby1jb21tZW50ZWQtb3V0LWNvZGUgKi9cbmltcG9ydCB7XG4gIGZhQXJyb3dMZWZ0LFxuICBmYUNhcmV0TGVmdCxcbiAgZmFDYXJldFJpZ2h0LFxufSBmcm9tICdAZm9ydGF3ZXNvbWUvZnJlZS1zb2xpZC1zdmctaWNvbnMnO1xuaW1wb3J0IHsgRm9udEF3ZXNvbWVJY29uIH0gZnJvbSAnQGZvcnRhd2Vzb21lL3JlYWN0LWZvbnRhd2Vzb21lJztcbmltcG9ydCBSZWFjdCwgeyBSZWZPYmplY3QsIHVzZUVmZmVjdCwgdXNlTWVtbywgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBjb25uZWN0LCBDb25uZWN0ZWRQcm9wcywgdXNlRGlzcGF0Y2ggfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5pbXBvcnQgeyBMaW5rLCB1c2VIaXN0b3J5LCB1c2VMb2NhdGlvbiB9IGZyb20gJ3JlYWN0LXJvdXRlci1kb20nO1xuaW1wb3J0IExlZnRBcnJvd0ljb24gZnJvbSAnc3JjL2Fzc2V0cy9pY29ucy9hcnJvdy1sZWZ0LnN2Zyc7XG5pbXBvcnQgeyBSZWFjdENvbXBvbmVudCBhcyBGaWx0ZXJJY29uIH0gZnJvbSAnc3JjL2Fzc2V0cy9pY29ucy9mdW5uZWwuc3ZnJztcbmltcG9ydCBOb0V2ZW50c0ltYWdlIGZyb20gJ3NyYy9hc3NldHMvbm9fZXZlbnRzLnN2Zyc7XG5pbXBvcnQgeyBTZXZlcmVFdmVudCB9IGZyb20gJ3NyYy9jb21wb25lbnRzL1NldmVyZUV2ZW50L1NldmVyZUV2ZW50JztcbmltcG9ydCB7IElBcHBTdGF0ZSB9IGZyb20gJ3NyYy9tb2RlbHMvSUFwcFN0YXRlJztcbmltcG9ydCB7IHVzZUxhc3RWaXNpdGVkIH0gZnJvbSAnc3JjL3Byb3ZpZGVycy9VcmxIaXN0b3J5JztcbmltcG9ydCB7XG4gIGZldGNoRXZlbnRzLFxuICBzZXRGb2N1c2VkRXZlbnQsXG4gIHNldEhvdmVyZWRFZGdlUGF0aHMsXG4gIHNldEhvdmVyZWRFdmVudCxcbiAgc2V0SG92ZXJlZEV2ZW50UGF0aHMsXG59IGZyb20gJ3NyYy9zdG9yZS9ldmVudHMvYWN0aW9ucyc7XG5pbXBvcnQgeyBJRXZlbnQgfSBmcm9tICdzcmMvc3RvcmUvZXZlbnRzL21vZGVscy9JRXZlbnQnO1xuaW1wb3J0IHsgc2V0RXZlbnRGaWx0ZXJQYXJhbSwgc2lkZU5hdkV4cGFuZGVkIH0gZnJvbSAnc3JjL3N0b3JlL2dsb2JhbC9hY3Rpb25zJztcbmltcG9ydCBpMThuIGZyb20gJ3NyYy91dGlsaXRpZXMvaTE4bic7XG5pbXBvcnQgJy4uL0V2ZW50c1N0eWxlLnNjc3MnO1xuaW1wb3J0IEV2ZW50SW5mbyBmcm9tICcuLi9ldmVudF9pbmZvL0V2ZW50SW5mbyc7XG5pbXBvcnQgTW9yZUluZm8gZnJvbSAnLi4vTW9yZUluZm8nO1xuaW1wb3J0IEZpbHRlckNvbnRhaW5lciBmcm9tICcuL0ZpbHRlci9GaWx0ZXJDb250YWluZXInO1xuaW1wb3J0IFNvcnQgZnJvbSAnLi9Tb3J0JztcblxuZnVuY3Rpb24gbWFwU3RhdGVUb1Byb3BzKHN0YXRlOiBJQXBwU3RhdGUpIHtcbiAgY29uc3Qge1xuICAgIGV2ZW50c19kYXRhLFxuICAgIGdsb2JhbF9kYXRhLFxuICAgIGVkZ2VzX2RhdGEsXG4gICAgcG9pbnRzX2RhdGEsXG4gICAgYXJlYXNfZGF0YSxcbiAgICBuYXZfY29udGV4dF9kYXRhLFxuICB9ID0gc3RhdGU7XG5cbiAgcmV0dXJuIHtcbiAgICBldmVudHNfZGF0YSxcbiAgICBnbG9iYWxfZGF0YSxcbiAgICBlZGdlc19kYXRhLFxuICAgIHBvaW50c19kYXRhLFxuICAgIGFyZWFzX2RhdGEsXG4gICAgbmF2X2NvbnRleHRfZGF0YSxcbiAgfTtcbn1cblxudHlwZSBJUHJvcHMgPSBDb25uZWN0ZWRQcm9wczx0eXBlb2YgY29ubmVjdG9yPiAmIHtcbiAgc2lkZW5hdkV4cGFuZGVkOiBib29sZWFuO1xufTtcblxuY29uc3QgRXZlbnRzTGlzdDogUmVhY3QuRkM8SVByb3BzPiA9ICh7XG4gIGFyZWFzX2RhdGEsXG4gIHBvaW50c19kYXRhLFxuICBlZGdlc19kYXRhLFxuICBnbG9iYWxfZGF0YSxcbiAgc2lkZW5hdkV4cGFuZGVkLFxuICBldmVudHNfZGF0YSxcbiAgbmF2X2NvbnRleHRfZGF0YSxcbn0pID0+IHtcbiAgY29uc3QgZGlzcGF0Y2ggPSB1c2VEaXNwYXRjaCgpO1xuICBjb25zdCB7XG4gICAgaXRlbXMsXG4gICAgaXNGZXRjaGluZyxcbiAgICBmb2N1c2VkRXZlbnQsXG4gICAgaG92ZXJlZEV2ZW50LFxuICAgIGhvdmVyZWRFdmVudFBhdGhzLFxuICAgIGhvdmVyZWRFZGdlUGF0aHMsXG4gIH0gPSBldmVudHNfZGF0YTtcbiAgY29uc3QgeyB3YXRlckF1dGhvcml0eUlkLCBtYXAgfSA9IGdsb2JhbF9kYXRhO1xuICBjb25zdCBbZmlsdGVyUG9wdXBPcGVuLCBzZXRGaWx0ZXJQb3B1cE9wZW5dID0gdXNlU3RhdGUodHJ1ZSk7XG4gIGNvbnN0IFtleGNlcHRpb25BbGVydCwgc2V0RXhjZXB0aW9uQWxlcnRdID0gdXNlU3RhdGU8e1xuICAgIG1lc3NhZ2VzOiB7IG1lc3NhZ2U6IGFueTsgZXZlbnRfaWQ6IG51bWJlciB9W107XG4gICAgZXZlbnRfaWRzOiBudW1iZXJbXTtcbiAgfT4oeyBtZXNzYWdlczogW3sgbWVzc2FnZTogJycsIGV2ZW50X2lkOiAwIH1dLCBldmVudF9pZHM6IFtdIH0pO1xuICBjb25zdCBsYXN0VmlzaXRlZCA9IHVzZUxhc3RWaXNpdGVkKCk7XG5cbiAgY29uc3QgdXNlUXVlcnkgPSAoKSA9PiB7XG4gICAgcmV0dXJuIG5ldyBVUkxTZWFyY2hQYXJhbXModXNlTG9jYXRpb24oKS5zZWFyY2gpO1xuICB9O1xuICBjb25zdCBoaXN0b3J5ID0gdXNlSGlzdG9yeSgpO1xuICBjb25zdCBxdWVyeSA9IHVzZVF1ZXJ5KCk7XG4gIGNvbnN0IGdldEtRTFZhbHVlc0Zyb21VUkwgPSAoKSA9PiB7XG4gICAgcmV0dXJuIHF1ZXJ5LmdldCgndmFsdWVzRnJvbUtRTCcpO1xuICB9O1xuICBjb25zdCBnZXRFdmVudElkRnJvbVVSTCA9ICgpID0+IHtcbiAgICByZXR1cm4gcXVlcnkuZ2V0KCdldmVudElkJyk7XG4gIH07XG5cbiAgY29uc3QgbG9hZGVyID0gKCkgPT4ge1xuICAgIGlmIChcbiAgICAgIChpc0ZldGNoaW5nICYmIGl0ZW1zLmxlbmd0aCA9PT0gMCkgfHxcbiAgICAgIGFyZWFzX2RhdGEubmV3QXJlYXMubGVuZ3RoID09PSAwIHx8XG4gICAgICBwb2ludHNfZGF0YS5pc0ZldGNoaW5nIHx8XG4gICAgICBlZGdlc19kYXRhLmlzRmV0Y2hpbmdcbiAgICApIHtcbiAgICAgIHJldHVybiA8ZGl2IGNsYXNzTmFtZT17J2xvYWRlcid9PjwvZGl2PjtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGhhbmRsZUV4cGFuc2lvblRvZ2dsZSA9ICgpID0+IHtcbiAgICBkaXNwYXRjaChzaWRlTmF2RXhwYW5kZWQoIXNpZGVuYXZFeHBhbmRlZCkpO1xuICB9O1xuXG4gIGNvbnN0IGFwcGx5RGVmYXVsdEZpbHRlciA9ICgpID0+IHtcbiAgICBoaXN0b3J5LnB1c2goXG4gICAgICBgLyR7bmF2X2NvbnRleHRfZGF0YS5uYXZDb250ZXh0Lm5hbWV9L2luZGV4P3dhdGVyX2F1dGhvcml0eV9pZD0ke2dsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWR9JmxvY2FsZT0ke25hdl9jb250ZXh0X2RhdGEubmF2Q29udGV4dC5sb2NhbGV9JnZhbHVlc0Zyb21LUUw9YCxcbiAgICApO1xuICAgIGRpc3BhdGNoKHNldEV2ZW50RmlsdGVyUGFyYW0oJycpKTtcbiAgfTtcblxuICBjb25zdCB2YWxpZGF0ZUV2ZW50ID0gKGV2ZW50OiBJRXZlbnQpID0+IHtcbiAgICAvLyBjaGVjayB0aGF0IGFsbCBvYnNlcnZhdGlvbnMnIGVkZ2VzIGV4aXN0cy4gSWYgdGhleSBhcmUgbm90IGV4aXN0cyBpdCdzIGluZGljYXRlcyB0aGF0IHRoZWlyIHBvaW50cyBhcmVcbiAgICAvLyBub3QgaW4gdGhlIGhpZXJhcmNoeSBvciBkb2Vzbid0IGhhdmUgbGF0L2xuZy5cbiAgICBsZXQgaW52YWxpZE9ic2VydmF0aW9uc01lc3NhZ2VzOiBhbnkgPSBbXTtcbiAgICBldmVudC5vYnNlcnZhdGlvbnMuZm9yRWFjaCgob2JzZXJ2YXRpb246IGFueSkgPT4ge1xuICAgICAgLy8gaWYgb2JzZXJ2YXRpb24gaXMgcm9vdCAoZXguIFdXVFApIHRoZXJlIGlzIG5vIGVkZ2UgdGhhdCBpdHMgYSBzb3VyY2UuIHNvIHdlIGNhbiBza2lwIHRoaXMgY2hlY2tcbiAgICAgIGlmICghb2JzZXJ2YXRpb24ucG9pbnRfaXNfcm9vdCkge1xuICAgICAgICBsZXQgZWRnZSA9IGVkZ2VzX2RhdGEuaXRlbXMuZmluZChcbiAgICAgICAgICAoZWRnZSkgPT4gZWRnZS5zb3VyY2VfcG9pbnRfaWQgPT09IG9ic2VydmF0aW9uLnBvaW50X2lkLFxuICAgICAgICApO1xuICAgICAgICBpZiAoZWRnZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgaW52YWxpZE9ic2VydmF0aW9uc01lc3NhZ2VzLnB1c2goXG4gICAgICAgICAgICBgJHtvYnNlcnZhdGlvbi5wb2ludF9uYW1lfSAoJHtvYnNlcnZhdGlvbi5wb2ludF9pZH0pIGAsXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuXG4gICAgaWYgKGludmFsaWRPYnNlcnZhdGlvbnNNZXNzYWdlcy5sZW5ndGggIT09IDApIHtcbiAgICAgIGxldCBpbmRleCA9IGV4Y2VwdGlvbkFsZXJ0Lm1lc3NhZ2VzLmZpbmRJbmRleChcbiAgICAgICAgKG1zZykgPT4gbXNnLmV2ZW50X2lkID09PSBldmVudC5pZCxcbiAgICAgICk7XG5cbiAgICAgIGlmIChpbmRleCA9PT0gLTEpIHtcbiAgICAgICAgc2V0RXhjZXB0aW9uQWxlcnQoe1xuICAgICAgICAgIG1lc3NhZ2VzOiBbXG4gICAgICAgICAgICAuLi5leGNlcHRpb25BbGVydC5tZXNzYWdlcyxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbWVzc2FnZTogKFxuICAgICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgICA8cD57aTE4bi50KCdldmVudHNfb3ZlcnZpZXcuZXZlbnRfZGF0YV9taXNzaW5nJyl9PC9wPlxuICAgICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICBldmVudF9pZDogZXZlbnQuaWQsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgZXZlbnRfaWRzOiBbLi4uZXhjZXB0aW9uQWxlcnQuZXZlbnRfaWRzLCBldmVudC5pZF0sXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIC8vIHNhbWUgY2hlY2sgYXMgYWJvdmUgYnV0IHRoaXMgdGltZSBmb3IgdGhlIGV2ZW50IHBhdGguIElmIGVkZ2UgZG9lc24ndCBleGlzdCwgaXQncyBpbmRpY2F0ZXMgdGhhdCBvbmUgb2YgdGhlXG4gICAgLy8gcG9pbnRzIGRvd25zdHJlYW0gZG9lc24ndCBoYXZlIGxhdC9sbmcuXG4gICAgbGV0IGludmFsaWRQYXRoTWVzc2FnZXM6IGFueSA9IFtdO1xuICAgIGV2ZW50LnBhdGguZm9yRWFjaCgocGF0aDogYW55KSA9PiB7XG4gICAgICBsZXQgZWRnZSA9IGVkZ2VzX2RhdGEuaXRlbXMuZmluZCgoZWRnZSkgPT4gZWRnZS5pZCA9PT0gcGF0aC5lZGdlX2lkKTtcbiAgICAgIGlmIChlZGdlID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgY29uc29sZS5lcnJvcihgZWRnZSAke3BhdGguZWRnZV9pZH0gY2FuIG5vdCBiZSBmb3VuZGApO1xuICAgICAgICBsZXQgb2JzZXJ2YXRpb24gPSBldmVudC5vYnNlcnZhdGlvbnMuZmluZChcbiAgICAgICAgICAob2JzZXJ2YXRpb24pID0+IG9ic2VydmF0aW9uLmlkID09PSBwYXRoLmxhc3Rfb2JzZXJ2YXRpb25faWQsXG4gICAgICAgICk7XG4gICAgICAgIGxldCBsYXN0T2JzZXJ2YXRpb25Qb2ludCA9ICdOb3QgZm91bmQnO1xuICAgICAgICBpZiAob2JzZXJ2YXRpb24pIHtcbiAgICAgICAgICBsYXN0T2JzZXJ2YXRpb25Qb2ludCA9IG9ic2VydmF0aW9uLnBvaW50X25hbWU7XG4gICAgICAgICAgY29uc29sZS5lcnJvcignbGFzdE9ic2VydmF0aW9uUG9pbnQnLCBsYXN0T2JzZXJ2YXRpb25Qb2ludCk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBpbnZhbGlkUGF0aE1lc3NhZ2VzLnB1c2goYCR7bGFzdE9ic2VydmF0aW9uUG9pbnR9IGApO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgaWYgKGludmFsaWRQYXRoTWVzc2FnZXMubGVuZ3RoICE9PSAwKSB7XG4gICAgICBzZXRFeGNlcHRpb25BbGVydCh7XG4gICAgICAgIG1lc3NhZ2VzOiBbXG4gICAgICAgICAgLi4uZXhjZXB0aW9uQWxlcnQubWVzc2FnZXMsXG4gICAgICAgICAge1xuICAgICAgICAgICAgbWVzc2FnZTogKFxuICAgICAgICAgICAgICA8PlxuICAgICAgICAgICAgICAgIDxwPntpMThuLnQoJ2V2ZW50c19vdmVydmlldy5ldmVudF92ZXJpZnlfY29vcmRpbmF0ZXMnKX08L3A+XG4gICAgICAgICAgICAgICAgPHNwYW4+e2ludmFsaWRQYXRoTWVzc2FnZXN9PC9zcGFuPlxuICAgICAgICAgICAgICA8Lz5cbiAgICAgICAgICAgICksXG4gICAgICAgICAgICBldmVudF9pZDogZXZlbnQuaWQsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgZXZlbnRfaWRzOiBbLi4uZXhjZXB0aW9uQWxlcnQuZXZlbnRfaWRzLCBldmVudC5pZF0sXG4gICAgICB9KTtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfTtcblxuICBjb25zdCBoYW5kbGVFdmVudEl0ZW1DbGljayA9IChcbiAgICBldmVudDogSUV2ZW50LFxuICAgIHJlZjogUmVmT2JqZWN0PEhUTUxFbGVtZW50PiB8IG51bGwsXG4gICkgPT4ge1xuICAgIGlmIChyZWYgIT09IG51bGwpIG9uTW91c2VMZWF2ZUV2ZW50KCk7XG4gICAgLy8gaWYgKGhvdmVyZWRFdmVudFBhdGhzICYmIG1hcCkge1xuICAgIC8vICAgICBob3ZlcmVkRXZlbnRQYXRocy5mb3JFYWNoKChwYXRoKSA9PiB7XG4gICAgLy8gICAgICAgICBtYXAucmVtb3ZlTGF5ZXIocGF0aCk7XG4gICAgLy8gICAgIH0pO1xuICAgIC8vIH1cbiAgICAvLyBkaXNwYXRjaChzZXRIb3ZlcmVkRXZlbnRQYXRocyhbXSkpO1xuICAgIC8vIGRpc3BhdGNoKHNldEhvdmVyRXZlbnRJbmRpY2F0b3IobnVsbCkpO1xuICAgIGRpc3BhdGNoKHNldEZvY3VzZWRFdmVudChldmVudCkpO1xuICAgIHNldEZpbHRlclBvcHVwT3BlbihmYWxzZSk7XG4gICAgaWYgKGdldEV2ZW50SWRGcm9tVVJMKCkgPT09IG51bGwgfHwgZ2V0RXZlbnRJZEZyb21VUkwoKSA9PT0gJ251bGwnKSB7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgaGlzdG9yeS5wdXNoKFxuICAgICAgICAgIGAvJHtuYXZfY29udGV4dF9kYXRhLm5hdkNvbnRleHQubmFtZX0vaW5kZXg/d2F0ZXJfYXV0aG9yaXR5X2lkPSR7XG4gICAgICAgICAgICBnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkXG4gICAgICAgICAgfSZsb2NhbGU9JHtuYXZfY29udGV4dF9kYXRhLm5hdkNvbnRleHQubG9jYWxlfSZldmVudElkPSR7XG4gICAgICAgICAgICBldmVudC5pZFxuICAgICAgICAgIH0mdmFsdWVzRnJvbUtRTD0ke1xuICAgICAgICAgICAgZ2xvYmFsX2RhdGEuZXZlbnRGaWx0ZXJQYXJhbVxuICAgICAgICAgIH0mdmFsaWRFdmVudD0ke3ZhbGlkYXRlRXZlbnQoZXZlbnQpfWAsXG4gICAgICAgICk7XG4gICAgICB9LCA1MDApO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBvbk1vdXNlRW50ZXJFdmVudCA9IChldmVudCkgPT4ge1xuICAgIGlmICghZm9jdXNlZEV2ZW50ICYmICFob3ZlcmVkRXZlbnQgJiYgdmFsaWRhdGVFdmVudChldmVudCkpIHtcbiAgICAgIGRpc3BhdGNoKHNldEhvdmVyZWRFdmVudChldmVudCkpO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBvbk1vdXNlTGVhdmVFdmVudCA9ICgpID0+IHtcbiAgICBpZiAoaG92ZXJlZEV2ZW50ICYmIGhvdmVyZWRFdmVudFBhdGhzICYmIG1hcCkge1xuICAgICAgaG92ZXJlZEV2ZW50UGF0aHMuZm9yRWFjaCgocGF0aCkgPT4ge1xuICAgICAgICBtYXAucmVtb3ZlTGF5ZXIocGF0aCk7XG4gICAgICB9KTtcblxuICAgICAgaWYgKGhvdmVyZWRFZGdlUGF0aHMpIHtcbiAgICAgICAgaG92ZXJlZEVkZ2VQYXRocy5mb3JFYWNoKChwYXRoKSA9PiB7XG4gICAgICAgICAgbWFwLnJlbW92ZUxheWVyKHBhdGgpO1xuICAgICAgICB9KTtcbiAgICAgIH1cblxuICAgICAgbGV0IGxheWVycyA9IG1hcC5fbGF5ZXJzO1xuICAgICAgZm9yIChjb25zdCBwcm9wZXJ0eSBpbiBsYXllcnMpIHtcbiAgICAgICAgY29uc3Qga2FuZG9fb2JqZWN0ID0gbGF5ZXJzW3Byb3BlcnR5XS5rYW5kb19vYmplY3Q7XG4gICAgICAgIGlmIChcbiAgICAgICAgICBrYW5kb19vYmplY3Q/LmluY2x1ZGVzKCdFdmVudEJvZHknKSB8fFxuICAgICAgICAgIFtcbiAgICAgICAgICAgICdFdmVudFRhaWwnLFxuICAgICAgICAgICAgJ1NhbXBsaW5nUG9pbnQnLFxuICAgICAgICAgICAgJ0RlY29yYXRvcicsXG4gICAgICAgICAgICAnSG92ZXJlZEVkZ2UnLFxuICAgICAgICAgICAgJ0hvdmVyZWRFZGdlRnJvbnQnLFxuICAgICAgICAgICAgJ0ZvY3VzZWRFZGdlJyxcbiAgICAgICAgICAgICdGb2N1c2VkRWRnZUZyb250JyxcbiAgICAgICAgICBdLmluY2x1ZGVzKGthbmRvX29iamVjdClcbiAgICAgICAgKSB7XG4gICAgICAgICAgbWFwLnJlbW92ZUxheWVyKGxheWVyc1twcm9wZXJ0eV0pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIGRpc3BhdGNoKHNldEhvdmVyZWRFdmVudChudWxsKSk7XG4gICAgZGlzcGF0Y2goc2V0SG92ZXJlZEV2ZW50UGF0aHMoW10pKTtcbiAgICBkaXNwYXRjaChzZXRIb3ZlcmVkRWRnZVBhdGhzKFtdKSk7XG4gIH07XG5cbiAgY29uc3QgaXNEYXRhRmV0Y2hlZEFuZEV2ZW50Tm90Rm9jdXNlZCA9ICgpID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgKGdldEV2ZW50SWRGcm9tVVJMKCkgPT09ICdudWxsJyB8fCBnZXRFdmVudElkRnJvbVVSTCgpID09PSBudWxsKSAmJlxuICAgICAgZm9jdXNlZEV2ZW50ID09PSBudWxsICYmXG4gICAgICBpdGVtcy5sZW5ndGggIT09IDAgJiZcbiAgICAgICFpc0ZldGNoaW5nICYmXG4gICAgICAhYXJlYXNfZGF0YS5pc0ZldGNoaW5nICYmXG4gICAgICAhcG9pbnRzX2RhdGEuaXNGZXRjaGluZyAmJlxuICAgICAgIWVkZ2VzX2RhdGEuaXNGZXRjaGluZ1xuICAgICk7XG4gIH07XG5cbiAgY29uc3Qgc2V0Rm9jdXNlZEV2ZW50SWZGb3VuZEluUGFyYW1zID0gKCkgPT4ge1xuICAgIGlmIChcbiAgICAgIGdldEV2ZW50SWRGcm9tVVJMKCkgIT09IG51bGwgJiZcbiAgICAgIGdldEV2ZW50SWRGcm9tVVJMKCkgIT09ICdudWxsJyAmJlxuICAgICAgZm9jdXNlZEV2ZW50ID09PSBudWxsICYmXG4gICAgICBpdGVtcy5sZW5ndGggIT09IDAgJiZcbiAgICAgICFpc0ZldGNoaW5nICYmXG4gICAgICAhYXJlYXNfZGF0YS5pc0ZldGNoaW5nICYmXG4gICAgICAhcG9pbnRzX2RhdGEuaXNGZXRjaGluZyAmJlxuICAgICAgIWVkZ2VzX2RhdGEuaXNGZXRjaGluZ1xuICAgICkge1xuICAgICAgbGV0IGV2ZW50ID0gZXZlbnRzX2RhdGEuaXRlbXMuZmluZChcbiAgICAgICAgKGU6IElFdmVudCkgPT4gZS5pZCA9PT0gcGFyc2VJbnQoZ2V0RXZlbnRJZEZyb21VUkwoKSEpLFxuICAgICAgKTtcbiAgICAgIGlmIChldmVudCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgIGhhbmRsZUV2ZW50SXRlbUNsaWNrKGV2ZW50LCBudWxsKTtcbiAgICAgICAgfSwgNTAwKTtcbiAgICAgIH1cbiAgICB9XG4gIH07XG5cbiAgY29uc3QgdmFsaWRFdmVudCA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGxldCBldmVudCA9IGV2ZW50c19kYXRhLml0ZW1zLmZpbmQoXG4gICAgICAoZSkgPT4gZS5pZC50b1N0cmluZygpID09PSBnZXRFdmVudElkRnJvbVVSTCgpLFxuICAgICk7XG5cbiAgICBpZiAoZXZlbnQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgcmV0dXJuIHZhbGlkYXRlRXZlbnQoZXZlbnQpO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH0sIFtcbiAgICBldmVudHNfZGF0YS5mb2N1c2VkRXZlbnQsXG4gICAgYXJlYXNfZGF0YS5pc0ZldGNoaW5nLFxuICAgIHBvaW50c19kYXRhLmlzRmV0Y2hpbmcsXG4gICAgZWRnZXNfZGF0YS5pc0ZldGNoaW5nLFxuICAgIGV2ZW50c19kYXRhLmlzRmV0Y2hpbmcsXG4gIF0pO1xuXG4gIGNvbnN0IHRyaWdnZXJTb3J0ID0gKHNvcnQ6IG51bWJlcikgPT4ge1xuICAgIGlmIChcbiAgICAgIGdsb2JhbF9kYXRhLmFjdGl2ZUZpbHRlciAhPT0gbnVsbCAmJlxuICAgICAgaXNEYXRhRmV0Y2hlZEFuZEV2ZW50Tm90Rm9jdXNlZCgpXG4gICAgKSB7XG4gICAgICBjb25zb2xlLndhcm4oJ3NvcnQnLCBzb3J0KTtcbiAgICAgIGNvbnNvbGUud2FybigndmFsaWRFdmVudCcsIHZhbGlkRXZlbnQpO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBjYWxjRXZlbnRzUmVhbEFtb3VudCA9ICgpID0+IHtcbiAgICBsZXQgZXZlbnRzQ291bnQ6IG51bWJlciB8IHN0cmluZyA9IDA7XG4gICAgZXZlbnRzQ291bnQgPSBldmVudHNfZGF0YS5ldmVudHNfY291bnQ7XG4gICAgaWYgKGV2ZW50c0NvdW50ID4gNTApXG4gICAgICBldmVudHNDb3VudCA9IGAke2kxOG4udCgnZXZlbnRzX292ZXJ2aWV3Lm1vcmVfdGhhbicpfSA1MGA7XG5cbiAgICByZXR1cm4gZXZlbnRzQ291bnQ7XG4gIH07XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBkaXNwYXRjaChcbiAgICAgIGZldGNoRXZlbnRzKFxuICAgICAgICB3YXRlckF1dGhvcml0eUlkLFxuICAgICAgICBnZXRLUUxWYWx1ZXNGcm9tVVJMKCkgfHwgJ0RFRkFVTFQnLFxuICAgICAgICBnZXRFdmVudElkRnJvbVVSTCgpLFxuICAgICAgKSxcbiAgICApO1xuICB9LCBbXG4gICAgZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZCxcbiAgICBnbG9iYWxfZGF0YS5ldmVudEZpbHRlclBhcmFtLFxuICAgIGZvY3VzZWRFdmVudCxcbiAgXSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoXG4gICAgICAhZXZlbnRzX2RhdGEuaXNGZXRjaGluZyAmJlxuICAgICAgIWVkZ2VzX2RhdGEuaXNGZXRjaGluZyAmJlxuICAgICAgIXBvaW50c19kYXRhLmlzRmV0Y2hpbmcgJiZcbiAgICAgICFhcmVhc19kYXRhLmlzRmV0Y2hpbmcgJiZcbiAgICAgIGZpbHRlclBvcHVwT3BlblxuICAgICkge1xuICAgICAgc2V0Rm9jdXNlZEV2ZW50SWZGb3VuZEluUGFyYW1zKCk7XG4gICAgfVxuICB9LCBbXG4gICAgZXZlbnRzX2RhdGEuaXNGZXRjaGluZyxcbiAgICBlZGdlc19kYXRhLmlzRmV0Y2hpbmcsXG4gICAgcG9pbnRzX2RhdGEuaXNGZXRjaGluZyxcbiAgICBhcmVhc19kYXRhLmlzRmV0Y2hpbmcsXG4gICAgZ2xvYmFsX2RhdGEuZXZlbnRGaWx0ZXJQYXJhbSxcbiAgICBmaWx0ZXJQb3B1cE9wZW4sXG4gIF0pO1xuXG4gIHJldHVybiAoXG4gICAgPGRpdiBjbGFzc05hbWU9eydzaWRlbmF2ICcgKyAoc2lkZW5hdkV4cGFuZGVkID8gJycgOiAnc2lkZW5hdi0tY29sbGFwc2VkJyl9PlxuICAgICAge2dsb2JhbF9kYXRhLm1vcmVJbmZvICE9PSB1bmRlZmluZWQgJiYgZ2xvYmFsX2RhdGEubW9yZUluZm8uYWN0aXZlICYmIChcbiAgICAgICAgPE1vcmVJbmZvIC8+XG4gICAgICApfVxuXG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzTmFtZT17XG4gICAgICAgICAgJ2V2ZW50LWluZm8gJyArXG4gICAgICAgICAgKCFob3ZlcmVkRXZlbnQgJiYgZm9jdXNlZEV2ZW50ICE9PSBudWxsXG4gICAgICAgICAgICA/ICcnXG4gICAgICAgICAgICA6ICdldmVudC1pbmZvLS1jb2xsYXBzZWQnKVxuICAgICAgICB9XG4gICAgICA+XG4gICAgICAgIHshaG92ZXJlZEV2ZW50ICYmIGZvY3VzZWRFdmVudCAhPT0gbnVsbCAmJiAoXG4gICAgICAgICAgPEV2ZW50SW5mb1xuICAgICAgICAgICAgZXZlbnQ9e2ZvY3VzZWRFdmVudH1cbiAgICAgICAgICAgIHJlT3BlbkZpbHRlcj17KCkgPT4gc2V0RmlsdGVyUG9wdXBPcGVuKHRydWUpfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXZcbiAgICAgICAgY2xhc3NOYW1lPVwidG9nZ2xlLWV4cGFuc2lvbi1idXR0b25cIlxuICAgICAgICBvbkNsaWNrPXsoKSA9PiB7XG4gICAgICAgICAgaGFuZGxlRXhwYW5zaW9uVG9nZ2xlKCk7XG4gICAgICAgIH19XG4gICAgICA+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibmF2LWV4cGFuc2lvbi1pY29uXCI+XG4gICAgICAgICAgPEZvbnRBd2Vzb21lSWNvblxuICAgICAgICAgICAgaWNvbj17c2lkZW5hdkV4cGFuZGVkID8gZmFDYXJldExlZnQgOiBmYUNhcmV0UmlnaHR9XG4gICAgICAgICAgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXZcbiAgICAgICAgY2xhc3NOYW1lPXsndG9nZ2xlLWV4cGFuc2lvbi1idXR0b24tbW9iaWxlJ31cbiAgICAgICAgb25DbGljaz17KCkgPT4ge1xuICAgICAgICAgIGhhbmRsZUV4cGFuc2lvblRvZ2dsZSgpO1xuICAgICAgICB9fVxuICAgICAgPlxuICAgICAgICA8YSBocmVmPVwiI1wiPlxuICAgICAgICAgIDxGb250QXdlc29tZUljb24gaWNvbj17ZmFBcnJvd0xlZnR9IC8+XG4gICAgICAgICAgPHNwYW4+IHtpMThuLnQoJ2V2ZW50c19vdmVydmlldy5iYWNrX3RvX2RldGFpbHMnKX08L3NwYW4+XG4gICAgICAgIDwvYT5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJldmVudHMtaGVhZGVyXCI+XG4gICAgICAgIHtsYXN0VmlzaXRlZCAmJiAhaXNGZXRjaGluZyAmJiAoXG4gICAgICAgICAgPExpbmsgY2xhc3NOYW1lPVwiYmFja1wiIHRvPXtsYXN0VmlzaXRlZH0+XG4gICAgICAgICAgICB7JyAnfVxuICAgICAgICAgICAgPGltZ1xuICAgICAgICAgICAgICBzcmM9e0xlZnRBcnJvd0ljb259XG4gICAgICAgICAgICAgIGhlaWdodD1cIjEwcHhcIlxuICAgICAgICAgICAgICB3aWR0aD1cIjEycHhcIlxuICAgICAgICAgICAgICBhbHQ9XCJiYWNrXCJcbiAgICAgICAgICAgIC8+eycgJ31cbiAgICAgICAgICAgIHtpMThuLnQoJ2FyZWFfc2NyZWVuLmJhY2snKX1cbiAgICAgICAgICA8L0xpbms+XG4gICAgICAgICl9XG4gICAgICAgIDxoND5cbiAgICAgICAgICB7aTE4bi50KCdldmVudHNfb3ZlcnZpZXcuZXZlbnRzX2xpc3QnKX1cbiAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9eydldmVudHMtaGVhZGVyX19ldmVudHNfYW1vdW50J30+XG4gICAgICAgICAgICAoe2NhbGNFdmVudHNSZWFsQW1vdW50KCl9KVxuICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPC9oND5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmaWx0ZXJpbmdcIj5cbiAgICAgICAgICB7ZXZlbnRzX2RhdGEuaXRlbXMubGVuZ3RoICE9PSAwICYmIChcbiAgICAgICAgICAgIDxTb3J0XG4gICAgICAgICAgICAgIHRyaWdnZXJTb3J0PXt0cmlnZ2VyU29ydH1cbiAgICAgICAgICAgICAgZXZlbnRzPXtldmVudHNfZGF0YS5pdGVtc31cbiAgICAgICAgICAgICAgZXZlbnRzRmV0Y2hpbmc9e2V2ZW50c19kYXRhLmlzRmV0Y2hpbmd9XG4gICAgICAgICAgICAgIGFjdGl2ZUZpbHRlcj17Z2xvYmFsX2RhdGEuYWN0aXZlRmlsdGVyfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApfVxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiaWNvbnNcIj5cbiAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgY2xhc3NOYW1lPVwiZmlsdGVyXCJcbiAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gc2V0RmlsdGVyUG9wdXBPcGVuKCFmaWx0ZXJQb3B1cE9wZW4pfVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8RmlsdGVySWNvbiB3aWR0aD1cIjE3cHhcIiBoZWlnaHQ9XCIxN3B4XCIgZmlsbD1cIiNmNjAwNGZcIiAvPlxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIHtwb2ludHNfZGF0YS5pdGVtcy5sZW5ndGggIT09IDAgJiYgIWZvY3VzZWRFdmVudCAmJiAoXG4gICAgICAgICAgPEZpbHRlckNvbnRhaW5lclxuICAgICAgICAgICAgZmlsdGVyUG9wdXBPcGVuPXtmaWx0ZXJQb3B1cE9wZW59XG4gICAgICAgICAgICBmZXRjaFR5cGU9eydFdmVudEZpbHRlcid9XG4gICAgICAgICAgLz5cbiAgICAgICAgKX1cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJldmVudHMtY29udGFpbmVyIHNjcm9sbGJhciBcIj5cbiAgICAgICAge2xvYWRlcigpfVxuICAgICAgICB7IWlzRmV0Y2hpbmcgJiZcbiAgICAgICAgICBpdGVtcy5sZW5ndGggPT09IDAgJiZcbiAgICAgICAgICAhcG9pbnRzX2RhdGEuaXNGZXRjaGluZyAmJlxuICAgICAgICAgICFlZGdlc19kYXRhLmlzRmV0Y2hpbmcgJiYgKFxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9eydldmVudHNfX2JsYW5rc2xhdGUnfT5cbiAgICAgICAgICAgICAgPGltZyBzcmM9e05vRXZlbnRzSW1hZ2V9IGFsdD1cIk5vRXZlbnRzSWNvblwiIC8+XG4gICAgICAgICAgICAgIDxoMj57aTE4bi50KCdldmVudHNfb3ZlcnZpZXcuZmlsdGVyLmJsYW5rc2xhdGUuaGVhZGVyJyl9PC9oMj5cbiAgICAgICAgICAgICAgPHA+e2kxOG4udCgnZXZlbnRzX292ZXJ2aWV3LmZpbHRlci5ibGFua3NsYXRlLmJvZHknKX08L3A+XG4gICAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lPXsnYXBwbHlfZGVmYXVsdF9maWx0ZXJfYnV0dG9uJ31cbiAgICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBhcHBseURlZmF1bHRGaWx0ZXIoKX1cbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHtpMThuLnQoJ2V2ZW50c19vdmVydmlldy5maWx0ZXIuYmxhbmtzbGF0ZS5idXR0b24nKX1cbiAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgKX1cbiAgICAgICAge2l0ZW1zLmxlbmd0aCAhPT0gMCAmJlxuICAgICAgICAgICFhcmVhc19kYXRhLmlzRmV0Y2hpbmcgJiZcbiAgICAgICAgICAhcG9pbnRzX2RhdGEuaXNGZXRjaGluZyAmJlxuICAgICAgICAgICFlZGdlc19kYXRhLmlzRmV0Y2hpbmcgJiYgKFxuICAgICAgICAgICAgPHVsIGNsYXNzTmFtZT1cImV2ZW50cyBcIj5cbiAgICAgICAgICAgICAge2l0ZW1zLm1hcCgoZXZlbnQ6IGFueSkgPT4gKFxuICAgICAgICAgICAgICAgIDxsaSBrZXk9e2V2ZW50LmlkfSBjbGFzc05hbWU9XCJldmVudFwiIGRhdGEtZXZlbnQtaWQ9e2V2ZW50LmlkfT5cbiAgICAgICAgICAgICAgICAgIDxTZXZlcmVFdmVudFxuICAgICAgICAgICAgICAgICAgICBldmVudD17ZXZlbnR9XG4gICAgICAgICAgICAgICAgICAgIGhhbmRsZUNsaWNrPXtoYW5kbGVFdmVudEl0ZW1DbGlja31cbiAgICAgICAgICAgICAgICAgICAgb25Nb3VzZUVudGVyRXZlbnQ9e29uTW91c2VFbnRlckV2ZW50fVxuICAgICAgICAgICAgICAgICAgICBvbk1vdXNlTGVhdmVFdmVudD17b25Nb3VzZUxlYXZlRXZlbnR9XG4gICAgICAgICAgICAgICAgICAgIHZhbGlkYXRlRXZlbnQ9e3ZhbGlkYXRlRXZlbnR9XG4gICAgICAgICAgICAgICAgICAgIGV4Y2VwdGlvbkFsZXJ0PXtleGNlcHRpb25BbGVydH1cbiAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgICAgKSl9XG4gICAgICAgICAgICA8L3VsPlxuICAgICAgICAgICl9XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgKTtcbn07XG5cbmNvbnN0IGNvbm5lY3RvciA9IGNvbm5lY3QobWFwU3RhdGVUb1Byb3BzKTtcbmV4cG9ydCBkZWZhdWx0IGNvbm5lY3RvcihFdmVudHNMaXN0KTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7OztBQUNBLElB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
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kando-env/kando-ui",
3
- "version": "1.2.228-alpha.127",
3
+ "version": "1.2.228-alpha.129",
4
4
  "main": "lib/index.js",
5
5
  "author": "Nadav(Private) <nadavk72@gmail.com>",
6
6
  "scripts": {