@agilemotion/oui-react-js 2.0.31 → 2.0.32

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.
@@ -121,8 +121,9 @@ const Calendar = props => {
121
121
  })(_Dialog.default);
122
122
  const loadEvents = function () {
123
123
  let track = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
124
- const eventsUrl = props.config && props.config.eventsUrl || '/calendar/api/v1/event/list';
125
- fetch(encodeURI(location + _ApplicationManager.default.getContextRoot() + eventsUrl), {
124
+ // Configurable path appended to the location + context-root base; defaults to the calendar events endpoint.
125
+ const eventsUrlPath = props.config && props.config.eventsUrlPath || '/calendar/api/v1/event/list';
126
+ fetch(encodeURI(location + _ApplicationManager.default.getContextRoot() + eventsUrlPath), {
126
127
  method: 'GET',
127
128
  headers: {
128
129
  'Accept': 'application/json',
@@ -508,4 +509,4 @@ const Calendar = props => {
508
509
  }, meta.description || meta.conferencingActivityGroup))));
509
510
  };
510
511
  var _default = exports.default = Calendar;
511
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfVXRpbHMiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX09ic2VydmFibGUiLCJfcmVhY3QyIiwiX2xpc3QiLCJfcnJ1bGUiLCJfZGF5Z3JpZCIsIl90aW1lZ3JpZCIsIl9pbnRlcmFjdGlvbiIsIl9tb21lbnQiLCJfcmVhY3RIb3RUb2FzdCIsIl9FdmVudCIsIl9FdmVudFR5cGUiLCJfQXBwbGljYXRpb25NYW5hZ2VyIiwiX0RpYWxvZyIsIl93aXRoU3R5bGVzIiwiX0ljb25CdXR0b24iLCJfSWNvbiIsIl9CdXR0b24iLCJfTWVudSIsIl9NZW51SXRlbSIsIl9DYWxlbmRhciIsImUiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsInQiLCJXZWFrTWFwIiwiciIsIm4iLCJvIiwiaSIsImYiLCJfX3Byb3RvX18iLCJoYXMiLCJnZXQiLCJzZXQiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsIm93bktleXMiLCJrZXlzIiwiZ2V0T3duUHJvcGVydHlTeW1ib2xzIiwiZmlsdGVyIiwiZW51bWVyYWJsZSIsInB1c2giLCJhcHBseSIsIl9vYmplY3RTcHJlYWQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJmb3JFYWNoIiwiX2RlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyIsImRlZmluZVByb3BlcnRpZXMiLCJfdG9Qcm9wZXJ0eUtleSIsInZhbHVlIiwiY29uZmlndXJhYmxlIiwid3JpdGFibGUiLCJfdG9QcmltaXRpdmUiLCJTeW1ib2wiLCJ0b1ByaW1pdGl2ZSIsIlR5cGVFcnJvciIsIlN0cmluZyIsIk51bWJlciIsImV2ZW50VGVtcGxhdGUiLCJpZCIsInRpdGxlIiwic3RhcnQiLCJlbmQiLCJhbGxEYXkiLCJleHRlbmRlZFByb3BzIiwiZGVzY3JpcHRpb24iLCJhdHRlbmRlZXMiLCJpZGVudGlmaWVyIiwibmFtZSIsIm9wdGlvbmFsIiwic2NoZWR1bGUiLCJzdGFydERhdGUiLCJlbmREYXRlIiwic3RhcnRUaW1lIiwiZW5kVGltZSIsImxvY2F0aW9ucyIsInN0YXR1cyIsInJlc3BvbnNlIiwib2siLCJQcm9taXNlIiwicmVzb2x2ZSIsImVycm9yIiwiRXJyb3IiLCJzdGF0dXNUZXh0IiwiY29kZSIsInJlamVjdCIsImpzb24iLCJ0ZXh0IiwibG9jYXRpb24iLCJ3aW5kb3ciLCJwcm90b2NvbCIsImhvc3RuYW1lIiwiQ2FsZW5kYXIiLCJwcm9wcyIsImlzUnRsIiwiZXZlbnRzIiwic2V0RXZlbnRzIiwidXNlU3RhdGUiLCJsb2FkaW5nIiwic2V0TG9hZGluZyIsIm9wZW4iLCJzZXRPcGVuIiwic2VsZWN0ZWRFdmVudCIsInNldFNlbGVjdGVkRXZlbnQiLCJjYWxlbmRhclJlZiIsInVzZVJlZiIsImRpYWxvZ1JlZiIsInJlZnJlc2hlciIsInNldFJlZnJlc2hlciIsImRpYWxvZ1Bvc2l0aW9uIiwic2V0RGlhbG9nUG9zaXRpb24iLCJib3R0b20iLCJyaWdodCIsImNyZWF0ZU1lbnUiLCJzZXRDcmVhdGVNZW51IiwieCIsInkiLCJpdGVtcyIsImluZm8iLCJjb250ZXh0Q2hhbmdlSGFuZGxlciIsImNvdW50ZXIiLCJTdHlsZWREaWFsb2ciLCJ3aXRoU3R5bGVzIiwicm9vdCIsInBvaW50ZXJFdmVudHMiLCJwYXBlciIsIndpZHRoIiwiaGVpZ2h0IiwibWluV2lkdGgiLCJwYWRkaW5nIiwib3ZlcmZsb3ciLCJwb3NpdGlvbiIsImxlZnQiLCJ0b3AiLCJ0cmFuc2Zvcm0iLCJtYXJnaW4iLCJib3JkZXJSYWRpdXMiLCJEaWFsb2ciLCJsb2FkRXZlbnRzIiwidHJhY2siLCJ1bmRlZmluZWQiLCJldmVudHNVcmwiLCJjb25maWciLCJmZXRjaCIsImVuY29kZVVSSSIsImFwcGxpY2F0aW9uTWFuYWdlciIsImdldENvbnRleHRSb290IiwibWV0aG9kIiwiaGVhZGVycyIsInNlc3Npb25TdG9yYWdlIiwiZ2V0SXRlbSIsInRoZW4iLCJKU09OIiwicGFyc2UiLCJjYXRjaCIsImlnbm9yZWQiLCJoYW5kbGVyIiwib25Db250ZXh0Q2hhbmdlIiwiY29udGV4dCIsIm5ld1ZhbHVlcyIsImZpbmQiLCJrZXkiLCJ1c2VFZmZlY3QiLCJhcGkiLCJhZGRBcHBsaWNhdGlvbkNvbnRleHRTdWJzY3JpcHRpb24iLCJjYWxlbmRlclNjcm9sbExpc3RlbmVyIiwiaXNUb2RheU9yRnV0dXJlIiwiZGF0ZVN0ciIsIm1vbWVudCIsIkRhdGUiLCJzdGFydE9mIiwiYnVpbGRDYWxlbmRhckV2ZW50IiwiX3JlZiIsImV2ZW50VHlwZSIsImNvbmZlcmVuY2luZ0FjdGl2aXR5R3JvdXAiLCJtZXRhZGF0YSIsImRhdGUiLCJ0aW1lRGF0ZSIsInNldEhvdXJzIiwiZ2V0SG91cnMiLCJoIiwibSIsImNhbGVuZGFyRXZlbnQiLCJ0b0RhdGUiLCJyZWN1cnJpbmdTdGFydERhdGUiLCJyZWN1cnJpbmdFbmREYXRlIiwiVXRpbHMiLCJpc1N0cmluZ0VtcHR5IiwiZmlyZUNyZWF0ZSIsImV2ZW50IiwiRXZlbnQiLCJoYW5kbGUiLCJ2aWV3SWQiLCJldmVudE1hbmFnZXIiLCJmaXJlRXZlbnQiLCJFdmVudFR5cGUiLCJDQUxFTkRBUl9EQVRFX0NMSUNLIiwiZmlyZUNyZWF0ZUZvck1ldGFkYXRhIiwibWV0YSIsImZldGNoQ3JlYXRlTWV0YWRhdGEiLCJ1cmwiLCJjYWxlbmRhck9wdGlvbnMiLCJwbHVnaW5zIiwiaW50ZXJhY3Rpb25QbHVnaW4iLCJkYXlHcmlkUGx1Z2luIiwidGltZUdyaWRQbHVnaW4iLCJsaXN0UGx1Z2luIiwicnJ1bGVQbHVnaW4iLCJpbml0aWFsVmlldyIsImhlYWRlclRvb2xiYXIiLCJlZGl0YWJsZSIsInN0aWNreUhlYWRlckRhdGVzIiwiZXZlbnRUaW1lRm9ybWF0IiwiaG91ciIsIm1pbnV0ZSIsImhvdXIxMiIsImV2ZW50UmVzaXphYmxlRnJvbVN0YXJ0IiwiZHJhZ1Njcm9sbCIsImRheU1heEV2ZW50cyIsIm5hdkxpbmtzIiwiZXZlbnRDbGFzc05hbWVzIiwiX3JlZjIiLCJjb2xvck5hbWUiLCJjb25jYXQiLCJ2aWV3RGlkTW91bnQiLCJldmVudENsaWNrIiwiX3JlZjMiLCJlbCIsImVsZW1lbnRzQnlDbGFzc05hbWUiLCJkb2N1bWVudCIsImdldEVsZW1lbnRzQnlDbGFzc05hbWUiLCJyZW1vdmVFdmVudExpc3RlbmVyIiwiYWRkRXZlbnRMaXN0ZW5lciIsImRhdGVDbGljayIsImNyZWF0ZUV2ZW50TWV0YWRhdGFVcmwiLCJyZXN1bHQiLCJyZWNvcmRzIiwianNFdmVudCIsImNsaWVudFgiLCJjbGllbnRZIiwiZ2V0Q29tcG9uZW50QXR0cmlidXRlIiwiZXZlbnREcm9wIiwiX3JlZjQiLCJkcm9wcGVkRXZlbnQiLCJ0b2FzdCIsInN1Y2Nlc3MiLCJldmVudFJlc2l6ZSIsIl9yZWY1IiwicmVzaXplZEV2ZW50IiwiZXZlbnRNb3VzZUVudGVyIiwiX3JlZjYiLCJldmVudE1vdXNlTGVhdmUiLCJfcmVmNyIsInJlZiIsImRpcmVjdGlvbiIsIlJlYWN0IiwicGFyc2VkQ29uZmlnIiwicGFyc2VDb25maWciLCJldmVudEhhbmRsaW5nQ29uZmlnIiwiaXNOdWxsIiwic3Vic2NyaXB0aW9ucyIsImFkZFN1YnNjcmlwdGlvbnMiLCJhZGRTeXN0ZW1TdWJzY3JpcHRpb25zIiwidG9EYXRlVGltZVN0cmluZyIsInRvTG9jYWxlRGF0ZVN0cmluZyIsInRpbWVTdHJUb2tlbnMiLCJ0b0xvY2FsZVRpbWVTdHJpbmciLCJzcGxpdCIsImdldEZvcm1PYmplY3QiLCJjYWxlbmRhciIsImNhbGVuZGFyRXZlbnRUb0Zvcm1PYmplY3QiLCJnZXRDaGlsZHJlbiIsImNyZWF0ZUV2ZW50UG9wdXAiLCJjcmVhdGVFbGVtZW50IiwiRnJhZ21lbnQiLCJjbGFzc05hbWUiLCJvbkNsaWNrIiwiY29sb3IiLCJjb25zb2xlIiwibG9nIiwiaG9zdCIsInN0eWxlIiwibWFyZ2luVG9wIiwiaGFzQWN0aXZlTWVldGluZyIsInZhcmlhbnQiLCJzaXplIiwibWFyZ2luUmlnaHQiLCJDQUxFTkRBUl9FVkVOVF9TVEFSVCIsIm1lcmdlU3R5bGVzIiwibWF4SGVpZ2h0Iiwib25DbG9zZSIsImhpZGVCYWNrZHJvcCIsImRpc2FibGVFbmZvcmNlRm9jdXMiLCJkaXNhYmxlQXV0b0ZvY3VzIiwiUGFwZXJQcm9wcyIsImFuY2hvclJlZmVyZW5jZSIsImFuY2hvclBvc2l0aW9uIiwibWFwIiwiaWR4IiwiX2RlZmF1bHQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL0NhbGVuZGFyLmpzeCJdLCJzb3VyY2VzQ29udGVudCI6WyLvu79pbXBvcnQgUmVhY3QsIHt1c2VFZmZlY3QsIHVzZVJlZiwgdXNlU3RhdGV9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBVdGlscyBmcm9tICcuLi9VdGlscyc7XG5pbXBvcnQgZXZlbnRNYW5hZ2VyIGZyb20gJy4uL2V2ZW50L09ic2VydmFibGUnO1xuaW1wb3J0IEZ1bGxDYWxlbmRhciBmcm9tICdAZnVsbGNhbGVuZGFyL3JlYWN0JztcbmltcG9ydCBsaXN0UGx1Z2luIGZyb20gJ0BmdWxsY2FsZW5kYXIvbGlzdCc7XG5pbXBvcnQgcnJ1bGVQbHVnaW4gZnJvbSAnQGZ1bGxjYWxlbmRhci9ycnVsZSc7XG5pbXBvcnQgZGF5R3JpZFBsdWdpbiBmcm9tICdAZnVsbGNhbGVuZGFyL2RheWdyaWQnO1xuaW1wb3J0IHRpbWVHcmlkUGx1Z2luIGZyb20gJ0BmdWxsY2FsZW5kYXIvdGltZWdyaWQnO1xuaW1wb3J0IGludGVyYWN0aW9uUGx1Z2luIGZyb20gJ0BmdWxsY2FsZW5kYXIvaW50ZXJhY3Rpb24nO1xuaW1wb3J0IFwiLi9DYWxlbmRlci5jc3NcIlxuaW1wb3J0IG1vbWVudCBmcm9tIFwibW9tZW50XCI7XG5pbXBvcnQgdG9hc3QgZnJvbSAncmVhY3QtaG90LXRvYXN0JztcbmltcG9ydCBFdmVudCBmcm9tICcuLi9ldmVudC9FdmVudCc7XG5pbXBvcnQgRXZlbnRUeXBlIGZyb20gXCIuLi9ldmVudC9FdmVudFR5cGVcIjtcbmltcG9ydCBhcHBsaWNhdGlvbk1hbmFnZXIgZnJvbSBcIi4uL0FwcGxpY2F0aW9uTWFuYWdlclwiO1xuaW1wb3J0IERpYWxvZyBmcm9tIFwiQG11aS9tYXRlcmlhbC9EaWFsb2dcIjtcbmltcG9ydCB3aXRoU3R5bGVzIGZyb20gXCJAbXVpL3N0eWxlcy93aXRoU3R5bGVzXCI7XG5pbXBvcnQgSWNvbkJ1dHRvbiBmcm9tIFwiQG11aS9tYXRlcmlhbC9JY29uQnV0dG9uXCI7XG5pbXBvcnQgSWNvbiBmcm9tIFwiLi9JY29uXCI7XG5pbXBvcnQgQnV0dG9uIGZyb20gXCJAbXVpL21hdGVyaWFsL0J1dHRvblwiO1xuaW1wb3J0IE1lbnUgZnJvbSBcIkBtdWkvbWF0ZXJpYWwvTWVudVwiO1xuaW1wb3J0IE1lbnVJdGVtIGZyb20gXCJAbXVpL21hdGVyaWFsL01lbnVJdGVtXCI7XG5pbXBvcnQgY2FsZW5kYXIgZnJvbSAnLi4vanMvQ2FsZW5kYXInO1xuXG5jb25zdCBldmVudFRlbXBsYXRlID0ge1xuICAgIGlkOiAnJyxcbiAgICB0aXRsZTogJycsXG4gICAgc3RhcnQ6ICcnLFxuICAgIGVuZDogJycsXG4gICAgYWxsRGF5OiBmYWxzZSxcbiAgICBleHRlbmRlZFByb3BzOiB7XG4gICAgICAgIGRlc2NyaXB0aW9uOiAnJyxcbiAgICAgICAgYXR0ZW5kZWVzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaWQ6ICcnLFxuICAgICAgICAgICAgICAgIGlkZW50aWZpZXI6ICcnLFxuICAgICAgICAgICAgICAgIG5hbWU6ICcnLFxuICAgICAgICAgICAgICAgIG9wdGlvbmFsOiBmYWxzZSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIHNjaGVkdWxlOiB7XG4gICAgICAgICAgICBpZDogJycsXG4gICAgICAgICAgICBzdGFydERhdGU6ICcnLFxuICAgICAgICAgICAgZW5kRGF0ZTogJycsXG4gICAgICAgICAgICBzdGFydFRpbWU6ICcnLFxuICAgICAgICAgICAgZW5kVGltZTogJycsXG4gICAgICAgIH0sXG4gICAgICAgIGxvY2F0aW9uczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGlkOiAnJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF1cbiAgICB9LFxufTtcblxuY29uc3Qgc3RhdHVzID0gKHJlc3BvbnNlKSA9PiB7XG4gICAgaWYgKHJlc3BvbnNlLm9rKSB7XG4gICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUocmVzcG9uc2UpO1xuICAgIH0gZWxzZSB7XG4gICAgICAgIGxldCBlcnJvciA9IG5ldyBFcnJvcihyZXNwb25zZS5zdGF0dXNUZXh0KTtcbiAgICAgICAgZXJyb3IuY29kZSA9IHJlc3BvbnNlLnN0YXR1cztcblxuICAgICAgICByZXR1cm4gUHJvbWlzZS5yZWplY3QoZXJyb3IpO1xuICAgIH1cbn07XG5cbmNvbnN0IGpzb24gPSAocmVzcG9uc2UpID0+IHtcbiAgICByZXR1cm4gcmVzcG9uc2UudGV4dCgpO1xufTtcblxuY29uc3QgbG9jYXRpb24gPSB3aW5kb3cubG9jYXRpb24ucHJvdG9jb2wgKyBcIi8vXCIgKyB3aW5kb3cubG9jYXRpb24uaG9zdG5hbWU7XG5jb25zdCBDYWxlbmRhciA9IChwcm9wcykgPT4ge1xuICAgIGNvbnN0IHtpc1J0bH0gPSBwcm9wcztcbiAgICBjb25zdCBbZXZlbnRzLCBzZXRFdmVudHNdID0gdXNlU3RhdGUoW10pO1xuICAgIGNvbnN0IFtsb2FkaW5nLCBzZXRMb2FkaW5nXSA9IHVzZVN0YXRlKHRydWUpO1xuICAgIGNvbnN0IFtvcGVuLCBzZXRPcGVuXSA9IHVzZVN0YXRlKGZhbHNlKTtcbiAgICBjb25zdCBbc2VsZWN0ZWRFdmVudCwgc2V0U2VsZWN0ZWRFdmVudF0gPSB1c2VTdGF0ZShudWxsKTtcbiAgICBjb25zdCBjYWxlbmRhclJlZiA9IHVzZVJlZihudWxsKTtcbiAgICBjb25zdCBkaWFsb2dSZWYgPSB1c2VSZWYobnVsbCk7XG4gICAgY29uc3QgW3JlZnJlc2hlciwgc2V0UmVmcmVzaGVyXSA9IHVzZVN0YXRlKDApO1xuICAgIGNvbnN0IFtkaWFsb2dQb3NpdGlvbiwgc2V0RGlhbG9nUG9zaXRpb25dID0gdXNlU3RhdGUoeyBib3R0b206ICcyMHB4JywgcmlnaHQ6ICcyMHB4JyB9KTtcbiAgICBjb25zdCBbY3JlYXRlTWVudSwgc2V0Q3JlYXRlTWVudV0gPSB1c2VTdGF0ZSh7IG9wZW46IGZhbHNlLCB4OiAwLCB5OiAwLCBpdGVtczogW10sIGluZm86IG51bGwgfSk7XG4gICAgY29uc3QgY29udGV4dENoYW5nZUhhbmRsZXIgPSB7fTtcbiAgICBsZXQgY291bnRlciA9IDE7XG5cbiAgICBjb25zdCBTdHlsZWREaWFsb2cgPSB3aXRoU3R5bGVzKHtcbiAgICAgICAgcm9vdDoge1xuICAgICAgICAgICAgcG9pbnRlckV2ZW50czogXCJub25lXCJcbiAgICAgICAgfSxcbiAgICAgICAgcGFwZXI6IHtcbiAgICAgICAgICAgIHBvaW50ZXJFdmVudHM6ICdhdXRvJyxcbiAgICAgICAgICAgIHdpZHRoOiAnNDAwcHgnLFxuICAgICAgICAgICAgaGVpZ2h0OiAnMjI4cHgnLFxuICAgICAgICAgICAgbWluV2lkdGg6ICc0MDBweCcsXG4gICAgICAgICAgICBwYWRkaW5nOiAnMCcsXG4gICAgICAgICAgICBvdmVyZmxvdzogJ2hpZGRlbicsXG4gICAgICAgICAgICBwb3NpdGlvbjogJ2ZpeGVkJyxcbiAgICAgICAgICAgIGJvdHRvbTogZGlhbG9nUG9zaXRpb24uYm90dG9tLFxuICAgICAgICAgICAgcmlnaHQ6IGRpYWxvZ1Bvc2l0aW9uLnJpZ2h0LFxuICAgICAgICAgICAgbGVmdDogJ2F1dG8gIWltcG9ydGFudCcsXG4gICAgICAgICAgICB0b3A6ICdhdXRvICFpbXBvcnRhbnQnLFxuICAgICAgICAgICAgdHJhbnNmb3JtOiAnbm9uZSAhaW1wb3J0YW50JyxcbiAgICAgICAgICAgIG1hcmdpbjogJzAgIWltcG9ydGFudCcsXG4gICAgICAgICAgICBib3JkZXJSYWRpdXM6ICc0cHgnXG4gICAgICAgIH1cbiAgICB9KShEaWFsb2cpO1xuXG4gICAgY29uc3QgbG9hZEV2ZW50cyA9ICh0cmFjayA9IHRydWUpID0+IHtcbiAgICAgICAgY29uc3QgZXZlbnRzVXJsID0gKHByb3BzLmNvbmZpZyAmJiBwcm9wcy5jb25maWcuZXZlbnRzVXJsKSB8fCAnL2NhbGVuZGFyL2FwaS92MS9ldmVudC9saXN0JztcbiAgICAgICAgZmV0Y2goZW5jb2RlVVJJKGxvY2F0aW9uICsgYXBwbGljYXRpb25NYW5hZ2VyLmdldENvbnRleHRSb290KCkgKyBldmVudHNVcmwpLCB7XG4gICAgICAgICAgICBtZXRob2Q6ICdHRVQnLFxuICAgICAgICAgICAgaGVhZGVyczoge1xuICAgICAgICAgICAgICAgICdBY2NlcHQnOiAnYXBwbGljYXRpb24vanNvbicsXG4gICAgICAgICAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgICAgICAgICAgICAgICAnQXV0aG9yaXphdGlvbic6ICdCZWFyZXIgJyArIHNlc3Npb25TdG9yYWdlLmdldEl0ZW0oXCJhY2Nlc3NUb2tlblwiKSxcbiAgICAgICAgICAgICAgICAnaWRUb2tlbic6IHNlc3Npb25TdG9yYWdlLmdldEl0ZW0oXCJpZFRva2VuXCIpXG4gICAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgICAgICAgICAudGhlbihzdGF0dXMpXG4gICAgICAgICAgICAudGhlbihqc29uKVxuICAgICAgICAgICAgLnRoZW4oKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICAgICAgc2V0RXZlbnRzKEpTT04ucGFyc2UocmVzcG9uc2UpKTtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAuY2F0Y2goKGlnbm9yZWQpID0+IHtcbiAgICAgICAgICAgIH0pXG4gICAgfTtcblxuXG4gICAgY29uc3QgaGFuZGxlciA9ICgpID0+IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGdldCBpZCgpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gJ2NhbGVuZGFyJztcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBvbkNvbnRleHRDaGFuZ2U6IChjb250ZXh0LCBuZXdWYWx1ZXMpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoT2JqZWN0LmtleXMobmV3VmFsdWVzKVxuICAgICAgICAgICAgICAgICAgICAuZmluZCgoa2V5KSA9PiBrZXkgPT09ICd3aW5kb3dEaXNwbGF5U3RhdGUnKSkge1xuICAgICAgICAgICAgICAgICAgICBzZXRSZWZyZXNoZXIoY291bnRlciA+IDIwID8gMCA6IGNvdW50ZXIrKyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuICAgIH07XG5cbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICBjb250ZXh0Q2hhbmdlSGFuZGxlci5hcGkgPSBoYW5kbGVyKCk7XG4gICAgICAgIGxvYWRFdmVudHMoKTtcbiAgICAgICAgYXBwbGljYXRpb25NYW5hZ2VyLmFkZEFwcGxpY2F0aW9uQ29udGV4dFN1YnNjcmlwdGlvbih7XG4gICAgICAgICAgICBoYW5kbGVyOiBjb250ZXh0Q2hhbmdlSGFuZGxlclxuICAgICAgICB9KVxuICAgIH0sIFtdKTtcblxuICAgIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgICAgIGNvbnRleHRDaGFuZ2VIYW5kbGVyLmFwaSA9IGhhbmRsZXIoKTtcbiAgICB9KTtcblxuICAgIGNvbnN0IGNhbGVuZGVyU2Nyb2xsTGlzdGVuZXIgPSAoKSA9PiB7XG4gICAgICAgIHNldE9wZW4oZmFsc2UpXG4gICAgfTtcblxuICAgIGNvbnN0IGlzVG9kYXlPckZ1dHVyZSA9IChkYXRlU3RyKSA9PiBtb21lbnQobmV3IERhdGUoKSkuc3RhcnRPZignZGF5JykgPD0gbW9tZW50KG5ldyBEYXRlKGRhdGVTdHIpKS5zdGFydE9mKCdkYXknKTtcblxuICAgIGNvbnN0IGJ1aWxkQ2FsZW5kYXJFdmVudCA9IChpbmZvLCB7ZXZlbnRUeXBlLCBjb25mZXJlbmNpbmdBY3Rpdml0eUdyb3VwLCBtZXRhZGF0YX0pID0+IHtcbiAgICAgICAgbGV0IGRhdGUgPSBuZXcgRGF0ZShpbmZvLmRhdGVTdHIpO1xuICAgICAgICBsZXQgdGltZURhdGUgPSBuZXcgRGF0ZSgpO1xuICAgICAgICBsZXQgc3RhcnRUaW1lID0gbW9tZW50KGluZm8uZGF0ZVN0ciwgJ2RkZCBNTU0gRCBZWVlZIEhIOm1tOnNzIFpaJyk7XG4gICAgICAgIHRpbWVEYXRlLnNldEhvdXJzKHRpbWVEYXRlLmdldEhvdXJzKCkgKyAxKTtcbiAgICAgICAgc3RhcnRUaW1lLnNldCh7aDogdGltZURhdGUuZ2V0SG91cnMoKSwgbTogMH0pO1xuXG4gICAgICAgIGxldCBlbmRUaW1lID0gbW9tZW50KGluZm8uZGF0ZVN0ciwgJ2RkZCBNTU0gRCBZWVlZIEhIOm1tOnNzIFpaJyk7XG4gICAgICAgIHRpbWVEYXRlLnNldEhvdXJzKHRpbWVEYXRlLmdldEhvdXJzKCkgKyAxKTtcbiAgICAgICAgZW5kVGltZS5zZXQoe2g6IHRpbWVEYXRlLmdldEhvdXJzKCksIG06IDB9KTtcblxuICAgICAgICBjb25zdCBjYWxlbmRhckV2ZW50ID0ge1xuICAgICAgICAgICAgLi4uZXZlbnRUZW1wbGF0ZSxcbiAgICAgICAgICAgIHNjaGVkdWxlOiB7XG4gICAgICAgICAgICAgICAgc3RhcnREYXRlOiBkYXRlLFxuICAgICAgICAgICAgICAgIGVuZERhdGU6IGRhdGUsXG4gICAgICAgICAgICAgICAgc3RhcnRUaW1lOiBzdGFydFRpbWUudG9EYXRlKCksXG4gICAgICAgICAgICAgICAgZW5kVGltZTogZW5kVGltZS50b0RhdGUoKSxcbiAgICAgICAgICAgICAgICByZWN1cnJpbmdTdGFydERhdGU6IGRhdGUsXG4gICAgICAgICAgICAgICAgcmVjdXJyaW5nRW5kRGF0ZTogZGF0ZVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGV2ZW50VHlwZTogZXZlbnRUeXBlLFxuICAgICAgICAgICAgY29uZmVyZW5jaW5nQWN0aXZpdHlHcm91cDogY29uZmVyZW5jaW5nQWN0aXZpdHlHcm91cCxcbiAgICAgICAgICAgIG1ldGFkYXRhOiBtZXRhZGF0YVxuICAgICAgICB9O1xuXG4gICAgICAgIGlmIChVdGlscy5pc1N0cmluZ0VtcHR5KGNhbGVuZGFyRXZlbnQuaWQpKSB7XG4gICAgICAgICAgICBjYWxlbmRhckV2ZW50LmlkID0gbnVsbDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gY2FsZW5kYXJFdmVudDtcbiAgICB9O1xuXG4gICAgY29uc3QgZmlyZUNyZWF0ZSA9IChjYWxlbmRhckV2ZW50KSA9PiB7XG4gICAgICAgIGxldCBldmVudCA9IG5ldyBFdmVudChwcm9wcy5oYW5kbGUsIHByb3BzLnZpZXdJZCwgY2FsZW5kYXJFdmVudCk7XG4gICAgICAgIGV2ZW50TWFuYWdlci5maXJlRXZlbnQoRXZlbnRUeXBlLkNBTEVOREFSX0RBVEVfQ0xJQ0ssIGV2ZW50KTtcbiAgICB9O1xuXG4gICAgY29uc3QgZmlyZUNyZWF0ZUZvck1ldGFkYXRhID0gKGluZm8sIG1ldGEpID0+IHtcbiAgICAgICAgZmlyZUNyZWF0ZShidWlsZENhbGVuZGFyRXZlbnQoaW5mbywge1xuICAgICAgICAgICAgZXZlbnRUeXBlOiBtZXRhLmNvbmZlcmVuY2luZ0FjdGl2aXR5R3JvdXAsXG4gICAgICAgICAgICBjb25mZXJlbmNpbmdBY3Rpdml0eUdyb3VwOiBtZXRhLmNvbmZlcmVuY2luZ0FjdGl2aXR5R3JvdXAsXG4gICAgICAgICAgICBtZXRhZGF0YTogbWV0YVxuICAgICAgICB9KSk7XG4gICAgfTtcblxuICAgIC8vIEZldGNoIHRoZSBDUkVBVEUtb3BlcmF0aW9uIG1ldGFkYXRhIHRoZSBjdXJyZW50IHVzZXIgaXMgZW50aXRsZWQgdG8gKHJvbGUtZmlsdGVyZWQgc2VydmVyLXNpZGUpLlxuICAgIGNvbnN0IGZldGNoQ3JlYXRlTWV0YWRhdGEgPSAodXJsKSA9PiB7XG4gICAgICAgIHJldHVybiBmZXRjaChlbmNvZGVVUkkobG9jYXRpb24gKyBhcHBsaWNhdGlvbk1hbmFnZXIuZ2V0Q29udGV4dFJvb3QoKSArIHVybCksIHtcbiAgICAgICAgICAgIG1ldGhvZDogJ0dFVCcsXG4gICAgICAgICAgICBoZWFkZXJzOiB7XG4gICAgICAgICAgICAgICAgJ0FjY2VwdCc6ICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgICAgICAgICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgICAgICAgICAgICdBdXRob3JpemF0aW9uJzogJ0JlYXJlciAnICsgc2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbShcImFjY2Vzc1Rva2VuXCIpLFxuICAgICAgICAgICAgICAgICdpZFRva2VuJzogc2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbShcImlkVG9rZW5cIilcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgICAgICAgIC50aGVuKHN0YXR1cylcbiAgICAgICAgICAgIC50aGVuKGpzb24pXG4gICAgICAgICAgICAudGhlbigocmVzcG9uc2UpID0+IEpTT04ucGFyc2UocmVzcG9uc2UpKTtcbiAgICB9O1xuXG4gICAgY29uc3QgY2FsZW5kYXJPcHRpb25zID0ge1xuICAgICAgICBldmVudHM6IGV2ZW50cyxcbiAgICAgICAgcGx1Z2luczogW2ludGVyYWN0aW9uUGx1Z2luLCBkYXlHcmlkUGx1Z2luLCB0aW1lR3JpZFBsdWdpbiwgbGlzdFBsdWdpbiwgcnJ1bGVQbHVnaW5dLFxuICAgICAgICBpbml0aWFsVmlldzogJ2RheUdyaWRNb250aCcsXG4gICAgICAgIGhlYWRlclRvb2xiYXI6IHtcbiAgICAgICAgICAgIHN0YXJ0OiAnc2lkZWJhclRvZ2dsZSwgcHJldixuZXh0LCB0aXRsZScsXG4gICAgICAgICAgICBlbmQ6ICdkYXlHcmlkTW9udGgsdGltZUdyaWRXZWVrLHRpbWVHcmlkRGF5LGxpc3RNb250aCcsXG4gICAgICAgIH0sXG4gICAgICAgIC8qXG4gICAgICAgICAgRW5hYmxlIGRyYWdnaW5nIGFuZCByZXNpemluZyBldmVudFxuICAgICAgICAgID8gRG9jczogaHR0cHM6Ly9mdWxsY2FsZW5kYXIuaW8vZG9jcy9lZGl0YWJsZVxuICAgICAgICAqL1xuICAgICAgICBlZGl0YWJsZTogdHJ1ZSxcbiAgICAgICAgaGVpZ2h0OiAnMTAwJScsXG4gICAgICAgIHN0aWNreUhlYWRlckRhdGVzOiB0cnVlLFxuXG4gICAgICAgIGV2ZW50VGltZUZvcm1hdDogeyAvLyBsaWtlICcxNDozMDowMCdcbiAgICAgICAgICAgIGhvdXI6IFwiMi1kaWdpdFwiLFxuICAgICAgICAgICAgbWludXRlOiBcIjItZGlnaXRcIixcbiAgICAgICAgICAgIGhvdXIxMjogZmFsc2VcbiAgICAgICAgfSxcblxuICAgICAgICAvKlxuICAgICAgICAgIEVuYWJsZSByZXNpemluZyBldmVudCBmcm9tIHN0YXJ0XG4gICAgICAgICAgPyBEb2NzOiBodHRwczovL2Z1bGxjYWxlbmRhci5pby9kb2NzL2V2ZW50UmVzaXphYmxlRnJvbVN0YXJ0XG4gICAgICAgICovXG4gICAgICAgIGV2ZW50UmVzaXphYmxlRnJvbVN0YXJ0OiB0cnVlLFxuXG4gICAgICAgIC8qXG4gICAgICAgICAgQXV0b21hdGljYWxseSBzY3JvbGwgdGhlIHNjcm9sbC1jb250YWluZXJzIGR1cmluZyBldmVudCBkcmFnLWFuZC1kcm9wIGFuZCBkYXRlIHNlbGVjdGluZ1xuICAgICAgICAgID8gRG9jczogaHR0cHM6Ly9mdWxsY2FsZW5kYXIuaW8vZG9jcy9kcmFnU2Nyb2xsXG4gICAgICAgICovXG4gICAgICAgIGRyYWdTY3JvbGw6IHRydWUsXG5cbiAgICAgICAgLypcbiAgICAgICAgICBNYXggbnVtYmVyIG9mIGV2ZW50cyB3aXRoaW4gYSBnaXZlbiBkYXlcbiAgICAgICAgICA/IERvY3M6IGh0dHBzOi8vZnVsbGNhbGVuZGFyLmlvL2RvY3MvZGF5TWF4RXZlbnRzXG4gICAgICAgICovXG4gICAgICAgIGRheU1heEV2ZW50czogMixcblxuICAgICAgICAvKlxuICAgICAgICAgIERldGVybWluZXMgaWYgZGF5IG5hbWVzIGFuZCB3ZWVrIG5hbWVzIGFyZSBjbGlja2FibGVcbiAgICAgICAgICA/IERvY3M6IGh0dHBzOi8vZnVsbGNhbGVuZGFyLmlvL2RvY3MvbmF2TGlua3NcbiAgICAgICAgKi9cbiAgICAgICAgbmF2TGlua3M6IHRydWUsXG5cbiAgICAgICAgZXZlbnRDbGFzc05hbWVzKHtldmVudDogY2FsZW5kYXJFdmVudH0pIHtcbiAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bmRlcnNjb3JlLWRhbmdsZVxuICAgICAgICAgICAgY29uc3QgY29sb3JOYW1lID0gJyM5NDVjMzMnO1xuXG4gICAgICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAgICAgIGBiZy1saWdodC0ke2NvbG9yTmFtZX1gLFxuICAgICAgICAgICAgXTtcbiAgICAgICAgfSxcblxuICAgICAgICB2aWV3RGlkTW91bnQoKSB7XG4gICAgICAgICAgICBzZXRPcGVuKGZhbHNlKTtcbiAgICAgICAgfSxcblxuICAgICAgICBldmVudENsaWNrKHtlbDogZWwsIGV2ZW50OiBldmVudH0pIHtcbiAgICAgICAgICAgIHNldFNlbGVjdGVkRXZlbnQoZXZlbnQpO1xuICAgICAgICAgICAgc2V0T3Blbih0cnVlKTtcblxuICAgICAgICAgICAgbGV0IGVsZW1lbnRzQnlDbGFzc05hbWUgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCdmYy1zY3JvbGxlci1saXF1aWQtYWJzb2x1dGUnKTtcbiAgICAgICAgICAgIGlmIChlbGVtZW50c0J5Q2xhc3NOYW1lICYmIGVsZW1lbnRzQnlDbGFzc05hbWUubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgIGVsZW1lbnRzQnlDbGFzc05hbWVbMF0ucmVtb3ZlRXZlbnRMaXN0ZW5lcihcInNjcm9sbFwiLCBjYWxlbmRlclNjcm9sbExpc3RlbmVyKTtcbiAgICAgICAgICAgICAgICBlbGVtZW50c0J5Q2xhc3NOYW1lWzBdLmFkZEV2ZW50TGlzdGVuZXIoJ3Njcm9sbCcsIGNhbGVuZGVyU2Nyb2xsTGlzdGVuZXIpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBlbGVtZW50c0J5Q2xhc3NOYW1lID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSgnZmMtc2Nyb2xsZXItbGlxdWlkJyk7XG4gICAgICAgICAgICBpZiAoZWxlbWVudHNCeUNsYXNzTmFtZSAmJiBlbGVtZW50c0J5Q2xhc3NOYW1lLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgICAgICBlbGVtZW50c0J5Q2xhc3NOYW1lWzBdLnJlbW92ZUV2ZW50TGlzdGVuZXIoXCJzY3JvbGxcIiwgY2FsZW5kZXJTY3JvbGxMaXN0ZW5lcik7XG4gICAgICAgICAgICAgICAgZWxlbWVudHNCeUNsYXNzTmFtZVswXS5hZGRFdmVudExpc3RlbmVyKCdzY3JvbGwnLCBjYWxlbmRlclNjcm9sbExpc3RlbmVyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSxcblxuICAgICAgICBkYXRlQ2xpY2soaW5mbykge1xuICAgICAgICAgICAgaWYgKG9wZW4gfHwgIWlzVG9kYXlPckZ1dHVyZShpbmZvLmRhdGVTdHIpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBjb25zdCBjcmVhdGVFdmVudE1ldGFkYXRhVXJsID0gcHJvcHMuY29uZmlnICYmIHByb3BzLmNvbmZpZy5jcmVhdGVFdmVudE1ldGFkYXRhVXJsO1xuICAgICAgICAgICAgaWYgKGNyZWF0ZUV2ZW50TWV0YWRhdGFVcmwpIHtcbiAgICAgICAgICAgICAgICAvLyBSb2xlLWdhdGVkIGNyZWF0ZTogZmV0Y2ggdGhlIGRvbWFpbnMgdGhpcyB1c2VyIG1heSBjcmVhdGUsIHRoZW4gbGV0IHRoZW0gcGljayBmcm9tIGEgbWVudS5cbiAgICAgICAgICAgICAgICBmZXRjaENyZWF0ZU1ldGFkYXRhKGNyZWF0ZUV2ZW50TWV0YWRhdGFVcmwpXG4gICAgICAgICAgICAgICAgICAgIC50aGVuKChyZXN1bHQpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGl0ZW1zID0gcmVzdWx0ICYmIHJlc3VsdC5yZWNvcmRzID8gcmVzdWx0LnJlY29yZHMgOiBbXTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpdGVtcy5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm47IC8vIG5vdGhpbmcgY3JlYXRhYmxlIGZvciB0aGlzIHVzZXIncyByb2xlcyDigJQgbm8gbWVudSwgbm8gZXZlbnQgZmlyZWRcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpdGVtcy5sZW5ndGggPT09IDEpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBPbmx5IG9uZSBvcHRpb24g4oCUIHNraXAgdGhlIG1lbnUgYW5kIGFjdCBhcyBpZiBpdCB3YXMgY2xpY2tlZC5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaXJlQ3JlYXRlRm9yTWV0YWRhdGEoaW5mbywgaXRlbXNbMF0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGpzRXZlbnQgPSBpbmZvLmpzRXZlbnQgfHwge307XG4gICAgICAgICAgICAgICAgICAgICAgICBzZXRDcmVhdGVNZW51KHtvcGVuOiB0cnVlLCB4OiBqc0V2ZW50LmNsaWVudFggfHwgMCwgeToganNFdmVudC5jbGllbnRZIHx8IDAsIGl0ZW1zLCBpbmZvfSk7XG4gICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgIC5jYXRjaCgoaWdub3JlZCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIExlZ2FjeSBiZWhhdmlvdXI6IHNpbmdsZSBoYXJkLWNvZGVkIGV2ZW50IHR5cGUuXG4gICAgICAgICAgICBmaXJlQ3JlYXRlKGJ1aWxkQ2FsZW5kYXJFdmVudChpbmZvLCB7XG4gICAgICAgICAgICAgICAgZXZlbnRUeXBlOiBVdGlscy5nZXRDb21wb25lbnRBdHRyaWJ1dGUocHJvcHMuY29uZmlnLCAnZXZlbnRUeXBlJywgJ1RSQUlOSU5HJylcbiAgICAgICAgICAgIH0pKTtcbiAgICAgICAgfSxcblxuICAgICAgICAvKlxuICAgICAgICAgIEhhbmRsZSBldmVudCBkcm9wIChBbHNvIGluY2x1ZGUgZHJhZ2dlZCBldmVudClcbiAgICAgICAgICA/IERvY3M6IGh0dHBzOi8vZnVsbGNhbGVuZGFyLmlvL2RvY3MvZXZlbnREcm9wXG4gICAgICAgICAgPyBXZSBjYW4gdXNlIGBldmVudERyYWdTdG9wYCBidXQgaXQgZG9lc24ndCByZXR1cm4gdXBkYXRlZCBldmVudCBzbyB3ZSBoYXZlIHRvIHVzZSBgZXZlbnREcm9wYCB3aGljaCByZXR1cm5zIHVwZGF0ZWQgZXZlbnRcbiAgICAgICAgKi9cbiAgICAgICAgZXZlbnREcm9wKHtldmVudDogZHJvcHBlZEV2ZW50fSkge1xuICAgICAgICAgICAgLy9kaXNwYXRjaCh1cGRhdGVFdmVudChkcm9wcGVkRXZlbnQpKTtcbiAgICAgICAgICAgIHRvYXN0LnN1Y2Nlc3MoJ0V2ZW50IFVwZGF0ZWQnKTtcbiAgICAgICAgfSxcblxuICAgICAgICAvKlxuICAgICAgICAgIEhhbmRsZSBldmVudCByZXNpemVcbiAgICAgICAgICA/IERvY3M6IGh0dHBzOi8vZnVsbGNhbGVuZGFyLmlvL2RvY3MvZXZlbnRSZXNpemVcbiAgICAgICAgKi9cbiAgICAgICAgZXZlbnRSZXNpemUoe2V2ZW50OiByZXNpemVkRXZlbnR9KSB7XG4gICAgICAgICAgICAvL2Rpc3BhdGNoKHVwZGF0ZUV2ZW50KHJlc2l6ZWRFdmVudCkpO1xuICAgICAgICAgICAgdG9hc3Quc3VjY2VzcygnRXZlbnQgVXBkYXRlZCcpO1xuICAgICAgICB9LFxuXG4gICAgICAgIC8qXG4gICAgICAgICAgSGFuZGxlIGV2ZW50IG1vdXNlIGVudGVyXG4gICAgICAgICAgPyBEb2NzOiBodHRwczovL2Z1bGxjYWxlbmRhci5pby9kb2NzL2V2ZW50TW91c2VFbnRlclxuICAgICAgICAqL1xuICAgICAgICBldmVudE1vdXNlRW50ZXIoe2VsOiBlbCwgZXZlbnQ6IGV2ZW50fSkge1xuICAgICAgICB9LFxuXG5cbiAgICAgICAgLypcbiAgICAgICAgICBIYW5kbGUgZXZlbnQgbW91c2UgZW50ZXJcbiAgICAgICAgICA/IERvY3M6IGh0dHBzOi8vZnVsbGNhbGVuZGFyLmlvL2RvY3MvZXZlbnRNb3VzZUVudGVyXG4gICAgICAgICovXG4gICAgICAgIGV2ZW50TW91c2VMZWF2ZSh7ZWw6IGVsfSkge1xuICAgICAgICB9LFxuXG4gICAgICAgIHJlZjogY2FsZW5kYXJSZWYsXG5cbiAgICAgICAgLy8gR2V0IGRpcmVjdGlvbiBmcm9tIGFwcCBzdGF0ZSAoc3RvcmUpXG4gICAgICAgIGRpcmVjdGlvbjogaXNSdGwgPyAncnRsJyA6ICdsdHInLFxuICAgIH07XG5cbiAgICBSZWFjdC51c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICBwcm9wcy5oYW5kbGUuYXBpID0gYXBpKCk7XG4gICAgICAgIGxldCBwYXJzZWRDb25maWcgPSBVdGlscy5wYXJzZUNvbmZpZyhwcm9wcy5jb25maWcsIHByb3BzLnZpZXdJZCk7XG4gICAgICAgIGxldCBldmVudEhhbmRsaW5nQ29uZmlnID0gVXRpbHMuaXNOdWxsKHBhcnNlZENvbmZpZy5ldmVudEhhbmRsaW5nQ29uZmlnKSA/IHt9IDogcGFyc2VkQ29uZmlnLmV2ZW50SGFuZGxpbmdDb25maWc7XG4gICAgICAgIGV2ZW50SGFuZGxpbmdDb25maWcuc3Vic2NyaXB0aW9ucyA9IFV0aWxzLmlzTnVsbChldmVudEhhbmRsaW5nQ29uZmlnLnN1YnNjcmlwdGlvbnMpID8gW10gOiBldmVudEhhbmRsaW5nQ29uZmlnLnN1YnNjcmlwdGlvbnM7XG4gICAgICAgIGV2ZW50TWFuYWdlci5hZGRTdWJzY3JpcHRpb25zKGV2ZW50SGFuZGxpbmdDb25maWcsIHByb3BzLmhhbmRsZSwgcHJvcHMudmlld0lkKTtcbiAgICAgICAgZXZlbnRNYW5hZ2VyLmFkZFN5c3RlbVN1YnNjcmlwdGlvbnMocHJvcHMudmlld0lkLCBwYXJzZWRDb25maWcpO1xuICAgIH0sIFtdKTtcblxuICAgIGNvbnN0IHRvRGF0ZVRpbWVTdHJpbmcgPSAoZGF0ZSkgPT4ge1xuICAgICAgICBsZXQgZGF0ZVN0ciA9IHNlbGVjdGVkRXZlbnQuc3RhcnQudG9Mb2NhbGVEYXRlU3RyaW5nKCk7XG4gICAgICAgIGxldCB0aW1lU3RyVG9rZW5zID0gc2VsZWN0ZWRFdmVudC5zdGFydC50b0xvY2FsZVRpbWVTdHJpbmcoKS5zcGxpdCgnOicpO1xuXG4gICAgICAgIHJldHVybiBkYXRlU3RyICsgJyAnICsgdGltZVN0clRva2Vuc1swXSArICc6JyArIHRpbWVTdHJUb2tlbnNbMV07XG4gICAgfTtcblxuICAgIGNvbnN0IGdldEZvcm1PYmplY3QgPSAoZXZlbnQpID0+IHtcbiAgICAgICAgcmV0dXJuIGNhbGVuZGFyLmNhbGVuZGFyRXZlbnRUb0Zvcm1PYmplY3QoZXZlbnQpO1xuICAgIH07XG5cbiAgICBjb25zdCBhcGkgPSAoKSA9PiB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBnZXQgaWQoKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHByb3BzLmNvbmZpZy5pZDtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBnZXRDaGlsZHJlbjogKCkgPT4ge1xuICAgICAgICAgICAgICAgIHJldHVybiBbXTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICB9O1xuXG4gICAgY29uc3QgY3JlYXRlRXZlbnRQb3B1cCA9IChlbCkgPT4ge1xuICAgICAgICByZXR1cm4gPD5cbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBzZWxlY3RlZEV2ZW50ICYmIDxkaXYgY2xhc3NOYW1lPXsnZXZlbnQtcG9wdXAnfT5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9eyd0b3AtdG9vbGJhciByb3cgbm8tcGFkZGluZyBuby1tYXJnaW4nfT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXsnbGVmdCBjb2wgbm8tcGFkZGluZyBuby1tYXJnaW4nfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SWNvbkJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBzZXRPcGVuKGZhbHNlKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxJY29uIGlkPXsnQ0xPU0UnfSBjb2xvcj17JyMwMTQ3NkMnfS8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9JY29uQnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17J3JpZ2h0IGNvbCBuby1wYWRkaW5nIG5vLW1hcmdpbid9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxJY29uQnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKFwiU0VMRUNURUQgRVZFTlQgOiBcIiwgZ2V0Rm9ybU9iamVjdChzZWxlY3RlZEV2ZW50KSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgZXZlbnQgPSBuZXcgRXZlbnQocHJvcHMuaGFuZGxlLCBwcm9wcy52aWV3SWQsIGdldEZvcm1PYmplY3Qoc2VsZWN0ZWRFdmVudCkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXZlbnRNYW5hZ2VyLmZpcmVFdmVudChFdmVudFR5cGUuQ0FMRU5EQVJfREFURV9DTElDSywgZXZlbnQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEljb24gaWQ9eydNQVhJTUlaRSd9IGNvbG9yPXsnIzAxNDc2Qyd9Lz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0ljb25CdXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXsnc3VtbWFyeSd9PlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9eydtb2RhbC10aXRsZSd9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtzZWxlY3RlZEV2ZW50LnRpdGxlfVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt0b0RhdGVUaW1lU3RyaW5nKHNlbGVjdGVkRXZlbnQuc3RhcnQpfVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17J29yZ2FuaXNlcid9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIE9yZ2FuaXNlcjoge3NlbGVjdGVkRXZlbnQuZXh0ZW5kZWRQcm9wcy5ob3N0Lm5hbWV9XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgc3R5bGU9e3ttYXJnaW5Ub3A6ICcxNnB4J319PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIWFwcGxpY2F0aW9uTWFuYWdlci5oYXNBY3RpdmVNZWV0aW5nKCkgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyaWFudD17J2NvbnRhaW5lZCd9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplPVwibGFyZ2VcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I9e1wicHJpbWFyeVwifVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9e3tib3JkZXJSYWRpdXM6ICc0cHgnLCBtYXJnaW5SaWdodDogJzJweCd9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KGUpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRPcGVuKGZhbHNlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgZXZlbnQgPSBuZXcgRXZlbnQocHJvcHMuaGFuZGxlLCBwcm9wcy52aWV3SWQsIGdldEZvcm1PYmplY3Qoc2VsZWN0ZWRFdmVudCkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV2ZW50TWFuYWdlci5maXJlRXZlbnQoRXZlbnRUeXBlLkNBTEVOREFSX0VWRU5UX1NUQVJULCBldmVudCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBKT0lOXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgPC8+XG4gICAgfTtcblxuICAgIHJldHVybiAoXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPXtwcm9wcy5jbGFzc05hbWV9IHN0eWxlPXtcbiAgICAgICAgICAgIFV0aWxzLm1lcmdlU3R5bGVzKHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAnMTZweCAwJyxcbiAgICAgICAgICAgICAgICBtYXJnaW46ICcwJyxcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogJ2F1dG8nLFxuICAgICAgICAgICAgICAgIHdpZHRoOiAnMTAwJScsXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAnMTAwJScsXG4gICAgICAgICAgICAgICAgbWF4SGVpZ2h0OiAnMTAwJSdcbiAgICAgICAgICAgIH0sIHByb3BzLmNvbmZpZylcbiAgICAgICAgfT5cbiAgICAgICAgICAgIDxkaXYga2V5PXtyZWZyZXNoZXJ9IGNsYXNzTmFtZT17J3ctMTAwIGgtMTAwJ30+XG4gICAgICAgICAgICAgICAgPEZ1bGxDYWxlbmRhciB7Li4uY2FsZW5kYXJPcHRpb25zfS8+eycgJ31cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPFN0eWxlZERpYWxvZ1xuICAgICAgICAgICAgICAgIG9wZW49e29wZW59XG4gICAgICAgICAgICAgICAgcmVmPXtkaWFsb2dSZWZ9XG4gICAgICAgICAgICAgICAgb25DbG9zZT17KCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBzZXRPcGVuKGZhbHNlKVxuICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgaGlkZUJhY2tkcm9wXG4gICAgICAgICAgICAgICAgZGlzYWJsZUVuZm9yY2VGb2N1c1xuICAgICAgICAgICAgICAgIGRpc2FibGVBdXRvRm9jdXNcbiAgICAgICAgICAgICAgICBhcmlhLWxhYmVsbGVkYnk9XCJhbGVydC1kaWFsb2ctdGl0bGVcIlxuICAgICAgICAgICAgICAgIGFyaWEtZGVzY3JpYmVkYnk9XCJhbGVydC1kaWFsb2ctZGVzY3JpcHRpb25cIlxuICAgICAgICAgICAgICAgIGFyaWEtbW9kYWw9e2ZhbHNlfVxuICAgICAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiAnZml4ZWQnLFxuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAnYXV0bycsXG4gICAgICAgICAgICAgICAgICAgIHRvcDogJ2F1dG8nXG4gICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICBQYXBlclByb3BzPXt7XG4gICAgICAgICAgICAgICAgICAgIHN0eWxlOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogJ2ZpeGVkJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvdHRvbTogJzIwcHgnLFxuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6ICcyMHB4JyxcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCxcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogJ25vbmUnXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXsndy0xMDAgaC0xMDAnfT5cbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgY3JlYXRlRXZlbnRQb3B1cCgpXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvU3R5bGVkRGlhbG9nPlxuICAgICAgICAgICAgPE1lbnVcbiAgICAgICAgICAgICAgICBvcGVuPXtjcmVhdGVNZW51Lm9wZW59XG4gICAgICAgICAgICAgICAgb25DbG9zZT17KCkgPT4gc2V0Q3JlYXRlTWVudSh7Li4uY3JlYXRlTWVudSwgb3BlbjogZmFsc2V9KX1cbiAgICAgICAgICAgICAgICBhbmNob3JSZWZlcmVuY2U9XCJhbmNob3JQb3NpdGlvblwiXG4gICAgICAgICAgICAgICAgYW5jaG9yUG9zaXRpb249e2NyZWF0ZU1lbnUub3BlbiA/IHt0b3A6IGNyZWF0ZU1lbnUueSwgbGVmdDogY3JlYXRlTWVudS54fSA6IHVuZGVmaW5lZH1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGNyZWF0ZU1lbnUuaXRlbXMubWFwKChtZXRhLCBpZHgpID0+IChcbiAgICAgICAgICAgICAgICAgICAgICAgIDxNZW51SXRlbVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGtleT17bWV0YS5jb25mZXJlbmNpbmdBY3Rpdml0eUdyb3VwIHx8IGlkeH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNldENyZWF0ZU1lbnUoey4uLmNyZWF0ZU1lbnUsIG9wZW46IGZhbHNlfSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpcmVDcmVhdGVGb3JNZXRhZGF0YShjcmVhdGVNZW51LmluZm8sIG1ldGEpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge21ldGEuZGVzY3JpcHRpb24gfHwgbWV0YS5jb25mZXJlbmNpbmdBY3Rpdml0eUdyb3VwfVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9NZW51SXRlbT5cbiAgICAgICAgICAgICAgICAgICAgKSlcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L01lbnU+XG4gICAgICAgIDwvZGl2PlxuICAgICk7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
512
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfVXRpbHMiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX09ic2VydmFibGUiLCJfcmVhY3QyIiwiX2xpc3QiLCJfcnJ1bGUiLCJfZGF5Z3JpZCIsIl90aW1lZ3JpZCIsIl9pbnRlcmFjdGlvbiIsIl9tb21lbnQiLCJfcmVhY3RIb3RUb2FzdCIsIl9FdmVudCIsIl9FdmVudFR5cGUiLCJfQXBwbGljYXRpb25NYW5hZ2VyIiwiX0RpYWxvZyIsIl93aXRoU3R5bGVzIiwiX0ljb25CdXR0b24iLCJfSWNvbiIsIl9CdXR0b24iLCJfTWVudSIsIl9NZW51SXRlbSIsIl9DYWxlbmRhciIsImUiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsInQiLCJXZWFrTWFwIiwiciIsIm4iLCJvIiwiaSIsImYiLCJfX3Byb3RvX18iLCJoYXMiLCJnZXQiLCJzZXQiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsIm93bktleXMiLCJrZXlzIiwiZ2V0T3duUHJvcGVydHlTeW1ib2xzIiwiZmlsdGVyIiwiZW51bWVyYWJsZSIsInB1c2giLCJhcHBseSIsIl9vYmplY3RTcHJlYWQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJmb3JFYWNoIiwiX2RlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyIsImRlZmluZVByb3BlcnRpZXMiLCJfdG9Qcm9wZXJ0eUtleSIsInZhbHVlIiwiY29uZmlndXJhYmxlIiwid3JpdGFibGUiLCJfdG9QcmltaXRpdmUiLCJTeW1ib2wiLCJ0b1ByaW1pdGl2ZSIsIlR5cGVFcnJvciIsIlN0cmluZyIsIk51bWJlciIsImV2ZW50VGVtcGxhdGUiLCJpZCIsInRpdGxlIiwic3RhcnQiLCJlbmQiLCJhbGxEYXkiLCJleHRlbmRlZFByb3BzIiwiZGVzY3JpcHRpb24iLCJhdHRlbmRlZXMiLCJpZGVudGlmaWVyIiwibmFtZSIsIm9wdGlvbmFsIiwic2NoZWR1bGUiLCJzdGFydERhdGUiLCJlbmREYXRlIiwic3RhcnRUaW1lIiwiZW5kVGltZSIsImxvY2F0aW9ucyIsInN0YXR1cyIsInJlc3BvbnNlIiwib2siLCJQcm9taXNlIiwicmVzb2x2ZSIsImVycm9yIiwiRXJyb3IiLCJzdGF0dXNUZXh0IiwiY29kZSIsInJlamVjdCIsImpzb24iLCJ0ZXh0IiwibG9jYXRpb24iLCJ3aW5kb3ciLCJwcm90b2NvbCIsImhvc3RuYW1lIiwiQ2FsZW5kYXIiLCJwcm9wcyIsImlzUnRsIiwiZXZlbnRzIiwic2V0RXZlbnRzIiwidXNlU3RhdGUiLCJsb2FkaW5nIiwic2V0TG9hZGluZyIsIm9wZW4iLCJzZXRPcGVuIiwic2VsZWN0ZWRFdmVudCIsInNldFNlbGVjdGVkRXZlbnQiLCJjYWxlbmRhclJlZiIsInVzZVJlZiIsImRpYWxvZ1JlZiIsInJlZnJlc2hlciIsInNldFJlZnJlc2hlciIsImRpYWxvZ1Bvc2l0aW9uIiwic2V0RGlhbG9nUG9zaXRpb24iLCJib3R0b20iLCJyaWdodCIsImNyZWF0ZU1lbnUiLCJzZXRDcmVhdGVNZW51IiwieCIsInkiLCJpdGVtcyIsImluZm8iLCJjb250ZXh0Q2hhbmdlSGFuZGxlciIsImNvdW50ZXIiLCJTdHlsZWREaWFsb2ciLCJ3aXRoU3R5bGVzIiwicm9vdCIsInBvaW50ZXJFdmVudHMiLCJwYXBlciIsIndpZHRoIiwiaGVpZ2h0IiwibWluV2lkdGgiLCJwYWRkaW5nIiwib3ZlcmZsb3ciLCJwb3NpdGlvbiIsImxlZnQiLCJ0b3AiLCJ0cmFuc2Zvcm0iLCJtYXJnaW4iLCJib3JkZXJSYWRpdXMiLCJEaWFsb2ciLCJsb2FkRXZlbnRzIiwidHJhY2siLCJ1bmRlZmluZWQiLCJldmVudHNVcmxQYXRoIiwiY29uZmlnIiwiZmV0Y2giLCJlbmNvZGVVUkkiLCJhcHBsaWNhdGlvbk1hbmFnZXIiLCJnZXRDb250ZXh0Um9vdCIsIm1ldGhvZCIsImhlYWRlcnMiLCJzZXNzaW9uU3RvcmFnZSIsImdldEl0ZW0iLCJ0aGVuIiwiSlNPTiIsInBhcnNlIiwiY2F0Y2giLCJpZ25vcmVkIiwiaGFuZGxlciIsIm9uQ29udGV4dENoYW5nZSIsImNvbnRleHQiLCJuZXdWYWx1ZXMiLCJmaW5kIiwia2V5IiwidXNlRWZmZWN0IiwiYXBpIiwiYWRkQXBwbGljYXRpb25Db250ZXh0U3Vic2NyaXB0aW9uIiwiY2FsZW5kZXJTY3JvbGxMaXN0ZW5lciIsImlzVG9kYXlPckZ1dHVyZSIsImRhdGVTdHIiLCJtb21lbnQiLCJEYXRlIiwic3RhcnRPZiIsImJ1aWxkQ2FsZW5kYXJFdmVudCIsIl9yZWYiLCJldmVudFR5cGUiLCJjb25mZXJlbmNpbmdBY3Rpdml0eUdyb3VwIiwibWV0YWRhdGEiLCJkYXRlIiwidGltZURhdGUiLCJzZXRIb3VycyIsImdldEhvdXJzIiwiaCIsIm0iLCJjYWxlbmRhckV2ZW50IiwidG9EYXRlIiwicmVjdXJyaW5nU3RhcnREYXRlIiwicmVjdXJyaW5nRW5kRGF0ZSIsIlV0aWxzIiwiaXNTdHJpbmdFbXB0eSIsImZpcmVDcmVhdGUiLCJldmVudCIsIkV2ZW50IiwiaGFuZGxlIiwidmlld0lkIiwiZXZlbnRNYW5hZ2VyIiwiZmlyZUV2ZW50IiwiRXZlbnRUeXBlIiwiQ0FMRU5EQVJfREFURV9DTElDSyIsImZpcmVDcmVhdGVGb3JNZXRhZGF0YSIsIm1ldGEiLCJmZXRjaENyZWF0ZU1ldGFkYXRhIiwidXJsIiwiY2FsZW5kYXJPcHRpb25zIiwicGx1Z2lucyIsImludGVyYWN0aW9uUGx1Z2luIiwiZGF5R3JpZFBsdWdpbiIsInRpbWVHcmlkUGx1Z2luIiwibGlzdFBsdWdpbiIsInJydWxlUGx1Z2luIiwiaW5pdGlhbFZpZXciLCJoZWFkZXJUb29sYmFyIiwiZWRpdGFibGUiLCJzdGlja3lIZWFkZXJEYXRlcyIsImV2ZW50VGltZUZvcm1hdCIsImhvdXIiLCJtaW51dGUiLCJob3VyMTIiLCJldmVudFJlc2l6YWJsZUZyb21TdGFydCIsImRyYWdTY3JvbGwiLCJkYXlNYXhFdmVudHMiLCJuYXZMaW5rcyIsImV2ZW50Q2xhc3NOYW1lcyIsIl9yZWYyIiwiY29sb3JOYW1lIiwiY29uY2F0Iiwidmlld0RpZE1vdW50IiwiZXZlbnRDbGljayIsIl9yZWYzIiwiZWwiLCJlbGVtZW50c0J5Q2xhc3NOYW1lIiwiZG9jdW1lbnQiLCJnZXRFbGVtZW50c0J5Q2xhc3NOYW1lIiwicmVtb3ZlRXZlbnRMaXN0ZW5lciIsImFkZEV2ZW50TGlzdGVuZXIiLCJkYXRlQ2xpY2siLCJjcmVhdGVFdmVudE1ldGFkYXRhVXJsIiwicmVzdWx0IiwicmVjb3JkcyIsImpzRXZlbnQiLCJjbGllbnRYIiwiY2xpZW50WSIsImdldENvbXBvbmVudEF0dHJpYnV0ZSIsImV2ZW50RHJvcCIsIl9yZWY0IiwiZHJvcHBlZEV2ZW50IiwidG9hc3QiLCJzdWNjZXNzIiwiZXZlbnRSZXNpemUiLCJfcmVmNSIsInJlc2l6ZWRFdmVudCIsImV2ZW50TW91c2VFbnRlciIsIl9yZWY2IiwiZXZlbnRNb3VzZUxlYXZlIiwiX3JlZjciLCJyZWYiLCJkaXJlY3Rpb24iLCJSZWFjdCIsInBhcnNlZENvbmZpZyIsInBhcnNlQ29uZmlnIiwiZXZlbnRIYW5kbGluZ0NvbmZpZyIsImlzTnVsbCIsInN1YnNjcmlwdGlvbnMiLCJhZGRTdWJzY3JpcHRpb25zIiwiYWRkU3lzdGVtU3Vic2NyaXB0aW9ucyIsInRvRGF0ZVRpbWVTdHJpbmciLCJ0b0xvY2FsZURhdGVTdHJpbmciLCJ0aW1lU3RyVG9rZW5zIiwidG9Mb2NhbGVUaW1lU3RyaW5nIiwic3BsaXQiLCJnZXRGb3JtT2JqZWN0IiwiY2FsZW5kYXIiLCJjYWxlbmRhckV2ZW50VG9Gb3JtT2JqZWN0IiwiZ2V0Q2hpbGRyZW4iLCJjcmVhdGVFdmVudFBvcHVwIiwiY3JlYXRlRWxlbWVudCIsIkZyYWdtZW50IiwiY2xhc3NOYW1lIiwib25DbGljayIsImNvbG9yIiwiY29uc29sZSIsImxvZyIsImhvc3QiLCJzdHlsZSIsIm1hcmdpblRvcCIsImhhc0FjdGl2ZU1lZXRpbmciLCJ2YXJpYW50Iiwic2l6ZSIsIm1hcmdpblJpZ2h0IiwiQ0FMRU5EQVJfRVZFTlRfU1RBUlQiLCJtZXJnZVN0eWxlcyIsIm1heEhlaWdodCIsIm9uQ2xvc2UiLCJoaWRlQmFja2Ryb3AiLCJkaXNhYmxlRW5mb3JjZUZvY3VzIiwiZGlzYWJsZUF1dG9Gb2N1cyIsIlBhcGVyUHJvcHMiLCJhbmNob3JSZWZlcmVuY2UiLCJhbmNob3JQb3NpdGlvbiIsIm1hcCIsImlkeCIsIl9kZWZhdWx0IiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9DYWxlbmRhci5qc3giXSwic291cmNlc0NvbnRlbnQiOlsi77u/aW1wb3J0IFJlYWN0LCB7dXNlRWZmZWN0LCB1c2VSZWYsIHVzZVN0YXRlfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgVXRpbHMgZnJvbSAnLi4vVXRpbHMnO1xuaW1wb3J0IGV2ZW50TWFuYWdlciBmcm9tICcuLi9ldmVudC9PYnNlcnZhYmxlJztcbmltcG9ydCBGdWxsQ2FsZW5kYXIgZnJvbSAnQGZ1bGxjYWxlbmRhci9yZWFjdCc7XG5pbXBvcnQgbGlzdFBsdWdpbiBmcm9tICdAZnVsbGNhbGVuZGFyL2xpc3QnO1xuaW1wb3J0IHJydWxlUGx1Z2luIGZyb20gJ0BmdWxsY2FsZW5kYXIvcnJ1bGUnO1xuaW1wb3J0IGRheUdyaWRQbHVnaW4gZnJvbSAnQGZ1bGxjYWxlbmRhci9kYXlncmlkJztcbmltcG9ydCB0aW1lR3JpZFBsdWdpbiBmcm9tICdAZnVsbGNhbGVuZGFyL3RpbWVncmlkJztcbmltcG9ydCBpbnRlcmFjdGlvblBsdWdpbiBmcm9tICdAZnVsbGNhbGVuZGFyL2ludGVyYWN0aW9uJztcbmltcG9ydCBcIi4vQ2FsZW5kZXIuY3NzXCJcbmltcG9ydCBtb21lbnQgZnJvbSBcIm1vbWVudFwiO1xuaW1wb3J0IHRvYXN0IGZyb20gJ3JlYWN0LWhvdC10b2FzdCc7XG5pbXBvcnQgRXZlbnQgZnJvbSAnLi4vZXZlbnQvRXZlbnQnO1xuaW1wb3J0IEV2ZW50VHlwZSBmcm9tIFwiLi4vZXZlbnQvRXZlbnRUeXBlXCI7XG5pbXBvcnQgYXBwbGljYXRpb25NYW5hZ2VyIGZyb20gXCIuLi9BcHBsaWNhdGlvbk1hbmFnZXJcIjtcbmltcG9ydCBEaWFsb2cgZnJvbSBcIkBtdWkvbWF0ZXJpYWwvRGlhbG9nXCI7XG5pbXBvcnQgd2l0aFN0eWxlcyBmcm9tIFwiQG11aS9zdHlsZXMvd2l0aFN0eWxlc1wiO1xuaW1wb3J0IEljb25CdXR0b24gZnJvbSBcIkBtdWkvbWF0ZXJpYWwvSWNvbkJ1dHRvblwiO1xuaW1wb3J0IEljb24gZnJvbSBcIi4vSWNvblwiO1xuaW1wb3J0IEJ1dHRvbiBmcm9tIFwiQG11aS9tYXRlcmlhbC9CdXR0b25cIjtcbmltcG9ydCBNZW51IGZyb20gXCJAbXVpL21hdGVyaWFsL01lbnVcIjtcbmltcG9ydCBNZW51SXRlbSBmcm9tIFwiQG11aS9tYXRlcmlhbC9NZW51SXRlbVwiO1xuaW1wb3J0IGNhbGVuZGFyIGZyb20gJy4uL2pzL0NhbGVuZGFyJztcblxuY29uc3QgZXZlbnRUZW1wbGF0ZSA9IHtcbiAgICBpZDogJycsXG4gICAgdGl0bGU6ICcnLFxuICAgIHN0YXJ0OiAnJyxcbiAgICBlbmQ6ICcnLFxuICAgIGFsbERheTogZmFsc2UsXG4gICAgZXh0ZW5kZWRQcm9wczoge1xuICAgICAgICBkZXNjcmlwdGlvbjogJycsXG4gICAgICAgIGF0dGVuZGVlczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGlkOiAnJyxcbiAgICAgICAgICAgICAgICBpZGVudGlmaWVyOiAnJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnJyxcbiAgICAgICAgICAgICAgICBvcHRpb25hbDogZmFsc2UsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBzY2hlZHVsZToge1xuICAgICAgICAgICAgaWQ6ICcnLFxuICAgICAgICAgICAgc3RhcnREYXRlOiAnJyxcbiAgICAgICAgICAgIGVuZERhdGU6ICcnLFxuICAgICAgICAgICAgc3RhcnRUaW1lOiAnJyxcbiAgICAgICAgICAgIGVuZFRpbWU6ICcnLFxuICAgICAgICB9LFxuICAgICAgICBsb2NhdGlvbnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpZDogJycsXG4gICAgICAgICAgICAgICAgbmFtZTogJycsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdXG4gICAgfSxcbn07XG5cbmNvbnN0IHN0YXR1cyA9IChyZXNwb25zZSkgPT4ge1xuICAgIGlmIChyZXNwb25zZS5vaykge1xuICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHJlc3BvbnNlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgICBsZXQgZXJyb3IgPSBuZXcgRXJyb3IocmVzcG9uc2Uuc3RhdHVzVGV4dCk7XG4gICAgICAgIGVycm9yLmNvZGUgPSByZXNwb25zZS5zdGF0dXM7XG5cbiAgICAgICAgcmV0dXJuIFByb21pc2UucmVqZWN0KGVycm9yKTtcbiAgICB9XG59O1xuXG5jb25zdCBqc29uID0gKHJlc3BvbnNlKSA9PiB7XG4gICAgcmV0dXJuIHJlc3BvbnNlLnRleHQoKTtcbn07XG5cbmNvbnN0IGxvY2F0aW9uID0gd2luZG93LmxvY2F0aW9uLnByb3RvY29sICsgXCIvL1wiICsgd2luZG93LmxvY2F0aW9uLmhvc3RuYW1lO1xuY29uc3QgQ2FsZW5kYXIgPSAocHJvcHMpID0+IHtcbiAgICBjb25zdCB7aXNSdGx9ID0gcHJvcHM7XG4gICAgY29uc3QgW2V2ZW50cywgc2V0RXZlbnRzXSA9IHVzZVN0YXRlKFtdKTtcbiAgICBjb25zdCBbbG9hZGluZywgc2V0TG9hZGluZ10gPSB1c2VTdGF0ZSh0cnVlKTtcbiAgICBjb25zdCBbb3Blbiwgc2V0T3Blbl0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gICAgY29uc3QgW3NlbGVjdGVkRXZlbnQsIHNldFNlbGVjdGVkRXZlbnRdID0gdXNlU3RhdGUobnVsbCk7XG4gICAgY29uc3QgY2FsZW5kYXJSZWYgPSB1c2VSZWYobnVsbCk7XG4gICAgY29uc3QgZGlhbG9nUmVmID0gdXNlUmVmKG51bGwpO1xuICAgIGNvbnN0IFtyZWZyZXNoZXIsIHNldFJlZnJlc2hlcl0gPSB1c2VTdGF0ZSgwKTtcbiAgICBjb25zdCBbZGlhbG9nUG9zaXRpb24sIHNldERpYWxvZ1Bvc2l0aW9uXSA9IHVzZVN0YXRlKHsgYm90dG9tOiAnMjBweCcsIHJpZ2h0OiAnMjBweCcgfSk7XG4gICAgY29uc3QgW2NyZWF0ZU1lbnUsIHNldENyZWF0ZU1lbnVdID0gdXNlU3RhdGUoeyBvcGVuOiBmYWxzZSwgeDogMCwgeTogMCwgaXRlbXM6IFtdLCBpbmZvOiBudWxsIH0pO1xuICAgIGNvbnN0IGNvbnRleHRDaGFuZ2VIYW5kbGVyID0ge307XG4gICAgbGV0IGNvdW50ZXIgPSAxO1xuXG4gICAgY29uc3QgU3R5bGVkRGlhbG9nID0gd2l0aFN0eWxlcyh7XG4gICAgICAgIHJvb3Q6IHtcbiAgICAgICAgICAgIHBvaW50ZXJFdmVudHM6IFwibm9uZVwiXG4gICAgICAgIH0sXG4gICAgICAgIHBhcGVyOiB7XG4gICAgICAgICAgICBwb2ludGVyRXZlbnRzOiAnYXV0bycsXG4gICAgICAgICAgICB3aWR0aDogJzQwMHB4JyxcbiAgICAgICAgICAgIGhlaWdodDogJzIyOHB4JyxcbiAgICAgICAgICAgIG1pbldpZHRoOiAnNDAwcHgnLFxuICAgICAgICAgICAgcGFkZGluZzogJzAnLFxuICAgICAgICAgICAgb3ZlcmZsb3c6ICdoaWRkZW4nLFxuICAgICAgICAgICAgcG9zaXRpb246ICdmaXhlZCcsXG4gICAgICAgICAgICBib3R0b206IGRpYWxvZ1Bvc2l0aW9uLmJvdHRvbSxcbiAgICAgICAgICAgIHJpZ2h0OiBkaWFsb2dQb3NpdGlvbi5yaWdodCxcbiAgICAgICAgICAgIGxlZnQ6ICdhdXRvICFpbXBvcnRhbnQnLFxuICAgICAgICAgICAgdG9wOiAnYXV0byAhaW1wb3J0YW50JyxcbiAgICAgICAgICAgIHRyYW5zZm9ybTogJ25vbmUgIWltcG9ydGFudCcsXG4gICAgICAgICAgICBtYXJnaW46ICcwICFpbXBvcnRhbnQnLFxuICAgICAgICAgICAgYm9yZGVyUmFkaXVzOiAnNHB4J1xuICAgICAgICB9XG4gICAgfSkoRGlhbG9nKTtcblxuICAgIGNvbnN0IGxvYWRFdmVudHMgPSAodHJhY2sgPSB0cnVlKSA9PiB7XG4gICAgICAgIC8vIENvbmZpZ3VyYWJsZSBwYXRoIGFwcGVuZGVkIHRvIHRoZSBsb2NhdGlvbiArIGNvbnRleHQtcm9vdCBiYXNlOyBkZWZhdWx0cyB0byB0aGUgY2FsZW5kYXIgZXZlbnRzIGVuZHBvaW50LlxuICAgICAgICBjb25zdCBldmVudHNVcmxQYXRoID0gKHByb3BzLmNvbmZpZyAmJiBwcm9wcy5jb25maWcuZXZlbnRzVXJsUGF0aCkgfHwgJy9jYWxlbmRhci9hcGkvdjEvZXZlbnQvbGlzdCc7XG4gICAgICAgIGZldGNoKGVuY29kZVVSSShsb2NhdGlvbiArIGFwcGxpY2F0aW9uTWFuYWdlci5nZXRDb250ZXh0Um9vdCgpICsgZXZlbnRzVXJsUGF0aCksIHtcbiAgICAgICAgICAgIG1ldGhvZDogJ0dFVCcsXG4gICAgICAgICAgICBoZWFkZXJzOiB7XG4gICAgICAgICAgICAgICAgJ0FjY2VwdCc6ICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgICAgICAgICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgICAgICAgICAgICdBdXRob3JpemF0aW9uJzogJ0JlYXJlciAnICsgc2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbShcImFjY2Vzc1Rva2VuXCIpLFxuICAgICAgICAgICAgICAgICdpZFRva2VuJzogc2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbShcImlkVG9rZW5cIilcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgICAgICAgIC50aGVuKHN0YXR1cylcbiAgICAgICAgICAgIC50aGVuKGpzb24pXG4gICAgICAgICAgICAudGhlbigocmVzcG9uc2UpID0+IHtcbiAgICAgICAgICAgICAgICBzZXRFdmVudHMoSlNPTi5wYXJzZShyZXNwb25zZSkpO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC5jYXRjaCgoaWdub3JlZCkgPT4ge1xuICAgICAgICAgICAgfSlcbiAgICB9O1xuXG5cbiAgICBjb25zdCBoYW5kbGVyID0gKCkgPT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgZ2V0IGlkKCkge1xuICAgICAgICAgICAgICAgIHJldHVybiAnY2FsZW5kYXInO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIG9uQ29udGV4dENoYW5nZTogKGNvbnRleHQsIG5ld1ZhbHVlcykgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChPYmplY3Qua2V5cyhuZXdWYWx1ZXMpXG4gICAgICAgICAgICAgICAgICAgIC5maW5kKChrZXkpID0+IGtleSA9PT0gJ3dpbmRvd0Rpc3BsYXlTdGF0ZScpKSB7XG4gICAgICAgICAgICAgICAgICAgIHNldFJlZnJlc2hlcihjb3VudGVyID4gMjAgPyAwIDogY291bnRlcisrKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH07XG4gICAgfTtcblxuICAgIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgICAgIGNvbnRleHRDaGFuZ2VIYW5kbGVyLmFwaSA9IGhhbmRsZXIoKTtcbiAgICAgICAgbG9hZEV2ZW50cygpO1xuICAgICAgICBhcHBsaWNhdGlvbk1hbmFnZXIuYWRkQXBwbGljYXRpb25Db250ZXh0U3Vic2NyaXB0aW9uKHtcbiAgICAgICAgICAgIGhhbmRsZXI6IGNvbnRleHRDaGFuZ2VIYW5kbGVyXG4gICAgICAgIH0pXG4gICAgfSwgW10pO1xuXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgICAgY29udGV4dENoYW5nZUhhbmRsZXIuYXBpID0gaGFuZGxlcigpO1xuICAgIH0pO1xuXG4gICAgY29uc3QgY2FsZW5kZXJTY3JvbGxMaXN0ZW5lciA9ICgpID0+IHtcbiAgICAgICAgc2V0T3BlbihmYWxzZSlcbiAgICB9O1xuXG4gICAgY29uc3QgaXNUb2RheU9yRnV0dXJlID0gKGRhdGVTdHIpID0+IG1vbWVudChuZXcgRGF0ZSgpKS5zdGFydE9mKCdkYXknKSA8PSBtb21lbnQobmV3IERhdGUoZGF0ZVN0cikpLnN0YXJ0T2YoJ2RheScpO1xuXG4gICAgY29uc3QgYnVpbGRDYWxlbmRhckV2ZW50ID0gKGluZm8sIHtldmVudFR5cGUsIGNvbmZlcmVuY2luZ0FjdGl2aXR5R3JvdXAsIG1ldGFkYXRhfSkgPT4ge1xuICAgICAgICBsZXQgZGF0ZSA9IG5ldyBEYXRlKGluZm8uZGF0ZVN0cik7XG4gICAgICAgIGxldCB0aW1lRGF0ZSA9IG5ldyBEYXRlKCk7XG4gICAgICAgIGxldCBzdGFydFRpbWUgPSBtb21lbnQoaW5mby5kYXRlU3RyLCAnZGRkIE1NTSBEIFlZWVkgSEg6bW06c3MgWlonKTtcbiAgICAgICAgdGltZURhdGUuc2V0SG91cnModGltZURhdGUuZ2V0SG91cnMoKSArIDEpO1xuICAgICAgICBzdGFydFRpbWUuc2V0KHtoOiB0aW1lRGF0ZS5nZXRIb3VycygpLCBtOiAwfSk7XG5cbiAgICAgICAgbGV0IGVuZFRpbWUgPSBtb21lbnQoaW5mby5kYXRlU3RyLCAnZGRkIE1NTSBEIFlZWVkgSEg6bW06c3MgWlonKTtcbiAgICAgICAgdGltZURhdGUuc2V0SG91cnModGltZURhdGUuZ2V0SG91cnMoKSArIDEpO1xuICAgICAgICBlbmRUaW1lLnNldCh7aDogdGltZURhdGUuZ2V0SG91cnMoKSwgbTogMH0pO1xuXG4gICAgICAgIGNvbnN0IGNhbGVuZGFyRXZlbnQgPSB7XG4gICAgICAgICAgICAuLi5ldmVudFRlbXBsYXRlLFxuICAgICAgICAgICAgc2NoZWR1bGU6IHtcbiAgICAgICAgICAgICAgICBzdGFydERhdGU6IGRhdGUsXG4gICAgICAgICAgICAgICAgZW5kRGF0ZTogZGF0ZSxcbiAgICAgICAgICAgICAgICBzdGFydFRpbWU6IHN0YXJ0VGltZS50b0RhdGUoKSxcbiAgICAgICAgICAgICAgICBlbmRUaW1lOiBlbmRUaW1lLnRvRGF0ZSgpLFxuICAgICAgICAgICAgICAgIHJlY3VycmluZ1N0YXJ0RGF0ZTogZGF0ZSxcbiAgICAgICAgICAgICAgICByZWN1cnJpbmdFbmREYXRlOiBkYXRlXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgZXZlbnRUeXBlOiBldmVudFR5cGUsXG4gICAgICAgICAgICBjb25mZXJlbmNpbmdBY3Rpdml0eUdyb3VwOiBjb25mZXJlbmNpbmdBY3Rpdml0eUdyb3VwLFxuICAgICAgICAgICAgbWV0YWRhdGE6IG1ldGFkYXRhXG4gICAgICAgIH07XG5cbiAgICAgICAgaWYgKFV0aWxzLmlzU3RyaW5nRW1wdHkoY2FsZW5kYXJFdmVudC5pZCkpIHtcbiAgICAgICAgICAgIGNhbGVuZGFyRXZlbnQuaWQgPSBudWxsO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBjYWxlbmRhckV2ZW50O1xuICAgIH07XG5cbiAgICBjb25zdCBmaXJlQ3JlYXRlID0gKGNhbGVuZGFyRXZlbnQpID0+IHtcbiAgICAgICAgbGV0IGV2ZW50ID0gbmV3IEV2ZW50KHByb3BzLmhhbmRsZSwgcHJvcHMudmlld0lkLCBjYWxlbmRhckV2ZW50KTtcbiAgICAgICAgZXZlbnRNYW5hZ2VyLmZpcmVFdmVudChFdmVudFR5cGUuQ0FMRU5EQVJfREFURV9DTElDSywgZXZlbnQpO1xuICAgIH07XG5cbiAgICBjb25zdCBmaXJlQ3JlYXRlRm9yTWV0YWRhdGEgPSAoaW5mbywgbWV0YSkgPT4ge1xuICAgICAgICBmaXJlQ3JlYXRlKGJ1aWxkQ2FsZW5kYXJFdmVudChpbmZvLCB7XG4gICAgICAgICAgICBldmVudFR5cGU6IG1ldGEuY29uZmVyZW5jaW5nQWN0aXZpdHlHcm91cCxcbiAgICAgICAgICAgIGNvbmZlcmVuY2luZ0FjdGl2aXR5R3JvdXA6IG1ldGEuY29uZmVyZW5jaW5nQWN0aXZpdHlHcm91cCxcbiAgICAgICAgICAgIG1ldGFkYXRhOiBtZXRhXG4gICAgICAgIH0pKTtcbiAgICB9O1xuXG4gICAgLy8gRmV0Y2ggdGhlIENSRUFURS1vcGVyYXRpb24gbWV0YWRhdGEgdGhlIGN1cnJlbnQgdXNlciBpcyBlbnRpdGxlZCB0byAocm9sZS1maWx0ZXJlZCBzZXJ2ZXItc2lkZSkuXG4gICAgY29uc3QgZmV0Y2hDcmVhdGVNZXRhZGF0YSA9ICh1cmwpID0+IHtcbiAgICAgICAgcmV0dXJuIGZldGNoKGVuY29kZVVSSShsb2NhdGlvbiArIGFwcGxpY2F0aW9uTWFuYWdlci5nZXRDb250ZXh0Um9vdCgpICsgdXJsKSwge1xuICAgICAgICAgICAgbWV0aG9kOiAnR0VUJyxcbiAgICAgICAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgICAgICAgICAnQWNjZXB0JzogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgICAgICAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicsXG4gICAgICAgICAgICAgICAgJ0F1dGhvcml6YXRpb24nOiAnQmVhcmVyICcgKyBzZXNzaW9uU3RvcmFnZS5nZXRJdGVtKFwiYWNjZXNzVG9rZW5cIiksXG4gICAgICAgICAgICAgICAgJ2lkVG9rZW4nOiBzZXNzaW9uU3RvcmFnZS5nZXRJdGVtKFwiaWRUb2tlblwiKVxuICAgICAgICAgICAgfVxuICAgICAgICB9KVxuICAgICAgICAgICAgLnRoZW4oc3RhdHVzKVxuICAgICAgICAgICAgLnRoZW4oanNvbilcbiAgICAgICAgICAgIC50aGVuKChyZXNwb25zZSkgPT4gSlNPTi5wYXJzZShyZXNwb25zZSkpO1xuICAgIH07XG5cbiAgICBjb25zdCBjYWxlbmRhck9wdGlvbnMgPSB7XG4gICAgICAgIGV2ZW50czogZXZlbnRzLFxuICAgICAgICBwbHVnaW5zOiBbaW50ZXJhY3Rpb25QbHVnaW4sIGRheUdyaWRQbHVnaW4sIHRpbWVHcmlkUGx1Z2luLCBsaXN0UGx1Z2luLCBycnVsZVBsdWdpbl0sXG4gICAgICAgIGluaXRpYWxWaWV3OiAnZGF5R3JpZE1vbnRoJyxcbiAgICAgICAgaGVhZGVyVG9vbGJhcjoge1xuICAgICAgICAgICAgc3RhcnQ6ICdzaWRlYmFyVG9nZ2xlLCBwcmV2LG5leHQsIHRpdGxlJyxcbiAgICAgICAgICAgIGVuZDogJ2RheUdyaWRNb250aCx0aW1lR3JpZFdlZWssdGltZUdyaWREYXksbGlzdE1vbnRoJyxcbiAgICAgICAgfSxcbiAgICAgICAgLypcbiAgICAgICAgICBFbmFibGUgZHJhZ2dpbmcgYW5kIHJlc2l6aW5nIGV2ZW50XG4gICAgICAgICAgPyBEb2NzOiBodHRwczovL2Z1bGxjYWxlbmRhci5pby9kb2NzL2VkaXRhYmxlXG4gICAgICAgICovXG4gICAgICAgIGVkaXRhYmxlOiB0cnVlLFxuICAgICAgICBoZWlnaHQ6ICcxMDAlJyxcbiAgICAgICAgc3RpY2t5SGVhZGVyRGF0ZXM6IHRydWUsXG5cbiAgICAgICAgZXZlbnRUaW1lRm9ybWF0OiB7IC8vIGxpa2UgJzE0OjMwOjAwJ1xuICAgICAgICAgICAgaG91cjogXCIyLWRpZ2l0XCIsXG4gICAgICAgICAgICBtaW51dGU6IFwiMi1kaWdpdFwiLFxuICAgICAgICAgICAgaG91cjEyOiBmYWxzZVxuICAgICAgICB9LFxuXG4gICAgICAgIC8qXG4gICAgICAgICAgRW5hYmxlIHJlc2l6aW5nIGV2ZW50IGZyb20gc3RhcnRcbiAgICAgICAgICA/IERvY3M6IGh0dHBzOi8vZnVsbGNhbGVuZGFyLmlvL2RvY3MvZXZlbnRSZXNpemFibGVGcm9tU3RhcnRcbiAgICAgICAgKi9cbiAgICAgICAgZXZlbnRSZXNpemFibGVGcm9tU3RhcnQ6IHRydWUsXG5cbiAgICAgICAgLypcbiAgICAgICAgICBBdXRvbWF0aWNhbGx5IHNjcm9sbCB0aGUgc2Nyb2xsLWNvbnRhaW5lcnMgZHVyaW5nIGV2ZW50IGRyYWctYW5kLWRyb3AgYW5kIGRhdGUgc2VsZWN0aW5nXG4gICAgICAgICAgPyBEb2NzOiBodHRwczovL2Z1bGxjYWxlbmRhci5pby9kb2NzL2RyYWdTY3JvbGxcbiAgICAgICAgKi9cbiAgICAgICAgZHJhZ1Njcm9sbDogdHJ1ZSxcblxuICAgICAgICAvKlxuICAgICAgICAgIE1heCBudW1iZXIgb2YgZXZlbnRzIHdpdGhpbiBhIGdpdmVuIGRheVxuICAgICAgICAgID8gRG9jczogaHR0cHM6Ly9mdWxsY2FsZW5kYXIuaW8vZG9jcy9kYXlNYXhFdmVudHNcbiAgICAgICAgKi9cbiAgICAgICAgZGF5TWF4RXZlbnRzOiAyLFxuXG4gICAgICAgIC8qXG4gICAgICAgICAgRGV0ZXJtaW5lcyBpZiBkYXkgbmFtZXMgYW5kIHdlZWsgbmFtZXMgYXJlIGNsaWNrYWJsZVxuICAgICAgICAgID8gRG9jczogaHR0cHM6Ly9mdWxsY2FsZW5kYXIuaW8vZG9jcy9uYXZMaW5rc1xuICAgICAgICAqL1xuICAgICAgICBuYXZMaW5rczogdHJ1ZSxcblxuICAgICAgICBldmVudENsYXNzTmFtZXMoe2V2ZW50OiBjYWxlbmRhckV2ZW50fSkge1xuICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVuZGVyc2NvcmUtZGFuZ2xlXG4gICAgICAgICAgICBjb25zdCBjb2xvck5hbWUgPSAnIzk0NWMzMyc7XG5cbiAgICAgICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICAgICAgYGJnLWxpZ2h0LSR7Y29sb3JOYW1lfWAsXG4gICAgICAgICAgICBdO1xuICAgICAgICB9LFxuXG4gICAgICAgIHZpZXdEaWRNb3VudCgpIHtcbiAgICAgICAgICAgIHNldE9wZW4oZmFsc2UpO1xuICAgICAgICB9LFxuXG4gICAgICAgIGV2ZW50Q2xpY2soe2VsOiBlbCwgZXZlbnQ6IGV2ZW50fSkge1xuICAgICAgICAgICAgc2V0U2VsZWN0ZWRFdmVudChldmVudCk7XG4gICAgICAgICAgICBzZXRPcGVuKHRydWUpO1xuXG4gICAgICAgICAgICBsZXQgZWxlbWVudHNCeUNsYXNzTmFtZSA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoJ2ZjLXNjcm9sbGVyLWxpcXVpZC1hYnNvbHV0ZScpO1xuICAgICAgICAgICAgaWYgKGVsZW1lbnRzQnlDbGFzc05hbWUgJiYgZWxlbWVudHNCeUNsYXNzTmFtZS5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgZWxlbWVudHNCeUNsYXNzTmFtZVswXS5yZW1vdmVFdmVudExpc3RlbmVyKFwic2Nyb2xsXCIsIGNhbGVuZGVyU2Nyb2xsTGlzdGVuZXIpO1xuICAgICAgICAgICAgICAgIGVsZW1lbnRzQnlDbGFzc05hbWVbMF0uYWRkRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgY2FsZW5kZXJTY3JvbGxMaXN0ZW5lcik7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGVsZW1lbnRzQnlDbGFzc05hbWUgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCdmYy1zY3JvbGxlci1saXF1aWQnKTtcbiAgICAgICAgICAgIGlmIChlbGVtZW50c0J5Q2xhc3NOYW1lICYmIGVsZW1lbnRzQnlDbGFzc05hbWUubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgIGVsZW1lbnRzQnlDbGFzc05hbWVbMF0ucmVtb3ZlRXZlbnRMaXN0ZW5lcihcInNjcm9sbFwiLCBjYWxlbmRlclNjcm9sbExpc3RlbmVyKTtcbiAgICAgICAgICAgICAgICBlbGVtZW50c0J5Q2xhc3NOYW1lWzBdLmFkZEV2ZW50TGlzdGVuZXIoJ3Njcm9sbCcsIGNhbGVuZGVyU2Nyb2xsTGlzdGVuZXIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9LFxuXG4gICAgICAgIGRhdGVDbGljayhpbmZvKSB7XG4gICAgICAgICAgICBpZiAob3BlbiB8fCAhaXNUb2RheU9yRnV0dXJlKGluZm8uZGF0ZVN0cikpIHtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGNvbnN0IGNyZWF0ZUV2ZW50TWV0YWRhdGFVcmwgPSBwcm9wcy5jb25maWcgJiYgcHJvcHMuY29uZmlnLmNyZWF0ZUV2ZW50TWV0YWRhdGFVcmw7XG4gICAgICAgICAgICBpZiAoY3JlYXRlRXZlbnRNZXRhZGF0YVVybCkge1xuICAgICAgICAgICAgICAgIC8vIFJvbGUtZ2F0ZWQgY3JlYXRlOiBmZXRjaCB0aGUgZG9tYWlucyB0aGlzIHVzZXIgbWF5IGNyZWF0ZSwgdGhlbiBsZXQgdGhlbSBwaWNrIGZyb20gYSBtZW51LlxuICAgICAgICAgICAgICAgIGZldGNoQ3JlYXRlTWV0YWRhdGEoY3JlYXRlRXZlbnRNZXRhZGF0YVVybClcbiAgICAgICAgICAgICAgICAgICAgLnRoZW4oKHJlc3VsdCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgaXRlbXMgPSByZXN1bHQgJiYgcmVzdWx0LnJlY29yZHMgPyByZXN1bHQucmVjb3JkcyA6IFtdO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGl0ZW1zLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjsgLy8gbm90aGluZyBjcmVhdGFibGUgZm9yIHRoaXMgdXNlcidzIHJvbGVzIOKAlCBubyBtZW51LCBubyBldmVudCBmaXJlZFxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGl0ZW1zLmxlbmd0aCA9PT0gMSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIE9ubHkgb25lIG9wdGlvbiDigJQgc2tpcCB0aGUgbWVudSBhbmQgYWN0IGFzIGlmIGl0IHdhcyBjbGlja2VkLlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpcmVDcmVhdGVGb3JNZXRhZGF0YShpbmZvLCBpdGVtc1swXSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QganNFdmVudCA9IGluZm8uanNFdmVudCB8fCB7fTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNldENyZWF0ZU1lbnUoe29wZW46IHRydWUsIHg6IGpzRXZlbnQuY2xpZW50WCB8fCAwLCB5OiBqc0V2ZW50LmNsaWVudFkgfHwgMCwgaXRlbXMsIGluZm99KTtcbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgLmNhdGNoKChpZ25vcmVkKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gTGVnYWN5IGJlaGF2aW91cjogc2luZ2xlIGhhcmQtY29kZWQgZXZlbnQgdHlwZS5cbiAgICAgICAgICAgIGZpcmVDcmVhdGUoYnVpbGRDYWxlbmRhckV2ZW50KGluZm8sIHtcbiAgICAgICAgICAgICAgICBldmVudFR5cGU6IFV0aWxzLmdldENvbXBvbmVudEF0dHJpYnV0ZShwcm9wcy5jb25maWcsICdldmVudFR5cGUnLCAnVFJBSU5JTkcnKVxuICAgICAgICAgICAgfSkpO1xuICAgICAgICB9LFxuXG4gICAgICAgIC8qXG4gICAgICAgICAgSGFuZGxlIGV2ZW50IGRyb3AgKEFsc28gaW5jbHVkZSBkcmFnZ2VkIGV2ZW50KVxuICAgICAgICAgID8gRG9jczogaHR0cHM6Ly9mdWxsY2FsZW5kYXIuaW8vZG9jcy9ldmVudERyb3BcbiAgICAgICAgICA/IFdlIGNhbiB1c2UgYGV2ZW50RHJhZ1N0b3BgIGJ1dCBpdCBkb2Vzbid0IHJldHVybiB1cGRhdGVkIGV2ZW50IHNvIHdlIGhhdmUgdG8gdXNlIGBldmVudERyb3BgIHdoaWNoIHJldHVybnMgdXBkYXRlZCBldmVudFxuICAgICAgICAqL1xuICAgICAgICBldmVudERyb3Aoe2V2ZW50OiBkcm9wcGVkRXZlbnR9KSB7XG4gICAgICAgICAgICAvL2Rpc3BhdGNoKHVwZGF0ZUV2ZW50KGRyb3BwZWRFdmVudCkpO1xuICAgICAgICAgICAgdG9hc3Quc3VjY2VzcygnRXZlbnQgVXBkYXRlZCcpO1xuICAgICAgICB9LFxuXG4gICAgICAgIC8qXG4gICAgICAgICAgSGFuZGxlIGV2ZW50IHJlc2l6ZVxuICAgICAgICAgID8gRG9jczogaHR0cHM6Ly9mdWxsY2FsZW5kYXIuaW8vZG9jcy9ldmVudFJlc2l6ZVxuICAgICAgICAqL1xuICAgICAgICBldmVudFJlc2l6ZSh7ZXZlbnQ6IHJlc2l6ZWRFdmVudH0pIHtcbiAgICAgICAgICAgIC8vZGlzcGF0Y2godXBkYXRlRXZlbnQocmVzaXplZEV2ZW50KSk7XG4gICAgICAgICAgICB0b2FzdC5zdWNjZXNzKCdFdmVudCBVcGRhdGVkJyk7XG4gICAgICAgIH0sXG5cbiAgICAgICAgLypcbiAgICAgICAgICBIYW5kbGUgZXZlbnQgbW91c2UgZW50ZXJcbiAgICAgICAgICA/IERvY3M6IGh0dHBzOi8vZnVsbGNhbGVuZGFyLmlvL2RvY3MvZXZlbnRNb3VzZUVudGVyXG4gICAgICAgICovXG4gICAgICAgIGV2ZW50TW91c2VFbnRlcih7ZWw6IGVsLCBldmVudDogZXZlbnR9KSB7XG4gICAgICAgIH0sXG5cblxuICAgICAgICAvKlxuICAgICAgICAgIEhhbmRsZSBldmVudCBtb3VzZSBlbnRlclxuICAgICAgICAgID8gRG9jczogaHR0cHM6Ly9mdWxsY2FsZW5kYXIuaW8vZG9jcy9ldmVudE1vdXNlRW50ZXJcbiAgICAgICAgKi9cbiAgICAgICAgZXZlbnRNb3VzZUxlYXZlKHtlbDogZWx9KSB7XG4gICAgICAgIH0sXG5cbiAgICAgICAgcmVmOiBjYWxlbmRhclJlZixcblxuICAgICAgICAvLyBHZXQgZGlyZWN0aW9uIGZyb20gYXBwIHN0YXRlIChzdG9yZSlcbiAgICAgICAgZGlyZWN0aW9uOiBpc1J0bCA/ICdydGwnIDogJ2x0cicsXG4gICAgfTtcblxuICAgIFJlYWN0LnVzZUVmZmVjdCgoKSA9PiB7XG4gICAgICAgIHByb3BzLmhhbmRsZS5hcGkgPSBhcGkoKTtcbiAgICAgICAgbGV0IHBhcnNlZENvbmZpZyA9IFV0aWxzLnBhcnNlQ29uZmlnKHByb3BzLmNvbmZpZywgcHJvcHMudmlld0lkKTtcbiAgICAgICAgbGV0IGV2ZW50SGFuZGxpbmdDb25maWcgPSBVdGlscy5pc051bGwocGFyc2VkQ29uZmlnLmV2ZW50SGFuZGxpbmdDb25maWcpID8ge30gOiBwYXJzZWRDb25maWcuZXZlbnRIYW5kbGluZ0NvbmZpZztcbiAgICAgICAgZXZlbnRIYW5kbGluZ0NvbmZpZy5zdWJzY3JpcHRpb25zID0gVXRpbHMuaXNOdWxsKGV2ZW50SGFuZGxpbmdDb25maWcuc3Vic2NyaXB0aW9ucykgPyBbXSA6IGV2ZW50SGFuZGxpbmdDb25maWcuc3Vic2NyaXB0aW9ucztcbiAgICAgICAgZXZlbnRNYW5hZ2VyLmFkZFN1YnNjcmlwdGlvbnMoZXZlbnRIYW5kbGluZ0NvbmZpZywgcHJvcHMuaGFuZGxlLCBwcm9wcy52aWV3SWQpO1xuICAgICAgICBldmVudE1hbmFnZXIuYWRkU3lzdGVtU3Vic2NyaXB0aW9ucyhwcm9wcy52aWV3SWQsIHBhcnNlZENvbmZpZyk7XG4gICAgfSwgW10pO1xuXG4gICAgY29uc3QgdG9EYXRlVGltZVN0cmluZyA9IChkYXRlKSA9PiB7XG4gICAgICAgIGxldCBkYXRlU3RyID0gc2VsZWN0ZWRFdmVudC5zdGFydC50b0xvY2FsZURhdGVTdHJpbmcoKTtcbiAgICAgICAgbGV0IHRpbWVTdHJUb2tlbnMgPSBzZWxlY3RlZEV2ZW50LnN0YXJ0LnRvTG9jYWxlVGltZVN0cmluZygpLnNwbGl0KCc6Jyk7XG5cbiAgICAgICAgcmV0dXJuIGRhdGVTdHIgKyAnICcgKyB0aW1lU3RyVG9rZW5zWzBdICsgJzonICsgdGltZVN0clRva2Vuc1sxXTtcbiAgICB9O1xuXG4gICAgY29uc3QgZ2V0Rm9ybU9iamVjdCA9IChldmVudCkgPT4ge1xuICAgICAgICByZXR1cm4gY2FsZW5kYXIuY2FsZW5kYXJFdmVudFRvRm9ybU9iamVjdChldmVudCk7XG4gICAgfTtcblxuICAgIGNvbnN0IGFwaSA9ICgpID0+IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGdldCBpZCgpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gcHJvcHMuY29uZmlnLmlkO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGdldENoaWxkcmVuOiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIFtdO1xuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuICAgIH07XG5cbiAgICBjb25zdCBjcmVhdGVFdmVudFBvcHVwID0gKGVsKSA9PiB7XG4gICAgICAgIHJldHVybiA8PlxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHNlbGVjdGVkRXZlbnQgJiYgPGRpdiBjbGFzc05hbWU9eydldmVudC1wb3B1cCd9PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17J3RvcC10b29sYmFyIHJvdyBuby1wYWRkaW5nIG5vLW1hcmdpbid9PlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9eydsZWZ0IGNvbCBuby1wYWRkaW5nIG5vLW1hcmdpbid9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxJY29uQnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHNldE9wZW4oZmFsc2UpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEljb24gaWQ9eydDTE9TRSd9IGNvbG9yPXsnIzAxNDc2Qyd9Lz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0ljb25CdXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXsncmlnaHQgY29sIG5vLXBhZGRpbmcgbm8tbWFyZ2luJ30+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEljb25CdXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coXCJTRUxFQ1RFRCBFVkVOVCA6IFwiLCBnZXRGb3JtT2JqZWN0KHNlbGVjdGVkRXZlbnQpKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCBldmVudCA9IG5ldyBFdmVudChwcm9wcy5oYW5kbGUsIHByb3BzLnZpZXdJZCwgZ2V0Rm9ybU9iamVjdChzZWxlY3RlZEV2ZW50KSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBldmVudE1hbmFnZXIuZmlyZUV2ZW50KEV2ZW50VHlwZS5DQUxFTkRBUl9EQVRFX0NMSUNLLCBldmVudCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SWNvbiBpZD17J01BWElNSVpFJ30gY29sb3I9eycjMDE0NzZDJ30vPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvSWNvbkJ1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9eydzdW1tYXJ5J30+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17J21vZGFsLXRpdGxlJ30+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3NlbGVjdGVkRXZlbnQudGl0bGV9XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3RvRGF0ZVRpbWVTdHJpbmcoc2VsZWN0ZWRFdmVudC5zdGFydCl9XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXsnb3JnYW5pc2VyJ30+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgT3JnYW5pc2VyOiB7c2VsZWN0ZWRFdmVudC5leHRlbmRlZFByb3BzLmhvc3QubmFtZX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBzdHlsZT17e21hcmdpblRvcDogJzE2cHgnfX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAhYXBwbGljYXRpb25NYW5hZ2VyLmhhc0FjdGl2ZU1lZXRpbmcoKSAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8QnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXJpYW50PXsnY29udGFpbmVkJ31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemU9XCJsYXJnZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcj17XCJwcmltYXJ5XCJ9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHlsZT17e2JvcmRlclJhZGl1czogJzRweCcsIG1hcmdpblJpZ2h0OiAnMnB4J319XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbkNsaWNrPXsoZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNldE9wZW4oZmFsc2UpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCBldmVudCA9IG5ldyBFdmVudChwcm9wcy5oYW5kbGUsIHByb3BzLnZpZXdJZCwgZ2V0Rm9ybU9iamVjdChzZWxlY3RlZEV2ZW50KSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXZlbnRNYW5hZ2VyLmZpcmVFdmVudChFdmVudFR5cGUuQ0FMRU5EQVJfRVZFTlRfU1RBUlQsIGV2ZW50KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEpPSU5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9CdXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgfVxuICAgICAgICA8Lz5cbiAgICB9O1xuXG4gICAgcmV0dXJuIChcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9e3Byb3BzLmNsYXNzTmFtZX0gc3R5bGU9e1xuICAgICAgICAgICAgVXRpbHMubWVyZ2VTdHlsZXMoe1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6ICcxNnB4IDAnLFxuICAgICAgICAgICAgICAgIG1hcmdpbjogJzAnLFxuICAgICAgICAgICAgICAgIG92ZXJmbG93OiAnYXV0bycsXG4gICAgICAgICAgICAgICAgd2lkdGg6ICcxMDAlJyxcbiAgICAgICAgICAgICAgICBoZWlnaHQ6ICcxMDAlJyxcbiAgICAgICAgICAgICAgICBtYXhIZWlnaHQ6ICcxMDAlJ1xuICAgICAgICAgICAgfSwgcHJvcHMuY29uZmlnKVxuICAgICAgICB9PlxuICAgICAgICAgICAgPGRpdiBrZXk9e3JlZnJlc2hlcn0gY2xhc3NOYW1lPXsndy0xMDAgaC0xMDAnfT5cbiAgICAgICAgICAgICAgICA8RnVsbENhbGVuZGFyIHsuLi5jYWxlbmRhck9wdGlvbnN9Lz57JyAnfVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8U3R5bGVkRGlhbG9nXG4gICAgICAgICAgICAgICAgb3Blbj17b3Blbn1cbiAgICAgICAgICAgICAgICByZWY9e2RpYWxvZ1JlZn1cbiAgICAgICAgICAgICAgICBvbkNsb3NlPXsoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHNldE9wZW4oZmFsc2UpXG4gICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICBoaWRlQmFja2Ryb3BcbiAgICAgICAgICAgICAgICBkaXNhYmxlRW5mb3JjZUZvY3VzXG4gICAgICAgICAgICAgICAgZGlzYWJsZUF1dG9Gb2N1c1xuICAgICAgICAgICAgICAgIGFyaWEtbGFiZWxsZWRieT1cImFsZXJ0LWRpYWxvZy10aXRsZVwiXG4gICAgICAgICAgICAgICAgYXJpYS1kZXNjcmliZWRieT1cImFsZXJ0LWRpYWxvZy1kZXNjcmlwdGlvblwiXG4gICAgICAgICAgICAgICAgYXJpYS1tb2RhbD17ZmFsc2V9XG4gICAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246ICdmaXhlZCcsXG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6ICdhdXRvJyxcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAnYXV0bydcbiAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgIFBhcGVyUHJvcHM9e3tcbiAgICAgICAgICAgICAgICAgICAgc3R5bGU6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiAnZml4ZWQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAnMjBweCcsXG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogJzIwcHgnLFxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwLFxuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiAnbm9uZSdcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9eyd3LTEwMCBoLTEwMCd9PlxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjcmVhdGVFdmVudFBvcHVwKClcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9TdHlsZWREaWFsb2c+XG4gICAgICAgICAgICA8TWVudVxuICAgICAgICAgICAgICAgIG9wZW49e2NyZWF0ZU1lbnUub3Blbn1cbiAgICAgICAgICAgICAgICBvbkNsb3NlPXsoKSA9PiBzZXRDcmVhdGVNZW51KHsuLi5jcmVhdGVNZW51LCBvcGVuOiBmYWxzZX0pfVxuICAgICAgICAgICAgICAgIGFuY2hvclJlZmVyZW5jZT1cImFuY2hvclBvc2l0aW9uXCJcbiAgICAgICAgICAgICAgICBhbmNob3JQb3NpdGlvbj17Y3JlYXRlTWVudS5vcGVuID8ge3RvcDogY3JlYXRlTWVudS55LCBsZWZ0OiBjcmVhdGVNZW51Lnh9IDogdW5kZWZpbmVkfVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgY3JlYXRlTWVudS5pdGVtcy5tYXAoKG1ldGEsIGlkeCkgPT4gKFxuICAgICAgICAgICAgICAgICAgICAgICAgPE1lbnVJdGVtXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAga2V5PXttZXRhLmNvbmZlcmVuY2luZ0FjdGl2aXR5R3JvdXAgfHwgaWR4fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0Q3JlYXRlTWVudSh7Li4uY3JlYXRlTWVudSwgb3BlbjogZmFsc2V9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlyZUNyZWF0ZUZvck1ldGFkYXRhKGNyZWF0ZU1lbnUuaW5mbywgbWV0YSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7bWV0YS5kZXNjcmlwdGlvbiB8fCBtZXRhLmNvbmZlcmVuY2luZ0FjdGl2aXR5R3JvdXB9XG4gICAgICAgICAgICAgICAgICAgICAgICA8L01lbnVJdGVtPlxuICAgICAgICAgICAgICAgICAgICApKVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDwvTWVudT5cbiAgICAgICAgPC9kaXY+XG4gICAgKTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgQ2FsZW5kYXI7XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFDLElBQUFBLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUNELElBQUFDLE1BQUEsR0FBQUMsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFHLFdBQUEsR0FBQUQsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFJLE9BQUEsR0FBQUYsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFLLEtBQUEsR0FBQUgsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFNLE1BQUEsR0FBQUosc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFPLFFBQUEsR0FBQUwsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFRLFNBQUEsR0FBQU4sc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFTLFlBQUEsR0FBQVAsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBQSxPQUFBO0FBQ0EsSUFBQVUsT0FBQSxHQUFBUixzQkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQVcsY0FBQSxHQUFBVCxzQkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQVksTUFBQSxHQUFBVixzQkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQWEsVUFBQSxHQUFBWCxzQkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQWMsbUJBQUEsR0FBQVosc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFlLE9BQUEsR0FBQWIsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFnQixXQUFBLEdBQUFkLHNCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBaUIsV0FBQSxHQUFBZixzQkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQWtCLEtBQUEsR0FBQWhCLHNCQUFBLENBQUFG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
@@ -181,8 +181,7 @@ const TabPanel = /*#__PURE__*/_react.default.memo(props => {
181
181
  return !_Utils.default.isNull(visibleTabPages) && visible && /*#__PURE__*/_react.default.createElement("div", {
182
182
  style: {
183
183
  width: (_props$config = props.config) !== null && _props$config !== void 0 && (_props$config = _props$config.attributes) !== null && _props$config !== void 0 && (_props$config = _props$config.style) !== null && _props$config !== void 0 && _props$config.width ? (_props$config2 = props.config) === null || _props$config2 === void 0 || (_props$config2 = _props$config2.attributes) === null || _props$config2 === void 0 || (_props$config2 = _props$config2.style) === null || _props$config2 === void 0 ? void 0 : _props$config2.width : '100%',
184
- height: (_props$config3 = props.config) !== null && _props$config3 !== void 0 && (_props$config3 = _props$config3.attributes) !== null && _props$config3 !== void 0 && (_props$config3 = _props$config3.style) !== null && _props$config3 !== void 0 && _props$config3.height ? (_props$config4 = props.config) === null || _props$config4 === void 0 || (_props$config4 = _props$config4.attributes) === null || _props$config4 === void 0 || (_props$config4 = _props$config4.style) === null || _props$config4 === void 0 ? void 0 : _props$config4.height : '100%',
185
- border: '4px solid green'
184
+ height: (_props$config3 = props.config) !== null && _props$config3 !== void 0 && (_props$config3 = _props$config3.attributes) !== null && _props$config3 !== void 0 && (_props$config3 = _props$config3.style) !== null && _props$config3 !== void 0 && _props$config3.height ? (_props$config4 = props.config) === null || _props$config4 === void 0 || (_props$config4 = _props$config4.attributes) === null || _props$config4 === void 0 || (_props$config4 = _props$config4.style) === null || _props$config4 === void 0 ? void 0 : _props$config4.height : '100%'
186
185
  }
187
186
  }, /*#__PURE__*/_react.default.createElement(_AppBar.default, {
188
187
  position: "static",
@@ -258,4 +257,4 @@ const TabPanel = /*#__PURE__*/_react.default.memo(props => {
258
257
  })));
259
258
  });
260
259
  var _default = exports.default = TabPanel;
261
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9VdGlscyIsIl9BcHBCYXIiLCJfVGFiIiwiX1RhYnMiLCJfVGFiUGFnZSIsIl9TZWN0aW9uIiwiX1Rvb2xiYXIiLCJfQXBwbGljYXRpb25NYW5hZ2VyIiwiX0xheW91dCIsIl9JY29uIiwiZSIsIl9fZXNNb2R1bGUiLCJkZWZhdWx0IiwiX2V4dGVuZHMiLCJPYmplY3QiLCJhc3NpZ24iLCJiaW5kIiwibiIsImFyZ3VtZW50cyIsImxlbmd0aCIsInQiLCJyIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiYXBwbHkiLCJvd25LZXlzIiwia2V5cyIsImdldE93blByb3BlcnR5U3ltYm9scyIsIm8iLCJmaWx0ZXIiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJlbnVtZXJhYmxlIiwicHVzaCIsIl9vYmplY3RTcHJlYWQiLCJmb3JFYWNoIiwiX2RlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyIsImRlZmluZVByb3BlcnRpZXMiLCJkZWZpbmVQcm9wZXJ0eSIsIl90b1Byb3BlcnR5S2V5IiwidmFsdWUiLCJjb25maWd1cmFibGUiLCJ3cml0YWJsZSIsImkiLCJfdG9QcmltaXRpdmUiLCJTeW1ib2wiLCJ0b1ByaW1pdGl2ZSIsIlR5cGVFcnJvciIsIlN0cmluZyIsIk51bWJlciIsImExMXlQcm9wcyIsImluZGV4IiwiaWQiLCJjb25jYXQiLCJUYWJQYW5lbCIsIlJlYWN0IiwibWVtbyIsInByb3BzIiwiX3Byb3BzJGNvbmZpZyIsIl9wcm9wcyRjb25maWcyIiwiX3Byb3BzJGNvbmZpZzMiLCJfcHJvcHMkY29uZmlnNCIsInRhYlZhbHVlIiwic2V0VGFiVmFsdWUiLCJ1c2VTdGF0ZSIsImVycm9ycyIsInNldEVycm9ycyIsInZpc2libGVUYWJQYWdlcyIsInNldFZpc2libGVUYWJQYWdlcyIsInZpc2libGUiLCJzZXRWaXNpYmxlIiwibG9hZGVkIiwidXNlUmVmIiwiY29tcG9uZW50SGFuZGxlcyIsImhhbmRsZVRhYkNoYW5nZSIsImV2ZW50IiwibmV3VmFsdWUiLCJjcmVhdGVDb21wb25lbnRIYW5kbGUiLCJjb21wb25lbnQiLCJVdGlscyIsImlzTnVsbCIsImhhbmRsZSIsInVzZUVmZmVjdCIsImFwaSIsInNldHVwVmlzaWJsZVBhZ2VzIiwiY29uZmlnIiwidGFiUGFnZXMiLCJhbGxWaXNpYmxlVGFiUGFnZXMiLCJwYWdlIiwicGFyc2VkQ29uZmlnIiwicGFyc2VDb25maWciLCJ2aWV3SWQiLCJldmFsdWF0ZUJvb2xlYW5FeHByZXNzaW9uIiwic2V0dXAiLCJmb3JtIiwic2V0Q29udGFpbmVyRXJyb3JIYW5kbGVyIiwiY29udGFpbmVyRXJyb3JzIiwic2hvdWxkUmVmcmVzaCIsInByb3BlcnRpZXMiLCJnZXRPd25Qcm9wZXJ0eU5hbWVzIiwicHJvcGVydHkiLCJhcHBsaWNhdGlvbk1hbmFnZXIiLCJpc0Zvcm1NYXJrZXJzRW5hYmxlZCIsIkpTT04iLCJwYXJzZSIsInN0cmluZ2lmeSIsImN1cnJlbnQiLCJyZWZyZXNoIiwicmVuZGVyVGFiUGFnZUNvbXBvbmVudCIsInRhYklkIiwidHlwZSIsImNyZWF0ZUVsZW1lbnQiLCJrZXlIYW5kbGVyIiwia2V5IiwicGFyZW50SWQiLCJ2YWx1ZXMiLCJMYXlvdXQiLCJyZW5kZXJQYWdlIiwicGFnZUluZGV4IiwiY2xhc3NOYW1lIiwiY29tcG9uZW50cyIsIm1hcCIsImdldENoaWxkcmVuIiwiY2hpbGRyZW4iLCJfY29tcG9uZW50SGFuZGxlJGFwaSIsImNvbXBvbmVudEhhbmRsZSIsImNoaWxkIiwic2V0UGFnZUhhc0Vycm9yIiwicGFnZUlkIiwiaGFzRXJyb3IiLCJjbGVhckVycm9ycyIsInJlZHJhdyIsInN0eWxlIiwid2lkdGgiLCJhdHRyaWJ1dGVzIiwiaGVpZ2h0IiwiYm9yZGVyIiwicG9zaXRpb24iLCJjb2xvciIsImJhY2tncm91bmQiLCJib3hTaGFkb3ciLCJib3JkZXJCb3R0b20iLCJvbkNoYW5nZSIsInZhcmlhbnQiLCJzY3JvbGxCdXR0b25zIiwiYWxsb3dTY3JvbGxCdXR0b25zTW9iaWxlIiwidGV4dENvbG9yIiwiaW5kaWNhdG9yQ29sb3IiLCJzeCIsIm1pbldpZHRoIiwiaWNvbklkIiwibGFiZWwiLCJpY29uIiwidW5kZWZpbmVkIiwiaWNvblBvc2l0aW9uIiwid3JhcHBlZCIsIm1heFdpZHRoIiwid2hpdGVTcGFjZSIsIndvcmRCcmVhayIsInRleHRUcmFuc2Zvcm0iLCJtZXJnZVN0eWxlcyIsIl9wYWdlJGF0dHJpYnV0ZXMiLCJfcGFnZSRhdHRyaWJ1dGVzMiIsImRpc3BsYXkiLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvVGFiUGFuZWwuanN4Il0sInNvdXJjZXNDb250ZW50IjpbIu+7v2ltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgVXRpbHMgZnJvbSAnLi4vVXRpbHMnO1xuaW1wb3J0IEFwcEJhciBmcm9tICdAbXVpL21hdGVyaWFsL0FwcEJhcic7XG5pbXBvcnQgVGFiIGZyb20gJ0BtdWkvbWF0ZXJpYWwvVGFiJztcbmltcG9ydCBUYWJzIGZyb20gJ0BtdWkvbWF0ZXJpYWwvVGFicyc7XG5pbXBvcnQgVGFiUGFnZSBmcm9tICcuL1RhYlBhZ2UnO1xuaW1wb3J0IEZvcm1TZWN0aW9uIGZyb20gJy4vZm9ybS9TZWN0aW9uJztcbmltcG9ydCBUb29sYmFyIGZyb20gJy4vVG9vbGJhcic7XG5pbXBvcnQgYXBwbGljYXRpb25NYW5hZ2VyIGZyb20gJy4uL0FwcGxpY2F0aW9uTWFuYWdlcic7XG5pbXBvcnQge0xheW91dH0gZnJvbSAnLi9sYXlvdXQvTGF5b3V0JztcbmltcG9ydCBJY29uIGZyb20gJy4vSWNvbic7XG5cbmZ1bmN0aW9uIGExMXlQcm9wcyhpbmRleCkge1xuICAgIHJldHVybiB7XG4gICAgICAgIGlkOiBgc2ltcGxlLXRhYi0ke2luZGV4fWAsXG4gICAgICAgICdhcmlhLWNvbnRyb2xzJzogYHNpbXBsZS10YWJwYW5lbC0ke2luZGV4fWAsXG4gICAgfTtcbn1cblxuY29uc3QgVGFiUGFuZWwgPSBSZWFjdC5tZW1vKChwcm9wcykgPT4ge1xuICAgIGNvbnN0IFt0YWJWYWx1ZSwgc2V0VGFiVmFsdWVdID0gUmVhY3QudXNlU3RhdGUoMCk7XG4gICAgY29uc3QgW2Vycm9ycywgc2V0RXJyb3JzXSA9IFJlYWN0LnVzZVN0YXRlKHt9KTtcbiAgICBjb25zdCBbdmlzaWJsZVRhYlBhZ2VzLCBzZXRWaXNpYmxlVGFiUGFnZXNdID0gUmVhY3QudXNlU3RhdGUobnVsbCk7XG4gICAgY29uc3QgW3Zpc2libGUsIHNldFZpc2libGVdID0gUmVhY3QudXNlU3RhdGUoZmFsc2UpO1xuICAgIGNvbnN0IGxvYWRlZCA9IFJlYWN0LnVzZVJlZihmYWxzZSk7XG4gICAgY29uc3QgW2NvbXBvbmVudEhhbmRsZXNdID0gUmVhY3QudXNlU3RhdGUoe30pO1xuXG4gICAgY29uc3QgaGFuZGxlVGFiQ2hhbmdlID0gKGV2ZW50LCBuZXdWYWx1ZSkgPT4ge1xuICAgICAgICBzZXRUYWJWYWx1ZShuZXdWYWx1ZSk7XG4gICAgfTtcblxuICAgIGNvbnN0IGNyZWF0ZUNvbXBvbmVudEhhbmRsZSA9IChjb21wb25lbnQpID0+IHtcbiAgICAgICAgaWYgKFV0aWxzLmlzTnVsbChjb21wb25lbnRIYW5kbGVzW2NvbXBvbmVudC5pZF0pKSB7XG4gICAgICAgICAgICBsZXQgaGFuZGxlID0ge307XG4gICAgICAgICAgICBjb21wb25lbnRIYW5kbGVzW2NvbXBvbmVudC5pZF0gPSBoYW5kbGU7XG4gICAgICAgICAgICByZXR1cm4gaGFuZGxlO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGNvbXBvbmVudEhhbmRsZXNbY29tcG9uZW50LmlkXTtcbiAgICB9O1xuXG4gICAgUmVhY3QudXNlRWZmZWN0KCgpID0+IHtcbiAgICAgICAgcHJvcHMuaGFuZGxlLmFwaSA9IGFwaSgpO1xuICAgIH0pO1xuXG4gICAgZnVuY3Rpb24gc2V0dXBWaXNpYmxlUGFnZXMoKSB7XG4gICAgICAgIGlmIChwcm9wcy5jb25maWcudGFiUGFnZXMpIHtcbiAgICAgICAgICAgIGxldCBhbGxWaXNpYmxlVGFiUGFnZXMgPSBbXTtcbiAgICAgICAgICAgIGZvciAoY29uc3QgcGFnZSBvZiBwcm9wcy5jb25maWcudGFiUGFnZXMpIHtcbiAgICAgICAgICAgICAgICBpZiAoVXRpbHMuaXNOdWxsKHBhZ2UuaWQpKSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZ2UuaWQgPSBpbmRleCArICctdGFiLXBhZ2UnO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGxldCBwYXJzZWRDb25maWcgPSBVdGlscy5wYXJzZUNvbmZpZyhwYWdlLCBwcm9wcy52aWV3SWQpO1xuICAgICAgICAgICAgICAgIGxldCB2aXNpYmxlID0gVXRpbHMuaXNOdWxsKHBhcnNlZENvbmZpZy52aXNpYmxlKSB8fCBVdGlscy5ldmFsdWF0ZUJvb2xlYW5FeHByZXNzaW9uKHBhcnNlZENvbmZpZy52aXNpYmxlLCBwYWdlLmlkKTtcbiAgICAgICAgICAgICAgICBpZiAodmlzaWJsZSkge1xuICAgICAgICAgICAgICAgICAgICBhbGxWaXNpYmxlVGFiUGFnZXMucHVzaChwYWdlKVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc2V0VmlzaWJsZVRhYlBhZ2VzKGFsbFZpc2libGVUYWJQYWdlcyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBmdW5jdGlvbiBzZXR1cCgpIHtcbiAgICAgICAgaWYgKCFVdGlscy5pc051bGwocHJvcHMuZm9ybSkpIHtcbiAgICAgICAgICAgIHByb3BzLmZvcm0oKVxuICAgICAgICAgICAgICAgIC5zZXRDb250YWluZXJFcnJvckhhbmRsZXIoKGNvbnRhaW5lckVycm9ycykgPT4ge1xuICAgICAgICAgICAgICAgICAgICBsZXQgc2hvdWxkUmVmcmVzaCA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICBsZXQgcHJvcGVydGllcyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKGNvbnRhaW5lckVycm9ycyk7XG5cbiAgICAgICAgICAgICAgICAgICAgZm9yIChjb25zdCBwcm9wZXJ0eSBvZiBwcm9wZXJ0aWVzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoZXJyb3JzW3Byb3BlcnR5XSAhPT0gY29udGFpbmVyRXJyb3JzW3Byb3BlcnR5XSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNob3VsZFJlZnJlc2ggPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaWYgKGFwcGxpY2F0aW9uTWFuYWdlci5pc0Zvcm1NYXJrZXJzRW5hYmxlZCgpICYmIHNob3VsZFJlZnJlc2gpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNldEVycm9ycyhKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KGNvbnRhaW5lckVycm9ycykpKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgLy9zZXR1cFZpc2libGVQYWdlcygpO1xuICAgICAgICBsb2FkZWQuY3VycmVudCA9IHRydWU7XG4gICAgfVxuXG4gICAgUmVhY3QudXNlRWZmZWN0KCgpID0+IHtcbiAgICAgICAgc2V0dXAoKTtcbiAgICAgICAgYXBpKCkucmVmcmVzaCgpO1xuICAgIH0sIFtdKTtcblxuICAgIFJlYWN0LnVzZUVmZmVjdCgoKSA9PiB7XG4gICAgICAgIGlmKCF2aXNpYmxlVGFiUGFnZXMpIHtcbiAgICAgICAgICAgIHNldHVwVmlzaWJsZVBhZ2VzKClcbiAgICAgICAgfVxuICAgIH0sIFt2aXNpYmxlVGFiUGFnZXNdKTtcblxuICAgIGZ1bmN0aW9uIHJlbmRlclRhYlBhZ2VDb21wb25lbnQoY29tcG9uZW50LCB0YWJJZCwgaW5kZXgpIHtcbiAgICAgICAgaWYgKFV0aWxzLmlzTnVsbChjb21wb25lbnQuaWQpKSB7XG4gICAgICAgICAgICBjb21wb25lbnQuaWQgPSBpbmRleCArICctdGFiLWNvbnRlbnQnO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGNvbXBvbmVudC50eXBlID09PSAnZm9ybVNlY3Rpb24nID9cbiAgICAgICAgICAgIDxGb3JtU2VjdGlvbiBrZXlIYW5kbGVyPXtwcm9wcy5rZXlIYW5kbGVyfVxuICAgICAgICAgICAgICAgICAgICAgICAgIGtleT17Y29tcG9uZW50LmlkfVxuICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZpZz17Y29tcG9uZW50fVxuICAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZT17Y3JlYXRlQ29tcG9uZW50SGFuZGxlKGNvbXBvbmVudCl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgZm9ybT17cHJvcHMuZm9ybX1cbiAgICAgICAgICAgICAgICAgICAgICAgICBwYXJlbnRJZD17dGFiSWR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgdmlld0lkPXtwcm9wcy52aWV3SWR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWVzPXtwcm9wcy52YWx1ZXN9XG4gICAgICAgICAgICAvPiA6XG4gICAgICAgICAgICBjb21wb25lbnQudHlwZSA9PT0gJ3Rvb2xiYXInID9cbiAgICAgICAgICAgICAgICA8VG9vbGJhciBjb25maWc9e2NvbXBvbmVudH0gaGFuZGxlPXtjcmVhdGVDb21wb25lbnRIYW5kbGUoY29tcG9uZW50KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICBrZXk9e2NvbXBvbmVudC5pZH1cbiAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3SWQ9e3Byb3BzLnZpZXdJZH0vPiA6XG4gICAgICAgICAgICAgICAgY29tcG9uZW50LnR5cGUgPT09ICdsYXlvdXQnID9cbiAgICAgICAgICAgICAgICAgICAgPExheW91dCBjb25maWc9e2NvbXBvbmVudH0gaGFuZGxlPXtjcmVhdGVDb21wb25lbnRIYW5kbGUoY29tcG9uZW50KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBrZXk9e2NvbXBvbmVudC5pZH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3SWQ9e3Byb3BzLnZpZXdJZH0vPiA6XG4gICAgICAgICAgICAgICAgICAgIDxkaXY+eydVbnN1cHBvcnRlZCBjb21wb25lbnQgdHlwZSAnICsgY29tcG9uZW50LnR5cGV9PC9kaXY+O1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIHJlbmRlclBhZ2UocGFnZSwgcGFnZUluZGV4KSB7XG4gICAgICAgIHJldHVybiA8ZGl2IGNsYXNzTmFtZT17J3RhYi1wYWdlLWNvbnRhaW5lcid9PlxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHBhZ2UuY29tcG9uZW50cy5tYXAoKGNvbXBvbmVudCwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJlbmRlclRhYlBhZ2VDb21wb25lbnQoY29tcG9uZW50LCBwYWdlLmlkLCBwYWdlSW5kZXggKyBpbmRleCk7XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+O1xuICAgIH1cblxuICAgIGNvbnN0IGFwaSA9ICgpID0+IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGdldCBpZCgpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gcHJvcHMuY29uZmlnLmlkO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGdldENoaWxkcmVuOiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgbGV0IGNoaWxkcmVuID0gW107XG5cbiAgICAgICAgICAgICAgICBsZXQgcHJvcGVydGllcyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKGNvbXBvbmVudEhhbmRsZXMpO1xuICAgICAgICAgICAgICAgIGZvciAoY29uc3QgcHJvcGVydHkgb2YgcHJvcGVydGllcykge1xuICAgICAgICAgICAgICAgICAgICBsZXQgY29tcG9uZW50SGFuZGxlID0gY29tcG9uZW50SGFuZGxlc1twcm9wZXJ0eV07XG4gICAgICAgICAgICAgICAgICAgIGNoaWxkcmVuLnB1c2goY29tcG9uZW50SGFuZGxlKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCFVdGlscy5pc051bGwoY29tcG9uZW50SGFuZGxlLmFwaT8uZ2V0Q2hpbGRyZW4pKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IGNoaWxkIG9mIGNvbXBvbmVudEhhbmRsZS5hcGkuZ2V0Q2hpbGRyZW4oKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoaWxkcmVuLnB1c2goY2hpbGQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcmV0dXJuIGNoaWxkcmVuO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHNldCB2YWx1ZSh2YWx1ZSkge1xuICAgICAgICAgICAgICAgIHNldFRhYlZhbHVlKHZhbHVlKTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBnZXQgdmFsdWUoKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRhYlZhbHVlO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHNldFBhZ2VIYXNFcnJvcjogKHBhZ2VJZCwgaGFzRXJyb3IpID0+IHtcbiAgICAgICAgICAgICAgICBzZXRFcnJvcnMoey4uLmVycm9ycywgW3BhZ2VJZF06IGhhc0Vycm9yfSk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgY2xlYXJFcnJvcnM6ICgpID0+IHtcbiAgICAgICAgICAgICAgICBzZXRFcnJvcnMoe30pO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHJlZHJhdzogKCkgPT4ge1xuICAgICAgICAgICAgICAgIC8vIEZvcmNlIHJlLXJlbmRlclxuICAgICAgICAgICAgICAgIHNldFZpc2libGVUYWJQYWdlcyhudWxsKTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICByZWZyZXNoOiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgbGV0IHBhcnNlZENvbmZpZyA9IFV0aWxzLnBhcnNlQ29uZmlnKHByb3BzLmNvbmZpZywgcHJvcHMudmlld0lkKTtcbiAgICAgICAgICAgICAgICBpZiAoIVV0aWxzLmlzTnVsbChwcm9wcy5jb25maWcpICYmICFVdGlscy5pc051bGwocGFyc2VkQ29uZmlnLnZpc2libGUpKSB7XG4gICAgICAgICAgICAgICAgICAgIHNldFZpc2libGUoVXRpbHMuZXZhbHVhdGVCb29sZWFuRXhwcmVzc2lvbihwYXJzZWRDb25maWcudmlzaWJsZSwgcGFyc2VkQ29uZmlnLmlkKSk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgc2V0VmlzaWJsZSh0cnVlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgc2V0IHZpc2libGUodmlzaWJsZSkge1xuICAgICAgICAgICAgICAgIHNldFZpc2libGUodmlzaWJsZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH07XG4gICAgfTtcblxuICAgIHJldHVybiAoXG4gICAgICAgICFVdGlscy5pc051bGwodmlzaWJsZVRhYlBhZ2VzKSAmJiB2aXNpYmxlICYmXG4gICAgICAgIDxkaXYgc3R5bGU9e3tcbiAgICAgICAgICAgIHdpZHRoOiBwcm9wcy5jb25maWc/LmF0dHJpYnV0ZXM/LnN0eWxlPy53aWR0aCA/IHByb3BzLmNvbmZpZz8uYXR0cmlidXRlcz8uc3R5bGU/LndpZHRoIDogJzEwMCUnLFxuICAgICAgICAgICAgaGVpZ2h0OiBwcm9wcy5jb25maWc/LmF0dHJpYnV0ZXM/LnN0eWxlPy5oZWlnaHQgPyBwcm9wcy5jb25maWc/LmF0dHJpYnV0ZXM/LnN0eWxlPy5oZWlnaHQgOiAnMTAwJScsXG4gICAgICAgICAgICBib3JkZXI6ICc0cHggc29saWQgZ3JlZW4nXG4gICAgICAgIH19PlxuICAgICAgICAgICAgPEFwcEJhciBwb3NpdGlvbj1cInN0YXRpY1wiIGNvbG9yPVwiZGVmYXVsdFwiXG4gICAgICAgICAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAndHJhbnNwYXJlbnQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgYm94U2hhZG93OiAnbm9uZScsXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXJCb3R0b206ICcxcHggc29saWQgI2UxZTFlMSdcbiAgICAgICAgICAgICAgICAgICAgfX0+XG4gICAgICAgICAgICAgICAgPFRhYnNcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU9e3RhYlZhbHVlfVxuICAgICAgICAgICAgICAgICAgICBvbkNoYW5nZT17aGFuZGxlVGFiQ2hhbmdlfVxuICAgICAgICAgICAgICAgICAgICB2YXJpYW50PVwic2Nyb2xsYWJsZVwiICAgICAgICAgICAgICAgIC8vIGVuYWJsZXMgaG9yaXpvbnRhbCBzY3JvbGxcbiAgICAgICAgICAgICAgICAgICAgc2Nyb2xsQnV0dG9ucz1cImF1dG9cIiAgICAgICAgICAgICAgICAvLyBzaG93cyBhcnJvd3Mgd2hlbiBuZWVkZWRcbiAgICAgICAgICAgICAgICAgICAgYWxsb3dTY3JvbGxCdXR0b25zTW9iaWxlICAgICAgICAgICAgLy8gc2hvdyBhcnJvd3Mgb24gbW9iaWxlIHRvb1xuICAgICAgICAgICAgICAgICAgICB0ZXh0Q29sb3I9XCJwcmltYXJ5XCJcbiAgICAgICAgICAgICAgICAgICAgaW5kaWNhdG9yQ29sb3I9XCJwcmltYXJ5XCJcbiAgICAgICAgICAgICAgICAgICAgYXJpYS1sYWJlbD1cInRhYnNcIlxuICAgICAgICAgICAgICAgICAgICBzeD17e1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gb3B0aW9uYWw6IHJlZHVjZSBkZWZhdWx0IG1pbiB3aWR0aCBzbyBtb3JlIHRhYnMgZml0XG4gICAgICAgICAgICAgICAgICAgICAgICAnJiAuTXVpVGFiLXJvb3QnOiB7bWluV2lkdGg6IDEyMH0sXG4gICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB7dmlzaWJsZVRhYlBhZ2VzLm1hcCgocGFnZSwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIE9wdGlvbmFsIHBlci10YWIgaWNvbjogYGF0dHJpYnV0ZXMuaWNvbmAgaXMgdGhlXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBJY29uIGNvbXBvbmVudCdzIGlkIChlLmcuIFwiV09SS1wiLCBcIlZJRVdcIikuIFdoZW5cbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIHByZXNlbnQsIHJlbmRlciB0byB0aGUgbGVmdCBvZiB0aGUgbGFiZWwuXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBpY29uSWQgPSBwYWdlLmF0dHJpYnV0ZXNbJ2ljb24nXTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPFRhYlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBrZXk9e2luZGV4fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbD17cGFnZS5hdHRyaWJ1dGVzWydsYWJlbCddfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpY29uPXtpY29uSWQgPyA8SWNvbiBpZD17aWNvbklkfS8+IDogdW5kZWZpbmVkfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpY29uUG9zaXRpb249e2ljb25JZCA/ICdzdGFydCcgOiB1bmRlZmluZWR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdyYXBwZWQgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGFsbG93IG11bHRpLWxpbmUgbGFiZWxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgey4uLmExMXlQcm9wcyhpbmRleCl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN4PXt7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXhXaWR0aDogMjQwLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAnMTAwJScsICAgICAgICAgICAgICAgICAvLyBjb25zdHJhaW4gc28gd3JhcHBpbmcgY2FuIG9jY3VyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aGl0ZVNwYWNlOiAnbm9ybWFsJywgICAgICAgICAgICAgLy8gYWxsb3cgd3JhcFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd29yZEJyZWFrOiAnYnJlYWstd29yZCcsICAgICAgICAgIC8vIGJyZWFrIGxvbmcgd29yZHNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHRUcmFuc2Zvcm06ICd1cHBlcmNhc2UnLCAgICAgICAgICAgIC8vIGtlZXAgb3JpZ2luYWwgY2FzaW5nXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcHBsaWNhdGlvbk1hbmFnZXIuaXNGb3JtTWFya2Vyc0VuYWJsZWQoKSAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVycm9ycyAhPT0gbnVsbCAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVycm9yc1twYWdlLmlkXSA9PT0gdHJ1ZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/ICcjZWQ1MjQ5J1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICAgICAgPC9UYWJzPlxuICAgICAgICAgICAgPC9BcHBCYXI+XG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgPGRpdiBzdHlsZT17VXRpbHMubWVyZ2VTdHlsZXMoe1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogJzEwMCUnLFxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6ICdjYWxjKDEwMCUgLSA2NHB4KSdcbiAgICAgICAgICAgICAgICB9LCBwcm9wcy5jb25maWcpfT5cbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgdmlzaWJsZVRhYlBhZ2VzLm1hcCgocGFnZSwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gPGRpdiBrZXk9e2luZGV4fSBzdHlsZT17e1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IHBhZ2U/LmF0dHJpYnV0ZXM/LnN0eWxlPy5oZWlnaHQgPyBwYWdlPy5hdHRyaWJ1dGVzPy5zdHlsZT8uaGVpZ2h0IDogJzEwMCUnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiB0YWJWYWx1ZSA9PT0gaW5kZXggPyBudWxsIDogJ25vbmUnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxUYWJQYWdlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZT17dGFiVmFsdWV9IGluZGV4PXtpbmRleH0gY29uZmlnPXtwYWdlfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtyZW5kZXJQYWdlKHBhZ2UsIGluZGV4KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9UYWJQYWdlPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+XG4gICAgKTtcbn0pO1xuXG5leHBvcnQgZGVmYXVsdCBUYWJQYW5lbDtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUMsSUFBQUEsTUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQ0QsSUFBQUMsTUFBQSxHQUFBRixzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUUsT0FBQSxHQUFBSCxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUcsSUFBQSxHQUFBSixzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUksS0FBQSxHQUFBTCxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUssUUFBQSxHQUFBTixzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQU0sUUFBQSxHQUFBUCxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQU8sUUFBQSxHQUFBUixzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQVEsbUJBQUEsR0FBQVQsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFTLE9BQUEsR0FBQVQsT0FBQTtBQUNBLElBQUFVLEtBQUEsR0FBQVgsc0JBQUEsQ0FBQUMsT0FBQTtBQUEwQixTQUFBRCx1QkFBQVksQ0FBQSxXQUFBQSxDQUFBLElBQUFBLENBQUEsQ0FBQUMsVUFBQSxHQUFBRCxDQUFBLEtBQUFFLE9BQUEsRUFBQUYsQ0FBQTtBQUFBLFNBQUFHLFNBQUEsV0FBQUEsUUFBQSxHQUFBQyxNQUFBLENBQUFDLE1BQUEsR0FBQUQsTUFBQSxDQUFBQyxNQUFBLENBQUFDLElBQUEsZUFBQUMsQ0FBQSxhQUFBUCxDQUFBLE1BQUFBLENB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
260
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9VdGlscyIsIl9BcHBCYXIiLCJfVGFiIiwiX1RhYnMiLCJfVGFiUGFnZSIsIl9TZWN0aW9uIiwiX1Rvb2xiYXIiLCJfQXBwbGljYXRpb25NYW5hZ2VyIiwiX0xheW91dCIsIl9JY29uIiwiZSIsIl9fZXNNb2R1bGUiLCJkZWZhdWx0IiwiX2V4dGVuZHMiLCJPYmplY3QiLCJhc3NpZ24iLCJiaW5kIiwibiIsImFyZ3VtZW50cyIsImxlbmd0aCIsInQiLCJyIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiYXBwbHkiLCJvd25LZXlzIiwia2V5cyIsImdldE93blByb3BlcnR5U3ltYm9scyIsIm8iLCJmaWx0ZXIiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJlbnVtZXJhYmxlIiwicHVzaCIsIl9vYmplY3RTcHJlYWQiLCJmb3JFYWNoIiwiX2RlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyIsImRlZmluZVByb3BlcnRpZXMiLCJkZWZpbmVQcm9wZXJ0eSIsIl90b1Byb3BlcnR5S2V5IiwidmFsdWUiLCJjb25maWd1cmFibGUiLCJ3cml0YWJsZSIsImkiLCJfdG9QcmltaXRpdmUiLCJTeW1ib2wiLCJ0b1ByaW1pdGl2ZSIsIlR5cGVFcnJvciIsIlN0cmluZyIsIk51bWJlciIsImExMXlQcm9wcyIsImluZGV4IiwiaWQiLCJjb25jYXQiLCJUYWJQYW5lbCIsIlJlYWN0IiwibWVtbyIsInByb3BzIiwiX3Byb3BzJGNvbmZpZyIsIl9wcm9wcyRjb25maWcyIiwiX3Byb3BzJGNvbmZpZzMiLCJfcHJvcHMkY29uZmlnNCIsInRhYlZhbHVlIiwic2V0VGFiVmFsdWUiLCJ1c2VTdGF0ZSIsImVycm9ycyIsInNldEVycm9ycyIsInZpc2libGVUYWJQYWdlcyIsInNldFZpc2libGVUYWJQYWdlcyIsInZpc2libGUiLCJzZXRWaXNpYmxlIiwibG9hZGVkIiwidXNlUmVmIiwiY29tcG9uZW50SGFuZGxlcyIsImhhbmRsZVRhYkNoYW5nZSIsImV2ZW50IiwibmV3VmFsdWUiLCJjcmVhdGVDb21wb25lbnRIYW5kbGUiLCJjb21wb25lbnQiLCJVdGlscyIsImlzTnVsbCIsImhhbmRsZSIsInVzZUVmZmVjdCIsImFwaSIsInNldHVwVmlzaWJsZVBhZ2VzIiwiY29uZmlnIiwidGFiUGFnZXMiLCJhbGxWaXNpYmxlVGFiUGFnZXMiLCJwYWdlIiwicGFyc2VkQ29uZmlnIiwicGFyc2VDb25maWciLCJ2aWV3SWQiLCJldmFsdWF0ZUJvb2xlYW5FeHByZXNzaW9uIiwic2V0dXAiLCJmb3JtIiwic2V0Q29udGFpbmVyRXJyb3JIYW5kbGVyIiwiY29udGFpbmVyRXJyb3JzIiwic2hvdWxkUmVmcmVzaCIsInByb3BlcnRpZXMiLCJnZXRPd25Qcm9wZXJ0eU5hbWVzIiwicHJvcGVydHkiLCJhcHBsaWNhdGlvbk1hbmFnZXIiLCJpc0Zvcm1NYXJrZXJzRW5hYmxlZCIsIkpTT04iLCJwYXJzZSIsInN0cmluZ2lmeSIsImN1cnJlbnQiLCJyZWZyZXNoIiwicmVuZGVyVGFiUGFnZUNvbXBvbmVudCIsInRhYklkIiwidHlwZSIsImNyZWF0ZUVsZW1lbnQiLCJrZXlIYW5kbGVyIiwia2V5IiwicGFyZW50SWQiLCJ2YWx1ZXMiLCJMYXlvdXQiLCJyZW5kZXJQYWdlIiwicGFnZUluZGV4IiwiY2xhc3NOYW1lIiwiY29tcG9uZW50cyIsIm1hcCIsImdldENoaWxkcmVuIiwiY2hpbGRyZW4iLCJfY29tcG9uZW50SGFuZGxlJGFwaSIsImNvbXBvbmVudEhhbmRsZSIsImNoaWxkIiwic2V0UGFnZUhhc0Vycm9yIiwicGFnZUlkIiwiaGFzRXJyb3IiLCJjbGVhckVycm9ycyIsInJlZHJhdyIsInN0eWxlIiwid2lkdGgiLCJhdHRyaWJ1dGVzIiwiaGVpZ2h0IiwicG9zaXRpb24iLCJjb2xvciIsImJhY2tncm91bmQiLCJib3hTaGFkb3ciLCJib3JkZXJCb3R0b20iLCJvbkNoYW5nZSIsInZhcmlhbnQiLCJzY3JvbGxCdXR0b25zIiwiYWxsb3dTY3JvbGxCdXR0b25zTW9iaWxlIiwidGV4dENvbG9yIiwiaW5kaWNhdG9yQ29sb3IiLCJzeCIsIm1pbldpZHRoIiwiaWNvbklkIiwibGFiZWwiLCJpY29uIiwidW5kZWZpbmVkIiwiaWNvblBvc2l0aW9uIiwid3JhcHBlZCIsIm1heFdpZHRoIiwid2hpdGVTcGFjZSIsIndvcmRCcmVhayIsInRleHRUcmFuc2Zvcm0iLCJtZXJnZVN0eWxlcyIsIl9wYWdlJGF0dHJpYnV0ZXMiLCJfcGFnZSRhdHRyaWJ1dGVzMiIsImRpc3BsYXkiLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvVGFiUGFuZWwuanN4Il0sInNvdXJjZXNDb250ZW50IjpbIu+7v2ltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgVXRpbHMgZnJvbSAnLi4vVXRpbHMnO1xuaW1wb3J0IEFwcEJhciBmcm9tICdAbXVpL21hdGVyaWFsL0FwcEJhcic7XG5pbXBvcnQgVGFiIGZyb20gJ0BtdWkvbWF0ZXJpYWwvVGFiJztcbmltcG9ydCBUYWJzIGZyb20gJ0BtdWkvbWF0ZXJpYWwvVGFicyc7XG5pbXBvcnQgVGFiUGFnZSBmcm9tICcuL1RhYlBhZ2UnO1xuaW1wb3J0IEZvcm1TZWN0aW9uIGZyb20gJy4vZm9ybS9TZWN0aW9uJztcbmltcG9ydCBUb29sYmFyIGZyb20gJy4vVG9vbGJhcic7XG5pbXBvcnQgYXBwbGljYXRpb25NYW5hZ2VyIGZyb20gJy4uL0FwcGxpY2F0aW9uTWFuYWdlcic7XG5pbXBvcnQge0xheW91dH0gZnJvbSAnLi9sYXlvdXQvTGF5b3V0JztcbmltcG9ydCBJY29uIGZyb20gJy4vSWNvbic7XG5cbmZ1bmN0aW9uIGExMXlQcm9wcyhpbmRleCkge1xuICAgIHJldHVybiB7XG4gICAgICAgIGlkOiBgc2ltcGxlLXRhYi0ke2luZGV4fWAsXG4gICAgICAgICdhcmlhLWNvbnRyb2xzJzogYHNpbXBsZS10YWJwYW5lbC0ke2luZGV4fWAsXG4gICAgfTtcbn1cblxuY29uc3QgVGFiUGFuZWwgPSBSZWFjdC5tZW1vKChwcm9wcykgPT4ge1xuICAgIGNvbnN0IFt0YWJWYWx1ZSwgc2V0VGFiVmFsdWVdID0gUmVhY3QudXNlU3RhdGUoMCk7XG4gICAgY29uc3QgW2Vycm9ycywgc2V0RXJyb3JzXSA9IFJlYWN0LnVzZVN0YXRlKHt9KTtcbiAgICBjb25zdCBbdmlzaWJsZVRhYlBhZ2VzLCBzZXRWaXNpYmxlVGFiUGFnZXNdID0gUmVhY3QudXNlU3RhdGUobnVsbCk7XG4gICAgY29uc3QgW3Zpc2libGUsIHNldFZpc2libGVdID0gUmVhY3QudXNlU3RhdGUoZmFsc2UpO1xuICAgIGNvbnN0IGxvYWRlZCA9IFJlYWN0LnVzZVJlZihmYWxzZSk7XG4gICAgY29uc3QgW2NvbXBvbmVudEhhbmRsZXNdID0gUmVhY3QudXNlU3RhdGUoe30pO1xuXG4gICAgY29uc3QgaGFuZGxlVGFiQ2hhbmdlID0gKGV2ZW50LCBuZXdWYWx1ZSkgPT4ge1xuICAgICAgICBzZXRUYWJWYWx1ZShuZXdWYWx1ZSk7XG4gICAgfTtcblxuICAgIGNvbnN0IGNyZWF0ZUNvbXBvbmVudEhhbmRsZSA9IChjb21wb25lbnQpID0+IHtcbiAgICAgICAgaWYgKFV0aWxzLmlzTnVsbChjb21wb25lbnRIYW5kbGVzW2NvbXBvbmVudC5pZF0pKSB7XG4gICAgICAgICAgICBsZXQgaGFuZGxlID0ge307XG4gICAgICAgICAgICBjb21wb25lbnRIYW5kbGVzW2NvbXBvbmVudC5pZF0gPSBoYW5kbGU7XG4gICAgICAgICAgICByZXR1cm4gaGFuZGxlO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGNvbXBvbmVudEhhbmRsZXNbY29tcG9uZW50LmlkXTtcbiAgICB9O1xuXG4gICAgUmVhY3QudXNlRWZmZWN0KCgpID0+IHtcbiAgICAgICAgcHJvcHMuaGFuZGxlLmFwaSA9IGFwaSgpO1xuICAgIH0pO1xuXG4gICAgZnVuY3Rpb24gc2V0dXBWaXNpYmxlUGFnZXMoKSB7XG4gICAgICAgIGlmIChwcm9wcy5jb25maWcudGFiUGFnZXMpIHtcbiAgICAgICAgICAgIGxldCBhbGxWaXNpYmxlVGFiUGFnZXMgPSBbXTtcbiAgICAgICAgICAgIGZvciAoY29uc3QgcGFnZSBvZiBwcm9wcy5jb25maWcudGFiUGFnZXMpIHtcbiAgICAgICAgICAgICAgICBpZiAoVXRpbHMuaXNOdWxsKHBhZ2UuaWQpKSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZ2UuaWQgPSBpbmRleCArICctdGFiLXBhZ2UnO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGxldCBwYXJzZWRDb25maWcgPSBVdGlscy5wYXJzZUNvbmZpZyhwYWdlLCBwcm9wcy52aWV3SWQpO1xuICAgICAgICAgICAgICAgIGxldCB2aXNpYmxlID0gVXRpbHMuaXNOdWxsKHBhcnNlZENvbmZpZy52aXNpYmxlKSB8fCBVdGlscy5ldmFsdWF0ZUJvb2xlYW5FeHByZXNzaW9uKHBhcnNlZENvbmZpZy52aXNpYmxlLCBwYWdlLmlkKTtcbiAgICAgICAgICAgICAgICBpZiAodmlzaWJsZSkge1xuICAgICAgICAgICAgICAgICAgICBhbGxWaXNpYmxlVGFiUGFnZXMucHVzaChwYWdlKVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc2V0VmlzaWJsZVRhYlBhZ2VzKGFsbFZpc2libGVUYWJQYWdlcyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBmdW5jdGlvbiBzZXR1cCgpIHtcbiAgICAgICAgaWYgKCFVdGlscy5pc051bGwocHJvcHMuZm9ybSkpIHtcbiAgICAgICAgICAgIHByb3BzLmZvcm0oKVxuICAgICAgICAgICAgICAgIC5zZXRDb250YWluZXJFcnJvckhhbmRsZXIoKGNvbnRhaW5lckVycm9ycykgPT4ge1xuICAgICAgICAgICAgICAgICAgICBsZXQgc2hvdWxkUmVmcmVzaCA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICBsZXQgcHJvcGVydGllcyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKGNvbnRhaW5lckVycm9ycyk7XG5cbiAgICAgICAgICAgICAgICAgICAgZm9yIChjb25zdCBwcm9wZXJ0eSBvZiBwcm9wZXJ0aWVzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoZXJyb3JzW3Byb3BlcnR5XSAhPT0gY29udGFpbmVyRXJyb3JzW3Byb3BlcnR5XSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNob3VsZFJlZnJlc2ggPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaWYgKGFwcGxpY2F0aW9uTWFuYWdlci5pc0Zvcm1NYXJrZXJzRW5hYmxlZCgpICYmIHNob3VsZFJlZnJlc2gpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNldEVycm9ycyhKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KGNvbnRhaW5lckVycm9ycykpKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgLy9zZXR1cFZpc2libGVQYWdlcygpO1xuICAgICAgICBsb2FkZWQuY3VycmVudCA9IHRydWU7XG4gICAgfVxuXG4gICAgUmVhY3QudXNlRWZmZWN0KCgpID0+IHtcbiAgICAgICAgc2V0dXAoKTtcbiAgICAgICAgYXBpKCkucmVmcmVzaCgpO1xuICAgIH0sIFtdKTtcblxuICAgIFJlYWN0LnVzZUVmZmVjdCgoKSA9PiB7XG4gICAgICAgIGlmKCF2aXNpYmxlVGFiUGFnZXMpIHtcbiAgICAgICAgICAgIHNldHVwVmlzaWJsZVBhZ2VzKClcbiAgICAgICAgfVxuICAgIH0sIFt2aXNpYmxlVGFiUGFnZXNdKTtcblxuICAgIGZ1bmN0aW9uIHJlbmRlclRhYlBhZ2VDb21wb25lbnQoY29tcG9uZW50LCB0YWJJZCwgaW5kZXgpIHtcbiAgICAgICAgaWYgKFV0aWxzLmlzTnVsbChjb21wb25lbnQuaWQpKSB7XG4gICAgICAgICAgICBjb21wb25lbnQuaWQgPSBpbmRleCArICctdGFiLWNvbnRlbnQnO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGNvbXBvbmVudC50eXBlID09PSAnZm9ybVNlY3Rpb24nID9cbiAgICAgICAgICAgIDxGb3JtU2VjdGlvbiBrZXlIYW5kbGVyPXtwcm9wcy5rZXlIYW5kbGVyfVxuICAgICAgICAgICAgICAgICAgICAgICAgIGtleT17Y29tcG9uZW50LmlkfVxuICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZpZz17Y29tcG9uZW50fVxuICAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZT17Y3JlYXRlQ29tcG9uZW50SGFuZGxlKGNvbXBvbmVudCl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgZm9ybT17cHJvcHMuZm9ybX1cbiAgICAgICAgICAgICAgICAgICAgICAgICBwYXJlbnRJZD17dGFiSWR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgdmlld0lkPXtwcm9wcy52aWV3SWR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWVzPXtwcm9wcy52YWx1ZXN9XG4gICAgICAgICAgICAvPiA6XG4gICAgICAgICAgICBjb21wb25lbnQudHlwZSA9PT0gJ3Rvb2xiYXInID9cbiAgICAgICAgICAgICAgICA8VG9vbGJhciBjb25maWc9e2NvbXBvbmVudH0gaGFuZGxlPXtjcmVhdGVDb21wb25lbnRIYW5kbGUoY29tcG9uZW50KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICBrZXk9e2NvbXBvbmVudC5pZH1cbiAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3SWQ9e3Byb3BzLnZpZXdJZH0vPiA6XG4gICAgICAgICAgICAgICAgY29tcG9uZW50LnR5cGUgPT09ICdsYXlvdXQnID9cbiAgICAgICAgICAgICAgICAgICAgPExheW91dCBjb25maWc9e2NvbXBvbmVudH0gaGFuZGxlPXtjcmVhdGVDb21wb25lbnRIYW5kbGUoY29tcG9uZW50KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBrZXk9e2NvbXBvbmVudC5pZH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3SWQ9e3Byb3BzLnZpZXdJZH0vPiA6XG4gICAgICAgICAgICAgICAgICAgIDxkaXY+eydVbnN1cHBvcnRlZCBjb21wb25lbnQgdHlwZSAnICsgY29tcG9uZW50LnR5cGV9PC9kaXY+O1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIHJlbmRlclBhZ2UocGFnZSwgcGFnZUluZGV4KSB7XG4gICAgICAgIHJldHVybiA8ZGl2IGNsYXNzTmFtZT17J3RhYi1wYWdlLWNvbnRhaW5lcid9PlxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHBhZ2UuY29tcG9uZW50cy5tYXAoKGNvbXBvbmVudCwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJlbmRlclRhYlBhZ2VDb21wb25lbnQoY29tcG9uZW50LCBwYWdlLmlkLCBwYWdlSW5kZXggKyBpbmRleCk7XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+O1xuICAgIH1cblxuICAgIGNvbnN0IGFwaSA9ICgpID0+IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGdldCBpZCgpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gcHJvcHMuY29uZmlnLmlkO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGdldENoaWxkcmVuOiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgbGV0IGNoaWxkcmVuID0gW107XG5cbiAgICAgICAgICAgICAgICBsZXQgcHJvcGVydGllcyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKGNvbXBvbmVudEhhbmRsZXMpO1xuICAgICAgICAgICAgICAgIGZvciAoY29uc3QgcHJvcGVydHkgb2YgcHJvcGVydGllcykge1xuICAgICAgICAgICAgICAgICAgICBsZXQgY29tcG9uZW50SGFuZGxlID0gY29tcG9uZW50SGFuZGxlc1twcm9wZXJ0eV07XG4gICAgICAgICAgICAgICAgICAgIGNoaWxkcmVuLnB1c2goY29tcG9uZW50SGFuZGxlKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCFVdGlscy5pc051bGwoY29tcG9uZW50SGFuZGxlLmFwaT8uZ2V0Q2hpbGRyZW4pKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IGNoaWxkIG9mIGNvbXBvbmVudEhhbmRsZS5hcGkuZ2V0Q2hpbGRyZW4oKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoaWxkcmVuLnB1c2goY2hpbGQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcmV0dXJuIGNoaWxkcmVuO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHNldCB2YWx1ZSh2YWx1ZSkge1xuICAgICAgICAgICAgICAgIHNldFRhYlZhbHVlKHZhbHVlKTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBnZXQgdmFsdWUoKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRhYlZhbHVlO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHNldFBhZ2VIYXNFcnJvcjogKHBhZ2VJZCwgaGFzRXJyb3IpID0+IHtcbiAgICAgICAgICAgICAgICBzZXRFcnJvcnMoey4uLmVycm9ycywgW3BhZ2VJZF06IGhhc0Vycm9yfSk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgY2xlYXJFcnJvcnM6ICgpID0+IHtcbiAgICAgICAgICAgICAgICBzZXRFcnJvcnMoe30pO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHJlZHJhdzogKCkgPT4ge1xuICAgICAgICAgICAgICAgIC8vIEZvcmNlIHJlLXJlbmRlclxuICAgICAgICAgICAgICAgIHNldFZpc2libGVUYWJQYWdlcyhudWxsKTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICByZWZyZXNoOiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgbGV0IHBhcnNlZENvbmZpZyA9IFV0aWxzLnBhcnNlQ29uZmlnKHByb3BzLmNvbmZpZywgcHJvcHMudmlld0lkKTtcbiAgICAgICAgICAgICAgICBpZiAoIVV0aWxzLmlzTnVsbChwcm9wcy5jb25maWcpICYmICFVdGlscy5pc051bGwocGFyc2VkQ29uZmlnLnZpc2libGUpKSB7XG4gICAgICAgICAgICAgICAgICAgIHNldFZpc2libGUoVXRpbHMuZXZhbHVhdGVCb29sZWFuRXhwcmVzc2lvbihwYXJzZWRDb25maWcudmlzaWJsZSwgcGFyc2VkQ29uZmlnLmlkKSk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgc2V0VmlzaWJsZSh0cnVlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgc2V0IHZpc2libGUodmlzaWJsZSkge1xuICAgICAgICAgICAgICAgIHNldFZpc2libGUodmlzaWJsZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH07XG4gICAgfTtcblxuICAgIHJldHVybiAoXG4gICAgICAgICFVdGlscy5pc051bGwodmlzaWJsZVRhYlBhZ2VzKSAmJiB2aXNpYmxlICYmXG4gICAgICAgIDxkaXYgc3R5bGU9e3tcbiAgICAgICAgICAgIHdpZHRoOiBwcm9wcy5jb25maWc/LmF0dHJpYnV0ZXM/LnN0eWxlPy53aWR0aCA/IHByb3BzLmNvbmZpZz8uYXR0cmlidXRlcz8uc3R5bGU/LndpZHRoIDogJzEwMCUnLFxuICAgICAgICAgICAgaGVpZ2h0OiBwcm9wcy5jb25maWc/LmF0dHJpYnV0ZXM/LnN0eWxlPy5oZWlnaHQgPyBwcm9wcy5jb25maWc/LmF0dHJpYnV0ZXM/LnN0eWxlPy5oZWlnaHQgOiAnMTAwJSdcbiAgICAgICAgfX0+XG4gICAgICAgICAgICA8QXBwQmFyIHBvc2l0aW9uPVwic3RhdGljXCIgY29sb3I9XCJkZWZhdWx0XCJcbiAgICAgICAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICd0cmFuc3BhcmVudCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBib3hTaGFkb3c6ICdub25lJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlckJvdHRvbTogJzFweCBzb2xpZCAjZTFlMWUxJ1xuICAgICAgICAgICAgICAgICAgICB9fT5cbiAgICAgICAgICAgICAgICA8VGFic1xuICAgICAgICAgICAgICAgICAgICB2YWx1ZT17dGFiVmFsdWV9XG4gICAgICAgICAgICAgICAgICAgIG9uQ2hhbmdlPXtoYW5kbGVUYWJDaGFuZ2V9XG4gICAgICAgICAgICAgICAgICAgIHZhcmlhbnQ9XCJzY3JvbGxhYmxlXCIgICAgICAgICAgICAgICAgLy8gZW5hYmxlcyBob3Jpem9udGFsIHNjcm9sbFxuICAgICAgICAgICAgICAgICAgICBzY3JvbGxCdXR0b25zPVwiYXV0b1wiICAgICAgICAgICAgICAgIC8vIHNob3dzIGFycm93cyB3aGVuIG5lZWRlZFxuICAgICAgICAgICAgICAgICAgICBhbGxvd1Njcm9sbEJ1dHRvbnNNb2JpbGUgICAgICAgICAgICAvLyBzaG93IGFycm93cyBvbiBtb2JpbGUgdG9vXG4gICAgICAgICAgICAgICAgICAgIHRleHRDb2xvcj1cInByaW1hcnlcIlxuICAgICAgICAgICAgICAgICAgICBpbmRpY2F0b3JDb2xvcj1cInByaW1hcnlcIlxuICAgICAgICAgICAgICAgICAgICBhcmlhLWxhYmVsPVwidGFic1wiXG4gICAgICAgICAgICAgICAgICAgIHN4PXt7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBvcHRpb25hbDogcmVkdWNlIGRlZmF1bHQgbWluIHdpZHRoIHNvIG1vcmUgdGFicyBmaXRcbiAgICAgICAgICAgICAgICAgICAgICAgICcmIC5NdWlUYWItcm9vdCc6IHttaW5XaWR0aDogMTIwfSxcbiAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIHt2aXNpYmxlVGFiUGFnZXMubWFwKChwYWdlLCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gT3B0aW9uYWwgcGVyLXRhYiBpY29uOiBgYXR0cmlidXRlcy5pY29uYCBpcyB0aGVcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIEljb24gY29tcG9uZW50J3MgaWQgKGUuZy4gXCJXT1JLXCIsIFwiVklFV1wiKS4gV2hlblxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gcHJlc2VudCwgcmVuZGVyIHRvIHRoZSBsZWZ0IG9mIHRoZSBsYWJlbC5cbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGljb25JZCA9IHBhZ2UuYXR0cmlidXRlc1snaWNvbiddO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8VGFiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGtleT17aW5kZXh9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsPXtwYWdlLmF0dHJpYnV0ZXNbJ2xhYmVsJ119XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGljb249e2ljb25JZCA/IDxJY29uIGlkPXtpY29uSWR9Lz4gOiB1bmRlZmluZWR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGljb25Qb3NpdGlvbj17aWNvbklkID8gJ3N0YXJ0JyA6IHVuZGVmaW5lZH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd3JhcHBlZCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gYWxsb3cgbXVsdGktbGluZSBsYWJlbFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7Li4uYTExeVByb3BzKGluZGV4KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3g9e3tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heFdpZHRoOiAyNDAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6ICcxMDAlJywgICAgICAgICAgICAgICAgIC8vIGNvbnN0cmFpbiBzbyB3cmFwcGluZyBjYW4gb2NjdXJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdoaXRlU3BhY2U6ICdub3JtYWwnLCAgICAgICAgICAgICAvLyBhbGxvdyB3cmFwXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3b3JkQnJlYWs6ICdicmVhay13b3JkJywgICAgICAgICAgLy8gYnJlYWsgbG9uZyB3b3Jkc1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dFRyYW5zZm9ybTogJ3VwcGVyY2FzZScsICAgICAgICAgICAgLy8ga2VlcCBvcmlnaW5hbCBjYXNpbmdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFwcGxpY2F0aW9uTWFuYWdlci5pc0Zvcm1NYXJrZXJzRW5hYmxlZCgpICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JzICE9PSBudWxsICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JzW3BhZ2UuaWRdID09PSB0cnVlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gJyNlZDUyNDknXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogdW5kZWZpbmVkLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgICA8L1RhYnM+XG4gICAgICAgICAgICA8L0FwcEJhcj5cbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPXtVdGlscy5tZXJnZVN0eWxlcyh7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAnMTAwJScsXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogJ2NhbGMoMTAwJSAtIDY0cHgpJ1xuICAgICAgICAgICAgICAgIH0sIHByb3BzLmNvbmZpZyl9PlxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICB2aXNpYmxlVGFiUGFnZXMubWFwKChwYWdlLCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiA8ZGl2IGtleT17aW5kZXh9IHN0eWxlPXt7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogcGFnZT8uYXR0cmlidXRlcz8uc3R5bGU/LmhlaWdodCA/IHBhZ2U/LmF0dHJpYnV0ZXM/LnN0eWxlPy5oZWlnaHQgOiAnMTAwJScsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IHRhYlZhbHVlID09PSBpbmRleCA/IG51bGwgOiAnbm9uZSdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFRhYlBhZ2VcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlPXt0YWJWYWx1ZX0gaW5kZXg9e2luZGV4fSBjb25maWc9e3BhZ2V9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3JlbmRlclBhZ2UocGFnZSwgaW5kZXgpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1RhYlBhZ2U+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+O1xuICAgICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgfVxuICAgICAgICA8L2Rpdj5cbiAgICApO1xufSk7XG5cbmV4cG9ydCBkZWZhdWx0IFRhYlBhbmVsO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQyxJQUFBQSxNQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFDRCxJQUFBQyxNQUFBLEdBQUFGLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBRSxPQUFBLEdBQUFILHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBRyxJQUFBLEdBQUFKLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBSSxLQUFBLEdBQUFMLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBSyxRQUFBLEdBQUFOLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBTSxRQUFBLEdBQUFQLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBTyxRQUFBLEdBQUFSLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBUSxtQkFBQSxHQUFBVCxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQVMsT0FBQSxHQUFBVCxPQUFBO0FBQ0EsSUFBQVUsS0FBQSxHQUFBWCxzQkFBQSxDQUFBQyxPQUFBO0FBQTBCLFNBQUFELHVCQUFBWSxDQUFBLFdBQUFBLENBQUEsSUFBQUEsQ0FBQSxDQUFBQyxVQUFBLEdBQUFELENBQUEsS0FBQUUsT0FBQSxFQUFBRixDQUFBO0FBQUEsU0FBQUcsU0FBQSxXQUFBQSxRQUFBLEdBQUFDLE1BQUEsQ0FBQUMsTUFBQSxHQUFBRCxNQUFBLENBQUFDLE1BQUEsQ0FBQUMsSUFBQSxlQUFBQyxDQUFBLGFBQUFQLENBQUEsTUFBQUEsQ0FBQSxHQUFBUSxTQUFBLENBQUFDLE1BQUEsRUFBQVQsQ0FBQSxVQUFBVSxDQUFBLEdB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
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agilemotion/oui-react-js",
3
- "version": "2.0.31",
3
+ "version": "2.0.32",
4
4
  "description": "AgileMotion React UI Component Library - A comprehensive collection of dashboard components, forms, media controls, and more",
5
5
  "license": "ISC",
6
6
  "author": "",