@kando-env/kando-ui 1.2.64-alpha.5 → 1.2.64-alpha.7

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.
@@ -440,12 +440,13 @@ var PointMarker = function PointMarker(props) {
440
440
 
441
441
  (0, _react.useEffect)(function () {
442
442
  var markerLocation = [point['latitude'], point['longitude']];
443
+ if (!point.eventsViewHovered) createManholePoint(markerLocation);
443
444
 
444
445
  if (markerLocation[0] !== null) {
445
- createManholePoint(markerLocation);
446
446
  if (point.part_of_monitored_path && !point.has_device) return;
447
447
 
448
448
  if (matchIconToPoint(point) !== null && (centeredEvent === null || centeredEvent !== null && pointIsObservation() || point.group.type === 'Groups::WastewaterTreatmentPlant')) {
449
+ if (point.eventsViewHovered) createManholePoint(markerLocation);
449
450
  createCustomIconPoint(markerLocation);
450
451
  }
451
452
 
@@ -488,4 +489,4 @@ var _default = connector( /*#__PURE__*/_react.default.memo(PointMarker, function
488
489
  }));
489
490
 
490
491
  exports.default = _default;
491
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9XaWRnZXRzL01hcC9wb2ludHMvUG9pbnRNYXJrZXIudHN4Il0sIm5hbWVzIjpbIm1hcFN0YXRlVG9Qcm9wcyIsInN0YXRlIiwiZXZlbnRzX2RhdGEiLCJQb2ludE1hcmtlciIsInByb3BzIiwiTCIsIm1hcCIsInBvaW50IiwiZm9jdXNlZEV2ZW50IiwiaG92ZXJlZEV2ZW50IiwiZGlzcGF0Y2giLCJjZW50ZXJlZEV2ZW50Iiwic2VsZWN0ZWRCYWNrZ3JvdW5kIiwiaWNvbiIsImljb25VcmwiLCJyZWRQaW5SZWRTaGFkb3ciLCJpY29uU2l6ZSIsImljb25BbmNob3IiLCJwb3B1cEFuY2hvciIsImJlbG9uZ3NUb1NvdXJjZUJhY2tncm91bmQiLCJ3aGl0ZVBpblJlZFNoYWRvdyIsInN0YW5kYXJkQmFja2dyb3VuZCIsInNlY29uZGFyeSIsInRoaXJkIiwid2hpdGVQaW5CbGFja1NoYWRvdyIsImNvbWJpbmVkRmFjdG9yeUljb24iLCJ5ZWxsb3dDaXJjbGVVUkwiLCJwbGFudEljb25VUkwiLCJjb21iaW5lZFB1bXBTdGF0aW9uSWNvbiIsImdyZWVuQ2lyY2xlVVJMIiwicHVtcFN0YXRpb25JY29uVVJMIiwiY29tYmluZWRDb2xsZWN0b3JzSWNvbiIsImNvbGxlY3Rvckljb24iLCJjb21iaW5lZFdXVFBJY29uIiwiYnJpZ2h0Qmx1ZUNpcmNsZVVSTCIsIldXVFBJY29uVVJMIiwibWFya2VyQmVsb25nc1RvU2VsZWN0ZWRTb3VyY2UiLCJzb3VyY2UiLCJzb3VyY2VzIiwiZmlsdGVyIiwicG9pbnRfaWQiLCJpZCIsInNlbGVjdGVkX3NvdXJjZSIsIm1hcmtlckJlbG9uZ3NUb1NvdXJjZSIsImlzQ29sbGVjdG9yRm9jdXNlZCIsIm9ic2VydmF0aW9ucyIsImxlbmd0aCIsIm1hdGNoSWNvblRvUG9pbnQiLCJncm91cCIsInR5cGUiLCJ1bnNoaWZ0Iiwid2F0ZXJJY29uTm9CYWNrZ3JvdW5kIiwiY3JlYXRlTWFuaG9sZVBvaW50IiwibWFya2VyTG9jYXRpb24iLCJwb2ludEljb24iLCJ3aGl0ZVBvaW50IiwibWFuaG9sZUljb24iLCJtYXJrZXIiLCJyaXNlT25Ib3ZlciIsImFkZFRvIiwiYmluZFRvb2x0aXAiLCJuYW1lIiwiY3JlYXRlQ3VzdG9tSWNvblBvaW50IiwiZm9yRWFjaCIsInBvaW50Q3VzdG9tSWNvbiIsInJlbGF0ZWRFdmVudHNBbW91bnQiLCJkaXZJY29uIiwiY2xhc3NOYW1lIiwiaHRtbCIsImNyZWF0ZVNhbXBsaW5nSWNvblBvaW50Iiwic2Vjb25kYXJ5SWNvbiIsInNhbXBsaW5nSWNvbiIsImJsdWVDaXJjbGVVUkwiLCJzYW1wbGluZ0ljb25VUkwiLCJjcmVhdGVPYnNlcnZhdGlvbkljb25Qb2ludCIsIm9ic2VydmF0aW9uSWNvbiIsInBpbmtDaXJjbGVVUkwiLCJvYnNlcnZhdGlvbkljb25VUkwiLCJwb3B1cENvbnRlbnQiLCJvYnMiLCJHcmFwaEljb24iLCJpMThuIiwidCIsInNldmVyaXR5IiwicG9pbnRJc09ic2VydmF0aW9uIiwicG9pbnRCZWxvbmdzVG9FdmVudCIsImJpbmRQb3B1cFRvUG9pbnQiLCJsYXllcnMiLCJfbGF5ZXJzIiwicHJvcGVydHkiLCJpbmNsdWRlcyIsImthbmRvX29iamVjdCIsImthbmRvX29iamVjdF9pZCIsImJpbmRQb3B1cCIsIm1pbldpZHRoIiwib24iLCJlIiwiZmlyc3RTZWVuIiwiZG9jdW1lbnQiLCJjcmVhdGVFbGVtZW50IiwibGFzdFNlZW4iLCJzZWN0b3IiLCJSZWFjdERPTSIsInJlbmRlciIsInN0YXJ0X3RpbWUiLCJ0aW1lX3pvbmUiLCJsYXN0X3NlZW5fdGltZSIsInNlY3Rvcl9uYW1lIiwic2VjdG9yX2ljb25fbmFtZSIsInNldFRpbWVvdXQiLCJhcHBlbmQiLCJhdHRhY2hDbGlja0V2ZW50Iiwic2VsZWN0b3IiLCJvYnNlcnZhdGlvbiIsImJvZHkiLCJvcGVuUG9wdXAiLCJwYXJ0X29mX21vbml0b3JlZF9wYXRoIiwiaGFzX2RldmljZSIsImhhc1ByaW1hcnlJY29uIiwic2FtcGxpbmdzIiwiY2xlYW51cCIsImNvbm5lY3RvciIsIlJlYWN0IiwibWVtbyIsInByZXZQcm9wcyIsIm5leHRQcm9wcyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQVdBOzs7O0FBRUE7O0FBQ0E7Ozs7OztBQUdBOztBQUNBOztBQUNBOztBQUlBOztBQUtBOztBQUNBOzs7Ozs7QUFFQSxTQUFTQSxlQUFULENBQXlCQyxLQUF6QixFQUEyQztBQUN6QyxNQUFRQyxXQUFSLEdBQXdCRCxLQUF4QixDQUFRQyxXQUFSO0FBRUEsU0FBTztBQUNMQSxJQUFBQSxXQUFXLEVBQVhBO0FBREssR0FBUDtBQUdEOztBQVFELElBQU1DLFdBQTRCLEdBQUcsU0FBL0JBLFdBQStCLENBQUNDLEtBQUQsRUFBVztBQUM5QyxNQUFRQyxDQUFSLEdBQXVDRCxLQUF2QyxDQUFRQyxDQUFSO0FBQUEsTUFBV0MsR0FBWCxHQUF1Q0YsS0FBdkMsQ0FBV0UsR0FBWDtBQUFBLE1BQWdCQyxLQUFoQixHQUF1Q0gsS0FBdkMsQ0FBZ0JHLEtBQWhCO0FBQUEsTUFBdUJMLFdBQXZCLEdBQXVDRSxLQUF2QyxDQUF1QkYsV0FBdkI7QUFDQSxNQUFRTSxZQUFSLEdBQXVDTixXQUF2QyxDQUFRTSxZQUFSO0FBQUEsTUFBc0JDLFlBQXRCLEdBQXVDUCxXQUF2QyxDQUFzQk8sWUFBdEI7QUFDQSxNQUFNQyxRQUFRLEdBQUcsOEJBQWpCO0FBRUEsTUFBTUMsYUFBYSxHQUFHLG9CQUNwQjtBQUFBLFdBQU1ILFlBQVksSUFBSUMsWUFBdEI7QUFBQSxHQURvQixFQUVwQixDQUFDRCxZQUFELEVBQWVDLFlBQWYsQ0FGb0IsQ0FBdEIsQ0FMOEMsQ0FTOUM7QUFDQTs7QUFDQSxNQUFNRyxrQkFBa0IsR0FBRyxTQUFyQkEsa0JBQXFCLEdBQU07QUFDL0IsV0FBT1AsQ0FBQyxDQUFDUSxJQUFGLENBQU87QUFDWkMsTUFBQUEsT0FBTyxFQUFFQyx3QkFERztBQUVaQyxNQUFBQSxRQUFRLEVBQUUsQ0FBQyxFQUFELEVBQUssRUFBTCxDQUZFO0FBR1pDLE1BQUFBLFVBQVUsRUFBRSxDQUFDLEVBQUQsRUFBSyxFQUFMLENBSEE7QUFJWkMsTUFBQUEsV0FBVyxFQUFFLENBQUMsQ0FBRCxFQUFJLENBQUMsRUFBTDtBQUpELEtBQVAsQ0FBUDtBQU1ELEdBUEQ7O0FBU0EsTUFBTUMseUJBQXlCLEdBQUcsU0FBNUJBLHlCQUE0QixHQUFNO0FBQ3RDLFdBQU9kLENBQUMsQ0FBQ1EsSUFBRixDQUFPO0FBQ1pDLE1BQUFBLE9BQU8sRUFBRU0sMEJBREc7QUFFWkosTUFBQUEsUUFBUSxFQUFFLENBQUMsRUFBRCxFQUFLLEVBQUwsQ0FGRTtBQUdaQyxNQUFBQSxVQUFVLEVBQUUsQ0FBQyxFQUFELEVBQUssRUFBTCxDQUhBO0FBSVpDLE1BQUFBLFdBQVcsRUFBRSxDQUFDLENBQUQsRUFBSSxDQUFDLEVBQUw7QUFKRCxLQUFQLENBQVA7QUFNRCxHQVBEOztBQVNBLE1BQU1HLGtCQUFrQixHQUFHLFNBQXJCQSxrQkFBcUIsR0FHdEI7QUFBQSxRQUZIQyxTQUVHLHVFQUZrQixLQUVsQjtBQUFBLFFBREhDLEtBQ0csdUVBRGMsS0FDZDtBQUNILFdBQU9sQixDQUFDLENBQUNRLElBQUYsQ0FBTztBQUNaQyxNQUFBQSxPQUFPLEVBQUVVLDRCQURHO0FBRVpSLE1BQUFBLFFBQVEsRUFBRU0sU0FBUyxHQUFHLENBQUMsRUFBRCxFQUFLLEVBQUwsQ0FBSCxHQUFjLENBQUMsRUFBRCxFQUFLLEVBQUwsQ0FGckI7QUFHWkwsTUFBQUEsVUFBVSxFQUNSSyxTQUFTLElBQUlDLEtBQWIsR0FBcUIsQ0FBQyxDQUFDLENBQUYsRUFBSyxFQUFMLENBQXJCLEdBQWdDRCxTQUFTLEdBQUcsQ0FBQyxDQUFDLENBQUYsRUFBSyxFQUFMLENBQUgsR0FBYyxDQUFDLEVBQUQsRUFBSyxFQUFMLENBSjdDO0FBS1pKLE1BQUFBLFdBQVcsRUFBRSxDQUFDLENBQUQsRUFBSSxDQUFDLEVBQUw7QUFMRCxLQUFQLENBQVA7QUFPRCxHQVhEOztBQWFBLE1BQU1PLG1CQUFtQixHQUFHLENBQzFCcEIsQ0FBQyxDQUFDUSxJQUFGLENBQU87QUFDTEMsSUFBQUEsT0FBTyxFQUFFWSxxQkFESjtBQUVMVixJQUFBQSxRQUFRLEVBQUUsQ0FBQyxFQUFELEVBQUssRUFBTCxDQUZMO0FBR0xDLElBQUFBLFVBQVUsRUFBRSxDQUFDLElBQUQsRUFBTyxJQUFQLENBSFA7QUFJTEMsSUFBQUEsV0FBVyxFQUFFLENBQUMsQ0FBRCxFQUFJLENBQUMsRUFBTDtBQUpSLEdBQVAsQ0FEMEIsRUFPMUJiLENBQUMsQ0FBQ1EsSUFBRixDQUFPO0FBQ0xDLElBQUFBLE9BQU8sRUFBRWEsb0JBREo7QUFFTFgsSUFBQUEsUUFBUSxFQUFFLENBQUMsRUFBRCxFQUFLLEVBQUwsQ0FGTDtBQUdMQyxJQUFBQSxVQUFVLEVBQUUsQ0FBQyxDQUFELEVBQUksRUFBSixDQUhQO0FBSUxDLElBQUFBLFdBQVcsRUFBRSxDQUFDLENBQUQsRUFBSSxDQUFDLEVBQUw7QUFKUixHQUFQLENBUDBCLENBQTVCO0FBZUEsTUFBTVUsdUJBQXVCLEdBQUcsQ0FDOUJ2QixDQUFDLENBQUNRLElBQUYsQ0FBTztBQUNMQyxJQUFBQSxPQUFPLEVBQUVlLG9CQURKO0FBRUxiLElBQUFBLFFBQVEsRUFBRSxDQUFDLEVBQUQsRUFBSyxFQUFMLENBRkw7QUFHTEMsSUFBQUEsVUFBVSxFQUFFLENBQUMsSUFBRCxFQUFPLElBQVAsQ0FIUDtBQUlMQyxJQUFBQSxXQUFXLEVBQUUsQ0FBQyxDQUFELEVBQUksQ0FBQyxFQUFMO0FBSlIsR0FBUCxDQUQ4QixFQU85QmIsQ0FBQyxDQUFDUSxJQUFGLENBQU87QUFDTEMsSUFBQUEsT0FBTyxFQUFFZ0Isd0JBREo7QUFFTGQsSUFBQUEsUUFBUSxFQUFFLENBQUMsRUFBRCxFQUFLLEVBQUwsQ0FGTDtBQUdMQyxJQUFBQSxVQUFVLEVBQUUsQ0FBQyxDQUFELEVBQUksRUFBSixDQUhQO0FBSUxDLElBQUFBLFdBQVcsRUFBRSxDQUFDLENBQUQsRUFBSSxDQUFDLEVBQUw7QUFKUixHQUFQLENBUDhCLENBQWhDO0FBZUEsTUFBTWEsc0JBQXNCLEdBQUcsQ0FDN0IxQixDQUFDLENBQUNRLElBQUYsQ0FBTztBQUNMQyxJQUFBQSxPQUFPLEVBQUVrQixpQkFESjtBQUVMaEIsSUFBQUEsUUFBUSxFQUFFLENBQUMsRUFBRCxFQUFLLEVBQUwsQ0FGTDtBQUlMQyxJQUFBQSxVQUFVLEVBQUUsQ0FBQyxFQUFELEVBQUssRUFBTCxDQUpQO0FBS0xDLElBQUFBLFdBQVcsRUFBRSxDQUFDLENBQUQsRUFBSSxDQUFDLEVBQUw7QUFMUixHQUFQLENBRDZCLENBQS9CO0FBVUEsTUFBTWUsZ0JBQWdCLEdBQUcsQ0FDdkI1QixDQUFDLENBQUNRLElBQUYsQ0FBTztBQUNMQyxJQUFBQSxPQUFPLEVBQUVvQix5QkFESjtBQUVMbEIsSUFBQUEsUUFBUSxFQUFFLENBQUMsRUFBRCxFQUFLLEVBQUwsQ0FGTDtBQUdMQyxJQUFBQSxVQUFVLEVBQUUsQ0FBQyxJQUFELEVBQU8sSUFBUCxDQUhQO0FBSUxDLElBQUFBLFdBQVcsRUFBRSxDQUFDLENBQUQsRUFBSSxDQUFDLEVBQUw7QUFKUixHQUFQLENBRHVCLEVBT3ZCYixDQUFDLENBQUNRLElBQUYsQ0FBTztBQUNMQyxJQUFBQSxPQUFPLEVBQUVxQixpQkFESjtBQUVMbkIsSUFBQUEsUUFBUSxFQUFFLENBQUMsRUFBRCxFQUFLLEVBQUwsQ0FGTDtBQUdMQyxJQUFBQSxVQUFVLEVBQUUsQ0FBQyxDQUFELEVBQUksRUFBSixDQUhQO0FBSUxDLElBQUFBLFdBQVcsRUFBRSxDQUFDLENBQUQsRUFBSSxDQUFDLEVBQUw7QUFKUixHQUFQLENBUHVCLENBQXpCOztBQWVBLE1BQU1rQiw2QkFBNkIsR0FBRyxTQUFoQ0EsNkJBQWdDLEdBQU07QUFDMUMsUUFBSUMsTUFBSjs7QUFFQSxRQUFJMUIsYUFBYSxLQUFLLElBQXRCLEVBQTRCO0FBQzFCMEIsTUFBQUEsTUFBTSxHQUFHMUIsYUFBYSxDQUFDMkIsT0FBZCxDQUFzQkMsTUFBdEIsQ0FDUCxVQUFDRixNQUFEO0FBQUEsZUFBWUEsTUFBTSxDQUFDRyxRQUFQLEtBQW9CakMsS0FBSyxDQUFDa0MsRUFBdEM7QUFBQSxPQURPLEVBRVAsQ0FGTyxDQUFUO0FBR0Q7O0FBRUQsV0FDRTlCLGFBQWEsS0FBSyxJQUFsQixJQUNBMEIsTUFEQSxJQUVBMUIsYUFBYSxDQUFDK0IsZUFBZCxLQUFrQ0wsTUFBTSxDQUFDRyxRQUgzQztBQUtELEdBZEQ7O0FBZ0JBLE1BQU1HLHFCQUFxQixHQUFHLFNBQXhCQSxxQkFBd0IsR0FBTTtBQUNsQyxXQUNFaEMsYUFBYSxLQUFLLElBQWxCLElBQ0FBLGFBQWEsQ0FBQzJCLE9BQWQsQ0FBc0JDLE1BQXRCLENBQTZCLFVBQUNGLE1BQUQ7QUFBQSxhQUFZQSxNQUFNLENBQUNHLFFBQVAsS0FBb0JqQyxLQUFLLENBQUNrQyxFQUF0QztBQUFBLEtBQTdCLEVBQXVFLENBQXZFLENBRkY7QUFJRCxHQUxEOztBQU9BLE1BQU1HLGtCQUFrQixHQUFHLFNBQXJCQSxrQkFBcUIsQ0FBQ3JDLEtBQUQsRUFBbUI7QUFBQTs7QUFDNUMsV0FDRSxDQUFBSSxhQUFhLFNBQWIsSUFBQUEsYUFBYSxXQUFiLHFDQUFBQSxhQUFhLENBQUVrQyxZQUFmLGdGQUE2QkMsTUFBN0IsTUFBd0MsQ0FBeEMsSUFDQXZDLEtBQUssQ0FBQ2tDLEVBQU4sS0FBYTlCLGFBQWEsQ0FBQ2tDLFlBQWQsQ0FBMkIsQ0FBM0IsRUFBOEJMLFFBRjdDO0FBSUQsR0FMRDs7QUFPQSxNQUFNTyxnQkFBZ0IsR0FBRyxTQUFuQkEsZ0JBQW1CLENBQUN4QyxLQUFELEVBQW1CO0FBQzFDLFlBQVFBLEtBQUssQ0FBQ3lDLEtBQU4sQ0FBWUMsSUFBcEI7QUFDRSxXQUFLLGlCQUFMO0FBQ0UsWUFBSXhCLG1CQUFtQixDQUFDcUIsTUFBcEIsS0FBK0IsQ0FBbkMsRUFBc0M7QUFDcEMsY0FBSVYsNkJBQTZCLEVBQWpDLEVBQXFDO0FBQ25DWCxZQUFBQSxtQkFBbUIsQ0FBQ3lCLE9BQXBCLENBQTRCdEMsa0JBQWtCLEVBQTlDO0FBQ0QsV0FGRCxNQUVPLElBQUkrQixxQkFBcUIsRUFBekIsRUFBNkI7QUFDbENsQixZQUFBQSxtQkFBbUIsQ0FBQ3lCLE9BQXBCLENBQTRCL0IseUJBQXlCLEVBQXJEO0FBQ0QsV0FGTSxNQUVBO0FBQ0xNLFlBQUFBLG1CQUFtQixDQUFDeUIsT0FBcEIsQ0FBNEI3QixrQkFBa0IsRUFBOUM7QUFDRDtBQUNGOztBQUVELGVBQU9JLG1CQUFQOztBQUNGLFdBQUsscUJBQUw7QUFDRSxZQUFJRyx1QkFBdUIsQ0FBQ2tCLE1BQXhCLEtBQW1DLENBQXZDLEVBQTBDO0FBQ3hDLGNBQUlWLDZCQUE2QixFQUFqQyxFQUFxQztBQUNuQ1IsWUFBQUEsdUJBQXVCLENBQUNzQixPQUF4QixDQUFnQ3RDLGtCQUFrQixFQUFsRDtBQUNELFdBRkQsTUFFTyxJQUFJK0IscUJBQXFCLEVBQXpCLEVBQTZCO0FBQ2xDZixZQUFBQSx1QkFBdUIsQ0FBQ3NCLE9BQXhCLENBQWdDL0IseUJBQXlCLEVBQXpEO0FBQ0QsV0FGTSxNQUVBO0FBQ0xTLFlBQUFBLHVCQUF1QixDQUFDc0IsT0FBeEIsQ0FBZ0M3QixrQkFBa0IsRUFBbEQ7QUFDRDtBQUNGOztBQUVELGVBQU9PLHVCQUFQOztBQUNGLFdBQUssa0NBQUw7QUFDRSxZQUFJSyxnQkFBZ0IsQ0FBQ2EsTUFBakIsS0FBNEIsQ0FBaEMsRUFBbUM7QUFDakMsY0FBSVYsNkJBQTZCLEVBQWpDLEVBQXFDO0FBQ25DSCxZQUFBQSxnQkFBZ0IsQ0FBQ2lCLE9BQWpCLENBQXlCdEMsa0JBQWtCLEVBQTNDO0FBQ0QsV0FGRCxNQUVPLElBQUkrQixxQkFBcUIsRUFBekIsRUFBNkI7QUFDbENWLFlBQUFBLGdCQUFnQixDQUFDaUIsT0FBakIsQ0FBeUIvQix5QkFBeUIsRUFBbEQ7QUFDRCxXQUZNLE1BRUE7QUFDTGMsWUFBQUEsZ0JBQWdCLENBQUNpQixPQUFqQixDQUF5QjdCLGtCQUFrQixFQUEzQztBQUNEO0FBQ0Y7O0FBRUQsZUFBT1ksZ0JBQVA7O0FBRUYsV0FBSyxvQkFBTDtBQUNFLFlBQUlXLGtCQUFrQixDQUFDckMsS0FBRCxDQUF0QixFQUErQjtBQUM3QixpQkFBTyxDQUNMRixDQUFDLENBQUNRLElBQUYsQ0FBTztBQUNMQyxZQUFBQSxPQUFPLEVBQUVDLHdCQURKO0FBRUxDLFlBQUFBLFFBQVEsRUFBRSxDQUFDLEVBQUQsRUFBSyxFQUFMLENBRkw7QUFHTEMsWUFBQUEsVUFBVSxFQUFFLENBQUMsRUFBRCxFQUFLLEVBQUw7QUFIUCxXQUFQLENBREssRUFPTFosQ0FBQyxDQUFDUSxJQUFGLENBQU87QUFDTEMsWUFBQUEsT0FBTyxFQUFFcUMsMEJBREo7QUFFTG5DLFlBQUFBLFFBQVEsRUFBRSxDQUFDLEVBQUQsRUFBSyxFQUFMLENBRkw7QUFJTEMsWUFBQUEsVUFBVSxFQUFFLENBQUMsRUFBRCxFQUFLLEVBQUwsQ0FKUDtBQUtMQyxZQUFBQSxXQUFXLEVBQUUsQ0FBQyxDQUFELEVBQUksQ0FBQyxFQUFMO0FBTFIsV0FBUCxDQVBLLENBQVA7QUFlRDs7QUFFRCxlQUFPYSxzQkFBUDs7QUFFRjtBQUNFLGVBQU8sSUFBUDtBQTVESjtBQThERCxHQS9ERDs7QUFpRUEsTUFBTXFCLGtCQUFrQixHQUFHLFNBQXJCQSxrQkFBcUIsQ0FBQ0MsY0FBRCxFQUE0QjtBQUNyRCxRQUFJQyxTQUFTLEdBQUdqRCxDQUFDLENBQUNRLElBQUYsQ0FBTztBQUNyQkMsTUFBQUEsT0FBTyxFQUFFeUMsbUJBRFk7QUFFckJ2QyxNQUFBQSxRQUFRLEVBQUUsQ0FBQyxDQUFELEVBQUksQ0FBSixDQUZXO0FBR3JCQyxNQUFBQSxVQUFVLEVBQUUsQ0FBQyxHQUFELEVBQU0sR0FBTjtBQUhTLEtBQVAsQ0FBaEI7QUFLQSxRQUFJdUMsV0FBZ0IsR0FBR25ELENBQUMsQ0FBQ29ELE1BQUYsQ0FBU0osY0FBVCxFQUF5QjtBQUM5Q3hDLE1BQUFBLElBQUksRUFBRXlDLFNBRHdDO0FBRTlDSSxNQUFBQSxXQUFXLEVBQUU7QUFGaUMsS0FBekIsRUFHcEJDLEtBSG9CLENBR2RyRCxHQUhjLENBQXZCO0FBSUFrRCxJQUFBQSxXQUFXLENBQUNJLFdBQVosV0FBMkJyRCxLQUFLLENBQUN5QyxLQUFOLENBQVlhLElBQXZDLGVBQWdEdEQsS0FBSyxDQUFDa0MsRUFBdEQ7QUFDQWUsSUFBQUEsV0FBVyxDQUFDLGlCQUFELENBQVgsR0FBaUNqRCxLQUFLLENBQUNrQyxFQUF2QztBQUNBZSxJQUFBQSxXQUFXLENBQUMsY0FBRCxDQUFYLEdBQThCLE9BQTlCO0FBQ0QsR0FiRDs7QUFlQSxNQUFNTSxxQkFBcUIsR0FBRyxTQUF4QkEscUJBQXdCLENBQUNULGNBQUQsRUFBNEI7QUFDeEQ7QUFDQU4sSUFBQUEsZ0JBQWdCLENBQUN4QyxLQUFELENBQWhCLEtBQTRCLElBQTVCLElBQ0U7QUFDQXdDLElBQUFBLGdCQUFnQixDQUFDeEMsS0FBRCxDQUFoQixDQUF3QndELE9BQXhCLENBQWdDLFVBQUNsRCxJQUFELEVBQWU7QUFDN0MsVUFBSW1ELGVBQW9CLEdBQUczRCxDQUFDLENBQUNvRCxNQUFGLENBQVNKLGNBQVQsRUFBeUI7QUFDbER4QyxRQUFBQSxJQUFJLEVBQUVBLElBRDRDO0FBRWxENkMsUUFBQUEsV0FBVyxFQUFFO0FBRnFDLE9BQXpCLEVBR3hCQyxLQUh3QixDQUdsQnJELEdBSGtCLENBQTNCO0FBSUEwRCxNQUFBQSxlQUFlLENBQUNKLFdBQWhCLFdBQStCckQsS0FBSyxDQUFDeUMsS0FBTixDQUFZYSxJQUEzQyxlQUFvRHRELEtBQUssQ0FBQ2tDLEVBQTFEO0FBQ0F1QixNQUFBQSxlQUFlLENBQUMsaUJBQUQsQ0FBZixHQUFxQ3pELEtBQUssQ0FBQ2tDLEVBQTNDO0FBQ0F1QixNQUFBQSxlQUFlLENBQUMsY0FBRCxDQUFmLEdBQWtDLE9BQWxDO0FBQ0QsS0FSRCxDQUZGOztBQVlBLFFBQUl6RCxLQUFLLENBQUMwRCxtQkFBVixFQUErQjtBQUM3QjtBQUNBLFVBQUlELGVBQWUsR0FBRzNELENBQUMsQ0FBQ29ELE1BQUYsQ0FBU0osY0FBVCxFQUF5QjtBQUM3Q3hDLFFBQUFBLElBQUksRUFBRVIsQ0FBQyxDQUFDNkQsT0FBRixDQUFVO0FBQ2RDLFVBQUFBLFNBQVMsaUNBQ1A1RCxLQUFLLENBQUMwRCxtQkFBTixHQUE0QixDQUE1QixHQUFnQyxhQUFoQyxHQUFnRCxFQUR6QyxDQURLO0FBSWRHLFVBQUFBLElBQUksWUFBSzdELEtBQUssQ0FBQzBELG1CQUFYLENBSlU7QUFLZGhELFVBQUFBLFVBQVUsRUFBRSxDQUFDLENBQUMsQ0FBRixFQUFLLEVBQUw7QUFMRSxTQUFWLENBRHVDO0FBUTdDeUMsUUFBQUEsV0FBVyxFQUFFO0FBUmdDLE9BQXpCLEVBU25CQyxLQVRtQixDQVNickQsR0FUYSxDQUF0QjtBQVdBMEQsTUFBQUEsZUFBZSxDQUFDLGlCQUFELENBQWYsR0FBcUN6RCxLQUFLLENBQUNrQyxFQUEzQztBQUNBdUIsTUFBQUEsZUFBZSxDQUFDLGNBQUQsQ0FBZixHQUFrQyxZQUFsQztBQUNEO0FBQ0YsR0E5QkQ7O0FBZ0NBLE1BQU1LLHVCQUF1QixHQUFHLFNBQTFCQSx1QkFBMEIsQ0FDOUJoQixjQUQ4QixFQUU5QmlCLGFBRjhCLEVBRzNCO0FBQ0g7QUFDQTtBQUNBLFFBQUlDLFlBQVksR0FBRyxDQUNqQmxFLENBQUMsQ0FBQ1EsSUFBRixDQUFPO0FBQ0xDLE1BQUFBLE9BQU8sRUFBRTBELG1CQURKO0FBRUx4RCxNQUFBQSxRQUFRLEVBQUVzRCxhQUFhLEdBQUcsQ0FBQyxFQUFELEVBQUssRUFBTCxDQUFILEdBQWMsQ0FBQyxFQUFELEVBQUssRUFBTCxDQUZoQztBQUdMckQsTUFBQUEsVUFBVSxFQUFFcUQsYUFBYSxHQUFHLENBQUMsQ0FBQyxDQUFGLEVBQUssRUFBTCxDQUFILEdBQWMsQ0FBQyxJQUFELEVBQU8sSUFBUCxDQUhsQztBQUlMcEQsTUFBQUEsV0FBVyxFQUFFLENBQUMsQ0FBRCxFQUFJLENBQUMsRUFBTDtBQUpSLEtBQVAsQ0FEaUIsRUFPakJiLENBQUMsQ0FBQ1EsSUFBRixDQUFPO0FBQ0xDLE1BQUFBLE9BQU8sRUFBRTJELHFCQURKO0FBRUx6RCxNQUFBQSxRQUFRLEVBQUVzRCxhQUFhLEdBQUcsQ0FBQyxDQUFELEVBQUksQ0FBSixDQUFILEdBQVksQ0FBQyxFQUFELEVBQUssRUFBTCxDQUY5QjtBQUdMckQsTUFBQUEsVUFBVSxFQUFFcUQsYUFBYSxHQUFHLENBQUMsQ0FBQyxDQUFGLEVBQUssRUFBTCxDQUFILEdBQWMsQ0FBQyxDQUFELEVBQUksRUFBSixDQUhsQztBQUlMcEQsTUFBQUEsV0FBVyxFQUFFLENBQUMsQ0FBRCxFQUFJLENBQUMsRUFBTDtBQUpSLEtBQVAsQ0FQaUIsQ0FBbkI7O0FBZUEsUUFBSWtCLDZCQUE2QixNQUFNLENBQUNrQyxhQUF4QyxFQUF1RDtBQUNyREMsTUFBQUEsWUFBWSxDQUFDckIsT0FBYixDQUFxQnRDLGtCQUFrQixFQUF2QztBQUNELEtBRkQsTUFFTyxJQUFJK0IscUJBQXFCLE1BQU0sQ0FBQzJCLGFBQWhDLEVBQStDO0FBQ3BEQyxNQUFBQSxZQUFZLENBQUNyQixPQUFiLENBQXFCL0IseUJBQXlCLEVBQTlDO0FBQ0QsS0FGTSxNQUVBO0FBQ0xvRCxNQUFBQSxZQUFZLENBQUNyQixPQUFiLENBQXFCN0Isa0JBQWtCLENBQUNpRCxhQUFELEVBQWdCLElBQWhCLENBQXZDO0FBQ0Q7O0FBRURDLElBQUFBLFlBQVksQ0FBQ1IsT0FBYixDQUFxQixVQUFDbEQsSUFBRCxFQUFVO0FBQzdCLFVBQUltRCxlQUFvQixHQUFHM0QsQ0FBQyxDQUFDb0QsTUFBRixDQUFTSixjQUFULEVBQXlCO0FBQ2xEeEMsUUFBQUEsSUFBSSxFQUFFQSxJQUQ0QztBQUVsRDZDLFFBQUFBLFdBQVcsRUFBRTtBQUZxQyxPQUF6QixFQUd4QkMsS0FId0IsQ0FHbEJyRCxHQUhrQixDQUEzQjtBQUlBMEQsTUFBQUEsZUFBZSxDQUFDSixXQUFoQixXQUErQnJELEtBQUssQ0FBQ3lDLEtBQU4sQ0FBWWEsSUFBM0MsZUFBb0R0RCxLQUFLLENBQUNrQyxFQUExRDtBQUNBdUIsTUFBQUEsZUFBZSxDQUFDLGlCQUFELENBQWYsR0FBcUN6RCxLQUFLLENBQUNrQyxFQUEzQztBQUNBdUIsTUFBQUEsZUFBZSxDQUFDLGNBQUQsQ0FBZixHQUFrQyxVQUFsQztBQUNELEtBUkQ7QUFTRCxHQXRDRDs7QUF3Q0EsTUFBTVUsMEJBQTBCLEdBQUcsU0FBN0JBLDBCQUE2QixDQUNqQ3JCLGNBRGlDLEVBRWpDaUIsYUFGaUMsRUFHOUI7QUFDSDtBQUNBO0FBQ0EsUUFBSUssZUFBZSxHQUFHLENBQ3BCdEUsQ0FBQyxDQUFDUSxJQUFGLENBQU87QUFDTEMsTUFBQUEsT0FBTyxFQUFFOEQsbUJBREo7QUFFTDVELE1BQUFBLFFBQVEsRUFBRXNELGFBQWEsR0FBRyxDQUFDLEVBQUQsRUFBSyxFQUFMLENBQUgsR0FBYyxDQUFDLEVBQUQsRUFBSyxFQUFMLENBRmhDO0FBR0xyRCxNQUFBQSxVQUFVLEVBQUVxRCxhQUFhLEdBQUcsQ0FBQyxDQUFDLENBQUYsRUFBSyxFQUFMLENBQUgsR0FBYyxDQUFDLElBQUQsRUFBTyxJQUFQLENBSGxDO0FBSUxwRCxNQUFBQSxXQUFXLEVBQUUsQ0FBQyxDQUFELEVBQUksQ0FBQyxFQUFMO0FBSlIsS0FBUCxDQURvQixFQU9wQmIsQ0FBQyxDQUFDUSxJQUFGLENBQU87QUFDTEMsTUFBQUEsT0FBTyxFQUFFK0Qsd0JBREo7QUFFTDdELE1BQUFBLFFBQVEsRUFBRXNELGFBQWEsR0FBRyxDQUFDLENBQUQsRUFBSSxDQUFKLENBQUgsR0FBWSxDQUFDLEVBQUQsRUFBSyxFQUFMLENBRjlCO0FBR0xyRCxNQUFBQSxVQUFVLEVBQUVxRCxhQUFhLEdBQUcsQ0FBQyxDQUFDLENBQUYsRUFBSyxFQUFMLENBQUgsR0FBYyxDQUFDLENBQUQsRUFBSSxFQUFKLENBSGxDO0FBSUxwRCxNQUFBQSxXQUFXLEVBQUUsQ0FBQyxDQUFELEVBQUksQ0FBQyxFQUFMO0FBSlIsS0FBUCxDQVBvQixDQUF0Qjs7QUFlQSxRQUFJa0IsNkJBQTZCLE1BQU0sQ0FBQ2tDLGFBQXhDLEVBQXVEO0FBQ3JESyxNQUFBQSxlQUFlLENBQUN6QixPQUFoQixDQUF3QnRDLGtCQUFrQixFQUExQztBQUNELEtBRkQsTUFFTyxJQUFJK0IscUJBQXFCLE1BQU0sQ0FBQzJCLGFBQWhDLEVBQStDO0FBQ3BESyxNQUFBQSxlQUFlLENBQUN6QixPQUFoQixDQUF3Qi9CLHlCQUF5QixFQUFqRDtBQUNELEtBRk0sTUFFQTtBQUNMd0QsTUFBQUEsZUFBZSxDQUFDekIsT0FBaEIsQ0FBd0I3QixrQkFBa0IsQ0FBQ2lELGFBQUQsQ0FBMUM7QUFDRDs7QUFFREssSUFBQUEsZUFBZSxDQUFDWixPQUFoQixDQUF3QixVQUFDbEQsSUFBRCxFQUFVO0FBQ2hDLFVBQUltRCxlQUFvQixHQUFHM0QsQ0FBQyxDQUFDb0QsTUFBRixDQUFTSixjQUFULEVBQXlCO0FBQ2xEeEMsUUFBQUEsSUFBSSxFQUFFQSxJQUQ0QztBQUVsRDZDLFFBQUFBLFdBQVcsRUFBRTtBQUZxQyxPQUF6QixFQUd4QkMsS0FId0IsQ0FHbEJyRCxHQUhrQixDQUEzQjtBQUlBMEQsTUFBQUEsZUFBZSxDQUFDSixXQUFoQixXQUErQnJELEtBQUssQ0FBQ3lDLEtBQU4sQ0FBWWEsSUFBM0MsZUFBb0R0RCxLQUFLLENBQUNrQyxFQUExRDtBQUNBdUIsTUFBQUEsZUFBZSxDQUFDLGlCQUFELENBQWYsR0FBcUN6RCxLQUFLLENBQUNrQyxFQUEzQztBQUNBdUIsTUFBQUEsZUFBZSxDQUFDLGNBQUQsQ0FBZixHQUFrQyxhQUFsQztBQUNELEtBUkQ7QUFTRCxHQXRDRDs7QUF3Q0EsTUFBTWMsWUFBWSxHQUFHLFNBQWZBLFlBQWUsQ0FBQ0MsR0FBRCxFQUFjO0FBQ2pDLFFBQUlBLEdBQUcsS0FBSyxJQUFaLEVBQWtCO0FBQ2hCLGlJQUUwRHhFLEtBQUssQ0FBQ2tDLEVBRmhFLGlEQUcwQnVDLGtCQUgxQix3SkFNd0R6RSxLQUFLLENBQUN5QyxLQUFOLENBQVlhLElBTnBFO0FBYUQsS0FkRCxNQWNPO0FBQ0wsaUlBRTBEa0IsR0FBRyxDQUFDdEMsRUFGOUQsaURBRzBCdUMsa0JBSDFCLHdKQU9nQnpFLEtBQUssQ0FBQ3lDLEtBQU4sQ0FBWWEsSUFQNUIsb0pBVXlEb0IsY0FBS0MsQ0FBTCw0QkFWekQseURBY29CLDhCQUE4QkgsR0FBRyxDQUFDSSxRQWR0RCx1SEFpQjRCRixjQUFLQyxDQUFMLHNDQUM4QkgsR0FBRyxDQUFDSSxRQURsQyxFQWpCNUIsbVdBNEI2REYsY0FBS0MsQ0FBTCw4QkE1QjdELGdPQWtDNkRELGNBQUtDLENBQUwsNkJBbEM3RDtBQTJDRDtBQUNGLEdBNUREOztBQThEQSx3Q0FBd0I1RSxHQUF4QixFQUE2QkMsS0FBN0IsRUFBb0MsT0FBcEM7QUFDQSx3Q0FBd0JELEdBQXhCLEVBQTZCQyxLQUE3QixFQUFvQyxhQUFwQztBQUNBLHdDQUF3QkQsR0FBeEIsRUFBNkJDLEtBQTdCLEVBQW9DLFVBQXBDO0FBQ0Esd0NBQXdCRCxHQUF4QixFQUE2QkMsS0FBN0IsRUFBb0MsWUFBcEM7O0FBRUEsTUFBTTZFLGtCQUFrQixHQUFHLFNBQXJCQSxrQkFBcUIsR0FBTTtBQUMvQixXQUNFekUsYUFBYSxLQUFLLElBQWxCLElBQ0FBLGFBQWEsQ0FBQ2tDLFlBQWQsQ0FBMkJOLE1BQTNCLENBQWtDLFVBQUN3QyxHQUFEO0FBQUEsYUFBU0EsR0FBRyxDQUFDdkMsUUFBSixLQUFpQmpDLEtBQUssQ0FBQ2tDLEVBQWhDO0FBQUEsS0FBbEMsRUFBc0UsQ0FBdEUsQ0FGRjtBQUlELEdBTEQ7O0FBT0EsTUFBTTRDLG1CQUFtQixHQUFHLFNBQXRCQSxtQkFBc0IsR0FBTTtBQUNoQyxXQUFPLElBQVA7QUFDRCxHQUZEOztBQUlBLE1BQU1DLGdCQUFnQixHQUFHLFNBQW5CQSxnQkFBbUIsR0FBcUI7QUFBQSxRQUFwQlAsR0FBb0IsdUVBQVQsSUFBUztBQUM1QyxRQUFJUSxNQUFNLEdBQUdqRixHQUFHLENBQUNrRixPQUFqQjs7QUFENEMsK0JBRWpDQyxRQUZpQztBQUcxQyxVQUNFLENBQUMsT0FBRCxFQUFVLGFBQVYsRUFBeUJDLFFBQXpCLENBQWtDSCxNQUFNLENBQUNFLFFBQUQsQ0FBTixDQUFpQkUsWUFBbkQsS0FDQUosTUFBTSxDQUFDRSxRQUFELENBQU4sQ0FBaUJHLGVBQWpCLEtBQXFDckYsS0FBSyxDQUFDa0MsRUFGN0MsRUFHRTtBQUNBOEMsUUFBQUEsTUFBTSxDQUFDRSxRQUFELENBQU4sQ0FBaUJJLFNBQWpCLENBQTJCZixZQUFZLENBQUNDLEdBQUQsQ0FBdkMsRUFBOEM7QUFDNUNlLFVBQUFBLFFBQVEsRUFBRTtBQURrQyxTQUE5QztBQUdBUCxRQUFBQSxNQUFNLENBQUNFLFFBQUQsQ0FBTixDQUFpQk0sRUFBakIsQ0FBb0IsV0FBcEIsRUFBaUMsVUFBVUMsQ0FBVixFQUFrQjtBQUNqRCxjQUFJeEYsWUFBWSxLQUFLLElBQXJCLEVBQTJCO0FBQ3pCLGdCQUFJeUYsU0FBUyxHQUFHQyxRQUFRLENBQUNDLGFBQVQsQ0FBdUIsS0FBdkIsQ0FBaEI7QUFDQSxnQkFBSUMsUUFBUSxHQUFHRixRQUFRLENBQUNDLGFBQVQsQ0FBdUIsS0FBdkIsQ0FBZjtBQUNBLGdCQUFJRSxNQUFNLEdBQUdILFFBQVEsQ0FBQ0MsYUFBVCxDQUF1QixLQUF2QixDQUFiOztBQUVBLGdCQUFJcEIsR0FBRyxLQUFLLElBQVosRUFBa0I7QUFDaEJ1QixnQ0FBU0MsTUFBVCxlQUNFLDZCQUFDLG1CQUFEO0FBQ0UsZ0JBQUEsU0FBUyxFQUFFeEIsR0FBRyxDQUFDeUIsVUFEakI7QUFFRSxnQkFBQSxTQUFTLEVBQUV6QixHQUFHLENBQUMwQjtBQUZqQixnQkFERixFQUtFUixTQUxGOztBQU9BSyxnQ0FBU0MsTUFBVCxlQUNFLDZCQUFDLG1CQUFEO0FBQ0UsZ0JBQUEsU0FBUyxFQUFFeEIsR0FBRyxDQUFDMkIsY0FEakI7QUFFRSxnQkFBQSxTQUFTLEVBQUUzQixHQUFHLENBQUMwQjtBQUZqQixnQkFERixFQUtFTCxRQUxGO0FBT0QsYUFmRCxNQWVPO0FBQ0xFLGdDQUFTQyxNQUFULGVBQ0UsNkJBQUMsZUFBRDtBQUNFLGdCQUFBLFVBQVUsRUFBRWhHLEtBQUssQ0FBQ3lDLEtBQU4sQ0FBWTJELFdBRDFCO0FBRUUsZ0JBQUEsY0FBYyxFQUFFcEcsS0FBSyxDQUFDeUMsS0FBTixDQUFZNEQsZ0JBRjlCO0FBR0UsZ0JBQUEsS0FBSyxFQUFDO0FBSFIsZ0JBREYsRUFNRVAsTUFORjtBQVFEOztBQUVEUSxZQUFBQSxVQUFVLENBQUMsWUFBTTtBQUNmLG1DQUFFLG1CQUFGLEVBQXVCQyxNQUF2QixDQUE4QmIsU0FBOUI7QUFDQSxtQ0FBRSxrQkFBRixFQUFzQmEsTUFBdEIsQ0FBNkJWLFFBQTdCO0FBQ0EsbUNBQUUsU0FBRixFQUFhVSxNQUFiLENBQW9CVCxNQUFwQjtBQUNELGFBSlMsRUFJUCxHQUpPLENBQVY7QUFLRDs7QUFFRCxjQUFJVSxnQkFBZ0IsR0FBRyxTQUFuQkEsZ0JBQW1CLENBQUNDLFFBQUQsRUFBbUJDLFdBQW5CLEVBQXdDO0FBQzdELGlDQUFFZixRQUFRLENBQUNnQixJQUFYLEVBQWlCbkIsRUFBakIsQ0FBb0IsT0FBcEIsRUFBNkJpQixRQUE3QixFQUF1QyxZQUFNO0FBQzNDdEcsY0FBQUEsUUFBUSxDQUFDLGtDQUFELENBQVI7QUFDQUEsY0FBQUEsUUFBUSxDQUFDLGdDQUFrQixJQUFsQixFQUF3QnVHLFdBQXhCLEVBQXFDMUcsS0FBckMsQ0FBRCxDQUFSO0FBQ0QsYUFIRDtBQUlELFdBTEQ7O0FBT0EsY0FBSXdFLEdBQUcsS0FBSyxJQUFaLEVBQWtCO0FBQ2hCZ0MsWUFBQUEsZ0JBQWdCLENBQUMsdUJBQXVCaEMsR0FBRyxDQUFDdEMsRUFBNUIsRUFBZ0NzQyxHQUFoQyxDQUFoQjtBQUNELFdBRkQsTUFFTztBQUNMZ0MsWUFBQUEsZ0JBQWdCLENBQUMsdUJBQXVCeEcsS0FBSyxDQUFDa0MsRUFBOUIsRUFBa0MsSUFBbEMsQ0FBaEI7QUFDRDtBQUNGLFNBbkREO0FBb0RBOEMsUUFBQUEsTUFBTSxDQUFDRSxRQUFELENBQU4sQ0FBaUJNLEVBQWpCLENBQW9CLE9BQXBCLEVBQTZCLFlBQU07QUFDakNSLFVBQUFBLE1BQU0sQ0FBQ0UsUUFBRCxDQUFOLENBQWlCMEIsU0FBakI7QUFDRCxTQUZEO0FBR0Q7QUFqRXlDOztBQUU1QyxTQUFLLElBQU0xQixRQUFYLElBQXVCRixNQUF2QixFQUErQjtBQUFBLFlBQXBCRSxRQUFvQjtBQWdFOUI7QUFDRixHQW5FRDs7QUFxRUEsd0JBQVUsWUFBTTtBQUNkLFFBQUlwQyxjQUFjLEdBQUcsQ0FBQzlDLEtBQUssQ0FBQyxVQUFELENBQU4sRUFBb0JBLEtBQUssQ0FBQyxXQUFELENBQXpCLENBQXJCOztBQUVBLFFBQUk4QyxjQUFjLENBQUMsQ0FBRCxDQUFkLEtBQXNCLElBQTFCLEVBQWdDO0FBQzlCRCxNQUFBQSxrQkFBa0IsQ0FBQ0MsY0FBRCxDQUFsQjtBQUVBLFVBQUk5QyxLQUFLLENBQUM2RyxzQkFBTixJQUFnQyxDQUFDN0csS0FBSyxDQUFDOEcsVUFBM0MsRUFBdUQ7O0FBRXZELFVBQ0V0RSxnQkFBZ0IsQ0FBQ3hDLEtBQUQsQ0FBaEIsS0FBNEIsSUFBNUIsS0FDQ0ksYUFBYSxLQUFLLElBQWxCLElBQ0VBLGFBQWEsS0FBSyxJQUFsQixJQUEwQnlFLGtCQUFrQixFQUQ5QyxJQUVDN0UsS0FBSyxDQUFDeUMsS0FBTixDQUFZQyxJQUFaLEtBQXFCLGtDQUh2QixDQURGLEVBS0U7QUFDQWEsUUFBQUEscUJBQXFCLENBQUNULGNBQUQsQ0FBckI7QUFDRDs7QUFFRCxVQUFJN0MsWUFBWSxLQUFLLElBQWpCLElBQXlCNEUsa0JBQWtCLEVBQS9DLEVBQW1EO0FBQ2pELFlBQUlrQyxjQUFjLEdBQUd2RSxnQkFBZ0IsQ0FBQ3hDLEtBQUQsQ0FBaEIsS0FBNEIsSUFBakQ7QUFDQW1FLFFBQUFBLDBCQUEwQixDQUFDckIsY0FBRCxFQUFpQmlFLGNBQWpCLENBQTFCLENBRmlELENBR2pEOztBQUNBLFlBQ0U5RyxZQUFZLEtBQUssSUFBakIsSUFDQUEsWUFBWSxDQUFDK0csU0FBYixDQUF1QnpFLE1BQXZCLEtBQWtDLENBRGxDLElBRUF0QyxZQUFZLENBQUMrRyxTQUFiLENBQXVCLENBQXZCLEVBQTBCL0UsUUFBMUIsS0FBdUNqQyxLQUFLLENBQUNrQyxFQUgvQyxFQUlFO0FBQ0E0QixVQUFBQSx1QkFBdUIsQ0FBQ2hCLGNBQUQsRUFBaUJpRSxjQUFqQixDQUF2QjtBQUNEO0FBQ0Y7O0FBRUQsVUFBSTNHLGFBQWEsS0FBSyxJQUFsQixJQUEwQjBFLG1CQUFtQixFQUFqRCxFQUFxRDtBQUNuRCxZQUFJTixHQUFHLEdBQUdwRSxhQUFhLENBQUNrQyxZQUFkLENBQTJCTixNQUEzQixDQUNSLFVBQUN3QyxHQUFEO0FBQUEsaUJBQVNBLEdBQUcsQ0FBQ3ZDLFFBQUosS0FBaUJqQyxLQUFLLENBQUNrQyxFQUFoQztBQUFBLFNBRFEsRUFFUixDQUZRLENBQVY7QUFHQTZDLFFBQUFBLGdCQUFnQixDQUFDUCxHQUFELENBQWhCO0FBQ0Q7QUFDRjs7QUFFRCxXQUFPLFNBQVN5QyxPQUFULEdBQW1CO0FBQ3hCO0FBQ0Esa0RBQWNsSCxHQUFkLEVBQW1CQyxLQUFuQixFQUEwQixhQUExQjtBQUNBLGtEQUFjRCxHQUFkLEVBQW1CQyxLQUFuQixFQUEwQixPQUExQjtBQUNBLGtEQUFjRCxHQUFkLEVBQW1CQyxLQUFuQixFQUEwQixVQUExQjtBQUNBLGtEQUFjRCxHQUFkLEVBQW1CQyxLQUFuQixFQUEwQixZQUExQjtBQUNELEtBTkQ7QUFPRCxHQTdDRCxFQTZDRyxDQUFDSSxhQUFELENBN0NIO0FBK0NBLHNCQUFPLHlDQUFQO0FBQ0QsQ0FsZ0JEOztBQW9nQkEsSUFBTThHLFNBQVMsR0FBRyx5QkFBUXpILGVBQVIsQ0FBbEI7O2VBQ2V5SCxTQUFTLGVBQ3RCQyxlQUFNQyxJQUFOLENBQVd4SCxXQUFYLEVBQXdCLFVBQUN5SCxTQUFELEVBQVlDLFNBQVosRUFBMEI7QUFDaEQsTUFDRUQsU0FBUyxDQUFDMUgsV0FBVixDQUFzQk0sWUFBdEIsS0FBdUNxSCxTQUFTLENBQUMzSCxXQUFWLENBQXNCTSxZQUQvRCxFQUVFO0FBQ0EsV0FBTyxLQUFQO0FBQ0Q7O0FBRUQsU0FBTyxJQUFQO0FBQ0QsQ0FSRCxDQURzQixDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICQgZnJvbSAnanF1ZXJ5JztcbmltcG9ydCBSZWFjdCwgeyB1c2VFZmZlY3QsIHVzZU1lbW8gfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgUmVhY3RET00gZnJvbSAncmVhY3QtZG9tJztcbmltcG9ydCB7IGNvbm5lY3QsIENvbm5lY3RlZFByb3BzLCB1c2VEaXNwYXRjaCB9IGZyb20gJ3JlYWN0LXJlZHV4JztcbmltcG9ydCBHcmFwaEljb24gZnJvbSAnc3JjL2Fzc2V0cy9saW5lLWNoYXJ0LnN2Zyc7XG5pbXBvcnQgY29sbGVjdG9ySWNvbiBmcm9tICdzcmMvYXNzZXRzL21hcC9waW4td2F0ZXIuc3ZnJztcbmltcG9ydCB3YXRlckljb25Ob0JhY2tncm91bmQgZnJvbSAnc3JjL2Fzc2V0cy9wb2ludF9pY29ucy93YXRlci1uby1iYWNrZ3JvdW5kLnN2Zyc7XG5pbXBvcnQgYmx1ZUNpcmNsZVVSTCBmcm9tICdzcmMvYXNzZXRzL3BvaW50X2ljb25zL2JsdWUtY2lyY2xlLnN2Zyc7XG5pbXBvcnQgYnJpZ2h0Qmx1ZUNpcmNsZVVSTCBmcm9tICdzcmMvYXNzZXRzL3BvaW50X2ljb25zL2JyaWdodC1ibHVlLWNpcmNsZS5zdmcnO1xuaW1wb3J0IHBsYW50SWNvblVSTCBmcm9tICdzcmMvYXNzZXRzL3BvaW50X2ljb25zL2ZhY3RvcnktaWNvbi5zdmcnO1xuaW1wb3J0IGdyZWVuQ2lyY2xlVVJMIGZyb20gJ3NyYy9hc3NldHMvcG9pbnRfaWNvbnMvZ3JlZW4tY2lyY2xlLnN2Zyc7XG5pbXBvcnQgb2JzZXJ2YXRpb25JY29uVVJMIGZyb20gJ3NyYy9hc3NldHMvcG9pbnRfaWNvbnMvb2JzZXJ2YXRpb24taWNvbi5zdmcnO1xuaW1wb3J0IHBpbmtDaXJjbGVVUkwgZnJvbSAnc3JjL2Fzc2V0cy9wb2ludF9pY29ucy9waW5rLWNpcmNsZS5zdmcnO1xuaW1wb3J0IHB1bXBTdGF0aW9uSWNvblVSTCBmcm9tICdzcmMvYXNzZXRzL3BvaW50X2ljb25zL3B1bXAtc3RhdGlvbi1pY29uLnN2Zyc7XG5pbXBvcnQgcmVkUGluUmVkU2hhZG93IGZyb20gJ3NyYy9hc3NldHMvcG9pbnRfaWNvbnMvcmVkLXBpbi1yZWQtc2hhZG93LnBuZyc7XG5pbXBvcnQgc2FtcGxpbmdJY29uVVJMIGZyb20gJ3NyYy9hc3NldHMvcG9pbnRfaWNvbnMvc2FtcGxpbmctaWNvbi5zdmcnO1xuaW1wb3J0IHdoaXRlUGluQmxhY2tTaGFkb3cgZnJvbSAnc3JjL2Fzc2V0cy9wb2ludF9pY29ucy93aGl0ZS1waW4tYmxhY2stc2hhZG93LnBuZyc7XG5pbXBvcnQgd2hpdGVQaW5SZWRTaGFkb3cgZnJvbSAnc3JjL2Fzc2V0cy9wb2ludF9pY29ucy93aGl0ZS1waW4tcmVkLXNoYWRvdy5wbmcnO1xuaW1wb3J0IFdXVFBJY29uVVJMIGZyb20gJ3NyYy9hc3NldHMvcG9pbnRfaWNvbnMvV1dUUC1pY29uLnN2Zyc7XG5pbXBvcnQgeWVsbG93Q2lyY2xlVVJMIGZyb20gJ3NyYy9hc3NldHMvcG9pbnRfaWNvbnMveWVsbG93LWNpcmNsZS5zdmcnO1xuaW1wb3J0IHdoaXRlUG9pbnQgZnJvbSAnc3JjL2Fzc2V0cy93aGl0ZS1wb2ludC5wbmcnO1xuaW1wb3J0IFNlY3RvciBmcm9tICdzcmMvY29tcG9uZW50cy9TZWN0b3InO1xuaW1wb3J0IHVzZVJlbW92ZUV4aXN0aW5nTGF5ZXJzLCB7XG4gIHJlbW92ZUZyb21NYXAsXG59IGZyb20gJ3NyYy9ob29rcy91c2VSZW1vdmVFeGlzdGluZ0xheWVycyc7XG5pbXBvcnQgeyBJQXBwU3RhdGUgfSBmcm9tICdzcmMvbW9kZWxzL0lBcHBTdGF0ZSc7XG5pbXBvcnQge1xuICBjbG9zZUZsb2F0aW5nR3JhcGgsXG4gIG9wZW5GbG9hdGluZ0dyYXBoLFxufSBmcm9tICdzcmMvc3RvcmUvZ2xvYmFsL2FjdGlvbnMnO1xuaW1wb3J0IHsgSVBvaW50IH0gZnJvbSAnc3JjL3N0b3JlL3BvaW50cy9tb2RlbHMvSVBvaW50JztcbmltcG9ydCBpMThuIGZyb20gJ3NyYy91dGlsaXRpZXMvaTE4bic7XG5pbXBvcnQgVGltZUZvcm1hdCBmcm9tICdzcmMvdXRpbGl0aWVzL1RpbWVGb3JtYXQnO1xuXG5mdW5jdGlvbiBtYXBTdGF0ZVRvUHJvcHMoc3RhdGU6IElBcHBTdGF0ZSkge1xuICBjb25zdCB7IGV2ZW50c19kYXRhIH0gPSBzdGF0ZTtcblxuICByZXR1cm4ge1xuICAgIGV2ZW50c19kYXRhLFxuICB9O1xufVxuXG50eXBlIFByb3BzID0gQ29ubmVjdGVkUHJvcHM8dHlwZW9mIGNvbm5lY3Rvcj4gJiB7XG4gIG1hcDogYW55O1xuICBMOiBhbnk7XG4gIHBvaW50OiBJUG9pbnQ7XG59O1xuXG5jb25zdCBQb2ludE1hcmtlcjogUmVhY3QuRkM8UHJvcHM+ID0gKHByb3BzKSA9PiB7XG4gIGNvbnN0IHsgTCwgbWFwLCBwb2ludCwgZXZlbnRzX2RhdGEgfSA9IHByb3BzO1xuICBjb25zdCB7IGZvY3VzZWRFdmVudCwgaG92ZXJlZEV2ZW50IH0gPSBldmVudHNfZGF0YTtcbiAgY29uc3QgZGlzcGF0Y2ggPSB1c2VEaXNwYXRjaCgpO1xuXG4gIGNvbnN0IGNlbnRlcmVkRXZlbnQgPSB1c2VNZW1vKFxuICAgICgpID0+IGZvY3VzZWRFdmVudCB8fCBob3ZlcmVkRXZlbnQsXG4gICAgW2ZvY3VzZWRFdmVudCwgaG92ZXJlZEV2ZW50XSxcbiAgKTtcbiAgLy8gaWNvblNpemU6IFt3aWR0aCwgaGVpZ2h0XSxcbiAgLy8gSWNvbiBBbmNob3I6IFsoLXJpZ2h0KSgrbGVmdCksICgtZG93bikoK3VwKV1cbiAgY29uc3Qgc2VsZWN0ZWRCYWNrZ3JvdW5kID0gKCkgPT4ge1xuICAgIHJldHVybiBMLmljb24oe1xuICAgICAgaWNvblVybDogcmVkUGluUmVkU2hhZG93LFxuICAgICAgaWNvblNpemU6IFs2NywgNzBdLFxuICAgICAgaWNvbkFuY2hvcjogWzMyLCA1NF0sXG4gICAgICBwb3B1cEFuY2hvcjogWzAsIC0zMF0sXG4gICAgfSk7XG4gIH07XG5cbiAgY29uc3QgYmVsb25nc1RvU291cmNlQmFja2dyb3VuZCA9ICgpID0+IHtcbiAgICByZXR1cm4gTC5pY29uKHtcbiAgICAgIGljb25Vcmw6IHdoaXRlUGluUmVkU2hhZG93LFxuICAgICAgaWNvblNpemU6IFs2NywgNzBdLFxuICAgICAgaWNvbkFuY2hvcjogWzMyLCA1NF0sXG4gICAgICBwb3B1cEFuY2hvcjogWzAsIC0zMF0sXG4gICAgfSk7XG4gIH07XG5cbiAgY29uc3Qgc3RhbmRhcmRCYWNrZ3JvdW5kID0gKFxuICAgIHNlY29uZGFyeTogYm9vbGVhbiA9IGZhbHNlLFxuICAgIHRoaXJkOiBib29sZWFuID0gZmFsc2UsXG4gICkgPT4ge1xuICAgIHJldHVybiBMLmljb24oe1xuICAgICAgaWNvblVybDogd2hpdGVQaW5CbGFja1NoYWRvdyxcbiAgICAgIGljb25TaXplOiBzZWNvbmRhcnkgPyBbMjAsIDIwXSA6IFs0MywgNDZdLFxuICAgICAgaWNvbkFuY2hvcjpcbiAgICAgICAgc2Vjb25kYXJ5ICYmIHRoaXJkID8gWy0yLCAxOV0gOiBzZWNvbmRhcnkgPyBbLTIsIDQ0XSA6IFsyMCwgNDJdLFxuICAgICAgcG9wdXBBbmNob3I6IFswLCAtMzBdLFxuICAgIH0pO1xuICB9O1xuXG4gIGNvbnN0IGNvbWJpbmVkRmFjdG9yeUljb24gPSBbXG4gICAgTC5pY29uKHtcbiAgICAgIGljb25Vcmw6IHllbGxvd0NpcmNsZVVSTCxcbiAgICAgIGljb25TaXplOiBbMjUsIDI0XSxcbiAgICAgIGljb25BbmNob3I6IFsxMC43LCAzMy43XSxcbiAgICAgIHBvcHVwQW5jaG9yOiBbMCwgLTMwXSxcbiAgICB9KSxcbiAgICBMLmljb24oe1xuICAgICAgaWNvblVybDogcGxhbnRJY29uVVJMLFxuICAgICAgaWNvblNpemU6IFsxNSwgMTVdLFxuICAgICAgaWNvbkFuY2hvcjogWzUsIDMwXSxcbiAgICAgIHBvcHVwQW5jaG9yOiBbMCwgLTMwXSxcbiAgICB9KSxcbiAgXTtcblxuICBjb25zdCBjb21iaW5lZFB1bXBTdGF0aW9uSWNvbiA9IFtcbiAgICBMLmljb24oe1xuICAgICAgaWNvblVybDogZ3JlZW5DaXJjbGVVUkwsXG4gICAgICBpY29uU2l6ZTogWzI1LCAyNF0sXG4gICAgICBpY29uQW5jaG9yOiBbMTAuNywgMzMuN10sXG4gICAgICBwb3B1cEFuY2hvcjogWzAsIC0zMF0sXG4gICAgfSksXG4gICAgTC5pY29uKHtcbiAgICAgIGljb25Vcmw6IHB1bXBTdGF0aW9uSWNvblVSTCxcbiAgICAgIGljb25TaXplOiBbMjAsIDIwXSxcbiAgICAgIGljb25BbmNob3I6IFs3LCAzMl0sXG4gICAgICBwb3B1cEFuY2hvcjogWzAsIC0zMF0sXG4gICAgfSksXG4gIF07XG5cbiAgY29uc3QgY29tYmluZWRDb2xsZWN0b3JzSWNvbiA9IFtcbiAgICBMLmljb24oe1xuICAgICAgaWNvblVybDogY29sbGVjdG9ySWNvbixcbiAgICAgIGljb25TaXplOiBbNDUsIDQ1XSxcblxuICAgICAgaWNvbkFuY2hvcjogWzI1LCA1MF0sXG4gICAgICBwb3B1cEFuY2hvcjogWzAsIC0zMF0sXG4gICAgfSksXG4gIF07XG5cbiAgY29uc3QgY29tYmluZWRXV1RQSWNvbiA9IFtcbiAgICBMLmljb24oe1xuICAgICAgaWNvblVybDogYnJpZ2h0Qmx1ZUNpcmNsZVVSTCxcbiAgICAgIGljb25TaXplOiBbMjUsIDI1XSxcbiAgICAgIGljb25BbmNob3I6IFsxMC43LCAzMy43XSxcbiAgICAgIHBvcHVwQW5jaG9yOiBbMCwgLTMwXSxcbiAgICB9KSxcbiAgICBMLmljb24oe1xuICAgICAgaWNvblVybDogV1dUUEljb25VUkwsXG4gICAgICBpY29uU2l6ZTogWzIwLCAyMF0sXG4gICAgICBpY29uQW5jaG9yOiBbOCwgMzFdLFxuICAgICAgcG9wdXBBbmNob3I6IFswLCAtMzBdLFxuICAgIH0pLFxuICBdO1xuXG4gIGNvbnN0IG1hcmtlckJlbG9uZ3NUb1NlbGVjdGVkU291cmNlID0gKCkgPT4ge1xuICAgIGxldCBzb3VyY2U7XG5cbiAgICBpZiAoY2VudGVyZWRFdmVudCAhPT0gbnVsbCkge1xuICAgICAgc291cmNlID0gY2VudGVyZWRFdmVudC5zb3VyY2VzLmZpbHRlcihcbiAgICAgICAgKHNvdXJjZSkgPT4gc291cmNlLnBvaW50X2lkID09PSBwb2ludC5pZCxcbiAgICAgIClbMF07XG4gICAgfVxuXG4gICAgcmV0dXJuIChcbiAgICAgIGNlbnRlcmVkRXZlbnQgIT09IG51bGwgJiZcbiAgICAgIHNvdXJjZSAmJlxuICAgICAgY2VudGVyZWRFdmVudC5zZWxlY3RlZF9zb3VyY2UgPT09IHNvdXJjZS5wb2ludF9pZFxuICAgICk7XG4gIH07XG5cbiAgY29uc3QgbWFya2VyQmVsb25nc1RvU291cmNlID0gKCkgPT4ge1xuICAgIHJldHVybiAoXG4gICAgICBjZW50ZXJlZEV2ZW50ICE9PSBudWxsICYmXG4gICAgICBjZW50ZXJlZEV2ZW50LnNvdXJjZXMuZmlsdGVyKChzb3VyY2UpID0+IHNvdXJjZS5wb2ludF9pZCA9PT0gcG9pbnQuaWQpWzBdXG4gICAgKTtcbiAgfTtcblxuICBjb25zdCBpc0NvbGxlY3RvckZvY3VzZWQgPSAocG9pbnQ6IElQb2ludCkgPT4ge1xuICAgIHJldHVybiAoXG4gICAgICBjZW50ZXJlZEV2ZW50Py5vYnNlcnZhdGlvbnM/Lmxlbmd0aCA9PT0gMSAmJlxuICAgICAgcG9pbnQuaWQgPT09IGNlbnRlcmVkRXZlbnQub2JzZXJ2YXRpb25zWzBdLnBvaW50X2lkXG4gICAgKTtcbiAgfTtcblxuICBjb25zdCBtYXRjaEljb25Ub1BvaW50ID0gKHBvaW50OiBJUG9pbnQpID0+IHtcbiAgICBzd2l0Y2ggKHBvaW50Lmdyb3VwLnR5cGUpIHtcbiAgICAgIGNhc2UgJ0dyb3Vwczo6RmFjdG9yeSc6XG4gICAgICAgIGlmIChjb21iaW5lZEZhY3RvcnlJY29uLmxlbmd0aCA9PT0gMikge1xuICAgICAgICAgIGlmIChtYXJrZXJCZWxvbmdzVG9TZWxlY3RlZFNvdXJjZSgpKSB7XG4gICAgICAgICAgICBjb21iaW5lZEZhY3RvcnlJY29uLnVuc2hpZnQoc2VsZWN0ZWRCYWNrZ3JvdW5kKCkpO1xuICAgICAgICAgIH0gZWxzZSBpZiAobWFya2VyQmVsb25nc1RvU291cmNlKCkpIHtcbiAgICAgICAgICAgIGNvbWJpbmVkRmFjdG9yeUljb24udW5zaGlmdChiZWxvbmdzVG9Tb3VyY2VCYWNrZ3JvdW5kKCkpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb21iaW5lZEZhY3RvcnlJY29uLnVuc2hpZnQoc3RhbmRhcmRCYWNrZ3JvdW5kKCkpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBjb21iaW5lZEZhY3RvcnlJY29uO1xuICAgICAgY2FzZSAnR3JvdXBzOjpQdW1wU3RhdGlvbic6XG4gICAgICAgIGlmIChjb21iaW5lZFB1bXBTdGF0aW9uSWNvbi5sZW5ndGggPT09IDIpIHtcbiAgICAgICAgICBpZiAobWFya2VyQmVsb25nc1RvU2VsZWN0ZWRTb3VyY2UoKSkge1xuICAgICAgICAgICAgY29tYmluZWRQdW1wU3RhdGlvbkljb24udW5zaGlmdChzZWxlY3RlZEJhY2tncm91bmQoKSk7XG4gICAgICAgICAgfSBlbHNlIGlmIChtYXJrZXJCZWxvbmdzVG9Tb3VyY2UoKSkge1xuICAgICAgICAgICAgY29tYmluZWRQdW1wU3RhdGlvbkljb24udW5zaGlmdChiZWxvbmdzVG9Tb3VyY2VCYWNrZ3JvdW5kKCkpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb21iaW5lZFB1bXBTdGF0aW9uSWNvbi51bnNoaWZ0KHN0YW5kYXJkQmFja2dyb3VuZCgpKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gY29tYmluZWRQdW1wU3RhdGlvbkljb247XG4gICAgICBjYXNlICdHcm91cHM6Oldhc3Rld2F0ZXJUcmVhdG1lbnRQbGFudCc6XG4gICAgICAgIGlmIChjb21iaW5lZFdXVFBJY29uLmxlbmd0aCA9PT0gMikge1xuICAgICAgICAgIGlmIChtYXJrZXJCZWxvbmdzVG9TZWxlY3RlZFNvdXJjZSgpKSB7XG4gICAgICAgICAgICBjb21iaW5lZFdXVFBJY29uLnVuc2hpZnQoc2VsZWN0ZWRCYWNrZ3JvdW5kKCkpO1xuICAgICAgICAgIH0gZWxzZSBpZiAobWFya2VyQmVsb25nc1RvU291cmNlKCkpIHtcbiAgICAgICAgICAgIGNvbWJpbmVkV1dUUEljb24udW5zaGlmdChiZWxvbmdzVG9Tb3VyY2VCYWNrZ3JvdW5kKCkpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb21iaW5lZFdXVFBJY29uLnVuc2hpZnQoc3RhbmRhcmRCYWNrZ3JvdW5kKCkpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBjb21iaW5lZFdXVFBJY29uO1xuXG4gICAgICBjYXNlICdHcm91cHM6OkNvbGxlY3RvcnMnOlxuICAgICAgICBpZiAoaXNDb2xsZWN0b3JGb2N1c2VkKHBvaW50KSkge1xuICAgICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICBMLmljb24oe1xuICAgICAgICAgICAgICBpY29uVXJsOiByZWRQaW5SZWRTaGFkb3csXG4gICAgICAgICAgICAgIGljb25TaXplOiBbNjIsIDYyXSxcbiAgICAgICAgICAgICAgaWNvbkFuY2hvcjogWzMwLCA1Ml0sXG4gICAgICAgICAgICB9KSxcblxuICAgICAgICAgICAgTC5pY29uKHtcbiAgICAgICAgICAgICAgaWNvblVybDogd2F0ZXJJY29uTm9CYWNrZ3JvdW5kLFxuICAgICAgICAgICAgICBpY29uU2l6ZTogWzQ2LCA0Nl0sXG5cbiAgICAgICAgICAgICAgaWNvbkFuY2hvcjogWzIyLCA0NF0sXG4gICAgICAgICAgICAgIHBvcHVwQW5jaG9yOiBbMCwgLTMwXSxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgIF07XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gY29tYmluZWRDb2xsZWN0b3JzSWNvbjtcblxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGNyZWF0ZU1hbmhvbGVQb2ludCA9IChtYXJrZXJMb2NhdGlvbjogb2JqZWN0KSA9PiB7XG4gICAgbGV0IHBvaW50SWNvbiA9IEwuaWNvbih7XG4gICAgICBpY29uVXJsOiB3aGl0ZVBvaW50LFxuICAgICAgaWNvblNpemU6IFs5LCA5XSxcbiAgICAgIGljb25BbmNob3I6IFs0LjUsIDQuNV0sXG4gICAgfSk7XG4gICAgbGV0IG1hbmhvbGVJY29uOiBhbnkgPSBMLm1hcmtlcihtYXJrZXJMb2NhdGlvbiwge1xuICAgICAgaWNvbjogcG9pbnRJY29uLFxuICAgICAgcmlzZU9uSG92ZXI6IHRydWUsXG4gICAgfSkuYWRkVG8obWFwKTtcbiAgICBtYW5ob2xlSWNvbi5iaW5kVG9vbHRpcChgJHtwb2ludC5ncm91cC5uYW1lfSAoJHtwb2ludC5pZH0pYCk7XG4gICAgbWFuaG9sZUljb25bJ2thbmRvX29iamVjdF9pZCddID0gcG9pbnQuaWQ7XG4gICAgbWFuaG9sZUljb25bJ2thbmRvX29iamVjdCddID0gJ1BvaW50JztcbiAgfTtcblxuICBjb25zdCBjcmVhdGVDdXN0b21JY29uUG9pbnQgPSAobWFya2VyTG9jYXRpb246IG9iamVjdCkgPT4ge1xuICAgIC8vIEB0cy1pZ25vcmVcbiAgICBtYXRjaEljb25Ub1BvaW50KHBvaW50KSAhPT0gbnVsbCAmJlxuICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgbWF0Y2hJY29uVG9Qb2ludChwb2ludCkuZm9yRWFjaCgoaWNvbjogYW55KSA9PiB7XG4gICAgICAgIGxldCBwb2ludEN1c3RvbUljb246IGFueSA9IEwubWFya2VyKG1hcmtlckxvY2F0aW9uLCB7XG4gICAgICAgICAgaWNvbjogaWNvbixcbiAgICAgICAgICByaXNlT25Ib3ZlcjogZmFsc2UsXG4gICAgICAgIH0pLmFkZFRvKG1hcCk7XG4gICAgICAgIHBvaW50Q3VzdG9tSWNvbi5iaW5kVG9vbHRpcChgJHtwb2ludC5ncm91cC5uYW1lfSAoJHtwb2ludC5pZH0pYCk7XG4gICAgICAgIHBvaW50Q3VzdG9tSWNvblsna2FuZG9fb2JqZWN0X2lkJ10gPSBwb2ludC5pZDtcbiAgICAgICAgcG9pbnRDdXN0b21JY29uWydrYW5kb19vYmplY3QnXSA9ICdQb2ludCc7XG4gICAgICB9KTtcblxuICAgIGlmIChwb2ludC5yZWxhdGVkRXZlbnRzQW1vdW50KSB7XG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmVcbiAgICAgIGxldCBwb2ludEN1c3RvbUljb24gPSBMLm1hcmtlcihtYXJrZXJMb2NhdGlvbiwge1xuICAgICAgICBpY29uOiBMLmRpdkljb24oe1xuICAgICAgICAgIGNsYXNzTmFtZTogYGNpcmNsZS1ldmVudHMtYW1vdW50ICR7XG4gICAgICAgICAgICBwb2ludC5yZWxhdGVkRXZlbnRzQW1vdW50ID4gMiA/ICdhbGVydC1jb2xvcicgOiAnJ1xuICAgICAgICAgIH1gLFxuICAgICAgICAgIGh0bWw6IGAke3BvaW50LnJlbGF0ZWRFdmVudHNBbW91bnR9YCxcbiAgICAgICAgICBpY29uQW5jaG9yOiBbLTUsIDQyXSxcbiAgICAgICAgfSksXG4gICAgICAgIHJpc2VPbkhvdmVyOiBmYWxzZSxcbiAgICAgIH0pLmFkZFRvKG1hcCk7XG5cbiAgICAgIHBvaW50Q3VzdG9tSWNvblsna2FuZG9fb2JqZWN0X2lkJ10gPSBwb2ludC5pZDtcbiAgICAgIHBvaW50Q3VzdG9tSWNvblsna2FuZG9fb2JqZWN0J10gPSAnSWNvbk51bWJlcic7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGNyZWF0ZVNhbXBsaW5nSWNvblBvaW50ID0gKFxuICAgIG1hcmtlckxvY2F0aW9uOiBvYmplY3QsXG4gICAgc2Vjb25kYXJ5SWNvbjogYm9vbGVhbixcbiAgKSA9PiB7XG4gICAgLy8gaWNvblNpemU6IFt3aWR0aCwgaGVpZ2h0XSxcbiAgICAvLyBJY29uIEFuY2hvcjogWygtcmlnaHQpKCtsZWZ0KSwgKC1kb3duKSgrdXApXVxuICAgIGxldCBzYW1wbGluZ0ljb24gPSBbXG4gICAgICBMLmljb24oe1xuICAgICAgICBpY29uVXJsOiBibHVlQ2lyY2xlVVJMLFxuICAgICAgICBpY29uU2l6ZTogc2Vjb25kYXJ5SWNvbiA/IFsxMCwgMTBdIDogWzI1LCAyNF0sXG4gICAgICAgIGljb25BbmNob3I6IHNlY29uZGFyeUljb24gPyBbLTcsIDE1XSA6IFsxMC43LCAzMy43XSxcbiAgICAgICAgcG9wdXBBbmNob3I6IFswLCAtMzBdLFxuICAgICAgfSksXG4gICAgICBMLmljb24oe1xuICAgICAgICBpY29uVXJsOiBzYW1wbGluZ0ljb25VUkwsXG4gICAgICAgIGljb25TaXplOiBzZWNvbmRhcnlJY29uID8gWzcsIDddIDogWzEzLCAxNV0sXG4gICAgICAgIGljb25BbmNob3I6IHNlY29uZGFyeUljb24gPyBbLTgsIDEzXSA6IFs1LCAzMF0sXG4gICAgICAgIHBvcHVwQW5jaG9yOiBbMCwgLTMwXSxcbiAgICAgIH0pLFxuICAgIF07XG5cbiAgICBpZiAobWFya2VyQmVsb25nc1RvU2VsZWN0ZWRTb3VyY2UoKSAmJiAhc2Vjb25kYXJ5SWNvbikge1xuICAgICAgc2FtcGxpbmdJY29uLnVuc2hpZnQoc2VsZWN0ZWRCYWNrZ3JvdW5kKCkpO1xuICAgIH0gZWxzZSBpZiAobWFya2VyQmVsb25nc1RvU291cmNlKCkgJiYgIXNlY29uZGFyeUljb24pIHtcbiAgICAgIHNhbXBsaW5nSWNvbi51bnNoaWZ0KGJlbG9uZ3NUb1NvdXJjZUJhY2tncm91bmQoKSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHNhbXBsaW5nSWNvbi51bnNoaWZ0KHN0YW5kYXJkQmFja2dyb3VuZChzZWNvbmRhcnlJY29uLCB0cnVlKSk7XG4gICAgfVxuXG4gICAgc2FtcGxpbmdJY29uLmZvckVhY2goKGljb24pID0+IHtcbiAgICAgIGxldCBwb2ludEN1c3RvbUljb246IGFueSA9IEwubWFya2VyKG1hcmtlckxvY2F0aW9uLCB7XG4gICAgICAgIGljb246IGljb24sXG4gICAgICAgIHJpc2VPbkhvdmVyOiBmYWxzZSxcbiAgICAgIH0pLmFkZFRvKG1hcCk7XG4gICAgICBwb2ludEN1c3RvbUljb24uYmluZFRvb2x0aXAoYCR7cG9pbnQuZ3JvdXAubmFtZX0gKCR7cG9pbnQuaWR9KWApO1xuICAgICAgcG9pbnRDdXN0b21JY29uWydrYW5kb19vYmplY3RfaWQnXSA9IHBvaW50LmlkO1xuICAgICAgcG9pbnRDdXN0b21JY29uWydrYW5kb19vYmplY3QnXSA9ICdTYW1wbGluZyc7XG4gICAgfSk7XG4gIH07XG5cbiAgY29uc3QgY3JlYXRlT2JzZXJ2YXRpb25JY29uUG9pbnQgPSAoXG4gICAgbWFya2VyTG9jYXRpb246IG9iamVjdCxcbiAgICBzZWNvbmRhcnlJY29uOiBib29sZWFuLFxuICApID0+IHtcbiAgICAvLyBpY29uU2l6ZTogW3dpZHRoLCBoZWlnaHRdLFxuICAgIC8vIEljb24gQW5jaG9yOiBbKC1yaWdodCkoK2xlZnQpLCAoLWRvd24pKCt1cCldXG4gICAgbGV0IG9ic2VydmF0aW9uSWNvbiA9IFtcbiAgICAgIEwuaWNvbih7XG4gICAgICAgIGljb25Vcmw6IHBpbmtDaXJjbGVVUkwsXG4gICAgICAgIGljb25TaXplOiBzZWNvbmRhcnlJY29uID8gWzEwLCAxMF0gOiBbMjUsIDI0XSxcbiAgICAgICAgaWNvbkFuY2hvcjogc2Vjb25kYXJ5SWNvbiA/IFstNywgNDBdIDogWzEwLjcsIDMzLjddLFxuICAgICAgICBwb3B1cEFuY2hvcjogWzAsIC0zMF0sXG4gICAgICB9KSxcbiAgICAgIEwuaWNvbih7XG4gICAgICAgIGljb25Vcmw6IG9ic2VydmF0aW9uSWNvblVSTCxcbiAgICAgICAgaWNvblNpemU6IHNlY29uZGFyeUljb24gPyBbNywgN10gOiBbMTMsIDE1XSxcbiAgICAgICAgaWNvbkFuY2hvcjogc2Vjb25kYXJ5SWNvbiA/IFstOCwgMzhdIDogWzUsIDMwXSxcbiAgICAgICAgcG9wdXBBbmNob3I6IFswLCAtMzBdLFxuICAgICAgfSksXG4gICAgXTtcblxuICAgIGlmIChtYXJrZXJCZWxvbmdzVG9TZWxlY3RlZFNvdXJjZSgpICYmICFzZWNvbmRhcnlJY29uKSB7XG4gICAgICBvYnNlcnZhdGlvbkljb24udW5zaGlmdChzZWxlY3RlZEJhY2tncm91bmQoKSk7XG4gICAgfSBlbHNlIGlmIChtYXJrZXJCZWxvbmdzVG9Tb3VyY2UoKSAmJiAhc2Vjb25kYXJ5SWNvbikge1xuICAgICAgb2JzZXJ2YXRpb25JY29uLnVuc2hpZnQoYmVsb25nc1RvU291cmNlQmFja2dyb3VuZCgpKTtcbiAgICB9IGVsc2Uge1xuICAgICAgb2JzZXJ2YXRpb25JY29uLnVuc2hpZnQoc3RhbmRhcmRCYWNrZ3JvdW5kKHNlY29uZGFyeUljb24pKTtcbiAgICB9XG5cbiAgICBvYnNlcnZhdGlvbkljb24uZm9yRWFjaCgoaWNvbikgPT4ge1xuICAgICAgbGV0IHBvaW50Q3VzdG9tSWNvbjogYW55ID0gTC5tYXJrZXIobWFya2VyTG9jYXRpb24sIHtcbiAgICAgICAgaWNvbjogaWNvbixcbiAgICAgICAgcmlzZU9uSG92ZXI6IGZhbHNlLFxuICAgICAgfSkuYWRkVG8obWFwKTtcbiAgICAgIHBvaW50Q3VzdG9tSWNvbi5iaW5kVG9vbHRpcChgJHtwb2ludC5ncm91cC5uYW1lfSAoJHtwb2ludC5pZH0pYCk7XG4gICAgICBwb2ludEN1c3RvbUljb25bJ2thbmRvX29iamVjdF9pZCddID0gcG9pbnQuaWQ7XG4gICAgICBwb2ludEN1c3RvbUljb25bJ2thbmRvX29iamVjdCddID0gJ09ic2VydmF0aW9uJztcbiAgICB9KTtcbiAgfTtcblxuICBjb25zdCBwb3B1cENvbnRlbnQgPSAob2JzOiBhbnkpID0+IHtcbiAgICBpZiAob2JzID09PSBudWxsKSB7XG4gICAgICByZXR1cm4gYFxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImV2ZW50LXBvcHVwXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInBvcHVwLWdyYXBoLWljb24gcG9wdXAtZ3JhcGgtaWNvbi0ke3BvaW50LmlkfVwiPlxuICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cIiR7R3JhcGhJY29ufVwiLz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicG9wdXAtY29udGVudFwiPlxuICAgICAgICAgICAgICAgICAgICA8aDUgY2xhc3M9XCJwb3B1cC1jb250ZW50X19zaXRlLW5hbWVcIj48Yj4ke3BvaW50Lmdyb3VwLm5hbWV9PC9iPjwvaDU+XG4gICAgICAgICAgICAgICAgICAgIDxoci8+XG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwic2VjdG9yXCI+PC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIGA7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBgXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZXZlbnQtcG9wdXBcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicG9wdXAtZ3JhcGgtaWNvbiBwb3B1cC1ncmFwaC1pY29uLSR7b2JzLmlkfVwiPlxuICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cIiR7R3JhcGhJY29ufVwiLz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicG9wdXAtY29udGVudFwiPlxuICAgICAgICAgICAgICAgICAgICA8aDUgY2xhc3M9XCJwb3B1cC1jb250ZW50X19zaXRlLW5hbWVcIj48Yj4ke1xuICAgICAgICAgICAgICAgICAgICAgIHBvaW50Lmdyb3VwLm5hbWVcbiAgICAgICAgICAgICAgICAgICAgfTwvYj48L2g1PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicG9wdXAtY29udGVudF9fc2V2ZXJpdHlcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwicG9wdXAtY29udGVudF9fc2V2ZXJpdHktcFwiPiR7aTE4bi50KFxuICAgICAgICAgICAgICAgICAgICAgICAgICBgZXZlbnRzX292ZXJ2aWV3LnNldmVyaXR5YCxcbiAgICAgICAgICAgICAgICAgICAgICAgICl9PC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCIke1xuICAgICAgICAgICAgICAgICAgICAgICAgICAncG9wdXAtY29udGVudF9fc2V2ZXJpdHktLScgKyBvYnMuc2V2ZXJpdHlcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YiBjbGFzcz1cInBvcHVwLWNvbnRlbnRfX3NldmVyaXR5LWJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHtpMThuLnQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYGV2ZW50c19vdmVydmlldy5zZXZlcml0aWVzLiR7b2JzLnNldmVyaXR5fWAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9iPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIDxociBjbGFzcz1cInBvcHVwLWNvbnRlbnRfX2hyXCIgLz5cblxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicG9wdXAtY29udGVudF9fZGlzY2hhcmdlLXRpbWVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJwb3B1cC1jb250ZW50X19zZXZlcml0eS1wXCI+JHtpMThuLnQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgZXZlbnRzX292ZXJ2aWV3LmZpcnN0X3NlZW5gLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9OjwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj48YiBpZD1cImZpcnN0LXNlZW4tcG9wdXBcIj48L2I+PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwicG9wdXAtY29udGVudF9fc2V2ZXJpdHktcFwiPiR7aTE4bi50KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYGV2ZW50c19vdmVydmlldy5sYXN0X3NlZW5gLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9OjwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj48YiBpZD1cImxhc3Qtc2Vlbi1wb3B1cFwiPjwvYj48L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgYDtcbiAgICB9XG4gIH07XG5cbiAgdXNlUmVtb3ZlRXhpc3RpbmdMYXllcnMobWFwLCBwb2ludCwgJ1BvaW50Jyk7XG4gIHVzZVJlbW92ZUV4aXN0aW5nTGF5ZXJzKG1hcCwgcG9pbnQsICdPYnNlcnZhdGlvbicpO1xuICB1c2VSZW1vdmVFeGlzdGluZ0xheWVycyhtYXAsIHBvaW50LCAnU2FtcGxpbmcnKTtcbiAgdXNlUmVtb3ZlRXhpc3RpbmdMYXllcnMobWFwLCBwb2ludCwgJ0ljb25OdW1iZXInKTtcblxuICBjb25zdCBwb2ludElzT2JzZXJ2YXRpb24gPSAoKSA9PiB7XG4gICAgcmV0dXJuIChcbiAgICAgIGNlbnRlcmVkRXZlbnQgIT09IG51bGwgJiZcbiAgICAgIGNlbnRlcmVkRXZlbnQub2JzZXJ2YXRpb25zLmZpbHRlcigob2JzKSA9PiBvYnMucG9pbnRfaWQgPT09IHBvaW50LmlkKVswXVxuICAgICk7XG4gIH07XG5cbiAgY29uc3QgcG9pbnRCZWxvbmdzVG9FdmVudCA9ICgpID0+IHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfTtcblxuICBjb25zdCBiaW5kUG9wdXBUb1BvaW50ID0gKG9iczogYW55ID0gbnVsbCkgPT4ge1xuICAgIGxldCBsYXllcnMgPSBtYXAuX2xheWVycztcbiAgICBmb3IgKGNvbnN0IHByb3BlcnR5IGluIGxheWVycykge1xuICAgICAgaWYgKFxuICAgICAgICBbJ1BvaW50JywgJ09ic2VydmF0aW9uJ10uaW5jbHVkZXMobGF5ZXJzW3Byb3BlcnR5XS5rYW5kb19vYmplY3QpICYmXG4gICAgICAgIGxheWVyc1twcm9wZXJ0eV0ua2FuZG9fb2JqZWN0X2lkID09PSBwb2ludC5pZFxuICAgICAgKSB7XG4gICAgICAgIGxheWVyc1twcm9wZXJ0eV0uYmluZFBvcHVwKHBvcHVwQ29udGVudChvYnMpLCB7XG4gICAgICAgICAgbWluV2lkdGg6IDIwMCxcbiAgICAgICAgfSk7XG4gICAgICAgIGxheWVyc1twcm9wZXJ0eV0ub24oJ3BvcHVwb3BlbicsIGZ1bmN0aW9uIChlOiBhbnkpIHtcbiAgICAgICAgICBpZiAoZm9jdXNlZEV2ZW50ICE9PSBudWxsKSB7XG4gICAgICAgICAgICBsZXQgZmlyc3RTZWVuID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG4gICAgICAgICAgICBsZXQgbGFzdFNlZW4gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcbiAgICAgICAgICAgIGxldCBzZWN0b3IgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcblxuICAgICAgICAgICAgaWYgKG9icyAhPT0gbnVsbCkge1xuICAgICAgICAgICAgICBSZWFjdERPTS5yZW5kZXIoXG4gICAgICAgICAgICAgICAgPFRpbWVGb3JtYXRcbiAgICAgICAgICAgICAgICAgIHRpbWVzdGFtcD17b2JzLnN0YXJ0X3RpbWV9XG4gICAgICAgICAgICAgICAgICB0aW1lX3pvbmU9e29icy50aW1lX3pvbmV9XG4gICAgICAgICAgICAgICAgLz4sXG4gICAgICAgICAgICAgICAgZmlyc3RTZWVuLFxuICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICBSZWFjdERPTS5yZW5kZXIoXG4gICAgICAgICAgICAgICAgPFRpbWVGb3JtYXRcbiAgICAgICAgICAgICAgICAgIHRpbWVzdGFtcD17b2JzLmxhc3Rfc2Vlbl90aW1lfVxuICAgICAgICAgICAgICAgICAgdGltZV96b25lPXtvYnMudGltZV96b25lfVxuICAgICAgICAgICAgICAgIC8+LFxuICAgICAgICAgICAgICAgIGxhc3RTZWVuLFxuICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgUmVhY3RET00ucmVuZGVyKFxuICAgICAgICAgICAgICAgIDxTZWN0b3JcbiAgICAgICAgICAgICAgICAgIHNlY3Rvck5hbWU9e3BvaW50Lmdyb3VwLnNlY3Rvcl9uYW1lfVxuICAgICAgICAgICAgICAgICAgc2VjdG9ySWNvbk5hbWU9e3BvaW50Lmdyb3VwLnNlY3Rvcl9pY29uX25hbWV9XG4gICAgICAgICAgICAgICAgICB3aWR0aD1cIjM3XCJcbiAgICAgICAgICAgICAgICAvPixcbiAgICAgICAgICAgICAgICBzZWN0b3IsXG4gICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAkKCcjZmlyc3Qtc2Vlbi1wb3B1cCcpLmFwcGVuZChmaXJzdFNlZW4pO1xuICAgICAgICAgICAgICAkKCcjbGFzdC1zZWVuLXBvcHVwJykuYXBwZW5kKGxhc3RTZWVuKTtcbiAgICAgICAgICAgICAgJCgnI3NlY3RvcicpLmFwcGVuZChzZWN0b3IpO1xuICAgICAgICAgICAgfSwgMjAwKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBsZXQgYXR0YWNoQ2xpY2tFdmVudCA9IChzZWxlY3Rvcjogc3RyaW5nLCBvYnNlcnZhdGlvbjogYW55KSA9PiB7XG4gICAgICAgICAgICAkKGRvY3VtZW50LmJvZHkpLm9uKCdjbGljaycsIHNlbGVjdG9yLCAoKSA9PiB7XG4gICAgICAgICAgICAgIGRpc3BhdGNoKGNsb3NlRmxvYXRpbmdHcmFwaCgpKTtcbiAgICAgICAgICAgICAgZGlzcGF0Y2gob3BlbkZsb2F0aW5nR3JhcGgodHJ1ZSwgb2JzZXJ2YXRpb24sIHBvaW50KSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9O1xuXG4gICAgICAgICAgaWYgKG9icyAhPT0gbnVsbCkge1xuICAgICAgICAgICAgYXR0YWNoQ2xpY2tFdmVudCgnLnBvcHVwLWdyYXBoLWljb24tJyArIG9icy5pZCwgb2JzKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgYXR0YWNoQ2xpY2tFdmVudCgnLnBvcHVwLWdyYXBoLWljb24tJyArIHBvaW50LmlkLCBudWxsKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICBsYXllcnNbcHJvcGVydHldLm9uKCdjbGljaycsICgpID0+IHtcbiAgICAgICAgICBsYXllcnNbcHJvcGVydHldLm9wZW5Qb3B1cCgpO1xuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG4gIH07XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBsZXQgbWFya2VyTG9jYXRpb24gPSBbcG9pbnRbJ2xhdGl0dWRlJ10sIHBvaW50Wydsb25naXR1ZGUnXV07XG5cbiAgICBpZiAobWFya2VyTG9jYXRpb25bMF0gIT09IG51bGwpIHtcbiAgICAgIGNyZWF0ZU1hbmhvbGVQb2ludChtYXJrZXJMb2NhdGlvbik7XG5cbiAgICAgIGlmIChwb2ludC5wYXJ0X29mX21vbml0b3JlZF9wYXRoICYmICFwb2ludC5oYXNfZGV2aWNlKSByZXR1cm47XG5cbiAgICAgIGlmIChcbiAgICAgICAgbWF0Y2hJY29uVG9Qb2ludChwb2ludCkgIT09IG51bGwgJiZcbiAgICAgICAgKGNlbnRlcmVkRXZlbnQgPT09IG51bGwgfHxcbiAgICAgICAgICAoY2VudGVyZWRFdmVudCAhPT0gbnVsbCAmJiBwb2ludElzT2JzZXJ2YXRpb24oKSkgfHxcbiAgICAgICAgICBwb2ludC5ncm91cC50eXBlID09PSAnR3JvdXBzOjpXYXN0ZXdhdGVyVHJlYXRtZW50UGxhbnQnKVxuICAgICAgKSB7XG4gICAgICAgIGNyZWF0ZUN1c3RvbUljb25Qb2ludChtYXJrZXJMb2NhdGlvbik7XG4gICAgICB9XG5cbiAgICAgIGlmIChmb2N1c2VkRXZlbnQgIT09IG51bGwgJiYgcG9pbnRJc09ic2VydmF0aW9uKCkpIHtcbiAgICAgICAgbGV0IGhhc1ByaW1hcnlJY29uID0gbWF0Y2hJY29uVG9Qb2ludChwb2ludCkgIT09IG51bGw7XG4gICAgICAgIGNyZWF0ZU9ic2VydmF0aW9uSWNvblBvaW50KG1hcmtlckxvY2F0aW9uLCBoYXNQcmltYXJ5SWNvbik7XG4gICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgaWYgKFxuICAgICAgICAgIGZvY3VzZWRFdmVudCAhPT0gbnVsbCAmJlxuICAgICAgICAgIGZvY3VzZWRFdmVudC5zYW1wbGluZ3MubGVuZ3RoICE9PSAwICYmXG4gICAgICAgICAgZm9jdXNlZEV2ZW50LnNhbXBsaW5nc1swXS5wb2ludF9pZCA9PT0gcG9pbnQuaWRcbiAgICAgICAgKSB7XG4gICAgICAgICAgY3JlYXRlU2FtcGxpbmdJY29uUG9pbnQobWFya2VyTG9jYXRpb24sIGhhc1ByaW1hcnlJY29uKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAoY2VudGVyZWRFdmVudCAhPT0gbnVsbCAmJiBwb2ludEJlbG9uZ3NUb0V2ZW50KCkpIHtcbiAgICAgICAgbGV0IG9icyA9IGNlbnRlcmVkRXZlbnQub2JzZXJ2YXRpb25zLmZpbHRlcihcbiAgICAgICAgICAob2JzKSA9PiBvYnMucG9pbnRfaWQgPT09IHBvaW50LmlkLFxuICAgICAgICApWzBdO1xuICAgICAgICBiaW5kUG9wdXBUb1BvaW50KG9icyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGZ1bmN0aW9uIGNsZWFudXAoKSB7XG4gICAgICAvLyBVTkJJTkQgUE9QVVBcbiAgICAgIHJlbW92ZUZyb21NYXAobWFwLCBwb2ludCwgJ09ic2VydmF0aW9uJyk7XG4gICAgICByZW1vdmVGcm9tTWFwKG1hcCwgcG9pbnQsICdQb2ludCcpO1xuICAgICAgcmVtb3ZlRnJvbU1hcChtYXAsIHBvaW50LCAnU2FtcGxpbmcnKTtcbiAgICAgIHJlbW92ZUZyb21NYXAobWFwLCBwb2ludCwgJ0ljb25OdW1iZXInKTtcbiAgICB9O1xuICB9LCBbY2VudGVyZWRFdmVudF0pO1xuXG4gIHJldHVybiA8ZGl2PjwvZGl2Pjtcbn07XG5cbmNvbnN0IGNvbm5lY3RvciA9IGNvbm5lY3QobWFwU3RhdGVUb1Byb3BzKTtcbmV4cG9ydCBkZWZhdWx0IGNvbm5lY3RvcihcbiAgUmVhY3QubWVtbyhQb2ludE1hcmtlciwgKHByZXZQcm9wcywgbmV4dFByb3BzKSA9PiB7XG4gICAgaWYgKFxuICAgICAgcHJldlByb3BzLmV2ZW50c19kYXRhLmZvY3VzZWRFdmVudCAhPT0gbmV4dFByb3BzLmV2ZW50c19kYXRhLmZvY3VzZWRFdmVudFxuICAgICkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIHJldHVybiB0cnVlO1xuICB9KSxcbik7XG4iXX0=
492
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9XaWRnZXRzL01hcC9wb2ludHMvUG9pbnRNYXJrZXIudHN4Il0sIm5hbWVzIjpbIm1hcFN0YXRlVG9Qcm9wcyIsInN0YXRlIiwiZXZlbnRzX2RhdGEiLCJQb2ludE1hcmtlciIsInByb3BzIiwiTCIsIm1hcCIsInBvaW50IiwiZm9jdXNlZEV2ZW50IiwiaG92ZXJlZEV2ZW50IiwiZGlzcGF0Y2giLCJjZW50ZXJlZEV2ZW50Iiwic2VsZWN0ZWRCYWNrZ3JvdW5kIiwiaWNvbiIsImljb25VcmwiLCJyZWRQaW5SZWRTaGFkb3ciLCJpY29uU2l6ZSIsImljb25BbmNob3IiLCJwb3B1cEFuY2hvciIsImJlbG9uZ3NUb1NvdXJjZUJhY2tncm91bmQiLCJ3aGl0ZVBpblJlZFNoYWRvdyIsInN0YW5kYXJkQmFja2dyb3VuZCIsInNlY29uZGFyeSIsInRoaXJkIiwid2hpdGVQaW5CbGFja1NoYWRvdyIsImNvbWJpbmVkRmFjdG9yeUljb24iLCJ5ZWxsb3dDaXJjbGVVUkwiLCJwbGFudEljb25VUkwiLCJjb21iaW5lZFB1bXBTdGF0aW9uSWNvbiIsImdyZWVuQ2lyY2xlVVJMIiwicHVtcFN0YXRpb25JY29uVVJMIiwiY29tYmluZWRDb2xsZWN0b3JzSWNvbiIsImNvbGxlY3Rvckljb24iLCJjb21iaW5lZFdXVFBJY29uIiwiYnJpZ2h0Qmx1ZUNpcmNsZVVSTCIsIldXVFBJY29uVVJMIiwibWFya2VyQmVsb25nc1RvU2VsZWN0ZWRTb3VyY2UiLCJzb3VyY2UiLCJzb3VyY2VzIiwiZmlsdGVyIiwicG9pbnRfaWQiLCJpZCIsInNlbGVjdGVkX3NvdXJjZSIsIm1hcmtlckJlbG9uZ3NUb1NvdXJjZSIsImlzQ29sbGVjdG9yRm9jdXNlZCIsIm9ic2VydmF0aW9ucyIsImxlbmd0aCIsIm1hdGNoSWNvblRvUG9pbnQiLCJncm91cCIsInR5cGUiLCJ1bnNoaWZ0Iiwid2F0ZXJJY29uTm9CYWNrZ3JvdW5kIiwiY3JlYXRlTWFuaG9sZVBvaW50IiwibWFya2VyTG9jYXRpb24iLCJwb2ludEljb24iLCJ3aGl0ZVBvaW50IiwibWFuaG9sZUljb24iLCJtYXJrZXIiLCJyaXNlT25Ib3ZlciIsImFkZFRvIiwiYmluZFRvb2x0aXAiLCJuYW1lIiwiY3JlYXRlQ3VzdG9tSWNvblBvaW50IiwiZm9yRWFjaCIsInBvaW50Q3VzdG9tSWNvbiIsInJlbGF0ZWRFdmVudHNBbW91bnQiLCJkaXZJY29uIiwiY2xhc3NOYW1lIiwiaHRtbCIsImNyZWF0ZVNhbXBsaW5nSWNvblBvaW50Iiwic2Vjb25kYXJ5SWNvbiIsInNhbXBsaW5nSWNvbiIsImJsdWVDaXJjbGVVUkwiLCJzYW1wbGluZ0ljb25VUkwiLCJjcmVhdGVPYnNlcnZhdGlvbkljb25Qb2ludCIsIm9ic2VydmF0aW9uSWNvbiIsInBpbmtDaXJjbGVVUkwiLCJvYnNlcnZhdGlvbkljb25VUkwiLCJwb3B1cENvbnRlbnQiLCJvYnMiLCJHcmFwaEljb24iLCJpMThuIiwidCIsInNldmVyaXR5IiwicG9pbnRJc09ic2VydmF0aW9uIiwicG9pbnRCZWxvbmdzVG9FdmVudCIsImJpbmRQb3B1cFRvUG9pbnQiLCJsYXllcnMiLCJfbGF5ZXJzIiwicHJvcGVydHkiLCJpbmNsdWRlcyIsImthbmRvX29iamVjdCIsImthbmRvX29iamVjdF9pZCIsImJpbmRQb3B1cCIsIm1pbldpZHRoIiwib24iLCJlIiwiZmlyc3RTZWVuIiwiZG9jdW1lbnQiLCJjcmVhdGVFbGVtZW50IiwibGFzdFNlZW4iLCJzZWN0b3IiLCJSZWFjdERPTSIsInJlbmRlciIsInN0YXJ0X3RpbWUiLCJ0aW1lX3pvbmUiLCJsYXN0X3NlZW5fdGltZSIsInNlY3Rvcl9uYW1lIiwic2VjdG9yX2ljb25fbmFtZSIsInNldFRpbWVvdXQiLCJhcHBlbmQiLCJhdHRhY2hDbGlja0V2ZW50Iiwic2VsZWN0b3IiLCJvYnNlcnZhdGlvbiIsImJvZHkiLCJvcGVuUG9wdXAiLCJldmVudHNWaWV3SG92ZXJlZCIsInBhcnRfb2ZfbW9uaXRvcmVkX3BhdGgiLCJoYXNfZGV2aWNlIiwiaGFzUHJpbWFyeUljb24iLCJzYW1wbGluZ3MiLCJjbGVhbnVwIiwiY29ubmVjdG9yIiwiUmVhY3QiLCJtZW1vIiwicHJldlByb3BzIiwibmV4dFByb3BzIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBOztBQUNBOztBQUNBOztBQUNBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBV0E7Ozs7QUFFQTs7QUFDQTs7Ozs7O0FBR0E7O0FBQ0E7O0FBQ0E7O0FBSUE7O0FBS0E7O0FBQ0E7Ozs7OztBQUVBLFNBQVNBLGVBQVQsQ0FBeUJDLEtBQXpCLEVBQTJDO0FBQ3pDLE1BQVFDLFdBQVIsR0FBd0JELEtBQXhCLENBQVFDLFdBQVI7QUFFQSxTQUFPO0FBQ0xBLElBQUFBLFdBQVcsRUFBWEE7QUFESyxHQUFQO0FBR0Q7O0FBUUQsSUFBTUMsV0FBNEIsR0FBRyxTQUEvQkEsV0FBK0IsQ0FBQ0MsS0FBRCxFQUFXO0FBQzlDLE1BQVFDLENBQVIsR0FBdUNELEtBQXZDLENBQVFDLENBQVI7QUFBQSxNQUFXQyxHQUFYLEdBQXVDRixLQUF2QyxDQUFXRSxHQUFYO0FBQUEsTUFBZ0JDLEtBQWhCLEdBQXVDSCxLQUF2QyxDQUFnQkcsS0FBaEI7QUFBQSxNQUF1QkwsV0FBdkIsR0FBdUNFLEtBQXZDLENBQXVCRixXQUF2QjtBQUNBLE1BQVFNLFlBQVIsR0FBdUNOLFdBQXZDLENBQVFNLFlBQVI7QUFBQSxNQUFzQkMsWUFBdEIsR0FBdUNQLFdBQXZDLENBQXNCTyxZQUF0QjtBQUNBLE1BQU1DLFFBQVEsR0FBRyw4QkFBakI7QUFFQSxNQUFNQyxhQUFhLEdBQUcsb0JBQ3BCO0FBQUEsV0FBTUgsWUFBWSxJQUFJQyxZQUF0QjtBQUFBLEdBRG9CLEVBRXBCLENBQUNELFlBQUQsRUFBZUMsWUFBZixDQUZvQixDQUF0QixDQUw4QyxDQVM5QztBQUNBOztBQUNBLE1BQU1HLGtCQUFrQixHQUFHLFNBQXJCQSxrQkFBcUIsR0FBTTtBQUMvQixXQUFPUCxDQUFDLENBQUNRLElBQUYsQ0FBTztBQUNaQyxNQUFBQSxPQUFPLEVB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cXVlcnknO1xuaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCwgdXNlTWVtbyB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBSZWFjdERPTSBmcm9tICdyZWFjdC1kb20nO1xuaW1wb3J0IHsgY29ubmVjdCwgQ29ubmVjdGVkUHJvcHMsIHVzZURpc3BhdGNoIH0gZnJvbSAncmVhY3QtcmVkdXgnO1xuaW1wb3J0IEdyYXBoSWNvbiBmcm9tICdzcmMvYXNzZXRzL2xpbmUtY2hhcnQuc3ZnJztcbmltcG9ydCBjb2xsZWN0b3JJY29uIGZyb20gJ3NyYy9hc3NldHMvbWFwL3Bpbi13YXRlci5zdmcnO1xuaW1wb3J0IHdhdGVySWNvbk5vQmFja2dyb3VuZCBmcm9tICdzcmMvYXNzZXRzL3BvaW50X2ljb25zL3dhdGVyLW5vLWJhY2tncm91bmQuc3ZnJztcbmltcG9ydCBibHVlQ2lyY2xlVVJMIGZyb20gJ3NyYy9hc3NldHMvcG9pbnRfaWNvbnMvYmx1ZS1jaXJjbGUuc3ZnJztcbmltcG9ydCBicmlnaHRCbHVlQ2lyY2xlVVJMIGZyb20gJ3NyYy9hc3NldHMvcG9pbnRfaWNvbnMvYnJpZ2h0LWJsdWUtY2lyY2xlLnN2Zyc7XG5pbXBvcnQgcGxhbnRJY29uVVJMIGZyb20gJ3NyYy9hc3NldHMvcG9pbnRfaWNvbnMvZmFjdG9yeS1pY29uLnN2Zyc7XG5pbXBvcnQgZ3JlZW5DaXJjbGVVUkwgZnJvbSAnc3JjL2Fzc2V0cy9wb2ludF9pY29ucy9ncmVlbi1jaXJjbGUuc3ZnJztcbmltcG9ydCBvYnNlcnZhdGlvbkljb25VUkwgZnJvbSAnc3JjL2Fzc2V0cy9wb2ludF9pY29ucy9vYnNlcnZhdGlvbi1pY29uLnN2Zyc7XG5pbXBvcnQgcGlua0NpcmNsZVVSTCBmcm9tICdzcmMvYXNzZXRzL3BvaW50X2ljb25zL3BpbmstY2lyY2xlLnN2Zyc7XG5pbXBvcnQgcHVtcFN0YXRpb25JY29uVVJMIGZyb20gJ3NyYy9hc3NldHMvcG9pbnRfaWNvbnMvcHVtcC1zdGF0aW9uLWljb24uc3ZnJztcbmltcG9ydCByZWRQaW5SZWRTaGFkb3cgZnJvbSAnc3JjL2Fzc2V0cy9wb2ludF9pY29ucy9yZWQtcGluLXJlZC1zaGFkb3cucG5nJztcbmltcG9ydCBzYW1wbGluZ0ljb25VUkwgZnJvbSAnc3JjL2Fzc2V0cy9wb2ludF9pY29ucy9zYW1wbGluZy1pY29uLnN2Zyc7XG5pbXBvcnQgd2hpdGVQaW5CbGFja1NoYWRvdyBmcm9tICdzcmMvYXNzZXRzL3BvaW50X2ljb25zL3doaXRlLXBpbi1ibGFjay1zaGFkb3cucG5nJztcbmltcG9ydCB3aGl0ZVBpblJlZFNoYWRvdyBmcm9tICdzcmMvYXNzZXRzL3BvaW50X2ljb25zL3doaXRlLXBpbi1yZWQtc2hhZG93LnBuZyc7XG5pbXBvcnQgV1dUUEljb25VUkwgZnJvbSAnc3JjL2Fzc2V0cy9wb2ludF9pY29ucy9XV1RQLWljb24uc3ZnJztcbmltcG9ydCB5ZWxsb3dDaXJjbGVVUkwgZnJvbSAnc3JjL2Fzc2V0cy9wb2ludF9pY29ucy95ZWxsb3ctY2lyY2xlLnN2Zyc7XG5pbXBvcnQgd2hpdGVQb2ludCBmcm9tICdzcmMvYXNzZXRzL3doaXRlLXBvaW50LnBuZyc7XG5pbXBvcnQgU2VjdG9yIGZyb20gJ3NyYy9jb21wb25lbnRzL1NlY3Rvcic7XG5pbXBvcnQgdXNlUmVtb3ZlRXhpc3RpbmdMYXllcnMsIHtcbiAgcmVtb3ZlRnJvbU1hcCxcbn0gZnJvbSAnc3JjL2hvb2tzL3VzZVJlbW92ZUV4aXN0aW5nTGF5ZXJzJztcbmltcG9ydCB7IElBcHBTdGF0ZSB9IGZyb20gJ3NyYy9tb2RlbHMvSUFwcFN0YXRlJztcbmltcG9ydCB7XG4gIGNsb3NlRmxvYXRpbmdHcmFwaCxcbiAgb3BlbkZsb2F0aW5nR3JhcGgsXG59IGZyb20gJ3NyYy9zdG9yZS9nbG9iYWwvYWN0aW9ucyc7XG5pbXBvcnQgeyBJUG9pbnQgfSBmcm9tICdzcmMvc3RvcmUvcG9pbnRzL21vZGVscy9JUG9pbnQnO1xuaW1wb3J0IGkxOG4gZnJvbSAnc3JjL3V0aWxpdGllcy9pMThuJztcbmltcG9ydCBUaW1lRm9ybWF0IGZyb20gJ3NyYy91dGlsaXRpZXMvVGltZUZvcm1hdCc7XG5cbmZ1bmN0aW9uIG1hcFN0YXRlVG9Qcm9wcyhzdGF0ZTogSUFwcFN0YXRlKSB7XG4gIGNvbnN0IHsgZXZlbnRzX2RhdGEgfSA9IHN0YXRlO1xuXG4gIHJldHVybiB7XG4gICAgZXZlbnRzX2RhdGEsXG4gIH07XG59XG5cbnR5cGUgUHJvcHMgPSBDb25uZWN0ZWRQcm9wczx0eXBlb2YgY29ubmVjdG9yPiAmIHtcbiAgbWFwOiBhbnk7XG4gIEw6IGFueTtcbiAgcG9pbnQ6IElQb2ludDtcbn07XG5cbmNvbnN0IFBvaW50TWFya2VyOiBSZWFjdC5GQzxQcm9wcz4gPSAocHJvcHMpID0+IHtcbiAgY29uc3QgeyBMLCBtYXAsIHBvaW50LCBldmVudHNfZGF0YSB9ID0gcHJvcHM7XG4gIGNvbnN0IHsgZm9jdXNlZEV2ZW50LCBob3ZlcmVkRXZlbnQgfSA9IGV2ZW50c19kYXRhO1xuICBjb25zdCBkaXNwYXRjaCA9IHVzZURpc3BhdGNoKCk7XG5cbiAgY29uc3QgY2VudGVyZWRFdmVudCA9IHVzZU1lbW8oXG4gICAgKCkgPT4gZm9jdXNlZEV2ZW50IHx8IGhvdmVyZWRFdmVudCxcbiAgICBbZm9jdXNlZEV2ZW50LCBob3ZlcmVkRXZlbnRdLFxuICApO1xuICAvLyBpY29uU2l6ZTogW3dpZHRoLCBoZWlnaHRdLFxuICAvLyBJY29uIEFuY2hvcjogWygtcmlnaHQpKCtsZWZ0KSwgKC1kb3duKSgrdXApXVxuICBjb25zdCBzZWxlY3RlZEJhY2tncm91bmQgPSAoKSA9PiB7XG4gICAgcmV0dXJuIEwuaWNvbih7XG4gICAgICBpY29uVXJsOiByZWRQaW5SZWRTaGFkb3csXG4gICAgICBpY29uU2l6ZTogWzY3LCA3MF0sXG4gICAgICBpY29uQW5jaG9yOiBbMzIsIDU0XSxcbiAgICAgIHBvcHVwQW5jaG9yOiBbMCwgLTMwXSxcbiAgICB9KTtcbiAgfTtcblxuICBjb25zdCBiZWxvbmdzVG9Tb3VyY2VCYWNrZ3JvdW5kID0gKCkgPT4ge1xuICAgIHJldHVybiBMLmljb24oe1xuICAgICAgaWNvblVybDogd2hpdGVQaW5SZWRTaGFkb3csXG4gICAgICBpY29uU2l6ZTogWzY3LCA3MF0sXG4gICAgICBpY29uQW5jaG9yOiBbMzIsIDU0XSxcbiAgICAgIHBvcHVwQW5jaG9yOiBbMCwgLTMwXSxcbiAgICB9KTtcbiAgfTtcblxuICBjb25zdCBzdGFuZGFyZEJhY2tncm91bmQgPSAoXG4gICAgc2Vjb25kYXJ5OiBib29sZWFuID0gZmFsc2UsXG4gICAgdGhpcmQ6IGJvb2xlYW4gPSBmYWxzZSxcbiAgKSA9PiB7XG4gICAgcmV0dXJuIEwuaWNvbih7XG4gICAgICBpY29uVXJsOiB3aGl0ZVBpbkJsYWNrU2hhZG93LFxuICAgICAgaWNvblNpemU6IHNlY29uZGFyeSA/IFsyMCwgMjBdIDogWzQzLCA0Nl0sXG4gICAgICBpY29uQW5jaG9yOlxuICAgICAgICBzZWNvbmRhcnkgJiYgdGhpcmQgPyBbLTIsIDE5XSA6IHNlY29uZGFyeSA/IFstMiwgNDRdIDogWzIwLCA0Ml0sXG4gICAgICBwb3B1cEFuY2hvcjogWzAsIC0zMF0sXG4gICAgfSk7XG4gIH07XG5cbiAgY29uc3QgY29tYmluZWRGYWN0b3J5SWNvbiA9IFtcbiAgICBMLmljb24oe1xuICAgICAgaWNvblVybDogeWVsbG93Q2lyY2xlVVJMLFxuICAgICAgaWNvblNpemU6IFsyNSwgMjRdLFxuICAgICAgaWNvbkFuY2hvcjogWzEwLjcsIDMzLjddLFxuICAgICAgcG9wdXBBbmNob3I6IFswLCAtMzBdLFxuICAgIH0pLFxuICAgIEwuaWNvbih7XG4gICAgICBpY29uVXJsOiBwbGFudEljb25VUkwsXG4gICAgICBpY29uU2l6ZTogWzE1LCAxNV0sXG4gICAgICBpY29uQW5jaG9yOiBbNSwgMzBdLFxuICAgICAgcG9wdXBBbmNob3I6IFswLCAtMzBdLFxuICAgIH0pLFxuICBdO1xuXG4gIGNvbnN0IGNvbWJpbmVkUHVtcFN0YXRpb25JY29uID0gW1xuICAgIEwuaWNvbih7XG4gICAgICBpY29uVXJsOiBncmVlbkNpcmNsZVVSTCxcbiAgICAgIGljb25TaXplOiBbMjUsIDI0XSxcbiAgICAgIGljb25BbmNob3I6IFsxMC43LCAzMy43XSxcbiAgICAgIHBvcHVwQW5jaG9yOiBbMCwgLTMwXSxcbiAgICB9KSxcbiAgICBMLmljb24oe1xuICAgICAgaWNvblVybDogcHVtcFN0YXRpb25JY29uVVJMLFxuICAgICAgaWNvblNpemU6IFsyMCwgMjBdLFxuICAgICAgaWNvbkFuY2hvcjogWzcsIDMyXSxcbiAgICAgIHBvcHVwQW5jaG9yOiBbMCwgLTMwXSxcbiAgICB9KSxcbiAgXTtcblxuICBjb25zdCBjb21iaW5lZENvbGxlY3RvcnNJY29uID0gW1xuICAgIEwuaWNvbih7XG4gICAgICBpY29uVXJsOiBjb2xsZWN0b3JJY29uLFxuICAgICAgaWNvblNpemU6IFs0NSwgNDVdLFxuXG4gICAgICBpY29uQW5jaG9yOiBbMjUsIDUwXSxcbiAgICAgIHBvcHVwQW5jaG9yOiBbMCwgLTMwXSxcbiAgICB9KSxcbiAgXTtcblxuICBjb25zdCBjb21iaW5lZFdXVFBJY29uID0gW1xuICAgIEwuaWNvbih7XG4gICAgICBpY29uVXJsOiBicmlnaHRCbHVlQ2lyY2xlVVJMLFxuICAgICAgaWNvblNpemU6IFsyNSwgMjVdLFxuICAgICAgaWNvbkFuY2hvcjogWzEwLjcsIDMzLjddLFxuICAgICAgcG9wdXBBbmNob3I6IFswLCAtMzBdLFxuICAgIH0pLFxuICAgIEwuaWNvbih7XG4gICAgICBpY29uVXJsOiBXV1RQSWNvblVSTCxcbiAgICAgIGljb25TaXplOiBbMjAsIDIwXSxcbiAgICAgIGljb25BbmNob3I6IFs4LCAzMV0sXG4gICAgICBwb3B1cEFuY2hvcjogWzAsIC0zMF0sXG4gICAgfSksXG4gIF07XG5cbiAgY29uc3QgbWFya2VyQmVsb25nc1RvU2VsZWN0ZWRTb3VyY2UgPSAoKSA9PiB7XG4gICAgbGV0IHNvdXJjZTtcblxuICAgIGlmIChjZW50ZXJlZEV2ZW50ICE9PSBudWxsKSB7XG4gICAgICBzb3VyY2UgPSBjZW50ZXJlZEV2ZW50LnNvdXJjZXMuZmlsdGVyKFxuICAgICAgICAoc291cmNlKSA9PiBzb3VyY2UucG9pbnRfaWQgPT09IHBvaW50LmlkLFxuICAgICAgKVswXTtcbiAgICB9XG5cbiAgICByZXR1cm4gKFxuICAgICAgY2VudGVyZWRFdmVudCAhPT0gbnVsbCAmJlxuICAgICAgc291cmNlICYmXG4gICAgICBjZW50ZXJlZEV2ZW50LnNlbGVjdGVkX3NvdXJjZSA9PT0gc291cmNlLnBvaW50X2lkXG4gICAgKTtcbiAgfTtcblxuICBjb25zdCBtYXJrZXJCZWxvbmdzVG9Tb3VyY2UgPSAoKSA9PiB7XG4gICAgcmV0dXJuIChcbiAgICAgIGNlbnRlcmVkRXZlbnQgIT09IG51bGwgJiZcbiAgICAgIGNlbnRlcmVkRXZlbnQuc291cmNlcy5maWx0ZXIoKHNvdXJjZSkgPT4gc291cmNlLnBvaW50X2lkID09PSBwb2ludC5pZClbMF1cbiAgICApO1xuICB9O1xuXG4gIGNvbnN0IGlzQ29sbGVjdG9yRm9jdXNlZCA9IChwb2ludDogSVBvaW50KSA9PiB7XG4gICAgcmV0dXJuIChcbiAgICAgIGNlbnRlcmVkRXZlbnQ/Lm9ic2VydmF0aW9ucz8ubGVuZ3RoID09PSAxICYmXG4gICAgICBwb2ludC5pZCA9PT0gY2VudGVyZWRFdmVudC5vYnNlcnZhdGlvbnNbMF0ucG9pbnRfaWRcbiAgICApO1xuICB9O1xuXG4gIGNvbnN0IG1hdGNoSWNvblRvUG9pbnQgPSAocG9pbnQ6IElQb2ludCkgPT4ge1xuICAgIHN3aXRjaCAocG9pbnQuZ3JvdXAudHlwZSkge1xuICAgICAgY2FzZSAnR3JvdXBzOjpGYWN0b3J5JzpcbiAgICAgICAgaWYgKGNvbWJpbmVkRmFjdG9yeUljb24ubGVuZ3RoID09PSAyKSB7XG4gICAgICAgICAgaWYgKG1hcmtlckJlbG9uZ3NUb1NlbGVjdGVkU291cmNlKCkpIHtcbiAgICAgICAgICAgIGNvbWJpbmVkRmFjdG9yeUljb24udW5zaGlmdChzZWxlY3RlZEJhY2tncm91bmQoKSk7XG4gICAgICAgICAgfSBlbHNlIGlmIChtYXJrZXJCZWxvbmdzVG9Tb3VyY2UoKSkge1xuICAgICAgICAgICAgY29tYmluZWRGYWN0b3J5SWNvbi51bnNoaWZ0KGJlbG9uZ3NUb1NvdXJjZUJhY2tncm91bmQoKSk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNvbWJpbmVkRmFjdG9yeUljb24udW5zaGlmdChzdGFuZGFyZEJhY2tncm91bmQoKSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGNvbWJpbmVkRmFjdG9yeUljb247XG4gICAgICBjYXNlICdHcm91cHM6OlB1bXBTdGF0aW9uJzpcbiAgICAgICAgaWYgKGNvbWJpbmVkUHVtcFN0YXRpb25JY29uLmxlbmd0aCA9PT0gMikge1xuICAgICAgICAgIGlmIChtYXJrZXJCZWxvbmdzVG9TZWxlY3RlZFNvdXJjZSgpKSB7XG4gICAgICAgICAgICBjb21iaW5lZFB1bXBTdGF0aW9uSWNvbi51bnNoaWZ0KHNlbGVjdGVkQmFja2dyb3VuZCgpKTtcbiAgICAgICAgICB9IGVsc2UgaWYgKG1hcmtlckJlbG9uZ3NUb1NvdXJjZSgpKSB7XG4gICAgICAgICAgICBjb21iaW5lZFB1bXBTdGF0aW9uSWNvbi51bnNoaWZ0KGJlbG9uZ3NUb1NvdXJjZUJhY2tncm91bmQoKSk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNvbWJpbmVkUHVtcFN0YXRpb25JY29uLnVuc2hpZnQoc3RhbmRhcmRCYWNrZ3JvdW5kKCkpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBjb21iaW5lZFB1bXBTdGF0aW9uSWNvbjtcbiAgICAgIGNhc2UgJ0dyb3Vwczo6V2FzdGV3YXRlclRyZWF0bWVudFBsYW50JzpcbiAgICAgICAgaWYgKGNvbWJpbmVkV1dUUEljb24ubGVuZ3RoID09PSAyKSB7XG4gICAgICAgICAgaWYgKG1hcmtlckJlbG9uZ3NUb1NlbGVjdGVkU291cmNlKCkpIHtcbiAgICAgICAgICAgIGNvbWJpbmVkV1dUUEljb24udW5zaGlmdChzZWxlY3RlZEJhY2tncm91bmQoKSk7XG4gICAgICAgICAgfSBlbHNlIGlmIChtYXJrZXJCZWxvbmdzVG9Tb3VyY2UoKSkge1xuICAgICAgICAgICAgY29tYmluZWRXV1RQSWNvbi51bnNoaWZ0KGJlbG9uZ3NUb1NvdXJjZUJhY2tncm91bmQoKSk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNvbWJpbmVkV1dUUEljb24udW5zaGlmdChzdGFuZGFyZEJhY2tncm91bmQoKSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGNvbWJpbmVkV1dUUEljb247XG5cbiAgICAgIGNhc2UgJ0dyb3Vwczo6Q29sbGVjdG9ycyc6XG4gICAgICAgIGlmIChpc0NvbGxlY3RvckZvY3VzZWQocG9pbnQpKSB7XG4gICAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgIEwuaWNvbih7XG4gICAgICAgICAgICAgIGljb25Vcmw6IHJlZFBpblJlZFNoYWRvdyxcbiAgICAgICAgICAgICAgaWNvblNpemU6IFs2MiwgNjJdLFxuICAgICAgICAgICAgICBpY29uQW5jaG9yOiBbMzAsIDUyXSxcbiAgICAgICAgICAgIH0pLFxuXG4gICAgICAgICAgICBMLmljb24oe1xuICAgICAgICAgICAgICBpY29uVXJsOiB3YXRlckljb25Ob0JhY2tncm91bmQsXG4gICAgICAgICAgICAgIGljb25TaXplOiBbNDYsIDQ2XSxcblxuICAgICAgICAgICAgICBpY29uQW5jaG9yOiBbMjIsIDQ0XSxcbiAgICAgICAgICAgICAgcG9wdXBBbmNob3I6IFswLCAtMzBdLFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgXTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBjb21iaW5lZENvbGxlY3RvcnNJY29uO1xuXG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgY3JlYXRlTWFuaG9sZVBvaW50ID0gKG1hcmtlckxvY2F0aW9uOiBvYmplY3QpID0+IHtcbiAgICBsZXQgcG9pbnRJY29uID0gTC5pY29uKHtcbiAgICAgIGljb25Vcmw6IHdoaXRlUG9pbnQsXG4gICAgICBpY29uU2l6ZTogWzksIDldLFxuICAgICAgaWNvbkFuY2hvcjogWzQuNSwgNC41XSxcbiAgICB9KTtcbiAgICBsZXQgbWFuaG9sZUljb246IGFueSA9IEwubWFya2VyKG1hcmtlckxvY2F0aW9uLCB7XG4gICAgICBpY29uOiBwb2ludEljb24sXG4gICAgICByaXNlT25Ib3ZlcjogdHJ1ZSxcbiAgICB9KS5hZGRUbyhtYXApO1xuICAgIG1hbmhvbGVJY29uLmJpbmRUb29sdGlwKGAke3BvaW50Lmdyb3VwLm5hbWV9ICgke3BvaW50LmlkfSlgKTtcbiAgICBtYW5ob2xlSWNvblsna2FuZG9fb2JqZWN0X2lkJ10gPSBwb2ludC5pZDtcbiAgICBtYW5ob2xlSWNvblsna2FuZG9fb2JqZWN0J10gPSAnUG9pbnQnO1xuICB9O1xuXG4gIGNvbnN0IGNyZWF0ZUN1c3RvbUljb25Qb2ludCA9IChtYXJrZXJMb2NhdGlvbjogb2JqZWN0KSA9PiB7XG4gICAgLy8gQHRzLWlnbm9yZVxuICAgIG1hdGNoSWNvblRvUG9pbnQocG9pbnQpICE9PSBudWxsICYmXG4gICAgICAvLyBAdHMtaWdub3JlXG4gICAgICBtYXRjaEljb25Ub1BvaW50KHBvaW50KS5mb3JFYWNoKChpY29uOiBhbnkpID0+IHtcbiAgICAgICAgbGV0IHBvaW50Q3VzdG9tSWNvbjogYW55ID0gTC5tYXJrZXIobWFya2VyTG9jYXRpb24sIHtcbiAgICAgICAgICBpY29uOiBpY29uLFxuICAgICAgICAgIHJpc2VPbkhvdmVyOiBmYWxzZSxcbiAgICAgICAgfSkuYWRkVG8obWFwKTtcbiAgICAgICAgcG9pbnRDdXN0b21JY29uLmJpbmRUb29sdGlwKGAke3BvaW50Lmdyb3VwLm5hbWV9ICgke3BvaW50LmlkfSlgKTtcbiAgICAgICAgcG9pbnRDdXN0b21JY29uWydrYW5kb19vYmplY3RfaWQnXSA9IHBvaW50LmlkO1xuICAgICAgICBwb2ludEN1c3RvbUljb25bJ2thbmRvX29iamVjdCddID0gJ1BvaW50JztcbiAgICAgIH0pO1xuXG4gICAgaWYgKHBvaW50LnJlbGF0ZWRFdmVudHNBbW91bnQpIHtcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZVxuICAgICAgbGV0IHBvaW50Q3VzdG9tSWNvbiA9IEwubWFya2VyKG1hcmtlckxvY2F0aW9uLCB7XG4gICAgICAgIGljb246IEwuZGl2SWNvbih7XG4gICAgICAgICAgY2xhc3NOYW1lOiBgY2lyY2xlLWV2ZW50cy1hbW91bnQgJHtcbiAgICAgICAgICAgIHBvaW50LnJlbGF0ZWRFdmVudHNBbW91bnQgPiAyID8gJ2FsZXJ0LWNvbG9yJyA6ICcnXG4gICAgICAgICAgfWAsXG4gICAgICAgICAgaHRtbDogYCR7cG9pbnQucmVsYXRlZEV2ZW50c0Ftb3VudH1gLFxuICAgICAgICAgIGljb25BbmNob3I6IFstNSwgNDJdLFxuICAgICAgICB9KSxcbiAgICAgICAgcmlzZU9uSG92ZXI6IGZhbHNlLFxuICAgICAgfSkuYWRkVG8obWFwKTtcblxuICAgICAgcG9pbnRDdXN0b21JY29uWydrYW5kb19vYmplY3RfaWQnXSA9IHBvaW50LmlkO1xuICAgICAgcG9pbnRDdXN0b21JY29uWydrYW5kb19vYmplY3QnXSA9ICdJY29uTnVtYmVyJztcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgY3JlYXRlU2FtcGxpbmdJY29uUG9pbnQgPSAoXG4gICAgbWFya2VyTG9jYXRpb246IG9iamVjdCxcbiAgICBzZWNvbmRhcnlJY29uOiBib29sZWFuLFxuICApID0+IHtcbiAgICAvLyBpY29uU2l6ZTogW3dpZHRoLCBoZWlnaHRdLFxuICAgIC8vIEljb24gQW5jaG9yOiBbKC1yaWdodCkoK2xlZnQpLCAoLWRvd24pKCt1cCldXG4gICAgbGV0IHNhbXBsaW5nSWNvbiA9IFtcbiAgICAgIEwuaWNvbih7XG4gICAgICAgIGljb25Vcmw6IGJsdWVDaXJjbGVVUkwsXG4gICAgICAgIGljb25TaXplOiBzZWNvbmRhcnlJY29uID8gWzEwLCAxMF0gOiBbMjUsIDI0XSxcbiAgICAgICAgaWNvbkFuY2hvcjogc2Vjb25kYXJ5SWNvbiA/IFstNywgMTVdIDogWzEwLjcsIDMzLjddLFxuICAgICAgICBwb3B1cEFuY2hvcjogWzAsIC0zMF0sXG4gICAgICB9KSxcbiAgICAgIEwuaWNvbih7XG4gICAgICAgIGljb25Vcmw6IHNhbXBsaW5nSWNvblVSTCxcbiAgICAgICAgaWNvblNpemU6IHNlY29uZGFyeUljb24gPyBbNywgN10gOiBbMTMsIDE1XSxcbiAgICAgICAgaWNvbkFuY2hvcjogc2Vjb25kYXJ5SWNvbiA/IFstOCwgMTNdIDogWzUsIDMwXSxcbiAgICAgICAgcG9wdXBBbmNob3I6IFswLCAtMzBdLFxuICAgICAgfSksXG4gICAgXTtcblxuICAgIGlmIChtYXJrZXJCZWxvbmdzVG9TZWxlY3RlZFNvdXJjZSgpICYmICFzZWNvbmRhcnlJY29uKSB7XG4gICAgICBzYW1wbGluZ0ljb24udW5zaGlmdChzZWxlY3RlZEJhY2tncm91bmQoKSk7XG4gICAgfSBlbHNlIGlmIChtYXJrZXJCZWxvbmdzVG9Tb3VyY2UoKSAmJiAhc2Vjb25kYXJ5SWNvbikge1xuICAgICAgc2FtcGxpbmdJY29uLnVuc2hpZnQoYmVsb25nc1RvU291cmNlQmFja2dyb3VuZCgpKTtcbiAgICB9IGVsc2Uge1xuICAgICAgc2FtcGxpbmdJY29uLnVuc2hpZnQoc3RhbmRhcmRCYWNrZ3JvdW5kKHNlY29uZGFyeUljb24sIHRydWUpKTtcbiAgICB9XG5cbiAgICBzYW1wbGluZ0ljb24uZm9yRWFjaCgoaWNvbikgPT4ge1xuICAgICAgbGV0IHBvaW50Q3VzdG9tSWNvbjogYW55ID0gTC5tYXJrZXIobWFya2VyTG9jYXRpb24sIHtcbiAgICAgICAgaWNvbjogaWNvbixcbiAgICAgICAgcmlzZU9uSG92ZXI6IGZhbHNlLFxuICAgICAgfSkuYWRkVG8obWFwKTtcbiAgICAgIHBvaW50Q3VzdG9tSWNvbi5iaW5kVG9vbHRpcChgJHtwb2ludC5ncm91cC5uYW1lfSAoJHtwb2ludC5pZH0pYCk7XG4gICAgICBwb2ludEN1c3RvbUljb25bJ2thbmRvX29iamVjdF9pZCddID0gcG9pbnQuaWQ7XG4gICAgICBwb2ludEN1c3RvbUljb25bJ2thbmRvX29iamVjdCddID0gJ1NhbXBsaW5nJztcbiAgICB9KTtcbiAgfTtcblxuICBjb25zdCBjcmVhdGVPYnNlcnZhdGlvbkljb25Qb2ludCA9IChcbiAgICBtYXJrZXJMb2NhdGlvbjogb2JqZWN0LFxuICAgIHNlY29uZGFyeUljb246IGJvb2xlYW4sXG4gICkgPT4ge1xuICAgIC8vIGljb25TaXplOiBbd2lkdGgsIGhlaWdodF0sXG4gICAgLy8gSWNvbiBBbmNob3I6IFsoLXJpZ2h0KSgrbGVmdCksICgtZG93bikoK3VwKV1cbiAgICBsZXQgb2JzZXJ2YXRpb25JY29uID0gW1xuICAgICAgTC5pY29uKHtcbiAgICAgICAgaWNvblVybDogcGlua0NpcmNsZVVSTCxcbiAgICAgICAgaWNvblNpemU6IHNlY29uZGFyeUljb24gPyBbMTAsIDEwXSA6IFsyNSwgMjRdLFxuICAgICAgICBpY29uQW5jaG9yOiBzZWNvbmRhcnlJY29uID8gWy03LCA0MF0gOiBbMTAuNywgMzMuN10sXG4gICAgICAgIHBvcHVwQW5jaG9yOiBbMCwgLTMwXSxcbiAgICAgIH0pLFxuICAgICAgTC5pY29uKHtcbiAgICAgICAgaWNvblVybDogb2JzZXJ2YXRpb25JY29uVVJMLFxuICAgICAgICBpY29uU2l6ZTogc2Vjb25kYXJ5SWNvbiA/IFs3LCA3XSA6IFsxMywgMTVdLFxuICAgICAgICBpY29uQW5jaG9yOiBzZWNvbmRhcnlJY29uID8gWy04LCAzOF0gOiBbNSwgMzBdLFxuICAgICAgICBwb3B1cEFuY2hvcjogWzAsIC0zMF0sXG4gICAgICB9KSxcbiAgICBdO1xuXG4gICAgaWYgKG1hcmtlckJlbG9uZ3NUb1NlbGVjdGVkU291cmNlKCkgJiYgIXNlY29uZGFyeUljb24pIHtcbiAgICAgIG9ic2VydmF0aW9uSWNvbi51bnNoaWZ0KHNlbGVjdGVkQmFja2dyb3VuZCgpKTtcbiAgICB9IGVsc2UgaWYgKG1hcmtlckJlbG9uZ3NUb1NvdXJjZSgpICYmICFzZWNvbmRhcnlJY29uKSB7XG4gICAgICBvYnNlcnZhdGlvbkljb24udW5zaGlmdChiZWxvbmdzVG9Tb3VyY2VCYWNrZ3JvdW5kKCkpO1xuICAgIH0gZWxzZSB7XG4gICAgICBvYnNlcnZhdGlvbkljb24udW5zaGlmdChzdGFuZGFyZEJhY2tncm91bmQoc2Vjb25kYXJ5SWNvbikpO1xuICAgIH1cblxuICAgIG9ic2VydmF0aW9uSWNvbi5mb3JFYWNoKChpY29uKSA9PiB7XG4gICAgICBsZXQgcG9pbnRDdXN0b21JY29uOiBhbnkgPSBMLm1hcmtlcihtYXJrZXJMb2NhdGlvbiwge1xuICAgICAgICBpY29uOiBpY29uLFxuICAgICAgICByaXNlT25Ib3ZlcjogZmFsc2UsXG4gICAgICB9KS5hZGRUbyhtYXApO1xuICAgICAgcG9pbnRDdXN0b21JY29uLmJpbmRUb29sdGlwKGAke3BvaW50Lmdyb3VwLm5hbWV9ICgke3BvaW50LmlkfSlgKTtcbiAgICAgIHBvaW50Q3VzdG9tSWNvblsna2FuZG9fb2JqZWN0X2lkJ10gPSBwb2ludC5pZDtcbiAgICAgIHBvaW50Q3VzdG9tSWNvblsna2FuZG9fb2JqZWN0J10gPSAnT2JzZXJ2YXRpb24nO1xuICAgIH0pO1xuICB9O1xuXG4gIGNvbnN0IHBvcHVwQ29udGVudCA9IChvYnM6IGFueSkgPT4ge1xuICAgIGlmIChvYnMgPT09IG51bGwpIHtcbiAgICAgIHJldHVybiBgXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZXZlbnQtcG9wdXBcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicG9wdXAtZ3JhcGgtaWNvbiBwb3B1cC1ncmFwaC1pY29uLSR7cG9pbnQuaWR9XCI+XG4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiJHtHcmFwaEljb259XCIvPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwb3B1cC1jb250ZW50XCI+XG4gICAgICAgICAgICAgICAgICAgIDxoNSBjbGFzcz1cInBvcHVwLWNvbnRlbnRfX3NpdGUtbmFtZVwiPjxiPiR7cG9pbnQuZ3JvdXAubmFtZX08L2I+PC9oNT5cbiAgICAgICAgICAgICAgICAgICAgPGhyLz5cbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9XCJzZWN0b3JcIj48L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgYDtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIGBcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJldmVudC1wb3B1cFwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwb3B1cC1ncmFwaC1pY29uIHBvcHVwLWdyYXBoLWljb24tJHtvYnMuaWR9XCI+XG4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiJHtHcmFwaEljb259XCIvPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwb3B1cC1jb250ZW50XCI+XG4gICAgICAgICAgICAgICAgICAgIDxoNSBjbGFzcz1cInBvcHVwLWNvbnRlbnRfX3NpdGUtbmFtZVwiPjxiPiR7XG4gICAgICAgICAgICAgICAgICAgICAgcG9pbnQuZ3JvdXAubmFtZVxuICAgICAgICAgICAgICAgICAgICB9PC9iPjwvaDU+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwb3B1cC1jb250ZW50X19zZXZlcml0eVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJwb3B1cC1jb250ZW50X19zZXZlcml0eS1wXCI+JHtpMThuLnQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGBldmVudHNfb3ZlcnZpZXcuc2V2ZXJpdHlgLFxuICAgICAgICAgICAgICAgICAgICAgICAgKX08L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIiR7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICdwb3B1cC1jb250ZW50X19zZXZlcml0eS0tJyArIG9icy5zZXZlcml0eVxuICAgICAgICAgICAgICAgICAgICAgICAgfVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxiIGNsYXNzPVwicG9wdXAtY29udGVudF9fc2V2ZXJpdHktYlwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAke2kxOG4udChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgZXZlbnRzX292ZXJ2aWV3LnNldmVyaXRpZXMuJHtvYnMuc2V2ZXJpdHl9YCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2I+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgPGhyIGNsYXNzPVwicG9wdXAtY29udGVudF9faHJcIiAvPlxuXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwb3B1cC1jb250ZW50X19kaXNjaGFyZ2UtdGltZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cInBvcHVwLWNvbnRlbnRfX3NldmVyaXR5LXBcIj4ke2kxOG4udChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGBldmVudHNfb3ZlcnZpZXcuZmlyc3Rfc2VlbmAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKX06PC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPjxiIGlkPVwiZmlyc3Qtc2Vlbi1wb3B1cFwiPjwvYj48L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJwb3B1cC1jb250ZW50X19zZXZlcml0eS1wXCI+JHtpMThuLnQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgZXZlbnRzX292ZXJ2aWV3Lmxhc3Rfc2VlbmAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKX06PC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPjxiIGlkPVwibGFzdC1zZWVuLXBvcHVwXCI+PC9iPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICBgO1xuICAgIH1cbiAgfTtcblxuICB1c2VSZW1vdmVFeGlzdGluZ0xheWVycyhtYXAsIHBvaW50LCAnUG9pbnQnKTtcbiAgdXNlUmVtb3ZlRXhpc3RpbmdMYXllcnMobWFwLCBwb2ludCwgJ09ic2VydmF0aW9uJyk7XG4gIHVzZVJlbW92ZUV4aXN0aW5nTGF5ZXJzKG1hcCwgcG9pbnQsICdTYW1wbGluZycpO1xuICB1c2VSZW1vdmVFeGlzdGluZ0xheWVycyhtYXAsIHBvaW50LCAnSWNvbk51bWJlcicpO1xuXG4gIGNvbnN0IHBvaW50SXNPYnNlcnZhdGlvbiA9ICgpID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgY2VudGVyZWRFdmVudCAhPT0gbnVsbCAmJlxuICAgICAgY2VudGVyZWRFdmVudC5vYnNlcnZhdGlvbnMuZmlsdGVyKChvYnMpID0+IG9icy5wb2ludF9pZCA9PT0gcG9pbnQuaWQpWzBdXG4gICAgKTtcbiAgfTtcblxuICBjb25zdCBwb2ludEJlbG9uZ3NUb0V2ZW50ID0gKCkgPT4ge1xuICAgIHJldHVybiB0cnVlO1xuICB9O1xuXG4gIGNvbnN0IGJpbmRQb3B1cFRvUG9pbnQgPSAob2JzOiBhbnkgPSBudWxsKSA9PiB7XG4gICAgbGV0IGxheWVycyA9IG1hcC5fbGF5ZXJzO1xuICAgIGZvciAoY29uc3QgcHJvcGVydHkgaW4gbGF5ZXJzKSB7XG4gICAgICBpZiAoXG4gICAgICAgIFsnUG9pbnQnLCAnT2JzZXJ2YXRpb24nXS5pbmNsdWRlcyhsYXllcnNbcHJvcGVydHldLmthbmRvX29iamVjdCkgJiZcbiAgICAgICAgbGF5ZXJzW3Byb3BlcnR5XS5rYW5kb19vYmplY3RfaWQgPT09IHBvaW50LmlkXG4gICAgICApIHtcbiAgICAgICAgbGF5ZXJzW3Byb3BlcnR5XS5iaW5kUG9wdXAocG9wdXBDb250ZW50KG9icyksIHtcbiAgICAgICAgICBtaW5XaWR0aDogMjAwLFxuICAgICAgICB9KTtcbiAgICAgICAgbGF5ZXJzW3Byb3BlcnR5XS5vbigncG9wdXBvcGVuJywgZnVuY3Rpb24gKGU6IGFueSkge1xuICAgICAgICAgIGlmIChmb2N1c2VkRXZlbnQgIT09IG51bGwpIHtcbiAgICAgICAgICAgIGxldCBmaXJzdFNlZW4gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcbiAgICAgICAgICAgIGxldCBsYXN0U2VlbiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICAgICAgICAgICAgbGV0IHNlY3RvciA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuXG4gICAgICAgICAgICBpZiAob2JzICE9PSBudWxsKSB7XG4gICAgICAgICAgICAgIFJlYWN0RE9NLnJlbmRlcihcbiAgICAgICAgICAgICAgICA8VGltZUZvcm1hdFxuICAgICAgICAgICAgICAgICAgdGltZXN0YW1wPXtvYnMuc3RhcnRfdGltZX1cbiAgICAgICAgICAgICAgICAgIHRpbWVfem9uZT17b2JzLnRpbWVfem9uZX1cbiAgICAgICAgICAgICAgICAvPixcbiAgICAgICAgICAgICAgICBmaXJzdFNlZW4sXG4gICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgIFJlYWN0RE9NLnJlbmRlcihcbiAgICAgICAgICAgICAgICA8VGltZUZvcm1hdFxuICAgICAgICAgICAgICAgICAgdGltZXN0YW1wPXtvYnMubGFzdF9zZWVuX3RpbWV9XG4gICAgICAgICAgICAgICAgICB0aW1lX3pvbmU9e29icy50aW1lX3pvbmV9XG4gICAgICAgICAgICAgICAgLz4sXG4gICAgICAgICAgICAgICAgbGFzdFNlZW4sXG4gICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICBSZWFjdERPTS5yZW5kZXIoXG4gICAgICAgICAgICAgICAgPFNlY3RvclxuICAgICAgICAgICAgICAgICAgc2VjdG9yTmFtZT17cG9pbnQuZ3JvdXAuc2VjdG9yX25hbWV9XG4gICAgICAgICAgICAgICAgICBzZWN0b3JJY29uTmFtZT17cG9pbnQuZ3JvdXAuc2VjdG9yX2ljb25fbmFtZX1cbiAgICAgICAgICAgICAgICAgIHdpZHRoPVwiMzdcIlxuICAgICAgICAgICAgICAgIC8+LFxuICAgICAgICAgICAgICAgIHNlY3RvcixcbiAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgICQoJyNmaXJzdC1zZWVuLXBvcHVwJykuYXBwZW5kKGZpcnN0U2Vlbik7XG4gICAgICAgICAgICAgICQoJyNsYXN0LXNlZW4tcG9wdXAnKS5hcHBlbmQobGFzdFNlZW4pO1xuICAgICAgICAgICAgICAkKCcjc2VjdG9yJykuYXBwZW5kKHNlY3Rvcik7XG4gICAgICAgICAgICB9LCAyMDApO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGxldCBhdHRhY2hDbGlja0V2ZW50ID0gKHNlbGVjdG9yOiBzdHJpbmcsIG9ic2VydmF0aW9uOiBhbnkpID0+IHtcbiAgICAgICAgICAgICQoZG9jdW1lbnQuYm9keSkub24oJ2NsaWNrJywgc2VsZWN0b3IsICgpID0+IHtcbiAgICAgICAgICAgICAgZGlzcGF0Y2goY2xvc2VGbG9hdGluZ0dyYXBoKCkpO1xuICAgICAgICAgICAgICBkaXNwYXRjaChvcGVuRmxvYXRpbmdHcmFwaCh0cnVlLCBvYnNlcnZhdGlvbiwgcG9pbnQpKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH07XG5cbiAgICAgICAgICBpZiAob2JzICE9PSBudWxsKSB7XG4gICAgICAgICAgICBhdHRhY2hDbGlja0V2ZW50KCcucG9wdXAtZ3JhcGgtaWNvbi0nICsgb2JzLmlkLCBvYnMpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBhdHRhY2hDbGlja0V2ZW50KCcucG9wdXAtZ3JhcGgtaWNvbi0nICsgcG9pbnQuaWQsIG51bGwpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIGxheWVyc1twcm9wZXJ0eV0ub24oJ2NsaWNrJywgKCkgPT4ge1xuICAgICAgICAgIGxheWVyc1twcm9wZXJ0eV0ub3BlblBvcHVwKCk7XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cbiAgfTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGxldCBtYXJrZXJMb2NhdGlvbiA9IFtwb2ludFsnbGF0aXR1ZGUnXSwgcG9pbnRbJ2xvbmdpdHVkZSddXTtcbiAgICBpZiAoIXBvaW50LmV2ZW50c1ZpZXdIb3ZlcmVkKSBjcmVhdGVNYW5ob2xlUG9pbnQobWFya2VyTG9jYXRpb24pO1xuXG4gICAgaWYgKG1hcmtlckxvY2F0aW9uWzBdICE9PSBudWxsKSB7XG4gICAgICBpZiAocG9pbnQucGFydF9vZl9tb25pdG9yZWRfcGF0aCAmJiAhcG9pbnQuaGFzX2RldmljZSkgcmV0dXJuO1xuICAgICAgaWYgKFxuICAgICAgICBtYXRjaEljb25Ub1BvaW50KHBvaW50KSAhPT0gbnVsbCAmJlxuICAgICAgICAoY2VudGVyZWRFdmVudCA9PT0gbnVsbCB8fFxuICAgICAgICAgIChjZW50ZXJlZEV2ZW50ICE9PSBudWxsICYmIHBvaW50SXNPYnNlcnZhdGlvbigpKSB8fFxuICAgICAgICAgIHBvaW50Lmdyb3VwLnR5cGUgPT09ICdHcm91cHM6Oldhc3Rld2F0ZXJUcmVhdG1lbnRQbGFudCcpXG4gICAgICApIHtcbiAgICAgICAgaWYgKHBvaW50LmV2ZW50c1ZpZXdIb3ZlcmVkKSBjcmVhdGVNYW5ob2xlUG9pbnQobWFya2VyTG9jYXRpb24pO1xuICAgICAgICBjcmVhdGVDdXN0b21JY29uUG9pbnQobWFya2VyTG9jYXRpb24pO1xuICAgICAgfVxuXG4gICAgICBpZiAoZm9jdXNlZEV2ZW50ICE9PSBudWxsICYmIHBvaW50SXNPYnNlcnZhdGlvbigpKSB7XG4gICAgICAgIGxldCBoYXNQcmltYXJ5SWNvbiA9IG1hdGNoSWNvblRvUG9pbnQocG9pbnQpICE9PSBudWxsO1xuICAgICAgICBjcmVhdGVPYnNlcnZhdGlvbkljb25Qb2ludChtYXJrZXJMb2NhdGlvbiwgaGFzUHJpbWFyeUljb24pO1xuICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgIGlmIChcbiAgICAgICAgICBmb2N1c2VkRXZlbnQgIT09IG51bGwgJiZcbiAgICAgICAgICBmb2N1c2VkRXZlbnQuc2FtcGxpbmdzLmxlbmd0aCAhPT0gMCAmJlxuICAgICAgICAgIGZvY3VzZWRFdmVudC5zYW1wbGluZ3NbMF0ucG9pbnRfaWQgPT09IHBvaW50LmlkXG4gICAgICAgICkge1xuICAgICAgICAgIGNyZWF0ZVNhbXBsaW5nSWNvblBvaW50KG1hcmtlckxvY2F0aW9uLCBoYXNQcmltYXJ5SWNvbik7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaWYgKGNlbnRlcmVkRXZlbnQgIT09IG51bGwgJiYgcG9pbnRCZWxvbmdzVG9FdmVudCgpKSB7XG4gICAgICAgIGxldCBvYnMgPSBjZW50ZXJlZEV2ZW50Lm9ic2VydmF0aW9ucy5maWx0ZXIoXG4gICAgICAgICAgKG9icykgPT4gb2JzLnBvaW50X2lkID09PSBwb2ludC5pZCxcbiAgICAgICAgKVswXTtcbiAgICAgICAgYmluZFBvcHVwVG9Qb2ludChvYnMpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBmdW5jdGlvbiBjbGVhbnVwKCkge1xuICAgICAgLy8gVU5CSU5EIFBPUFVQXG4gICAgICByZW1vdmVGcm9tTWFwKG1hcCwgcG9pbnQsICdPYnNlcnZhdGlvbicpO1xuICAgICAgcmVtb3ZlRnJvbU1hcChtYXAsIHBvaW50LCAnUG9pbnQnKTtcbiAgICAgIHJlbW92ZUZyb21NYXAobWFwLCBwb2ludCwgJ1NhbXBsaW5nJyk7XG4gICAgICByZW1vdmVGcm9tTWFwKG1hcCwgcG9pbnQsICdJY29uTnVtYmVyJyk7XG4gICAgfTtcbiAgfSwgW2NlbnRlcmVkRXZlbnRdKTtcblxuICByZXR1cm4gPGRpdj48L2Rpdj47XG59O1xuXG5jb25zdCBjb25uZWN0b3IgPSBjb25uZWN0KG1hcFN0YXRlVG9Qcm9wcyk7XG5leHBvcnQgZGVmYXVsdCBjb25uZWN0b3IoXG4gIFJlYWN0Lm1lbW8oUG9pbnRNYXJrZXIsIChwcmV2UHJvcHMsIG5leHRQcm9wcykgPT4ge1xuICAgIGlmIChcbiAgICAgIHByZXZQcm9wcy5ldmVudHNfZGF0YS5mb2N1c2VkRXZlbnQgIT09IG5leHRQcm9wcy5ldmVudHNfZGF0YS5mb2N1c2VkRXZlbnRcbiAgICApIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfSksXG4pO1xuIl19
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- var packageJsonVersion = "1.2.64-alpha.5";
3
+ var packageJsonVersion = "1.2.64-alpha.7";
4
4
 
5
5
  if (typeof packageJsonVersion === 'string') {
6
6
  // eslint-disable-next-line no-console
@@ -104,6 +104,7 @@ var EventsMapContainer = function EventsMapContainer(props) {
104
104
  }
105
105
 
106
106
  newPoint.relatedEventsAmount = EventsPerSite[point.id] || 0;
107
+ newPoint.eventsViewHovered = true;
107
108
  return newPoint;
108
109
  });
109
110
  }, [points_data, EventsPerSite, events_data.focusedEvent, events_data.hoveredEvent]); // eslint-disable-next-line
@@ -151,4 +152,4 @@ var EventsMapContainer = function EventsMapContainer(props) {
151
152
  };
152
153
 
153
154
  exports.EventsMapContainer = EventsMapContainer;
154
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wYWdlcy9FdmVudHNQYWdlL0V2ZW50c01hcENvbnRhaW5lci9FdmVudHNNYXBDb250YWluZXIudHN4Il0sIm5hbWVzIjpbIkV2ZW50c01hcENvbnRhaW5lciIsInByb3BzIiwiZGlzcGF0Y2giLCJSZWR1eFN0YXRlIiwic3RhdGUiLCJhcmVhc19kYXRhIiwiZ2xvYmFsX2RhdGEiLCJwb2ludHNfZGF0YSIsImV2ZW50c19kYXRhIiwiZWRnZXNfZGF0YSIsImlzVGltZUZpbHRlck5vdFNlbGVjdGVkIiwiZmlsdGVycyIsImFjdGl2ZUZpbHRlciIsImZpbHRlcl9pdGVtcyIsImxlbmd0aCIsImluZGV4IiwidHlwZSIsIm1hcHBlZEFyZWFzIiwiRXZlbnRzUGVyU2l0ZSIsIml0ZW1zIiwiTXVzdFNlZW5TaXRlcyIsImZvY3VzZWRFdmVudCIsImhvdmVyZWRFdmVudCIsIm1hcHBlZFBvaW50cyIsIm1hcCIsInBvaW50IiwibmV3UG9pbnQiLCJpZCIsImdyb3VwIiwiaGlkZSIsInJlbGF0ZWRFdmVudHNBbW91bnQiLCJtYXBwZWRFZGdlcyIsImZpbHRlciIsImVkZ2UiLCJOdW1iZXIiLCJzb3VyY2VfcG9pbnRfaWQiLCJ0YXJnZXRfcG9pbnRfaWQiLCJhcmVhVG9DZW50ZXJCeSIsIndhdGVyQXV0aG9yaXR5SWQiLCJmb2N1c2VkRXZlbnRQYXRocyIsImhvdmVyZWRFdmVudFBhdGhzIiwiaG92ZXJlZEVkZ2VQYXRocyIsImZsb2F0aW5nR3JhcGgiLCJvcGVuIiwiZG5kR3JhcGhJbml0T3B0aW9ucyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7OztBQUFBOztBQUNBOztBQUNBOztBQU1BOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOzs7Ozs7QUFJTyxJQUFNQSxrQkFBcUQsR0FBRyxTQUF4REEsa0JBQXdELENBQ25FQyxLQURtRSxFQUVoRTtBQUFBOztBQUNILE1BQU1DLFFBQVEsR0FBRyw4QkFBakI7QUFD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QjFDLFFBQUFBLFFBQVEsQ0FBQyxtQ0FBRCxDQUFSO0FBQ0QsT0FMSDtBQU1FLE1BQUEsdUJBQXVCLEVBQUVJLFdBQVcsQ0FBQ29DLGFBTnZDO0FBT0UsTUFBQSxVQUFVLEVBQUVsQyxXQUFGLGFBQUVBLFdBQUYsdUJBQUVBLFdBQVcsQ0FBRWEsWUFQM0I7QUFRRSxNQUFBLE9BQU8sRUFBRWYsV0FBRixhQUFFQSxXQUFGLGdEQUFFQSxXQUFXLENBQUVvQyxhQUFmLG9GQUFFLHNCQUE0QmpCLEtBQTlCLDJEQUFFLHVCQUFtQ0U7QUFSOUM7QUFGSCxHQURILENBakJKLENBREY7QUFxQ0QsQ0E1SU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0LCB1c2VNZW1vIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgdXNlRGlzcGF0Y2gsIHVzZVNlbGVjdG9yIH0gZnJvbSAncmVhY3QtcmVkdXgnO1xuaW1wb3J0IHtcbiAgYXJlYXNNYXBwZXIsXG4gIENvdW50RXZlbnRzUGVyU2l0ZUlELFxuICBnZXRBcmVhc1RvQ2VudGVyQnksXG4gIGdldEZvY3VzZWRFdmVudE11c3RTZWVuU2l0ZXMsXG59IGZyb20gJ3NyYy9wYWdlcy9FdmVudHNQYWdlL0V2ZW50c01hcENvbnRhaW5lci9FdmVudHNNYXBDb250YWluZXJIZWxwZXJzJztcbmltcG9ydCB7IGZldGNoQXJlYXMgfSBmcm9tICdzcmMvc3RvcmUvYXJlYXMvYWN0aW9ucyc7XG5pbXBvcnQgeyBmZXRjaEVkZ2VzIH0gZnJvbSAnc3JjL3N0b3JlL2VkZ2VzL2FjdGlvbnMnO1xuaW1wb3J0IHsgZmV0Y2hQb2ludHMgfSBmcm9tICdzcmMvc3RvcmUvcG9pbnRzL2FjdGlvbnMnO1xuaW1wb3J0IHsgTWFwIH0gZnJvbSAnc3JjL1dpZGdldHMvTWFwL01hcCc7XG5pbXBvcnQgRmxvYXRpbmdHcmFwaCBmcm9tICdzcmMvcGFnZXMvRXZlbnRzUGFnZS9GbG9hdGluZ0dyYXBoL0Zsb2F0aW5nR3JhcGgnO1xuaW1wb3J0IHsgZG5kR3JhcGhJbml0T3B0aW9ucyB9IGZyb20gJ3NyYy9XaWRnZXRzL01hcC9HcmFwaFV0aWxzJztcbmltcG9ydCB7IGNsb3NlRmxvYXRpbmdHcmFwaCB9IGZyb20gJ3NyYy9zdG9yZS9nbG9iYWwvYWN0aW9ucyc7XG5pbXBvcnQgRHJhZ0FuZERyb3BBcmVhIGZyb20gJy4uL0RyYWdBbmREcm9wQXJlYSc7XG5pbnRlcmZhY2UgRXZlbnRzTWFwQ29udGFpbmVyUHJvcHMge1xuICBzaG93U2Vjb25kTWFwOiBib29sZWFuO1xufVxuZXhwb3J0IGNvbnN0IEV2ZW50c01hcENvbnRhaW5lcjogUmVhY3QuRkM8RXZlbnRzTWFwQ29udGFpbmVyUHJvcHM+ID0gKFxuICBwcm9wcyxcbikgPT4ge1xuICBjb25zdCBkaXNwYXRjaCA9IHVzZURpc3BhdGNoKCk7XG4gIGNvbnN0IFJlZHV4U3RhdGUgPSB1c2VTZWxlY3Rvcigoc3RhdGUpID0+IHN0YXRlKTtcbiAgY29uc3QgeyBhcmVhc19kYXRhLCBnbG9iYWxfZGF0YSwgcG9pbnRzX2RhdGEsIGV2ZW50c19kYXRhLCBlZGdlc19kYXRhIH0gPVxuICAgIFJlZHV4U3RhdGU7XG5cbiAgY29uc3QgaXNUaW1lRmlsdGVyTm90U2VsZWN0ZWQgPSB1c2VNZW1vKCgpID0+IHtcbiAgICBjb25zdCBmaWx0ZXJzID0gZ2xvYmFsX2RhdGE/LmFjdGl2ZUZpbHRlcj8uZmlsdGVyX2l0ZW1zO1xuXG4gICAgaWYgKCFmaWx0ZXJzIHx8IGZpbHRlcnMubGVuZ3RoIDwgMSkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgZm9yIChsZXQgaW5kZXggPSAwOyBpbmRleCA8IGZpbHRlcnMubGVuZ3RoOyBpbmRleCsrKSB7XG4gICAgICBpZiAoZmlsdGVyc1tpbmRleF0udHlwZSA9PT0gJ1RpbWVGaWx0ZXJJdGVtJykge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHRydWU7XG4gIH0sIFtnbG9iYWxfZGF0YT8uYWN0aXZlRmlsdGVyXSk7XG5cbiAgY29uc3QgbWFwcGVkQXJlYXMgPSB1c2VNZW1vKFxuICAgICgpID0+IGFyZWFzTWFwcGVyKGFyZWFzX2RhdGEsIGlzVGltZUZpbHRlck5vdFNlbGVjdGVkKSxcbiAgICBbYXJlYXNfZGF0YSwgaXNUaW1lRmlsdGVyTm90U2VsZWN0ZWRdLFxuICApO1xuXG4gIGNvbnN0IEV2ZW50c1BlclNpdGUgPSB1c2VNZW1vKFxuICAgICgpID0+IENvdW50RXZlbnRzUGVyU2l0ZUlEKGV2ZW50c19kYXRhLml0ZW1zKSxcbiAgICBbZXZlbnRzX2RhdGEuaXRlbXNdLFxuICApO1xuXG4gIGNvbnN0IE11c3RTZWVuU2l0ZXMgPSB1c2VNZW1vKCgpID0+IHtcbiAgICBpZiAoZXZlbnRzX2RhdGEuZm9jdXNlZEV2ZW50KSB7XG4gICAgICByZXR1cm4gZ2V0Rm9jdXNlZEV2ZW50TXVzdFNlZW5TaXRlcyhldmVudHNfZGF0YS5mb2N1c2VkRXZlbnQpO1xuICAgIH0gZWxzZSBpZiAoZXZlbnRzX2RhdGEuaG92ZXJlZEV2ZW50KSB7XG4gICAgICByZXR1cm4gZ2V0Rm9jdXNlZEV2ZW50TXVzdFNlZW5TaXRlcyhldmVudHNfZGF0YS5ob3ZlcmVkRXZlbnQpO1xuICAgIH1cbiAgICByZXR1cm4ge307XG4gIH0sIFtFdmVudHNQZXJTaXRlLCBldmVudHNfZGF0YS5mb2N1c2VkRXZlbnQsIGV2ZW50c19kYXRhLmhvdmVyZWRFdmVudF0pO1xuXG4gIGNvbnN0IG1hcHBlZFBvaW50cyA9IHVzZU1lbW8oXG4gICAgKCkgPT5cbiAgICAgIHBvaW50c19kYXRhLml0ZW1zLm1hcCgocG9pbnQpID0+IHtcbiAgICAgICAgY29uc3QgbmV3UG9pbnQgPSB7IC4uLnBvaW50IH07XG5cbiAgICAgICAgaWYgKFxuICAgICAgICAgICFFdmVudHNQZXJTaXRlW3BvaW50LmlkXSB8fFxuICAgICAgICAgIHBvaW50Lmdyb3VwLnR5cGUgPT09ICdHcm91cHM6OkNvbGxlY3RvcnMnXG4gICAgICAgICkge1xuICAgICAgICAgIG5ld1BvaW50LmhpZGUgPSB0cnVlO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGV2ZW50c19kYXRhLmZvY3VzZWRFdmVudCkge1xuICAgICAgICAgIGlmICghTXVzdFNlZW5TaXRlc1twb2ludC5pZF0pIHtcbiAgICAgICAgICAgIG5ld1BvaW50LmhpZGUgPSB0cnVlO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBuZXdQb2ludC5oaWRlID0gZmFsc2U7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2UgaWYgKGV2ZW50c19kYXRhLmhvdmVyZWRFdmVudCkge1xuICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICFNdXN0U2VlblNpdGVzW3BvaW50LmlkXSAmJlxuICAgICAgICAgICAgcG9pbnQuZ3JvdXAudHlwZSA9PT0gJ0dyb3Vwczo6Q29sbGVjdG9ycydcbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIG5ld1BvaW50LmhpZGUgPSB0cnVlO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBuZXdQb2ludC5oaWRlID0gZmFsc2U7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgbmV3UG9pbnQucmVsYXRlZEV2ZW50c0Ftb3VudCA9IEV2ZW50c1BlclNpdGVbcG9pbnQuaWRdIHx8IDA7XG4gICAgICAgIHJldHVybiBuZXdQb2ludDtcbiAgICAgIH0pLFxuICAgIFtcbiAgICAgIHBvaW50c19kYXRhLFxuICAgICAgRXZlbnRzUGVyU2l0ZSxcbiAgICAgIGV2ZW50c19kYXRhLmZvY3VzZWRFdmVudCxcbiAgICAgIGV2ZW50c19kYXRhLmhvdmVyZWRFdmVudCxcbiAgICBdLFxuICApO1xuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZVxuICBjb25zdCBtYXBwZWRFZGdlcyA9IGVkZ2VzX2RhdGEuaXRlbXMuZmlsdGVyKFxuICAgIChlZGdlKSA9PlxuICAgICAgTnVtYmVyKEV2ZW50c1BlclNpdGVbZWRnZS5zb3VyY2VfcG9pbnRfaWRdKSA+IDAgfHxcbiAgICAgIE51bWJlcihFdmVudHNQZXJTaXRlW2VkZ2UudGFyZ2V0X3BvaW50X2lkXSkgPiAwLFxuICApO1xuXG4gIGNvbnN0IGFyZWFUb0NlbnRlckJ5ID0gdXNlTWVtbyhcbiAgICAoKSA9PiBnZXRBcmVhc1RvQ2VudGVyQnkoZ2xvYmFsX2RhdGEsIG1hcHBlZEFyZWFzKSxcbiAgICBbZ2xvYmFsX2RhdGE/LmFjdGl2ZUZpbHRlciwgbWFwcGVkQXJlYXNdLFxuICApO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGdsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWQpIHtcbiAgICAgIGRpc3BhdGNoKGZldGNoUG9pbnRzKGdsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWQpKTtcbiAgICAgIGRpc3BhdGNoKGZldGNoRWRnZXMoZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZCkpO1xuICAgICAgZGlzcGF0Y2goZmV0Y2hBcmVhcyhnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkKSk7XG4gICAgfVxuICB9LCBbZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZF0pO1xuXG4gIHJldHVybiAoXG4gICAgPE1hcFxuICAgICAgey4uLlJlZHV4U3RhdGV9XG4gICAgICBhcmVhcz17bWFwcGVkQXJlYXN9XG4gICAgICBnbG9iYWxfZGF0YT17Z2xvYmFsX2RhdGF9XG4gICAgICBwb2ludHM9e21hcHBlZFBvaW50c31cbiAgICAgIGVkZ2VzPXttYXBwZWRFZGdlc31cbiAgICAgIGV2ZW50cz17ZXZlbnRzX2RhdGEuaXRlbXN9XG4gICAgICBmb2N1c2VkRXZlbnQ9e2V2ZW50c19kYXRhLmZvY3VzZWRFdmVudH1cbiAgICAgIGhvdmVyZWRFdmVudD17ZXZlbnRzX2RhdGEuaG92ZXJlZEV2ZW50fVxuICAgICAgZm9jdXNlZEV2ZW50UGF0aHM9e2V2ZW50c19kYXRhLmZvY3VzZWRFdmVudFBhdGhzfVxuICAgICAgaG92ZXJlZEV2ZW50UGF0aHM9e2V2ZW50c19kYXRhLmhvdmVyZWRFdmVudFBhdGhzfVxuICAgICAgaG92ZXJlZEVkZ2VQYXRocz17ZXZlbnRzX2RhdGEuaG92ZXJlZEVkZ2VQYXRoc31cbiAgICAgIGFyZWFUb0NlbnRlckJ5PXthcmVhVG9DZW50ZXJCeX1cbiAgICAgIGhpZGVFZGdlcz17dHJ1ZX1cbiAgICAgIHsuLi5wcm9wc31cbiAgICA+XG4gICAgICB7XG4gICAgICAgIDxEcmFnQW5kRHJvcEFyZWEgZm9jdXNlZEV2ZW50UGF0aD17ZXZlbnRzX2RhdGE/LmZvY3VzZWRFdmVudFBhdGhzfT5cbiAgICAgICAgICB7e1xuICAgICAgICAgICAgZmxvYXRpbmdHcmFwaDogKFxuICAgICAgICAgICAgICA8RmxvYXRpbmdHcmFwaFxuICAgICAgICAgICAgICAgIGlzT3Blbj17Z2xvYmFsX2RhdGE/LmZsb2F0aW5nR3JhcGgub3Blbn1cbiAgICAgICAgICAgICAgICBjdXN0b21IaWdoQ2hhcnRPcHRpb25zPXtkbmRHcmFwaEluaXRPcHRpb25zfVxuICAgICAgICAgICAgICAgIGNsb3NlR3JhcGhIYW5kbGVyPXsoKSA9PiB7XG4gICAgICAgICAgICAgICAgICBkaXNwYXRjaChjbG9zZUZsb2F0aW5nR3JhcGgoKSk7XG4gICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICBnbG9iYWxEYXRhRmxvYXRpbmdHcmFwaD17Z2xvYmFsX2RhdGEuZmxvYXRpbmdHcmFwaH1cbiAgICAgICAgICAgICAgICBldmVudF9kYXRhPXtldmVudHNfZGF0YT8uZm9jdXNlZEV2ZW50fVxuICAgICAgICAgICAgICAgIGdyYXBoSWQ9e2dsb2JhbF9kYXRhPy5mbG9hdGluZ0dyYXBoPy5wb2ludD8uaWR9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICApLFxuICAgICAgICAgIH19XG4gICAgICAgIDwvRHJhZ0FuZERyb3BBcmVhPlxuICAgICAgfVxuICAgIDwvTWFwPlxuICApO1xufTtcbiJdfQ==
155
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wYWdlcy9FdmVudHNQYWdlL0V2ZW50c01hcENvbnRhaW5lci9FdmVudHNNYXBDb250YWluZXIudHN4Il0sIm5hbWVzIjpbIkV2ZW50c01hcENvbnRhaW5lciIsInByb3BzIiwiZGlzcGF0Y2giLCJSZWR1eFN0YXRlIiwic3RhdGUiLCJhcmVhc19kYXRhIiwiZ2xvYmFsX2RhdGEiLCJwb2ludHNfZGF0YSIsImV2ZW50c19kYXRhIiwiZWRnZXNfZGF0YSIsImlzVGltZUZpbHRlck5vdFNlbGVjdGVkIiwiZmlsdGVycyIsImFjdGl2ZUZpbHRlciIsImZpbHRlcl9pdGVtcyIsImxlbmd0aCIsImluZGV4IiwidHlwZSIsIm1hcHBlZEFyZWFzIiwiRXZlbnRzUGVyU2l0ZSIsIml0ZW1zIiwiTXVzdFNlZW5TaXRlcyIsImZvY3VzZWRFdmVudCIsImhvdmVyZWRFdmVudCIsIm1hcHBlZFBvaW50cyIsIm1hcCIsInBvaW50IiwibmV3UG9pbnQiLCJpZCIsImdyb3VwIiwiaGlkZSIsInJlbGF0ZWRFdmVudHNBbW91bnQiLCJldmVudHNWaWV3SG92ZXJlZCIsIm1hcHBlZEVkZ2VzIiwiZmlsdGVyIiwiZWRnZSIsIk51bWJlciIsInNvdXJjZV9wb2ludF9pZCIsInRhcmdldF9wb2ludF9pZCIsImFyZWFUb0NlbnRlckJ5Iiwid2F0ZXJBdXRob3JpdHlJZCIsImZvY3VzZWRFdmVudFBhdGhzIiwiaG92ZXJlZEV2ZW50UGF0aHMiLCJob3ZlcmVkRWRnZVBhdGhzIiwiZmxvYXRpbmdHcmFwaCIsIm9wZW4iLCJkbmRHcmFwaEluaXRPcHRpb25zIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBTUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7Ozs7OztBQUlPLElBQU1BLGtCQUFxRCxHQUFHLFNBQXhEQSxrQkFBd0QsQ0FDbkVDLEtBRG1FLEVBRWhFO0FBQUE7O0FBQ0gsTUFBTUMs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O0FBRUUsTUFBQSxzQkFBc0IsRUFBRUMsK0JBRjFCO0FBR0UsTUFBQSxpQkFBaUIsRUFBRSw2QkFBTTtBQUN2QjNDLFFBQUFBLFFBQVEsQ0FBQyxtQ0FBRCxDQUFSO0FBQ0QsT0FMSDtBQU1FLE1BQUEsdUJBQXVCLEVBQUVJLFdBQVcsQ0FBQ3FDLGFBTnZDO0FBT0UsTUFBQSxVQUFVLEVBQUVuQyxXQUFGLGFBQUVBLFdBQUYsdUJBQUVBLFdBQVcsQ0FBRWEsWUFQM0I7QUFRRSxNQUFBLE9BQU8sRUFBRWYsV0FBRixhQUFFQSxXQUFGLGdEQUFFQSxXQUFXLENBQUVxQyxhQUFmLG9GQUFFLHNCQUE0QmxCLEtBQTlCLDJEQUFFLHVCQUFtQ0U7QUFSOUM7QUFGSCxHQURILENBakJKLENBREY7QUFxQ0QsQ0E3SU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0LCB1c2VNZW1vIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgdXNlRGlzcGF0Y2gsIHVzZVNlbGVjdG9yIH0gZnJvbSAncmVhY3QtcmVkdXgnO1xuaW1wb3J0IHtcbiAgYXJlYXNNYXBwZXIsXG4gIENvdW50RXZlbnRzUGVyU2l0ZUlELFxuICBnZXRBcmVhc1RvQ2VudGVyQnksXG4gIGdldEZvY3VzZWRFdmVudE11c3RTZWVuU2l0ZXMsXG59IGZyb20gJ3NyYy9wYWdlcy9FdmVudHNQYWdlL0V2ZW50c01hcENvbnRhaW5lci9FdmVudHNNYXBDb250YWluZXJIZWxwZXJzJztcbmltcG9ydCB7IGZldGNoQXJlYXMgfSBmcm9tICdzcmMvc3RvcmUvYXJlYXMvYWN0aW9ucyc7XG5pbXBvcnQgeyBmZXRjaEVkZ2VzIH0gZnJvbSAnc3JjL3N0b3JlL2VkZ2VzL2FjdGlvbnMnO1xuaW1wb3J0IHsgZmV0Y2hQb2ludHMgfSBmcm9tICdzcmMvc3RvcmUvcG9pbnRzL2FjdGlvbnMnO1xuaW1wb3J0IHsgTWFwIH0gZnJvbSAnc3JjL1dpZGdldHMvTWFwL01hcCc7XG5pbXBvcnQgRmxvYXRpbmdHcmFwaCBmcm9tICdzcmMvcGFnZXMvRXZlbnRzUGFnZS9GbG9hdGluZ0dyYXBoL0Zsb2F0aW5nR3JhcGgnO1xuaW1wb3J0IHsgZG5kR3JhcGhJbml0T3B0aW9ucyB9IGZyb20gJ3NyYy9XaWRnZXRzL01hcC9HcmFwaFV0aWxzJztcbmltcG9ydCB7IGNsb3NlRmxvYXRpbmdHcmFwaCB9IGZyb20gJ3NyYy9zdG9yZS9nbG9iYWwvYWN0aW9ucyc7XG5pbXBvcnQgRHJhZ0FuZERyb3BBcmVhIGZyb20gJy4uL0RyYWdBbmREcm9wQXJlYSc7XG5pbnRlcmZhY2UgRXZlbnRzTWFwQ29udGFpbmVyUHJvcHMge1xuICBzaG93U2Vjb25kTWFwOiBib29sZWFuO1xufVxuZXhwb3J0IGNvbnN0IEV2ZW50c01hcENvbnRhaW5lcjogUmVhY3QuRkM8RXZlbnRzTWFwQ29udGFpbmVyUHJvcHM+ID0gKFxuICBwcm9wcyxcbikgPT4ge1xuICBjb25zdCBkaXNwYXRjaCA9IHVzZURpc3BhdGNoKCk7XG4gIGNvbnN0IFJlZHV4U3RhdGUgPSB1c2VTZWxlY3Rvcigoc3RhdGUpID0+IHN0YXRlKTtcbiAgY29uc3QgeyBhcmVhc19kYXRhLCBnbG9iYWxfZGF0YSwgcG9pbnRzX2RhdGEsIGV2ZW50c19kYXRhLCBlZGdlc19kYXRhIH0gPVxuICAgIFJlZHV4U3RhdGU7XG5cbiAgY29uc3QgaXNUaW1lRmlsdGVyTm90U2VsZWN0ZWQgPSB1c2VNZW1vKCgpID0+IHtcbiAgICBjb25zdCBmaWx0ZXJzID0gZ2xvYmFsX2RhdGE/LmFjdGl2ZUZpbHRlcj8uZmlsdGVyX2l0ZW1zO1xuXG4gICAgaWYgKCFmaWx0ZXJzIHx8IGZpbHRlcnMubGVuZ3RoIDwgMSkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgZm9yIChsZXQgaW5kZXggPSAwOyBpbmRleCA8IGZpbHRlcnMubGVuZ3RoOyBpbmRleCsrKSB7XG4gICAgICBpZiAoZmlsdGVyc1tpbmRleF0udHlwZSA9PT0gJ1RpbWVGaWx0ZXJJdGVtJykge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHRydWU7XG4gIH0sIFtnbG9iYWxfZGF0YT8uYWN0aXZlRmlsdGVyXSk7XG5cbiAgY29uc3QgbWFwcGVkQXJlYXMgPSB1c2VNZW1vKFxuICAgICgpID0+IGFyZWFzTWFwcGVyKGFyZWFzX2RhdGEsIGlzVGltZUZpbHRlck5vdFNlbGVjdGVkKSxcbiAgICBbYXJlYXNfZGF0YSwgaXNUaW1lRmlsdGVyTm90U2VsZWN0ZWRdLFxuICApO1xuXG4gIGNvbnN0IEV2ZW50c1BlclNpdGUgPSB1c2VNZW1vKFxuICAgICgpID0+IENvdW50RXZlbnRzUGVyU2l0ZUlEKGV2ZW50c19kYXRhLml0ZW1zKSxcbiAgICBbZXZlbnRzX2RhdGEuaXRlbXNdLFxuICApO1xuXG4gIGNvbnN0IE11c3RTZWVuU2l0ZXMgPSB1c2VNZW1vKCgpID0+IHtcbiAgICBpZiAoZXZlbnRzX2RhdGEuZm9jdXNlZEV2ZW50KSB7XG4gICAgICByZXR1cm4gZ2V0Rm9jdXNlZEV2ZW50TXVzdFNlZW5TaXRlcyhldmVudHNfZGF0YS5mb2N1c2VkRXZlbnQpO1xuICAgIH0gZWxzZSBpZiAoZXZlbnRzX2RhdGEuaG92ZXJlZEV2ZW50KSB7XG4gICAgICByZXR1cm4gZ2V0Rm9jdXNlZEV2ZW50TXVzdFNlZW5TaXRlcyhldmVudHNfZGF0YS5ob3ZlcmVkRXZlbnQpO1xuICAgIH1cbiAgICByZXR1cm4ge307XG4gIH0sIFtFdmVudHNQZXJTaXRlLCBldmVudHNfZGF0YS5mb2N1c2VkRXZlbnQsIGV2ZW50c19kYXRhLmhvdmVyZWRFdmVudF0pO1xuXG4gIGNvbnN0IG1hcHBlZFBvaW50cyA9IHVzZU1lbW8oXG4gICAgKCkgPT5cbiAgICAgIHBvaW50c19kYXRhLml0ZW1zLm1hcCgocG9pbnQpID0+IHtcbiAgICAgICAgY29uc3QgbmV3UG9pbnQgPSB7IC4uLnBvaW50IH07XG5cbiAgICAgICAgaWYgKFxuICAgICAgICAgICFFdmVudHNQZXJTaXRlW3BvaW50LmlkXSB8fFxuICAgICAgICAgIHBvaW50Lmdyb3VwLnR5cGUgPT09ICdHcm91cHM6OkNvbGxlY3RvcnMnXG4gICAgICAgICkge1xuICAgICAgICAgIG5ld1BvaW50LmhpZGUgPSB0cnVlO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGV2ZW50c19kYXRhLmZvY3VzZWRFdmVudCkge1xuICAgICAgICAgIGlmICghTXVzdFNlZW5TaXRlc1twb2ludC5pZF0pIHtcbiAgICAgICAgICAgIG5ld1BvaW50LmhpZGUgPSB0cnVlO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBuZXdQb2ludC5oaWRlID0gZmFsc2U7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2UgaWYgKGV2ZW50c19kYXRhLmhvdmVyZWRFdmVudCkge1xuICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICFNdXN0U2VlblNpdGVzW3BvaW50LmlkXSAmJlxuICAgICAgICAgICAgcG9pbnQuZ3JvdXAudHlwZSA9PT0gJ0dyb3Vwczo6Q29sbGVjdG9ycydcbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIG5ld1BvaW50LmhpZGUgPSB0cnVlO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBuZXdQb2ludC5oaWRlID0gZmFsc2U7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgbmV3UG9pbnQucmVsYXRlZEV2ZW50c0Ftb3VudCA9IEV2ZW50c1BlclNpdGVbcG9pbnQuaWRdIHx8IDA7XG4gICAgICAgIG5ld1BvaW50LmV2ZW50c1ZpZXdIb3ZlcmVkID0gdHJ1ZTtcbiAgICAgICAgcmV0dXJuIG5ld1BvaW50O1xuICAgICAgfSksXG4gICAgW1xuICAgICAgcG9pbnRzX2RhdGEsXG4gICAgICBFdmVudHNQZXJTaXRlLFxuICAgICAgZXZlbnRzX2RhdGEuZm9jdXNlZEV2ZW50LFxuICAgICAgZXZlbnRzX2RhdGEuaG92ZXJlZEV2ZW50LFxuICAgIF0sXG4gICk7XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gIGNvbnN0IG1hcHBlZEVkZ2VzID0gZWRnZXNfZGF0YS5pdGVtcy5maWx0ZXIoXG4gICAgKGVkZ2UpID0+XG4gICAgICBOdW1iZXIoRXZlbnRzUGVyU2l0ZVtlZGdlLnNvdXJjZV9wb2ludF9pZF0pID4gMCB8fFxuICAgICAgTnVtYmVyKEV2ZW50c1BlclNpdGVbZWRnZS50YXJnZXRfcG9pbnRfaWRdKSA+IDAsXG4gICk7XG5cbiAgY29uc3QgYXJlYVRvQ2VudGVyQnkgPSB1c2VNZW1vKFxuICAgICgpID0+IGdldEFyZWFzVG9DZW50ZXJCeShnbG9iYWxfZGF0YSwgbWFwcGVkQXJlYXMpLFxuICAgIFtnbG9iYWxfZGF0YT8uYWN0aXZlRmlsdGVyLCBtYXBwZWRBcmVhc10sXG4gICk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZCkge1xuICAgICAgZGlzcGF0Y2goZmV0Y2hQb2ludHMoZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZCkpO1xuICAgICAgZGlzcGF0Y2goZmV0Y2hFZGdlcyhnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkKSk7XG4gICAgICBkaXNwYXRjaChmZXRjaEFyZWFzKGdsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWQpKTtcbiAgICB9XG4gIH0sIFtnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkXSk7XG5cbiAgcmV0dXJuIChcbiAgICA8TWFwXG4gICAgICB7Li4uUmVkdXhTdGF0ZX1cbiAgICAgIGFyZWFzPXttYXBwZWRBcmVhc31cbiAgICAgIGdsb2JhbF9kYXRhPXtnbG9iYWxfZGF0YX1cbiAgICAgIHBvaW50cz17bWFwcGVkUG9pbnRzfVxuICAgICAgZWRnZXM9e21hcHBlZEVkZ2VzfVxuICAgICAgZXZlbnRzPXtldmVudHNfZGF0YS5pdGVtc31cbiAgICAgIGZvY3VzZWRFdmVudD17ZXZlbnRzX2RhdGEuZm9jdXNlZEV2ZW50fVxuICAgICAgaG92ZXJlZEV2ZW50PXtldmVudHNfZGF0YS5ob3ZlcmVkRXZlbnR9XG4gICAgICBmb2N1c2VkRXZlbnRQYXRocz17ZXZlbnRzX2RhdGEuZm9jdXNlZEV2ZW50UGF0aHN9XG4gICAgICBob3ZlcmVkRXZlbnRQYXRocz17ZXZlbnRzX2RhdGEuaG92ZXJlZEV2ZW50UGF0aHN9XG4gICAgICBob3ZlcmVkRWRnZVBhdGhzPXtldmVudHNfZGF0YS5ob3ZlcmVkRWRnZVBhdGhzfVxuICAgICAgYXJlYVRvQ2VudGVyQnk9e2FyZWFUb0NlbnRlckJ5fVxuICAgICAgaGlkZUVkZ2VzPXt0cnVlfVxuICAgICAgey4uLnByb3BzfVxuICAgID5cbiAgICAgIHtcbiAgICAgICAgPERyYWdBbmREcm9wQXJlYSBmb2N1c2VkRXZlbnRQYXRoPXtldmVudHNfZGF0YT8uZm9jdXNlZEV2ZW50UGF0aHN9PlxuICAgICAgICAgIHt7XG4gICAgICAgICAgICBmbG9hdGluZ0dyYXBoOiAoXG4gICAgICAgICAgICAgIDxGbG9hdGluZ0dyYXBoXG4gICAgICAgICAgICAgICAgaXNPcGVuPXtnbG9iYWxfZGF0YT8uZmxvYXRpbmdHcmFwaC5vcGVufVxuICAgICAgICAgICAgICAgIGN1c3RvbUhpZ2hDaGFydE9wdGlvbnM9e2RuZEdyYXBoSW5pdE9wdGlvbnN9XG4gICAgICAgICAgICAgICAgY2xvc2VHcmFwaEhhbmRsZXI9eygpID0+IHtcbiAgICAgICAgICAgICAgICAgIGRpc3BhdGNoKGNsb3NlRmxvYXRpbmdHcmFwaCgpKTtcbiAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgIGdsb2JhbERhdGFGbG9hdGluZ0dyYXBoPXtnbG9iYWxfZGF0YS5mbG9hdGluZ0dyYXBofVxuICAgICAgICAgICAgICAgIGV2ZW50X2RhdGE9e2V2ZW50c19kYXRhPy5mb2N1c2VkRXZlbnR9XG4gICAgICAgICAgICAgICAgZ3JhcGhJZD17Z2xvYmFsX2RhdGE/LmZsb2F0aW5nR3JhcGg/LnBvaW50Py5pZH1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICksXG4gICAgICAgICAgfX1cbiAgICAgICAgPC9EcmFnQW5kRHJvcEFyZWE+XG4gICAgICB9XG4gICAgPC9NYXA+XG4gICk7XG59O1xuIl19
@@ -89,10 +89,6 @@ var SamplingProperties = function SamplingProperties() {
89
89
 
90
90
  var history = (0, _reactRouterDom.useHistory)();
91
91
  var query = (0, _useQueryURL.default)();
92
- var waterAuthorityIdFromUrl = parseInt(query.get('water_authority_id') || '0');
93
- var navContext = (0, _reactRedux.useSelector)(function (state) {
94
- return state.nav_context_data.navContext;
95
- });
96
92
  var userInfo = (0, _reactRedux.useSelector)(function (state) {
97
93
  return state.permissions.user_info;
98
94
  });
@@ -121,11 +117,7 @@ var SamplingProperties = function SamplingProperties() {
121
117
  });
122
118
 
123
119
  var handleClose = function handleClose() {
124
- var samplingsListRoute = (0, _urls.urls)({
125
- locale: navContext.locale,
126
- waterAuthorityId: waterAuthorityIdFromUrl
127
- }).samplingsPage.samplingsListRoute.url;
128
- history.push(samplingsListRoute);
120
+ history.goBack();
129
121
  };
130
122
 
131
123
  var handleSubmit = function handleSubmit(values) {
@@ -294,7 +286,7 @@ var SamplingProperties = function SamplingProperties() {
294
286
  setSamplingUpdated: setSamplingUpdated,
295
287
  isDatePickerDisabled: isPropertiesPage,
296
288
  dateFormat: dateFormat
297
- }), samplingProperties !== undefined && pageType !== undefined && /*#__PURE__*/_react.default.createElement(_SamplingPropertiesForm.SamplingPropertiesForm, {
289
+ }), samplingProperties && pageType && /*#__PURE__*/_react.default.createElement(_SamplingPropertiesForm.SamplingPropertiesForm, {
298
290
  samplingProperties: samplingProperties,
299
291
  sampling: samplingPlan,
300
292
  pageType: pageType,
@@ -314,4 +306,4 @@ var SamplingPropertiesStyle = _styledComponents.default.div.withConfig({
314
306
  displayName: "SamplingProperties__SamplingPropertiesStyle",
315
307
  componentId: "sc-opklsf-0"
316
308
  })(["", " ", ""], !_reactDeviceDetect.isMobile ? 'width: 830px;' : '', !_reactDeviceDetect.isMobile ? 'margin: 100px auto;' : '');
317
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wYWdlcy9TYW1wbGluZ3NQYWdlL1NhbXBsaW5nUHJvcGVydGllcy9TYW1wbGluZ1Byb3BlcnRpZXMudHN4Il0sIm5hbWVzIjpbIlNhbXBsaW5nUHJvcGVydGllcyIsIkRhdGUiLCJub3ciLCJmb3JtYXQiLCJjb2xsZWN0aW9uVGltZSIsInNldENvbGxlY3Rpb25UaW1lIiwicGhvdG9zIiwic2V0UGhvdG9zIiwicGhvdG9zVG9EZWxldGUiLCJzZXRQaG90b3NUb0RlbGV0ZSIsImkxOG4iLCJ0Iiwic2F2aW5nTXNnIiwic2V0U2F2aW5nTXNnIiwic2FtcGxpbmdVcGRhdGVkIiwic2V0U2FtcGxpbmdVcGRhdGVkIiwidW5kZWZpbmVkIiwic2FtcGxpbmdQbGFuIiwic2V0U2FtcGxpbmdQbGFuIiwiaGlzdG9yeSIsInF1ZXJ5Iiwid2F0ZXJBdXRob3JpdHlJZEZyb21VcmwiLCJwYXJzZUludCIsImdldCIsIm5hdkNvbnRleHQiLCJzdGF0ZSIsIm5hdl9jb250ZXh0X2RhdGEiLCJ1c2VySW5mbyIsInBlcm1pc3Npb25zIiwidXNlcl9pbmZvIiwiZGF0ZUZvcm1hdCIsImRhdGVfdGltZV9mb3JtYXQiLCJwYWdlVHlwZSIsInNldFBhZ2VUeXBlIiwic2FtcGxpbmdQcm9wZXJ0aWVzIiwic2V0U2FtcGxpbmdQcm9wZXJ0aWVzIiwidmFsaWRhdGlvblNjaGVtYSIsInByb3BlcnRpZXNWYWxpZGF0aW9uU2NoZW1hIiwiY2FuY2VsbGF0aW9uVmFsaWRhdGlvblNjaGVtYSIsImZvcm1payIsImVuYWJsZVJlaW5pdGlhbGl6ZSIsImluaXRpYWxWYWx1ZXMiLCJzYW1wbGluZ1Byb3BlcnR5IiwidmFsaWRhdGVPbkNoYW5nZSIsInZhbGlkYXRlT25CbHVyIiwib25TdWJtaXQiLCJ2YWx1ZXMiLCJoYW5kbGVTdWJtaXQiLCJoYW5kbGVDbG9zZSIsInNhbXBsaW5nc0xpc3RSb3V0ZSIsImxvY2FsZSIsIndhdGVyQXV0aG9yaXR5SWQiLCJzYW1wbGluZ3NQYWdlIiwidXJsIiwicHVzaCIsInBpY3R1cmVzX2F0dHJpYnV0ZXMiLCJzYXZlRm9ybURhdGEiLCJmb3JtRGF0YUJ1aWxkZXIiLCJ1cGRhdGVPckNyZWF0ZSIsInNldE9yaWdpbmFsU2F2ZU1lc3NhZ2VXaXRoVGltZW91dCIsInNldFRpbWVvdXQiLCJmb3JtRGF0YSIsIkZvcm1EYXRhIiwia2V5IiwidmFsdWUiLCJhcHBlbmQiLCJ1bmlxdWVQaG90b3NUb0RlbGV0ZSIsIlNldCIsImxlbmd0aCIsImZvckVhY2giLCJpZCIsImluZGV4IiwiSlNPTiIsInN0cmluZ2lmeSIsInVwZGF0ZU9yQ3JlYXRlU3VjY2VzcyIsIm1zZyIsInNhbXBsaW5nIiwiYXhpb3MiLCJwb3N0IiwiY3JlYXRlU2FtcGxpbmciLCJ0aGVuIiwiY2F0Y2giLCJwdXQiLCJzYW1wbGluZ0lkIiwidXBkYXRlU2FtcGxpbmciLCJkZXRlY3RQYWdlVHlwZSIsImNvbGxlY3Rpb25UaW1lU2VydmVyIiwib3AiLCJfcGFnZVR5cGUiLCJpc19jYW5jZWxlZCIsIkNPTExFQ1RfU0FNUExJTkdfT1AiLCJDQU5DRUxfU0FNUExJTkdfT1AiLCJpc1Byb3BlcnRpZXNQYWdlIiwic2FtcGxlSWQiLCJmZXRjaFNhbXBsaW5nUHJvcGVydGllcyIsImZldGNoU2FtcGxpbmciLCJyZXMiLCJzYW1wbGluZ1JlcyIsImRhdGEiLCJzYW1wbGluZ19wcm9wZXJ0aWVzIiwiY29sbGVjdGlvbl90aW1lIiwiaXNDYW5jZWxlZCIsInBhZ2VDb2xsZWN0aW9uVGltZSIsInNhbSIsInNldFZhbHVlcyIsImxhYl9pZCIsInB1bXBfc2FtcGxpbmdfdm9sdW1lIiwicHVtcF9iYXR0ZXJ5X2xldmVsIiwiZGVzY3JpcHRpb24iLCJrYW5kb19yZXAiLCJzYW1wbGluZ19wbGFuX2lkIiwiY2FuY2VsbGF0aW9uX3JlYXNvbiIsInNhbXBsaW5nX3BsYW4iLCJnZXRVcmxRdWVyeU9wIiwiaW5jbHVkZXMiLCJpc01vYmlsZSIsIlNhbXBsaW5nUHJvcGVydGllc1N0eWxlIiwic3R5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QSxrQkFBa0IsRUFBRWpCLGtCQUp0QjtBQUtFLElBQUEsU0FBUyxFQUFFSCxTQUxiO0FBTUUsSUFBQSxXQUFXLEVBQUVvQyxXQU5mO0FBT0UsSUFBQSxpQkFBaUIsRUFBRXZDLGlCQVByQjtBQVFFLElBQUEsU0FBUyxFQUFFRixTQVJiO0FBU0UsSUFBQSxNQUFNLEVBQUVELE1BVFY7QUFVRSxJQUFBLE1BQU0sRUFBRWlDO0FBVlYsSUE5QkosQ0FERixDQURGLENBREY7QUFrREQsQ0F6UU07Ozs7QUEyUVAsSUFBTTZFLHVCQUF1QixHQUFHQywwQkFBT0MsR0FBVjtBQUFBO0FBQUE7QUFBQSxrQkFDekIsQ0FBQ0gsMkJBQUQsR0FBWSxlQUFaLEdBQThCLEVBREwsRUFFekIsQ0FBQ0EsMkJBQUQsR0FBWSxxQkFBWixHQUFvQyxFQUZYLENBQTdCIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFByb3BlcnRpZXMgYW5kIENhbmNlbGxpbmcgZm9ybXMuXG4gKiovXG5pbXBvcnQgUmVhY3QsIHsgRkMsIHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgYXhpb3MgZnJvbSAnYXhpb3MnO1xuaW1wb3J0IG1vbWVudCBmcm9tICdtb21lbnQnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdzdHlsZWQtY29tcG9uZW50cy9tYWNybyc7XG5pbXBvcnQgeyBGb3JtaWtDb25maWcgfSBmcm9tICdmb3JtaWsvZGlzdC90eXBlcyc7XG5pbXBvcnQgeyBpc01vYmlsZSB9IGZyb20gJ3JlYWN0LWRldmljZS1kZXRlY3QnO1xuaW1wb3J0IHsgdXNlRm9ybWlrIH0gZnJvbSAnZm9ybWlrJztcbmltcG9ydCB7IHVzZUhpc3RvcnksIHVzZVBhcmFtcyB9IGZyb20gJ3JlYWN0LXJvdXRlci1kb20nO1xuaW1wb3J0IHsgdXNlU2VsZWN0b3IgfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5cbmltcG9ydCBMYXlvdXQgZnJvbSAnc3JjL3VpLWtpdC9MYXlvdXQvTGF5b3V0JztcbmltcG9ydCBpMThuIGZyb20gJ3NyYy91dGlsaXRpZXMvaTE4bic7XG5pbXBvcnQgdXNlUXVlcnlVUkwgZnJvbSAnc3JjL2hvb2tzL3VzZVF1ZXJ5VVJMJztcbmltcG9ydCB7IFNwaW5uZXIgfSBmcm9tICdzcmMvY29tcG9uZW50cy9TcGlubmVyL1NwaW5uZXInO1xuaW1wb3J0IHsgYXBwUmVkdWNlciB9IGZyb20gJ3NyYy9zdG9yZS9yb290UmVkdWNlcic7XG5pbXBvcnQgeyB1cmxzIH0gZnJvbSAnc3JjL3V0aWxpdGllcy91cmxzJztcblxuaW1wb3J0IHtcbiAgQ0FOQ0VMX1NBTVBMSU5HX09QLFxuICBDT0xMRUNUX1NBTVBMSU5HX09QLFxuICBTYW1wbGluZ0ZldGNoRGF0YSxcbn0gZnJvbSAnLi4vc2FtcGxpbmdzUGFnZVV0aWxzJztcbmltcG9ydCB7IFNhbXBsaW5nUHJvcGVydGllc0Zvcm0gfSBmcm9tICcuL1NhbXBsaW5nUHJvcGVydGllc0Zvcm0nO1xuaW1wb3J0IHsgU2FtcGxpbmdQcm9wZXJ0aWVzSGVhZCB9IGZyb20gJy4vU2FtcGxpbmdQcm9wZXJ0aWVzSGVhZCc7XG5pbXBvcnQgeyBTYW1wbGluZ1Byb3BlcnRpZXNIZWFkTW9iaWxlIH0gZnJvbSAnLi9TYW1wbGluZ1Byb3BlcnRpZXNIZWFkTW9iaWxlJztcbmltcG9ydCB7XG4gIGNhbmNlbGxhdGlvblZhbGlkYXRpb25TY2hlbWEsXG4gIHByb3BlcnRpZXNWYWxpZGF0aW9uU2NoZW1hLFxuICBUU2FtcGxpbmdQcm9wZXJ0aWVzLFxuICBzYW1wbGluZ1Byb3BlcnR5LFxuICBGb3JtVHlwZSxcbn0gZnJvbSAnLi9zYW1wbGluZ1Byb3BlcnRpZXNVdGlscyc7XG5cbmV4cG9ydCBjb25zdCBTYW1wbGluZ1Byb3BlcnRpZXM6IEZDID0gKCkgPT4ge1xuICBjb25zdCBbY29sbGVjdGlvblRpbWUsIHNldENvbGxlY3Rpb25UaW1lXSA9IHVzZVN0YXRlPHN0cmluZyB8IERhdGUgfCBudWxsPihcbiAgICBtb21lbnQoRGF0ZS5ub3coKSkuZm9ybWF0KCdERC9NTS9ZWVlZIGhoOm1tJyksXG4gICk7XG4gIGNvbnN0IFtwaG90b3MsIHNldFBob3Rvc10gPSB1c2VTdGF0ZTxzdHJpbmcgfCBCbG9iIHwgYW55PihbXSk7XG4gIGNvbnN0IFtwaG90b3NUb0RlbGV0ZSwgc2V0UGhvdG9zVG9EZWxldGVdID0gdXNlU3RhdGU8bnVtYmVyW10+KFtdKTtcbiAgY29uc3QgW3NhdmluZ01zZywgc2V0U2F2aW5nTXNnXSA9IHVzZVN0YXRlPHN0cmluZz4oaTE4bi50KCdidXR0b25zLnNhdmUnKSk7XG4gIGNvbnN0IFtzYW1wbGluZ1VwZGF0ZWQsIHNldFNhbXBsaW5nVXBkYXRlZF0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IFtzYW1wbGluZ1BsYW4sIHNldFNhbXBsaW5nUGxhbl0gPSB1c2VTdGF0ZTxcbiAgICBTYW1wbGluZ0ZldGNoRGF0YSB8IHVuZGVmaW5lZFxuICA+KHVuZGVmaW5lZCk7XG4gIGNvbnN0IGhpc3RvcnkgPSB1c2VIaXN0b3J5KCk7XG4gIGNvbnN0IHF1ZXJ5ID0gdXNlUXVlcnlVUkwoKTtcbiAgY29uc3Qgd2F0ZXJBdXRob3JpdHlJZEZyb21VcmwgPSBwYXJzZUludChcbiAgICBxdWVyeS5nZXQoJ3dhdGVyX2F1dGhvcml0eV9pZCcpIHx8ICcwJyxcbiAgKTtcbiAgY29uc3QgbmF2Q29udGV4dCA9IHVzZVNlbGVjdG9yKFxuICAgIChzdGF0ZTogUmV0dXJuVHlwZTx0eXBlb2YgYXBwUmVkdWNlcj4pID0+IHN0YXRlLm5hdl9jb250ZXh0X2RhdGEubmF2Q29udGV4dCxcbiAgKTtcblxuICBjb25zdCB1c2VySW5mbyA9IHVzZVNlbGVjdG9yKChzdGF0ZSkgPT4gc3RhdGUucGVybWlzc2lvbnMudXNlcl9pbmZvKTtcbiAgY29uc3QgZGF0ZUZvcm1hdCA9XG4gICAgdXNlckluZm8uZGF0ZV90aW1lX2Zvcm1hdCA9PT0gJ3VzJ1xuICAgICAgPyAnTU1NIGQsIHl5eXkgaGg6bW0gYWEnXG4gICAgICA6ICdkL01NL3l5eXkgSEg6bW0nO1xuICBjb25zdCBbcGFnZVR5cGUsIHNldFBhZ2VUeXBlXSA9IHVzZVN0YXRlPHN0cmluZyB8IG51bGw+KCk7XG4gIGNvbnN0IFtzYW1wbGluZ1Byb3BlcnRpZXMsIHNldFNhbXBsaW5nUHJvcGVydGllc10gPVxuICAgIHVzZVN0YXRlPFRTYW1wbGluZ1Byb3BlcnRpZXM+KCk7XG4gIGNvbnN0IHZhbGlkYXRpb25TY2hlbWEgPVxuICAgIHBhZ2VUeXBlID09PSAnY29sbGVjdCdcbiAgICAgID8gcHJvcGVydGllc1ZhbGlkYXRpb25TY2hlbWFcbiAgICAgIDogY2FuY2VsbGF0aW9uVmFsaWRhdGlvblNjaGVtYTtcblxuICBjb25zdCBmb3JtaWsgPSB1c2VGb3JtaWs8Rm9ybWlrQ29uZmlnPEZvcm1UeXBlPj4oe1xuICAgIGVuYWJsZVJlaW5pdGlhbGl6ZTogdHJ1ZSxcbiAgICBpbml0aWFsVmFsdWVzOiBzYW1wbGluZ1Byb3BlcnR5LFxuICAgIHZhbGlkYXRpb25TY2hlbWE6IHZhbGlkYXRpb25TY2hlbWEsXG4gICAgdmFsaWRhdGVPbkNoYW5nZTogZmFsc2UsXG4gICAgdmFsaWRhdGVPbkJsdXI6IHRydWUsXG4gICAgb25TdWJtaXQ6ICh2YWx1ZXMpID0+IHtcbiAgICAgIGhhbmRsZVN1Ym1pdCh2YWx1ZXMpO1xuICAgIH0sXG4gIH0pO1xuXG4gIGNvbnN0IGhhbmRsZUNsb3NlID0gKCkgPT4ge1xuICAgIGNvbnN0IHNhbXBsaW5nc0xpc3RSb3V0ZSA9IHVybHMoe1xuICAgICAgbG9jYWxlOiBuYXZDb250ZXh0LmxvY2FsZSxcbiAgICAgIHdhdGVyQXV0aG9yaXR5SWQ6IHdhdGVyQXV0aG9yaXR5SWRGcm9tVXJsLFxuICAgIH0pLnNhbXBsaW5nc1BhZ2Uuc2FtcGxpbmdzTGlzdFJvdXRlLnVybDtcbiAgICBoaXN0b3J5LnB1c2goc2FtcGxpbmdzTGlzdFJvdXRlKTtcbiAgfTtcblxuICBjb25zdCBoYW5kbGVTdWJtaXQgPSAodmFsdWVzKSA9PiB7XG4gICAgc2V0U2F2aW5nTXNnKGkxOG4udCgnYnV0dG9ucy5zYXZpbmcnKSk7XG4gICAgdmFsdWVzLnBpY3R1cmVzX2F0dHJpYnV0ZXMgPSBwaG90b3M7XG4gICAgY29uc3Qgc2F2ZUZvcm1EYXRhID0gZm9ybURhdGFCdWlsZGVyKHZhbHVlcyk7XG4gICAgdXBkYXRlT3JDcmVhdGUoc2F2ZUZvcm1EYXRhKTtcbiAgfTtcblxuICBjb25zdCBzZXRPcmlnaW5hbFNhdmVNZXNzYWdlV2l0aFRpbWVvdXQgPSAoKSA9PiB7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICBzZXRTYXZpbmdNc2coaTE4bi50KCdidXR0b25zLnNhdmUnKSk7XG4gICAgfSwgMzAwMCk7XG4gIH07XG5cbiAgY29uc3QgZm9ybURhdGFCdWlsZGVyID0gKHZhbHVlcykgPT4ge1xuICAgIGNvbnN0IGZvcm1EYXRhID0gbmV3IEZvcm1EYXRhKCk7XG4gICAgZm9yIChjb25zdCBrZXkgaW4gdmFsdWVzKSB7XG4gICAgICBpZiAoa2V5ICE9PSAncGljdHVyZXNfYXR0cmlidXRlcycpIHtcbiAgICAgICAgY29uc3QgdmFsdWUgPSB2YWx1ZXNba2V5XSA9PT0gbnVsbCA/ICcnIDogdmFsdWVzW2tleV07XG4gICAgICAgIGZvcm1EYXRhLmFwcGVuZChgc2FtcGxpbmdbJHtrZXl9XWAsIHZhbHVlKTtcbiAgICAgIH1cbiAgICB9XG4gICAgbGV0IHVuaXF1ZVBob3Rvc1RvRGVsZXRlID0gWy4uLm5ldyBTZXQocGhvdG9zVG9EZWxldGUpXTtcbiAgICB1bmlxdWVQaG90b3NUb0RlbGV0ZS5sZW5ndGggIT09IDAgJiZcbiAgICAgIHVuaXF1ZVBob3Rvc1RvRGVsZXRlLmZvckVhY2goKGlkLCBpbmRleCkgPT4ge1xuICAgICAgICBmb3JtRGF0YS5hcHBlbmQoXG4gICAgICAgICAgYHNhbXBsaW5nW3BpY3R1cmVzX2F0dHJpYnV0ZXNdWyR7aW5kZXh9XVtpZF1gLFxuICAgICAgICAgIEpTT04uc3RyaW5naWZ5KGlkKSxcbiAgICAgICAgKTtcbiAgICAgICAgZm9ybURhdGEuYXBwZW5kKFxuICAgICAgICAgIGBzYW1wbGluZ1twaWN0dXJlc19hdHRyaWJ1dGVzXVske2luZGV4fV1bX2Rlc3Ryb3ldYCxcbiAgICAgICAgICAndHJ1ZScsXG4gICAgICAgICk7XG4gICAgICB9KTtcbiAgICByZXR1cm4gZm9ybURhdGE7XG4gIH07XG5cbiAgY29uc3QgdXBkYXRlT3JDcmVhdGUgPSAoZm9ybURhdGEpID0+IHtcbiAgICBjb25zdCB1cGRhdGVPckNyZWF0ZVN1Y2Nlc3MgPSAobXNnKSA9PiB7XG4gICAgICBzZXRTYXZpbmdNc2coaTE4bi50KG1zZykpO1xuICAgICAgc2V0U2FtcGxpbmdVcGRhdGVkKHRydWUpO1xuICAgICAgc2V0T3JpZ2luYWxTYXZlTWVzc2FnZVdpdGhUaW1lb3V0KCk7XG4gICAgICBoYW5kbGVDbG9zZSgpO1xuICAgIH07XG5cbiAgICBpZiAoc2FtcGxpbmdQcm9wZXJ0aWVzPy5zYW1wbGluZz8uaWQgPT09IG51bGwpIHtcbiAgICAgIC8vIGNyZWF0ZVxuICAgICAgZm9ybURhdGEuYXBwZW5kKGBzYW1wbGluZ1tkYXRlXWAsIGNvbGxlY3Rpb25UaW1lKTtcbiAgICAgIGF4aW9zXG4gICAgICAgIC5wb3N0KHVybHMoKS5zYW1wbGluZ1Byb3BlcnRpZXMuY3JlYXRlU2FtcGxpbmcudXJsLCBmb3JtRGF0YSlcbiAgICAgICAgLnRoZW4oKCkgPT4ge1xuICAgICAgICAgIHVwZGF0ZU9yQ3JlYXRlU3VjY2VzcygnYnV0dG9ucy5jcmVhdGVkJyk7XG4gICAgICAgIH0pXG4gICAgICAgIC5jYXRjaCgoKSA9PiB7XG4gICAgICAgICAgc2V0U2F2aW5nTXNnKGkxOG4udCgnYnV0dG9ucy5lcnJvcicpKTtcbiAgICAgICAgICBzZXRPcmlnaW5hbFNhdmVNZXNzYWdlV2l0aFRpbWVvdXQoKTtcbiAgICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIHVwZGF0ZVxuICAgICAgYXhpb3NcbiAgICAgICAgLnB1dChcbiAgICAgICAgICB1cmxzKHsgc2FtcGxpbmdJZDogc2FtcGxpbmdQcm9wZXJ0aWVzPy5zYW1wbGluZz8uaWQgfSlcbiAgICAgICAgICAgIC5zYW1wbGluZ1Byb3BlcnRpZXMudXBkYXRlU2FtcGxpbmcudXJsLFxuICAgICAgICAgIGZvcm1EYXRhLFxuICAgICAgICApXG4gICAgICAgIC50aGVuKCgpID0+IHtcbiAgICAgICAgICB1cGRhdGVPckNyZWF0ZVN1Y2Nlc3MoJ2J1dHRvbnMudXBkYXRlZCcpO1xuICAgICAgICB9KVxuICAgICAgICAuY2F0Y2goKCkgPT4ge1xuICAgICAgICAgIHNldFNhdmluZ01zZyhpMThuLnQoJ2J1dHRvbnMuZXJyb3InKSk7XG4gICAgICAgICAgc2V0T3JpZ2luYWxTYXZlTWVzc2FnZVdpdGhUaW1lb3V0KCk7XG4gICAgICAgIH0pO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBkZXRlY3RQYWdlVHlwZSA9IChzYW1wbGluZ1Byb3BlcnRpZXMsIGNvbGxlY3Rpb25UaW1lU2VydmVyLCBvcCkgPT4ge1xuICAgIGxldCBfcGFnZVR5cGU7XG4gICAgaWYgKG9wID09PSAnZWRpdCcpIHtcbiAgICAgIF9wYWdlVHlwZSA9IHNhbXBsaW5nUHJvcGVydGllcy5zYW1wbGluZy5pc19jYW5jZWxlZFxuICAgICAgICA/ICdjYW5jZWwnXG4gICAgICAgIDogJ2NvbGxlY3QnO1xuICAgICAgaWYgKGNvbGxlY3Rpb25UaW1lU2VydmVyKSB7XG4gICAgICAgIHNldENvbGxlY3Rpb25UaW1lKG5ldyBEYXRlKGNvbGxlY3Rpb25UaW1lU2VydmVyKSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBzZXRDb2xsZWN0aW9uVGltZShuZXcgRGF0ZSgpKTtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKG9wID09PSBDT0xMRUNUX1NBTVBMSU5HX09QKSB7XG4gICAgICBzZXRDb2xsZWN0aW9uVGltZShuZXcgRGF0ZSgpKTtcbiAgICAgIF9wYWdlVHlwZSA9ICdjb2xsZWN0JztcbiAgICB9IGVsc2UgaWYgKG9wID09PSBDQU5DRUxfU0FNUExJTkdfT1ApIHtcbiAgICAgIHNldENvbGxlY3Rpb25UaW1lKG5ldyBEYXRlKGNvbGxlY3Rpb25UaW1lU2VydmVyKSk7XG4gICAgICBfcGFnZVR5cGUgPSAnY2FuY2VsJztcbiAgICB9XG4gICAgcmV0dXJuIF9wYWdlVHlwZTtcbiAgfTtcblxuICBjb25zdCBpc1Byb3BlcnRpZXNQYWdlID0gcGFnZVR5cGUgPT09ICdlZGl0JztcblxuICBjb25zdCB7IHNhbXBsZUlkIH0gPSB1c2VQYXJhbXMoKTtcblxuICBjb25zdCBmZXRjaFNhbXBsaW5nUHJvcGVydGllcyA9IChzYW1wbGluZ0lkID0gc2FtcGxlSWQsIG9wKSA9PiB7XG4gICAgYXhpb3NcbiAgICAgIC5nZXQoXG4gICAgICAgIHVybHMoeyBzYW1wbGluZ0lkOiBzYW1wbGluZ0lkIH0pLnNhbXBsaW5nUHJvcGVydGllcy5mZXRjaFNhbXBsaW5nLnVybCxcbiAgICAgIClcbiAgICAgIC50aGVuKChyZXMpID0+IHtcbiAgICAgICAgY29uc3Qgc2FtcGxpbmdSZXMgPSByZXMuZGF0YTtcbiAgICAgICAgY29uc3Qgc2FtcGxpbmdQcm9wZXJ0aWVzID0gc2FtcGxpbmdSZXMuc2FtcGxpbmdfcHJvcGVydGllcztcbiAgICAgICAgY29uc3QgY29sbGVjdGlvblRpbWVTZXJ2ZXIgPVxuICAgICAgICAgIHNhbXBsaW5nUHJvcGVydGllcy5zYW1wbGluZy5jb2xsZWN0aW9uX3RpbWU7XG5cbiAgICAgICAgY29uc3QgX3BhZ2VUeXBlID0gZGV0ZWN0UGFnZVR5cGUoXG4gICAgICAgICAgc2FtcGxpbmdQcm9wZXJ0aWVzLFxuICAgICAgICAgIGNvbGxlY3Rpb25UaW1lU2VydmVyLFxuICAgICAgICAgIG9wLFxuICAgICAgICApO1xuICAgICAgICBzZXRQYWdlVHlwZShfcGFnZVR5cGUpO1xuXG4gICAgICAgIGNvbnN0IGlzQ2FuY2VsZWQgPVxuICAgICAgICAgIF9wYWdlVHlwZSA9PT0gJ2NhbmNlbCdcbiAgICAgICAgICAgID8gdHJ1ZVxuICAgICAgICAgICAgOiBfcGFnZVR5cGUgPT09ICdjb2xsZWN0J1xuICAgICAgICAgICAgPyBmYWxzZVxuICAgICAgICAgICAgOiBzYW1wbGluZ1Byb3BlcnRpZXMuc2FtcGxpbmcuaXNfY2FuY2VsZWQgfHwgZmFsc2U7XG5cbiAgICAgICAgY29uc3QgcGFnZUNvbGxlY3Rpb25UaW1lID1cbiAgICAgICAgICBfcGFnZVR5cGUgPT09ICdjb2xsZWN0J1xuICAgICAgICAgICAgPyBjb2xsZWN0aW9uVGltZVxuICAgICAgICAgICAgOiBzYW1wbGluZ1Byb3BlcnRpZXMuc2FtcGxpbmcuY29sbGVjdGlvbl90aW1lO1xuXG4gICAgICAgIGNvbnN0IHNhbSA9IHNhbXBsaW5nUHJvcGVydGllcy5zYW1wbGluZztcbiAgICAgICAgZm9ybWlrLnNldFZhbHVlcyh7XG4gICAgICAgICAgbGFiX2lkOiBzYW0ubGFiX2lkLFxuICAgICAgICAgIGNvbGxlY3Rpb25fdGltZTogcGFnZUNvbGxlY3Rpb25UaW1lLFxuICAgICAgICAgIHB1bXBfc2FtcGxpbmdfdm9sdW1lOiBzYW0ucHVtcF9zYW1wbGluZ192b2x1bWUsXG4gICAgICAgICAgcHVtcF9iYXR0ZXJ5X2xldmVsOiBzYW0ucHVtcF9iYXR0ZXJ5X2xldmVsLFxuICAgICAgICAgIGRlc2NyaXB0aW9uOiBzYW0uZGVzY3JpcHRpb24sXG4gICAgICAgICAga2FuZG9fcmVwOiBzYW0ua2FuZG9fcmVwLFxuICAgICAgICAgIHNhbXBsaW5nX3BsYW5faWQ6IHNhbS5zYW1wbGluZ19wbGFuX2lkLFxuICAgICAgICAgIGNhbmNlbGxhdGlvbl9yZWFzb246IHNhbS5jYW5jZWxsYXRpb25fcmVhc29uIHx8ICcnLFxuICAgICAgICAgIGlzX2NhbmNlbGVkOiBpc0NhbmNlbGVkLFxuICAgICAgICB9KTtcbiAgICAgICAgc2V0U2FtcGxpbmdQcm9wZXJ0aWVzKHNhbXBsaW5nUHJvcGVydGllcyk7XG4gICAgICAgIHNldFNhbXBsaW5nUGxhbihzYW1wbGluZ1Jlcy5zYW1wbGluZ19wbGFuKTtcbiAgICAgIH0pO1xuICB9O1xuXG4gIGNvbnN0IGdldFVybFF1ZXJ5T3AgPSAoKSA9PiB7XG4gICAgbGV0IG9wID0gcXVlcnkuZ2V0KCdvcCcpO1xuICAgIC8vIGlmIG5vdCBwcmVzZW50IHRoZW4gZGVmYXVsdCBvcCBpcyAnY29sbGVjdGluZydcbiAgICBpZiAoW3VuZGVmaW5lZCwgbnVsbCwgJyddLmluY2x1ZGVzKG9wKSkge1xuICAgICAgcmV0dXJuIENPTExFQ1RfU0FNUExJTkdfT1A7XG4gICAgfVxuICAgIHJldHVybiBvcDtcbiAgfTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGZldGNoU2FtcGxpbmdQcm9wZXJ0aWVzKHNhbXBsZUlkLCBnZXRVcmxRdWVyeU9wKCkpO1xuICB9LCBbc2FtcGxpbmdVcGRhdGVkXSk7XG5cbiAgaWYgKCFzYW1wbGluZ1BsYW4gfHwgIXNhbXBsaW5nUHJvcGVydGllcykge1xuICAgIHJldHVybiA8U3Bpbm5lciAvPjtcbiAgfVxuXG4gIHJldHVybiAoXG4gICAgPGZvcm0gb25TdWJtaXQ9e2Zvcm1pay5oYW5kbGVTdWJtaXR9PlxuICAgICAgPExheW91dD5cbiAgICAgICAgPFNhbXBsaW5nUHJvcGVydGllc1N0eWxlPlxuICAgICAgICAgIHshaXNNb2JpbGUgJiYgKFxuICAgICAgICAgICAgPFNhbXBsaW5nUHJvcGVydGllc0hlYWRcbiAgICAgICAgICAgICAgc2FtcGxpbmdQcm9wZXJ0aWVzPXtzYW1wbGluZ1Byb3BlcnRpZXN9XG4gICAgICAgICAgICAgIHNhbXBsaW5nPXtzYW1wbGluZ1BsYW59XG4gICAgICAgICAgICAgIGZvcm1paz17Zm9ybWlrfVxuICAgICAgICAgICAgICBwYWdlVHlwZT17cGFnZVR5cGV9XG4gICAgICAgICAgICAgIGNvbGxlY3Rpb25EYXRlPXtjb2xsZWN0aW9uVGltZX1cbiAgICAgICAgICAgICAgc2V0Q29sbGVjdGlvbkRhdGU9e3NldENvbGxlY3Rpb25UaW1lfVxuICAgICAgICAgICAgICBzZXRTYW1wbGluZ1VwZGF0ZWQ9e3NldFNhbXBsaW5nVXBkYXRlZH1cbiAgICAgICAgICAgICAgaXNEYXRlUGlja2VyRGlzYWJsZWQ9e2lzUHJvcGVydGllc1BhZ2V9XG4gICAgICAgICAgICAgIGRhdGVGb3JtYXQ9e2RhdGVGb3JtYXR9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICl9XG5cbiAgICAgICAgICB7aXNNb2JpbGUgJiYgKFxuICAgICAgICAgICAgPFNhbXBsaW5nUHJvcGVydGllc0hlYWRNb2JpbGVcbiAgICAgICAgICAgICAgc2FtcGxpbmdQcm9wZXJ0aWVzPXtzYW1wbGluZ1Byb3BlcnRpZXN9XG4gICAgICAgICAgICAgIHNhbXBsaW5nPXtzYW1wbGluZ1BsYW59XG4gICAgICAgICAgICAgIGZvcm1paz17Zm9ybWlrfVxuICAgICAgICAgICAgICBwYWdlVHlwZT17cGFnZVR5cGV9XG4gICAgICAgICAgICAgIGNvbGxlY3Rpb25EYXRlPXtjb2xsZWN0aW9uVGltZX1cbiAgICAgICAgICAgICAgc2V0Q29sbGVjdGlvbkRhdGU9e3NldENvbGxlY3Rpb25UaW1lfVxuICAgICAgICAgICAgICBzZXRTYW1wbGluZ1VwZGF0ZWQ9e3NldFNhbXBsaW5nVXBkYXRlZH1cbiAgICAgICAgICAgICAgaXNEYXRlUGlja2VyRGlzYWJsZWQ9e2lzUHJvcGVydGllc1BhZ2V9XG4gICAgICAgICAgICAgIGRhdGVGb3JtYXQ9e2RhdGVGb3JtYXR9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICl9XG5cbiAgICAgICAgICB7c2FtcGxpbmdQcm9wZXJ0aWVzICE9PSB1bmRlZmluZWQgJiYgcGFnZVR5cGUgIT09IHVuZGVmaW5lZCAmJiAoXG4gICAgICAgICAgICA8U2FtcGxpbmdQcm9wZXJ0aWVzRm9ybVxuICAgICAgICAgICAgICBzYW1wbGluZ1Byb3BlcnRpZXM9e3NhbXBsaW5nUHJvcGVydGllc31cbiAgICAgICAgICAgICAgc2FtcGxpbmc9e3NhbXBsaW5nUGxhbn1cbiAgICAgICAgICAgICAgcGFnZVR5cGU9e3BhZ2VUeXBlfVxuICAgICAgICAgICAgICBzZXRTYW1wbGluZ1VwZGF0ZWQ9e3NldFNhbXBsaW5nVXBkYXRlZH1cbiAgICAgICAgICAgICAgc2F2aW5nTXNnPXtzYXZpbmdNc2d9XG4gICAgICAgICAgICAgIGhhbmRsZUNsb3NlPXtoYW5kbGVDbG9zZX1cbiAgICAgICAgICAgICAgc2V0UGhvdG9zVG9EZWxldGU9e3NldFBob3Rvc1RvRGVsZXRlfVxuICAgICAgICAgICAgICBzZXRQaG90b3M9e3NldFBob3Rvc31cbiAgICAgICAgICAgICAgcGhvdG9zPXtwaG90b3N9XG4gICAgICAgICAgICAgIGZvcm1paz17Zm9ybWlrfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApfVxuICAgICAgICA8L1NhbXBsaW5nUHJvcGVydGllc1N0eWxlPlxuICAgICAgPC9MYXlvdXQ+XG4gICAgPC9mb3JtPlxuICApO1xufTtcblxuY29uc3QgU2FtcGxpbmdQcm9wZXJ0aWVzU3R5bGUgPSBzdHlsZWQuZGl2YFxuICAkeyFpc01vYmlsZSA/ICd3aWR0aDogODMwcHg7JyA6ICcnfVxuICAkeyFpc01vYmlsZSA/ICdtYXJnaW46IDEwMHB4IGF1dG87JyA6ICcnfVxuYDtcbiJdfQ==
309
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wYWdlcy9TYW1wbGluZ3NQYWdlL1NhbXBsaW5nUHJvcGVydGllcy9TYW1wbGluZ1Byb3BlcnRpZXMudHN4Il0sIm5hbWVzIjpbIlNhbXBsaW5nUHJvcGVydGllcyIsIkRhdGUiLCJub3ciLCJmb3JtYXQiLCJjb2xsZWN0aW9uVGltZSIsInNldENvbGxlY3Rpb25UaW1lIiwicGhvdG9zIiwic2V0UGhvdG9zIiwicGhvdG9zVG9EZWxldGUiLCJzZXRQaG90b3NUb0RlbGV0ZSIsImkxOG4iLCJ0Iiwic2F2aW5nTXNnIiwic2V0U2F2aW5nTXNnIiwic2FtcGxpbmdVcGRhdGVkIiwic2V0U2FtcGxpbmdVcGRhdGVkIiwidW5kZWZpbmVkIiwic2FtcGxpbmdQbGFuIiwic2V0U2FtcGxpbmdQbGFuIiwiaGlzdG9yeSIsInF1ZXJ5IiwidXNlckluZm8iLCJzdGF0ZSIsInBlcm1pc3Npb25zIiwidXNlcl9pbmZvIiwiZGF0ZUZvcm1hdCIsImRhdGVfdGltZV9mb3JtYXQiLCJwYWdlVHlwZSIsInNldFBhZ2VUeXBlIiwic2FtcGxpbmdQcm9wZXJ0aWVzIiwic2V0U2FtcGxpbmdQcm9wZXJ0aWVzIiwidmFsaWRhdGlvblNjaGVtYSIsInByb3BlcnRpZXNWYWxpZGF0aW9uU2NoZW1hIiwiY2FuY2VsbGF0aW9uVmFsaWRhdGlvblNjaGVtYSIsImZvcm1payIsImVuYWJsZVJlaW5pdGlhbGl6ZSIsImluaXRpYWxWYWx1ZXMiLCJzYW1wbGluZ1Byb3BlcnR5IiwidmFsaWRhdGVPbkNoYW5nZSIsInZhbGlkYXRlT25CbHVyIiwib25TdWJtaXQiLCJ2YWx1ZXMiLCJoYW5kbGVTdWJtaXQiLCJoYW5kbGVDbG9zZSIsImdvQmFjayIsInBpY3R1cmVzX2F0dHJpYnV0ZXMiLCJzYXZlRm9ybURhdGEiLCJmb3JtRGF0YUJ1aWxkZXIiLCJ1cGRhdGVPckNyZWF0ZSIsInNldE9yaWdpbmFsU2F2ZU1lc3NhZ2VXaXRoVGltZW91dCIsInNldFRpbWVvdXQiLCJmb3JtRGF0YSIsIkZvcm1EYXRhIiwia2V5IiwidmFsdWUiLCJhcHBlbmQiLCJ1bmlxdWVQaG90b3NUb0RlbGV0ZSIsIlNldCIsImxlbmd0aCIsImZvckVhY2giLCJpZCIsImluZGV4IiwiSlNPTiIsInN0cmluZ2lmeSIsInVwZGF0ZU9yQ3JlYXRlU3VjY2VzcyIsIm1zZyIsInNhbXBsaW5nIiwiYXhpb3MiLCJwb3N0IiwiY3JlYXRlU2FtcGxpbmciLCJ1cmwiLCJ0aGVuIiwiY2F0Y2giLCJwdXQiLCJzYW1wbGluZ0lkIiwidXBkYXRlU2FtcGxpbmciLCJkZXRlY3RQYWdlVHlwZSIsImNvbGxlY3Rpb25UaW1lU2VydmVyIiwib3AiLCJfcGFnZVR5cGUiLCJpc19jYW5jZWxlZCIsIkNPTExFQ1RfU0FNUExJTkdfT1AiLCJDQU5DRUxfU0FNUExJTkdfT1AiLCJpc1Byb3BlcnRpZXNQYWdlIiwic2FtcGxlSWQiLCJmZXRjaFNhbXBsaW5nUHJvcGVydGllcyIsImdldCIsImZldGNoU2FtcGxpbmciLCJyZXMiLCJzYW1wbGluZ1JlcyIsImRhdGEiLCJzYW1wbGluZ19wcm9wZXJ0aWVzIiwiY29sbGVjdGlvbl90aW1lIiwiaXNDYW5jZWxlZCIsInBhZ2VDb2xsZWN0aW9uVGltZSIsInNhbSIsInNldFZhbHVlcyIsImxhYl9pZCIsInB1bXBfc2FtcGxpbmdfdm9sdW1lIiwicHVtcF9iYXR0ZXJ5X2xldmVsIiwiZGVzY3JpcHRpb24iLCJrYW5kb19yZXAiLCJzYW1wbGluZ19wbGFuX2lkIiwiY2FuY2VsbGF0aW9uX3JlYXNvbiIsInNhbXBsaW5nX3BsYW4iLCJnZXRVcmxRdWVyeU9wIiwiaW5jbHVkZXMiLCJpc01vYmlsZSIsIlNhbXBsaW5nUHJvcGVydGllc1N0eWxlIiwic3R5bGVkIiwiZGl2Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7OztBQUdBOztBQUNBOztBQUNBOztBQUdBOztBQUNBOztBQUNBOztBQUNBOztBQUVBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUVBOztBQUtBOztBQUNBOztB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RSxJQUFBLGtCQUFrQixFQUFFOUUsa0JBRHRCO0FBRUUsSUFBQSxRQUFRLEVBQUVaLFlBRlo7QUFHRSxJQUFBLE1BQU0sRUFBRWlCLE1BSFY7QUFJRSxJQUFBLFFBQVEsRUFBRVAsUUFKWjtBQUtFLElBQUEsY0FBYyxFQUFFdkIsY0FMbEI7QUFNRSxJQUFBLGlCQUFpQixFQUFFQyxpQkFOckI7QUFPRSxJQUFBLGtCQUFrQixFQUFFVSxrQkFQdEI7QUFRRSxJQUFBLG9CQUFvQixFQUFFb0UsZ0JBUnhCO0FBU0UsSUFBQSxVQUFVLEVBQUUxRDtBQVRkLElBaEJKLEVBNkJHSSxrQkFBa0IsSUFBSUYsUUFBdEIsaUJBQ0MsNkJBQUMsOENBQUQ7QUFDRSxJQUFBLGtCQUFrQixFQUFFRSxrQkFEdEI7QUFFRSxJQUFBLFFBQVEsRUFBRVosWUFGWjtBQUdFLElBQUEsUUFBUSxFQUFFVSxRQUhaO0FBSUUsSUFBQSxrQkFBa0IsRUFBRVosa0JBSnRCO0FBS0UsSUFBQSxTQUFTLEVBQUVILFNBTGI7QUFNRSxJQUFBLFdBQVcsRUFBRStCLFdBTmY7QUFPRSxJQUFBLGlCQUFpQixFQUFFbEMsaUJBUHJCO0FBUUUsSUFBQSxTQUFTLEVBQUVGLFNBUmI7QUFTRSxJQUFBLE1BQU0sRUFBRUQsTUFUVjtBQVVFLElBQUEsTUFBTSxFQUFFNEI7QUFWVixJQTlCSixDQURGLENBREYsQ0FERjtBQWtERCxDQS9QTTs7OztBQWlRUCxJQUFNMEUsdUJBQXVCLEdBQUdDLDBCQUFPQyxHQUFWO0FBQUE7QUFBQTtBQUFBLGtCQUN6QixDQUFDSCwyQkFBRCxHQUFZLGVBQVosR0FBOEIsRUFETCxFQUV6QixDQUFDQSwyQkFBRCxHQUFZLHFCQUFaLEdBQW9DLEVBRlgsQ0FBN0IiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogUHJvcGVydGllcyBhbmQgQ2FuY2VsbGluZyBmb3Jtcy5cbiAqKi9cbmltcG9ydCBSZWFjdCwgeyBGQywgdXNlRWZmZWN0LCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBheGlvcyBmcm9tICdheGlvcyc7XG5pbXBvcnQgbW9tZW50IGZyb20gJ21vbWVudCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzL21hY3JvJztcbmltcG9ydCB7IEZvcm1pa0NvbmZpZyB9IGZyb20gJ2Zvcm1pay9kaXN0L3R5cGVzJztcbmltcG9ydCB7IGlzTW9iaWxlIH0gZnJvbSAncmVhY3QtZGV2aWNlLWRldGVjdCc7XG5pbXBvcnQgeyB1c2VGb3JtaWsgfSBmcm9tICdmb3JtaWsnO1xuaW1wb3J0IHsgdXNlSGlzdG9yeSwgdXNlUGFyYW1zIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQgeyB1c2VTZWxlY3RvciB9IGZyb20gJ3JlYWN0LXJlZHV4JztcblxuaW1wb3J0IExheW91dCBmcm9tICdzcmMvdWkta2l0L0xheW91dC9MYXlvdXQnO1xuaW1wb3J0IGkxOG4gZnJvbSAnc3JjL3V0aWxpdGllcy9pMThuJztcbmltcG9ydCB1c2VRdWVyeVVSTCBmcm9tICdzcmMvaG9va3MvdXNlUXVlcnlVUkwnO1xuaW1wb3J0IHsgU3Bpbm5lciB9IGZyb20gJ3NyYy9jb21wb25lbnRzL1NwaW5uZXIvU3Bpbm5lcic7XG5pbXBvcnQgeyB1cmxzIH0gZnJvbSAnc3JjL3V0aWxpdGllcy91cmxzJztcblxuaW1wb3J0IHtcbiAgQ0FOQ0VMX1NBTVBMSU5HX09QLFxuICBDT0xMRUNUX1NBTVBMSU5HX09QLFxuICBTYW1wbGluZ0ZldGNoRGF0YSxcbn0gZnJvbSAnLi4vc2FtcGxpbmdzUGFnZVV0aWxzJztcbmltcG9ydCB7IFNhbXBsaW5nUHJvcGVydGllc0Zvcm0gfSBmcm9tICcuL1NhbXBsaW5nUHJvcGVydGllc0Zvcm0nO1xuaW1wb3J0IHsgU2FtcGxpbmdQcm9wZXJ0aWVzSGVhZCB9IGZyb20gJy4vU2FtcGxpbmdQcm9wZXJ0aWVzSGVhZCc7XG5pbXBvcnQgeyBTYW1wbGluZ1Byb3BlcnRpZXNIZWFkTW9iaWxlIH0gZnJvbSAnLi9TYW1wbGluZ1Byb3BlcnRpZXNIZWFkTW9iaWxlJztcbmltcG9ydCB7XG4gIGNhbmNlbGxhdGlvblZhbGlkYXRpb25TY2hlbWEsXG4gIHByb3BlcnRpZXNWYWxpZGF0aW9uU2NoZW1hLFxuICBUU2FtcGxpbmdQcm9wZXJ0aWVzLFxuICBzYW1wbGluZ1Byb3BlcnR5LFxuICBGb3JtVHlwZSxcbn0gZnJvbSAnLi9zYW1wbGluZ1Byb3BlcnRpZXNVdGlscyc7XG5cbmV4cG9ydCBjb25zdCBTYW1wbGluZ1Byb3BlcnRpZXM6IEZDID0gKCkgPT4ge1xuICBjb25zdCBbY29sbGVjdGlvblRpbWUsIHNldENvbGxlY3Rpb25UaW1lXSA9IHVzZVN0YXRlPHN0cmluZyB8IERhdGUgfCBudWxsPihcbiAgICBtb21lbnQoRGF0ZS5ub3coKSkuZm9ybWF0KCdERC9NTS9ZWVlZIGhoOm1tJyksXG4gICk7XG4gIGNvbnN0IFtwaG90b3MsIHNldFBob3Rvc10gPSB1c2VTdGF0ZTxzdHJpbmcgfCBCbG9iIHwgYW55PihbXSk7XG4gIGNvbnN0IFtwaG90b3NUb0RlbGV0ZSwgc2V0UGhvdG9zVG9EZWxldGVdID0gdXNlU3RhdGU8bnVtYmVyW10+KFtdKTtcbiAgY29uc3QgW3NhdmluZ01zZywgc2V0U2F2aW5nTXNnXSA9IHVzZVN0YXRlPHN0cmluZz4oaTE4bi50KCdidXR0b25zLnNhdmUnKSk7XG4gIGNvbnN0IFtzYW1wbGluZ1VwZGF0ZWQsIHNldFNhbXBsaW5nVXBkYXRlZF0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IFtzYW1wbGluZ1BsYW4sIHNldFNhbXBsaW5nUGxhbl0gPSB1c2VTdGF0ZTxcbiAgICBTYW1wbGluZ0ZldGNoRGF0YSB8IHVuZGVmaW5lZFxuICA+KHVuZGVmaW5lZCk7XG4gIGNvbnN0IGhpc3RvcnkgPSB1c2VIaXN0b3J5KCk7XG4gIGNvbnN0IHF1ZXJ5ID0gdXNlUXVlcnlVUkwoKTtcblxuICBjb25zdCB1c2VySW5mbyA9IHVzZVNlbGVjdG9yKChzdGF0ZSkgPT4gc3RhdGUucGVybWlzc2lvbnMudXNlcl9pbmZvKTtcbiAgY29uc3QgZGF0ZUZvcm1hdCA9XG4gICAgdXNlckluZm8uZGF0ZV90aW1lX2Zvcm1hdCA9PT0gJ3VzJ1xuICAgICAgPyAnTU1NIGQsIHl5eXkgaGg6bW0gYWEnXG4gICAgICA6ICdkL01NL3l5eXkgSEg6bW0nO1xuICBjb25zdCBbcGFnZVR5cGUsIHNldFBhZ2VUeXBlXSA9IHVzZVN0YXRlPHN0cmluZyB8IG51bGw+KCk7XG4gIGNvbnN0IFtzYW1wbGluZ1Byb3BlcnRpZXMsIHNldFNhbXBsaW5nUHJvcGVydGllc10gPVxuICAgIHVzZVN0YXRlPFRTYW1wbGluZ1Byb3BlcnRpZXM+KCk7XG4gIGNvbnN0IHZhbGlkYXRpb25TY2hlbWEgPVxuICAgIHBhZ2VUeXBlID09PSAnY29sbGVjdCdcbiAgICAgID8gcHJvcGVydGllc1ZhbGlkYXRpb25TY2hlbWFcbiAgICAgIDogY2FuY2VsbGF0aW9uVmFsaWRhdGlvblNjaGVtYTtcblxuICBjb25zdCBmb3JtaWsgPSB1c2VGb3JtaWs8Rm9ybWlrQ29uZmlnPEZvcm1UeXBlPj4oe1xuICAgIGVuYWJsZVJlaW5pdGlhbGl6ZTogdHJ1ZSxcbiAgICBpbml0aWFsVmFsdWVzOiBzYW1wbGluZ1Byb3BlcnR5LFxuICAgIHZhbGlkYXRpb25TY2hlbWE6IHZhbGlkYXRpb25TY2hlbWEsXG4gICAgdmFsaWRhdGVPbkNoYW5nZTogZmFsc2UsXG4gICAgdmFsaWRhdGVPbkJsdXI6IHRydWUsXG4gICAgb25TdWJtaXQ6ICh2YWx1ZXMpID0+IHtcbiAgICAgIGhhbmRsZVN1Ym1pdCh2YWx1ZXMpO1xuICAgIH0sXG4gIH0pO1xuXG4gIGNvbnN0IGhhbmRsZUNsb3NlID0gKCkgPT4ge1xuICAgIGhpc3RvcnkuZ29CYWNrKCk7XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlU3VibWl0ID0gKHZhbHVlcykgPT4ge1xuICAgIHNldFNhdmluZ01zZyhpMThuLnQoJ2J1dHRvbnMuc2F2aW5nJykpO1xuICAgIHZhbHVlcy5waWN0dXJlc19hdHRyaWJ1dGVzID0gcGhvdG9zO1xuICAgIGNvbnN0IHNhdmVGb3JtRGF0YSA9IGZvcm1EYXRhQnVpbGRlcih2YWx1ZXMpO1xuICAgIHVwZGF0ZU9yQ3JlYXRlKHNhdmVGb3JtRGF0YSk7XG4gIH07XG5cbiAgY29uc3Qgc2V0T3JpZ2luYWxTYXZlTWVzc2FnZVdpdGhUaW1lb3V0ID0gKCkgPT4ge1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgc2V0U2F2aW5nTXNnKGkxOG4udCgnYnV0dG9ucy5zYXZlJykpO1xuICAgIH0sIDMwMDApO1xuICB9O1xuXG4gIGNvbnN0IGZvcm1EYXRhQnVpbGRlciA9ICh2YWx1ZXMpID0+IHtcbiAgICBjb25zdCBmb3JtRGF0YSA9IG5ldyBGb3JtRGF0YSgpO1xuICAgIGZvciAoY29uc3Qga2V5IGluIHZhbHVlcykge1xuICAgICAgaWYgKGtleSAhPT0gJ3BpY3R1cmVzX2F0dHJpYnV0ZXMnKSB7XG4gICAgICAgIGNvbnN0IHZhbHVlID0gdmFsdWVzW2tleV0gPT09IG51bGwgPyAnJyA6IHZhbHVlc1trZXldO1xuICAgICAgICBmb3JtRGF0YS5hcHBlbmQoYHNhbXBsaW5nWyR7a2V5fV1gLCB2YWx1ZSk7XG4gICAgICB9XG4gICAgfVxuICAgIGxldCB1bmlxdWVQaG90b3NUb0RlbGV0ZSA9IFsuLi5uZXcgU2V0KHBob3Rvc1RvRGVsZXRlKV07XG4gICAgdW5pcXVlUGhvdG9zVG9EZWxldGUubGVuZ3RoICE9PSAwICYmXG4gICAgICB1bmlxdWVQaG90b3NUb0RlbGV0ZS5mb3JFYWNoKChpZCwgaW5kZXgpID0+IHtcbiAgICAgICAgZm9ybURhdGEuYXBwZW5kKFxuICAgICAgICAgIGBzYW1wbGluZ1twaWN0dXJlc19hdHRyaWJ1dGVzXVske2luZGV4fV1baWRdYCxcbiAgICAgICAgICBKU09OLnN0cmluZ2lmeShpZCksXG4gICAgICAgICk7XG4gICAgICAgIGZvcm1EYXRhLmFwcGVuZChcbiAgICAgICAgICBgc2FtcGxpbmdbcGljdHVyZXNfYXR0cmlidXRlc11bJHtpbmRleH1dW19kZXN0cm95XWAsXG4gICAgICAgICAgJ3RydWUnLFxuICAgICAgICApO1xuICAgICAgfSk7XG4gICAgcmV0dXJuIGZvcm1EYXRhO1xuICB9O1xuXG4gIGNvbnN0IHVwZGF0ZU9yQ3JlYXRlID0gKGZvcm1EYXRhKSA9PiB7XG4gICAgY29uc3QgdXBkYXRlT3JDcmVhdGVTdWNjZXNzID0gKG1zZykgPT4ge1xuICAgICAgc2V0U2F2aW5nTXNnKGkxOG4udChtc2cpKTtcbiAgICAgIHNldFNhbXBsaW5nVXBkYXRlZCh0cnVlKTtcbiAgICAgIHNldE9yaWdpbmFsU2F2ZU1lc3NhZ2VXaXRoVGltZW91dCgpO1xuICAgICAgaGFuZGxlQ2xvc2UoKTtcbiAgICB9O1xuXG4gICAgaWYgKHNhbXBsaW5nUHJvcGVydGllcz8uc2FtcGxpbmc/LmlkID09PSBudWxsKSB7XG4gICAgICAvLyBjcmVhdGVcbiAgICAgIGZvcm1EYXRhLmFwcGVuZChgc2FtcGxpbmdbZGF0ZV1gLCBjb2xsZWN0aW9uVGltZSk7XG4gICAgICBheGlvc1xuICAgICAgICAucG9zdCh1cmxzKCkuc2FtcGxpbmdQcm9wZXJ0aWVzLmNyZWF0ZVNhbXBsaW5nLnVybCwgZm9ybURhdGEpXG4gICAgICAgIC50aGVuKCgpID0+IHtcbiAgICAgICAgICB1cGRhdGVPckNyZWF0ZVN1Y2Nlc3MoJ2J1dHRvbnMuY3JlYXRlZCcpO1xuICAgICAgICB9KVxuICAgICAgICAuY2F0Y2goKCkgPT4ge1xuICAgICAgICAgIHNldFNhdmluZ01zZyhpMThuLnQoJ2J1dHRvbnMuZXJyb3InKSk7XG4gICAgICAgICAgc2V0T3JpZ2luYWxTYXZlTWVzc2FnZVdpdGhUaW1lb3V0KCk7XG4gICAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyB1cGRhdGVcbiAgICAgIGF4aW9zXG4gICAgICAgIC5wdXQoXG4gICAgICAgICAgdXJscyh7IHNhbXBsaW5nSWQ6IHNhbXBsaW5nUHJvcGVydGllcz8uc2FtcGxpbmc/LmlkIH0pXG4gICAgICAgICAgICAuc2FtcGxpbmdQcm9wZXJ0aWVzLnVwZGF0ZVNhbXBsaW5nLnVybCxcbiAgICAgICAgICBmb3JtRGF0YSxcbiAgICAgICAgKVxuICAgICAgICAudGhlbigoKSA9PiB7XG4gICAgICAgICAgdXBkYXRlT3JDcmVhdGVTdWNjZXNzKCdidXR0b25zLnVwZGF0ZWQnKTtcbiAgICAgICAgfSlcbiAgICAgICAgLmNhdGNoKCgpID0+IHtcbiAgICAgICAgICBzZXRTYXZpbmdNc2coaTE4bi50KCdidXR0b25zLmVycm9yJykpO1xuICAgICAgICAgIHNldE9yaWdpbmFsU2F2ZU1lc3NhZ2VXaXRoVGltZW91dCgpO1xuICAgICAgICB9KTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgZGV0ZWN0UGFnZVR5cGUgPSAoc2FtcGxpbmdQcm9wZXJ0aWVzLCBjb2xsZWN0aW9uVGltZVNlcnZlciwgb3ApID0+IHtcbiAgICBsZXQgX3BhZ2VUeXBlO1xuICAgIGlmIChvcCA9PT0gJ2VkaXQnKSB7XG4gICAgICBfcGFnZVR5cGUgPSBzYW1wbGluZ1Byb3BlcnRpZXMuc2FtcGxpbmcuaXNfY2FuY2VsZWRcbiAgICAgICAgPyAnY2FuY2VsJ1xuICAgICAgICA6ICdjb2xsZWN0JztcbiAgICAgIGlmIChjb2xsZWN0aW9uVGltZVNlcnZlcikge1xuICAgICAgICBzZXRDb2xsZWN0aW9uVGltZShuZXcgRGF0ZShjb2xsZWN0aW9uVGltZVNlcnZlcikpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgc2V0Q29sbGVjdGlvblRpbWUobmV3IERhdGUoKSk7XG4gICAgICB9XG4gICAgfSBlbHNlIGlmIChvcCA9PT0gQ09MTEVDVF9TQU1QTElOR19PUCkge1xuICAgICAgc2V0Q29sbGVjdGlvblRpbWUobmV3IERhdGUoKSk7XG4gICAgICBfcGFnZVR5cGUgPSAnY29sbGVjdCc7XG4gICAgfSBlbHNlIGlmIChvcCA9PT0gQ0FOQ0VMX1NBTVBMSU5HX09QKSB7XG4gICAgICBzZXRDb2xsZWN0aW9uVGltZShuZXcgRGF0ZShjb2xsZWN0aW9uVGltZVNlcnZlcikpO1xuICAgICAgX3BhZ2VUeXBlID0gJ2NhbmNlbCc7XG4gICAgfVxuICAgIHJldHVybiBfcGFnZVR5cGU7XG4gIH07XG5cbiAgY29uc3QgaXNQcm9wZXJ0aWVzUGFnZSA9IHBhZ2VUeXBlID09PSAnZWRpdCc7XG5cbiAgY29uc3QgeyBzYW1wbGVJZCB9ID0gdXNlUGFyYW1zKCk7XG5cbiAgY29uc3QgZmV0Y2hTYW1wbGluZ1Byb3BlcnRpZXMgPSAoc2FtcGxpbmdJZCA9IHNhbXBsZUlkLCBvcCkgPT4ge1xuICAgIGF4aW9zXG4gICAgICAuZ2V0KFxuICAgICAgICB1cmxzKHsgc2FtcGxpbmdJZDogc2FtcGxpbmdJZCB9KS5zYW1wbGluZ1Byb3BlcnRpZXMuZmV0Y2hTYW1wbGluZy51cmwsXG4gICAgICApXG4gICAgICAudGhlbigocmVzKSA9PiB7XG4gICAgICAgIGNvbnN0IHNhbXBsaW5nUmVzID0gcmVzLmRhdGE7XG4gICAgICAgIGNvbnN0IHNhbXBsaW5nUHJvcGVydGllcyA9IHNhbXBsaW5nUmVzLnNhbXBsaW5nX3Byb3BlcnRpZXM7XG4gICAgICAgIGNvbnN0IGNvbGxlY3Rpb25UaW1lU2VydmVyID1cbiAgICAgICAgICBzYW1wbGluZ1Byb3BlcnRpZXMuc2FtcGxpbmcuY29sbGVjdGlvbl90aW1lO1xuXG4gICAgICAgIGNvbnN0IF9wYWdlVHlwZSA9IGRldGVjdFBhZ2VUeXBlKFxuICAgICAgICAgIHNhbXBsaW5nUHJvcGVydGllcyxcbiAgICAgICAgICBjb2xsZWN0aW9uVGltZVNlcnZlcixcbiAgICAgICAgICBvcCxcbiAgICAgICAgKTtcbiAgICAgICAgc2V0UGFnZVR5cGUoX3BhZ2VUeXBlKTtcblxuICAgICAgICBjb25zdCBpc0NhbmNlbGVkID1cbiAgICAgICAgICBfcGFnZVR5cGUgPT09ICdjYW5jZWwnXG4gICAgICAgICAgICA/IHRydWVcbiAgICAgICAgICAgIDogX3BhZ2VUeXBlID09PSAnY29sbGVjdCdcbiAgICAgICAgICAgID8gZmFsc2VcbiAgICAgICAgICAgIDogc2FtcGxpbmdQcm9wZXJ0aWVzLnNhbXBsaW5nLmlzX2NhbmNlbGVkIHx8IGZhbHNlO1xuXG4gICAgICAgIGNvbnN0IHBhZ2VDb2xsZWN0aW9uVGltZSA9XG4gICAgICAgICAgX3BhZ2VUeXBlID09PSAnY29sbGVjdCdcbiAgICAgICAgICAgID8gY29sbGVjdGlvblRpbWVcbiAgICAgICAgICAgIDogc2FtcGxpbmdQcm9wZXJ0aWVzLnNhbXBsaW5nLmNvbGxlY3Rpb25fdGltZTtcblxuICAgICAgICBjb25zdCBzYW0gPSBzYW1wbGluZ1Byb3BlcnRpZXMuc2FtcGxpbmc7XG4gICAgICAgIGZvcm1pay5zZXRWYWx1ZXMoe1xuICAgICAgICAgIGxhYl9pZDogc2FtLmxhYl9pZCxcbiAgICAgICAgICBjb2xsZWN0aW9uX3RpbWU6IHBhZ2VDb2xsZWN0aW9uVGltZSxcbiAgICAgICAgICBwdW1wX3NhbXBsaW5nX3ZvbHVtZTogc2FtLnB1bXBfc2FtcGxpbmdfdm9sdW1lLFxuICAgICAgICAgIHB1bXBfYmF0dGVyeV9sZXZlbDogc2FtLnB1bXBfYmF0dGVyeV9sZXZlbCxcbiAgICAgICAgICBkZXNjcmlwdGlvbjogc2FtLmRlc2NyaXB0aW9uLFxuICAgICAgICAgIGthbmRvX3JlcDogc2FtLmthbmRvX3JlcCxcbiAgICAgICAgICBzYW1wbGluZ19wbGFuX2lkOiBzYW0uc2FtcGxpbmdfcGxhbl9pZCxcbiAgICAgICAgICBjYW5jZWxsYXRpb25fcmVhc29uOiBzYW0uY2FuY2VsbGF0aW9uX3JlYXNvbiB8fCAnJyxcbiAgICAgICAgICBpc19jYW5jZWxlZDogaXNDYW5jZWxlZCxcbiAgICAgICAgfSk7XG4gICAgICAgIHNldFNhbXBsaW5nUHJvcGVydGllcyhzYW1wbGluZ1Byb3BlcnRpZXMpO1xuICAgICAgICBzZXRTYW1wbGluZ1BsYW4oc2FtcGxpbmdSZXMuc2FtcGxpbmdfcGxhbik7XG4gICAgICB9KTtcbiAgfTtcblxuICBjb25zdCBnZXRVcmxRdWVyeU9wID0gKCkgPT4ge1xuICAgIGxldCBvcCA9IHF1ZXJ5LmdldCgnb3AnKTtcbiAgICAvLyBpZiBub3QgcHJlc2VudCB0aGVuIGRlZmF1bHQgb3AgaXMgJ2NvbGxlY3RpbmcnXG4gICAgaWYgKFt1bmRlZmluZWQsIG51bGwsICcnXS5pbmNsdWRlcyhvcCkpIHtcbiAgICAgIHJldHVybiBDT0xMRUNUX1NBTVBMSU5HX09QO1xuICAgIH1cbiAgICByZXR1cm4gb3A7XG4gIH07XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBmZXRjaFNhbXBsaW5nUHJvcGVydGllcyhzYW1wbGVJZCwgZ2V0VXJsUXVlcnlPcCgpKTtcbiAgfSwgW3NhbXBsaW5nVXBkYXRlZF0pO1xuXG4gIGlmICghc2FtcGxpbmdQbGFuIHx8ICFzYW1wbGluZ1Byb3BlcnRpZXMpIHtcbiAgICByZXR1cm4gPFNwaW5uZXIgLz47XG4gIH1cblxuICByZXR1cm4gKFxuICAgIDxmb3JtIG9uU3VibWl0PXtmb3JtaWsuaGFuZGxlU3VibWl0fT5cbiAgICAgIDxMYXlvdXQ+XG4gICAgICAgIDxTYW1wbGluZ1Byb3BlcnRpZXNTdHlsZT5cbiAgICAgICAgICB7IWlzTW9iaWxlICYmIChcbiAgICAgICAgICAgIDxTYW1wbGluZ1Byb3BlcnRpZXNIZWFkXG4gICAgICAgICAgICAgIHNhbXBsaW5nUHJvcGVydGllcz17c2FtcGxpbmdQcm9wZXJ0aWVzfVxuICAgICAgICAgICAgICBzYW1wbGluZz17c2FtcGxpbmdQbGFufVxuICAgICAgICAgICAgICBmb3JtaWs9e2Zvcm1pa31cbiAgICAgICAgICAgICAgcGFnZVR5cGU9e3BhZ2VUeXBlfVxuICAgICAgICAgICAgICBjb2xsZWN0aW9uRGF0ZT17Y29sbGVjdGlvblRpbWV9XG4gICAgICAgICAgICAgIHNldENvbGxlY3Rpb25EYXRlPXtzZXRDb2xsZWN0aW9uVGltZX1cbiAgICAgICAgICAgICAgc2V0U2FtcGxpbmdVcGRhdGVkPXtzZXRTYW1wbGluZ1VwZGF0ZWR9XG4gICAgICAgICAgICAgIGlzRGF0ZVBpY2tlckRpc2FibGVkPXtpc1Byb3BlcnRpZXNQYWdlfVxuICAgICAgICAgICAgICBkYXRlRm9ybWF0PXtkYXRlRm9ybWF0fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApfVxuXG4gICAgICAgICAge2lzTW9iaWxlICYmIChcbiAgICAgICAgICAgIDxTYW1wbGluZ1Byb3BlcnRpZXNIZWFkTW9iaWxlXG4gICAgICAgICAgICAgIHNhbXBsaW5nUHJvcGVydGllcz17c2FtcGxpbmdQcm9wZXJ0aWVzfVxuICAgICAgICAgICAgICBzYW1wbGluZz17c2FtcGxpbmdQbGFufVxuICAgICAgICAgICAgICBmb3JtaWs9e2Zvcm1pa31cbiAgICAgICAgICAgICAgcGFnZVR5cGU9e3BhZ2VUeXBlfVxuICAgICAgICAgICAgICBjb2xsZWN0aW9uRGF0ZT17Y29sbGVjdGlvblRpbWV9XG4gICAgICAgICAgICAgIHNldENvbGxlY3Rpb25EYXRlPXtzZXRDb2xsZWN0aW9uVGltZX1cbiAgICAgICAgICAgICAgc2V0U2FtcGxpbmdVcGRhdGVkPXtzZXRTYW1wbGluZ1VwZGF0ZWR9XG4gICAgICAgICAgICAgIGlzRGF0ZVBpY2tlckRpc2FibGVkPXtpc1Byb3BlcnRpZXNQYWdlfVxuICAgICAgICAgICAgICBkYXRlRm9ybWF0PXtkYXRlRm9ybWF0fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApfVxuXG4gICAgICAgICAge3NhbXBsaW5nUHJvcGVydGllcyAmJiBwYWdlVHlwZSAmJiAoXG4gICAgICAgICAgICA8U2FtcGxpbmdQcm9wZXJ0aWVzRm9ybVxuICAgICAgICAgICAgICBzYW1wbGluZ1Byb3BlcnRpZXM9e3NhbXBsaW5nUHJvcGVydGllc31cbiAgICAgICAgICAgICAgc2FtcGxpbmc9e3NhbXBsaW5nUGxhbn1cbiAgICAgICAgICAgICAgcGFnZVR5cGU9e3BhZ2VUeXBlfVxuICAgICAgICAgICAgICBzZXRTYW1wbGluZ1VwZGF0ZWQ9e3NldFNhbXBsaW5nVXBkYXRlZH1cbiAgICAgICAgICAgICAgc2F2aW5nTXNnPXtzYXZpbmdNc2d9XG4gICAgICAgICAgICAgIGhhbmRsZUNsb3NlPXtoYW5kbGVDbG9zZX1cbiAgICAgICAgICAgICAgc2V0UGhvdG9zVG9EZWxldGU9e3NldFBob3Rvc1RvRGVsZXRlfVxuICAgICAgICAgICAgICBzZXRQaG90b3M9e3NldFBob3Rvc31cbiAgICAgICAgICAgICAgcGhvdG9zPXtwaG90b3N9XG4gICAgICAgICAgICAgIGZvcm1paz17Zm9ybWlrfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApfVxuICAgICAgICA8L1NhbXBsaW5nUHJvcGVydGllc1N0eWxlPlxuICAgICAgPC9MYXlvdXQ+XG4gICAgPC9mb3JtPlxuICApO1xufTtcblxuY29uc3QgU2FtcGxpbmdQcm9wZXJ0aWVzU3R5bGUgPSBzdHlsZWQuZGl2YFxuICAkeyFpc01vYmlsZSA/ICd3aWR0aDogODMwcHg7JyA6ICcnfVxuICAkeyFpc01vYmlsZSA/ICdtYXJnaW46IDEwMHB4IGF1dG87JyA6ICcnfVxuYDtcbiJdfQ==
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kando-env/kando-ui",
3
- "version": "1.2.64-alpha.5",
3
+ "version": "1.2.64-alpha.7",
4
4
  "main": "lib/index.js",
5
5
  "author": "Nadav(Private) <nadavk72@gmail.com>",
6
6
  "scripts": {