react-elmish 6.4.0 → 6.5.0-beta.1

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.
package/dist/Common.js CHANGED
@@ -9,8 +9,8 @@ exports.modelHasChanged = modelHasChanged;
9
9
  var _Init = require("./Init");
10
10
  function logMessage(name, msg) {
11
11
  var _Services$logger, _Services$logger2, _Services$dispatchMid;
12
- (_Services$logger = _Init.Services.logger) === null || _Services$logger === void 0 ? void 0 : _Services$logger.info("Elm", "message from", name, msg.name);
13
- (_Services$logger2 = _Init.Services.logger) === null || _Services$logger2 === void 0 ? void 0 : _Services$logger2.debug("Elm", "message from", name, msg);
12
+ (_Services$logger = _Init.Services.logger) === null || _Services$logger === void 0 ? void 0 : _Services$logger.info("Message from", name, msg.name);
13
+ (_Services$logger2 = _Init.Services.logger) === null || _Services$logger2 === void 0 ? void 0 : _Services$logger2.debug("Message from", name, msg);
14
14
  (_Services$dispatchMid = _Init.Services.dispatchMiddleware) === null || _Services$dispatchMid === void 0 ? void 0 : _Services$dispatchMid.call(_Init.Services, msg);
15
15
  }
16
16
  function modelHasChanged(currentModel, model) {
@@ -26,4 +26,4 @@ function execCmd(dispatch) {
26
26
  });
27
27
  });
28
28
  }
29
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfSW5pdCIsInJlcXVpcmUiLCJsb2dNZXNzYWdlIiwibmFtZSIsIm1zZyIsIl9TZXJ2aWNlcyRsb2dnZXIiLCJfU2VydmljZXMkbG9nZ2VyMiIsIl9TZXJ2aWNlcyRkaXNwYXRjaE1pZCIsIlNlcnZpY2VzIiwibG9nZ2VyIiwiaW5mbyIsImRlYnVnIiwiZGlzcGF0Y2hNaWRkbGV3YXJlIiwiY2FsbCIsIm1vZGVsSGFzQ2hhbmdlZCIsImN1cnJlbnRNb2RlbCIsIm1vZGVsIiwiT2JqZWN0IiwiaXMiLCJnZXRPd25Qcm9wZXJ0eU5hbWVzIiwibGVuZ3RoIiwiZXhlY0NtZCIsImRpc3BhdGNoIiwiX2xlbiIsImFyZ3VtZW50cyIsImNvbW1hbmRzIiwiQXJyYXkiLCJfa2V5IiwiZm9yRWFjaCIsImNtZCJdLCJzb3VyY2VzIjpbIi4uL3NyYy9Db21tb24udHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2VydmljZXMgfSBmcm9tIFwiLi9Jbml0XCI7XG5pbXBvcnQgeyBDbWQsIERpc3BhdGNoLCBNZXNzYWdlIH0gZnJvbSBcIi4vVHlwZXNcIjtcblxuZnVuY3Rpb24gbG9nTWVzc2FnZTxUTWVzc2FnZSBleHRlbmRzIE1lc3NhZ2U+IChuYW1lOiBzdHJpbmcsIG1zZzogVE1lc3NhZ2UpOiB2b2lkIHtcbiAgICBTZXJ2aWNlcy5sb2dnZXI/LmluZm8oXCJFbG1cIiwgXCJtZXNzYWdlIGZyb21cIiwgbmFtZSwgbXNnLm5hbWUpO1xuICAgIFNlcnZpY2VzLmxvZ2dlcj8uZGVidWcoXCJFbG1cIiwgXCJtZXNzYWdlIGZyb21cIiwgbmFtZSwgbXNnKTtcblxuICAgIFNlcnZpY2VzLmRpc3BhdGNoTWlkZGxld2FyZT8uKG1zZyk7XG59XG5cbmZ1bmN0aW9uIG1vZGVsSGFzQ2hhbmdlZDxUTW9kZWw+IChjdXJyZW50TW9kZWw6IFRNb2RlbCwgbW9kZWw6IFBhcnRpYWw8VE1vZGVsPik6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhT2JqZWN0LmlzKG1vZGVsLCBjdXJyZW50TW9kZWwpICYmIE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKG1vZGVsKS5sZW5ndGggPiAwO1xufVxuXG5mdW5jdGlvbiBleGVjQ21kPFRNZXNzYWdlPiAoZGlzcGF0Y2g6IERpc3BhdGNoPFRNZXNzYWdlPiwgLi4uY29tbWFuZHM6IChDbWQ8VE1lc3NhZ2U+IHwgdW5kZWZpbmVkKSBbXSk6IHZvaWQge1xuICAgIGNvbW1hbmRzLmZvckVhY2goY21kID0+IGNtZD8uZm9yRWFjaChjYWxsID0+IGNhbGwoZGlzcGF0Y2gpKSk7XG59XG5cbmV4cG9ydCB7XG4gICAgbG9nTWVzc2FnZSxcbiAgICBtb2RlbEhhc0NoYW5nZWQsXG4gICAgZXhlY0NtZCxcbn07Il0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBLElBQUFBLEtBQUEsR0FBQUMsT0FBQTtBQUdBLFNBQVNDLFVBQVVBLENBQTRCQyxJQUFZLEVBQUVDLEdBQWEsRUFBUTtFQUFBLElBQUFDLGdCQUFBLEVBQUFDLGlCQUFBLEVBQUFDLHFCQUFBO0VBQzlFLENBQUFGLGdCQUFBLEdBQUFHLGNBQVEsQ0FBQ0MsTUFBTSxjQUFBSixnQkFBQSx1QkFBZkEsZ0JBQUEsQ0FBaUJLLElBQUksQ0FBQyxLQUFLLEVBQUUsY0FBYyxFQUFFUCxJQUFJLEVBQUVDLEdBQUcsQ0FBQ0QsSUFBSSxDQUFDO0VBQzVELENBQUFHLGlCQUFBLEdBQUFFLGNBQVEsQ0FBQ0MsTUFBTSxjQUFBSCxpQkFBQSx1QkFBZkEsaUJBQUEsQ0FBaUJLLEtBQUssQ0FBQyxLQUFLLEVBQUUsY0FBYyxFQUFFUixJQUFJLEVBQUVDLEdBQUcsQ0FBQztFQUV4RCxDQUFBRyxxQkFBQSxHQUFBQyxjQUFRLENBQUNJLGtCQUFrQixjQUFBTCxxQkFBQSx1QkFBM0JBLHFCQUFBLENBQUFNLElBQUEsQ0FBQUwsY0FBUSxFQUFzQkosR0FBRyxDQUFDO0FBQ3RDO0FBRUEsU0FBU1UsZUFBZUEsQ0FBVUMsWUFBb0IsRUFBRUMsS0FBc0IsRUFBVztFQUNyRixPQUFPLENBQUNDLE1BQU0sQ0FBQ0MsRUFBRSxDQUFDRixLQUFLLEVBQUVELFlBQVksQ0FBQyxJQUFJRSxNQUFNLENBQUNFLG1CQUFtQixDQUFDSCxLQUFLLENBQUMsQ0FBQ0ksTUFBTSxHQUFHLENBQUM7QUFDMUY7QUFFQSxTQUFTQyxPQUFPQSxDQUFZQyxRQUE0QixFQUFxRDtFQUFBLFNBQUFDLElBQUEsR0FBQUMsU0FBQSxDQUFBSixNQUFBLEVBQWhESyxRQUFRLE9BQUFDLEtBQUEsQ0FBQUgsSUFBQSxPQUFBQSxJQUFBLFdBQUFJLElBQUEsTUFBQUEsSUFBQSxHQUFBSixJQUFBLEVBQUFJLElBQUE7SUFBUkYsUUFBUSxDQUFBRSxJQUFBLFFBQUFILFNBQUEsQ0FBQUcsSUFBQTtFQUFBO0VBQ2pFRixRQUFRLENBQUNHLE9BQU8sQ0FBQyxVQUFBQyxHQUFHO0lBQUEsT0FBSUEsR0FBRyxhQUFIQSxHQUFHLHVCQUFIQSxHQUFHLENBQUVELE9BQU8sQ0FBQyxVQUFBZixJQUFJO01BQUEsT0FBSUEsSUFBSSxDQUFDUyxRQUFRLENBQUM7SUFBQSxFQUFDO0VBQUEsRUFBQztBQUNqRSJ9
29
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfSW5pdCIsInJlcXVpcmUiLCJsb2dNZXNzYWdlIiwibmFtZSIsIm1zZyIsIl9TZXJ2aWNlcyRsb2dnZXIiLCJfU2VydmljZXMkbG9nZ2VyMiIsIl9TZXJ2aWNlcyRkaXNwYXRjaE1pZCIsIlNlcnZpY2VzIiwibG9nZ2VyIiwiaW5mbyIsImRlYnVnIiwiZGlzcGF0Y2hNaWRkbGV3YXJlIiwiY2FsbCIsIm1vZGVsSGFzQ2hhbmdlZCIsImN1cnJlbnRNb2RlbCIsIm1vZGVsIiwiT2JqZWN0IiwiaXMiLCJnZXRPd25Qcm9wZXJ0eU5hbWVzIiwibGVuZ3RoIiwiZXhlY0NtZCIsImRpc3BhdGNoIiwiX2xlbiIsImFyZ3VtZW50cyIsImNvbW1hbmRzIiwiQXJyYXkiLCJfa2V5IiwiZm9yRWFjaCIsImNtZCJdLCJzb3VyY2VzIjpbIi4uL3NyYy9Db21tb24udHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2VydmljZXMgfSBmcm9tIFwiLi9Jbml0XCI7XG5pbXBvcnQgeyBDbWQsIERpc3BhdGNoLCBNZXNzYWdlIH0gZnJvbSBcIi4vVHlwZXNcIjtcblxuZnVuY3Rpb24gbG9nTWVzc2FnZTxUTWVzc2FnZSBleHRlbmRzIE1lc3NhZ2U+IChuYW1lOiBzdHJpbmcsIG1zZzogVE1lc3NhZ2UpOiB2b2lkIHtcbiAgICBTZXJ2aWNlcy5sb2dnZXI/LmluZm8oXCJNZXNzYWdlIGZyb21cIiwgbmFtZSwgbXNnLm5hbWUpO1xuICAgIFNlcnZpY2VzLmxvZ2dlcj8uZGVidWcoXCJNZXNzYWdlIGZyb21cIiwgbmFtZSwgbXNnKTtcblxuICAgIFNlcnZpY2VzLmRpc3BhdGNoTWlkZGxld2FyZT8uKG1zZyk7XG59XG5cbmZ1bmN0aW9uIG1vZGVsSGFzQ2hhbmdlZDxUTW9kZWw+IChjdXJyZW50TW9kZWw6IFRNb2RlbCwgbW9kZWw6IFBhcnRpYWw8VE1vZGVsPik6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhT2JqZWN0LmlzKG1vZGVsLCBjdXJyZW50TW9kZWwpICYmIE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKG1vZGVsKS5sZW5ndGggPiAwO1xufVxuXG5mdW5jdGlvbiBleGVjQ21kPFRNZXNzYWdlPiAoZGlzcGF0Y2g6IERpc3BhdGNoPFRNZXNzYWdlPiwgLi4uY29tbWFuZHM6IChDbWQ8VE1lc3NhZ2U+IHwgdW5kZWZpbmVkKSBbXSk6IHZvaWQge1xuICAgIGNvbW1hbmRzLmZvckVhY2goY21kID0+IGNtZD8uZm9yRWFjaChjYWxsID0+IGNhbGwoZGlzcGF0Y2gpKSk7XG59XG5cbmV4cG9ydCB7XG4gICAgbG9nTWVzc2FnZSxcbiAgICBtb2RlbEhhc0NoYW5nZWQsXG4gICAgZXhlY0NtZCxcbn07Il0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBLElBQUFBLEtBQUEsR0FBQUMsT0FBQTtBQUdBLFNBQVNDLFVBQVVBLENBQTRCQyxJQUFZLEVBQUVDLEdBQWEsRUFBUTtFQUFBLElBQUFDLGdCQUFBLEVBQUFDLGlCQUFBLEVBQUFDLHFCQUFBO0VBQzlFLENBQUFGLGdCQUFBLEdBQUFHLGNBQVEsQ0FBQ0MsTUFBTSxjQUFBSixnQkFBQSx1QkFBZkEsZ0JBQUEsQ0FBaUJLLElBQUksQ0FBQyxjQUFjLEVBQUVQLElBQUksRUFBRUMsR0FBRyxDQUFDRCxJQUFJLENBQUM7RUFDckQsQ0FBQUcsaUJBQUEsR0FBQUUsY0FBUSxDQUFDQyxNQUFNLGNBQUFILGlCQUFBLHVCQUFmQSxpQkFBQSxDQUFpQkssS0FBSyxDQUFDLGNBQWMsRUFBRVIsSUFBSSxFQUFFQyxHQUFHLENBQUM7RUFFakQsQ0FBQUcscUJBQUEsR0FBQUMsY0FBUSxDQUFDSSxrQkFBa0IsY0FBQUwscUJBQUEsdUJBQTNCQSxxQkFBQSxDQUFBTSxJQUFBLENBQUFMLGNBQVEsRUFBc0JKLEdBQUcsQ0FBQztBQUN0QztBQUVBLFNBQVNVLGVBQWVBLENBQVVDLFlBQW9CLEVBQUVDLEtBQXNCLEVBQVc7RUFDckYsT0FBTyxDQUFDQyxNQUFNLENBQUNDLEVBQUUsQ0FBQ0YsS0FBSyxFQUFFRCxZQUFZLENBQUMsSUFBSUUsTUFBTSxDQUFDRSxtQkFBbUIsQ0FBQ0gsS0FBSyxDQUFDLENBQUNJLE1BQU0sR0FBRyxDQUFDO0FBQzFGO0FBRUEsU0FBU0MsT0FBT0EsQ0FBWUMsUUFBNEIsRUFBcUQ7RUFBQSxTQUFBQyxJQUFBLEdBQUFDLFNBQUEsQ0FBQUosTUFBQSxFQUFoREssUUFBUSxPQUFBQyxLQUFBLENBQUFILElBQUEsT0FBQUEsSUFBQSxXQUFBSSxJQUFBLE1BQUFBLElBQUEsR0FBQUosSUFBQSxFQUFBSSxJQUFBO0lBQVJGLFFBQVEsQ0FBQUUsSUFBQSxRQUFBSCxTQUFBLENBQUFHLElBQUE7RUFBQTtFQUNqRUYsUUFBUSxDQUFDRyxPQUFPLENBQUMsVUFBQUMsR0FBRztJQUFBLE9BQUlBLEdBQUcsYUFBSEEsR0FBRyx1QkFBSEEsR0FBRyxDQUFFRCxPQUFPLENBQUMsVUFBQWYsSUFBSTtNQUFBLE9BQUlBLElBQUksQ0FBQ1MsUUFBUSxDQUFDO0lBQUEsRUFBQztFQUFBLEVBQUM7QUFDakUifQ==
@@ -93,7 +93,7 @@ var ElmComponent = /*#__PURE__*/function (_React$Component) {
93
93
  _this.reentered = false;
94
94
  if (_this.mounted && modified) {
95
95
  var _Services$logger;
96
- (_Services$logger = _Init.Services.logger) === null || _Services$logger === void 0 ? void 0 : _Services$logger.debug("Elm", "update model for", _this.componentName, _this.currentModel);
96
+ (_Services$logger = _Init.Services.logger) === null || _Services$logger === void 0 ? void 0 : _Services$logger.debug("Update model for", _this.componentName, _this.currentModel);
97
97
  _this.forceUpdate();
98
98
  }
99
99
  }
@@ -116,7 +116,7 @@ var ElmComponent = /*#__PURE__*/function (_React$Component) {
116
116
  _ref2 = _toArray(_ref),
117
117
  _model = _ref2[0],
118
118
  _commands = _ref2.slice(1);
119
- (_Services$logger2 = _Init.Services.logger) === null || _Services$logger2 === void 0 ? void 0 : _Services$logger2.debug("Elm", "initial model for", name, _model);
119
+ (_Services$logger2 = _Init.Services.logger) === null || _Services$logger2 === void 0 ? void 0 : _Services$logger2.debug("Initial model for", name, _model);
120
120
  _this.componentName = name;
121
121
  _this.currentModel = _model;
122
122
  _this.initCommands = _commands;
@@ -164,4 +164,4 @@ var ElmComponent = /*#__PURE__*/function (_React$Component) {
164
164
  return ElmComponent;
165
165
  }(_react["default"].Component);
166
166
  exports.ElmComponent = ElmComponent;
167
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9Db21tb24iLCJfSW5pdCIsIl9mYWtlT3B0aW9ucyIsIm9iaiIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiU3ltYm9sIiwiaXRlcmF0b3IiLCJjb25zdHJ1Y3RvciIsInByb3RvdHlwZSIsIl90b0NvbnN1bWFibGVBcnJheSIsImFyciIsIl9hcnJheVdpdGhvdXRIb2xlcyIsIl9pdGVyYWJsZVRvQXJyYXkiLCJfdW5zdXBwb3J0ZWRJdGVyYWJsZVRvQXJyYXkiLCJfbm9uSXRlcmFibGVTcHJlYWQiLCJUeXBlRXJyb3IiLCJBcnJheSIsImlzQXJyYXkiLCJfYXJyYXlMaWtlVG9BcnJheSIsIm93bktleXMiLCJvYmplY3QiLCJlbnVtZXJhYmxlT25seSIsImtleXMiLCJPYmplY3QiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJzeW1ib2xzIiwiZmlsdGVyIiwic3ltIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiZW51bWVyYWJsZSIsInB1c2giLCJhcHBseSIsIl9vYmplY3RTcHJlYWQiLCJ0YXJnZXQiLCJpIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwic291cmNlIiwiZm9yRWFjaCIsImtleSIsIl9kZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwiZGVmaW5lUHJvcGVydHkiLCJfdG9BcnJheSIsIl9hcnJheVdpdGhIb2xlcyIsIl9ub25JdGVyYWJsZVJlc3QiLCJvIiwibWluTGVuIiwibiIsInRvU3RyaW5nIiwiY2FsbCIsInNsaWNlIiwibmFtZSIsImZyb20iLCJ0ZXN0IiwibGVuIiwiYXJyMiIsIml0ZXIiLCJfY2xhc3NDYWxsQ2hlY2siLCJpbnN0YW5jZSIsIkNvbnN0cnVjdG9yIiwiX2RlZmluZVByb3BlcnRpZXMiLCJwcm9wcyIsImRlc2NyaXB0b3IiLCJjb25maWd1cmFibGUiLCJ3cml0YWJsZSIsIl90b1Byb3BlcnR5S2V5IiwiX2NyZWF0ZUNsYXNzIiwicHJvdG9Qcm9wcyIsInN0YXRpY1Byb3BzIiwiX2luaGVyaXRzIiwic3ViQ2xhc3MiLCJzdXBlckNsYXNzIiwiY3JlYXRlIiwidmFsdWUiLCJfc2V0UHJvdG90eXBlT2YiLCJwIiwic2V0UHJvdG90eXBlT2YiLCJiaW5kIiwiX19wcm90b19fIiwiX2NyZWF0ZVN1cGVyIiwiRGVyaXZlZCIsImhhc05hdGl2ZVJlZmxlY3RDb25zdHJ1Y3QiLCJfaXNOYXRpdmVSZWZsZWN0Q29uc3RydWN0IiwiX2NyZWF0ZVN1cGVySW50ZXJuYWwiLCJTdXBlciIsIl9nZXRQcm90b3R5cGVPZiIsInJlc3VsdCIsIk5ld1RhcmdldCIsIlJlZmxlY3QiLCJjb25zdHJ1Y3QiLCJfcG9zc2libGVDb25zdHJ1Y3RvclJldHVybiIsInNlbGYiLCJfYXNzZXJ0VGhpc0luaXRpYWxpemVkIiwiUmVmZXJlbmNlRXJyb3IiLCJzaGFtIiwiUHJveHkiLCJCb29sZWFuIiwidmFsdWVPZiIsImUiLCJnZXRQcm90b3R5cGVPZiIsImFyZyIsIl90b1ByaW1pdGl2ZSIsIlN0cmluZyIsImlucHV0IiwiaGludCIsInByaW0iLCJ0b1ByaW1pdGl2ZSIsInVuZGVmaW5lZCIsInJlcyIsIk51bWJlciIsIkVsbUNvbXBvbmVudCIsIl9SZWFjdCRDb21wb25lbnQiLCJfc3VwZXIiLCJpbml0IiwiX1NlcnZpY2VzJGxvZ2dlcjIiLCJfdGhpcyIsIm1zZyIsInJlZW50ZXJlZCIsImJ1ZmZlciIsIm5leHRNc2ciLCJtb2RpZmllZCIsImxvZ01lc3NhZ2UiLCJjb21wb25lbnROYW1lIiwiX3RoaXMkdXBkYXRlIiwidXBkYXRlIiwiY3VycmVudE1vZGVsIiwiX3RoaXMkdXBkYXRlMiIsIm1vZGVsIiwiY29tbWFuZHMiLCJtb2RlbEhhc0NoYW5nZWQiLCJleGVjQ21kIiwiZGlzcGF0Y2giLCJjb25jYXQiLCJzaGlmdCIsIm1vdW50ZWQiLCJfU2VydmljZXMkbG9nZ2VyIiwiU2VydmljZXMiLCJsb2dnZXIiLCJkZWJ1ZyIsImZvcmNlVXBkYXRlIiwiZmFrZU9wdGlvbnMiLCJnZXRGYWtlT3B0aW9uc09uY2UiLCJfcmVmIiwiX3JlZjIiLCJpbml0Q29tbWFuZHMiLCJjb21wb25lbnREaWRNb3VudCIsImNvbXBvbmVudFdpbGxVbm1vdW50IiwiZ2V0IiwiUmVhY3QiLCJDb21wb25lbnQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vc3JjL0VsbUNvbXBvbmVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgeyBleGVjQ21kLCBsb2dNZXNzYWdlLCBtb2RlbEhhc0NoYW5nZWQgfSBmcm9tIFwiLi9Db21tb25cIjtcbmltcG9ydCB7IFNlcnZpY2VzIH0gZnJvbSBcIi4vSW5pdFwiO1xuaW1wb3J0IHsgZ2V0RmFrZU9wdGlvbnNPbmNlIH0gZnJvbSBcIi4vVGVzdGluZy9mYWtlT3B0aW9uc1wiO1xuaW1wb3J0IHsgQ21kLCBJbml0RnVuY3Rpb24sIE1lc3NhZ2UsIE51bGxhYmxlLCBVcGRhdGVGdW5jdGlvbiB9IGZyb20gXCIuL1R5cGVzXCI7XG5cbi8qKlxuICogQWJzdHJhY3QgY2xhc3MgZm9yIGEgcmVhY3QgY2xhc3MgY29tcG9uZW50IHVzaW5nIHRoZSBFbG1pc2ggcGF0dGVybi5cbiAqIEBleHBvcnRcbiAqIEBhYnN0cmFjdFxuICogQGNsYXNzIEVsbUNvbXBvbmVudFxuICogQGV4dGVuZHMge0NvbXBvbmVudDxUUHJvcHMsIFRNb2RlbD59XG4gKiBAdGVtcGxhdGUgVE1vZGVsIFRoZSB0eXBlIG9mIHRoZSBtb2RlbC5cbiAqIEB0ZW1wbGF0ZSBUTWVzc2FnZSBUaGUgdHlwZSBvZiB0aGUgbWVzc2FnZXMuXG4gKiBAdGVtcGxhdGUgVFByb3BzIFRoZSB0eXBlIG9mIHRoZSBwcm9wcy5cbiAqL1xuYWJzdHJhY3QgY2xhc3MgRWxtQ29tcG9uZW50PFRNb2RlbCwgVE1lc3NhZ2UgZXh0ZW5kcyBNZXNzYWdlLCBUUHJvcHM+IGV4dGVuZHMgUmVhY3QuQ29tcG9uZW50PFRQcm9wcz4ge1xuICAgIHByaXZhdGUgaW5pdENvbW1hbmRzOiBOdWxsYWJsZTwoQ21kPFRNZXNzYWdlPiB8IHVuZGVmaW5lZCkgW10+IHwgdW5kZWZpbmVkO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgY29tcG9uZW50TmFtZTogc3RyaW5nO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgYnVmZmVyOiBUTWVzc2FnZSBbXSA9IFtdO1xuICAgIHByaXZhdGUgcmVlbnRlcmVkID0gZmFsc2U7XG4gICAgcHJpdmF0ZSBtb3VudGVkID0gZmFsc2U7XG4gICAgcHJpdmF0ZSBjdXJyZW50TW9kZWw6IFRNb2RlbDtcblxuICAgIC8qKlxuICAgICAqIENyZWF0ZXMgYW4gaW5zdGFuY2Ugb2YgRWxtQ29tcG9uZW50LlxuICAgICAqIEBwYXJhbSB7VFByb3BzfSBwcm9wcyBUaGUgcHJvcHMgZm9yIHRoZSBjb21wb25lbnQuXG4gICAgICogQHBhcmFtIHsoKSA9PiBUTW9kZWx9IGluaXQgVGhlIGluaXRpYWxpemVyIGZ1bmN0aW9uLlxuICAgICAqIEBwYXJhbSBuYW1lIFRoZSBuYW1lIG9mIHRoZSBjb21wb25lbnQuXG4gICAgICogQG1lbWJlcm9mIEVsbUNvbXBvbmVudFxuICAgICAqL1xuICAgIHB1YmxpYyBjb25zdHJ1Y3RvciAocHJvcHM6IFRQcm9wcywgaW5pdDogSW5pdEZ1bmN0aW9uPFRQcm9wcywgVE1vZGVsLCBUTWVzc2FnZT4sIG5hbWU6IHN0cmluZykge1xuICAgICAgICBzdXBlcihwcm9wcyk7XG5cbiAgICAgICAgY29uc3QgZmFrZU9wdGlvbnMgPSBnZXRGYWtlT3B0aW9uc09uY2UoKTtcblxuICAgICAgICBpZiAoZmFrZU9wdGlvbnM/LmRpc3BhdGNoKSB7XG4gICAgICAgICAgICB0aGlzLmRpc3BhdGNoID0gZmFrZU9wdGlvbnMuZGlzcGF0Y2g7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBbbW9kZWwsIC4uLmNvbW1hbmRzXSA9IGZha2VPcHRpb25zPy5tb2RlbCA/IFtmYWtlT3B0aW9ucy5tb2RlbCBhcyBUTW9kZWxdIDogaW5pdCh0aGlzLnByb3BzKTtcblxuICAgICAgICBTZXJ2aWNlcy5sb2dnZXI/LmRlYnVnKFwiRWxtXCIsIFwiaW5pdGlhbCBtb2RlbCBmb3JcIiwgbmFtZSwgbW9kZWwpO1xuXG4gICAgICAgIHRoaXMuY29tcG9uZW50TmFtZSA9IG5hbWU7XG4gICAgICAgIHRoaXMuY3VycmVudE1vZGVsID0gbW9kZWw7XG4gICAgICAgIHRoaXMuaW5pdENvbW1hbmRzID0gY29tbWFuZHM7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogSXMgY2FsbGVkIHdoZW4gdGhlIGNvbXBvbmVudCBpcyBsb2FkZWQuXG4gICAgICogV2hlbiBpbXBsZW1lbnRpbmcgdGhpcyBtZXRob2QsIHRoZSBiYXNlIGltcGxlbWVudGF0aW9uIGhhcyB0byBiZSBjYWxsZWQuXG4gICAgICogQG1lbWJlcm9mIEVsbUNvbXBvbmVudFxuICAgICAqL1xuICAgIHB1YmxpYyBjb21wb25lbnREaWRNb3VudCAoKTogdm9pZCB7XG4gICAgICAgIHRoaXMubW91bnRlZCA9IHRydWU7XG5cbiAgICAgICAgaWYgKHRoaXMuaW5pdENvbW1hbmRzKSB7XG4gICAgICAgICAgICBleGVjQ21kKHRoaXMuZGlzcGF0Y2gsIC4uLnRoaXMuaW5pdENvbW1hbmRzKTtcbiAgICAgICAgICAgIHRoaXMuaW5pdENvbW1hbmRzID0gbnVsbDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIElzIGNhbGxlZCBiZWZvcmUgdW5sb2FkaW5nIHRoZSBjb21wb25lbnQuXG4gICAgICogV2hlbiBpbXBsZW1lbnRpbmcgdGhpcyBtZXRob2QsIHRoZSBiYXNlIGltcGxlbWVudGF0aW9uIGhhcyB0byBiZSBjYWxsZWQuXG4gICAgICogQG1lbWJlcm9mIEVsbUNvbXBvbmVudFxuICAgICAqL1xuICAgIHB1YmxpYyBjb21wb25lbnRXaWxsVW5tb3VudCAoKTogdm9pZCB7XG4gICAgICAgIHRoaXMubW91bnRlZCA9IGZhbHNlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgdGhlIGN1cnJlbnQgbW9kZWwuXG4gICAgICogQHJlYWRvbmx5XG4gICAgICogQHR5cGUge1JlYWRvbmx5PFRNb2RlbD59XG4gICAgICogQG1lbWJlcm9mIEVsbUNvbXBvbmVudFxuICAgICAqL1xuICAgIHB1YmxpYyBnZXQgbW9kZWwgKCk6IFJlYWRvbmx5PFRNb2RlbD4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jdXJyZW50TW9kZWw7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRGlzcGF0Y2hlcyBhIG1lc3NhZ2UuXG4gICAgICogQHBhcmFtIHtUTWVzc2FnZX0gbXNnIFRoZSBtZXNzYWdlIHRvIGRpc3BhdGNoLlxuICAgICAqIEBtZW1iZXJvZiBFbG1Db21wb25lbnRcbiAgICAgKi9cbiAgICBwdWJsaWMgcmVhZG9ubHkgZGlzcGF0Y2ggPSAobXNnOiBUTWVzc2FnZSk6IHZvaWQgPT4ge1xuICAgICAgICBpZiAodGhpcy5yZWVudGVyZWQpIHtcbiAgICAgICAgICAgIHRoaXMuYnVmZmVyLnB1c2gobXNnKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMucmVlbnRlcmVkID0gdHJ1ZTtcblxuICAgICAgICAgICAgbGV0IG5leHRNc2c6IFRNZXNzYWdlIHwgdW5kZWZpbmVkID0gbXNnO1xuICAgICAgICAgICAgbGV0IG1vZGlmaWVkID0gZmFsc2U7XG5cbiAgICAgICAgICAgIHdoaWxlIChuZXh0TXNnKSB7XG4gICAgICAgICAgICAgICAgbG9nTWVzc2FnZSh0aGlzLmNvbXBvbmVudE5hbWUsIG5leHRNc2cpO1xuXG4gICAgICAgICAgICAgICAgY29uc3QgW21vZGVsLCAuLi5jb21tYW5kc10gPSB0aGlzLnVwZGF0ZSh0aGlzLmN1cnJlbnRNb2RlbCwgbmV4dE1zZywgdGhpcy5wcm9wcyk7XG5cbiAgICAgICAgICAgICAgICBpZiAobW9kZWxIYXNDaGFuZ2VkKHRoaXMuY3VycmVudE1vZGVsLCBtb2RlbCkpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50TW9kZWwgPSB7IC4uLnRoaXMuY3VycmVudE1vZGVsLCAuLi5tb2RlbCB9O1xuICAgICAgICAgICAgICAgICAgICBtb2RpZmllZCA9IHRydWU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgZXhlY0NtZCh0aGlzLmRpc3BhdGNoLCAuLi5jb21tYW5kcyk7XG5cbiAgICAgICAgICAgICAgICBuZXh0TXNnID0gdGhpcy5idWZmZXIuc2hpZnQoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMucmVlbnRlcmVkID0gZmFsc2U7XG5cbiAgICAgICAgICAgIGlmICh0aGlzLm1vdW50ZWQgJiYgbW9kaWZpZWQpIHtcbiAgICAgICAgICAgICAgICBTZXJ2aWNlcy5sb2dnZXI/LmRlYnVnKFwiRWxtXCIsIFwidXBkYXRlIG1vZGVsIGZvclwiLCB0aGlzLmNvbXBvbmVudE5hbWUsIHRoaXMuY3VycmVudE1vZGVsKTtcbiAgICAgICAgICAgICAgICB0aGlzLmZvcmNlVXBkYXRlKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9O1xuXG4gICAgLyoqXG4gICAgICogRnVuY3Rpb24gdG8gbW9kaWZ5IHRoZSBtb2RlbCBiYXNlZCBvbiBhIG1lc3NhZ2UuXG4gICAgICogQHBhcmFtIHtUTW9kZWx9IG1vZGVsIFRoZSBjdXJyZW50IG1vZGVsLlxuICAgICAqIEBwYXJhbSB7VE1lc3NhZ2V9IG1zZyBUaGUgbWVzc2FnZSB0byBwcm9jZXNzLlxuICAgICAqIEBwYXJhbSB7VFByb3BzfSBwcm9wcyBUaGUgcHJvcHMgb2YgdGhlIGNvbXBvbmVudC5cbiAgICAgKiBAcmV0dXJucyBUaGUgbmV3IG1vZGVsIChjYW4gYWxzbyBiZSBhbiBlbXB0eSBvYmplY3Qge30pIGFuZCBhbiBvcHRpb25hbCBuZXcgbWVzc2FnZSB0byBkaXNwYXRjaC5cbiAgICAgKiBAYWJzdHJhY3RcbiAgICAgKiBAbWVtYmVyb2YgRWxtQ29tcG9uZW50XG4gICAgICovXG4gICAgcHVibGljIGFic3RyYWN0IHVwZGF0ZTogVXBkYXRlRnVuY3Rpb248VFByb3BzLCBUTW9kZWwsIFRNZXNzYWdlPjtcbn1cblxuZXhwb3J0IHtcbiAgICBFbG1Db21wb25lbnQsXG59OyJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsSUFBQUEsTUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsT0FBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsS0FBQSxHQUFBRixPQUFBO0FBQ0EsSUFBQUcsWUFBQSxHQUFBSCxPQUFBO0FBQTJELFNBQUFELHVCQUFBSyxHQUFBLFdBQUFBLEdBQUEsSUFBQUEsR0FBQSxDQUFBQyxVQUFBLEdBQUFELEdBQUEsZ0JBQUFBLEdBQUE7QUFBQSxTQUFBRSxRQUFBRixHQUFBLHNDQUFBRSxPQUFBLHdCQUFBQyxNQUFBLHVCQUFBQSxNQUFBLENBQUFDLFFBQUEsYUFBQUosR0FBQSxrQkFBQUEsR0FBQSxnQkFBQUEsR0FBQSxXQUFBQSxHQUFBLHlCQUFBRyxNQUFBLElBQUFILEdBQUEsQ0FBQUssV0FBQSxLQUFBRixNQUFBLElBQUFILEdBQUEsS0FBQUcsTUFBQSxDQUFBRyxTQUFBLHFCQUFBTixHQUFBLEtBQUFFLE9BQUEsQ0FBQUYsR0FBQTtBQUFBLFNBQUFPLG1CQUFBQyxHQUFBLFdBQUFDLGtCQUFBLENBQUFELEdBQUEsS0FBQUUsZ0JBQUEsQ0FBQUYsR0FBQSxLQUFBRywyQkFBQSxDQUFBSCxHQUFBLEtBQUFJLGtCQUFBO0FBQUEsU0FBQUEsbUJBQUEsY0FBQUMsU0FBQTtBQUFBLFNBQUFKLG1CQUFBRCxHQUFBLFFBQUFNLEtBQUEsQ0FBQUMsT0FBQSxDQUFBUCxHQUFBLFVBQUFRLGlCQUFBLENBQUFSLEdBQUE7QUFBQSxTQUFBUyxRQUFBQyxNQUFBLEVBQUFDLGNBQUEsUUFBQUMsSUFBQSxHQUFBQyxNQUFBLENBQUFELElBQUEsQ0FBQUYsTUFBQSxPQUFBRyxNQUFBLENBQUFDLHFCQUFBLFFBQUFDLE9BQUEsR0FBQUYsTUFBQSxDQUFBQyxxQkFBQSxDQUFBSixNQUFBLEdBQUFDLGNBQUEsS0FBQUksT0FBQSxHQUFBQSxPQUFBLENBQUFDLE1BQUEsV0FBQUMsR0FBQSxXQUFBSixNQUFBLENBQUFLLHdCQUFBLENBQUFSLE1BQUEsRUFBQU8sR0FBQSxFQUFBRSxVQUFBLE9BQUFQLElBQUEsQ0FBQVEsSUFBQSxDQUFBQyxLQUFBLENBQUFULElBQUEsRUFBQUcsT0FBQSxZQUFBSCxJQUFBO0FBQUEsU0FBQVUsY0FBQUMsTUFBQSxhQUFBQyxDQUFBLE1BQUFBLENBQUEsR0FBQUMsU0FBQSxDQUFBQyxNQUFBLEVBQUFGLENBQUEsVUFBQUcsTUFBQSxXQUFBRixTQUFBLENBQUFELENBQUEsSUFBQUMsU0FBQSxDQUFBRCxDQUFBLFFBQUFBLENBQUEsT0FBQWYsT0FBQSxDQUFBSSxNQUFBLENBQUFjLE1BQUEsT0FBQUMsT0FBQSxXQUFBQyxHQUFBLElBQUFDLGVBQUEsQ0FBQVAsTUFBQSxFQUFBTSxHQUFBLEVBQUFGLE1BQUEsQ0FBQUUsR0FBQSxTQUFBaEIsTUFBQSxDQUFBa0IseUJBQUEsR0FBQWxCLE1BQUEsQ0FBQW1CLGdCQUFBLENBQUFULE1BQUEsRUFBQVYsTUFBQSxDQUFBa0IseUJBQUEsQ0FBQUosTUFBQSxLQUFBbEIsT0FBQSxDQUFBSSxNQUFBLENBQUFjLE1BQUEsR0FBQUMsT0FBQSxXQUFBQyxHQUFBLElBQUFoQixNQUFBLENBQUFvQixjQUFBLENBQUFWLE1BQUEsRUFBQU0sR0FBQSxFQUFBaEIsTUFBQSxDQUFBSyx3QkFBQSxDQUFBUyxNQUFBLEVBQUFFLEdBQUEsaUJBQUFOLE1BQUE7QUFBQSxTQUFBVyxTQUFBbEMsR0FBQSxXQUFBbUMsZUFBQSxDQUFBbkMsR0FBQSxLQUFBRSxnQkFBQSxDQUFBRixHQUFBLEtBQUFHLDJCQUFBLENBQUFILEdBQUEsS0FBQW9DLGdCQUFBO0FBQUEsU0FBQUEsaUJBQUEsY0FBQS9CLFNBQUE7QUFBQSxTQUFBRiw0QkFBQWtDLENBQUEsRUFBQUMsTUFBQSxTQUFBRCxDQUFBLHFCQUFBQSxDQUFBLHNCQUFBN0IsaUJBQUEsQ0FBQTZCLENBQUEsRUFBQUMsTUFBQSxPQUFBQyxDQUFBLEdBQUExQixNQUFBLENBQUFmLFNBQUEsQ0FBQTBDLFFBQUEsQ0FBQUMsSUFBQSxDQUFBSixDQUFBLEVBQUFLLEtBQUEsYUFBQUgsQ0FBQSxpQkFBQUYsQ0FBQSxDQUFBeEMsV0FBQSxFQUFBMEMsQ0FBQSxHQUFBRixDQUFBLENBQUF4QyxXQUFBLENBQUE4QyxJQUFBLE1BQUFKLENBQUEsY0FBQUEsQ0FBQSxtQkFBQWpDLEtBQUEsQ0FBQXNDLElBQUEsQ0FBQVAsQ0FBQSxPQUFBRSxDQUFBLCtEQUFBTSxJQUFBLENBQUFOLENBQUEsVUFBQS9CLGlCQUFBLENBQUE2QixDQUFBLEVBQUFDLE1BQUE7QUFBQSxTQUFBOUIsa0JBQUFSLEdBQUEsRUFBQThDLEdBQUEsUUFBQUEsR0FBQSxZQUFBQSxHQUFBLEdBQUE5QyxHQUFBLENBQUEwQixNQUFBLEVBQUFvQixHQUFBLEdBQUE5QyxHQUFBLENBQUEwQixNQUFBLFdBQUFGLENBQUEsTUFBQXVCLElBQUEsT0FBQXpDLEtBQUEsQ0FBQXdDLEdBQUEsR0FBQXRCLENBQUEsR0FBQXNCLEdBQUEsRUFBQXRCLENBQUEsSUFBQXVCLElBQUEsQ0FBQXZCLENBQUEsSUFBQXhCLEdBQUEsQ0FBQXdCLENBQUEsVUFBQXVCLElBQUE7QUFBQSxTQUFBN0MsaUJBQUE4QyxJQUFBLGVBQUFyRCxNQUFBLG9CQUFBcUQsSUFBQSxDQUFBckQsTUFBQSxDQUFBQyxRQUFBLGFBQUFvRCxJQUFBLCtCQUFBMUMsS0FBQSxDQUFBc0MsSUFBQSxDQUFBSSxJQUFBO0FBQUEsU0FBQWIsZ0JBQUFuQyxHQUFBLFFBQUFNLEtBQUEsQ0FBQUMsT0FBQSxDQUFBUCxHQUFBLFVBQUFBLEdBQUE7QUFBQSxTQUFBaUQsZ0JBQUFDLFFBQUEsRUFBQUMsV0FBQSxVQUFBRCxRQUFBLFlBQUFDLFdBQUEsZUFBQTlDLFNBQUE7QUFBQSxTQUFBK0Msa0JBQUE3QixNQUFBLEVBQUE4QixLQUFBLGFBQUE3QixDQUFBLE1BQUFBLENBQUEsR0FBQTZCLEtBQUEsQ0FBQTNCLE1BQUEsRUFBQUYsQ0FBQSxVQUFBOEIsVUFBQSxHQUFBRCxLQUFBLENBQUE3QixDQUFBLEdBQUE4QixVQUFBLENBQUFuQyxVQUFBLEdBQUFtQyxVQUFBLENBQUFuQyxVQUFBLFdBQUFtQyxVQUFBLENBQUFDLFlBQUEsd0JBQUFELFVBQUEsRUFBQUEsVUFBQSxDQUFBRSxRQUFBLFNBQUEzQyxNQUFBLENBQUFvQixjQUFBLENBQUFWLE1BQUEsRUFBQWtDLGNBQUEsQ0FBQUgsVUFBQSxDQUFBekIsR0FBQSxHQUFBeUIsVUFBQTtBQUFBLFNBQUFJLGFBQUFQLFdBQUEsRUFBQVEsVUFBQSxFQUFBQyxXQUFBLFFBQUFELFVBQUEsRUFBQVAsaUJBQUEsQ0FBQUQsV0FBQSxDQUFBckQsU0FBQSxFQUFBNkQsVUFBQSxPQUFBQyxXQUFBLEVBQUFSLGlCQUFBLENBQUFELFdBQUEsRUFBQVMsV0FBQSxHQUFBL0MsTUFBQSxDQUFBb0IsY0FBQSxDQUFBa0IsV0FBQSxpQkFBQUssUUFBQSxtQkFBQUwsV0FBQTtBQUFBLFNBQUFVLFVBQUFDLFFBQUEsRUFBQUMsVUFBQSxlQUFBQSxVQUFBLG1CQUFBQSxVQUFBLHVCQUFBMUQsU0FBQSwwREFBQXlELFFBQUEsQ0FBQWhFLFNBQUEsR0FBQWUsTUFBQSxDQUFBbUQsTUFBQSxDQUFBRCxVQUFBLElBQUFBLFVBQUEsQ0FBQWpFLFNBQUEsSUFBQUQsV0FBQSxJQUFBb0UsS0FBQSxFQUFBSCxRQUFBLEVBQUFOLFFBQUEsUUFBQUQsWUFBQSxhQUFBMUMsTUFBQSxDQUFBb0IsY0FBQSxDQUFBNkIsUUFBQSxpQkFBQU4sUUFBQSxnQkFBQU8sVUFBQSxFQUFBRyxlQUFBLENBQUFKLFFBQUEsRUFBQUMsVUFBQTtBQUFBLFNBQUFHLGdCQUFBN0IsQ0FBQSxFQUFBOEIsQ0FBQSxJQUFBRCxlQUFBLEdBQUFyRCxNQUFBLENBQUF1RCxjQUFBLEdBQUF2RCxNQUFBLENBQUF1RCxjQUFBLENBQUFDLElBQUEsY0FBQUgsZ0JBQUE3QixDQUFBLEVBQUE4QixDQUFBLElBQUE5QixDQUFBLENBQUFpQyxTQUFBLEdBQUFILENBQUEsU0FBQTlCLENBQUEsWUFBQTZCLGVBQUEsQ0FBQTdCLENBQUEsRUFBQThCLENBQUE7QUFBQSxTQUFBSSxhQUFBQyxPQUFBLFFBQUFDLHlCQUFBLEdBQUFDLHlCQUFBLG9CQUFBQyxxQkFBQSxRQUFBQyxLQUFBLEdBQUFDLGVBQUEsQ0FBQUwsT0FBQSxHQUFBTSxNQUFBLE1BQUFMLHlCQUFBLFFBQUFNLFNBQUEsR0FBQUYsZUFBQSxPQUFBaEYsV0FBQSxFQUFBaUYsTUFBQSxHQUFBRSxPQUFBLENBQUFDLFNBQUEsQ0FBQUwsS0FBQSxFQUFBbkQsU0FBQSxFQUFBc0QsU0FBQSxZQUFBRCxNQUFBLEdBQUFGLEtBQUEsQ0FBQXZELEtBQUEsT0FBQUksU0FBQSxZQUFBeUQsMEJBQUEsT0FBQUosTUFBQTtBQUFBLFNBQUFJLDJCQUFBQyxJQUFBLEVBQUExQyxJQUFBLFFBQUFBLElBQUEsS0FBQS9DLE9BQUEsQ0FBQStDLElBQUEseUJBQUFBLElBQUEsMkJBQUFBLElBQUEsYUFBQUEsSUFBQSx5QkFBQXBDLFNBQUEsdUVBQUErRSxzQkFBQSxDQUFBRCxJQUFBO0FBQUEsU0FBQUMsdUJBQUFELElBQUEsUUFBQUEsSUFBQSx5QkFBQUUsY0FBQSx3RUFBQUYsSUFBQTtBQUFBLFNBQUFULDBCQUFBLGVBQUFNLE9BQUEscUJBQUFBLE9BQUEsQ0FBQUMsU0FBQSxvQkFBQUQsT0FBQSxDQUFBQyxTQUFBLENBQUFLLElBQUEsMkJBQUFDLEtBQUEsb0NBQUFDLE9BQUEsQ0FBQTFGLFNBQUEsQ0FBQTJGLE9BQUEsQ0FBQWhELElBQUEsQ0FBQXVDLE9BQUEsQ0FBQUMsU0FBQSxDQUFBTyxPQUFBLDhDQUFBRSxDQUFBO0FBQUEsU0FBQWIsZ0JBQUF4QyxDQUFBLElBQUF3QyxlQUFBLEdBQUFoRSxNQUFBLENBQUF1RCxjQUFBLEdBQUF2RCxNQUFBLENBQUE4RSxjQUFBLENBQUF0QixJQUFBLGNBQUFRLGdCQUFBeEMsQ0FBQSxXQUFBQSxDQUFBLENBQUFpQyxTQUFBLElBQUF6RCxNQUFBLENBQUE4RSxjQUFBLENBQUF0RCxDQUFBLGFBQUF3QyxlQUFBLENBQUF4QyxDQUFBO0FBQUEsU0FBQVAsZ0JBQUF0QyxHQUFBLEVBQUFxQyxHQUFBLEVBQUFvQyxLQUFBLElBQUFwQyxHQUFBLEdBQUE0QixjQUFBLENBQUE1QixHQUFBLE9BQUFBLEdBQUEsSUFBQXJDLEdBQUEsSUFBQXFCLE1BQUEsQ0FBQW9CLGNBQUEsQ0FBQXpDLEdBQUEsRUFBQXFDLEdBQUEsSUFBQW9DLEtBQUEsRUFBQUEsS0FBQSxFQUFBOUMsVUFBQSxRQUFBb0MsWUFBQSxRQUFBQyxRQUFBLG9CQUFBaEUsR0FBQSxDQUFBcUMsR0FBQSxJQUFBb0MsS0FBQSxXQUFBekUsR0FBQTtBQUFBLFNBQUFpRSxlQUFBbUMsR0FBQSxRQUFBL0QsR0FBQSxHQUFBZ0UsWUFBQSxDQUFBRCxHQUFBLG9CQUFBbEcsT0FBQSxDQUFBbUMsR0FBQSxpQkFBQUEsR0FBQSxHQUFBaUUsTUFBQSxDQUFBakUsR0FBQTtBQUFBLFNBQUFnRSxhQUFBRSxLQUFBLEVBQUFDLElBQUEsUUFBQXRHLE9BQUEsQ0FBQXFHLEtBQUEsa0JBQUFBLEtBQUEsa0JBQUFBLEtBQUEsTUFBQUUsSUFBQSxHQUFBRixLQUFBLENBQUFwRyxNQUFBLENBQUF1RyxXQUFBLE9BQUFELElBQUEsS0FBQUUsU0FBQSxRQUFBQyxHQUFBLEdBQUFILElBQUEsQ0FBQXhELElBQUEsQ0FBQXNELEtBQUEsRUFBQUMsSUFBQSxvQkFBQXRHLE9BQUEsQ0FBQTBHLEdBQUEsdUJBQUFBLEdBQUEsWUFBQS9GLFNBQUEsNERBQUEyRixJQUFBLGdCQUFBRixNQUFBLEdBQUFPLE1BQUEsRUFBQU4sS0FBQTtBQUczRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQVRBLElBVWVPLFlBQVksMEJBQUFDLGdCQUFBO0VBQUExQyxTQUFBLENBQUF5QyxZQUFBLEVBQUFDLGdCQUFBO0VBQUEsSUFBQUMsTUFBQSxHQUFBakMsWUFBQSxDQUFBK0IsWUFBQTtFQVF2QjtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtFQUNJLFNBQUFBLGFBQW9CakQsS0FBYSxFQUFFb0QsSUFBNEMsRUFBRTlELElBQVksRUFBRTtJQUFBLElBQUErRCxpQkFBQTtJQUFBLElBQUFDLEtBQUE7SUFBQTFELGVBQUEsT0FBQXFELFlBQUE7SUFDM0ZLLEtBQUEsR0FBQUgsTUFBQSxDQUFBL0QsSUFBQSxPQUFNWSxLQUFLO0lBQUV2QixlQUFBLENBQUFzRCxzQkFBQSxDQUFBdUIsS0FBQTtJQUFBN0UsZUFBQSxDQUFBc0Qsc0JBQUEsQ0FBQXVCLEtBQUE7SUFBQTdFLGVBQUEsQ0FBQXNELHNCQUFBLENBQUF1QixLQUFBLGFBYnNCLEVBQUU7SUFBQTdFLGVBQUEsQ0FBQXNELHNCQUFBLENBQUF1QixLQUFBLGdCQUNyQixLQUFLO0lBQUE3RSxlQUFBLENBQUFzRCxzQkFBQSxDQUFBdUIsS0FBQSxjQUNQLEtBQUs7SUFBQTdFLGVBQUEsQ0FBQXNELHNCQUFBLENBQUF1QixLQUFBO0lBNkR2QjtBQUNKO0FBQ0E7QUFDQTtBQUNBO0lBSkk3RSxlQUFBLENBQUFzRCxzQkFBQSxDQUFBdUIsS0FBQSxlQUsyQixVQUFDQyxHQUFhLEVBQVc7TUFDaEQsSUFBSUQsS0FBQSxDQUFLRSxTQUFTLEVBQUU7UUFDaEJGLEtBQUEsQ0FBS0csTUFBTSxDQUFDMUYsSUFBSSxDQUFDd0YsR0FBRyxDQUFDO01BQ3pCLENBQUMsTUFBTTtRQUNIRCxLQUFBLENBQUtFLFNBQVMsR0FBRyxJQUFJO1FBRXJCLElBQUlFLE9BQTZCLEdBQUdILEdBQUc7UUFDdkMsSUFBSUksUUFBUSxHQUFHLEtBQUs7UUFFcEIsT0FBT0QsT0FBTyxFQUFFO1VBQ1osSUFBQUUsa0JBQVUsRUFBQ04sS0FBQSxDQUFLTyxhQUFhLEVBQUVILE9BQU8sQ0FBQztVQUV2QyxJQUFBSSxZQUFBLEdBQTZCUixLQUFBLENBQUtTLE1BQU0sQ0FBQ1QsS0FBQSxDQUFLVSxZQUFZLEVBQUVOLE9BQU8sRUFBRUosS0FBQSxDQUFLdEQsS0FBSyxDQUFDO1lBQUFpRSxhQUFBLEdBQUFwRixRQUFBLENBQUFpRixZQUFBO1lBQXpFSSxLQUFLLEdBQUFELGFBQUE7WUFBS0UsUUFBUSxHQUFBRixhQUFBLENBQUE1RSxLQUFBO1VBRXpCLElBQUksSUFBQStFLHVCQUFlLEVBQUNkLEtBQUEsQ0FBS1UsWUFBWSxFQUFFRSxLQUFLLENBQUMsRUFBRTtZQUMzQ1osS0FBQSxDQUFLVSxZQUFZLEdBQUEvRixhQUFBLENBQUFBLGFBQUEsS0FBUXFGLEtBQUEsQ0FBS1UsWUFBWSxHQUFLRSxLQUFLLENBQUU7WUFDdERQLFFBQVEsR0FBRyxJQUFJO1VBQ25CO1VBRUFVLGVBQU8sQ0FBQXJHLEtBQUEsVUFBQ3NGLEtBQUEsQ0FBS2dCLFFBQVEsRUFBQUMsTUFBQSxDQUFBN0gsa0JBQUEsQ0FBS3lILFFBQVEsR0FBQztVQUVuQ1QsT0FBTyxHQUFHSixLQUFBLENBQUtHLE1BQU0sQ0FBQ2UsS0FBSyxFQUFFO1FBQ2pDO1FBQ0FsQixLQUFBLENBQUtFLFNBQVMsR0FBRyxLQUFLO1FBRXRCLElBQUlGLEtBQUEsQ0FBS21CLE9BQU8sSUFBSWQsUUFBUSxFQUFFO1VBQUEsSUFBQWUsZ0JBQUE7VUFDMUIsQ0FBQUEsZ0JBQUEsR0FBQUMsY0FBUSxDQUFDQyxNQUFNLGNBQUFGLGdCQUFBLHVCQUFmQSxnQkFBQSxDQUFpQkcsS0FBSyxDQUFDLEtBQUssRUFBRSxrQkFBa0IsRUFBRXZCLEtBQUEsQ0FBS08sYUFBYSxFQUFFUCxLQUFBLENBQUtVLFlBQVksQ0FBQztVQUN4RlYsS0FBQSxDQUFLd0IsV0FBVyxFQUFFO1FBQ3RCO01BQ0o7SUFDSixDQUFDO0lBRUQ7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0lBUklyRyxlQUFBLENBQUFzRCxzQkFBQSxDQUFBdUIsS0FBQTtJQXJGSSxJQUFNeUIsV0FBVyxHQUFHLElBQUFDLCtCQUFrQixHQUFFO0lBRXhDLElBQUlELFdBQVcsYUFBWEEsV0FBVyxlQUFYQSxXQUFXLENBQUVULFFBQVEsRUFBRTtNQUN2QmhCLEtBQUEsQ0FBS2dCLFFBQVEsR0FBR1MsV0FBVyxDQUFDVCxRQUFRO0lBQ3hDO0lBRUEsSUFBQVcsSUFBQSxHQUE2QkYsV0FBVyxhQUFYQSxXQUFXLGVBQVhBLFdBQVcsQ0FBRWIsS0FBSyxHQUFHLENBQUNhLFdBQVcsQ0FBQ2IsS0FBSyxDQUFXLEdBQUdkLElBQUksQ0FBQ0UsS0FBQSxDQUFLdEQsS0FBSyxDQUFDO01BQUFrRixLQUFBLEdBQUFyRyxRQUFBLENBQUFvRyxJQUFBO01BQTNGZixNQUFLLEdBQUFnQixLQUFBO01BQUtmLFNBQVEsR0FBQWUsS0FBQSxDQUFBN0YsS0FBQTtJQUV6QixDQUFBZ0UsaUJBQUEsR0FBQXNCLGNBQVEsQ0FBQ0MsTUFBTSxjQUFBdkIsaUJBQUEsdUJBQWZBLGlCQUFBLENBQWlCd0IsS0FBSyxDQUFDLEtBQUssRUFBRSxtQkFBbUIsRUFBRXZGLElBQUksRUFBRTRFLE1BQUssQ0FBQztJQUUvRFosS0FBQSxDQUFLTyxhQUFhLEdBQUd2RSxJQUFJO0lBQ3pCZ0UsS0FBQSxDQUFLVSxZQUFZLEdBQUdFLE1BQUs7SUFDekJaLEtBQUEsQ0FBSzZCLFlBQVksR0FBR2hCLFNBQVE7SUFBQyxPQUFBYixLQUFBO0VBQ2pDOztFQUVBO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7RUFKSWpELFlBQUEsQ0FBQTRDLFlBQUE7SUFBQXpFLEdBQUE7SUFBQW9DLEtBQUEsRUFLQSxTQUFBd0Usa0JBQUEsRUFBa0M7TUFDOUIsSUFBSSxDQUFDWCxPQUFPLEdBQUcsSUFBSTtNQUVuQixJQUFJLElBQUksQ0FBQ1UsWUFBWSxFQUFFO1FBQ25CZCxlQUFPLENBQUFyRyxLQUFBLFVBQUMsSUFBSSxDQUFDc0csUUFBUSxFQUFBQyxNQUFBLENBQUE3SCxrQkFBQSxDQUFLLElBQUksQ0FBQ3lJLFlBQVksR0FBQztRQUM1QyxJQUFJLENBQUNBLFlBQVksR0FBRyxJQUFJO01BQzVCO0lBQ0o7O0lBRUE7QUFDSjtBQUNBO0FBQ0E7QUFDQTtFQUpJO0lBQUEzRyxHQUFBO0lBQUFvQyxLQUFBLEVBS0EsU0FBQXlFLHFCQUFBLEVBQXFDO01BQ2pDLElBQUksQ0FBQ1osT0FBTyxHQUFHLEtBQUs7SUFDeEI7O0lBRUE7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0VBTEk7SUFBQWpHLEdBQUE7SUFBQThHLEdBQUEsRUFNQSxTQUFBQSxJQUFBLEVBQXNDO01BQ2xDLE9BQU8sSUFBSSxDQUFDdEIsWUFBWTtJQUM1QjtFQUFDO0VBQUEsT0FBQWYsWUFBQTtBQUFBLEVBaEV5RXNDLGlCQUFLLENBQUNDLFNBQVM7QUFBQUMsT0FBQSxDQUFBeEMsWUFBQSxHQUFBQSxZQUFBIn0=
167
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9Db21tb24iLCJfSW5pdCIsIl9mYWtlT3B0aW9ucyIsIm9iaiIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiU3ltYm9sIiwiaXRlcmF0b3IiLCJjb25zdHJ1Y3RvciIsInByb3RvdHlwZSIsIl90b0NvbnN1bWFibGVBcnJheSIsImFyciIsIl9hcnJheVdpdGhvdXRIb2xlcyIsIl9pdGVyYWJsZVRvQXJyYXkiLCJfdW5zdXBwb3J0ZWRJdGVyYWJsZVRvQXJyYXkiLCJfbm9uSXRlcmFibGVTcHJlYWQiLCJUeXBlRXJyb3IiLCJBcnJheSIsImlzQXJyYXkiLCJfYXJyYXlMaWtlVG9BcnJheSIsIm93bktleXMiLCJvYmplY3QiLCJlbnVtZXJhYmxlT25seSIsImtleXMiLCJPYmplY3QiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJzeW1ib2xzIiwiZmlsdGVyIiwic3ltIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiZW51bWVyYWJsZSIsInB1c2giLCJhcHBseSIsIl9vYmplY3RTcHJlYWQiLCJ0YXJnZXQiLCJpIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwic291cmNlIiwiZm9yRWFjaCIsImtleSIsIl9kZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwiZGVmaW5lUHJvcGVydHkiLCJfdG9BcnJheSIsIl9hcnJheVdpdGhIb2xlcyIsIl9ub25JdGVyYWJsZVJlc3QiLCJvIiwibWluTGVuIiwibiIsInRvU3RyaW5nIiwiY2FsbCIsInNsaWNlIiwibmFtZSIsImZyb20iLCJ0ZXN0IiwibGVuIiwiYXJyMiIsIml0ZXIiLCJfY2xhc3NDYWxsQ2hlY2siLCJpbnN0YW5jZSIsIkNvbnN0cnVjdG9yIiwiX2RlZmluZVByb3BlcnRpZXMiLCJwcm9wcyIsImRlc2NyaXB0b3IiLCJjb25maWd1cmFibGUiLCJ3cml0YWJsZSIsIl90b1Byb3BlcnR5S2V5IiwiX2NyZWF0ZUNsYXNzIiwicHJvdG9Qcm9wcyIsInN0YXRpY1Byb3BzIiwiX2luaGVyaXRzIiwic3ViQ2xhc3MiLCJzdXBlckNsYXNzIiwiY3JlYXRlIiwidmFsdWUiLCJfc2V0UHJvdG90eXBlT2YiLCJwIiwic2V0UHJvdG90eXBlT2YiLCJiaW5kIiwiX19wcm90b19fIiwiX2NyZWF0ZVN1cGVyIiwiRGVyaXZlZCIsImhhc05hdGl2ZVJlZmxlY3RDb25zdHJ1Y3QiLCJfaXNOYXRpdmVSZWZsZWN0Q29uc3RydWN0IiwiX2NyZWF0ZVN1cGVySW50ZXJuYWwiLCJTdXBlciIsIl9nZXRQcm90b3R5cGVPZiIsInJlc3VsdCIsIk5ld1RhcmdldCIsIlJlZmxlY3QiLCJjb25zdHJ1Y3QiLCJfcG9zc2libGVDb25zdHJ1Y3RvclJldHVybiIsInNlbGYiLCJfYXNzZXJ0VGhpc0luaXRpYWxpemVkIiwiUmVmZXJlbmNlRXJyb3IiLCJzaGFtIiwiUHJveHkiLCJCb29sZWFuIiwidmFsdWVPZiIsImUiLCJnZXRQcm90b3R5cGVPZiIsImFyZyIsIl90b1ByaW1pdGl2ZSIsIlN0cmluZyIsImlucHV0IiwiaGludCIsInByaW0iLCJ0b1ByaW1pdGl2ZSIsInVuZGVmaW5lZCIsInJlcyIsIk51bWJlciIsIkVsbUNvbXBvbmVudCIsIl9SZWFjdCRDb21wb25lbnQiLCJfc3VwZXIiLCJpbml0IiwiX1NlcnZpY2VzJGxvZ2dlcjIiLCJfdGhpcyIsIm1zZyIsInJlZW50ZXJlZCIsImJ1ZmZlciIsIm5leHRNc2ciLCJtb2RpZmllZCIsImxvZ01lc3NhZ2UiLCJjb21wb25lbnROYW1lIiwiX3RoaXMkdXBkYXRlIiwidXBkYXRlIiwiY3VycmVudE1vZGVsIiwiX3RoaXMkdXBkYXRlMiIsIm1vZGVsIiwiY29tbWFuZHMiLCJtb2RlbEhhc0NoYW5nZWQiLCJleGVjQ21kIiwiZGlzcGF0Y2giLCJjb25jYXQiLCJzaGlmdCIsIm1vdW50ZWQiLCJfU2VydmljZXMkbG9nZ2VyIiwiU2VydmljZXMiLCJsb2dnZXIiLCJkZWJ1ZyIsImZvcmNlVXBkYXRlIiwiZmFrZU9wdGlvbnMiLCJnZXRGYWtlT3B0aW9uc09uY2UiLCJfcmVmIiwiX3JlZjIiLCJpbml0Q29tbWFuZHMiLCJjb21wb25lbnREaWRNb3VudCIsImNvbXBvbmVudFdpbGxVbm1vdW50IiwiZ2V0IiwiUmVhY3QiLCJDb21wb25lbnQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vc3JjL0VsbUNvbXBvbmVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgeyBleGVjQ21kLCBsb2dNZXNzYWdlLCBtb2RlbEhhc0NoYW5nZWQgfSBmcm9tIFwiLi9Db21tb25cIjtcbmltcG9ydCB7IFNlcnZpY2VzIH0gZnJvbSBcIi4vSW5pdFwiO1xuaW1wb3J0IHsgZ2V0RmFrZU9wdGlvbnNPbmNlIH0gZnJvbSBcIi4vVGVzdGluZy9mYWtlT3B0aW9uc1wiO1xuaW1wb3J0IHsgQ21kLCBJbml0RnVuY3Rpb24sIE1lc3NhZ2UsIE51bGxhYmxlLCBVcGRhdGVGdW5jdGlvbiB9IGZyb20gXCIuL1R5cGVzXCI7XG5cbi8qKlxuICogQWJzdHJhY3QgY2xhc3MgZm9yIGEgcmVhY3QgY2xhc3MgY29tcG9uZW50IHVzaW5nIHRoZSBFbG1pc2ggcGF0dGVybi5cbiAqIEBleHBvcnRcbiAqIEBhYnN0cmFjdFxuICogQGNsYXNzIEVsbUNvbXBvbmVudFxuICogQGV4dGVuZHMge0NvbXBvbmVudDxUUHJvcHMsIFRNb2RlbD59XG4gKiBAdGVtcGxhdGUgVE1vZGVsIFRoZSB0eXBlIG9mIHRoZSBtb2RlbC5cbiAqIEB0ZW1wbGF0ZSBUTWVzc2FnZSBUaGUgdHlwZSBvZiB0aGUgbWVzc2FnZXMuXG4gKiBAdGVtcGxhdGUgVFByb3BzIFRoZSB0eXBlIG9mIHRoZSBwcm9wcy5cbiAqL1xuYWJzdHJhY3QgY2xhc3MgRWxtQ29tcG9uZW50PFRNb2RlbCwgVE1lc3NhZ2UgZXh0ZW5kcyBNZXNzYWdlLCBUUHJvcHM+IGV4dGVuZHMgUmVhY3QuQ29tcG9uZW50PFRQcm9wcz4ge1xuICAgIHByaXZhdGUgaW5pdENvbW1hbmRzOiBOdWxsYWJsZTwoQ21kPFRNZXNzYWdlPiB8IHVuZGVmaW5lZCkgW10+IHwgdW5kZWZpbmVkO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgY29tcG9uZW50TmFtZTogc3RyaW5nO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgYnVmZmVyOiBUTWVzc2FnZSBbXSA9IFtdO1xuICAgIHByaXZhdGUgcmVlbnRlcmVkID0gZmFsc2U7XG4gICAgcHJpdmF0ZSBtb3VudGVkID0gZmFsc2U7XG4gICAgcHJpdmF0ZSBjdXJyZW50TW9kZWw6IFRNb2RlbDtcblxuICAgIC8qKlxuICAgICAqIENyZWF0ZXMgYW4gaW5zdGFuY2Ugb2YgRWxtQ29tcG9uZW50LlxuICAgICAqIEBwYXJhbSB7VFByb3BzfSBwcm9wcyBUaGUgcHJvcHMgZm9yIHRoZSBjb21wb25lbnQuXG4gICAgICogQHBhcmFtIHsoKSA9PiBUTW9kZWx9IGluaXQgVGhlIGluaXRpYWxpemVyIGZ1bmN0aW9uLlxuICAgICAqIEBwYXJhbSBuYW1lIFRoZSBuYW1lIG9mIHRoZSBjb21wb25lbnQuXG4gICAgICogQG1lbWJlcm9mIEVsbUNvbXBvbmVudFxuICAgICAqL1xuICAgIHB1YmxpYyBjb25zdHJ1Y3RvciAocHJvcHM6IFRQcm9wcywgaW5pdDogSW5pdEZ1bmN0aW9uPFRQcm9wcywgVE1vZGVsLCBUTWVzc2FnZT4sIG5hbWU6IHN0cmluZykge1xuICAgICAgICBzdXBlcihwcm9wcyk7XG5cbiAgICAgICAgY29uc3QgZmFrZU9wdGlvbnMgPSBnZXRGYWtlT3B0aW9uc09uY2UoKTtcblxuICAgICAgICBpZiAoZmFrZU9wdGlvbnM/LmRpc3BhdGNoKSB7XG4gICAgICAgICAgICB0aGlzLmRpc3BhdGNoID0gZmFrZU9wdGlvbnMuZGlzcGF0Y2g7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBbbW9kZWwsIC4uLmNvbW1hbmRzXSA9IGZha2VPcHRpb25zPy5tb2RlbCA/IFtmYWtlT3B0aW9ucy5tb2RlbCBhcyBUTW9kZWxdIDogaW5pdCh0aGlzLnByb3BzKTtcblxuICAgICAgICBTZXJ2aWNlcy5sb2dnZXI/LmRlYnVnKFwiSW5pdGlhbCBtb2RlbCBmb3JcIiwgbmFtZSwgbW9kZWwpO1xuXG4gICAgICAgIHRoaXMuY29tcG9uZW50TmFtZSA9IG5hbWU7XG4gICAgICAgIHRoaXMuY3VycmVudE1vZGVsID0gbW9kZWw7XG4gICAgICAgIHRoaXMuaW5pdENvbW1hbmRzID0gY29tbWFuZHM7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogSXMgY2FsbGVkIHdoZW4gdGhlIGNvbXBvbmVudCBpcyBsb2FkZWQuXG4gICAgICogV2hlbiBpbXBsZW1lbnRpbmcgdGhpcyBtZXRob2QsIHRoZSBiYXNlIGltcGxlbWVudGF0aW9uIGhhcyB0byBiZSBjYWxsZWQuXG4gICAgICogQG1lbWJlcm9mIEVsbUNvbXBvbmVudFxuICAgICAqL1xuICAgIHB1YmxpYyBjb21wb25lbnREaWRNb3VudCAoKTogdm9pZCB7XG4gICAgICAgIHRoaXMubW91bnRlZCA9IHRydWU7XG5cbiAgICAgICAgaWYgKHRoaXMuaW5pdENvbW1hbmRzKSB7XG4gICAgICAgICAgICBleGVjQ21kKHRoaXMuZGlzcGF0Y2gsIC4uLnRoaXMuaW5pdENvbW1hbmRzKTtcbiAgICAgICAgICAgIHRoaXMuaW5pdENvbW1hbmRzID0gbnVsbDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIElzIGNhbGxlZCBiZWZvcmUgdW5sb2FkaW5nIHRoZSBjb21wb25lbnQuXG4gICAgICogV2hlbiBpbXBsZW1lbnRpbmcgdGhpcyBtZXRob2QsIHRoZSBiYXNlIGltcGxlbWVudGF0aW9uIGhhcyB0byBiZSBjYWxsZWQuXG4gICAgICogQG1lbWJlcm9mIEVsbUNvbXBvbmVudFxuICAgICAqL1xuICAgIHB1YmxpYyBjb21wb25lbnRXaWxsVW5tb3VudCAoKTogdm9pZCB7XG4gICAgICAgIHRoaXMubW91bnRlZCA9IGZhbHNlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgdGhlIGN1cnJlbnQgbW9kZWwuXG4gICAgICogQHJlYWRvbmx5XG4gICAgICogQHR5cGUge1JlYWRvbmx5PFRNb2RlbD59XG4gICAgICogQG1lbWJlcm9mIEVsbUNvbXBvbmVudFxuICAgICAqL1xuICAgIHB1YmxpYyBnZXQgbW9kZWwgKCk6IFJlYWRvbmx5PFRNb2RlbD4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jdXJyZW50TW9kZWw7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRGlzcGF0Y2hlcyBhIG1lc3NhZ2UuXG4gICAgICogQHBhcmFtIHtUTWVzc2FnZX0gbXNnIFRoZSBtZXNzYWdlIHRvIGRpc3BhdGNoLlxuICAgICAqIEBtZW1iZXJvZiBFbG1Db21wb25lbnRcbiAgICAgKi9cbiAgICBwdWJsaWMgcmVhZG9ubHkgZGlzcGF0Y2ggPSAobXNnOiBUTWVzc2FnZSk6IHZvaWQgPT4ge1xuICAgICAgICBpZiAodGhpcy5yZWVudGVyZWQpIHtcbiAgICAgICAgICAgIHRoaXMuYnVmZmVyLnB1c2gobXNnKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMucmVlbnRlcmVkID0gdHJ1ZTtcblxuICAgICAgICAgICAgbGV0IG5leHRNc2c6IFRNZXNzYWdlIHwgdW5kZWZpbmVkID0gbXNnO1xuICAgICAgICAgICAgbGV0IG1vZGlmaWVkID0gZmFsc2U7XG5cbiAgICAgICAgICAgIHdoaWxlIChuZXh0TXNnKSB7XG4gICAgICAgICAgICAgICAgbG9nTWVzc2FnZSh0aGlzLmNvbXBvbmVudE5hbWUsIG5leHRNc2cpO1xuXG4gICAgICAgICAgICAgICAgY29uc3QgW21vZGVsLCAuLi5jb21tYW5kc10gPSB0aGlzLnVwZGF0ZSh0aGlzLmN1cnJlbnRNb2RlbCwgbmV4dE1zZywgdGhpcy5wcm9wcyk7XG5cbiAgICAgICAgICAgICAgICBpZiAobW9kZWxIYXNDaGFuZ2VkKHRoaXMuY3VycmVudE1vZGVsLCBtb2RlbCkpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50TW9kZWwgPSB7IC4uLnRoaXMuY3VycmVudE1vZGVsLCAuLi5tb2RlbCB9O1xuICAgICAgICAgICAgICAgICAgICBtb2RpZmllZCA9IHRydWU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgZXhlY0NtZCh0aGlzLmRpc3BhdGNoLCAuLi5jb21tYW5kcyk7XG5cbiAgICAgICAgICAgICAgICBuZXh0TXNnID0gdGhpcy5idWZmZXIuc2hpZnQoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMucmVlbnRlcmVkID0gZmFsc2U7XG5cbiAgICAgICAgICAgIGlmICh0aGlzLm1vdW50ZWQgJiYgbW9kaWZpZWQpIHtcbiAgICAgICAgICAgICAgICBTZXJ2aWNlcy5sb2dnZXI/LmRlYnVnKFwiVXBkYXRlIG1vZGVsIGZvclwiLCB0aGlzLmNvbXBvbmVudE5hbWUsIHRoaXMuY3VycmVudE1vZGVsKTtcbiAgICAgICAgICAgICAgICB0aGlzLmZvcmNlVXBkYXRlKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9O1xuXG4gICAgLyoqXG4gICAgICogRnVuY3Rpb24gdG8gbW9kaWZ5IHRoZSBtb2RlbCBiYXNlZCBvbiBhIG1lc3NhZ2UuXG4gICAgICogQHBhcmFtIHtUTW9kZWx9IG1vZGVsIFRoZSBjdXJyZW50IG1vZGVsLlxuICAgICAqIEBwYXJhbSB7VE1lc3NhZ2V9IG1zZyBUaGUgbWVzc2FnZSB0byBwcm9jZXNzLlxuICAgICAqIEBwYXJhbSB7VFByb3BzfSBwcm9wcyBUaGUgcHJvcHMgb2YgdGhlIGNvbXBvbmVudC5cbiAgICAgKiBAcmV0dXJucyBUaGUgbmV3IG1vZGVsIChjYW4gYWxzbyBiZSBhbiBlbXB0eSBvYmplY3Qge30pIGFuZCBhbiBvcHRpb25hbCBuZXcgbWVzc2FnZSB0byBkaXNwYXRjaC5cbiAgICAgKiBAYWJzdHJhY3RcbiAgICAgKiBAbWVtYmVyb2YgRWxtQ29tcG9uZW50XG4gICAgICovXG4gICAgcHVibGljIGFic3RyYWN0IHVwZGF0ZTogVXBkYXRlRnVuY3Rpb248VFByb3BzLCBUTW9kZWwsIFRNZXNzYWdlPjtcbn1cblxuZXhwb3J0IHtcbiAgICBFbG1Db21wb25lbnQsXG59OyJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsSUFBQUEsTUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsT0FBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsS0FBQSxHQUFBRixPQUFBO0FBQ0EsSUFBQUcsWUFBQSxHQUFBSCxPQUFBO0FBQTJELFNBQUFELHVCQUFBSyxHQUFBLFdBQUFBLEdBQUEsSUFBQUEsR0FBQSxDQUFBQyxVQUFBLEdBQUFELEdBQUEsZ0JBQUFBLEdBQUE7QUFBQSxTQUFBRSxRQUFBRixHQUFBLHNDQUFBRSxPQUFBLHdCQUFBQyxNQUFBLHVCQUFBQSxNQUFBLENBQUFDLFFBQUEsYUFBQUosR0FBQSxrQkFBQUEsR0FBQSxnQkFBQUEsR0FBQSxXQUFBQSxHQUFBLHlCQUFBRyxNQUFBLElBQUFILEdBQUEsQ0FBQUssV0FBQSxLQUFBRixNQUFBLElBQUFILEdBQUEsS0FBQUcsTUFBQSxDQUFBRyxTQUFBLHFCQUFBTixHQUFBLEtBQUFFLE9BQUEsQ0FBQUYsR0FBQTtBQUFBLFNBQUFPLG1CQUFBQyxHQUFBLFdBQUFDLGtCQUFBLENBQUFELEdBQUEsS0FBQUUsZ0JBQUEsQ0FBQUYsR0FBQSxLQUFBRywyQkFBQSxDQUFBSCxHQUFBLEtBQUFJLGtCQUFBO0FBQUEsU0FBQUEsbUJBQUEsY0FBQUMsU0FBQTtBQUFBLFNBQUFKLG1CQUFBRCxHQUFBLFFBQUFNLEtBQUEsQ0FBQUMsT0FBQSxDQUFBUCxHQUFBLFVBQUFRLGlCQUFBLENBQUFSLEdBQUE7QUFBQSxTQUFBUyxRQUFBQyxNQUFBLEVBQUFDLGNBQUEsUUFBQUMsSUFBQSxHQUFBQyxNQUFBLENBQUFELElBQUEsQ0FBQUYsTUFBQSxPQUFBRyxNQUFBLENBQUFDLHFCQUFBLFFBQUFDLE9BQUEsR0FBQUYsTUFBQSxDQUFBQyxxQkFB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
package/dist/cmd.d.ts CHANGED
@@ -15,6 +15,28 @@ declare const cmd: {
15
15
  * @param {Sub<TMessage>} sub The subscriber function.
16
16
  */
17
17
  ofSub<TMessage_2 extends Message>(sub: Sub<TMessage_2>): Cmd<TMessage_2>;
18
+ /**
19
+ * Creates a command out of a function and maps the result. This can also be an async function.
20
+ * @param task The function to call.
21
+ * @param ofSuccess Creates the message to dispatch when the function runs successfully or, for an async function, the promise is resolved.
22
+ * @param ofError Creates the message to dispatch when the function throws an error or, for an async function, the promise is rejected.
23
+ * @param args The parameters of the task.
24
+ */
25
+ either<TMessage_3 extends Message, TArgs extends unknown[], TReturn>(task: (...args: TArgs) => TReturn, ofSuccess: (result: Awaited<TReturn>) => TMessage_3, ofError: (error: Error) => TMessage_3, ...args: TArgs): Cmd<TMessage_3>;
26
+ /**
27
+ * Creates a command out of a function and ignores the error case. This can also be an async function.
28
+ * @param task The async function to call.
29
+ * @param ofSuccess Creates the message to dispatch when the function runs successfully or, for an async function, the promise is resolved.
30
+ * @param args The parameters of the task.
31
+ */
32
+ perform<TMessage_4 extends Message, TArgs_1 extends unknown[], TReturn_1>(task: (...args: TArgs_1) => TReturn_1, ofSuccess: (result: Awaited<TReturn_1>) => TMessage_4, ...args: TArgs_1): Cmd<TMessage_4>;
33
+ /**
34
+ * Creates a command out of a function and ignores the success case. This can also be an async function.
35
+ * @param task The function to call.
36
+ * @param ofError Creates the message to dispatch when the function runs successfully or, for an async function, the promise is rejected.
37
+ * @param args The parameters of the task.
38
+ */
39
+ attempt<TMessage_5 extends Message, TArgs_2 extends unknown[], TReturn_2>(task: (...args: TArgs_2) => TReturn_2, ofError: (error: Error) => TMessage_5, ...args: TArgs_2): Cmd<TMessage_5>;
18
40
  /**
19
41
  * Provides functionalities to create commands from simple functions.
20
42
  */
@@ -26,21 +48,21 @@ declare const cmd: {
26
48
  * @param ofError Creates the message to dispatch when an error occurred.
27
49
  * @param args The parameters of the task.
28
50
  */
29
- either<TMessage_3 extends Message, TArgs extends unknown[], TReturn>(task: (...args: TArgs) => TReturn, ofSuccess: (result: TReturn) => TMessage_3, ofError: (error: Error) => TMessage_3, ...args: TArgs): Cmd<TMessage_3>;
51
+ either<TMessage_6 extends Message, TArgs_3 extends unknown[], TReturn_3>(task: (...args: TArgs_3) => TReturn_3, ofSuccess: (result: TReturn_3) => TMessage_6, ofError: (error: Error) => TMessage_6, ...args: TArgs_3): Cmd<TMessage_6>;
30
52
  /**
31
53
  * Creates a command out of a simple function and ignores the error case.
32
54
  * @param task The function to call.
33
55
  * @param ofSuccess Creates the message to dispatch after a successful call of the task.
34
56
  * @param args The parameters of the task.
35
57
  */
36
- perform<TMessage_4 extends Message, TArgs_1 extends unknown[], TReturn_1>(task: (...args: TArgs_1) => TReturn_1, ofSuccess: (result: TReturn_1) => TMessage_4, ...args: TArgs_1): Cmd<TMessage_4>;
58
+ perform<TMessage_7 extends Message, TArgs_4 extends unknown[], TReturn_4>(task: (...args: TArgs_4) => TReturn_4, ofSuccess: (result: TReturn_4) => TMessage_7, ...args: TArgs_4): Cmd<TMessage_7>;
37
59
  /**
38
60
  * Creates a command out of a simple function and ignores the success case.
39
61
  * @param task The function to call.
40
62
  * @param ofError Creates the message to dispatch when an error occurred.
41
63
  * @param args The parameters of the task.
42
64
  */
43
- attempt<TMessage_5 extends Message, TArgs_2 extends unknown[], TReturn_2>(task: (...args: TArgs_2) => TReturn_2, ofError: (error: Error) => TMessage_5, ...args: TArgs_2): Cmd<TMessage_5>;
65
+ attempt<TMessage_8 extends Message, TArgs_5 extends unknown[], TReturn_5>(task: (...args: TArgs_5) => TReturn_5, ofError: (error: Error) => TMessage_8, ...args: TArgs_5): Cmd<TMessage_8>;
44
66
  };
45
67
  /**
46
68
  * Provides functionalities to create commands from async functions.
@@ -53,21 +75,21 @@ declare const cmd: {
53
75
  * @param ofError Creates the message to dispatch when the promise is rejected.
54
76
  * @param args The parameters of the task.
55
77
  */
56
- either<TMessage_6 extends Message, TArgs_3 extends unknown[], TReturn_3>(task: (...args: TArgs_3) => Promise<TReturn_3>, ofSuccess: (result: TReturn_3) => TMessage_6, ofError: (error: Error) => TMessage_6, ...args: TArgs_3): Cmd<TMessage_6>;
78
+ either<TMessage_9 extends Message, TArgs_6 extends unknown[], TReturn_6>(task: (...args: TArgs_6) => Promise<TReturn_6>, ofSuccess: (result: TReturn_6) => TMessage_9, ofError: (error: Error) => TMessage_9, ...args: TArgs_6): Cmd<TMessage_9>;
57
79
  /**
58
80
  * Creates a command out of an async function and ignores the error case.
59
81
  * @param task The async function to call.
60
82
  * @param ofSuccess Creates the message to dispatch when the promise is resolved.
61
83
  * @param args The parameters of the task.
62
84
  */
63
- perform<TMessage_7 extends Message, TArgs_4 extends unknown[], TReturn_4>(task: (...args: TArgs_4) => Promise<TReturn_4>, ofSuccess: (result: TReturn_4) => TMessage_7, ...args: TArgs_4): Cmd<TMessage_7>;
85
+ perform<TMessage_10 extends Message, TArgs_7 extends unknown[], TReturn_7>(task: (...args: TArgs_7) => Promise<TReturn_7>, ofSuccess: (result: TReturn_7) => TMessage_10, ...args: TArgs_7): Cmd<TMessage_10>;
64
86
  /**
65
87
  * Creates a command out of an async function and ignores the success case.
66
88
  * @param task The async function to call.
67
89
  * @param ofError Creates the message to dispatch when the promise is rejected.
68
90
  * @param args The parameters of the task.
69
91
  */
70
- attempt<TMessage_8 extends Message, TArgs_5 extends unknown[], TReturn_5>(task: (...args: TArgs_5) => Promise<TReturn_5>, ofError: (error: Error) => TMessage_8, ...args: TArgs_5): Cmd<TMessage_8>;
92
+ attempt<TMessage_11 extends Message, TArgs_8 extends unknown[], TReturn_8>(task: (...args: TArgs_8) => Promise<TReturn_8>, ofError: (error: Error) => TMessage_11, ...args: TArgs_8): Cmd<TMessage_11>;
71
93
  };
72
94
  };
73
95
  export { cmd, };
package/dist/cmd.js CHANGED
@@ -31,6 +31,81 @@ var cmd = {
31
31
  ofSub: function ofSub(sub) {
32
32
  return [sub];
33
33
  },
34
+ /**
35
+ * Creates a command out of a function and maps the result. This can also be an async function.
36
+ * @param task The function to call.
37
+ * @param ofSuccess Creates the message to dispatch when the function runs successfully or, for an async function, the promise is resolved.
38
+ * @param ofError Creates the message to dispatch when the function throws an error or, for an async function, the promise is rejected.
39
+ * @param args The parameters of the task.
40
+ */
41
+ either: function either(task, ofSuccess, ofError) {
42
+ for (var _len2 = arguments.length, args = new Array(_len2 > 3 ? _len2 - 3 : 0), _key2 = 3; _key2 < _len2; _key2++) {
43
+ args[_key2 - 3] = arguments[_key2];
44
+ }
45
+ var bind = function bind(dispatch) {
46
+ try {
47
+ var taskResult = task.apply(void 0, args);
48
+ Promise.resolve(taskResult).then(function (result) {
49
+ return dispatch(ofSuccess(result));
50
+ })["catch"](function (ex) {
51
+ return dispatch(ofError(ex));
52
+ });
53
+ } catch (ex) {
54
+ dispatch(ofError(ex));
55
+ }
56
+ };
57
+ return [bind];
58
+ },
59
+ /**
60
+ * Creates a command out of a function and ignores the error case. This can also be an async function.
61
+ * @param task The async function to call.
62
+ * @param ofSuccess Creates the message to dispatch when the function runs successfully or, for an async function, the promise is resolved.
63
+ * @param args The parameters of the task.
64
+ */
65
+ perform: function perform(task, ofSuccess) {
66
+ for (var _len3 = arguments.length, args = new Array(_len3 > 2 ? _len3 - 2 : 0), _key3 = 2; _key3 < _len3; _key3++) {
67
+ args[_key3 - 2] = arguments[_key3];
68
+ }
69
+ var defaultFallbackHandler = function defaultFallbackHandler() {
70
+ // blank
71
+ };
72
+ var bind = function bind(dispatch) {
73
+ var fallback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : defaultFallbackHandler;
74
+ try {
75
+ var taskResult = task.apply(void 0, args);
76
+ Promise.resolve(taskResult).then(function (result) {
77
+ return dispatch(ofSuccess(result));
78
+ })["catch"](fallback);
79
+ } catch (ex) {
80
+ fallback(ex);
81
+ }
82
+ };
83
+ return [bind];
84
+ },
85
+ /**
86
+ * Creates a command out of a function and ignores the success case. This can also be an async function.
87
+ * @param task The function to call.
88
+ * @param ofError Creates the message to dispatch when the function runs successfully or, for an async function, the promise is rejected.
89
+ * @param args The parameters of the task.
90
+ */
91
+ attempt: function attempt(task, ofError) {
92
+ for (var _len4 = arguments.length, args = new Array(_len4 > 2 ? _len4 - 2 : 0), _key4 = 2; _key4 < _len4; _key4++) {
93
+ args[_key4 - 2] = arguments[_key4];
94
+ }
95
+ var bind = function bind(dispatch, fallback) {
96
+ try {
97
+ var taskResult = task.apply(void 0, args);
98
+ Promise.resolve(taskResult).then(function () {
99
+ return fallback === null || fallback === void 0 ? void 0 : fallback();
100
+ })["catch"](function (ex) {
101
+ return dispatch(ofError(ex));
102
+ });
103
+ } catch (ex) {
104
+ dispatch(ofError(ex));
105
+ }
106
+ };
107
+ return [bind];
108
+ },
34
109
  /**
35
110
  * Provides functionalities to create commands from simple functions.
36
111
  */
@@ -43,8 +118,8 @@ var cmd = {
43
118
  * @param args The parameters of the task.
44
119
  */
45
120
  either: function either(task, ofSuccess, ofError) {
46
- for (var _len2 = arguments.length, args = new Array(_len2 > 3 ? _len2 - 3 : 0), _key2 = 3; _key2 < _len2; _key2++) {
47
- args[_key2 - 3] = arguments[_key2];
121
+ for (var _len5 = arguments.length, args = new Array(_len5 > 3 ? _len5 - 3 : 0), _key5 = 3; _key5 < _len5; _key5++) {
122
+ args[_key5 - 3] = arguments[_key5];
48
123
  }
49
124
  var bind = function bind(dispatch) {
50
125
  try {
@@ -63,8 +138,8 @@ var cmd = {
63
138
  * @param args The parameters of the task.
64
139
  */
65
140
  perform: function perform(task, ofSuccess) {
66
- for (var _len3 = arguments.length, args = new Array(_len3 > 2 ? _len3 - 2 : 0), _key3 = 2; _key3 < _len3; _key3++) {
67
- args[_key3 - 2] = arguments[_key3];
141
+ for (var _len6 = arguments.length, args = new Array(_len6 > 2 ? _len6 - 2 : 0), _key6 = 2; _key6 < _len6; _key6++) {
142
+ args[_key6 - 2] = arguments[_key6];
68
143
  }
69
144
  var bind = function bind(dispatch, fallback) {
70
145
  try {
@@ -85,8 +160,8 @@ var cmd = {
85
160
  * @param args The parameters of the task.
86
161
  */
87
162
  attempt: function attempt(task, ofError) {
88
- for (var _len4 = arguments.length, args = new Array(_len4 > 2 ? _len4 - 2 : 0), _key4 = 2; _key4 < _len4; _key4++) {
89
- args[_key4 - 2] = arguments[_key4];
163
+ for (var _len7 = arguments.length, args = new Array(_len7 > 2 ? _len7 - 2 : 0), _key7 = 2; _key7 < _len7; _key7++) {
164
+ args[_key7 - 2] = arguments[_key7];
90
165
  }
91
166
  var bind = function bind(dispatch, fallback) {
92
167
  try {
@@ -113,8 +188,8 @@ var cmd = {
113
188
  * @param args The parameters of the task.
114
189
  */
115
190
  either: function either(task, ofSuccess, ofError) {
116
- for (var _len5 = arguments.length, args = new Array(_len5 > 3 ? _len5 - 3 : 0), _key5 = 3; _key5 < _len5; _key5++) {
117
- args[_key5 - 3] = arguments[_key5];
191
+ for (var _len8 = arguments.length, args = new Array(_len8 > 3 ? _len8 - 3 : 0), _key8 = 3; _key8 < _len8; _key8++) {
192
+ args[_key8 - 3] = arguments[_key8];
118
193
  }
119
194
  var bind = function bind(dispatch) {
120
195
  task.apply(void 0, args).then(function (result) {
@@ -132,8 +207,8 @@ var cmd = {
132
207
  * @param args The parameters of the task.
133
208
  */
134
209
  perform: function perform(task, ofSuccess) {
135
- for (var _len6 = arguments.length, args = new Array(_len6 > 2 ? _len6 - 2 : 0), _key6 = 2; _key6 < _len6; _key6++) {
136
- args[_key6 - 2] = arguments[_key6];
210
+ for (var _len9 = arguments.length, args = new Array(_len9 > 2 ? _len9 - 2 : 0), _key9 = 2; _key9 < _len9; _key9++) {
211
+ args[_key9 - 2] = arguments[_key9];
137
212
  }
138
213
  var defaultFallbackHandler = function defaultFallbackHandler() {
139
214
  // blank
@@ -153,8 +228,8 @@ var cmd = {
153
228
  * @param args The parameters of the task.
154
229
  */
155
230
  attempt: function attempt(task, ofError) {
156
- for (var _len7 = arguments.length, args = new Array(_len7 > 2 ? _len7 - 2 : 0), _key7 = 2; _key7 < _len7; _key7++) {
157
- args[_key7 - 2] = arguments[_key7];
231
+ for (var _len10 = arguments.length, args = new Array(_len10 > 2 ? _len10 - 2 : 0), _key10 = 2; _key10 < _len10; _key10++) {
232
+ args[_key10 - 2] = arguments[_key10];
158
233
  }
159
234
  var bind = function bind(dispatch, fallback) {
160
235
  task.apply(void 0, args).then(function () {
@@ -170,4 +245,4 @@ var cmd = {
170
245
  }
171
246
  };
172
247
  exports.cmd = cmd;
173
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjbWQiLCJvZk1zZyIsIm1zZyIsImRpc3BhdGNoIiwiYmF0Y2giLCJfbGVuIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwiY29tbWFuZHMiLCJBcnJheSIsIl9rZXkiLCJmaWx0ZXIiLCJCb29sZWFuIiwiZmxhdCIsIm9mU3ViIiwic3ViIiwib2ZGdW5jIiwiZWl0aGVyIiwidGFzayIsIm9mU3VjY2VzcyIsIm9mRXJyb3IiLCJfbGVuMiIsImFyZ3MiLCJfa2V5MiIsImJpbmQiLCJyZXN1bHQiLCJhcHBseSIsImV4IiwicGVyZm9ybSIsIl9sZW4zIiwiX2tleTMiLCJmYWxsYmFjayIsImF0dGVtcHQiLCJfbGVuNCIsIl9rZXk0Iiwib2ZQcm9taXNlIiwiX2xlbjUiLCJfa2V5NSIsInRoZW4iLCJfbGVuNiIsIl9rZXk2IiwiZGVmYXVsdEZhbGxiYWNrSGFuZGxlciIsInVuZGVmaW5lZCIsIl9sZW43IiwiX2tleTciLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vc3JjL2NtZC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDbWQsIERpc3BhdGNoLCBGYWxsYmFja0hhbmRsZXIsIE1lc3NhZ2UsIFN1YiB9IGZyb20gXCIuL1R5cGVzXCI7XG5cbmNvbnN0IGNtZCA9IHtcbiAgICAvKipcbiAgICAgKiBDcmVhdGVzIGEgY29tbWFuZCBvdXQgb2YgYSBzcGVjaWZpYyBtZXNzYWdlLlxuICAgICAqIEBwYXJhbSB7VE1lc3NhZ2V9IG1zZyBUaGUgc3BlY2lmaWMgbWVzc2FnZS5cbiAgICAgKi9cbiAgICBvZk1zZzxUTWVzc2FnZSBleHRlbmRzIE1lc3NhZ2U+IChtc2c6IFRNZXNzYWdlKTogQ21kPFRNZXNzYWdlPiB7XG4gICAgICAgIHJldHVybiBbZGlzcGF0Y2ggPT4gZGlzcGF0Y2gobXNnKV07XG4gICAgfSxcbiAgICAvKipcbiAgICAgKiBBZ2dyZWdhdGVzIG11bHRpcGxlIGNvbW1hbmRzLlxuICAgICAqIEBwYXJhbSB7Q21kPFRNZXNzYWdlPiBbXX0gY29tbWFuZHMgQXJyYXkgb2YgY29tbWFuZHMuXG4gICAgICovXG4gICAgYmF0Y2g8VE1lc3NhZ2UgZXh0ZW5kcyBNZXNzYWdlPiAoLi4uY29tbWFuZHM6IChDbWQ8VE1lc3NhZ2U+IHwgdW5kZWZpbmVkIHwgbnVsbCkgW10pOiBDbWQ8VE1lc3NhZ2U+IHtcbiAgICAgICAgcmV0dXJuIChjb21tYW5kcy5maWx0ZXIoQm9vbGVhbikgYXMgQ21kPFRNZXNzYWdlPiBbXSkuZmxhdCgpO1xuICAgIH0sXG4gICAgLyoqXG4gICAgICogQ29tbWFuZCB0byBjYWxsIHRoZSBzdWJzY3JpYmVyLlxuICAgICAqIEBwYXJhbSB7U3ViPFRNZXNzYWdlPn0gc3ViIFRoZSBzdWJzY3JpYmVyIGZ1bmN0aW9uLlxuICAgICAqL1xuICAgIG9mU3ViPFRNZXNzYWdlIGV4dGVuZHMgTWVzc2FnZT4gKHN1YjogU3ViPFRNZXNzYWdlPik6IENtZDxUTWVzc2FnZT4ge1xuICAgICAgICByZXR1cm4gW3N1Yl07XG4gICAgfSxcbiAgICAvKipcbiAgICAgKiBQcm92aWRlcyBmdW5jdGlvbmFsaXRpZXMgdG8gY3JlYXRlIGNvbW1hbmRzIGZyb20gc2ltcGxlIGZ1bmN0aW9ucy5cbiAgICAgKi9cbiAgICBvZkZ1bmM6IHtcbiAgICAgICAgLyoqXG4gICAgICAgICogQ3JlYXRlcyBhIGNvbW1hbmQgb3V0IG9mIGEgc2ltcGxlIGZ1bmN0aW9uIGFuZCBtYXBzIHRoZSByZXN1bHQuXG4gICAgICAgICogQHBhcmFtIHRhc2sgVGhlIGZ1bmN0aW9uIHRvIGNhbGwuXG4gICAgICAgICogQHBhcmFtIG9mU3VjY2VzcyBDcmVhdGVzIHRoZSBtZXNzYWdlIHRvIGRpc3BhdGNoIGFmdGVyIGEgc3VjY2Vzc2Z1bCBjYWxsIG9mIHRoZSB0YXNrLlxuICAgICAgICAqIEBwYXJhbSBvZkVycm9yIENyZWF0ZXMgdGhlIG1lc3NhZ2UgdG8gZGlzcGF0Y2ggd2hlbiBhbiBlcnJvciBvY2N1cnJlZC5cbiAgICAgICAgKiBAcGFyYW0gYXJncyBUaGUgcGFyYW1ldGVycyBvZiB0aGUgdGFzay5cbiAgICAgICAgKi9cbiAgICAgICAgZWl0aGVyPFRNZXNzYWdlIGV4dGVuZHMgTWVzc2FnZSwgVEFyZ3MgZXh0ZW5kcyB1bmtub3duIFtdLCBUUmV0dXJuPih0YXNrOiAoLi4uYXJnczogVEFyZ3MpID0+IFRSZXR1cm4sIG9mU3VjY2VzczogKHJlc3VsdDogVFJldHVybikgPT4gVE1lc3NhZ2UsIG9mRXJyb3I6IChlcnJvcjogRXJyb3IpID0+IFRNZXNzYWdlLCAuLi5hcmdzOiBUQXJncyk6IENtZDxUTWVzc2FnZT4ge1xuICAgICAgICAgICAgY29uc3QgYmluZCA9IChkaXNwYXRjaDogRGlzcGF0Y2g8VE1lc3NhZ2U+KTogdm9pZCA9PiB7XG4gICAgICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0gdGFzayguLi5hcmdzKTtcblxuICAgICAgICAgICAgICAgICAgICBkaXNwYXRjaChvZlN1Y2Nlc3MocmVzdWx0KSk7XG4gICAgICAgICAgICAgICAgfSBjYXRjaCAoZXg6IHVua25vd24pIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGF0Y2gob2ZFcnJvcihleCBhcyBFcnJvcikpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIHJldHVybiBbYmluZF07XG4gICAgICAgIH0sXG4gICAgICAgIC8qKlxuICAgICAgICAqIENyZWF0ZXMgYSBjb21tYW5kIG91dCBvZiBhIHNpbXBsZSBmdW5jdGlvbiBhbmQgaWdub3JlcyB0aGUgZXJyb3IgY2FzZS5cbiAgICAgICAgKiBAcGFyYW0gdGFzayBUaGUgZnVuY3Rpb24gdG8gY2FsbC5cbiAgICAgICAgKiBAcGFyYW0gb2ZTdWNjZXNzIENyZWF0ZXMgdGhlIG1lc3NhZ2UgdG8gZGlzcGF0Y2ggYWZ0ZXIgYSBzdWNjZXNzZnVsIGNhbGwgb2YgdGhlIHRhc2suXG4gICAgICAgICogQHBhcmFtIGFyZ3MgVGhlIHBhcmFtZXRlcnMgb2YgdGhlIHRhc2suXG4gICAgICAgICovXG4gICAgICAgIHBlcmZvcm08VE1lc3NhZ2UgZXh0ZW5kcyBNZXNzYWdlLCBUQXJncyBleHRlbmRzIHVua25vd24gW10sIFRSZXR1cm4+KHRhc2s6ICguLi5hcmdzOiBUQXJncykgPT4gVFJldHVybiwgb2ZTdWNjZXNzOiAocmVzdWx0OiBUUmV0dXJuKSA9PiBUTWVzc2FnZSwgLi4uYXJnczogVEFyZ3MpOiBDbWQ8VE1lc3NhZ2U+IHtcbiAgICAgICAgICAgIGNvbnN0IGJpbmQgPSAoZGlzcGF0Y2g6IERpc3BhdGNoPFRNZXNzYWdlPiwgZmFsbGJhY2s/OiBGYWxsYmFja0hhbmRsZXIpOiB2b2lkID0+IHtcbiAgICAgICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCByZXN1bHQgPSB0YXNrKC4uLmFyZ3MpO1xuXG4gICAgICAgICAgICAgICAgICAgIGRpc3BhdGNoKG9mU3VjY2VzcyhyZXN1bHQpKTtcbiAgICAgICAgICAgICAgICB9IGNhdGNoIChleDogdW5rbm93bikge1xuICAgICAgICAgICAgICAgICAgICBpZiAoZmFsbGJhY2spIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZhbGxiYWNrKGV4IGFzIEVycm9yKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIHJldHVybiBbYmluZF07XG4gICAgICAgIH0sXG4gICAgICAgIC8qKlxuICAgICAgICAqIENyZWF0ZXMgYSBjb21tYW5kIG91dCBvZiBhIHNpbXBsZSBmdW5jdGlvbiBhbmQgaWdub3JlcyB0aGUgc3VjY2VzcyBjYXNlLlxuICAgICAgICAqIEBwYXJhbSB0YXNrIFRoZSBmdW5jdGlvbiB0byBjYWxsLlxuICAgICAgICAqIEBwYXJhbSBvZkVycm9yIENyZWF0ZXMgdGhlIG1lc3NhZ2UgdG8gZGlzcGF0Y2ggd2hlbiBhbiBlcnJvciBvY2N1cnJlZC5cbiAgICAgICAgKiBAcGFyYW0gYXJncyBUaGUgcGFyYW1ldGVycyBvZiB0aGUgdGFzay5cbiAgICAgICAgKi9cbiAgICAgICAgYXR0ZW1wdDxUTWVzc2FnZSBleHRlbmRzIE1lc3NhZ2UsIFRBcmdzIGV4dGVuZHMgdW5rbm93biBbXSwgVFJldHVybj4odGFzazogKC4uLmFyZ3M6IFRBcmdzKSA9PiBUUmV0dXJuLCBvZkVycm9yOiAoZXJyb3I6IEVycm9yKSA9PiBUTWVzc2FnZSwgLi4uYXJnczogVEFyZ3MpOiBDbWQ8VE1lc3NhZ2U+IHtcbiAgICAgICAgICAgIGNvbnN0IGJpbmQgPSAoZGlzcGF0Y2g6IERpc3BhdGNoPFRNZXNzYWdlPiwgZmFsbGJhY2s/OiBGYWxsYmFja0hhbmRsZXIpOiB2b2lkID0+IHtcbiAgICAgICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgICAgICB0YXNrKC4uLmFyZ3MpO1xuXG4gICAgICAgICAgICAgICAgICAgIGlmIChmYWxsYmFjaykge1xuICAgICAgICAgICAgICAgICAgICAgICAgZmFsbGJhY2soKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGV4OiB1bmtub3duKSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BhdGNoKG9mRXJyb3IoZXggYXMgRXJyb3IpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICByZXR1cm4gW2JpbmRdO1xuICAgICAgICB9LFxuICAgIH0sXG4gICAgLyoqXG4gICAgICogUHJvdmlkZXMgZnVuY3Rpb25hbGl0aWVzIHRvIGNyZWF0ZSBjb21tYW5kcyBmcm9tIGFzeW5jIGZ1bmN0aW9ucy5cbiAgICAgKi9cbiAgICBvZlByb21pc2U6IHtcbiAgICAgICAgLyoqXG4gICAgICAgICogQ3JlYXRlcyBhIGNvbW1hbmQgb3V0IG9mIGFuIGFzeW5jIGZ1bmN0aW9uIGFuZCBtYXBzIHRoZSByZXN1bHQuXG4gICAgICAgICogQHBhcmFtIHRhc2sgVGhlIGFzeW5jIGZ1bmN0aW9uIHRvIGNhbGwuXG4gICAgICAgICogQHBhcmFtIG9mU3VjY2VzcyBDcmVhdGVzIHRoZSBtZXNzYWdlIHRvIGRpc3BhdGNoIHdoZW4gdGhlIHByb21pc2UgaXMgcmVzb2x2ZWQuXG4gICAgICAgICogQHBhcmFtIG9mRXJyb3IgQ3JlYXRlcyB0aGUgbWVzc2FnZSB0byBkaXNwYXRjaCB3aGVuIHRoZSBwcm9taXNlIGlzIHJlamVjdGVkLlxuICAgICAgICAqIEBwYXJhbSBhcmdzIFRoZSBwYXJhbWV0ZXJzIG9mIHRoZSB0YXNrLlxuICAgICAgICAqL1xuICAgICAgICBlaXRoZXI8VE1lc3NhZ2UgZXh0ZW5kcyBNZXNzYWdlLCBUQXJncyBleHRlbmRzIHVua25vd24gW10sIFRSZXR1cm4+KHRhc2s6ICguLi5hcmdzOiBUQXJncykgPT4gUHJvbWlzZTxUUmV0dXJuPiwgb2ZTdWNjZXNzOiAocmVzdWx0OiBUUmV0dXJuKSA9PiBUTWVzc2FnZSwgb2ZFcnJvcjogKGVycm9yOiBFcnJvcikgPT4gVE1lc3NhZ2UsIC4uLmFyZ3M6IFRBcmdzKTogQ21kPFRNZXNzYWdlPiB7XG4gICAgICAgICAgICBjb25zdCBiaW5kID0gKGRpc3BhdGNoOiBEaXNwYXRjaDxUTWVzc2FnZT4pOiB2b2lkID0+IHtcbiAgICAgICAgICAgICAgICB0YXNrKC4uLmFyZ3MpLnRoZW4ocmVzdWx0ID0+IGRpc3BhdGNoKG9mU3VjY2VzcyhyZXN1bHQpKSlcbiAgICAgICAgICAgICAgICAgICAgLmNhdGNoKChleDogRXJyb3IpID0+IGRpc3BhdGNoKG9mRXJyb3IoZXgpKSk7XG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICByZXR1cm4gW2JpbmRdO1xuICAgICAgICB9LFxuICAgICAgICAvKipcbiAgICAgICAgKiBDcmVhdGVzIGEgY29tbWFuZCBvdXQgb2YgYW4gYXN5bmMgZnVuY3Rpb24gYW5kIGlnbm9yZXMgdGhlIGVycm9yIGNhc2UuXG4gICAgICAgICogQHBhcmFtIHRhc2sgVGhlIGFzeW5jIGZ1bmN0aW9uIHRvIGNhbGwuXG4gICAgICAgICogQHBhcmFtIG9mU3VjY2VzcyBDcmVhdGVzIHRoZSBtZXNzYWdlIHRvIGRpc3BhdGNoIHdoZW4gdGhlIHByb21pc2UgaXMgcmVzb2x2ZWQuXG4gICAgICAgICogQHBhcmFtIGFyZ3MgVGhlIHBhcmFtZXRlcnMgb2YgdGhlIHRhc2suXG4gICAgICAgICovXG4gICAgICAgIHBlcmZvcm08VE1lc3NhZ2UgZXh0ZW5kcyBNZXNzYWdlLCBUQXJncyBleHRlbmRzIHVua25vd24gW10sIFRSZXR1cm4+KHRhc2s6ICguLi5hcmdzOiBUQXJncykgPT4gUHJvbWlzZTxUUmV0dXJuPiwgb2ZTdWNjZXNzOiAocmVzdWx0OiBUUmV0dXJuKSA9PiBUTWVzc2FnZSwgLi4uYXJnczogVEFyZ3MpOiBDbWQ8VE1lc3NhZ2U+IHtcbiAgICAgICAgICAgIGNvbnN0IGRlZmF1bHRGYWxsYmFja0hhbmRsZXIgPSAoKTogdm9pZCA9PiB7XG4gICAgICAgICAgICAgICAgLy8gYmxhbmtcbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIGNvbnN0IGJpbmQgPSAoZGlzcGF0Y2g6IERpc3BhdGNoPFRNZXNzYWdlPiwgZmFsbGJhY2s6IEZhbGxiYWNrSGFuZGxlciA9IGRlZmF1bHRGYWxsYmFja0hhbmRsZXIpOiB2b2lkID0+IHtcbiAgICAgICAgICAgICAgICB0YXNrKC4uLmFyZ3MpLnRoZW4ocmVzdWx0ID0+IGRpc3BhdGNoKG9mU3VjY2VzcyhyZXN1bHQpKSlcbiAgICAgICAgICAgICAgICAgICAgLmNhdGNoKGZhbGxiYWNrKTtcbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIHJldHVybiBbYmluZF07XG4gICAgICAgIH0sXG4gICAgICAgIC8qKlxuICAgICAgICAqIENyZWF0ZXMgYSBjb21tYW5kIG91dCBvZiBhbiBhc3luYyBmdW5jdGlvbiBhbmQgaWdub3JlcyB0aGUgc3VjY2VzcyBjYXNlLlxuICAgICAgICAqIEBwYXJhbSB0YXNrIFRoZSBhc3luYyBmdW5jdGlvbiB0byBjYWxsLlxuICAgICAgICAqIEBwYXJhbSBvZkVycm9yIENyZWF0ZXMgdGhlIG1lc3NhZ2UgdG8gZGlzcGF0Y2ggd2hlbiB0aGUgcHJvbWlzZSBpcyByZWplY3RlZC5cbiAgICAgICAgKiBAcGFyYW0gYXJncyBUaGUgcGFyYW1ldGVycyBvZiB0aGUgdGFzay5cbiAgICAgICAgKi9cbiAgICAgICAgYXR0ZW1wdDxUTWVzc2FnZSBleHRlbmRzIE1lc3NhZ2UsIFRBcmdzIGV4dGVuZHMgdW5rbm93biBbXSwgVFJldHVybj4odGFzazogKC4uLmFyZ3M6IFRBcmdzKSA9PiBQcm9taXNlPFRSZXR1cm4+LCBvZkVycm9yOiAoZXJyb3I6IEVycm9yKSA9PiBUTWVzc2FnZSwgLi4uYXJnczogVEFyZ3MpOiBDbWQ8VE1lc3NhZ2U+IHtcbiAgICAgICAgICAgIGNvbnN0IGJpbmQgPSAoZGlzcGF0Y2g6IERpc3BhdGNoPFRNZXNzYWdlPiwgZmFsbGJhY2s/OiBGYWxsYmFja0hhbmRsZXIpOiB2b2lkID0+IHtcbiAgICAgICAgICAgICAgICB0YXNrKC4uLmFyZ3MpLnRoZW4oKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAoZmFsbGJhY2spIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZhbGxiYWNrKCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgICAuY2F0Y2goKGV4OiBFcnJvcikgPT4gZGlzcGF0Y2gob2ZFcnJvcihleCkpKTtcbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIHJldHVybiBbYmluZF07XG4gICAgICAgIH0sXG4gICAgfSxcbn07XG5cbmV4cG9ydCB7XG4gICAgY21kLFxufTsiXSwibWFwcGluZ3MiOiI7Ozs7OztBQUVBLElBQU1BLEdBQUcsR0FBRztFQUNSO0FBQ0o7QUFDQTtBQUNBO0VBQ0lDLEtBQUssV0FBQUEsTUFBNEJDLEdBQWEsRUFBaUI7SUFDM0QsT0FBTyxDQUFDLFVBQUFDLFFBQVE7TUFBQSxPQUFJQSxRQUFRLENBQUNELEdBQUcsQ0FB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
248
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjbWQiLCJvZk1zZyIsIm1zZyIsImRpc3BhdGNoIiwiYmF0Y2giLCJfbGVuIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwiY29tbWFuZHMiLCJBcnJheSIsIl9rZXkiLCJmaWx0ZXIiLCJCb29sZWFuIiwiZmxhdCIsIm9mU3ViIiwic3ViIiwiZWl0aGVyIiwidGFzayIsIm9mU3VjY2VzcyIsIm9mRXJyb3IiLCJfbGVuMiIsImFyZ3MiLCJfa2V5MiIsImJpbmQiLCJ0YXNrUmVzdWx0IiwiYXBwbHkiLCJQcm9taXNlIiwicmVzb2x2ZSIsInRoZW4iLCJyZXN1bHQiLCJleCIsInBlcmZvcm0iLCJfbGVuMyIsIl9rZXkzIiwiZGVmYXVsdEZhbGxiYWNrSGFuZGxlciIsImZhbGxiYWNrIiwidW5kZWZpbmVkIiwiYXR0ZW1wdCIsIl9sZW40IiwiX2tleTQiLCJvZkZ1bmMiLCJfbGVuNSIsIl9rZXk1IiwiX2xlbjYiLCJfa2V5NiIsIl9sZW43IiwiX2tleTciLCJvZlByb21pc2UiLCJfbGVuOCIsIl9rZXk4IiwiX2xlbjkiLCJfa2V5OSIsIl9sZW4xMCIsIl9rZXkxMCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi9zcmMvY21kLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENtZCwgRGlzcGF0Y2gsIEZhbGxiYWNrSGFuZGxlciwgTWVzc2FnZSwgU3ViIH0gZnJvbSBcIi4vVHlwZXNcIjtcblxuY29uc3QgY21kID0ge1xuICAgIC8qKlxuICAgICAqIENyZWF0ZXMgYSBjb21tYW5kIG91dCBvZiBhIHNwZWNpZmljIG1lc3NhZ2UuXG4gICAgICogQHBhcmFtIHtUTWVzc2FnZX0gbXNnIFRoZSBzcGVjaWZpYyBtZXNzYWdlLlxuICAgICAqL1xuICAgIG9mTXNnPFRNZXNzYWdlIGV4dGVuZHMgTWVzc2FnZT4gKG1zZzogVE1lc3NhZ2UpOiBDbWQ8VE1lc3NhZ2U+IHtcbiAgICAgICAgcmV0dXJuIFtkaXNwYXRjaCA9PiBkaXNwYXRjaChtc2cpXTtcbiAgICB9LFxuICAgIC8qKlxuICAgICAqIEFnZ3JlZ2F0ZXMgbXVsdGlwbGUgY29tbWFuZHMuXG4gICAgICogQHBhcmFtIHtDbWQ8VE1lc3NhZ2U+IFtdfSBjb21tYW5kcyBBcnJheSBvZiBjb21tYW5kcy5cbiAgICAgKi9cbiAgICBiYXRjaDxUTWVzc2FnZSBleHRlbmRzIE1lc3NhZ2U+ICguLi5jb21tYW5kczogKENtZDxUTWVzc2FnZT4gfCB1bmRlZmluZWQgfCBudWxsKSBbXSk6IENtZDxUTWVzc2FnZT4ge1xuICAgICAgICByZXR1cm4gKGNvbW1hbmRzLmZpbHRlcihCb29sZWFuKSBhcyBDbWQ8VE1lc3NhZ2U+IFtdKS5mbGF0KCk7XG4gICAgfSxcbiAgICAvKipcbiAgICAgKiBDb21tYW5kIHRvIGNhbGwgdGhlIHN1YnNjcmliZXIuXG4gICAgICogQHBhcmFtIHtTdWI8VE1lc3NhZ2U+fSBzdWIgVGhlIHN1YnNjcmliZXIgZnVuY3Rpb24uXG4gICAgICovXG4gICAgb2ZTdWI8VE1lc3NhZ2UgZXh0ZW5kcyBNZXNzYWdlPiAoc3ViOiBTdWI8VE1lc3NhZ2U+KTogQ21kPFRNZXNzYWdlPiB7XG4gICAgICAgIHJldHVybiBbc3ViXTtcbiAgICB9LFxuXG4gICAgLyoqXG4gICAgKiBDcmVhdGVzIGEgY29tbWFuZCBvdXQgb2YgYSBmdW5jdGlvbiBhbmQgbWFwcyB0aGUgcmVzdWx0LiBUaGlzIGNhbiBhbHNvIGJlIGFuIGFzeW5jIGZ1bmN0aW9uLlxuICAgICogQHBhcmFtIHRhc2sgVGhlIGZ1bmN0aW9uIHRvIGNhbGwuXG4gICAgKiBAcGFyYW0gb2ZTdWNjZXNzIENyZWF0ZXMgdGhlIG1lc3NhZ2UgdG8gZGlzcGF0Y2ggd2hlbiB0aGUgZnVuY3Rpb24gcnVucyBzdWNjZXNzZnVsbHkgb3IsIGZvciBhbiBhc3luYyBmdW5jdGlvbiwgdGhlIHByb21pc2UgaXMgcmVzb2x2ZWQuXG4gICAgKiBAcGFyYW0gb2ZFcnJvciBDcmVhdGVzIHRoZSBtZXNzYWdlIHRvIGRpc3BhdGNoIHdoZW4gdGhlIGZ1bmN0aW9uIHRocm93cyBhbiBlcnJvciBvciwgZm9yIGFuIGFzeW5jIGZ1bmN0aW9uLCB0aGUgcHJvbWlzZSBpcyByZWplY3RlZC5cbiAgICAqIEBwYXJhbSBhcmdzIFRoZSBwYXJhbWV0ZXJzIG9mIHRoZSB0YXNrLlxuICAgICovXG4gICAgZWl0aGVyPFRNZXNzYWdlIGV4dGVuZHMgTWVzc2FnZSwgVEFyZ3MgZXh0ZW5kcyB1bmtub3duIFtdLCBUUmV0dXJuPih0YXNrOiAoLi4uYXJnczogVEFyZ3MpID0+IFRSZXR1cm4sIG9mU3VjY2VzczogKHJlc3VsdDogQXdhaXRlZDxUUmV0dXJuPikgPT4gVE1lc3NhZ2UsIG9mRXJyb3I6IChlcnJvcjogRXJyb3IpID0+IFRNZXNzYWdlLCAuLi5hcmdzOiBUQXJncyk6IENtZDxUTWVzc2FnZT4ge1xuICAgICAgICBjb25zdCBiaW5kID0gKGRpc3BhdGNoOiBEaXNwYXRjaDxUTWVzc2FnZT4pOiB2b2lkID0+IHtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgY29uc3QgdGFza1Jlc3VsdCA9IHRhc2soLi4uYXJncyk7XG5cbiAgICAgICAgICAgICAgICBQcm9taXNlLnJlc29sdmUodGFza1Jlc3VsdClcbiAgICAgICAgICAgICAgICAgICAgLnRoZW4ocmVzdWx0ID0+IGRpc3BhdGNoKG9mU3VjY2VzcyhyZXN1bHQpKSlcbiAgICAgICAgICAgICAgICAgICAgLmNhdGNoKChleDogRXJyb3IpID0+IGRpc3BhdGNoKG9mRXJyb3IoZXgpKSk7XG4gICAgICAgICAgICB9IGNhdGNoIChleDogdW5rbm93bikge1xuICAgICAgICAgICAgICAgIGRpc3BhdGNoKG9mRXJyb3IoZXggYXMgRXJyb3IpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcblxuICAgICAgICByZXR1cm4gW2JpbmRdO1xuICAgIH0sXG4gICAgLyoqXG4gICAgKiBDcmVhdGVzIGEgY29tbWFuZCBvdXQgb2YgYSBmdW5jdGlvbiBhbmQgaWdub3JlcyB0aGUgZXJyb3IgY2FzZS4gVGhpcyBjYW4gYWxzbyBiZSBhbiBhc3luYyBmdW5jdGlvbi5cbiAgICAqIEBwYXJhbSB0YXNrIFRoZSBhc3luYyBmdW5jdGlvbiB0byBjYWxsLlxuICAgICogQHBhcmFtIG9mU3VjY2VzcyBDcmVhdGVzIHRoZSBtZXNzYWdlIHRvIGRpc3BhdGNoIHdoZW4gdGhlIGZ1bmN0aW9uIHJ1bnMgc3VjY2Vzc2Z1bGx5IG9yLCBmb3IgYW4gYXN5bmMgZnVuY3Rpb24sIHRoZSBwcm9taXNlIGlzIHJlc29sdmVkLlxuICAgICogQHBhcmFtIGFyZ3MgVGhlIHBhcmFtZXRlcnMgb2YgdGhlIHRhc2suXG4gICAgKi9cbiAgICBwZXJmb3JtPFRNZXNzYWdlIGV4dGVuZHMgTWVzc2FnZSwgVEFyZ3MgZXh0ZW5kcyB1bmtub3duIFtdLCBUUmV0dXJuPih0YXNrOiAoLi4uYXJnczogVEFyZ3MpID0+IFRSZXR1cm4sIG9mU3VjY2VzczogKHJlc3VsdDogQXdhaXRlZDxUUmV0dXJuPikgPT4gVE1lc3NhZ2UsIC4uLmFyZ3M6IFRBcmdzKTogQ21kPFRNZXNzYWdlPiB7XG4gICAgICAgIGNvbnN0IGRlZmF1bHRGYWxsYmFja0hhbmRsZXIgPSAoKTogdm9pZCA9PiB7XG4gICAgICAgICAgICAvLyBibGFua1xuICAgICAgICB9O1xuXG4gICAgICAgIGNvbnN0IGJpbmQgPSAoZGlzcGF0Y2g6IERpc3BhdGNoPFRNZXNzYWdlPiwgZmFsbGJhY2s6IEZhbGxiYWNrSGFuZGxlciA9IGRlZmF1bHRGYWxsYmFja0hhbmRsZXIpOiB2b2lkID0+IHtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgY29uc3QgdGFza1Jlc3VsdCA9IHRhc2soLi4uYXJncyk7XG5cbiAgICAgICAgICAgICAgICBQcm9taXNlLnJlc29sdmUodGFza1Jlc3VsdClcbiAgICAgICAgICAgICAgICAgICAgLnRoZW4ocmVzdWx0ID0+IGRpc3BhdGNoKG9mU3VjY2VzcyhyZXN1bHQpKSlcbiAgICAgICAgICAgICAgICAgICAgLmNhdGNoKGZhbGxiYWNrKTtcbiAgICAgICAgICAgIH0gY2F0Y2ggKGV4OiB1bmtub3duKSB7XG4gICAgICAgICAgICAgICAgZmFsbGJhY2soZXggYXMgRXJyb3IpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuXG4gICAgICAgIHJldHVybiBbYmluZF07XG4gICAgfSxcbiAgICAvKipcbiAgICAqIENyZWF0ZXMgYSBjb21tYW5kIG91dCBvZiBhIGZ1bmN0aW9uIGFuZCBpZ25vcmVzIHRoZSBzdWNjZXNzIGNhc2UuIFRoaXMgY2FuIGFsc28gYmUgYW4gYXN5bmMgZnVuY3Rpb24uXG4gICAgKiBAcGFyYW0gdGFzayBUaGUgZnVuY3Rpb24gdG8gY2FsbC5cbiAgICAqIEBwYXJhbSBvZkVycm9yIENyZWF0ZXMgdGhlIG1lc3NhZ2UgdG8gZGlzcGF0Y2ggd2hlbiB0aGUgZnVuY3Rpb24gcnVucyBzdWNjZXNzZnVsbHkgb3IsIGZvciBhbiBhc3luYyBmdW5jdGlvbiwgdGhlIHByb21pc2UgaXMgcmVqZWN0ZWQuXG4gICAgKiBAcGFyYW0gYXJncyBUaGUgcGFyYW1ldGVycyBvZiB0aGUgdGFzay5cbiAgICAqL1xuICAgIGF0dGVtcHQ8VE1lc3NhZ2UgZXh0ZW5kcyBNZXNzYWdlLCBUQXJncyBleHRlbmRzIHVua25vd24gW10sIFRSZXR1cm4+KHRhc2s6ICguLi5hcmdzOiBUQXJncykgPT4gVFJldHVybiwgb2ZFcnJvcjogKGVycm9yOiBFcnJvcikgPT4gVE1lc3NhZ2UsIC4uLmFyZ3M6IFRBcmdzKTogQ21kPFRNZXNzYWdlPiB7XG4gICAgICAgIGNvbnN0IGJpbmQgPSAoZGlzcGF0Y2g6IERpc3BhdGNoPFRNZXNzYWdlPiwgZmFsbGJhY2s/OiBGYWxsYmFja0hhbmRsZXIpOiB2b2lkID0+IHtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgY29uc3QgdGFza1Jlc3VsdCA9IHRhc2soLi4uYXJncyk7XG5cbiAgICAgICAgICAgICAgICBQcm9taXNlLnJlc29sdmUodGFza1Jlc3VsdClcbiAgICAgICAgICAgICAgICAgICAgLnRoZW4oKCkgPT4gZmFsbGJhY2s/LigpKVxuICAgICAgICAgICAgICAgICAgICAuY2F0Y2goKGV4OiBFcnJvcikgPT4gZGlzcGF0Y2gob2ZFcnJvcihleCkpKTtcbiAgICAgICAgICAgIH0gY2F0Y2ggKGV4OiB1bmtub3duKSB7XG4gICAgICAgICAgICAgICAgZGlzcGF0Y2gob2ZFcnJvcihleCBhcyBFcnJvcikpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuXG4gICAgICAgIHJldHVybiBbYmluZF07XG4gICAgfSxcblxuICAgIC8qKlxuICAgICAqIFByb3ZpZGVzIGZ1bmN0aW9uYWxpdGllcyB0byBjcmVhdGUgY29tbWFuZHMgZnJvbSBzaW1wbGUgZnVuY3Rpb25zLlxuICAgICAqL1xuICAgIG9mRnVuYzoge1xuICAgICAgICAvKipcbiAgICAgICAgKiBDcmVhdGVzIGEgY29tbWFuZCBvdXQgb2YgYSBzaW1wbGUgZnVuY3Rpb24gYW5kIG1hcHMgdGhlIHJlc3VsdC5cbiAgICAgICAgKiBAcGFyYW0gdGFzayBUaGUgZnVuY3Rpb24gdG8gY2FsbC5cbiAgICAgICAgKiBAcGFyYW0gb2ZTdWNjZXNzIENyZWF0ZXMgdGhlIG1lc3NhZ2UgdG8gZGlzcGF0Y2ggYWZ0ZXIgYSBzdWNjZXNzZnVsIGNhbGwgb2YgdGhlIHRhc2suXG4gICAgICAgICogQHBhcmFtIG9mRXJyb3IgQ3JlYXRlcyB0aGUgbWVzc2FnZSB0byBkaXNwYXRjaCB3aGVuIGFuIGVycm9yIG9jY3VycmVkLlxuICAgICAgICAqIEBwYXJhbSBhcmdzIFRoZSBwYXJhbWV0ZXJzIG9mIHRoZSB0YXNrLlxuICAgICAgICAqL1xuICAgICAgICBlaXRoZXI8VE1lc3NhZ2UgZXh0ZW5kcyBNZXNzYWdlLCBUQXJncyBleHRlbmRzIHVua25vd24gW10sIFRSZXR1cm4+KHRhc2s6ICguLi5hcmdzOiBUQXJncykgPT4gVFJldHVybiwgb2ZTdWNjZXNzOiAocmVzdWx0OiBUUmV0dXJuKSA9PiBUTWVzc2FnZSwgb2ZFcnJvcjogKGVycm9yOiBFcnJvcikgPT4gVE1lc3NhZ2UsIC4uLmFyZ3M6IFRBcmdzKTogQ21kPFRNZXNzYWdlPiB7XG4gICAgICAgICAgICBjb25zdCBiaW5kID0gKGRpc3BhdGNoOiBEaXNwYXRjaDxUTWVzc2FnZT4pOiB2b2lkID0+IHtcbiAgICAgICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCByZXN1bHQgPSB0YXNrKC4uLmFyZ3MpO1xuXG4gICAgICAgICAgICAgICAgICAgIGRpc3BhdGNoKG9mU3VjY2VzcyhyZXN1bHQpKTtcbiAgICAgICAgICAgICAgICB9IGNhdGNoIChleDogdW5rbm93bikge1xuICAgICAgICAgICAgICAgICAgICBkaXNwYXRjaChvZkVycm9yKGV4IGFzIEVycm9yKSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgcmV0dXJuIFtiaW5kXTtcbiAgICAgICAgfSxcbiAgICAgICAgLyoqXG4gICAgICAgICogQ3JlYXRlcyBhIGNvbW1hbmQgb3V0IG9mIGEgc2ltcGxlIGZ1bmN0aW9uIGFuZCBpZ25vcmVzIHRoZSBlcnJvciBjYXNlLlxuICAgICAgICAqIEBwYXJhbSB0YXNrIFRoZSBmdW5jdGlvbiB0byBjYWxsLlxuICAgICAgICAqIEBwYXJhbSBvZlN1Y2Nlc3MgQ3JlYXRlcyB0aGUgbWVzc2FnZSB0byBkaXNwYXRjaCBhZnRlciBhIHN1Y2Nlc3NmdWwgY2FsbCBvZiB0aGUgdGFzay5cbiAgICAgICAgKiBAcGFyYW0gYXJncyBUaGUgcGFyYW1ldGVycyBvZiB0aGUgdGFzay5cbiAgICAgICAgKi9cbiAgICAgICAgcGVyZm9ybTxUTWVzc2FnZSBleHRlbmRzIE1lc3NhZ2UsIFRBcmdzIGV4dGVuZHMgdW5rbm93biBbXSwgVFJldHVybj4odGFzazogKC4uLmFyZ3M6IFRBcmdzKSA9PiBUUmV0dXJuLCBvZlN1Y2Nlc3M6IChyZXN1bHQ6IFRSZXR1cm4pID0+IFRNZXNzYWdlLCAuLi5hcmdzOiBUQXJncyk6IENtZDxUTWVzc2FnZT4ge1xuICAgICAgICAgICAgY29uc3QgYmluZCA9IChkaXNwYXRjaDogRGlzcGF0Y2g8VE1lc3NhZ2U+LCBmYWxsYmFjaz86IEZhbGxiYWNrSGFuZGxlcik6IHZvaWQgPT4ge1xuICAgICAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IHRhc2soLi4uYXJncyk7XG5cbiAgICAgICAgICAgICAgICAgICAgZGlzcGF0Y2gob2ZTdWNjZXNzKHJlc3VsdCkpO1xuICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGV4OiB1bmtub3duKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChmYWxsYmFjaykge1xuICAgICAgICAgICAgICAgICAgICAgICAgZmFsbGJhY2soZXggYXMgRXJyb3IpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgcmV0dXJuIFtiaW5kXTtcbiAgICAgICAgfSxcbiAgICAgICAgLyoqXG4gICAgICAgICogQ3JlYXRlcyBhIGNvbW1hbmQgb3V0IG9mIGEgc2ltcGxlIGZ1bmN0aW9uIGFuZCBpZ25vcmVzIHRoZSBzdWNjZXNzIGNhc2UuXG4gICAgICAgICogQHBhcmFtIHRhc2sgVGhlIGZ1bmN0aW9uIHRvIGNhbGwuXG4gICAgICAgICogQHBhcmFtIG9mRXJyb3IgQ3JlYXRlcyB0aGUgbWVzc2FnZSB0byBkaXNwYXRjaCB3aGVuIGFuIGVycm9yIG9jY3VycmVkLlxuICAgICAgICAqIEBwYXJhbSBhcmdzIFRoZSBwYXJhbWV0ZXJzIG9mIHRoZSB0YXNrLlxuICAgICAgICAqL1xuICAgICAgICBhdHRlbXB0PFRNZXNzYWdlIGV4dGVuZHMgTWVzc2FnZSwgVEFyZ3MgZXh0ZW5kcyB1bmtub3duIFtdLCBUUmV0dXJuPih0YXNrOiAoLi4uYXJnczogVEFyZ3MpID0+IFRSZXR1cm4sIG9mRXJyb3I6IChlcnJvcjogRXJyb3IpID0+IFRNZXNzYWdlLCAuLi5hcmdzOiBUQXJncyk6IENtZDxUTWVzc2FnZT4ge1xuICAgICAgICAgICAgY29uc3QgYmluZCA9IChkaXNwYXRjaDogRGlzcGF0Y2g8VE1lc3NhZ2U+LCBmYWxsYmFjaz86IEZhbGxiYWNrSGFuZGxlcik6IHZvaWQgPT4ge1xuICAgICAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgICAgIHRhc2soLi4uYXJncyk7XG5cbiAgICAgICAgICAgICAgICAgICAgaWYgKGZhbGxiYWNrKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmYWxsYmFjaygpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSBjYXRjaCAoZXg6IHVua25vd24pIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGF0Y2gob2ZFcnJvcihleCBhcyBFcnJvcikpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIHJldHVybiBbYmluZF07XG4gICAgICAgIH0sXG4gICAgfSxcbiAgICAvKipcbiAgICAgKiBQcm92aWRlcyBmdW5jdGlvbmFsaXRpZXMgdG8gY3JlYXRlIGNvbW1hbmRzIGZyb20gYXN5bmMgZnVuY3Rpb25zLlxuICAgICAqL1xuICAgIG9mUHJvbWlzZToge1xuICAgICAgICAvKipcbiAgICAgICAgKiBDcmVhdGVzIGEgY29tbWFuZCBvdXQgb2YgYW4gYXN5bmMgZnVuY3Rpb24gYW5kIG1hcHMgdGhlIHJlc3VsdC5cbiAgICAgICAgKiBAcGFyYW0gdGFzayBUaGUgYXN5bmMgZnVuY3Rpb24gdG8gY2FsbC5cbiAgICAgICAgKiBAcGFyYW0gb2ZTdWNjZXNzIENyZWF0ZXMgdGhlIG1lc3NhZ2UgdG8gZGlzcGF0Y2ggd2hlbiB0aGUgcHJvbWlzZSBpcyByZXNvbHZlZC5cbiAgICAgICAgKiBAcGFyYW0gb2ZFcnJvciBDcmVhdGVzIHRoZSBtZXNzYWdlIHRvIGRpc3BhdGNoIHdoZW4gdGhlIHByb21pc2UgaXMgcmVqZWN0ZWQuXG4gICAgICAgICogQHBhcmFtIGFyZ3MgVGhlIHBhcmFtZXRlcnMgb2YgdGhlIHRhc2suXG4gICAgICAgICovXG4gICAgICAgIGVpdGhlcjxUTWVzc2FnZSBleHRlbmRzIE1lc3NhZ2UsIFRBcmdzIGV4dGVuZHMgdW5rbm93biBbXSwgVFJldHVybj4odGFzazogKC4uLmFyZ3M6IFRBcmdzKSA9PiBQcm9taXNlPFRSZXR1cm4+LCBvZlN1Y2Nlc3M6IChyZXN1bHQ6IFRSZXR1cm4pID0+IFRNZXNzYWdlLCBvZkVycm9yOiAoZXJyb3I6IEVycm9yKSA9PiBUTWVzc2FnZSwgLi4uYXJnczogVEFyZ3MpOiBDbWQ8VE1lc3NhZ2U+IHtcbiAgICAgICAgICAgIGNvbnN0IGJpbmQgPSAoZGlzcGF0Y2g6IERpc3BhdGNoPFRNZXNzYWdlPik6IHZvaWQgPT4ge1xuICAgICAgICAgICAgICAgIHRhc2soLi4uYXJncykudGhlbihyZXN1bHQgPT4gZGlzcGF0Y2gob2ZTdWNjZXNzKHJlc3VsdCkpKVxuICAgICAgICAgICAgICAgICAgICAuY2F0Y2goKGV4OiBFcnJvcikgPT4gZGlzcGF0Y2gob2ZFcnJvcihleCkpKTtcbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIHJldHVybiBbYmluZF07XG4gICAgICAgIH0sXG4gICAgICAgIC8qKlxuICAgICAgICAqIENyZWF0ZXMgYSBjb21tYW5kIG91dCBvZiBhbiBhc3luYyBmdW5jdGlvbiBhbmQgaWdub3JlcyB0aGUgZXJyb3IgY2FzZS5cbiAgICAgICAgKiBAcGFyYW0gdGFzayBUaGUgYXN5bmMgZnVuY3Rpb24gdG8gY2FsbC5cbiAgICAgICAgKiBAcGFyYW0gb2ZTdWNjZXNzIENyZWF0ZXMgdGhlIG1lc3NhZ2UgdG8gZGlzcGF0Y2ggd2hlbiB0aGUgcHJvbWlzZSBpcyByZXNvbHZlZC5cbiAgICAgICAgKiBAcGFyYW0gYXJncyBUaGUgcGFyYW1ldGVycyBvZiB0aGUgdGFzay5cbiAgICAgICAgKi9cbiAgICAgICAgcGVyZm9ybTxUTWVzc2FnZSBleHRlbmRzIE1lc3NhZ2UsIFRBcmdzIGV4dGVuZHMgdW5rbm93biBbXSwgVFJldHVybj4odGFzazogKC4uLmFyZ3M6IFRBcmdzKSA9PiBQcm9taXNlPFRSZXR1cm4+LCBvZlN1Y2Nlc3M6IChyZXN1bHQ6IFRSZXR1cm4pID0+IFRNZXNzYWdlLCAuLi5hcmdzOiBUQXJncyk6IENtZDxUTWVzc2FnZT4ge1xuICAgICAgICAgICAgY29uc3QgZGVmYXVsdEZhbGxiYWNrSGFuZGxlciA9ICgpOiB2b2lkID0+IHtcbiAgICAgICAgICAgICAgICAvLyBibGFua1xuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgY29uc3QgYmluZCA9IChkaXNwYXRjaDogRGlzcGF0Y2g8VE1lc3NhZ2U+LCBmYWxsYmFjazogRmFsbGJhY2tIYW5kbGVyID0gZGVmYXVsdEZhbGxiYWNrSGFuZGxlcik6IHZvaWQgPT4ge1xuICAgICAgICAgICAgICAgIHRhc2soLi4uYXJncykudGhlbihyZXN1bHQgPT4gZGlzcGF0Y2gob2ZTdWNjZXNzKHJlc3VsdCkpKVxuICAgICAgICAgICAgICAgICAgICAuY2F0Y2goZmFsbGJhY2spO1xuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgcmV0dXJuIFtiaW5kXTtcbiAgICAgICAgfSxcbiAgICAgICAgLyoqXG4gICAgICAgICogQ3JlYXRlcyBhIGNvbW1hbmQgb3V0IG9mIGFuIGFzeW5jIGZ1bmN0aW9uIGFuZCBpZ25vcmVzIHRoZSBzdWNjZXNzIGNhc2UuXG4gICAgICAgICogQHBhcmFtIHRhc2sgVGhlIGFzeW5jIGZ1bmN0aW9uIHRvIGNhbGwuXG4gICAgICAgICogQHBhcmFtIG9mRXJyb3IgQ3JlYXRlcyB0aGUgbWVzc2FnZSB0byBkaXNwYXRjaCB3aGVuIHRoZSBwcm9taXNlIGlzIHJlamVjdGVkLlxuICAgICAgICAqIEBwYXJhbSBhcmdzIFRoZSBwYXJhbWV0ZXJzIG9mIHRoZSB0YXNrLlxuICAgICAgICAqL1xuICAgICAgICBhdHRlbXB0PFRNZXNzYWdlIGV4dGVuZHMgTWVzc2FnZSwgVEFyZ3MgZXh0ZW5kcyB1bmtub3duIFtdLCBUUmV0dXJuPih0YXNrOiAoLi4uYXJnczogVEFyZ3MpID0+IFByb21pc2U8VFJldHVybj4sIG9mRXJyb3I6IChlcnJvcjogRXJyb3IpID0+IFRNZXNzYWdlLCAuLi5hcmdzOiBUQXJncyk6IENtZDxUTWVzc2FnZT4ge1xuICAgICAgICAgICAgY29uc3QgYmluZCA9IChkaXNwYXRjaDogRGlzcGF0Y2g8VE1lc3NhZ2U+LCBmYWxsYmFjaz86IEZhbGxiYWNrSGFuZGxlcik6IHZvaWQgPT4ge1xuICAgICAgICAgICAgICAgIHRhc2soLi4uYXJncykudGhlbigoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChmYWxsYmFjaykge1xuICAgICAgICAgICAgICAgICAgICAgICAgZmFsbGJhY2soKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgIC5jYXRjaCgoZXg6IEVycm9yKSA9PiBkaXNwYXRjaChvZkVycm9yKGV4KSkpO1xuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgcmV0dXJuIFtiaW5kXTtcbiAgICAgICAgfSxcbiAgICB9LFxufTtcblxuZXhwb3J0IHtcbiAgICBjbWQsXG59OyJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBRUEsSUFBTUEsR0FBRyxHQUFHO0VBQ1I7QUFDSjtBQUNBO0FBQ0E7RUFDSUMsS0FBSyxXQUFBQSxNQUE0QkMsR0FBYSxFQUFpQjtJQUMzRCxPQUFPLENBQUMsVUFBQUMsUUFBUTtNQUFBLE9BQUlBLFFBQVEsQ0FBQ0QsR0FBRyxDQUFDO0lBQUEsRUFBQztFQUN0QyxDQUFDO0VBQ0Q7QUFDSjtBQUNBO0FBQ0E7RUFDSUUsS0FBSyxXQUFBQSxNQUFBLEVBQStGO0lBQUEsU0FBQUMsSUFBQSxHQUFBQyxTQUFBLENBQUFDLE1BQUEsRUFBaEVDLFFBQVEsT0FBQUMsS0FBQSxDQUFBSixJQUFBLEdBQUFLLElBQUEsTUFBQUEsSUFBQSxHQUFBTCxJQUFBLEVBQUFLLElBQUE7TUFBUkYsUUFBUSxDQUFBRSxJQUFB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
package/dist/useElmish.js CHANGED
@@ -102,7 +102,7 @@ function useElmish(_ref) {
102
102
  setModel(function (prevModel) {
103
103
  var _Services$logger;
104
104
  var updatedModel = _objectSpread(_objectSpread({}, prevModel), currentModel);
105
- (_Services$logger = _Init.Services.logger) === null || _Services$logger === void 0 ? void 0 : _Services$logger.debug("Elm", "update model for", name, updatedModel);
105
+ (_Services$logger = _Init.Services.logger) === null || _Services$logger === void 0 ? void 0 : _Services$logger.debug("Update model for", name, updatedModel);
106
106
  return updatedModel;
107
107
  });
108
108
  }
@@ -116,7 +116,7 @@ function useElmish(_ref) {
116
116
  initCommands = _ref3.slice(1);
117
117
  initializedModel = initModel;
118
118
  setModel(initializedModel);
119
- (_Services$logger2 = _Init.Services.logger) === null || _Services$logger2 === void 0 ? void 0 : _Services$logger2.debug("Elm", "initial model for", name, initializedModel);
119
+ (_Services$logger2 = _Init.Services.logger) === null || _Services$logger2 === void 0 ? void 0 : _Services$logger2.debug("Initial model for", name, initializedModel);
120
120
  _Common.execCmd.apply(void 0, [dispatch].concat(_toConsumableArray(initCommands)));
121
121
  }
122
122
  (0, _react.useEffect)(function () {
@@ -144,4 +144,4 @@ function callUpdateMap(updateMap, msg, model, props) {
144
144
  var updateFn = updateMap[msgName];
145
145
  return updateFn(msg, model, props);
146
146
  }
147
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJyZXF1aXJlIiwiX0NvbW1vbiIsIl9Jbml0IiwiX2Zha2VPcHRpb25zIiwiX3RvQ29uc3VtYWJsZUFycmF5IiwiYXJyIiwiX2FycmF5V2l0aG91dEhvbGVzIiwiX2l0ZXJhYmxlVG9BcnJheSIsIl91bnN1cHBvcnRlZEl0ZXJhYmxlVG9BcnJheSIsIl9ub25JdGVyYWJsZVNwcmVhZCIsIlR5cGVFcnJvciIsIkFycmF5IiwiaXNBcnJheSIsIl9hcnJheUxpa2VUb0FycmF5Iiwib3duS2V5cyIsIm9iamVjdCIsImVudW1lcmFibGVPbmx5Iiwia2V5cyIsIk9iamVjdCIsImdldE93blByb3BlcnR5U3ltYm9scyIsInN5bWJvbHMiLCJmaWx0ZXIiLCJzeW0iLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJlbnVtZXJhYmxlIiwicHVzaCIsImFwcGx5IiwiX29iamVjdFNwcmVhZCIsInRhcmdldCIsImkiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJzb3VyY2UiLCJmb3JFYWNoIiwia2V5IiwiX2RlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyIsImRlZmluZVByb3BlcnRpZXMiLCJkZWZpbmVQcm9wZXJ0eSIsIm9iaiIsInZhbHVlIiwiX3RvUHJvcGVydHlLZXkiLCJjb25maWd1cmFibGUiLCJ3cml0YWJsZSIsImFyZyIsIl90b1ByaW1pdGl2ZSIsIl90eXBlb2YiLCJTdHJpbmciLCJpbnB1dCIsImhpbnQiLCJwcmltIiwiU3ltYm9sIiwidG9QcmltaXRpdmUiLCJ1bmRlZmluZWQiLCJyZXMiLCJjYWxsIiwiTnVtYmVyIiwiX3RvQXJyYXkiLCJfYXJyYXlXaXRoSG9sZXMiLCJfbm9uSXRlcmFibGVSZXN0IiwiaXRlciIsIml0ZXJhdG9yIiwiZnJvbSIsIl9zbGljZWRUb0FycmF5IiwiX2l0ZXJhYmxlVG9BcnJheUxpbWl0IiwibyIsIm1pbkxlbiIsIm4iLCJwcm90b3R5cGUiLCJ0b1N0cmluZyIsInNsaWNlIiwiY29uc3RydWN0b3IiLCJuYW1lIiwidGVzdCIsImxlbiIsImFycjIiLCJfaSIsIl9zIiwiX2UiLCJfeCIsIl9yIiwiX2FyciIsIl9uIiwiX2QiLCJuZXh0IiwiZG9uZSIsImVyciIsInVzZUVsbWlzaCIsIl9yZWYiLCJfZmFrZU9wdGlvbnMkZGlzcGF0Y2giLCJwcm9wcyIsImluaXQiLCJ1cGRhdGUiLCJzdWJzY3JpcHRpb24iLCJyZWVudGVyZWQiLCJidWZmZXIiLCJjdXJyZW50TW9kZWwiLCJfdXNlU3RhdGUiLCJ1c2VTdGF0ZSIsIl91c2VTdGF0ZTIiLCJtb2RlbCIsInNldE1vZGVsIiwicHJvcHNSZWYiLCJ1c2VSZWYiLCJpc01vdW50ZWRSZWYiLCJ1c2VFZmZlY3QiLCJjdXJyZW50IiwiaW5pdGlhbGl6ZWRNb2RlbCIsImZha2VPcHRpb25zIiwiZ2V0RmFrZU9wdGlvbnNPbmNlIiwiZGlzcGF0Y2giLCJ1c2VDYWxsYmFjayIsIm1zZyIsIm5leHRNc2ciLCJtb2RpZmllZCIsImxvZ01lc3NhZ2UiLCJfY2FsbFVwZGF0ZSIsImNhbGxVcGRhdGUiLCJfY2FsbFVwZGF0ZTIiLCJuZXdNb2RlbCIsImNvbW1hbmRzIiwibW9kZWxIYXNDaGFuZ2VkIiwiZXhlY0NtZCIsImNvbmNhdCIsInNoaWZ0IiwicHJldk1vZGVsIiwiX1NlcnZpY2VzJGxvZ2dlciIsInVwZGF0ZWRNb2RlbCIsIlNlcnZpY2VzIiwibG9nZ2VyIiwiZGVidWciLCJfU2VydmljZXMkbG9nZ2VyMiIsIl9yZWYyIiwiX3JlZjMiLCJpbml0TW9kZWwiLCJpbml0Q29tbWFuZHMiLCJfc3Vic2NyaXB0aW9uIiwiX3N1YnNjcmlwdGlvbjIiLCJzdWJDbWQiLCJkZXN0cnVjdG9yIiwiY2FsbFVwZGF0ZU1hcCIsInVwZGF0ZU1hcCIsIm1zZ05hbWUiLCJ1cGRhdGVGbiJdLCJzb3VyY2VzIjpbIi4uL3NyYy91c2VFbG1pc2gudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgcmVhY3QtaG9va3MvZXhoYXVzdGl2ZS1kZXBzICovXG5pbXBvcnQgeyB1c2VDYWxsYmFjaywgdXNlRWZmZWN0LCB1c2VSZWYsIHVzZVN0YXRlIH0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgeyBleGVjQ21kLCBsb2dNZXNzYWdlLCBtb2RlbEhhc0NoYW5nZWQgfSBmcm9tIFwiLi9Db21tb25cIjtcbmltcG9ydCB7IFNlcnZpY2VzIH0gZnJvbSBcIi4vSW5pdFwiO1xuaW1wb3J0IHsgZ2V0RmFrZU9wdGlvbnNPbmNlIH0gZnJvbSBcIi4vVGVzdGluZy9mYWtlT3B0aW9uc1wiO1xuaW1wb3J0IHsgQ21kLCBEaXNwYXRjaCwgSW5pdEZ1bmN0aW9uLCBNZXNzYWdlLCBOdWxsYWJsZSwgVXBkYXRlRnVuY3Rpb24sIFVwZGF0ZU1hcCwgVXBkYXRlUmV0dXJuVHlwZSB9IGZyb20gXCIuL1R5cGVzXCI7XG5cbi8qKlxuICogVGhlIHJldHVybiB0eXBlIG9mIHRoZSBgc3Vic2NyaXB0aW9uYCBmdW5jdGlvbi5cbiAqIEB0ZW1wbGF0ZSBUTWVzc2FnZSBUaGUgdHlwZSBvZiB0aGUgbWVzc2FnZXMgZGlzY3JpbWluYXRlZCB1bmlvbi5cbiAqL1xudHlwZSBTdWJzY3JpcHRpb25SZXN1bHQ8VE1lc3NhZ2U+ID0gW0NtZDxUTWVzc2FnZT4sICgoKSA9PiB2b2lkKT9dO1xudHlwZSBTdWJzY3JpcHRpb248VFByb3BzLCBUTW9kZWwsIFRNZXNzYWdlPiA9IChtb2RlbDogVE1vZGVsLCBwcm9wczogVFByb3BzKSA9PiBTdWJzY3JpcHRpb25SZXN1bHQ8VE1lc3NhZ2U+O1xuXG4vKipcbiAqIE9wdGlvbnMgZm9yIHRoZSBgdXNlRWxtaXNoYCBob29rLlxuICogQGludGVyZmFjZSBVc2VFbG1pc2hPcHRpb25zXG4gKiBAdGVtcGxhdGUgVFByb3BzIFRoZSB0eXBlIG9mIHRoZSBwcm9wcy5cbiAqIEB0ZW1wbGF0ZSBUTW9kZWwgVGhlIHR5cGUgb2YgdGhlIG1vZGVsLlxuICogQHRlbXBsYXRlIFRNZXNzYWdlIFRoZSB0eXBlIG9mIHRoZSBtZXNzYWdlcyBkaXNjcmltaW5hdGVkIHVuaW9uLlxuICovXG5pbnRlcmZhY2UgVXNlRWxtaXNoT3B0aW9uczxUUHJvcHMsIFRNb2RlbCwgVE1lc3NhZ2UgZXh0ZW5kcyBNZXNzYWdlPiB7XG4gICAgLyoqXG4gICAgICogVGhlIG5hbWUgb2YgdGhlIGNvbXBvbmVudC4gVGhpcyBpcyB1c2VkIGZvciBsb2dnaW5nIG9ubHkuXG4gICAgICogQHR5cGUge3N0cmluZ31cbiAgICAgKi9cbiAgICBuYW1lOiBzdHJpbmcsXG4gICAgLyoqXG4gICAgICogVGhlIHByb3BzIHBhc3NlZCB0byB0aGUgY29tcG9uZW50LlxuICAgICAqIEB0eXBlIHtUUHJvcHN9XG4gICAgICovXG4gICAgcHJvcHM6IFRQcm9wcyxcbiAgICAvKipcbiAgICAgKiBUaGUgZnVuY3Rpb24gdG8gaW5pdGlhbGl6ZSB0aGUgY29tcG9uZW50cyBtb2RlbC4gVGhpcyBmdW5jdGlvbiBpcyBvbmx5IGNhbGxlZCBvbmNlLlxuICAgICAqIEB0eXBlIHtJbml0RnVuY3Rpb248VFByb3BzLCBUTW9kZWwsIFRNZXNzYWdlPn1cbiAgICAgKi9cbiAgICBpbml0OiBJbml0RnVuY3Rpb248VFByb3BzLCBUTW9kZWwsIFRNZXNzYWdlPixcbiAgICAvKipcbiAgICAgKiBUaGUgYHVwZGF0ZWAgZnVuY3Rpb24gb3IgdXBkYXRlIG1hcCBvYmplY3QuXG4gICAgICogQHR5cGUgeyhVcGRhdGVGdW5jdGlvbjxUUHJvcHMsIFRNb2RlbCwgVE1lc3NhZ2U+IHwgVXBkYXRlTWFwPFRQcm9wcywgVE1vZGVsLCBUTWVzc2FnZT4pfVxuICAgICAqL1xuICAgIHVwZGF0ZTogVXBkYXRlRnVuY3Rpb248VFByb3BzLCBUTW9kZWwsIFRNZXNzYWdlPiB8IFVwZGF0ZU1hcDxUUHJvcHMsIFRNb2RlbCwgVE1lc3NhZ2U+LFxuICAgIC8qKlxuICAgICAqIFRoZSBvcHRpb25hbCBgc3Vic2NyaXB0aW9uYCBmdW5jdGlvbi4gVGhpcyBmdW5jdGlvbiBpcyBvbmx5IGNhbGxlZCBvbmNlLlxuICAgICAqIEB0eXBlIHsoVXBkYXRlRnVuY3Rpb248VFByb3BzLCBUTW9kZWwsIFRNZXNzYWdlPiB8IFVwZGF0ZU1hcDxUUHJvcHMsIFRNb2RlbCwgVE1lc3NhZ2U+KX1cbiAgICAgKi9cbiAgICBzdWJzY3JpcHRpb24/OiBTdWJzY3JpcHRpb248VFByb3BzLCBUTW9kZWwsIFRNZXNzYWdlPixcbn1cblxuLyoqXG4gKiBIb29rIHRvIHVzZSB0aGUgRWxtIGFyY2hpdGVjdHVyZSBwYXR0ZXJuIGluIGEgZnVuY3Rpb24gY29tcG9uZW50LlxuICogQHBhcmFtIHtVc2VFbG1pc2hPcHRpb25zfSBvcHRpb25zIFRoZSBvcHRpb25zIHBhc3NlZCB0aGUgdGhlIGhvb2suXG4gKiBAcmV0dXJucyBBIHR1cGxlIGNvbnRhaW5pbmcgdGhlIGN1cnJlbnQgbW9kZWwgYW5kIHRoZSBkaXNwYXRjaGVyLlxuICogQGV4YW1wbGVcbiAqIGNvbnN0IFttb2RlbCwgZGlzcGF0Y2hdID0gdXNlRWxtaXNoKHsgcHJvcHMsIGluaXQsIHVwZGF0ZSwgbmFtZTogXCJNeUNvbXBvbmVudFwiIH0pO1xuICovXG5mdW5jdGlvbiB1c2VFbG1pc2g8VFByb3BzLCBUTW9kZWwsIFRNZXNzYWdlIGV4dGVuZHMgTWVzc2FnZT4gKHsgbmFtZSwgcHJvcHMsIGluaXQsIHVwZGF0ZSwgc3Vic2NyaXB0aW9uIH06IFVzZUVsbWlzaE9wdGlvbnM8VFByb3BzLCBUTW9kZWwsIFRNZXNzYWdlPik6IFtUTW9kZWwsIERpc3BhdGNoPFRNZXNzYWdlPl0ge1xuICAgIGxldCByZWVudGVyZWQgPSBmYWxzZTtcbiAgICBjb25zdCBidWZmZXI6IFRNZXNzYWdlIFtdID0gW107XG4gICAgbGV0IGN1cnJlbnRNb2RlbDogUGFydGlhbDxUTW9kZWw+ID0ge307XG5cbiAgICBjb25zdCBbbW9kZWwsIHNldE1vZGVsXSA9IHVzZVN0YXRlPE51bGxhYmxlPFRNb2RlbD4+KG51bGwpO1xuICAgIGNvbnN0IHByb3BzUmVmID0gdXNlUmVmKHByb3BzKTtcbiAgICBjb25zdCBpc01vdW50ZWRSZWYgPSB1c2VSZWYodHJ1ZSk7XG5cbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICBpc01vdW50ZWRSZWYuY3VycmVudCA9IHRydWU7XG5cbiAgICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgICAgIGlzTW91bnRlZFJlZi5jdXJyZW50ID0gZmFsc2U7XG4gICAgICAgIH07XG4gICAgfSwgW10pO1xuXG4gICAgbGV0IGluaXRpYWxpemVkTW9kZWwgPSBtb2RlbDtcblxuICAgIGlmIChwcm9wc1JlZi5jdXJyZW50ICE9PSBwcm9wcykge1xuICAgICAgICBwcm9wc1JlZi5jdXJyZW50ID0gcHJvcHM7XG4gICAgfVxuXG4gICAgY29uc3QgZmFrZU9wdGlvbnMgPSBnZXRGYWtlT3B0aW9uc09uY2UoKTtcbiAgICBjb25zdCBkaXNwYXRjaCA9IHVzZUNhbGxiYWNrKGZha2VPcHRpb25zPy5kaXNwYXRjaCA/PyAoKG1zZzogVE1lc3NhZ2UpOiB2b2lkID0+IHtcbiAgICAgICAgaWYgKCFpbml0aWFsaXplZE1vZGVsKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAocmVlbnRlcmVkKSB7XG4gICAgICAgICAgICBidWZmZXIucHVzaChtc2cpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmVlbnRlcmVkID0gdHJ1ZTtcblxuICAgICAgICAgICAgbGV0IG5leHRNc2c6IFRNZXNzYWdlIHwgdW5kZWZpbmVkID0gbXNnO1xuICAgICAgICAgICAgbGV0IG1vZGlmaWVkID0gZmFsc2U7XG5cbiAgICAgICAgICAgIHdoaWxlIChuZXh0TXNnKSB7XG4gICAgICAgICAgICAgICAgbG9nTWVzc2FnZShuYW1lLCBuZXh0TXNnKTtcblxuICAgICAgICAgICAgICAgIGNvbnN0IFtuZXdNb2RlbCwgLi4uY29tbWFuZHNdID0gY2FsbFVwZGF0ZSh1cGRhdGUsIG5leHRNc2csIHsgLi4uaW5pdGlhbGl6ZWRNb2RlbCwgLi4uY3VycmVudE1vZGVsIH0sIHByb3BzUmVmLmN1cnJlbnQpO1xuXG4gICAgICAgICAgICAgICAgaWYgKG1vZGVsSGFzQ2hhbmdlZChjdXJyZW50TW9kZWwsIG5ld01vZGVsKSkge1xuICAgICAgICAgICAgICAgICAgICBjdXJyZW50TW9kZWwgPSB7IC4uLmN1cnJlbnRNb2RlbCwgLi4ubmV3TW9kZWwgfTtcblxuICAgICAgICAgICAgICAgICAgICBtb2RpZmllZCA9IHRydWU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgZXhlY0NtZChkaXNwYXRjaCwgLi4uY29tbWFuZHMpO1xuXG4gICAgICAgICAgICAgICAgbmV4dE1zZyA9IGJ1ZmZlci5zaGlmdCgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmVlbnRlcmVkID0gZmFsc2U7XG5cbiAgICAgICAgICAgIGlmIChpc01vdW50ZWRSZWYuY3VycmVudCAmJiBtb2RpZmllZCkge1xuICAgICAgICAgICAgICAgIHNldE1vZGVsKHByZXZNb2RlbCA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHVwZGF0ZWRNb2RlbCA9IHsgLi4ucHJldk1vZGVsIGFzIFRNb2RlbCwgLi4uY3VycmVudE1vZGVsIH07XG5cbiAgICAgICAgICAgICAgICAgICAgU2VydmljZXMubG9nZ2VyPy5kZWJ1ZyhcIkVsbVwiLCBcInVwZGF0ZSBtb2RlbCBmb3JcIiwgbmFtZSwgdXBkYXRlZE1vZGVsKTtcblxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdXBkYXRlZE1vZGVsO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfSksIFtdKTtcblxuICAgIGlmICghaW5pdGlhbGl6ZWRNb2RlbCkge1xuICAgICAgICBjb25zdCBbaW5pdE1vZGVsLCAuLi5pbml0Q29tbWFuZHNdID0gZmFrZU9wdGlvbnM/Lm1vZGVsID8gW2Zha2VPcHRpb25zLm1vZGVsIGFzIFRNb2RlbF0gOiBpbml0KHByb3BzKTtcblxuICAgICAgICBpbml0aWFsaXplZE1vZGVsID0gaW5pdE1vZGVsO1xuICAgICAgICBzZXRNb2RlbChpbml0aWFsaXplZE1vZGVsKTtcblxuICAgICAgICBTZXJ2aWNlcy5sb2dnZXI/LmRlYnVnKFwiRWxtXCIsIFwiaW5pdGlhbCBtb2RlbCBmb3JcIiwgbmFtZSwgaW5pdGlhbGl6ZWRNb2RlbCk7XG5cbiAgICAgICAgZXhlY0NtZChkaXNwYXRjaCwgLi4uaW5pdENvbW1hbmRzKTtcbiAgICB9XG5cbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICBpZiAoc3Vic2NyaXB0aW9uKSB7XG4gICAgICAgICAgICBjb25zdCBbc3ViQ21kLCBkZXN0cnVjdG9yXSA9IHN1YnNjcmlwdGlvbihpbml0aWFsaXplZE1vZGVsIGFzIFRNb2RlbCwgcHJvcHMpO1xuXG4gICAgICAgICAgICBleGVjQ21kKGRpc3BhdGNoLCBzdWJDbWQpO1xuXG4gICAgICAgICAgICBpZiAoZGVzdHJ1Y3Rvcikge1xuICAgICAgICAgICAgICAgIHJldHVybiBkZXN0cnVjdG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfSwgW10pO1xuXG4gICAgcmV0dXJuIFtpbml0aWFsaXplZE1vZGVsLCBkaXNwYXRjaF07XG59XG5cbmZ1bmN0aW9uIGNhbGxVcGRhdGU8VFByb3BzLCBUTW9kZWwsIFRNZXNzYWdlIGV4dGVuZHMgTWVzc2FnZT4gKHVwZGF0ZTogVXBkYXRlRnVuY3Rpb248VFByb3BzLCBUTW9kZWwsIFRNZXNzYWdlPiB8IFVwZGF0ZU1hcDxUUHJvcHMsIFRNb2RlbCwgVE1lc3NhZ2U+LCBtc2c6IFRNZXNzYWdlLCBtb2RlbDogVE1vZGVsLCBwcm9wczogVFByb3BzKTogVXBkYXRlUmV0dXJuVHlwZTxUTW9kZWwsIFRNZXNzYWdlPiB7XG4gICAgaWYgKHR5cGVvZiB1cGRhdGUgPT09IFwiZnVuY3Rpb25cIikge1xuICAgICAgICByZXR1cm4gdXBkYXRlKG1vZGVsLCBtc2csIHByb3BzKTtcbiAgICB9XG5cbiAgICByZXR1cm4gY2FsbFVwZGF0ZU1hcCh1cGRhdGUsIG1zZywgbW9kZWwsIHByb3BzKTtcbn1cblxuZnVuY3Rpb24gY2FsbFVwZGF0ZU1hcDxUUHJvcHMsIFRNb2RlbCwgVE1lc3NhZ2UgZXh0ZW5kcyBNZXNzYWdlPiAodXBkYXRlTWFwOiBVcGRhdGVNYXA8VFByb3BzLCBUTW9kZWwsIFRNZXNzYWdlPiwgbXNnOiBUTWVzc2FnZSwgbW9kZWw6IFRNb2RlbCwgcHJvcHM6IFRQcm9wcyk6IFVwZGF0ZVJldHVyblR5cGU8VE1vZGVsLCBUTWVzc2FnZT4ge1xuICAgIGNvbnN0IG1zZ05hbWU6IFRNZXNzYWdlW1wibmFtZVwiXSA9IG1zZy5uYW1lO1xuICAgIGNvbnN0IHVwZGF0ZUZuID0gdXBkYXRlTWFwW21zZ05hbWVdIGFzIChtc2c6IFRNZXNzYWdlLCBtb2RlbDogVE1vZGVsLCBwcm9wczogVFByb3BzKSA9PiBVcGRhdGVSZXR1cm5UeXBlPFRNb2RlbCwgVE1lc3NhZ2U+O1xuXG4gICAgcmV0dXJuIHVwZGF0ZUZuKG1zZywgbW9kZWwsIHByb3BzKTtcbn1cblxuZXhwb3J0IHR5cGUge1xuICAgIFN1YnNjcmlwdGlvblJlc3VsdCxcbn07XG5cbmV4cG9ydCB7XG4gICAgdXNlRWxtaXNoLFxuICAgIGNhbGxVcGRhdGUsXG4gICAgY2FsbFVwZGF0ZU1hcCxcbn07Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFDQSxJQUFBQSxNQUFBLEdBQUFDLE9BQUE7QUFDQSxJQUFBQyxPQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSxLQUFBLEdBQUFGLE9BQUE7QUFDQSxJQUFBRyxZQUFBLEdBQUFILE9BQUE7QUFBMkQsU0FBQUksbUJBQUFDLEdBQUEsV0FBQUMsa0JBQUEsQ0FBQUQsR0FBQSxLQUFBRSxnQkFBQSxDQUFBRixHQUFBLEtBQUFHLDJCQUFBLENBQUFILEdBQUEsS0FBQUksa0JBQUE7QUFBQSxTQUFBQSxtQkFBQSxjQUFBQyxTQUFBO0FBQUEsU0FBQUosbUJBQUFELEdBQUEsUUFBQU0sS0FBQSxDQUFBQyxPQUFBLENBQUFQLEdBQUEsVUFBQVEsaUJBQUEsQ0FBQVIsR0FBQTtBQUFBLFNBQUFTLFFBQUFDLE1BQUEsRUFBQUMsY0FBQSxRQUFBQyxJQUFBLEdBQUFDLE1BQUEsQ0FBQUQsSUFBQSxDQUFBRixNQUFBLE9BQUFHLE1BQUEsQ0FBQUMscUJBQUEsUUFBQUMsT0FBQSxHQUFBRixNQUFBLENBQUFDLHFCQUFBLENBQUFKLE1BQUEsR0FBQUMsY0FBQSxLQUFBSSxPQUFBLEdBQUFBLE9BQUEsQ0FBQUMsTUFBQSxXQUFBQyxHQUFBLFdBQUFKLE1BQUEsQ0FBQUssd0JBQUEsQ0FBQVIsTUFBQSxFQUFBTyxHQUFBLEVBQUFFLFVBQUEsT0FBQVAsSUFBQSxDQUFBUSxJQUFBLENBQUFDLEtBQUEsQ0FBQVQsSUFBQSxFQUFBRyxPQUFBLFlBQUFILElBQUE7QUFBQSxTQUFBVSxjQUFBQyxNQUFBLGFBQUFDLENBQUEsTUFBQUEsQ0FBQSxHQUFBQyxTQUFBLENBQUFDLE1BQUEsRUFBQUYsQ0FBQSxVQUFBRyxNQUFBLFdBQUFGLFNBQUEsQ0FBQUQsQ0FBQSxJQUFBQyxTQUFBLENBQUFELENBQUEsUUFBQUEsQ0FBQSxPQUFBZixPQUFBLENBQUFJLE1BQUEsQ0FBQWMsTUFBQSxPQUFBQyxPQUFBLFdBQUFDLEdBQUEsSUFBQUMsZUFBQSxDQUFBUCxNQUFBLEVBQUFNLEdBQUEsRUFBQUYsTUFBQSxDQUFBRSxHQUFBLFNBQUFoQixNQUFBLENBQUFrQix5QkFBQSxHQUFBbEIsTUFBQSxDQUFBbUIsZ0JBQUEsQ0FBQVQsTUFBQSxFQUFBVixNQUFBLENBQUFrQix5QkFBQSxDQUFBSixNQUFBLEtBQUFsQixPQUFBLENBQUFJLE1BQUEsQ0FBQWMsTUFBQSxHQUFBQyxPQUFBLFdBQUFDLEdBQUEsSUFBQWhCLE1BQUEsQ0FBQW9CLGNBQUEsQ0FBQVYsTUFBQSxFQUFBTSxHQUFBLEVBQUFoQixNQUFBLENBQUFLLHdCQUFBLENBQUFTLE1BQUEsRUFBQUUsR0FBQSxpQkFBQU4sTUFBQTtBQUFBLFNBQUFPLGdCQUFBSSxHQUFBLEVBQUFMLEdBQUEsRUFBQU0sS0FBQSxJQUFBTixHQUFBLEdBQUFPLGNBQUEsQ0FBQVAsR0FBQSxPQUFBQSxHQUFBLElBQUFLLEdBQUEsSUFBQXJCLE1BQUEsQ0FBQW9CLGNBQUEsQ0FBQUMsR0FBQSxFQUFBTCxHQUFBLElBQUFNLEtBQUEsRUFBQUEsS0FBQSxFQUFBaEIsVUFBQSxRQUFBa0IsWUFBQSxRQUFBQyxRQUFBLG9CQUFBSixHQUFBLENBQUFMLEdBQUEsSUFBQU0sS0FBQSxXQUFBRCxHQUFBO0FBQUEsU0FBQUUsZUFBQUcsR0FBQSxRQUFBVixHQUFBLEdBQUFXLFlBQUEsQ0FBQUQsR0FBQSxvQkFBQUUsT0FBQSxDQUFBWixHQUFBLGlCQUFBQSxHQUFBLEdBQUFhLE1BQUEsQ0FBQWIsR0FBQTtBQUFBLFNBQUFXLGFBQUFHLEtBQUEsRUFBQUMsSUFBQSxRQUFBSCxPQUFBLENBQUFFLEtBQUEsa0JBQUFBLEtBQUEsa0JBQUFBLEtBQUEsTUFBQUUsSUFBQSxHQUFBRixLQUFBLENBQUFHLE1BQUEsQ0FBQUMsV0FBQSxPQUFBRixJQUFBLEtBQUFHLFNBQUEsUUFBQUMsR0FBQSxHQUFBSixJQUFBLENBQUFLLElBQUEsQ0FBQVAsS0FBQSxFQUFBQyxJQUFBLG9CQUFBSCxPQUFBLENBQUFRLEdBQUEsdUJBQUFBLEdBQUEsWUFBQTVDLFNBQUEsNERBQUF1QyxJQUFBLGdCQUFBRixNQUFBLEdBQUFTLE1BQUEsRUFBQVIsS0FBQTtBQUFBLFNBQUFTLFNBQUFwRCxHQUFBLFdBQUFxRCxlQUFBLENBQUFyRCxHQUFBLEtBQUFFLGdCQUFBLENBQUFGLEdBQUEsS0FBQUcsMkJBQUEsQ0FBQUgsR0FBQSxLQUFBc0QsZ0JBQUE7QUFBQSxTQUFBcEQsaUJBQUFxRCxJQUFBLGVBQUFULE1BQUEsb0JBQUFTLElBQUEsQ0FBQVQsTUFBQSxDQUFBVSxRQUFBLGFBQUFELElBQUEsK0JBQUFqRCxLQUFBLENBQUFtRCxJQUFBLENBQUFGLElBQUE7QUFBQSxTQUFBRyxlQUFBMUQsR0FBQSxFQUFBd0IsQ0FBQSxXQUFBNkIsZUFBQSxDQUFBckQsR0FBQSxLQUFBMkQscUJBQUEsQ0FBQTNELEdBQUEsRUFBQXdCLENBQUEsS0FBQXJCLDJCQUFBLENBQUFILEdBQUEsRUFBQXdCLENBQUEsS0FBQThCLGdCQUFBO0FBQUEsU0FBQUEsaUJBQUEsY0FBQWpELFNBQUE7QUFBQSxTQUFBRiw0QkFBQXlELENBQUEsRUFBQUMsTUFBQSxTQUFBRCxDQUFBLHFCQUFBQSxDQUFBLHNCQUFBcEQsaUJBQUEsQ0FBQW9ELENBQUEsRUFBQUMsTUFBQSxPQUFBQyxDQUFBLEdBQUFqRCxNQUFBLENBQUFrRCxTQUFBLENBQUFDLFFBQUEsQ0FBQWQsSUFBQSxDQUFBVSxDQUFBLEVBQUFLLEtBQUEsYUFBQUgsQ0FBQSxpQkFBQUYsQ0FBQSxDQUFBTSxXQUFBLEVBQUFKLENBQUEsR0FBQUYsQ0FBQSxDQUFBTSxXQUFBLENBQUFDLElBQUEsTUFBQUwsQ0FBQSxjQUFBQSxDQUFBLG1CQUFBeEQsS0FBQSxDQUFBbUQsSUFBQSxDQUFBRyxDQUFBLE9BQUFFLENBQUEsK0RBQUFNLElBQUEsQ0FBQU4sQ0FBQSxVQUFBdEQsaUJBQUEsQ0FBQW9ELENBQUEsRUFBQUMsTUFBQTtBQUFBLFNBQUFyRCxrQkFBQVIsR0FBQSxFQUFBcUUsR0FBQSxRQUFBQSxHQUFBLFlBQUFBLEdBQUEsR0FBQXJFLEdBQUEsQ0FBQTBCLE1BQUEsRUFBQTJDLEdBQUEsR0FBQXJFLEdBQUEsQ0FBQTBCLE1BQUEsV0FBQUYsQ0FBQSxNQUFBOEMsSUFBQSxPQUFBaEUsS0FBQSxDQUFBK0QsR0FBQSxHQUFBN0MsQ0FBQSxHQUFBNkMsR0FBQSxFQUFBN0MsQ0FBQSxJQUFBOEMsSUFBQSxDQUFBOUMsQ0FBQSxJQUFBeEIsR0FBQSxDQUFBd0IsQ0FBQSxVQUFBOEMsSUFBQTtBQUFBLFNBQUFYLHNCQUFBM0QsR0FBQSxFQUFBd0IsQ0FBQSxRQUFBK0MsRUFBQSxXQUFBdkUsR0FBQSxnQ0FBQThDLE1BQUEsSUFBQTlDLEdBQUEsQ0FBQThDLE1BQUEsQ0FBQVUsUUFBQSxLQUFBeEQsR0FBQSw0QkFBQXVFLEVBQUEsUUFBQUMsRUFBQSxFQUFBQyxFQUFBLEVBQUFDLEVBQUEsRUFBQUMsRUFBQSxFQUFBQyxJQUFBLE9BQUFDLEVBQUEsT0FBQUMsRUFBQSxpQkFBQUosRUFBQSxJQUFBSCxFQUFBLEdBQUFBLEVBQUEsQ0FBQXJCLElBQUEsQ0FBQWxELEdBQUEsR0FBQStFLElBQUEsUUFBQXZELENBQUEsUUFBQVgsTUFBQSxDQUFBMEQsRUFBQSxNQUFBQSxFQUFBLFVBQUFNLEVBQUEsdUJBQUFBLEVBQUEsSUFBQUwsRUFBQSxHQUFBRSxFQUFBLENBQUF4QixJQUFBLENBQUFxQixFQUFBLEdBQUFTLElBQUEsTUFBQUosSUFBQSxDQUFBeEQsSUFBQSxDQUFBb0QsRUFBQSxDQUFBckMsS0FBQSxHQUFBeUMsSUFBQSxDQUFBbEQsTUFBQSxLQUFBRixDQUFBLEdBQUFxRCxFQUFBLGlCQUFBSSxHQUFBLElBQUFILEVBQUEsT0FBQUwsRUFBQSxHQUFBUSxHQUFBLHlCQUFBSixFQUFBLFlBQUFOLEVBQUEsZUFBQUksRUFBQSxHQUFBSixFQUFBLGNBQUExRCxNQUFBLENBQUE4RCxFQUFBLE1BQUFBLEVBQUEsMkJBQUFHLEVBQUEsUUFBQUwsRUFBQSxhQUFBRyxJQUFBO0FBQUEsU0FBQXZCLGdCQUFBckQsR0FBQSxRQUFBTSxLQUFBLENBQUFDLE9BQUEsQ0FBQVAsR0FBQSxVQUFBQSxHQUFBLElBSjNEO0FBT0E7QUFDQTtBQUNBO0FBQ0E7O0FBSUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBNkJBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBU2tGLFNBQVNBLENBQUFDLElBQUEsRUFBbUs7RUFBQSxJQUFBQyxxQkFBQTtFQUFBLElBQXJIakIsSUFBSSxHQUFBZ0IsSUFBQSxDQUFKaEIsSUFBSTtJQUFFa0IsS0FBSyxHQUFBRixJQUFBLENBQUxFLEtBQUs7SUFBRUMsSUFBSSxHQUFBSCxJQUFBLENBQUpHLElBQUk7SUFBRUMsTUFBTSxHQUFBSixJQUFBLENBQU5JLE1BQU07SUFBRUMsWUFBWSxHQUFBTCxJQUFBLENBQVpLLFlBQVk7RUFDbkcsSUFBSUMsU0FBUyxHQUFHLEtBQUs7RUFDckIsSUFBTUMsTUFBbUIsR0FBRyxFQUFFO0VBQzlCLElBQUlDLFlBQTZCLEdBQUcsQ0FBQyxDQUFDO0VBRXRDLElBQUFDLFNBQUEsR0FBMEIsSUFBQUMsZUFBUSxFQUFtQixJQUFJLENBQUM7SUFBQUMsVUFBQSxHQUFBcEMsY0FBQSxDQUFBa0MsU0FBQTtJQUFuREcsS0FBSyxHQUFBRCxVQUFBO0lBQUVFLFFBQVEsR0FBQUYsVUFBQTtFQUN0QixJQUFNRyxRQUFRLEdBQUcsSUFBQUMsYUFBTSxFQUFDYixLQUFLLENBQUM7RUFDOUIsSUFBTWMsWUFBWSxHQUFHLElBQUFELGFBQU0sRUFBQyxJQUFJLENBQUM7RUFFakMsSUFBQUUsZ0JBQVMsRUFBQyxZQUFNO0lBQ1pELFlBQVksQ0FBQ0UsT0FBTyxHQUFHLElBQUk7SUFFM0IsT0FBTyxZQUFNO01BQ1RGLFlBQVksQ0FBQ0UsT0FBTyxHQUFHLEtBQUs7SUFDaEMsQ0FBQztFQUNMLENBQUMsRUFBRSxFQUFFLENBQUM7RUFFTixJQUFJQyxnQkFBZ0IsR0FBR1AsS0FBSztFQUU1QixJQUFJRSxRQUFRLENBQUNJLE9BQU8sS0FBS2hCLEtBQUssRUFBRTtJQUM1QlksUUFBUSxDQUFDSSxPQUFPLEdBQUdoQixLQUFLO0VBQzVCO0VBRUEsSUFBTWtCLFdBQVcsR0FBRyxJQUFBQywrQkFBa0IsR0FBRTtFQUN4QyxJQUFNQyxRQUFRLEdBQUcsSUFBQUMsa0JBQVcsR0FBQXRCLHFCQUFBLEdBQUNtQixXQUFXLGFBQVhBLFdBQVcsdUJBQVhBLFdBQVcsQ0FBRUUsUUFBUSxjQUFBckIscUJBQUEsY0FBQUEscUJBQUEsR0FBSyxVQUFDdUIsR0FBYSxFQUFXO0lBQzVFLElBQUksQ0FBQ0wsZ0JBQWdCLEVBQUU7TUFDbkI7SUFDSjtJQUVBLElBQUliLFNBQVMsRUFBRTtNQUNYQyxNQUFNLENBQUN0RSxJQUFJLENBQUN1RixHQUFHLENBQUM7SUFDcEIsQ0FBQyxNQUFNO01BQ0hsQixTQUFTLEdBQUcsSUFBSTtNQUVoQixJQUFJbUIsT0FBNkIsR0FBR0QsR0FBRztNQUN2QyxJQUFJRSxRQUFRLEdBQUcsS0FBSztNQUVwQixPQUFPRCxPQUFPLEVBQUU7UUFDWixJQUFBRSxrQkFBVSxFQUFDM0MsSUFBSSxFQUFFeUMsT0FBTyxDQUFDO1FBRXpCLElBQUFHLFdBQUEsR0FBZ0NDLFVBQVUsQ0FBQ3pCLE1BQU0sRUFBRXFCLE9BQU8sRUFBQXRGLGFBQUEsQ0FBQUEsYUFBQSxLQUFPZ0YsZ0JBQWdCLEdBQUtYLFlBQVksR0FBSU0sUUFBUSxDQUFDSSxPQUFPLENBQUM7VUFBQVksWUFBQSxHQUFBN0QsUUFBQSxDQUFBMkQsV0FBQTtVQUFoSEcsUUFBUSxHQUFBRCxZQUFBO1VBQUtFLFFBQVEsR0FBQUYsWUFBQSxDQUFBaEQsS0FBQTtRQUU1QixJQUFJLElBQUFtRCx1QkFBZSxFQUFDekIsWUFBWSxFQUFFdUIsUUFBUSxDQUFDLEVBQUU7VUFDekN2QixZQUFZLEdBQUFyRSxhQUFBLENBQUFBLGFBQUEsS0FBUXFFLFlBQVksR0FBS3VCLFFBQVEsQ0FBRTtVQUUvQ0wsUUFBUSxHQUFHLElBQUk7UUFDbkI7UUFFQVEsZUFBTyxDQUFBaEcsS0FBQSxVQUFDb0YsUUFBUSxFQUFBYSxNQUFBLENBQUF2SCxrQkFBQSxDQUFLb0gsUUFBUSxHQUFDO1FBRTlCUCxPQUFPLEdBQUdsQixNQUFNLENBQUM2QixLQUFLLEVBQUU7TUFDNUI7TUFDQTlCLFNBQVMsR0FBRyxLQUFLO01BRWpCLElBQUlVLFlBQVksQ0FBQ0UsT0FBTyxJQUFJUSxRQUFRLEVBQUU7UUFDbENiLFFBQVEsQ0FBQyxVQUFBd0IsU0FBUyxFQUFJO1VBQUEsSUFBQUMsZ0JBQUE7VUFDbEIsSUFBTUMsWUFBWSxHQUFBcEcsYUFBQSxDQUFBQSxhQUFBLEtBQVFrRyxTQUFTLEdBQWU3QixZQUFZLENBQUU7VUFFaEUsQ0FBQThCLGdCQUFBLEdBQUFFLGNBQVEsQ0FBQ0MsTUFBTSxjQUFBSCxnQkFBQSx1QkFBZkEsZ0JBQUEsQ0FBaUJJLEtBQUssQ0FBQyxLQUFLLEVBQUUsa0JBQWtCLEVBQUUxRCxJQUFJLEVBQUV1RCxZQUFZLENBQUM7VUFFckUsT0FBT0EsWUFBWTtRQUN2QixDQUFDLENBQUM7TUFDTjtJQUNKO0VBQ0osQ0FBQyxFQUFHLEVBQUUsQ0FBQztFQUVQLElBQUksQ0FBQ3BCLGdCQUFnQixFQUFFO0lBQUEsSUFBQXdCLGlCQUFBO0lBQ25CLElBQUFDLEtBQUEsR0FBcUN4QixXQUFXLGFBQVhBLFdBQVcsZUFBWEEsV0FBVyxDQUFFUixLQUFLLEdBQUcsQ0FBQ1EsV0FBVyxDQUFDUixLQUFLLENBQVcsR0FBR1QsSUFBSSxDQUFDRCxLQUFLLENBQUM7TUFBQTJDLEtBQUEsR0FBQTVFLFFBQUEsQ0FBQTJFLEtBQUE7TUFBOUZFLFNBQVMsR0FBQUQsS0FBQTtNQUFLRSxZQUFZLEdBQUFGLEtBQUEsQ0FBQS9ELEtBQUE7SUFFakNxQyxnQkFBZ0IsR0FBRzJCLFNBQVM7SUFDNUJqQyxRQUFRLENBQUNNLGdCQUFnQixDQUFDO0lBRTFCLENBQUF3QixpQkFBQSxHQUFBSCxjQUFRLENBQUNDLE1BQU0sY0FBQUUsaUJBQUEsdUJBQWZBLGlCQUFBLENBQWlCRCxLQUFLLENBQUMsS0FBSyxFQUFFLG1CQUFtQixFQUFFMUQsSUFBSSxFQUFFbUMsZ0JBQWdCLENBQUM7SUFFMUVlLGVBQU8sQ0FBQWhHLEtBQUEsVUFBQ29GLFFBQVEsRUFBQWEsTUFBQSxDQUFBdkgsa0JBQUEsQ0FBS21JLFlBQVksR0FBQztFQUN0QztFQUVBLElBQUE5QixnQkFBUyxFQUFDLFlBQU07SUFDWixJQUFJWixZQUFZLEVBQUU7TUFDZCxJQUFBMkMsYUFBQSxHQUE2QjNDLFlBQVksQ0FBQ2MsZ0JBQWdCLEVBQVlqQixLQUFLLENBQUM7UUFBQStDLGNBQUEsR0FBQTFFLGNBQUEsQ0FBQXlFLGFBQUE7UUFBckVFLE1BQU0sR0FBQUQsY0FBQTtRQUFFRSxVQUFVLEdBQUFGLGNBQUE7TUFFekIsSUFBQWYsZUFBTyxFQUFDWixRQUFRLEVBQUU0QixNQUFNLENBQUM7TUFFekIsSUFBSUMsVUFBVSxFQUFFO1FBQ1osT0FBT0EsVUFBVTtNQUNyQjtJQUNKO0VBQ0osQ0FBQyxFQUFFLEVBQUUsQ0FBQztFQUVOLE9BQU8sQ0FBQ2hDLGdCQUFnQixFQUFFRyxRQUFRLENBQUM7QUFDdkM7QUFFQSxTQUFTTyxVQUFVQSxDQUE0Q3pCLE1BQXNGLEVBQUVvQixHQUFhLEVBQUVaLEtBQWEsRUFBRVYsS0FBYSxFQUFzQztFQUNwTyxJQUFJLE9BQU9FLE1BQU0sS0FBSyxVQUFVLEVBQUU7SUFDOUIsT0FBT0EsTUFBTSxDQUFDUSxLQUFLLEVBQUVZLEdBQUcsRUFBRXRCLEtBQUssQ0FBQztFQUNwQztFQUVBLE9BQU9rRCxhQUFhLENBQUNoRCxNQUFNLEVBQUVvQixHQUFHLEVBQUVaLEtBQUssRUFBRVYsS0FBSyxDQUFDO0FBQ25EO0FBRUEsU0FBU2tELGFBQWFBLENBQTRDQyxTQUE4QyxFQUFFN0IsR0FBYSxFQUFFWixLQUFhLEVBQUVWLEtBQWEsRUFBc0M7RUFDL0wsSUFBTW9ELE9BQXlCLEdBQUc5QixHQUFHLENBQUN4QyxJQUFJO0VBQzFDLElBQU11RSxRQUFRLEdBQUdGLFNBQVMsQ0FBQ0MsT0FBTyxDQUF3RjtFQUUxSCxPQUFPQyxRQUFRLENBQUMvQixHQUFHLEVBQUVaLEtBQUssRUFBRVYsS0FBSyxDQUFDO0FBQ3RDIn0=
147
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJyZXF1aXJlIiwiX0NvbW1vbiIsIl9Jbml0IiwiX2Zha2VPcHRpb25zIiwiX3RvQ29uc3VtYWJsZUFycmF5IiwiYXJyIiwiX2FycmF5V2l0aG91dEhvbGVzIiwiX2l0ZXJhYmxlVG9BcnJheSIsIl91bnN1cHBvcnRlZEl0ZXJhYmxlVG9BcnJheSIsIl9ub25JdGVyYWJsZVNwcmVhZCIsIlR5cGVFcnJvciIsIkFycmF5IiwiaXNBcnJheSIsIl9hcnJheUxpa2VUb0FycmF5Iiwib3duS2V5cyIsIm9iamVjdCIsImVudW1lcmFibGVPbmx5Iiwia2V5cyIsIk9iamVjdCIsImdldE93blByb3BlcnR5U3ltYm9scyIsInN5bWJvbHMiLCJmaWx0ZXIiLCJzeW0iLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJlbnVtZXJhYmxlIiwicHVzaCIsImFwcGx5IiwiX29iamVjdFNwcmVhZCIsInRhcmdldCIsImkiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJzb3VyY2UiLCJmb3JFYWNoIiwia2V5IiwiX2RlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyIsImRlZmluZVByb3BlcnRpZXMiLCJkZWZpbmVQcm9wZXJ0eSIsIm9iaiIsInZhbHVlIiwiX3RvUHJvcGVydHlLZXkiLCJjb25maWd1cmFibGUiLCJ3cml0YWJsZSIsImFyZyIsIl90b1ByaW1pdGl2ZSIsIl90eXBlb2YiLCJTdHJpbmciLCJpbnB1dCIsImhpbnQiLCJwcmltIiwiU3ltYm9sIiwidG9QcmltaXRpdmUiLCJ1bmRlZmluZWQiLCJyZXMiLCJjYWxsIiwiTnVtYmVyIiwiX3RvQXJyYXkiLCJfYXJyYXlXaXRoSG9sZXMiLCJfbm9uSXRlcmFibGVSZXN0IiwiaXRlciIsIml0ZXJhdG9yIiwiZnJvbSIsIl9zbGljZWRUb0FycmF5IiwiX2l0ZXJhYmxlVG9BcnJheUxpbWl0IiwibyIsIm1pbkxlbiIsIm4iLCJwcm90b3R5cGUiLCJ0b1N0cmluZyIsInNsaWNlIiwiY29uc3RydWN0b3IiLCJuYW1lIiwidGVzdCIsImxlbiIsImFycjIiLCJfaSIsIl9zIiwiX2UiLCJfeCIsIl9yIiwiX2FyciIsIl9uIiwiX2QiLCJuZXh0IiwiZG9uZSIsImVyciIsInVzZUVsbWlzaCIsIl9yZWYiLCJfZmFrZU9wdGlvbnMkZGlzcGF0Y2giLCJwcm9wcyIsImluaXQiLCJ1cGRhdGUiLCJzdWJzY3JpcHRpb24iLCJyZWVudGVyZWQiLCJidWZmZXIiLCJjdXJyZW50TW9kZWwiLCJfdXNlU3RhdGUiLCJ1c2VTdGF0ZSIsIl91c2VTdGF0ZTIiLCJtb2RlbCIsInNldE1vZGVsIiwicHJvcHNSZWYiLCJ1c2VSZWYiLCJpc01vdW50ZWRSZWYiLCJ1c2VFZmZlY3QiLCJjdXJyZW50IiwiaW5pdGlhbGl6ZWRNb2RlbCIsImZha2VPcHRpb25zIiwiZ2V0RmFrZU9wdGlvbnNPbmNlIiwiZGlzcGF0Y2giLCJ1c2VDYWxsYmFjayIsIm1zZyIsIm5leHRNc2ciLCJtb2RpZmllZCIsImxvZ01lc3NhZ2UiLCJfY2FsbFVwZGF0ZSIsImNhbGxVcGRhdGUiLCJfY2FsbFVwZGF0ZTIiLCJuZXdNb2RlbCIsImNvbW1hbmRzIiwibW9kZWxIYXNDaGFuZ2VkIiwiZXhlY0NtZCIsImNvbmNhdCIsInNoaWZ0IiwicHJldk1vZGVsIiwiX1NlcnZpY2VzJGxvZ2dlciIsInVwZGF0ZWRNb2RlbCIsIlNlcnZpY2VzIiwibG9nZ2VyIiwiZGVidWciLCJfU2VydmljZXMkbG9nZ2VyMiIsIl9yZWYyIiwiX3JlZjMiLCJpbml0TW9kZWwiLCJpbml0Q29tbWFuZHMiLCJfc3Vic2NyaXB0aW9uIiwiX3N1YnNjcmlwdGlvbjIiLCJzdWJDbWQiLCJkZXN0cnVjdG9yIiwiY2FsbFVwZGF0ZU1hcCIsInVwZGF0ZU1hcCIsIm1zZ05hbWUiLCJ1cGRhdGVGbiJdLCJzb3VyY2VzIjpbIi4uL3NyYy91c2VFbG1pc2gudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgcmVhY3QtaG9va3MvZXhoYXVzdGl2ZS1kZXBzICovXG5pbXBvcnQgeyB1c2VDYWxsYmFjaywgdXNlRWZmZWN0LCB1c2VSZWYsIHVzZVN0YXRlIH0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgeyBleGVjQ21kLCBsb2dNZXNzYWdlLCBtb2RlbEhhc0NoYW5nZWQgfSBmcm9tIFwiLi9Db21tb25cIjtcbmltcG9ydCB7IFNlcnZpY2VzIH0gZnJvbSBcIi4vSW5pdFwiO1xuaW1wb3J0IHsgZ2V0RmFrZU9wdGlvbnNPbmNlIH0gZnJvbSBcIi4vVGVzdGluZy9mYWtlT3B0aW9uc1wiO1xuaW1wb3J0IHsgQ21kLCBEaXNwYXRjaCwgSW5pdEZ1bmN0aW9uLCBNZXNzYWdlLCBOdWxsYWJsZSwgVXBkYXRlRnVuY3Rpb24sIFVwZGF0ZU1hcCwgVXBkYXRlUmV0dXJuVHlwZSB9IGZyb20gXCIuL1R5cGVzXCI7XG5cbi8qKlxuICogVGhlIHJldHVybiB0eXBlIG9mIHRoZSBgc3Vic2NyaXB0aW9uYCBmdW5jdGlvbi5cbiAqIEB0ZW1wbGF0ZSBUTWVzc2FnZSBUaGUgdHlwZSBvZiB0aGUgbWVzc2FnZXMgZGlzY3JpbWluYXRlZCB1bmlvbi5cbiAqL1xudHlwZSBTdWJzY3JpcHRpb25SZXN1bHQ8VE1lc3NhZ2U+ID0gW0NtZDxUTWVzc2FnZT4sICgoKSA9PiB2b2lkKT9dO1xudHlwZSBTdWJzY3JpcHRpb248VFByb3BzLCBUTW9kZWwsIFRNZXNzYWdlPiA9IChtb2RlbDogVE1vZGVsLCBwcm9wczogVFByb3BzKSA9PiBTdWJzY3JpcHRpb25SZXN1bHQ8VE1lc3NhZ2U+O1xuXG4vKipcbiAqIE9wdGlvbnMgZm9yIHRoZSBgdXNlRWxtaXNoYCBob29rLlxuICogQGludGVyZmFjZSBVc2VFbG1pc2hPcHRpb25zXG4gKiBAdGVtcGxhdGUgVFByb3BzIFRoZSB0eXBlIG9mIHRoZSBwcm9wcy5cbiAqIEB0ZW1wbGF0ZSBUTW9kZWwgVGhlIHR5cGUgb2YgdGhlIG1vZGVsLlxuICogQHRlbXBsYXRlIFRNZXNzYWdlIFRoZSB0eXBlIG9mIHRoZSBtZXNzYWdlcyBkaXNjcmltaW5hdGVkIHVuaW9uLlxuICovXG5pbnRlcmZhY2UgVXNlRWxtaXNoT3B0aW9uczxUUHJvcHMsIFRNb2RlbCwgVE1lc3NhZ2UgZXh0ZW5kcyBNZXNzYWdlPiB7XG4gICAgLyoqXG4gICAgICogVGhlIG5hbWUgb2YgdGhlIGNvbXBvbmVudC4gVGhpcyBpcyB1c2VkIGZvciBsb2dnaW5nIG9ubHkuXG4gICAgICogQHR5cGUge3N0cmluZ31cbiAgICAgKi9cbiAgICBuYW1lOiBzdHJpbmcsXG4gICAgLyoqXG4gICAgICogVGhlIHByb3BzIHBhc3NlZCB0byB0aGUgY29tcG9uZW50LlxuICAgICAqIEB0eXBlIHtUUHJvcHN9XG4gICAgICovXG4gICAgcHJvcHM6IFRQcm9wcyxcbiAgICAvKipcbiAgICAgKiBUaGUgZnVuY3Rpb24gdG8gaW5pdGlhbGl6ZSB0aGUgY29tcG9uZW50cyBtb2RlbC4gVGhpcyBmdW5jdGlvbiBpcyBvbmx5IGNhbGxlZCBvbmNlLlxuICAgICAqIEB0eXBlIHtJbml0RnVuY3Rpb248VFByb3BzLCBUTW9kZWwsIFRNZXNzYWdlPn1cbiAgICAgKi9cbiAgICBpbml0OiBJbml0RnVuY3Rpb248VFByb3BzLCBUTW9kZWwsIFRNZXNzYWdlPixcbiAgICAvKipcbiAgICAgKiBUaGUgYHVwZGF0ZWAgZnVuY3Rpb24gb3IgdXBkYXRlIG1hcCBvYmplY3QuXG4gICAgICogQHR5cGUgeyhVcGRhdGVGdW5jdGlvbjxUUHJvcHMsIFRNb2RlbCwgVE1lc3NhZ2U+IHwgVXBkYXRlTWFwPFRQcm9wcywgVE1vZGVsLCBUTWVzc2FnZT4pfVxuICAgICAqL1xuICAgIHVwZGF0ZTogVXBkYXRlRnVuY3Rpb248VFByb3BzLCBUTW9kZWwsIFRNZXNzYWdlPiB8IFVwZGF0ZU1hcDxUUHJvcHMsIFRNb2RlbCwgVE1lc3NhZ2U+LFxuICAgIC8qKlxuICAgICAqIFRoZSBvcHRpb25hbCBgc3Vic2NyaXB0aW9uYCBmdW5jdGlvbi4gVGhpcyBmdW5jdGlvbiBpcyBvbmx5IGNhbGxlZCBvbmNlLlxuICAgICAqIEB0eXBlIHsoVXBkYXRlRnVuY3Rpb248VFByb3BzLCBUTW9kZWwsIFRNZXNzYWdlPiB8IFVwZGF0ZU1hcDxUUHJvcHMsIFRNb2RlbCwgVE1lc3NhZ2U+KX1cbiAgICAgKi9cbiAgICBzdWJzY3JpcHRpb24/OiBTdWJzY3JpcHRpb248VFByb3BzLCBUTW9kZWwsIFRNZXNzYWdlPixcbn1cblxuLyoqXG4gKiBIb29rIHRvIHVzZSB0aGUgRWxtIGFyY2hpdGVjdHVyZSBwYXR0ZXJuIGluIGEgZnVuY3Rpb24gY29tcG9uZW50LlxuICogQHBhcmFtIHtVc2VFbG1pc2hPcHRpb25zfSBvcHRpb25zIFRoZSBvcHRpb25zIHBhc3NlZCB0aGUgdGhlIGhvb2suXG4gKiBAcmV0dXJucyBBIHR1cGxlIGNvbnRhaW5pbmcgdGhlIGN1cnJlbnQgbW9kZWwgYW5kIHRoZSBkaXNwYXRjaGVyLlxuICogQGV4YW1wbGVcbiAqIGNvbnN0IFttb2RlbCwgZGlzcGF0Y2hdID0gdXNlRWxtaXNoKHsgcHJvcHMsIGluaXQsIHVwZGF0ZSwgbmFtZTogXCJNeUNvbXBvbmVudFwiIH0pO1xuICovXG5mdW5jdGlvbiB1c2VFbG1pc2g8VFByb3BzLCBUTW9kZWwsIFRNZXNzYWdlIGV4dGVuZHMgTWVzc2FnZT4gKHsgbmFtZSwgcHJvcHMsIGluaXQsIHVwZGF0ZSwgc3Vic2NyaXB0aW9uIH06IFVzZUVsbWlzaE9wdGlvbnM8VFByb3BzLCBUTW9kZWwsIFRNZXNzYWdlPik6IFtUTW9kZWwsIERpc3BhdGNoPFRNZXNzYWdlPl0ge1xuICAgIGxldCByZWVudGVyZWQgPSBmYWxzZTtcbiAgICBjb25zdCBidWZmZXI6IFRNZXNzYWdlIFtdID0gW107XG4gICAgbGV0IGN1cnJlbnRNb2RlbDogUGFydGlhbDxUTW9kZWw+ID0ge307XG5cbiAgICBjb25zdCBbbW9kZWwsIHNldE1vZGVsXSA9IHVzZVN0YXRlPE51bGxhYmxlPFRNb2RlbD4+KG51bGwpO1xuICAgIGNvbnN0IHByb3BzUmVmID0gdXNlUmVmKHByb3BzKTtcbiAgICBjb25zdCBpc01vdW50ZWRSZWYgPSB1c2VSZWYodHJ1ZSk7XG5cbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICBpc01vdW50ZWRSZWYuY3VycmVudCA9IHRydWU7XG5cbiAgICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgICAgIGlzTW91bnRlZFJlZi5jdXJyZW50ID0gZmFsc2U7XG4gICAgICAgIH07XG4gICAgfSwgW10pO1xuXG4gICAgbGV0IGluaXRpYWxpemVkTW9kZWwgPSBtb2RlbDtcblxuICAgIGlmIChwcm9wc1JlZi5jdXJyZW50ICE9PSBwcm9wcykge1xuICAgICAgICBwcm9wc1JlZi5jdXJyZW50ID0gcHJvcHM7XG4gICAgfVxuXG4gICAgY29uc3QgZmFrZU9wdGlvbnMgPSBnZXRGYWtlT3B0aW9uc09uY2UoKTtcbiAgICBjb25zdCBkaXNwYXRjaCA9IHVzZUNhbGxiYWNrKGZha2VPcHRpb25zPy5kaXNwYXRjaCA/PyAoKG1zZzogVE1lc3NhZ2UpOiB2b2lkID0+IHtcbiAgICAgICAgaWYgKCFpbml0aWFsaXplZE1vZGVsKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAocmVlbnRlcmVkKSB7XG4gICAgICAgICAgICBidWZmZXIucHVzaChtc2cpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmVlbnRlcmVkID0gdHJ1ZTtcblxuICAgICAgICAgICAgbGV0IG5leHRNc2c6IFRNZXNzYWdlIHwgdW5kZWZpbmVkID0gbXNnO1xuICAgICAgICAgICAgbGV0IG1vZGlmaWVkID0gZmFsc2U7XG5cbiAgICAgICAgICAgIHdoaWxlIChuZXh0TXNnKSB7XG4gICAgICAgICAgICAgICAgbG9nTWVzc2FnZShuYW1lLCBuZXh0TXNnKTtcblxuICAgICAgICAgICAgICAgIGNvbnN0IFtuZXdNb2RlbCwgLi4uY29tbWFuZHNdID0gY2FsbFVwZGF0ZSh1cGRhdGUsIG5leHRNc2csIHsgLi4uaW5pdGlhbGl6ZWRNb2RlbCwgLi4uY3VycmVudE1vZGVsIH0sIHByb3BzUmVmLmN1cnJlbnQpO1xuXG4gICAgICAgICAgICAgICAgaWYgKG1vZGVsSGFzQ2hhbmdlZChjdXJyZW50TW9kZWwsIG5ld01vZGVsKSkge1xuICAgICAgICAgICAgICAgICAgICBjdXJyZW50TW9kZWwgPSB7IC4uLmN1cnJlbnRNb2RlbCwgLi4ubmV3TW9kZWwgfTtcblxuICAgICAgICAgICAgICAgICAgICBtb2RpZmllZCA9IHRydWU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgZXhlY0NtZChkaXNwYXRjaCwgLi4uY29tbWFuZHMpO1xuXG4gICAgICAgICAgICAgICAgbmV4dE1zZyA9IGJ1ZmZlci5zaGlmdCgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmVlbnRlcmVkID0gZmFsc2U7XG5cbiAgICAgICAgICAgIGlmIChpc01vdW50ZWRSZWYuY3VycmVudCAmJiBtb2RpZmllZCkge1xuICAgICAgICAgICAgICAgIHNldE1vZGVsKHByZXZNb2RlbCA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHVwZGF0ZWRNb2RlbCA9IHsgLi4ucHJldk1vZGVsIGFzIFRNb2RlbCwgLi4uY3VycmVudE1vZGVsIH07XG5cbiAgICAgICAgICAgICAgICAgICAgU2VydmljZXMubG9nZ2VyPy5kZWJ1ZyhcIlVwZGF0ZSBtb2RlbCBmb3JcIiwgbmFtZSwgdXBkYXRlZE1vZGVsKTtcblxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdXBkYXRlZE1vZGVsO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfSksIFtdKTtcblxuICAgIGlmICghaW5pdGlhbGl6ZWRNb2RlbCkge1xuICAgICAgICBjb25zdCBbaW5pdE1vZGVsLCAuLi5pbml0Q29tbWFuZHNdID0gZmFrZU9wdGlvbnM/Lm1vZGVsID8gW2Zha2VPcHRpb25zLm1vZGVsIGFzIFRNb2RlbF0gOiBpbml0KHByb3BzKTtcblxuICAgICAgICBpbml0aWFsaXplZE1vZGVsID0gaW5pdE1vZGVsO1xuICAgICAgICBzZXRNb2RlbChpbml0aWFsaXplZE1vZGVsKTtcblxuICAgICAgICBTZXJ2aWNlcy5sb2dnZXI/LmRlYnVnKFwiSW5pdGlhbCBtb2RlbCBmb3JcIiwgbmFtZSwgaW5pdGlhbGl6ZWRNb2RlbCk7XG5cbiAgICAgICAgZXhlY0NtZChkaXNwYXRjaCwgLi4uaW5pdENvbW1hbmRzKTtcbiAgICB9XG5cbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICBpZiAoc3Vic2NyaXB0aW9uKSB7XG4gICAgICAgICAgICBjb25zdCBbc3ViQ21kLCBkZXN0cnVjdG9yXSA9IHN1YnNjcmlwdGlvbihpbml0aWFsaXplZE1vZGVsIGFzIFRNb2RlbCwgcHJvcHMpO1xuXG4gICAgICAgICAgICBleGVjQ21kKGRpc3BhdGNoLCBzdWJDbWQpO1xuXG4gICAgICAgICAgICBpZiAoZGVzdHJ1Y3Rvcikge1xuICAgICAgICAgICAgICAgIHJldHVybiBkZXN0cnVjdG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfSwgW10pO1xuXG4gICAgcmV0dXJuIFtpbml0aWFsaXplZE1vZGVsLCBkaXNwYXRjaF07XG59XG5cbmZ1bmN0aW9uIGNhbGxVcGRhdGU8VFByb3BzLCBUTW9kZWwsIFRNZXNzYWdlIGV4dGVuZHMgTWVzc2FnZT4gKHVwZGF0ZTogVXBkYXRlRnVuY3Rpb248VFByb3BzLCBUTW9kZWwsIFRNZXNzYWdlPiB8IFVwZGF0ZU1hcDxUUHJvcHMsIFRNb2RlbCwgVE1lc3NhZ2U+LCBtc2c6IFRNZXNzYWdlLCBtb2RlbDogVE1vZGVsLCBwcm9wczogVFByb3BzKTogVXBkYXRlUmV0dXJuVHlwZTxUTW9kZWwsIFRNZXNzYWdlPiB7XG4gICAgaWYgKHR5cGVvZiB1cGRhdGUgPT09IFwiZnVuY3Rpb25cIikge1xuICAgICAgICByZXR1cm4gdXBkYXRlKG1vZGVsLCBtc2csIHByb3BzKTtcbiAgICB9XG5cbiAgICByZXR1cm4gY2FsbFVwZGF0ZU1hcCh1cGRhdGUsIG1zZywgbW9kZWwsIHByb3BzKTtcbn1cblxuZnVuY3Rpb24gY2FsbFVwZGF0ZU1hcDxUUHJvcHMsIFRNb2RlbCwgVE1lc3NhZ2UgZXh0ZW5kcyBNZXNzYWdlPiAodXBkYXRlTWFwOiBVcGRhdGVNYXA8VFByb3BzLCBUTW9kZWwsIFRNZXNzYWdlPiwgbXNnOiBUTWVzc2FnZSwgbW9kZWw6IFRNb2RlbCwgcHJvcHM6IFRQcm9wcyk6IFVwZGF0ZVJldHVyblR5cGU8VE1vZGVsLCBUTWVzc2FnZT4ge1xuICAgIGNvbnN0IG1zZ05hbWU6IFRNZXNzYWdlW1wibmFtZVwiXSA9IG1zZy5uYW1lO1xuICAgIGNvbnN0IHVwZGF0ZUZuID0gdXBkYXRlTWFwW21zZ05hbWVdIGFzIChtc2c6IFRNZXNzYWdlLCBtb2RlbDogVE1vZGVsLCBwcm9wczogVFByb3BzKSA9PiBVcGRhdGVSZXR1cm5UeXBlPFRNb2RlbCwgVE1lc3NhZ2U+O1xuXG4gICAgcmV0dXJuIHVwZGF0ZUZuKG1zZywgbW9kZWwsIHByb3BzKTtcbn1cblxuZXhwb3J0IHR5cGUge1xuICAgIFN1YnNjcmlwdGlvblJlc3VsdCxcbn07XG5cbmV4cG9ydCB7XG4gICAgdXNlRWxtaXNoLFxuICAgIGNhbGxVcGRhdGUsXG4gICAgY2FsbFVwZGF0ZU1hcCxcbn07Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFDQSxJQUFBQSxNQUFBLEdBQUFDLE9BQUE7QUFDQSxJQUFBQyxPQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSxLQUFBLEdBQUFGLE9BQUE7QUFDQSxJQUFBRyxZQUFBLEdBQUFILE9BQUE7QUFBMkQsU0FBQUksbUJBQUFDLEdBQUEsV0FBQUMsa0JBQUEsQ0FBQUQsR0FBQSxLQUFBRSxnQkFBQSxDQUFBRixHQUFBLEtBQUFHLDJCQUFBLENBQUFILEdBQUEsS0FBQUksa0JBQUE7QUFBQSxTQUFBQSxtQkFBQSxjQUFBQyxTQUFBO0FBQUEsU0FBQUosbUJBQUFELEdBQUEsUUFBQU0sS0FBQSxDQUFBQyxPQUFBLENBQUFQLEdBQUEsVUFBQVEsaUJBQUEsQ0FBQVIsR0FBQTtBQUFBLFNBQUFTLFFBQUFDLE1BQUEsRUFBQUMsY0FBQSxRQUFBQyxJQUFBLEdBQUFDLE1BQUEsQ0FBQUQsSUFBQSxDQUFBRixNQUFBLE9BQUFHLE1BQUEsQ0FBQUMscUJBQUEsUUFBQUMsT0FBQSxHQUFBRixNQUFBLENBQUFDLHFCQUFBLENBQUFKLE1BQUEsR0FBQUMsY0FBQSxLQUFBSSxPQUFBLEdBQUFBLE9BQUEsQ0FBQUMsTUFBQSxXQUFBQyxHQUFBLFdBQUFKLE1BQUEsQ0FBQUssd0JBQUEsQ0FBQVIsTUFBQSxFQUFBTyxHQUFBLEVBQUFFLFVBQUEsT0FBQVAsSUFBQSxDQUFBUSxJQUFBLENBQUFDLEtBQUEsQ0FBQVQsSUFBQSxFQUFBRyxPQUFBLFlBQUFILElBQUE7QUFBQSxTQUFBVSxjQUFBQyxNQUFBLGFBQUFDLENBQUEsTUFBQUEsQ0FBQSxHQUFBQyxTQUFBLENBQUFDLE1BQUEsRUFBQUYsQ0FBQSxVQUFBRyxNQUFBLFdBQUFGLFNBQUEsQ0FBQUQsQ0FBQSxJQUFBQyxTQUFBLENBQUFELENBQUEsUUFBQUEsQ0FBQSxPQUFBZixPQUFBLENBQUFJLE1BQUEsQ0FBQWMsTUFBQSxPQUFBQyxPQUFBLFdBQUFDLEdBQUEsSUFBQUMsZUFBQSxDQUFBUCxNQUFBLEVBQUFNLEdBQUEsRUFBQUYsTUFBQSxDQUFBRSxHQUFBLFNBQUFoQixNQUFBLENBQUFrQix5QkFBQSxHQUFBbEIsTUFBQSxDQUFBbUIsZ0JBQUEsQ0FBQVQsTUFBQSxFQUFBVixNQUFBLENBQUFrQix5QkFBQSxDQUFBSixNQUFBLEtBQUFsQixPQUFBLENBQUFJLE1BQUEsQ0FBQWMsTUFBQSxHQUFBQyxPQUFBLFdBQUFDLEdBQUEsSUFBQWhCLE1BQUEsQ0FBQW9CLGNBQUEsQ0FBQVYsTUFBQSxFQUFBTSxHQUFBLEVBQUFoQixNQUFBLENBQUFLLHdCQUFBLENBQUFTLE1BQUEsRUFBQUUsR0FBQSxpQkFBQU4sTUFBQTtBQUFBLFNBQUFPLGdCQUFBSSxHQUFBLEVBQUFMLEdBQUEsRUFBQU0sS0FBQSxJQUFBTixHQUFBLEdBQUFPLGNBQUEsQ0FBQVAsR0FBQSxPQUFBQSxHQUFBLElBQUFLLEdBQUEsSUFBQXJCLE1BQUEsQ0FBQW9CLGNBQUEsQ0FBQUMsR0FBQSxFQUFBTCxHQUFBLElBQUFNLEtBQUEsRUFBQUEsS0FBQSxFQUFBaEIsVUFBQSxRQUFBa0IsWUFBQSxRQUFBQyxRQUFBLG9CQUFBSixHQUFBLENBQUFMLEdBQUEsSUFBQU0sS0FBQSxXQUFBRCxHQUFBO0FBQUEsU0FBQUUsZUFBQUcsR0FBQSxRQUFBVixHQUFBLEdBQUFXLFlBQUEsQ0FBQUQsR0FBQSxvQkFBQUUsT0FBQSxDQUFBWixHQUFBLGlCQUFBQSxHQUFBLEdBQUFhLE1BQUEsQ0FBQWIsR0FBQTtBQUFBLFNBQUFXLGFBQUFHLEtBQUEsRUFBQUMsSUFBQSxRQUFBSCxPQUFBLENBQUFFLEtBQUEsa0JBQUFBLEtBQUEsa0JBQUFBLEtBQUEsTUFBQUUsSUFBQSxHQUFBRixLQUFBLENBQUFHLE1BQUEsQ0FBQUMsV0FBQSxPQUFBRixJQUFBLEtBQUFHLFNBQUEsUUFBQUMsR0FBQSxHQUFBSixJQUFBLENBQUFLLElBQUEsQ0FBQVAsS0FBQSxFQUFBQyxJQUFBLG9CQUFBSCxPQUFBLENBQUFRLEdBQUEsdUJBQUFBLEdBQUEsWUFBQTVDLFNBQUEsNERBQUF1QyxJQUFBLGdCQUFBRixNQUFBLEdBQUFTLE1BQUEsRUFBQVIsS0FBQTtBQUFBLFNBQUFTLFNBQUFwRCxHQUFBLFdBQUFxRCxlQUFBLENBQUFyRCxHQUFBLEtBQUFFLGdCQUFBLENBQUFGLEdBQUEsS0FBQUcsMkJBQUEsQ0FBQUgsR0FBQSxLQUFBc0QsZ0JBQUE7QUFBQSxTQUFBcEQsaUJBQUFxRCxJQUFBLGVBQUFULE1BQUEsb0JBQUFTLElBQUEsQ0FBQVQsTUFBQSxDQUFBVSxRQUFBLGFBQUFELElBQUEsK0JBQUFqRCxLQUFBLENBQUFtRCxJQUFBLENBQUFGLElBQUE7QUFBQSxTQUFBRyxlQUFBMUQsR0FBQSxFQUFBd0IsQ0FBQSxXQUFBNkIsZUFBQSxDQUFBckQsR0FBQSxLQUFBMkQscUJBQUEsQ0FBQTNELEdBQUEsRUFBQXdCLENBQUEsS0FBQXJCLDJCQUFBLENBQUFILEdBQUEsRUFBQXdCLENBQUEsS0FBQThCLGdCQUFBO0FBQUEsU0FBQUEsaUJBQUEsY0FBQWpELFNBQUE7QUFBQSxTQUFBRiw0QkFBQXlELENBQUEsRUFBQUMsTUFBQSxTQUFBRCxDQUFBLHFCQUFBQSxDQUFBLHNCQUFBcEQsaUJBQUEsQ0FBQW9ELENBQUEsRUFBQUMsTUFBQSxPQUFBQyxDQUFBLEdBQUFqRCxNQUFBLENBQUFrRCxTQUFBLENBQUFDLFFBQUEsQ0FBQWQsSUFBQSxDQUFBVSxDQUFBLEVBQUFLLEtBQUEsYUFBQUgsQ0FBQSxpQkFBQUYsQ0FBQSxDQUFBTSxXQUFBLEVBQUFKLENBQUEsR0FBQUYsQ0FBQSxDQUFBTSxXQUFBLENBQUFDLElBQUEsTUFBQUwsQ0FBQSxjQUFBQSxDQUFBLG1CQUFBeEQsS0FBQSxDQUFBbUQsSUFBQSxDQUFBRyxDQUFBLE9BQUFFLENBQUEsK0RBQUFNLElBQUEsQ0FBQU4sQ0FBQSxVQUFBdEQsaUJBQUEsQ0FBQW9ELENBQUEsRUFBQUMsTUFBQTtBQUFBLFNBQUFyRCxrQkFBQVIsR0FBQSxFQUFBcUUsR0FBQSxRQUFBQSxHQUFBLFlBQUFBLEdBQUEsR0FBQXJFLEdBQUEsQ0FBQTBCLE1BQUEsRUFBQTJDLEdBQUEsR0FBQXJFLEdBQUEsQ0FBQTBCLE1BQUEsV0FBQUYsQ0FBQSxNQUFBOEMsSUFBQSxPQUFBaEUsS0FBQSxDQUFBK0QsR0FBQSxHQUFBN0MsQ0FBQSxHQUFBNkMsR0FBQSxFQUFBN0MsQ0FBQSxJQUFBOEMsSUFBQSxDQUFBOUMsQ0FBQSxJQUFBeEIsR0FBQSxDQUFBd0IsQ0FBQSxVQUFBOEMsSUFBQTtBQUFBLFNBQUFYLHNCQUFBM0QsR0FBQSxFQUFBd0IsQ0FBQSxRQUFBK0MsRUFBQSxXQUFBdkUsR0FBQSxnQ0FBQThDLE1BQUEsSUFBQTlDLEdBQUEsQ0FBQThDLE1BQUEsQ0FBQVUsUUFBQSxLQUFBeEQsR0FBQSw0QkFBQXVFLEVBQUEsUUFBQUMsRUFBQSxFQUFBQyxFQUFBLEVBQUFDLEVBQUEsRUFBQUMsRUFBQSxFQUFBQyxJQUFBLE9BQUFDLEVBQUEsT0FBQUMsRUFBQSxpQkFBQUosRUFBQSxJQUFBSCxFQUFBLEdBQUFBLEVBQUEsQ0FBQXJCLElBQUEsQ0FBQWxELEdBQUEsR0FBQStFLElBQUEsUUFBQXZELENBQUEsUUFBQVgsTUFBQSxDQUFBMEQsRUFBQSxNQUFBQSxFQUFBLFVBQUFNLEVBQUEsdUJBQUFBLEVBQUEsSUFBQUwsRUFBQSxHQUFBRSxFQUFBLENBQUF4QixJQUFBLENBQUFxQixFQUFBLEdBQUFTLElBQUEsTUFBQUosSUFBQSxDQUFBeEQsSUFBQSxDQUFBb0QsRUFBQSxDQUFBckMsS0FBQSxHQUFBeUMsSUFBQSxDQUFBbEQsTUFBQSxLQUFBRixDQUFBLEdBQUFxRCxFQUFBLGlCQUFBSSxHQUFBLElBQUFILEVBQUEsT0FBQUwsRUFBQSxHQUFBUSxHQUFBLHlCQUFBSixFQUFBLFlBQUFOLEVBQUEsZUFBQUksRUFBQSxHQUFBSixFQUFBLGNBQUExRCxNQUFBLENBQUE4RCxFQUFBLE1BQUFBLEVBQUEsMkJBQUFHLEVBQUEsUUFBQUwsRUFBQSxhQUFBRyxJQUFBO0FBQUEsU0FBQXZCLGdCQUFBckQsR0FBQSxRQUFBTSxLQUFBLENBQUFDLE9BQUEsQ0FBQVAsR0FBQSxVQUFBQSxHQUFBLElBSjNEO0FBT0E7QUFDQTtBQUNBO0FBQ0E7O0FBSUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBNkJBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBU2tGLFNBQVNBLENBQUFDLElBQUEsRUFBbUs7RUFBQSxJQUFBQyxxQkFBQTtFQUFBLElBQXJIakIsSUFBSSxHQUFBZ0IsSUFBQSxDQUFKaEIsSUFBSTtJQUFFa0IsS0FBSyxHQUFBRixJQUFBLENBQUxFLEtBQUs7SUFBRUMsSUFBSSxHQUFBSCxJQUFBLENBQUpHLElBQUk7SUFBRUMsTUFBTSxHQUFBSixJQUFBLENBQU5JLE1BQU07SUFBRUMsWUFBWSxHQUFBTCxJQUFBLENBQVpLLFlBQVk7RUFDbkcsSUFBSUMsU0FBUyxHQUFHLEtBQUs7RUFDckIsSUFBTUMsTUFBbUIsR0FBRyxFQUFFO0VBQzlCLElBQUlDLFlBQTZCLEdBQUcsQ0FBQyxDQUFDO0VBRXRDLElBQUFDLFNBQUEsR0FBMEIsSUFBQUMsZUFBUSxFQUFtQixJQUFJLENBQUM7SUFBQUMsVUFBQSxHQUFBcEMsY0FBQSxDQUFBa0MsU0FBQTtJQUFuREcsS0FBSyxHQUFBRCxVQUFBO0lBQUVFLFFBQVEsR0FBQUYsVUFBQTtFQUN0QixJQUFNRyxRQUFRLEdBQUcsSUFBQUMsYUFBTSxFQUFDYixLQUFLLENBQUM7RUFDOUIsSUFBTWMsWUFBWSxHQUFHLElBQUFELGFBQU0sRUFBQyxJQUFJLENBQUM7RUFFakMsSUFBQUUsZ0JBQVMsRUFBQyxZQUFNO0lBQ1pELFlBQVksQ0FBQ0UsT0FBTyxHQUFHLElBQUk7SUFFM0IsT0FBTyxZQUFNO01BQ1RGLFlBQVksQ0FBQ0UsT0FBTyxHQUFHLEtBQUs7SUFDaEMsQ0FBQztFQUNMLENBQUMsRUFBRSxFQUFFLENBQUM7RUFFTixJQUFJQyxnQkFBZ0IsR0FBR1AsS0FBSztFQUU1QixJQUFJRSxRQUFRLENBQUNJLE9BQU8sS0FBS2hCLEtBQUssRUFBRTtJQUM1QlksUUFBUSxDQUFDSSxPQUFPLEdBQUdoQixLQUFLO0VBQzVCO0VBRUEsSUFBTWtCLFdBQVcsR0FBRyxJQUFBQywrQkFBa0IsR0FBRTtFQUN4QyxJQUFNQyxRQUFRLEdBQUcsSUFBQUMsa0JBQVcsR0FBQXRCLHFCQUFBLEdBQUNtQixXQUFXLGFBQVhBLFdBQVcsdUJBQVhBLFdBQVcsQ0FBRUUsUUFBUSxjQUFBckIscUJBQUEsY0FBQUEscUJBQUEsR0FBSyxVQUFDdUIsR0FBYSxFQUFXO0lBQzVFLElBQUksQ0FBQ0wsZ0JBQWdCLEVBQUU7TUFDbkI7SUFDSjtJQUVBLElBQUliLFNBQVMsRUFBRTtNQUNYQyxNQUFNLENBQUN0RSxJQUFJLENBQUN1RixHQUFHLENBQUM7SUFDcEIsQ0FBQyxNQUFNO01BQ0hsQixTQUFTLEdBQUcsSUFBSTtNQUVoQixJQUFJbUIsT0FBNkIsR0FBR0QsR0FBRztNQUN2QyxJQUFJRSxRQUFRLEdBQUcsS0FBSztNQUVwQixPQUFPRCxPQUFPLEVBQUU7UUFDWixJQUFBRSxrQkFBVSxFQUFDM0MsSUFBSSxFQUFFeUMsT0FBTyxDQUFDO1FBRXpCLElBQUFHLFdBQUEsR0FBZ0NDLFVBQVUsQ0FBQ3pCLE1BQU0sRUFBRXFCLE9BQU8sRUFBQXRGLGFBQUEsQ0FBQUEsYUFBQSxLQUFPZ0YsZ0JBQWdCLEdBQUtYLFlBQVksR0FBSU0sUUFBUSxDQUFDSSxPQUFPLENBQUM7VUFBQVksWUFBQSxHQUFBN0QsUUFBQSxDQUFBMkQsV0FBQTtVQUFoSEcsUUFBUSxHQUFBRCxZQUFBO1VBQUtFLFFBQVEsR0FBQUYsWUFBQSxDQUFBaEQsS0FBQTtRQUU1QixJQUFJLElBQUFtRCx1QkFBZSxFQUFDekIsWUFBWSxFQUFFdUIsUUFBUSxDQUFDLEVBQUU7VUFDekN2QixZQUFZLEdBQUFyRSxhQUFBLENBQUFBLGFBQUEsS0FBUXFFLFlBQVksR0FBS3VCLFFBQVEsQ0FBRTtVQUUvQ0wsUUFBUSxHQUFHLElBQUk7UUFDbkI7UUFFQVEsZUFBTyxDQUFBaEcsS0FBQSxVQUFDb0YsUUFBUSxFQUFBYSxNQUFBLENBQUF2SCxrQkFBQSxDQUFLb0gsUUFBUSxHQUFDO1FBRTlCUCxPQUFPLEdBQUdsQixNQUFNLENBQUM2QixLQUFLLEVBQUU7TUFDNUI7TUFDQTlCLFNBQVMsR0FBRyxLQUFLO01BRWpCLElBQUlVLFlBQVksQ0FBQ0UsT0FBTyxJQUFJUSxRQUFRLEVBQUU7UUFDbENiLFFBQVEsQ0FBQyxVQUFBd0IsU0FBUyxFQUFJO1VBQUEsSUFBQUMsZ0JBQUE7VUFDbEIsSUFBTUMsWUFBWSxHQUFBcEcsYUFBQSxDQUFBQSxhQUFBLEtBQVFrRyxTQUFTLEdBQWU3QixZQUFZLENBQUU7VUFFaEUsQ0FBQThCLGdCQUFBLEdBQUFFLGNBQVEsQ0FBQ0MsTUFBTSxjQUFBSCxnQkFBQSx1QkFBZkEsZ0JBQUEsQ0FBaUJJLEtBQUssQ0FBQyxrQkFBa0IsRUFBRTFELElBQUksRUFBRXVELFlBQVksQ0FBQztVQUU5RCxPQUFPQSxZQUFZO1FBQ3ZCLENBQUMsQ0FBQztNQUNOO0lBQ0o7RUFDSixDQUFDLEVBQUcsRUFBRSxDQUFDO0VBRVAsSUFBSSxDQUFDcEIsZ0JBQWdCLEVBQUU7SUFBQSxJQUFBd0IsaUJBQUE7SUFDbkIsSUFBQUMsS0FBQSxHQUFxQ3hCLFdBQVcsYUFBWEEsV0FBVyxlQUFYQSxXQUFXLENBQUVSLEtBQUssR0FBRyxDQUFDUSxXQUFXLENBQUNSLEtBQUssQ0FBVyxHQUFHVCxJQUFJLENBQUNELEtBQUssQ0FBQztNQUFBMkMsS0FBQSxHQUFBNUUsUUFBQSxDQUFBMkUsS0FBQTtNQUE5RkUsU0FBUyxHQUFBRCxLQUFBO01BQUtFLFlBQVksR0FBQUYsS0FBQSxDQUFBL0QsS0FBQTtJQUVqQ3FDLGdCQUFnQixHQUFHMkIsU0FBUztJQUM1QmpDLFFBQVEsQ0FBQ00sZ0JBQWdCLENBQUM7SUFFMUIsQ0FBQXdCLGlCQUFBLEdBQUFILGNBQVEsQ0FBQ0MsTUFBTSxjQUFBRSxpQkFBQSx1QkFBZkEsaUJBQUEsQ0FBaUJELEtBQUssQ0FBQyxtQkFBbUIsRUFBRTFELElBQUksRUFBRW1DLGdCQUFnQixDQUFDO0lBRW5FZSxlQUFPLENBQUFoRyxLQUFBLFVBQUNvRixRQUFRLEVBQUFhLE1BQUEsQ0FBQXZILGtCQUFBLENBQUttSSxZQUFZLEdBQUM7RUFDdEM7RUFFQSxJQUFBOUIsZ0JBQVMsRUFBQyxZQUFNO0lBQ1osSUFBSVosWUFBWSxFQUFFO01BQ2QsSUFBQTJDLGFBQUEsR0FBNkIzQyxZQUFZLENBQUNjLGdCQUFnQixFQUFZakIsS0FBSyxDQUFDO1FBQUErQyxjQUFBLEdBQUExRSxjQUFBLENBQUF5RSxhQUFBO1FBQXJFRSxNQUFNLEdBQUFELGNBQUE7UUFBRUUsVUFBVSxHQUFBRixjQUFBO01BRXpCLElBQUFmLGVBQU8sRUFBQ1osUUFBUSxFQUFFNEIsTUFBTSxDQUFDO01BRXpCLElBQUlDLFVBQVUsRUFBRTtRQUNaLE9BQU9BLFVBQVU7TUFDckI7SUFDSjtFQUNKLENBQUMsRUFBRSxFQUFFLENBQUM7RUFFTixPQUFPLENBQUNoQyxnQkFBZ0IsRUFBRUcsUUFBUSxDQUFDO0FBQ3ZDO0FBRUEsU0FBU08sVUFBVUEsQ0FBNEN6QixNQUFzRixFQUFFb0IsR0FBYSxFQUFFWixLQUFhLEVBQUVWLEtBQWEsRUFBc0M7RUFDcE8sSUFBSSxPQUFPRSxNQUFNLEtBQUssVUFBVSxFQUFFO0lBQzlCLE9BQU9BLE1BQU0sQ0FBQ1EsS0FBSyxFQUFFWSxHQUFHLEVBQUV0QixLQUFLLENBQUM7RUFDcEM7RUFFQSxPQUFPa0QsYUFBYSxDQUFDaEQsTUFBTSxFQUFFb0IsR0FBRyxFQUFFWixLQUFLLEVBQUVWLEtBQUssQ0FBQztBQUNuRDtBQUVBLFNBQVNrRCxhQUFhQSxDQUE0Q0MsU0FBOEMsRUFBRTdCLEdBQWEsRUFBRVosS0FBYSxFQUFFVixLQUFhLEVBQXNDO0VBQy9MLElBQU1vRCxPQUF5QixHQUFHOUIsR0FBRyxDQUFDeEMsSUFBSTtFQUMxQyxJQUFNdUUsUUFBUSxHQUFHRixTQUFTLENBQUNDLE9BQU8sQ0FBd0Y7RUFFMUgsT0FBT0MsUUFBUSxDQUFDL0IsR0FBRyxFQUFFWixLQUFLLEVBQUVWLEtBQUssQ0FBQztBQUN0QyJ9
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-elmish",
3
- "version": "6.4.0",
3
+ "version": "6.5.0-beta.1",
4
4
  "description": "Elmish for React using Typescript",
5
5
  "author": "atheck",
6
6
  "license": "MIT",