@commercetools-uikit/localized-money-input 19.20.0 → 19.21.0

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.
@@ -9,6 +9,7 @@ var _Object$getOwnPropertyDescriptors = require('@babel/runtime-corejs3/core-js-
9
9
  var _Object$defineProperties = require('@babel/runtime-corejs3/core-js-stable/object/define-properties');
10
10
  var _Object$defineProperty = require('@babel/runtime-corejs3/core-js-stable/object/define-property');
11
11
  var _slicedToArray = require('@babel/runtime-corejs3/helpers/slicedToArray');
12
+ var _objectWithoutProperties = require('@babel/runtime-corejs3/helpers/objectWithoutProperties');
12
13
  var _defineProperty = require('@babel/runtime-corejs3/helpers/defineProperty');
13
14
  var _pt = require('prop-types');
14
15
  var _filterInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/filter');
@@ -68,6 +69,7 @@ var messages = reactIntl.defineMessages({
68
69
  }
69
70
  });
70
71
 
72
+ const _excluded = ["horizontalConstraint"];
71
73
  function ownKeys(e, r) { var t = _Object$keys__default["default"](e); if (_Object$getOwnPropertySymbols__default["default"]) { var o = _Object$getOwnPropertySymbols__default["default"](e); r && (o = _filterInstanceProperty__default["default"](o).call(o, function (r) { return _Object$getOwnPropertyDescriptor__default["default"](e, r).enumerable; })), t.push.apply(t, o); } return t; }
72
74
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var _context2, _context3; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty__default["default"](_context2 = ownKeys(Object(t), !0)).call(_context2, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](e, _Object$getOwnPropertyDescriptors__default["default"](t)) : _forEachInstanceProperty__default["default"](_context3 = ownKeys(Object(t))).call(_context3, function (r) { _Object$defineProperty__default["default"](e, r, _Object$getOwnPropertyDescriptor__default["default"](t, r)); }); } return e; }
73
75
  function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
@@ -86,7 +88,7 @@ var _ref = process.env.NODE_ENV === "production" ? {
86
88
  } : {
87
89
  name: "1ysn02y-LocalizedInput",
88
90
  styles: "width:100%;position:relative;display:flex;label:LocalizedInput;",
89
- map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxvY2FsaXplZC1tb25leS1pbnB1dC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBcVBnQiIsImZpbGUiOiJsb2NhbGl6ZWQtbW9uZXktaW5wdXQudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdXNlQ2FsbGJhY2ssIHR5cGUgUmVhY3ROb2RlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgdXNlSW50bCB9IGZyb20gJ3JlYWN0LWludGwnO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xuaW1wb3J0IHsgdXNlVG9nZ2xlU3RhdGUsIHVzZUZpZWxkSWQgfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9ob29rcyc7XG5pbXBvcnQgTW9uZXlJbnB1dCwge1xuICB0eXBlIFRDdXJyZW5jeUNvZGUsXG4gIHR5cGUgVE1vbmV5VmFsdWUsXG4gIHR5cGUgVFZhbHVlLFxufSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9tb25leS1pbnB1dCc7XG5pbXBvcnQgeyBFcnJvck1lc3NhZ2UsIFdhcm5pbmdNZXNzYWdlIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvbWVzc2FnZXMnO1xuaW1wb3J0IFN0YWNrIGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L3NwYWNpbmdzLXN0YWNrJztcbmltcG9ydCBDb25zdHJhaW50cyBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9jb25zdHJhaW50cyc7XG5pbXBvcnQgeyBDb2luc0ljb24gfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9pY29ucyc7XG5pbXBvcnQge1xuICBjcmVhdGVMb2NhbGl6ZWREYXRhQXR0cmlidXRlcyxcbiAgZ2V0SGFzRXJyb3JPblJlbWFpbmluZ0xhbmd1YWdlcyxcbiAgZ2V0SGFzV2FybmluZ09uUmVtYWluaW5nTGFuZ3VhZ2VzLFxuICBnZXRJZCxcbiAgZ2V0TmFtZSxcbn0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvbG9jYWxpemVkLXV0aWxzJztcbmltcG9ydCB7XG4gIGNyZWF0ZVNlcXVlbnRpYWxJZCxcbiAgZmlsdGVyRGF0YUF0dHJpYnV0ZXMsXG4gIHdhcm5pbmcsXG59IGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L3V0aWxzJztcbmltcG9ydCB7IExvY2FsaXplZElucHV0VG9nZ2xlIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvaW5wdXQtdXRpbHMnO1xuaW1wb3J0IG1lc3NhZ2VzIGZyb20gJy4vbWVzc2FnZXMnO1xuXG50eXBlIFRDdXN0b21FdmVudCA9IHtcbiAgdGFyZ2V0OiB7XG4gICAgaWQ/OiBzdHJpbmc7XG4gICAgbmFtZT86IHN0cmluZztcbiAgICB2YWx1ZT86IHN0cmluZyB8IHN0cmluZ1tdIHwgbnVsbDtcbiAgfTtcbiAgcGVyc2lzdD86ICgpID0+IHZvaWQ7XG59O1xuXG5leHBvcnQgdHlwZSBUTG9jYWxpemVkTW9uZXlJbnB1dFByb3BzID0ge1xuICAvKipcbiAgICogVXNlZCBhcyBIVE1MIGlkIHByb3BlcnR5LlxuICAgKi9cbiAgaWQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgcHJlZml4IHVzZWQgdG8gY3JlYXRlIGEgSFRNTCBgbmFtZWAgcHJvcGVydHkgZm9yIHRoZSBhbW91bnQgaW5wdXQgZmllbGQgKGAke25hbWV9LmFtb3VudGApLlxuICAgKi9cbiAgbmFtZT86IHN0cmluZztcbiAgLyoqXG4gICAqIHZhbHVlIG9mIHBvc3NpYmxlIGN1cnJlbmN5XG4gICAqIDxici8+XG4gICAqIHRoZSBpbnB1dCBkb2Vzbid0IGFjY2VwdCBhIFwiY3VycmVuY2llc1wiIHByb3AsIGluc3RlYWQgYWxsIHBvc3NpYmxlXG4gICAqIGN1cnJlbmNpZXMgaGF2ZSB0byBleGlzdCAod2l0aCBlbXB0eSBvciBmaWxsZWQgc3RyaW5ncykgb24gdGhlIHZhbHVlOlxuICAgKiB7IEVVUjoge2Ftb3VudDogJzEyLjAwJywgY3VycmVuY3lDb2RlOiAnRVVSJ30sIFVTRDoge2Ftb3VudDogJycsIGN1cnJlbmN5Q29kZTogJ1VTRCd9fVxuICAgKi9cbiAgdmFsdWU6IFJlY29yZDxzdHJpbmcsIFRWYWx1ZT47XG4gIC8qKlxuICAgKiBDYWxsZWQgd2l0aCB0aGUgZXZlbnQgb2YgdGhlIGlucHV0LlxuICAgKi9cbiAgb25DaGFuZ2U/OiAoZXZlbnQ6IFRDdXN0b21FdmVudCkgPT4gdm9pZDtcbiAgLyoqXG4gICAqIHRoZSBjdXJyZW50bHkgc2VsZWN0ZWQgY3VycmVuY3lcbiAgICovXG4gIHNlbGVjdGVkQ3VycmVuY3k6IHN0cmluZztcbiAgLyoqXG4gICAqIENhbGxlZCB3aGVuIGlucHV0IGlzIGJsdXJyZWRcbiAgICovXG4gIG9uQmx1cj86IChldmVudDogVEN1c3RvbUV2ZW50KSA9PiB2b2lkO1xuICAvKipcbiAgICogQ2FsbGVkIHdoZW4gaW5wdXQgaXMgZm9jdXNlZFxuICAgKi9cbiAgb25Gb2N1cz86IChldmVudDogVEN1c3RvbUV2ZW50KSA9PiB2b2lkO1xuICAvKipcbiAgICogV2lsbCBoaWRlIHRoZSBjdXJyZW5jeSBleHBhbnNpb24gY29udHJvbHMgd2hlbiBzZXQgdG8gYHRydWVgLiBBbGwgY3VycmVuY2llcyB3aWxsIGJlIHNob3duIHdoZW4gc2V0IHRvIGB0cnVlYC5cbiAgICovXG4gIGhpZGVDdXJyZW5jeUV4cGFuc2lvbkNvbnRyb2xzPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIENvbnRyb2xzIHdoZXRoZXIgb25lIG9yIGFsbCBjdXJyZW5jaXJzIGFyZSB2aXNpYmxlIGJ5IGRlZmF1bHRcbiAgICovXG4gIGRlZmF1bHRFeHBhbmRDdXJyZW5jaWVzPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFVzZSB0aGlzIHByb3BlcnR5IHRvIHJlZHVjZSB0aGUgcGFkZGluZ3Mgb2YgdGhlIGNvbXBvbmVudCBmb3IgYSB1aSBjb21wYWN0IHZhcmlhbnRcbiAgICovXG4gIGlzQ29uZGVuc2VkPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEluZGljYXRlcyB0aGF0IHRoZSBpbnB1dCBjYW5ub3QgYmUgbW9kaWZpZWQgKGUuZyBub3QgYXV0aG9yaXplZCwgb3IgY2hhbmdlcyBjdXJyZW50bHkgc2F2aW5nKS5cbiAgICovXG4gIGlzRGlzYWJsZWQ/OiBib29sZWFuO1xuICAvKipcbiAgICogSW5kaWNhdGVzIHRoYXQgdGhlIGZpZWxkIGlzIGRpc3BsYXlpbmcgcmVhZC1vbmx5IGNvbnRlbnRcbiAgICovXG4gIGlzUmVhZE9ubHk/OiBib29sZWFuO1xuICAvKipcbiAgICogUGxhY2Vob2xkZXIgdGV4dCBmb3IgdGhlIGlucHV0XG4gICAqL1xuICBwbGFjZWhvbGRlcj86IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG4gIC8qKlxuICAgKiBIb3Jpem9udGFsIHNpemUgbGltaXQgb2YgdGhlIGlucHV0IGZpZWxkcy5cbiAgICovXG4gIGhvcml6b250YWxDb25zdHJhaW50PzpcbiAgICB8IDNcbiAgICB8IDRcbiAgICB8IDVcbiAgICB8IDZcbiAgICB8IDdcbiAgICB8IDhcbiAgICB8IDlcbiAgICB8IDEwXG4gICAgfCAxMVxuICAgIHwgMTJcbiAgICB8IDEzXG4gICAgfCAxNFxuICAgIHwgMTVcbiAgICB8IDE2XG4gICAgfCAnc2NhbGUnXG4gICAgfCAnYXV0byc7XG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgdGhhdCBpbnB1dCBoYXMgZXJyb3JzXG4gICAqL1xuICBoYXNFcnJvcj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBDb250cm9sIHRvIGluZGljYXRlIG9uIHRoZSBpbnB1dCBpZiB0aGVyZSBhcmUgdmFsdWVzIHRoYXQgYXJlIHBvdGVudGlhbGx5IGludmFsaWRcbiAgICovXG4gIGhhc1dhcm5pbmc/OiBib29sZWFuO1xuICAvKipcbiAgICogQSBtYXAgb2YgZXJyb3JzLiBFcnJvciBtZXNzYWdlcyBmb3Iga25vd24gZXJyb3JzIGFyZSByZW5kZXJlZCBhdXRvbWF0aWNhbGx5LlxuICAgKiA8YnI+XG4gICAqIFVua25vd24gZXJyb3JzIHdpbGwgYmUgZm9yd2FyZGVkIHRvIGByZW5kZXJFcnJvcmBcbiAgICovXG4gIGVycm9ycz86IFJlY29yZDxzdHJpbmcsIFJlYWN0Tm9kZT47XG4gIC8qKlxuICAgKiBBIG1hcCBvZiB3YXJuaW5ncy5cbiAgICovXG4gIHdhcm5pbmdzPzogUmVjb3JkPHN0cmluZywgUmVhY3ROb2RlPjtcbiAgLyoqXG4gICAqIFNob3dzIGhpZ2ggcHJlY2lzaW9uIGJhZGdlIGluIGNhc2UgY3VycmVudCB2YWx1ZSB1c2VzIGhpZ2ggcHJlY2lzaW9uLlxuICAgKi9cbiAgaGFzSGlnaFByZWNpc2lvbkJhZGdlPzogYm9vbGVhbjtcbn07XG5cbnR5cGUgVExvY2FsaXplZElucHV0UHJvcHMgPSB7XG4gIC8qKlxuICAgKiBVc2VkIGFzIEhUTUwgaWQgcHJvcGVydHkuXG4gICAqL1xuICBpZD86IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBwcmVmaXggdXNlZCB0byBjcmVhdGUgYSBIVE1MIGBuYW1lYCBwcm9wZXJ0eSBmb3IgdGhlIGFtb3VudCBpbnB1dCBmaWVsZCAoYCR7bmFtZX0uYW1vdW50YCkuXG4gICAqL1xuICBuYW1lPzogc3RyaW5nO1xuICAvKipcbiAgICogdmFsdWUgb2YgcG9zc2libGUgY3VycmVuY3lcbiAgICovXG4gIHZhbHVlOiBUVmFsdWU7XG4gIC8qKlxuICAgKiBDYWxsZWQgd2l0aCB0aGUgZXZlbnQgb2YgdGhlIGlucHV0LlxuICAgKi9cbiAgb25DaGFuZ2U/OiAoZXZlbnQ6IFRDdXN0b21FdmVudCkgPT4gdm9pZDtcbiAgLyoqXG4gICAqIENhbGxlZCB3aXRoIHRoZSBldmVudCBvZiB0aGUgaW5wdXQuXG4gICAqL1xuICBjdXJyZW5jeTogc3RyaW5nO1xuICAvKipcbiAgICogQ2FsbGVkIHdoZW4gaW5wdXQgaXMgYmx1cnJlZFxuICAgKi9cbiAgb25CbHVyPzogKGV2ZW50OiBUQ3VzdG9tRXZlbnQpID0+IHZvaWQ7XG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiBpbnB1dCBpcyBmb2N1c2VkXG4gICAqL1xuICBvbkZvY3VzPzogKGV2ZW50OiBUQ3VzdG9tRXZlbnQpID0+IHZvaWQ7XG4gIC8qKlxuICAgKiBVc2UgdGhpcyBwcm9wZXJ0eSB0byByZWR1Y2UgdGhlIHBhZGRpbmdzIG9mIHRoZSBjb21wb25lbnQgZm9yIGEgdWkgY29tcGFjdCB2YXJpYW50XG4gICAqL1xuICBpc0NvbmRlbnNlZD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgdGhhdCB0aGUgaW5wdXQgY2Fubm90IGJlIG1vZGlmaWVkIChlLmcgbm90IGF1dGhvcml6ZWQsIG9yIGNoYW5nZXMgY3VycmVudGx5IHNhdmluZykuXG4gICAqL1xuICBpc0Rpc2FibGVkPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEluZGljYXRlcyB0aGF0IHRoZSBmaWVsZCBpcyBkaXNwbGF5aW5nIHJlYWQtb25seSBjb250ZW50XG4gICAqL1xuICBpc1JlYWRPbmx5PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEluZGljYXRlcyB0aGF0IGlucHV0IGhhcyBlcnJvcnNcbiAgICovXG4gIGhhc0Vycm9yPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIENvbnRyb2wgdG8gaW5kaWNhdGUgb24gdGhlIGlucHV0IGlmIHRoZXJlIGFyZSB2YWx1ZXMgdGhhdCBhcmUgcG90ZW50aWFsbHkgaW52YWxpZFxuICAgKi9cbiAgaGFzV2FybmluZz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBQbGFjZWhvbGRlciB0ZXh0IGZvciB0aGUgaW5wdXRcbiAgICovXG4gIHBsYWNlaG9sZGVyPzogc3RyaW5nO1xuICAvKipcbiAgICogQSBtYXAgb2YgZXJyb3JzLiBFcnJvciBtZXNzYWdlcyBmb3Iga25vd24gZXJyb3JzIGFyZSByZW5kZXJlZCBhdXRvbWF0aWNhbGx5LlxuICAgKiA8YnI+XG4gICAqIFVua25vd24gZXJyb3JzIHdpbGwgYmUgZm9yd2FyZGVkIHRvIGByZW5kZXJFcnJvcmBcbiAgICovXG4gIGVycm9yPzogUmVhY3ROb2RlO1xuICAvKipcbiAgICogSFRNTCBub2RlIHRvIGRpc3BsYXkgd2FybmluZ1xuICAgKi9cbiAgd2FybmluZz86IFJlYWN0Tm9kZTtcbiAgLyoqXG4gICAqIFNob3dzIGhpZ2ggcHJlY2lzaW9uIGJhZGdlIGluIGNhc2UgY3VycmVudCB2YWx1ZSB1c2VzIGhpZ2ggcHJlY2lzaW9uLlxuICAgKi9cbiAgaGFzSGlnaFByZWNpc2lvbkJhZGdlPzogYm9vbGVhbjtcbn07XG5cbmNvbnN0IHNlcXVlbnRpYWxJZCA9IGNyZWF0ZVNlcXVlbnRpYWxJZCgnbG9jYWxpemVkLW1vbmV5LWlucHV0LScpO1xuXG4vLyBzb3J0cyB0aGUgY3VycmVuY2llcyB3aXRoIHRoZSBmb2xsb3dpbmcgcHJpb3JpdHk6XG4vLyAtIFRoZSBzZWxlY3RlZCBjdXJyZW5jeSBpcyBwbGFjZWQgZmlyc3QgKGUuZyBFVVIpXG4vLyAtIEFsbCBvdGhlciBjdXJyZW5jaWVzIGZvbGxvdywgc29ydGVkIGFscGhhYmV0aWNhbGx5IGFzIHdlbGxcbmV4cG9ydCBjb25zdCBzb3J0Q3VycmVuY2llcyA9IChcbiAgc2VsZWN0ZWRDdXJyZW5jeTogc3RyaW5nLFxuICBhbGxDdXJyZW5jaWVzOiBzdHJpbmdbXVxuKSA9PiB7XG4gIGNvbnN0IHJlbWFpbmluZ0N1cnJlbmNpZXMgPSBhbGxDdXJyZW5jaWVzLmZpbHRlcihcbiAgICAoY3VycmVuY3kpID0+IGN1cnJlbmN5ICE9PSBzZWxlY3RlZEN1cnJlbmN5XG4gICk7XG4gIHJldHVybiBbc2VsZWN0ZWRDdXJyZW5jeSwgLi4ucmVtYWluaW5nQ3VycmVuY2llcy5zb3J0KCldO1xufTtcblxuY29uc3QgTG9jYWxpemVkSW5wdXQgPSAocHJvcHM6IFRMb2NhbGl6ZWRJbnB1dFByb3BzKSA9PiB7XG4gIGNvbnN0IHsgb25DaGFuZ2UgfSA9IHByb3BzO1xuICBjb25zdCBoYW5kbGVDaGFuZ2UgPSB1c2VDYWxsYmFjayhcbiAgICAoZXZlbnQpID0+IHtcbiAgICAgIC8vIFdlIG1hbmlwdWxhdGUgdGhlIGV2ZW50IHRvIGFkZCB0aGUgY3VycmVuY3kgdG8gdGhlIHRhcmdldC5cbiAgICAgIC8vIFRoYXQgd2F5IHRoZSB1c2VycyAgY2FuIHJlYWRcbiAgICAgIC8vIGV2ZW50LnRhcmdldC5jdXJyZW5jeSBhbmQgZXZlbnQudGFyZ2V0LnZhbHVlIHRvIGRldGVybWluZSB0aGUgbmV4dCB2YWx1ZS5cbiAgICAgIC8vXG4gICAgICAvLyBXZSBvbmx5IG5lZWQgdGhpcyBpbmZvcm1hdGlvbiBmb3IgdGhlIHN0b3J5LCB0aGUgTUMgYXBwbGljYXRpb24gY29kZSB3aWxsXG4gICAgICAvLyBuZXZlciBuZWVkIHRvIGFjY2VzcyB0aGUgaW5mb3JtYXRpb24gaW4gc3VjaCBhbiBpbmNvbnZlbmllbnQgd2F5LCBhc1xuICAgICAgLy8gRm9ybWlrIGNhbiBkZWFsIHdpdGggYSBuYW1lIGxpa2UgXCJmb28uZW5cIiBhbmQgc2V0cyB0aGUgdmFsdWUgY29ycmVjdGx5LlxuICAgICAgLy8gV2UgY2FuJ3QgdXNlIHRoaXMgYXMgd2UgYXJlbid0IGd1YXJhbnRlZWQgYSBuYW1lIGluIHRoZSBzdG9yeSBhcyB0aGUgdXNlclxuICAgICAgLy8gbWlnaHQgY2xlYXIgaXQgdXNpbmcgdGhlIGtub2IsIGFuZCB0aGVuIHdlIGNhbid0IHBhcnNlIHRoZSBjdXJyZW5jeSBmcm9tXG4gICAgICAvLyB0aGUgaW5wdXQgbmFtZSBhbnltb3JlLlxuICAgICAgLy9cbiAgICAgIGV2ZW50LnRhcmdldC5jdXJyZW5jeSA9IHByb3BzLmN1cnJlbmN5O1xuICAgICAgb25DaGFuZ2U/LihldmVudCk7XG4gICAgfSxcbiAgICBbcHJvcHMuY3VycmVuY3ksIG9uQ2hhbmdlXVxuICApO1xuICByZXR1cm4gKFxuICAgIDxTdGFjayBzY2FsZT1cInhzXCI+XG4gICAgICA8ZGl2XG4gICAgICAgIGNzcz17Y3NzYFxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBgfVxuICAgICAgPlxuICAgICAgICA8TW9uZXlJbnB1dFxuICAgICAgICAgIG5hbWU9e3Byb3BzLm5hbWV9XG4gICAgICAgICAgdmFsdWU9e3Byb3BzLnZhbHVlfVxuICAgICAgICAgIG9uQ2hhbmdlPXtoYW5kbGVDaGFuZ2V9XG4gICAgICAgICAgb25CbHVyPXtwcm9wcy5vbkJsdXJ9XG4gICAgICAgICAgaXNDb25kZW5zZWQ9e3Byb3BzLmlzQ29uZGVuc2VkfVxuICAgICAgICAgIGlzRGlzYWJsZWQ9e3Byb3BzLmlzRGlzYWJsZWR9XG4gICAgICAgICAgaXNSZWFkT25seT17cHJvcHMuaXNSZWFkT25seX1cbiAgICAgICAgICBwbGFjZWhvbGRlcj17cHJvcHMucGxhY2Vob2xkZXJ9XG4gICAgICAgICAgaGFzRXJyb3I9e3Byb3BzLmhhc0Vycm9yfVxuICAgICAgICAgIGhhc1dhcm5pbmc9e3Byb3BzLmhhc1dhcm5pbmd9XG4gICAgICAgICAgaGFzSGlnaFByZWNpc2lvbkJhZGdlPXtwcm9wcy5oYXNIaWdoUHJlY2lzaW9uQmFkZ2V9XG4gICAgICAgICAgey4uLmZpbHRlckRhdGFBdHRyaWJ1dGVzKHByb3BzKX1cbiAgICAgICAgLz5cbiAgICAgIDwvZGl2PlxuICAgICAge3Byb3BzLmVycm9yICYmIDxFcnJvck1lc3NhZ2U+e3Byb3BzLmVycm9yfTwvRXJyb3JNZXNzYWdlPn1cbiAgICAgIHtwcm9wcy53YXJuaW5nICYmIDxXYXJuaW5nTWVzc2FnZT57cHJvcHMud2FybmluZ308L1dhcm5pbmdNZXNzYWdlPn1cbiAgICA8L1N0YWNrPlxuICApO1xufTtcblxuTG9jYWxpemVkSW5wdXQuZGlzcGxheU5hbWUgPSAnTG9jYWxpemVkSW5wdXQnO1xuXG5jb25zdCBMb2NhbGl6ZWRNb25leUlucHV0ID0gKHByb3BzOiBUTG9jYWxpemVkTW9uZXlJbnB1dFByb3BzKSA9PiB7XG4gIGNvbnN0IGludGwgPSB1c2VJbnRsKCk7XG5cbiAgY29uc3QgZGVmYXVsdEV4cGFuc2lvblN0YXRlID1cbiAgICBwcm9wcy5oaWRlQ3VycmVuY3lFeHBhbnNpb25Db250cm9scyB8fFxuICAgIHByb3BzLmRlZmF1bHRFeHBhbmRDdXJyZW5jaWVzIHx8XG4gICAgLy8gZGVmYXVsdCB0byBgZmFsc2VgLCBiZWNhdXNlIHVzZVRvZ2dsZVN0YXRlIGRlZmF1bHRzIHRvIGB0cnVlYFxuICAgIGZhbHNlO1xuXG4gIGNvbnN0IFthcmVDdXJyZW5jaWVzRXhwYW5kZWQsIHRvZ2dsZUN1cnJlbmNpZXNdID0gdXNlVG9nZ2xlU3RhdGUoXG4gICAgZGVmYXVsdEV4cGFuc2lvblN0YXRlXG4gICk7XG5cbiAgY29uc3Qgb25Mb2NhbGl6ZWRNb25leUlucHV0VG9nZ2xlID0gdXNlQ2FsbGJhY2soXG4gICAgKCkgPT4gdG9nZ2xlQ3VycmVuY2llcygpLFxuICAgIFt0b2dnbGVDdXJyZW5jaWVzXVxuICApO1xuXG4gIGNvbnN0IGlkID0gdXNlRmllbGRJZChwcm9wcy5pZCwgc2VxdWVudGlhbElkKTtcblxuICBjb25zdCBoYXNFcnJvckluUmVtYWluaW5nQ3VycmVuY2llcyA9XG4gICAgcHJvcHMuaGFzRXJyb3IgfHxcbiAgICBnZXRIYXNFcnJvck9uUmVtYWluaW5nTGFuZ3VhZ2VzKHByb3BzLmVycm9ycywgcHJvcHMuc2VsZWN0ZWRDdXJyZW5jeSk7XG5cbiAgY29uc3QgaGFzV2FybmluZ0luUmVtYWluaW5nQ3VycmVuY2llcyA9XG4gICAgcHJvcHMuaGFzV2FybmluZyB8fFxuICAgIGdldEhhc1dhcm5pbmdPblJlbWFpbmluZ0xhbmd1YWdlcyhwcm9wcy53YXJuaW5ncywgcHJvcHMuc2VsZWN0ZWRDdXJyZW5jeSk7XG5cbiAgaWYgKGhhc0Vycm9ySW5SZW1haW5pbmdDdXJyZW5jaWVzIHx8IGhhc1dhcm5pbmdJblJlbWFpbmluZ0N1cnJlbmNpZXMpIHtcbiAgICAvLyB0aGlzIHVwZGF0ZSB3aXRoaW4gcmVuZGVyIHJlcGxhY2VzIHRoZSBvbGQgYGdldERlcml2ZWRTdGF0ZUZyb21Qcm9wc2AgZnVuY3Rpb25hbGl0eVxuICAgIC8vIGh0dHBzOi8vcmVhY3Rqcy5vcmcvZG9jcy9ob29rcy1mYXEuaHRtbCNob3ctZG8taS1pbXBsZW1lbnQtZ2V0ZGVyaXZlZHN0YXRlZnJvbXByb3BzXG4gICAgaWYgKCFhcmVDdXJyZW5jaWVzRXhwYW5kZWQpIHtcbiAgICAgIHRvZ2dsZUN1cnJlbmNpZXMoKTtcbiAgICB9XG4gIH1cblxuICBjb25zdCBjdXJyZW5jaWVzID0gc29ydEN1cnJlbmNpZXMoXG4gICAgcHJvcHMuc2VsZWN0ZWRDdXJyZW5jeSxcbiAgICBPYmplY3Qua2V5cyhwcm9wcy52YWx1ZSlcbiAgKTtcblxuICBjb25zdCBzaG91bGRSZW5kZXJDdXJyZW5jeUNvbnRyb2wgPVxuICAgIGN1cnJlbmNpZXMubGVuZ3RoID4gMSAmJiAhcHJvcHMuaGlkZUN1cnJlbmN5RXhwYW5zaW9uQ29udHJvbHM7XG5cbiAgaWYgKHByb3BzLmhpZGVDdXJyZW5jeUV4cGFuc2lvbkNvbnRyb2xzKSB7XG4gICAgd2FybmluZyhcbiAgICAgIHR5cGVvZiBwcm9wcy5kZWZhdWx0RXhwYW5kQ3VycmVuY2llcyAhPT0gJ2Jvb2xlYW4nLFxuICAgICAgJ0xvY2FsaXplZE1vbmV5SW5wdXQ6IFwiZGVmYXVsdEV4cGFuZEN1cnJlbmNpZXNcIiBkb2VzIG5vdCBoYXZlIGFueSBlZmZlY3Qgd2hlbiBcImhpZGVDdXJyZW5jeUV4cGFuc2lvbkNvbnRyb2xzXCIgaXMgc2V0LidcbiAgICApO1xuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8Q29uc3RyYWludHMuSG9yaXpvbnRhbCBtYXg9e3Byb3BzLmhvcml6b250YWxDb25zdHJhaW50fT5cbiAgICAgIDxTdGFjayBzY2FsZT1cInhzXCI+XG4gICAgICAgIDxTdGFjayBzY2FsZT1cInNcIj5cbiAgICAgICAgICB7Y3VycmVuY2llcy5tYXAoKGN1cnJlbmN5LCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgaXNGaXJzdEN1cnJlbmN5ID0gaW5kZXggPT09IDA7XG4gICAgICAgICAgICBpZiAoIWlzRmlyc3RDdXJyZW5jeSAmJiAhYXJlQ3VycmVuY2llc0V4cGFuZGVkKSByZXR1cm4gbnVsbDtcblxuICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgPExvY2FsaXplZElucHV0XG4gICAgICAgICAgICAgICAga2V5PXtjdXJyZW5jeX1cbiAgICAgICAgICAgICAgICBpZD17TG9jYWxpemVkTW9uZXlJbnB1dC5nZXRJZChpZCwgY3VycmVuY3kpfVxuICAgICAgICAgICAgICAgIG5hbWU9e0xvY2FsaXplZE1vbmV5SW5wdXQuZ2V0TmFtZShwcm9wcy5uYW1lLCBjdXJyZW5jeSl9XG4gICAgICAgICAgICAgICAgdmFsdWU9e3Byb3BzLnZhbHVlW2N1cnJlbmN5XX1cbiAgICAgICAgICAgICAgICBvbkNoYW5nZT17cHJvcHMub25DaGFuZ2V9XG4gICAgICAgICAgICAgICAgY3VycmVuY3k9e2N1cnJlbmN5fVxuICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPXtcbiAgICAgICAgICAgICAgICAgIHByb3BzLnBsYWNlaG9sZGVyID8gcHJvcHMucGxhY2Vob2xkZXJbY3VycmVuY3ldIDogdW5kZWZpbmVkXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIG9uQmx1cj17cHJvcHMub25CbHVyfVxuICAgICAgICAgICAgICAgIG9uRm9jdXM9e3Byb3BzLm9uRm9jdXN9XG4gICAgICAgICAgICAgICAgaXNDb25kZW5zZWQ9e3Byb3BzLmlzQ29uZGVuc2VkfVxuICAgICAgICAgICAgICAgIGlzRGlzYWJsZWQ9e3Byb3BzLmlzRGlzYWJsZWR9XG4gICAgICAgICAgICAgICAgaXNSZWFkT25seT17cHJvcHMuaXNSZWFkT25seX1cbiAgICAgICAgICAgICAgICBoYXNFcnJvcj17Qm9vbGVhbihcbiAgICAgICAgICAgICAgICAgIHByb3BzLmhhc0Vycm9yIHx8IChwcm9wcy5lcnJvcnMgJiYgcHJvcHMuZXJyb3JzW2N1cnJlbmN5XSlcbiAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgIGhhc1dhcm5pbmc9e0Jvb2xlYW4oXG4gICAgICAgICAgICAgICAgICBwcm9wcy5oYXNXYXJuaW5nIHx8XG4gICAgICAgICAgICAgICAgICAgIChwcm9wcy53YXJuaW5ncyAmJiBwcm9wcy53YXJuaW5nc1tjdXJyZW5jeV0pXG4gICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICB3YXJuaW5nPXtwcm9wcy53YXJuaW5ncyAmJiBwcm9wcy53YXJuaW5nc1tjdXJyZW5jeV19XG4gICAgICAgICAgICAgICAgZXJyb3I9e3Byb3BzLmVycm9ycyAmJiBwcm9wcy5lcnJvcnNbY3VycmVuY3ldfVxuICAgICAgICAgICAgICAgIHsuLi5jcmVhdGVMb2NhbGl6ZWREYXRhQXR0cmlidXRlcyhwcm9wcywgY3VycmVuY3kpfVxuICAgICAgICAgICAgICAgIGhhc0hpZ2hQcmVjaXNpb25CYWRnZT17cHJvcHMuaGFzSGlnaFByZWNpc2lvbkJhZGdlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9KX1cbiAgICAgICAgPC9TdGFjaz5cbiAgICAgICAge3Nob3VsZFJlbmRlckN1cnJlbmN5Q29udHJvbCAmJiAoXG4gICAgICAgICAgPExvY2FsaXplZElucHV0VG9nZ2xlXG4gICAgICAgICAgICBpY29uPXs8Q29pbnNJY29uIC8+fVxuICAgICAgICAgICAgb25DbGljaz17b25Mb2NhbGl6ZWRNb25leUlucHV0VG9nZ2xlfVxuICAgICAgICAgICAgaXNPcGVuPXthcmVDdXJyZW5jaWVzRXhwYW5kZWR9XG4gICAgICAgICAgICBpc0Rpc2FibGVkPXtcbiAgICAgICAgICAgICAgYXJlQ3VycmVuY2llc0V4cGFuZGVkICYmXG4gICAgICAgICAgICAgIEJvb2xlYW4oXG4gICAgICAgICAgICAgICAgaGFzRXJyb3JJblJlbWFpbmluZ0N1cnJlbmNpZXMgfHwgaGFzV2FybmluZ0luUmVtYWluaW5nQ3VycmVuY2llc1xuICAgICAgICAgICAgICApXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBzaG93TWVzc2FnZT17aW50bC5mb3JtYXRNZXNzYWdlKG1lc3NhZ2VzLnNob3csIHtcbiAgICAgICAgICAgICAgcmVtYWluaW5nQ3VycmVuY2llczogY3VycmVuY2llcy5sZW5ndGggLSAxLFxuICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICBoaWRlTWVzc2FnZT17aW50bC5mb3JtYXRNZXNzYWdlKG1lc3NhZ2VzLmhpZGUsIHtcbiAgICAgICAgICAgICAgcmVtYWluaW5nQ3VycmVuY2llczogY3VycmVuY2llcy5sZW5ndGggLSAxLFxuICAgICAgICAgICAgfSl9XG4gICAgICAgICAgLz5cbiAgICAgICAgKX1cbiAgICAgIDwvU3RhY2s+XG4gICAgPC9Db25zdHJhaW50cy5Ib3Jpem9udGFsPlxuICApO1xufTtcblxuTG9jYWxpemVkTW9uZXlJbnB1dC5kaXNwbGF5TmFtZSA9ICdMb2NhbGl6ZWRNb25leUlucHV0JztcblxuTG9jYWxpemVkTW9uZXlJbnB1dC5nZXRJZCA9IGdldElkO1xuXG5Mb2NhbGl6ZWRNb25leUlucHV0LmdldE5hbWUgPSBnZXROYW1lO1xuXG5Mb2NhbGl6ZWRNb25leUlucHV0LmRlZmF1bHRQcm9wcyA9IHtcbiAgaG9yaXpvbnRhbENvbnN0cmFpbnQ6ICdzY2FsZScsXG59O1xuXG5Mb2NhbGl6ZWRNb25leUlucHV0LmNvbnZlcnRUb01vbmV5VmFsdWVzID0gKFxuICB2YWx1ZXM6IFRWYWx1ZVtdLFxuICBsb2NhbGU6IHN0cmluZ1xuKTogQXJyYXk8VE1vbmV5VmFsdWUgfCBudWxsPiA9PlxuICBPYmplY3QudmFsdWVzKHZhbHVlcykubWFwPFRNb25leVZhbHVlIHwgbnVsbD4oKHZhbHVlKSA9PiB7XG4gICAgcmV0dXJuIE1vbmV5SW5wdXQuY29udmVydFRvTW9uZXlWYWx1ZSh2YWx1ZSwgbG9jYWxlKTtcbiAgfSk7XG5cbkxvY2FsaXplZE1vbmV5SW5wdXQucGFyc2VNb25leVZhbHVlcyA9IChcbiAgbW9uZXlWYWx1ZXM6IFRNb25leVZhbHVlW10gPSBbXSxcbiAgbG9jYWxlOiBzdHJpbmdcbik6IFJlY29yZDxUQ3VycmVuY3lDb2RlLCBUVmFsdWU+ID0+XG4gIG1vbmV5VmFsdWVzLnJlZHVjZTxSZWNvcmQ8VEN1cnJlbmN5Q29kZSwgVFZhbHVlPj4oKGFsbFZhbHVlcywgbW9uZXlWYWx1ZSkgPT4ge1xuICAgIGNvbnN0IHZhbHVlID0gTW9uZXlJbnB1dC5wYXJzZU1vbmV5VmFsdWUobW9uZXlWYWx1ZSwgbG9jYWxlKTtcbiAgICByZXR1cm4ge1xuICAgICAgLi4uYWxsVmFsdWVzLFxuICAgICAgW3ZhbHVlLmN1cnJlbmN5Q29kZV06IHZhbHVlLFxuICAgIH07XG4gIH0sIHt9IGFzIFJlY29yZDxUQ3VycmVuY3lDb2RlLCBUVmFsdWU+KTtcblxuTG9jYWxpemVkTW9uZXlJbnB1dC5nZXRIaWdoUHJlY2lzaW9uQ3VycmVuY2llcyA9IChcbiAgdmFsdWVzOiBSZWNvcmQ8VEN1cnJlbmN5Q29kZSwgVFZhbHVlPixcbiAgbG9jYWxlOiBzdHJpbmdcbik6IFRDdXJyZW5jeUNvZGVbXSA9PiB7XG4gIGNvbnN0IHR5cGVkQ3VycmVuY3lDb2RlcyA9IE9iamVjdC5rZXlzKHZhbHVlcykgYXMgVEN1cnJlbmN5Q29kZVtdO1xuICByZXR1cm4gdHlwZWRDdXJyZW5jeUNvZGVzLmZpbHRlcigoY3VycmVuY3lDb2RlKSA9PlxuICAgIE1vbmV5SW5wdXQuaXNIaWdoUHJlY2lzaW9uKHZhbHVlc1tjdXJyZW5jeUNvZGVdLCBsb2NhbGUpXG4gICk7XG59O1xuXG5Mb2NhbGl6ZWRNb25leUlucHV0LmdldEVtcHR5Q3VycmVuY2llcyA9IChcbiAgdmFsdWVzOiBSZWNvcmQ8VEN1cnJlbmN5Q29kZSwgVFZhbHVlPlxuKTogVEN1cnJlbmN5Q29kZVtdID0+IHtcbiAgY29uc3QgdHlwZWRDdXJyZW5jeUNvZGVzID0gT2JqZWN0LmtleXModmFsdWVzKSBhcyBUQ3VycmVuY3lDb2RlW107XG4gIHJldHVybiB0eXBlZEN1cnJlbmN5Q29kZXMuZmlsdGVyKChjdXJyZW5jeUNvZGUpID0+XG4gICAgTW9uZXlJbnB1dC5pc0VtcHR5KHZhbHVlc1tjdXJyZW5jeUNvZGVdKVxuICApO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgTG9jYWxpemVkTW9uZXlJbnB1dDtcbiJdfQ== */",
91
+ map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxvY2FsaXplZC1tb25leS1pbnB1dC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBcVBnQiIsImZpbGUiOiJsb2NhbGl6ZWQtbW9uZXktaW5wdXQudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdXNlQ2FsbGJhY2ssIHR5cGUgUmVhY3ROb2RlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgdXNlSW50bCB9IGZyb20gJ3JlYWN0LWludGwnO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xuaW1wb3J0IHsgdXNlVG9nZ2xlU3RhdGUsIHVzZUZpZWxkSWQgfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9ob29rcyc7XG5pbXBvcnQgTW9uZXlJbnB1dCwge1xuICB0eXBlIFRDdXJyZW5jeUNvZGUsXG4gIHR5cGUgVE1vbmV5VmFsdWUsXG4gIHR5cGUgVFZhbHVlLFxufSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9tb25leS1pbnB1dCc7XG5pbXBvcnQgeyBFcnJvck1lc3NhZ2UsIFdhcm5pbmdNZXNzYWdlIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvbWVzc2FnZXMnO1xuaW1wb3J0IFN0YWNrIGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L3NwYWNpbmdzLXN0YWNrJztcbmltcG9ydCBDb25zdHJhaW50cyBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9jb25zdHJhaW50cyc7XG5pbXBvcnQgeyBDb2luc0ljb24gfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9pY29ucyc7XG5pbXBvcnQge1xuICBjcmVhdGVMb2NhbGl6ZWREYXRhQXR0cmlidXRlcyxcbiAgZ2V0SGFzRXJyb3JPblJlbWFpbmluZ0xhbmd1YWdlcyxcbiAgZ2V0SGFzV2FybmluZ09uUmVtYWluaW5nTGFuZ3VhZ2VzLFxuICBnZXRJZCxcbiAgZ2V0TmFtZSxcbn0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvbG9jYWxpemVkLXV0aWxzJztcbmltcG9ydCB7XG4gIGNyZWF0ZVNlcXVlbnRpYWxJZCxcbiAgZmlsdGVyRGF0YUF0dHJpYnV0ZXMsXG4gIHdhcm5pbmcsXG59IGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L3V0aWxzJztcbmltcG9ydCB7IExvY2FsaXplZElucHV0VG9nZ2xlIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvaW5wdXQtdXRpbHMnO1xuaW1wb3J0IG1lc3NhZ2VzIGZyb20gJy4vbWVzc2FnZXMnO1xuXG50eXBlIFRDdXN0b21FdmVudCA9IHtcbiAgdGFyZ2V0OiB7XG4gICAgaWQ/OiBzdHJpbmc7XG4gICAgbmFtZT86IHN0cmluZztcbiAgICB2YWx1ZT86IHN0cmluZyB8IHN0cmluZ1tdIHwgbnVsbDtcbiAgfTtcbiAgcGVyc2lzdD86ICgpID0+IHZvaWQ7XG59O1xuXG5leHBvcnQgdHlwZSBUTG9jYWxpemVkTW9uZXlJbnB1dFByb3BzID0ge1xuICAvKipcbiAgICogVXNlZCBhcyBIVE1MIGlkIHByb3BlcnR5LlxuICAgKi9cbiAgaWQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgcHJlZml4IHVzZWQgdG8gY3JlYXRlIGEgSFRNTCBgbmFtZWAgcHJvcGVydHkgZm9yIHRoZSBhbW91bnQgaW5wdXQgZmllbGQgKGAke25hbWV9LmFtb3VudGApLlxuICAgKi9cbiAgbmFtZT86IHN0cmluZztcbiAgLyoqXG4gICAqIHZhbHVlIG9mIHBvc3NpYmxlIGN1cnJlbmN5XG4gICAqIDxici8+XG4gICAqIHRoZSBpbnB1dCBkb2Vzbid0IGFjY2VwdCBhIFwiY3VycmVuY2llc1wiIHByb3AsIGluc3RlYWQgYWxsIHBvc3NpYmxlXG4gICAqIGN1cnJlbmNpZXMgaGF2ZSB0byBleGlzdCAod2l0aCBlbXB0eSBvciBmaWxsZWQgc3RyaW5ncykgb24gdGhlIHZhbHVlOlxuICAgKiB7IEVVUjoge2Ftb3VudDogJzEyLjAwJywgY3VycmVuY3lDb2RlOiAnRVVSJ30sIFVTRDoge2Ftb3VudDogJycsIGN1cnJlbmN5Q29kZTogJ1VTRCd9fVxuICAgKi9cbiAgdmFsdWU6IFJlY29yZDxzdHJpbmcsIFRWYWx1ZT47XG4gIC8qKlxuICAgKiBDYWxsZWQgd2l0aCB0aGUgZXZlbnQgb2YgdGhlIGlucHV0LlxuICAgKi9cbiAgb25DaGFuZ2U/OiAoZXZlbnQ6IFRDdXN0b21FdmVudCkgPT4gdm9pZDtcbiAgLyoqXG4gICAqIHRoZSBjdXJyZW50bHkgc2VsZWN0ZWQgY3VycmVuY3lcbiAgICovXG4gIHNlbGVjdGVkQ3VycmVuY3k6IHN0cmluZztcbiAgLyoqXG4gICAqIENhbGxlZCB3aGVuIGlucHV0IGlzIGJsdXJyZWRcbiAgICovXG4gIG9uQmx1cj86IChldmVudDogVEN1c3RvbUV2ZW50KSA9PiB2b2lkO1xuICAvKipcbiAgICogQ2FsbGVkIHdoZW4gaW5wdXQgaXMgZm9jdXNlZFxuICAgKi9cbiAgb25Gb2N1cz86IChldmVudDogVEN1c3RvbUV2ZW50KSA9PiB2b2lkO1xuICAvKipcbiAgICogV2lsbCBoaWRlIHRoZSBjdXJyZW5jeSBleHBhbnNpb24gY29udHJvbHMgd2hlbiBzZXQgdG8gYHRydWVgLiBBbGwgY3VycmVuY2llcyB3aWxsIGJlIHNob3duIHdoZW4gc2V0IHRvIGB0cnVlYC5cbiAgICovXG4gIGhpZGVDdXJyZW5jeUV4cGFuc2lvbkNvbnRyb2xzPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIENvbnRyb2xzIHdoZXRoZXIgb25lIG9yIGFsbCBjdXJyZW5jaXJzIGFyZSB2aXNpYmxlIGJ5IGRlZmF1bHRcbiAgICovXG4gIGRlZmF1bHRFeHBhbmRDdXJyZW5jaWVzPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFVzZSB0aGlzIHByb3BlcnR5IHRvIHJlZHVjZSB0aGUgcGFkZGluZ3Mgb2YgdGhlIGNvbXBvbmVudCBmb3IgYSB1aSBjb21wYWN0IHZhcmlhbnRcbiAgICovXG4gIGlzQ29uZGVuc2VkPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEluZGljYXRlcyB0aGF0IHRoZSBpbnB1dCBjYW5ub3QgYmUgbW9kaWZpZWQgKGUuZyBub3QgYXV0aG9yaXplZCwgb3IgY2hhbmdlcyBjdXJyZW50bHkgc2F2aW5nKS5cbiAgICovXG4gIGlzRGlzYWJsZWQ/OiBib29sZWFuO1xuICAvKipcbiAgICogSW5kaWNhdGVzIHRoYXQgdGhlIGZpZWxkIGlzIGRpc3BsYXlpbmcgcmVhZC1vbmx5IGNvbnRlbnRcbiAgICovXG4gIGlzUmVhZE9ubHk/OiBib29sZWFuO1xuICAvKipcbiAgICogUGxhY2Vob2xkZXIgdGV4dCBmb3IgdGhlIGlucHV0XG4gICAqL1xuICBwbGFjZWhvbGRlcj86IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG4gIC8qKlxuICAgKiBIb3Jpem9udGFsIHNpemUgbGltaXQgb2YgdGhlIGlucHV0IGZpZWxkcy5cbiAgICovXG4gIGhvcml6b250YWxDb25zdHJhaW50PzpcbiAgICB8IDNcbiAgICB8IDRcbiAgICB8IDVcbiAgICB8IDZcbiAgICB8IDdcbiAgICB8IDhcbiAgICB8IDlcbiAgICB8IDEwXG4gICAgfCAxMVxuICAgIHwgMTJcbiAgICB8IDEzXG4gICAgfCAxNFxuICAgIHwgMTVcbiAgICB8IDE2XG4gICAgfCAnc2NhbGUnXG4gICAgfCAnYXV0byc7XG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgdGhhdCBpbnB1dCBoYXMgZXJyb3JzXG4gICAqL1xuICBoYXNFcnJvcj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBDb250cm9sIHRvIGluZGljYXRlIG9uIHRoZSBpbnB1dCBpZiB0aGVyZSBhcmUgdmFsdWVzIHRoYXQgYXJlIHBvdGVudGlhbGx5IGludmFsaWRcbiAgICovXG4gIGhhc1dhcm5pbmc/OiBib29sZWFuO1xuICAvKipcbiAgICogQSBtYXAgb2YgZXJyb3JzLiBFcnJvciBtZXNzYWdlcyBmb3Iga25vd24gZXJyb3JzIGFyZSByZW5kZXJlZCBhdXRvbWF0aWNhbGx5LlxuICAgKiA8YnI+XG4gICAqIFVua25vd24gZXJyb3JzIHdpbGwgYmUgZm9yd2FyZGVkIHRvIGByZW5kZXJFcnJvcmBcbiAgICovXG4gIGVycm9ycz86IFJlY29yZDxzdHJpbmcsIFJlYWN0Tm9kZT47XG4gIC8qKlxuICAgKiBBIG1hcCBvZiB3YXJuaW5ncy5cbiAgICovXG4gIHdhcm5pbmdzPzogUmVjb3JkPHN0cmluZywgUmVhY3ROb2RlPjtcbiAgLyoqXG4gICAqIFNob3dzIGhpZ2ggcHJlY2lzaW9uIGJhZGdlIGluIGNhc2UgY3VycmVudCB2YWx1ZSB1c2VzIGhpZ2ggcHJlY2lzaW9uLlxuICAgKi9cbiAgaGFzSGlnaFByZWNpc2lvbkJhZGdlPzogYm9vbGVhbjtcbn07XG5cbnR5cGUgVExvY2FsaXplZElucHV0UHJvcHMgPSB7XG4gIC8qKlxuICAgKiBVc2VkIGFzIEhUTUwgaWQgcHJvcGVydHkuXG4gICAqL1xuICBpZD86IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBwcmVmaXggdXNlZCB0byBjcmVhdGUgYSBIVE1MIGBuYW1lYCBwcm9wZXJ0eSBmb3IgdGhlIGFtb3VudCBpbnB1dCBmaWVsZCAoYCR7bmFtZX0uYW1vdW50YCkuXG4gICAqL1xuICBuYW1lPzogc3RyaW5nO1xuICAvKipcbiAgICogdmFsdWUgb2YgcG9zc2libGUgY3VycmVuY3lcbiAgICovXG4gIHZhbHVlOiBUVmFsdWU7XG4gIC8qKlxuICAgKiBDYWxsZWQgd2l0aCB0aGUgZXZlbnQgb2YgdGhlIGlucHV0LlxuICAgKi9cbiAgb25DaGFuZ2U/OiAoZXZlbnQ6IFRDdXN0b21FdmVudCkgPT4gdm9pZDtcbiAgLyoqXG4gICAqIENhbGxlZCB3aXRoIHRoZSBldmVudCBvZiB0aGUgaW5wdXQuXG4gICAqL1xuICBjdXJyZW5jeTogc3RyaW5nO1xuICAvKipcbiAgICogQ2FsbGVkIHdoZW4gaW5wdXQgaXMgYmx1cnJlZFxuICAgKi9cbiAgb25CbHVyPzogKGV2ZW50OiBUQ3VzdG9tRXZlbnQpID0+IHZvaWQ7XG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiBpbnB1dCBpcyBmb2N1c2VkXG4gICAqL1xuICBvbkZvY3VzPzogKGV2ZW50OiBUQ3VzdG9tRXZlbnQpID0+IHZvaWQ7XG4gIC8qKlxuICAgKiBVc2UgdGhpcyBwcm9wZXJ0eSB0byByZWR1Y2UgdGhlIHBhZGRpbmdzIG9mIHRoZSBjb21wb25lbnQgZm9yIGEgdWkgY29tcGFjdCB2YXJpYW50XG4gICAqL1xuICBpc0NvbmRlbnNlZD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgdGhhdCB0aGUgaW5wdXQgY2Fubm90IGJlIG1vZGlmaWVkIChlLmcgbm90IGF1dGhvcml6ZWQsIG9yIGNoYW5nZXMgY3VycmVudGx5IHNhdmluZykuXG4gICAqL1xuICBpc0Rpc2FibGVkPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEluZGljYXRlcyB0aGF0IHRoZSBmaWVsZCBpcyBkaXNwbGF5aW5nIHJlYWQtb25seSBjb250ZW50XG4gICAqL1xuICBpc1JlYWRPbmx5PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEluZGljYXRlcyB0aGF0IGlucHV0IGhhcyBlcnJvcnNcbiAgICovXG4gIGhhc0Vycm9yPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIENvbnRyb2wgdG8gaW5kaWNhdGUgb24gdGhlIGlucHV0IGlmIHRoZXJlIGFyZSB2YWx1ZXMgdGhhdCBhcmUgcG90ZW50aWFsbHkgaW52YWxpZFxuICAgKi9cbiAgaGFzV2FybmluZz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBQbGFjZWhvbGRlciB0ZXh0IGZvciB0aGUgaW5wdXRcbiAgICovXG4gIHBsYWNlaG9sZGVyPzogc3RyaW5nO1xuICAvKipcbiAgICogQSBtYXAgb2YgZXJyb3JzLiBFcnJvciBtZXNzYWdlcyBmb3Iga25vd24gZXJyb3JzIGFyZSByZW5kZXJlZCBhdXRvbWF0aWNhbGx5LlxuICAgKiA8YnI+XG4gICAqIFVua25vd24gZXJyb3JzIHdpbGwgYmUgZm9yd2FyZGVkIHRvIGByZW5kZXJFcnJvcmBcbiAgICovXG4gIGVycm9yPzogUmVhY3ROb2RlO1xuICAvKipcbiAgICogSFRNTCBub2RlIHRvIGRpc3BsYXkgd2FybmluZ1xuICAgKi9cbiAgd2FybmluZz86IFJlYWN0Tm9kZTtcbiAgLyoqXG4gICAqIFNob3dzIGhpZ2ggcHJlY2lzaW9uIGJhZGdlIGluIGNhc2UgY3VycmVudCB2YWx1ZSB1c2VzIGhpZ2ggcHJlY2lzaW9uLlxuICAgKi9cbiAgaGFzSGlnaFByZWNpc2lvbkJhZGdlPzogYm9vbGVhbjtcbn07XG5cbmNvbnN0IHNlcXVlbnRpYWxJZCA9IGNyZWF0ZVNlcXVlbnRpYWxJZCgnbG9jYWxpemVkLW1vbmV5LWlucHV0LScpO1xuXG4vLyBzb3J0cyB0aGUgY3VycmVuY2llcyB3aXRoIHRoZSBmb2xsb3dpbmcgcHJpb3JpdHk6XG4vLyAtIFRoZSBzZWxlY3RlZCBjdXJyZW5jeSBpcyBwbGFjZWQgZmlyc3QgKGUuZyBFVVIpXG4vLyAtIEFsbCBvdGhlciBjdXJyZW5jaWVzIGZvbGxvdywgc29ydGVkIGFscGhhYmV0aWNhbGx5IGFzIHdlbGxcbmV4cG9ydCBjb25zdCBzb3J0Q3VycmVuY2llcyA9IChcbiAgc2VsZWN0ZWRDdXJyZW5jeTogc3RyaW5nLFxuICBhbGxDdXJyZW5jaWVzOiBzdHJpbmdbXVxuKSA9PiB7XG4gIGNvbnN0IHJlbWFpbmluZ0N1cnJlbmNpZXMgPSBhbGxDdXJyZW5jaWVzLmZpbHRlcihcbiAgICAoY3VycmVuY3kpID0+IGN1cnJlbmN5ICE9PSBzZWxlY3RlZEN1cnJlbmN5XG4gICk7XG4gIHJldHVybiBbc2VsZWN0ZWRDdXJyZW5jeSwgLi4ucmVtYWluaW5nQ3VycmVuY2llcy5zb3J0KCldO1xufTtcblxuY29uc3QgTG9jYWxpemVkSW5wdXQgPSAocHJvcHM6IFRMb2NhbGl6ZWRJbnB1dFByb3BzKSA9PiB7XG4gIGNvbnN0IHsgb25DaGFuZ2UgfSA9IHByb3BzO1xuICBjb25zdCBoYW5kbGVDaGFuZ2UgPSB1c2VDYWxsYmFjayhcbiAgICAoZXZlbnQpID0+IHtcbiAgICAgIC8vIFdlIG1hbmlwdWxhdGUgdGhlIGV2ZW50IHRvIGFkZCB0aGUgY3VycmVuY3kgdG8gdGhlIHRhcmdldC5cbiAgICAgIC8vIFRoYXQgd2F5IHRoZSB1c2VycyAgY2FuIHJlYWRcbiAgICAgIC8vIGV2ZW50LnRhcmdldC5jdXJyZW5jeSBhbmQgZXZlbnQudGFyZ2V0LnZhbHVlIHRvIGRldGVybWluZSB0aGUgbmV4dCB2YWx1ZS5cbiAgICAgIC8vXG4gICAgICAvLyBXZSBvbmx5IG5lZWQgdGhpcyBpbmZvcm1hdGlvbiBmb3IgdGhlIHN0b3J5LCB0aGUgTUMgYXBwbGljYXRpb24gY29kZSB3aWxsXG4gICAgICAvLyBuZXZlciBuZWVkIHRvIGFjY2VzcyB0aGUgaW5mb3JtYXRpb24gaW4gc3VjaCBhbiBpbmNvbnZlbmllbnQgd2F5LCBhc1xuICAgICAgLy8gRm9ybWlrIGNhbiBkZWFsIHdpdGggYSBuYW1lIGxpa2UgXCJmb28uZW5cIiBhbmQgc2V0cyB0aGUgdmFsdWUgY29ycmVjdGx5LlxuICAgICAgLy8gV2UgY2FuJ3QgdXNlIHRoaXMgYXMgd2UgYXJlbid0IGd1YXJhbnRlZWQgYSBuYW1lIGluIHRoZSBzdG9yeSBhcyB0aGUgdXNlclxuICAgICAgLy8gbWlnaHQgY2xlYXIgaXQgdXNpbmcgdGhlIGtub2IsIGFuZCB0aGVuIHdlIGNhbid0IHBhcnNlIHRoZSBjdXJyZW5jeSBmcm9tXG4gICAgICAvLyB0aGUgaW5wdXQgbmFtZSBhbnltb3JlLlxuICAgICAgLy9cbiAgICAgIGV2ZW50LnRhcmdldC5jdXJyZW5jeSA9IHByb3BzLmN1cnJlbmN5O1xuICAgICAgb25DaGFuZ2U/LihldmVudCk7XG4gICAgfSxcbiAgICBbcHJvcHMuY3VycmVuY3ksIG9uQ2hhbmdlXVxuICApO1xuICByZXR1cm4gKFxuICAgIDxTdGFjayBzY2FsZT1cInhzXCI+XG4gICAgICA8ZGl2XG4gICAgICAgIGNzcz17Y3NzYFxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBgfVxuICAgICAgPlxuICAgICAgICA8TW9uZXlJbnB1dFxuICAgICAgICAgIG5hbWU9e3Byb3BzLm5hbWV9XG4gICAgICAgICAgdmFsdWU9e3Byb3BzLnZhbHVlfVxuICAgICAgICAgIG9uQ2hhbmdlPXtoYW5kbGVDaGFuZ2V9XG4gICAgICAgICAgb25CbHVyPXtwcm9wcy5vbkJsdXJ9XG4gICAgICAgICAgaXNDb25kZW5zZWQ9e3Byb3BzLmlzQ29uZGVuc2VkfVxuICAgICAgICAgIGlzRGlzYWJsZWQ9e3Byb3BzLmlzRGlzYWJsZWR9XG4gICAgICAgICAgaXNSZWFkT25seT17cHJvcHMuaXNSZWFkT25seX1cbiAgICAgICAgICBwbGFjZWhvbGRlcj17cHJvcHMucGxhY2Vob2xkZXJ9XG4gICAgICAgICAgaGFzRXJyb3I9e3Byb3BzLmhhc0Vycm9yfVxuICAgICAgICAgIGhhc1dhcm5pbmc9e3Byb3BzLmhhc1dhcm5pbmd9XG4gICAgICAgICAgaGFzSGlnaFByZWNpc2lvbkJhZGdlPXtwcm9wcy5oYXNIaWdoUHJlY2lzaW9uQmFkZ2V9XG4gICAgICAgICAgey4uLmZpbHRlckRhdGFBdHRyaWJ1dGVzKHByb3BzKX1cbiAgICAgICAgLz5cbiAgICAgIDwvZGl2PlxuICAgICAge3Byb3BzLmVycm9yICYmIDxFcnJvck1lc3NhZ2U+e3Byb3BzLmVycm9yfTwvRXJyb3JNZXNzYWdlPn1cbiAgICAgIHtwcm9wcy53YXJuaW5nICYmIDxXYXJuaW5nTWVzc2FnZT57cHJvcHMud2FybmluZ308L1dhcm5pbmdNZXNzYWdlPn1cbiAgICA8L1N0YWNrPlxuICApO1xufTtcblxuTG9jYWxpemVkSW5wdXQuZGlzcGxheU5hbWUgPSAnTG9jYWxpemVkSW5wdXQnO1xuXG5jb25zdCBMb2NhbGl6ZWRNb25leUlucHV0ID0gKHtcbiAgaG9yaXpvbnRhbENvbnN0cmFpbnQgPSAnc2NhbGUnLFxuICAuLi5wcm9wc1xufTogVExvY2FsaXplZE1vbmV5SW5wdXRQcm9wcykgPT4ge1xuICBjb25zdCBpbnRsID0gdXNlSW50bCgpO1xuXG4gIGNvbnN0IGRlZmF1bHRFeHBhbnNpb25TdGF0ZSA9XG4gICAgcHJvcHMuaGlkZUN1cnJlbmN5RXhwYW5zaW9uQ29udHJvbHMgfHxcbiAgICBwcm9wcy5kZWZhdWx0RXhwYW5kQ3VycmVuY2llcyB8fFxuICAgIC8vIGRlZmF1bHQgdG8gYGZhbHNlYCwgYmVjYXVzZSB1c2VUb2dnbGVTdGF0ZSBkZWZhdWx0cyB0byBgdHJ1ZWBcbiAgICBmYWxzZTtcblxuICBjb25zdCBbYXJlQ3VycmVuY2llc0V4cGFuZGVkLCB0b2dnbGVDdXJyZW5jaWVzXSA9IHVzZVRvZ2dsZVN0YXRlKFxuICAgIGRlZmF1bHRFeHBhbnNpb25TdGF0ZVxuICApO1xuXG4gIGNvbnN0IG9uTG9jYWxpemVkTW9uZXlJbnB1dFRvZ2dsZSA9IHVzZUNhbGxiYWNrKFxuICAgICgpID0+IHRvZ2dsZUN1cnJlbmNpZXMoKSxcbiAgICBbdG9nZ2xlQ3VycmVuY2llc11cbiAgKTtcblxuICBjb25zdCBpZCA9IHVzZUZpZWxkSWQocHJvcHMuaWQsIHNlcXVlbnRpYWxJZCk7XG5cbiAgY29uc3QgaGFzRXJyb3JJblJlbWFpbmluZ0N1cnJlbmNpZXMgPVxuICAgIHByb3BzLmhhc0Vycm9yIHx8XG4gICAgZ2V0SGFzRXJyb3JPblJlbWFpbmluZ0xhbmd1YWdlcyhwcm9wcy5lcnJvcnMsIHByb3BzLnNlbGVjdGVkQ3VycmVuY3kpO1xuXG4gIGNvbnN0IGhhc1dhcm5pbmdJblJlbWFpbmluZ0N1cnJlbmNpZXMgPVxuICAgIHByb3BzLmhhc1dhcm5pbmcgfHxcbiAgICBnZXRIYXNXYXJuaW5nT25SZW1haW5pbmdMYW5ndWFnZXMocHJvcHMud2FybmluZ3MsIHByb3BzLnNlbGVjdGVkQ3VycmVuY3kpO1xuXG4gIGlmIChoYXNFcnJvckluUmVtYWluaW5nQ3VycmVuY2llcyB8fCBoYXNXYXJuaW5nSW5SZW1haW5pbmdDdXJyZW5jaWVzKSB7XG4gICAgLy8gdGhpcyB1cGRhdGUgd2l0aGluIHJlbmRlciByZXBsYWNlcyB0aGUgb2xkIGBnZXREZXJpdmVkU3RhdGVGcm9tUHJvcHNgIGZ1bmN0aW9uYWxpdHlcbiAgICAvLyBodHRwczovL3JlYWN0anMub3JnL2RvY3MvaG9va3MtZmFxLmh0bWwjaG93LWRvLWktaW1wbGVtZW50LWdldGRlcml2ZWRzdGF0ZWZyb21wcm9wc1xuICAgIGlmICghYXJlQ3VycmVuY2llc0V4cGFuZGVkKSB7XG4gICAgICB0b2dnbGVDdXJyZW5jaWVzKCk7XG4gICAgfVxuICB9XG5cbiAgY29uc3QgY3VycmVuY2llcyA9IHNvcnRDdXJyZW5jaWVzKFxuICAgIHByb3BzLnNlbGVjdGVkQ3VycmVuY3ksXG4gICAgT2JqZWN0LmtleXMocHJvcHMudmFsdWUpXG4gICk7XG5cbiAgY29uc3Qgc2hvdWxkUmVuZGVyQ3VycmVuY3lDb250cm9sID1cbiAgICBjdXJyZW5jaWVzLmxlbmd0aCA+IDEgJiYgIXByb3BzLmhpZGVDdXJyZW5jeUV4cGFuc2lvbkNvbnRyb2xzO1xuXG4gIGlmIChwcm9wcy5oaWRlQ3VycmVuY3lFeHBhbnNpb25Db250cm9scykge1xuICAgIHdhcm5pbmcoXG4gICAgICB0eXBlb2YgcHJvcHMuZGVmYXVsdEV4cGFuZEN1cnJlbmNpZXMgIT09ICdib29sZWFuJyxcbiAgICAgICdMb2NhbGl6ZWRNb25leUlucHV0OiBcImRlZmF1bHRFeHBhbmRDdXJyZW5jaWVzXCIgZG9lcyBub3QgaGF2ZSBhbnkgZWZmZWN0IHdoZW4gXCJoaWRlQ3VycmVuY3lFeHBhbnNpb25Db250cm9sc1wiIGlzIHNldC4nXG4gICAgKTtcbiAgfVxuXG4gIHJldHVybiAoXG4gICAgPENvbnN0cmFpbnRzLkhvcml6b250YWwgbWF4PXtob3Jpem9udGFsQ29uc3RyYWludH0+XG4gICAgICA8U3RhY2sgc2NhbGU9XCJ4c1wiPlxuICAgICAgICA8U3RhY2sgc2NhbGU9XCJzXCI+XG4gICAgICAgICAge2N1cnJlbmNpZXMubWFwKChjdXJyZW5jeSwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGlzRmlyc3RDdXJyZW5jeSA9IGluZGV4ID09PSAwO1xuICAgICAgICAgICAgaWYgKCFpc0ZpcnN0Q3VycmVuY3kgJiYgIWFyZUN1cnJlbmNpZXNFeHBhbmRlZCkgcmV0dXJuIG51bGw7XG5cbiAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgIDxMb2NhbGl6ZWRJbnB1dFxuICAgICAgICAgICAgICAgIGtleT17Y3VycmVuY3l9XG4gICAgICAgICAgICAgICAgaWQ9e0xvY2FsaXplZE1vbmV5SW5wdXQuZ2V0SWQoaWQsIGN1cnJlbmN5KX1cbiAgICAgICAgICAgICAgICBuYW1lPXtMb2NhbGl6ZWRNb25leUlucHV0LmdldE5hbWUocHJvcHMubmFtZSwgY3VycmVuY3kpfVxuICAgICAgICAgICAgICAgIHZhbHVlPXtwcm9wcy52YWx1ZVtjdXJyZW5jeV19XG4gICAgICAgICAgICAgICAgb25DaGFuZ2U9e3Byb3BzLm9uQ2hhbmdlfVxuICAgICAgICAgICAgICAgIGN1cnJlbmN5PXtjdXJyZW5jeX1cbiAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj17XG4gICAgICAgICAgICAgICAgICBwcm9wcy5wbGFjZWhvbGRlciA/IHByb3BzLnBsYWNlaG9sZGVyW2N1cnJlbmN5XSA6IHVuZGVmaW5lZFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBvbkJsdXI9e3Byb3BzLm9uQmx1cn1cbiAgICAgICAgICAgICAgICBvbkZvY3VzPXtwcm9wcy5vbkZvY3VzfVxuICAgICAgICAgICAgICAgIGlzQ29uZGVuc2VkPXtwcm9wcy5pc0NvbmRlbnNlZH1cbiAgICAgICAgICAgICAgICBpc0Rpc2FibGVkPXtwcm9wcy5pc0Rpc2FibGVkfVxuICAgICAgICAgICAgICAgIGlzUmVhZE9ubHk9e3Byb3BzLmlzUmVhZE9ubHl9XG4gICAgICAgICAgICAgICAgaGFzRXJyb3I9e0Jvb2xlYW4oXG4gICAgICAgICAgICAgICAgICBwcm9wcy5oYXNFcnJvciB8fCAocHJvcHMuZXJyb3JzICYmIHByb3BzLmVycm9yc1tjdXJyZW5jeV0pXG4gICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICBoYXNXYXJuaW5nPXtCb29sZWFuKFxuICAgICAgICAgICAgICAgICAgcHJvcHMuaGFzV2FybmluZyB8fFxuICAgICAgICAgICAgICAgICAgICAocHJvcHMud2FybmluZ3MgJiYgcHJvcHMud2FybmluZ3NbY3VycmVuY3ldKVxuICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgd2FybmluZz17cHJvcHMud2FybmluZ3MgJiYgcHJvcHMud2FybmluZ3NbY3VycmVuY3ldfVxuICAgICAgICAgICAgICAgIGVycm9yPXtwcm9wcy5lcnJvcnMgJiYgcHJvcHMuZXJyb3JzW2N1cnJlbmN5XX1cbiAgICAgICAgICAgICAgICB7Li4uY3JlYXRlTG9jYWxpemVkRGF0YUF0dHJpYnV0ZXMoXG4gICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGhvcml6b250YWxDb25zdHJhaW50LFxuICAgICAgICAgICAgICAgICAgICAuLi5wcm9wcyxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICBjdXJyZW5jeVxuICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgaGFzSGlnaFByZWNpc2lvbkJhZGdlPXtwcm9wcy5oYXNIaWdoUHJlY2lzaW9uQmFkZ2V9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICApO1xuICAgICAgICAgIH0pfVxuICAgICAgICA8L1N0YWNrPlxuICAgICAgICB7c2hvdWxkUmVuZGVyQ3VycmVuY3lDb250cm9sICYmIChcbiAgICAgICAgICA8TG9jYWxpemVkSW5wdXRUb2dnbGVcbiAgICAgICAgICAgIGljb249ezxDb2luc0ljb24gLz59XG4gICAgICAgICAgICBvbkNsaWNrPXtvbkxvY2FsaXplZE1vbmV5SW5wdXRUb2dnbGV9XG4gICAgICAgICAgICBpc09wZW49e2FyZUN1cnJlbmNpZXNFeHBhbmRlZH1cbiAgICAgICAgICAgIGlzRGlzYWJsZWQ9e1xuICAgICAgICAgICAgICBhcmVDdXJyZW5jaWVzRXhwYW5kZWQgJiZcbiAgICAgICAgICAgICAgQm9vbGVhbihcbiAgICAgICAgICAgICAgICBoYXNFcnJvckluUmVtYWluaW5nQ3VycmVuY2llcyB8fCBoYXNXYXJuaW5nSW5SZW1haW5pbmdDdXJyZW5jaWVzXG4gICAgICAgICAgICAgIClcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHNob3dNZXNzYWdlPXtpbnRsLmZvcm1hdE1lc3NhZ2UobWVzc2FnZXMuc2hvdywge1xuICAgICAgICAgICAgICByZW1haW5pbmdDdXJyZW5jaWVzOiBjdXJyZW5jaWVzLmxlbmd0aCAtIDEsXG4gICAgICAgICAgICB9KX1cbiAgICAgICAgICAgIGhpZGVNZXNzYWdlPXtpbnRsLmZvcm1hdE1lc3NhZ2UobWVzc2FnZXMuaGlkZSwge1xuICAgICAgICAgICAgICByZW1haW5pbmdDdXJyZW5jaWVzOiBjdXJyZW5jaWVzLmxlbmd0aCAtIDEsXG4gICAgICAgICAgICB9KX1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgPC9TdGFjaz5cbiAgICA8L0NvbnN0cmFpbnRzLkhvcml6b250YWw+XG4gICk7XG59O1xuXG5Mb2NhbGl6ZWRNb25leUlucHV0LmRpc3BsYXlOYW1lID0gJ0xvY2FsaXplZE1vbmV5SW5wdXQnO1xuXG5Mb2NhbGl6ZWRNb25leUlucHV0LmdldElkID0gZ2V0SWQ7XG5cbkxvY2FsaXplZE1vbmV5SW5wdXQuZ2V0TmFtZSA9IGdldE5hbWU7XG5cbkxvY2FsaXplZE1vbmV5SW5wdXQuY29udmVydFRvTW9uZXlWYWx1ZXMgPSAoXG4gIHZhbHVlczogVFZhbHVlW10sXG4gIGxvY2FsZTogc3RyaW5nXG4pOiBBcnJheTxUTW9uZXlWYWx1ZSB8IG51bGw+ID0+XG4gIE9iamVjdC52YWx1ZXModmFsdWVzKS5tYXA8VE1vbmV5VmFsdWUgfCBudWxsPigodmFsdWUpID0+IHtcbiAgICByZXR1cm4gTW9uZXlJbnB1dC5jb252ZXJ0VG9Nb25leVZhbHVlKHZhbHVlLCBsb2NhbGUpO1xuICB9KTtcblxuTG9jYWxpemVkTW9uZXlJbnB1dC5wYXJzZU1vbmV5VmFsdWVzID0gKFxuICBtb25leVZhbHVlczogVE1vbmV5VmFsdWVbXSA9IFtdLFxuICBsb2NhbGU6IHN0cmluZ1xuKTogUmVjb3JkPFRDdXJyZW5jeUNvZGUsIFRWYWx1ZT4gPT5cbiAgbW9uZXlWYWx1ZXMucmVkdWNlPFJlY29yZDxUQ3VycmVuY3lDb2RlLCBUVmFsdWU+PigoYWxsVmFsdWVzLCBtb25leVZhbHVlKSA9PiB7XG4gICAgY29uc3QgdmFsdWUgPSBNb25leUlucHV0LnBhcnNlTW9uZXlWYWx1ZShtb25leVZhbHVlLCBsb2NhbGUpO1xuICAgIHJldHVybiB7XG4gICAgICAuLi5hbGxWYWx1ZXMsXG4gICAgICBbdmFsdWUuY3VycmVuY3lDb2RlXTogdmFsdWUsXG4gICAgfTtcbiAgfSwge30gYXMgUmVjb3JkPFRDdXJyZW5jeUNvZGUsIFRWYWx1ZT4pO1xuXG5Mb2NhbGl6ZWRNb25leUlucHV0LmdldEhpZ2hQcmVjaXNpb25DdXJyZW5jaWVzID0gKFxuICB2YWx1ZXM6IFJlY29yZDxUQ3VycmVuY3lDb2RlLCBUVmFsdWU+LFxuICBsb2NhbGU6IHN0cmluZ1xuKTogVEN1cnJlbmN5Q29kZVtdID0+IHtcbiAgY29uc3QgdHlwZWRDdXJyZW5jeUNvZGVzID0gT2JqZWN0LmtleXModmFsdWVzKSBhcyBUQ3VycmVuY3lDb2RlW107XG4gIHJldHVybiB0eXBlZEN1cnJlbmN5Q29kZXMuZmlsdGVyKChjdXJyZW5jeUNvZGUpID0+XG4gICAgTW9uZXlJbnB1dC5pc0hpZ2hQcmVjaXNpb24odmFsdWVzW2N1cnJlbmN5Q29kZV0sIGxvY2FsZSlcbiAgKTtcbn07XG5cbkxvY2FsaXplZE1vbmV5SW5wdXQuZ2V0RW1wdHlDdXJyZW5jaWVzID0gKFxuICB2YWx1ZXM6IFJlY29yZDxUQ3VycmVuY3lDb2RlLCBUVmFsdWU+XG4pOiBUQ3VycmVuY3lDb2RlW10gPT4ge1xuICBjb25zdCB0eXBlZEN1cnJlbmN5Q29kZXMgPSBPYmplY3Qua2V5cyh2YWx1ZXMpIGFzIFRDdXJyZW5jeUNvZGVbXTtcbiAgcmV0dXJuIHR5cGVkQ3VycmVuY3lDb2Rlcy5maWx0ZXIoKGN1cnJlbmN5Q29kZSkgPT5cbiAgICBNb25leUlucHV0LmlzRW1wdHkodmFsdWVzW2N1cnJlbmN5Q29kZV0pXG4gICk7XG59O1xuXG5leHBvcnQgZGVmYXVsdCBMb2NhbGl6ZWRNb25leUlucHV0O1xuIl19 */",
90
92
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
91
93
  };
92
94
  const LocalizedInput = props => {
@@ -149,7 +151,10 @@ LocalizedInput.propTypes = process.env.NODE_ENV !== "production" ? {
149
151
  hasHighPrecisionBadge: _pt__default["default"].bool
150
152
  } : {};
151
153
  LocalizedInput.displayName = 'LocalizedInput';
152
- const LocalizedMoneyInput = props => {
154
+ const LocalizedMoneyInput = _ref2 => {
155
+ let _ref2$horizontalConst = _ref2.horizontalConstraint,
156
+ horizontalConstraint = _ref2$horizontalConst === void 0 ? 'scale' : _ref2$horizontalConst,
157
+ props = _objectWithoutProperties(_ref2, _excluded);
153
158
  const intl = reactIntl.useIntl();
154
159
  const defaultExpansionState = props.hideCurrencyExpansionControls || props.defaultExpandCurrencies ||
155
160
  // default to `false`, because useToggleState defaults to `true`
@@ -175,7 +180,7 @@ const LocalizedMoneyInput = props => {
175
180
  process.env.NODE_ENV !== "production" ? utils.warning(typeof props.defaultExpandCurrencies !== 'boolean', 'LocalizedMoneyInput: "defaultExpandCurrencies" does not have any effect when "hideCurrencyExpansionControls" is set.') : void 0;
176
181
  }
177
182
  return jsxRuntime.jsx(Constraints__default["default"].Horizontal, {
178
- max: props.horizontalConstraint,
183
+ max: horizontalConstraint,
179
184
  children: jsxRuntime.jsxs(Stack__default["default"], {
180
185
  scale: "xs",
181
186
  children: [jsxRuntime.jsx(Stack__default["default"], {
@@ -199,7 +204,9 @@ const LocalizedMoneyInput = props => {
199
204
  hasWarning: Boolean(props.hasWarning || props.warnings && props.warnings[currency]),
200
205
  warning: props.warnings && props.warnings[currency],
201
206
  error: props.errors && props.errors[currency]
202
- }, localizedUtils.createLocalizedDataAttributes(props, currency)), {}, {
207
+ }, localizedUtils.createLocalizedDataAttributes(_objectSpread({
208
+ horizontalConstraint
209
+ }, props), currency)), {}, {
203
210
  hasHighPrecisionBadge: props.hasHighPrecisionBadge
204
211
  }), currency);
205
212
  })
@@ -242,9 +249,6 @@ LocalizedMoneyInput.propTypes = process.env.NODE_ENV !== "production" ? {
242
249
  LocalizedMoneyInput.displayName = 'LocalizedMoneyInput';
243
250
  LocalizedMoneyInput.getId = localizedUtils.getId;
244
251
  LocalizedMoneyInput.getName = localizedUtils.getName;
245
- LocalizedMoneyInput.defaultProps = {
246
- horizontalConstraint: 'scale'
247
- };
248
252
  LocalizedMoneyInput.convertToMoneyValues = (values, locale) => {
249
253
  var _context;
250
254
  return _mapInstanceProperty__default["default"](_context = _Object$values__default["default"](values)).call(_context, value => {
@@ -272,7 +276,7 @@ LocalizedMoneyInput.getEmptyCurrencies = values => {
272
276
  var LocalizedMoneyInput$1 = LocalizedMoneyInput;
273
277
 
274
278
  // NOTE: This string will be replaced on build time with the package version.
275
- var version = "19.20.0";
279
+ var version = "19.21.0";
276
280
 
277
281
  exports["default"] = LocalizedMoneyInput$1;
278
282
  exports.version = version;
@@ -9,6 +9,7 @@ var _Object$getOwnPropertyDescriptors = require('@babel/runtime-corejs3/core-js-
9
9
  var _Object$defineProperties = require('@babel/runtime-corejs3/core-js-stable/object/define-properties');
10
10
  var _Object$defineProperty = require('@babel/runtime-corejs3/core-js-stable/object/define-property');
11
11
  var _slicedToArray = require('@babel/runtime-corejs3/helpers/slicedToArray');
12
+ var _objectWithoutProperties = require('@babel/runtime-corejs3/helpers/objectWithoutProperties');
12
13
  var _defineProperty = require('@babel/runtime-corejs3/helpers/defineProperty');
13
14
  require('prop-types');
14
15
  var _filterInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/filter');
@@ -67,6 +68,7 @@ var messages = reactIntl.defineMessages({
67
68
  }
68
69
  });
69
70
 
71
+ const _excluded = ["horizontalConstraint"];
70
72
  function ownKeys(e, r) { var t = _Object$keys__default["default"](e); if (_Object$getOwnPropertySymbols__default["default"]) { var o = _Object$getOwnPropertySymbols__default["default"](e); r && (o = _filterInstanceProperty__default["default"](o).call(o, function (r) { return _Object$getOwnPropertyDescriptor__default["default"](e, r).enumerable; })), t.push.apply(t, o); } return t; }
71
73
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var _context2, _context3; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty__default["default"](_context2 = ownKeys(Object(t), !0)).call(_context2, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](e, _Object$getOwnPropertyDescriptors__default["default"](t)) : _forEachInstanceProperty__default["default"](_context3 = ownKeys(Object(t))).call(_context3, function (r) { _Object$defineProperty__default["default"](e, r, _Object$getOwnPropertyDescriptor__default["default"](t, r)); }); } return e; }
72
74
  const sequentialId = utils.createSequentialId('localized-money-input-');
@@ -125,7 +127,10 @@ const LocalizedInput = props => {
125
127
  };
126
128
  LocalizedInput.propTypes = {};
127
129
  LocalizedInput.displayName = 'LocalizedInput';
128
- const LocalizedMoneyInput = props => {
130
+ const LocalizedMoneyInput = _ref2 => {
131
+ let _ref2$horizontalConst = _ref2.horizontalConstraint,
132
+ horizontalConstraint = _ref2$horizontalConst === void 0 ? 'scale' : _ref2$horizontalConst,
133
+ props = _objectWithoutProperties(_ref2, _excluded);
129
134
  const intl = reactIntl.useIntl();
130
135
  const defaultExpansionState = props.hideCurrencyExpansionControls || props.defaultExpandCurrencies ||
131
136
  // default to `false`, because useToggleState defaults to `true`
@@ -149,7 +154,7 @@ const LocalizedMoneyInput = props => {
149
154
  const shouldRenderCurrencyControl = currencies.length > 1 && !props.hideCurrencyExpansionControls;
150
155
  if (props.hideCurrencyExpansionControls) ;
151
156
  return jsxRuntime.jsx(Constraints__default["default"].Horizontal, {
152
- max: props.horizontalConstraint,
157
+ max: horizontalConstraint,
153
158
  children: jsxRuntime.jsxs(Stack__default["default"], {
154
159
  scale: "xs",
155
160
  children: [jsxRuntime.jsx(Stack__default["default"], {
@@ -173,7 +178,9 @@ const LocalizedMoneyInput = props => {
173
178
  hasWarning: Boolean(props.hasWarning || props.warnings && props.warnings[currency]),
174
179
  warning: props.warnings && props.warnings[currency],
175
180
  error: props.errors && props.errors[currency]
176
- }, localizedUtils.createLocalizedDataAttributes(props, currency)), {}, {
181
+ }, localizedUtils.createLocalizedDataAttributes(_objectSpread({
182
+ horizontalConstraint
183
+ }, props), currency)), {}, {
177
184
  hasHighPrecisionBadge: props.hasHighPrecisionBadge
178
185
  }), currency);
179
186
  })
@@ -196,9 +203,6 @@ LocalizedMoneyInput.propTypes = {};
196
203
  LocalizedMoneyInput.displayName = 'LocalizedMoneyInput';
197
204
  LocalizedMoneyInput.getId = localizedUtils.getId;
198
205
  LocalizedMoneyInput.getName = localizedUtils.getName;
199
- LocalizedMoneyInput.defaultProps = {
200
- horizontalConstraint: 'scale'
201
- };
202
206
  LocalizedMoneyInput.convertToMoneyValues = (values, locale) => {
203
207
  var _context;
204
208
  return _mapInstanceProperty__default["default"](_context = _Object$values__default["default"](values)).call(_context, value => {
@@ -226,7 +230,7 @@ LocalizedMoneyInput.getEmptyCurrencies = values => {
226
230
  var LocalizedMoneyInput$1 = LocalizedMoneyInput;
227
231
 
228
232
  // NOTE: This string will be replaced on build time with the package version.
229
- var version = "19.20.0";
233
+ var version = "19.21.0";
230
234
 
231
235
  exports["default"] = LocalizedMoneyInput$1;
232
236
  exports.version = version;
@@ -5,6 +5,7 @@ import _Object$getOwnPropertyDescriptors from '@babel/runtime-corejs3/core-js-st
5
5
  import _Object$defineProperties from '@babel/runtime-corejs3/core-js-stable/object/define-properties';
6
6
  import _Object$defineProperty from '@babel/runtime-corejs3/core-js-stable/object/define-property';
7
7
  import _slicedToArray from '@babel/runtime-corejs3/helpers/esm/slicedToArray';
8
+ import _objectWithoutProperties from '@babel/runtime-corejs3/helpers/esm/objectWithoutProperties';
8
9
  import _defineProperty from '@babel/runtime-corejs3/helpers/esm/defineProperty';
9
10
  import _pt from 'prop-types';
10
11
  import _filterInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instance/filter';
@@ -45,6 +46,7 @@ var messages = defineMessages({
45
46
  }
46
47
  });
47
48
 
49
+ const _excluded = ["horizontalConstraint"];
48
50
  function ownKeys(e, r) { var t = _Object$keys(e); if (_Object$getOwnPropertySymbols) { var o = _Object$getOwnPropertySymbols(e); r && (o = _filterInstanceProperty(o).call(o, function (r) { return _Object$getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
49
51
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var _context2, _context3; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty(_context2 = ownKeys(Object(t), !0)).call(_context2, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(e, _Object$getOwnPropertyDescriptors(t)) : _forEachInstanceProperty(_context3 = ownKeys(Object(t))).call(_context3, function (r) { _Object$defineProperty(e, r, _Object$getOwnPropertyDescriptor(t, r)); }); } return e; }
50
52
  function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
@@ -63,7 +65,7 @@ var _ref = process.env.NODE_ENV === "production" ? {
63
65
  } : {
64
66
  name: "1ysn02y-LocalizedInput",
65
67
  styles: "width:100%;position:relative;display:flex;label:LocalizedInput;",
66
- map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxvY2FsaXplZC1tb25leS1pbnB1dC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBcVBnQiIsImZpbGUiOiJsb2NhbGl6ZWQtbW9uZXktaW5wdXQudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdXNlQ2FsbGJhY2ssIHR5cGUgUmVhY3ROb2RlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgdXNlSW50bCB9IGZyb20gJ3JlYWN0LWludGwnO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xuaW1wb3J0IHsgdXNlVG9nZ2xlU3RhdGUsIHVzZUZpZWxkSWQgfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9ob29rcyc7XG5pbXBvcnQgTW9uZXlJbnB1dCwge1xuICB0eXBlIFRDdXJyZW5jeUNvZGUsXG4gIHR5cGUgVE1vbmV5VmFsdWUsXG4gIHR5cGUgVFZhbHVlLFxufSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9tb25leS1pbnB1dCc7XG5pbXBvcnQgeyBFcnJvck1lc3NhZ2UsIFdhcm5pbmdNZXNzYWdlIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvbWVzc2FnZXMnO1xuaW1wb3J0IFN0YWNrIGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L3NwYWNpbmdzLXN0YWNrJztcbmltcG9ydCBDb25zdHJhaW50cyBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9jb25zdHJhaW50cyc7XG5pbXBvcnQgeyBDb2luc0ljb24gfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9pY29ucyc7XG5pbXBvcnQge1xuICBjcmVhdGVMb2NhbGl6ZWREYXRhQXR0cmlidXRlcyxcbiAgZ2V0SGFzRXJyb3JPblJlbWFpbmluZ0xhbmd1YWdlcyxcbiAgZ2V0SGFzV2FybmluZ09uUmVtYWluaW5nTGFuZ3VhZ2VzLFxuICBnZXRJZCxcbiAgZ2V0TmFtZSxcbn0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvbG9jYWxpemVkLXV0aWxzJztcbmltcG9ydCB7XG4gIGNyZWF0ZVNlcXVlbnRpYWxJZCxcbiAgZmlsdGVyRGF0YUF0dHJpYnV0ZXMsXG4gIHdhcm5pbmcsXG59IGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L3V0aWxzJztcbmltcG9ydCB7IExvY2FsaXplZElucHV0VG9nZ2xlIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvaW5wdXQtdXRpbHMnO1xuaW1wb3J0IG1lc3NhZ2VzIGZyb20gJy4vbWVzc2FnZXMnO1xuXG50eXBlIFRDdXN0b21FdmVudCA9IHtcbiAgdGFyZ2V0OiB7XG4gICAgaWQ/OiBzdHJpbmc7XG4gICAgbmFtZT86IHN0cmluZztcbiAgICB2YWx1ZT86IHN0cmluZyB8IHN0cmluZ1tdIHwgbnVsbDtcbiAgfTtcbiAgcGVyc2lzdD86ICgpID0+IHZvaWQ7XG59O1xuXG5leHBvcnQgdHlwZSBUTG9jYWxpemVkTW9uZXlJbnB1dFByb3BzID0ge1xuICAvKipcbiAgICogVXNlZCBhcyBIVE1MIGlkIHByb3BlcnR5LlxuICAgKi9cbiAgaWQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgcHJlZml4IHVzZWQgdG8gY3JlYXRlIGEgSFRNTCBgbmFtZWAgcHJvcGVydHkgZm9yIHRoZSBhbW91bnQgaW5wdXQgZmllbGQgKGAke25hbWV9LmFtb3VudGApLlxuICAgKi9cbiAgbmFtZT86IHN0cmluZztcbiAgLyoqXG4gICAqIHZhbHVlIG9mIHBvc3NpYmxlIGN1cnJlbmN5XG4gICAqIDxici8+XG4gICAqIHRoZSBpbnB1dCBkb2Vzbid0IGFjY2VwdCBhIFwiY3VycmVuY2llc1wiIHByb3AsIGluc3RlYWQgYWxsIHBvc3NpYmxlXG4gICAqIGN1cnJlbmNpZXMgaGF2ZSB0byBleGlzdCAod2l0aCBlbXB0eSBvciBmaWxsZWQgc3RyaW5ncykgb24gdGhlIHZhbHVlOlxuICAgKiB7IEVVUjoge2Ftb3VudDogJzEyLjAwJywgY3VycmVuY3lDb2RlOiAnRVVSJ30sIFVTRDoge2Ftb3VudDogJycsIGN1cnJlbmN5Q29kZTogJ1VTRCd9fVxuICAgKi9cbiAgdmFsdWU6IFJlY29yZDxzdHJpbmcsIFRWYWx1ZT47XG4gIC8qKlxuICAgKiBDYWxsZWQgd2l0aCB0aGUgZXZlbnQgb2YgdGhlIGlucHV0LlxuICAgKi9cbiAgb25DaGFuZ2U/OiAoZXZlbnQ6IFRDdXN0b21FdmVudCkgPT4gdm9pZDtcbiAgLyoqXG4gICAqIHRoZSBjdXJyZW50bHkgc2VsZWN0ZWQgY3VycmVuY3lcbiAgICovXG4gIHNlbGVjdGVkQ3VycmVuY3k6IHN0cmluZztcbiAgLyoqXG4gICAqIENhbGxlZCB3aGVuIGlucHV0IGlzIGJsdXJyZWRcbiAgICovXG4gIG9uQmx1cj86IChldmVudDogVEN1c3RvbUV2ZW50KSA9PiB2b2lkO1xuICAvKipcbiAgICogQ2FsbGVkIHdoZW4gaW5wdXQgaXMgZm9jdXNlZFxuICAgKi9cbiAgb25Gb2N1cz86IChldmVudDogVEN1c3RvbUV2ZW50KSA9PiB2b2lkO1xuICAvKipcbiAgICogV2lsbCBoaWRlIHRoZSBjdXJyZW5jeSBleHBhbnNpb24gY29udHJvbHMgd2hlbiBzZXQgdG8gYHRydWVgLiBBbGwgY3VycmVuY2llcyB3aWxsIGJlIHNob3duIHdoZW4gc2V0IHRvIGB0cnVlYC5cbiAgICovXG4gIGhpZGVDdXJyZW5jeUV4cGFuc2lvbkNvbnRyb2xzPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIENvbnRyb2xzIHdoZXRoZXIgb25lIG9yIGFsbCBjdXJyZW5jaXJzIGFyZSB2aXNpYmxlIGJ5IGRlZmF1bHRcbiAgICovXG4gIGRlZmF1bHRFeHBhbmRDdXJyZW5jaWVzPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFVzZSB0aGlzIHByb3BlcnR5IHRvIHJlZHVjZSB0aGUgcGFkZGluZ3Mgb2YgdGhlIGNvbXBvbmVudCBmb3IgYSB1aSBjb21wYWN0IHZhcmlhbnRcbiAgICovXG4gIGlzQ29uZGVuc2VkPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEluZGljYXRlcyB0aGF0IHRoZSBpbnB1dCBjYW5ub3QgYmUgbW9kaWZpZWQgKGUuZyBub3QgYXV0aG9yaXplZCwgb3IgY2hhbmdlcyBjdXJyZW50bHkgc2F2aW5nKS5cbiAgICovXG4gIGlzRGlzYWJsZWQ/OiBib29sZWFuO1xuICAvKipcbiAgICogSW5kaWNhdGVzIHRoYXQgdGhlIGZpZWxkIGlzIGRpc3BsYXlpbmcgcmVhZC1vbmx5IGNvbnRlbnRcbiAgICovXG4gIGlzUmVhZE9ubHk/OiBib29sZWFuO1xuICAvKipcbiAgICogUGxhY2Vob2xkZXIgdGV4dCBmb3IgdGhlIGlucHV0XG4gICAqL1xuICBwbGFjZWhvbGRlcj86IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG4gIC8qKlxuICAgKiBIb3Jpem9udGFsIHNpemUgbGltaXQgb2YgdGhlIGlucHV0IGZpZWxkcy5cbiAgICovXG4gIGhvcml6b250YWxDb25zdHJhaW50PzpcbiAgICB8IDNcbiAgICB8IDRcbiAgICB8IDVcbiAgICB8IDZcbiAgICB8IDdcbiAgICB8IDhcbiAgICB8IDlcbiAgICB8IDEwXG4gICAgfCAxMVxuICAgIHwgMTJcbiAgICB8IDEzXG4gICAgfCAxNFxuICAgIHwgMTVcbiAgICB8IDE2XG4gICAgfCAnc2NhbGUnXG4gICAgfCAnYXV0byc7XG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgdGhhdCBpbnB1dCBoYXMgZXJyb3JzXG4gICAqL1xuICBoYXNFcnJvcj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBDb250cm9sIHRvIGluZGljYXRlIG9uIHRoZSBpbnB1dCBpZiB0aGVyZSBhcmUgdmFsdWVzIHRoYXQgYXJlIHBvdGVudGlhbGx5IGludmFsaWRcbiAgICovXG4gIGhhc1dhcm5pbmc/OiBib29sZWFuO1xuICAvKipcbiAgICogQSBtYXAgb2YgZXJyb3JzLiBFcnJvciBtZXNzYWdlcyBmb3Iga25vd24gZXJyb3JzIGFyZSByZW5kZXJlZCBhdXRvbWF0aWNhbGx5LlxuICAgKiA8YnI+XG4gICAqIFVua25vd24gZXJyb3JzIHdpbGwgYmUgZm9yd2FyZGVkIHRvIGByZW5kZXJFcnJvcmBcbiAgICovXG4gIGVycm9ycz86IFJlY29yZDxzdHJpbmcsIFJlYWN0Tm9kZT47XG4gIC8qKlxuICAgKiBBIG1hcCBvZiB3YXJuaW5ncy5cbiAgICovXG4gIHdhcm5pbmdzPzogUmVjb3JkPHN0cmluZywgUmVhY3ROb2RlPjtcbiAgLyoqXG4gICAqIFNob3dzIGhpZ2ggcHJlY2lzaW9uIGJhZGdlIGluIGNhc2UgY3VycmVudCB2YWx1ZSB1c2VzIGhpZ2ggcHJlY2lzaW9uLlxuICAgKi9cbiAgaGFzSGlnaFByZWNpc2lvbkJhZGdlPzogYm9vbGVhbjtcbn07XG5cbnR5cGUgVExvY2FsaXplZElucHV0UHJvcHMgPSB7XG4gIC8qKlxuICAgKiBVc2VkIGFzIEhUTUwgaWQgcHJvcGVydHkuXG4gICAqL1xuICBpZD86IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBwcmVmaXggdXNlZCB0byBjcmVhdGUgYSBIVE1MIGBuYW1lYCBwcm9wZXJ0eSBmb3IgdGhlIGFtb3VudCBpbnB1dCBmaWVsZCAoYCR7bmFtZX0uYW1vdW50YCkuXG4gICAqL1xuICBuYW1lPzogc3RyaW5nO1xuICAvKipcbiAgICogdmFsdWUgb2YgcG9zc2libGUgY3VycmVuY3lcbiAgICovXG4gIHZhbHVlOiBUVmFsdWU7XG4gIC8qKlxuICAgKiBDYWxsZWQgd2l0aCB0aGUgZXZlbnQgb2YgdGhlIGlucHV0LlxuICAgKi9cbiAgb25DaGFuZ2U/OiAoZXZlbnQ6IFRDdXN0b21FdmVudCkgPT4gdm9pZDtcbiAgLyoqXG4gICAqIENhbGxlZCB3aXRoIHRoZSBldmVudCBvZiB0aGUgaW5wdXQuXG4gICAqL1xuICBjdXJyZW5jeTogc3RyaW5nO1xuICAvKipcbiAgICogQ2FsbGVkIHdoZW4gaW5wdXQgaXMgYmx1cnJlZFxuICAgKi9cbiAgb25CbHVyPzogKGV2ZW50OiBUQ3VzdG9tRXZlbnQpID0+IHZvaWQ7XG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiBpbnB1dCBpcyBmb2N1c2VkXG4gICAqL1xuICBvbkZvY3VzPzogKGV2ZW50OiBUQ3VzdG9tRXZlbnQpID0+IHZvaWQ7XG4gIC8qKlxuICAgKiBVc2UgdGhpcyBwcm9wZXJ0eSB0byByZWR1Y2UgdGhlIHBhZGRpbmdzIG9mIHRoZSBjb21wb25lbnQgZm9yIGEgdWkgY29tcGFjdCB2YXJpYW50XG4gICAqL1xuICBpc0NvbmRlbnNlZD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgdGhhdCB0aGUgaW5wdXQgY2Fubm90IGJlIG1vZGlmaWVkIChlLmcgbm90IGF1dGhvcml6ZWQsIG9yIGNoYW5nZXMgY3VycmVudGx5IHNhdmluZykuXG4gICAqL1xuICBpc0Rpc2FibGVkPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEluZGljYXRlcyB0aGF0IHRoZSBmaWVsZCBpcyBkaXNwbGF5aW5nIHJlYWQtb25seSBjb250ZW50XG4gICAqL1xuICBpc1JlYWRPbmx5PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEluZGljYXRlcyB0aGF0IGlucHV0IGhhcyBlcnJvcnNcbiAgICovXG4gIGhhc0Vycm9yPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIENvbnRyb2wgdG8gaW5kaWNhdGUgb24gdGhlIGlucHV0IGlmIHRoZXJlIGFyZSB2YWx1ZXMgdGhhdCBhcmUgcG90ZW50aWFsbHkgaW52YWxpZFxuICAgKi9cbiAgaGFzV2FybmluZz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBQbGFjZWhvbGRlciB0ZXh0IGZvciB0aGUgaW5wdXRcbiAgICovXG4gIHBsYWNlaG9sZGVyPzogc3RyaW5nO1xuICAvKipcbiAgICogQSBtYXAgb2YgZXJyb3JzLiBFcnJvciBtZXNzYWdlcyBmb3Iga25vd24gZXJyb3JzIGFyZSByZW5kZXJlZCBhdXRvbWF0aWNhbGx5LlxuICAgKiA8YnI+XG4gICAqIFVua25vd24gZXJyb3JzIHdpbGwgYmUgZm9yd2FyZGVkIHRvIGByZW5kZXJFcnJvcmBcbiAgICovXG4gIGVycm9yPzogUmVhY3ROb2RlO1xuICAvKipcbiAgICogSFRNTCBub2RlIHRvIGRpc3BsYXkgd2FybmluZ1xuICAgKi9cbiAgd2FybmluZz86IFJlYWN0Tm9kZTtcbiAgLyoqXG4gICAqIFNob3dzIGhpZ2ggcHJlY2lzaW9uIGJhZGdlIGluIGNhc2UgY3VycmVudCB2YWx1ZSB1c2VzIGhpZ2ggcHJlY2lzaW9uLlxuICAgKi9cbiAgaGFzSGlnaFByZWNpc2lvbkJhZGdlPzogYm9vbGVhbjtcbn07XG5cbmNvbnN0IHNlcXVlbnRpYWxJZCA9IGNyZWF0ZVNlcXVlbnRpYWxJZCgnbG9jYWxpemVkLW1vbmV5LWlucHV0LScpO1xuXG4vLyBzb3J0cyB0aGUgY3VycmVuY2llcyB3aXRoIHRoZSBmb2xsb3dpbmcgcHJpb3JpdHk6XG4vLyAtIFRoZSBzZWxlY3RlZCBjdXJyZW5jeSBpcyBwbGFjZWQgZmlyc3QgKGUuZyBFVVIpXG4vLyAtIEFsbCBvdGhlciBjdXJyZW5jaWVzIGZvbGxvdywgc29ydGVkIGFscGhhYmV0aWNhbGx5IGFzIHdlbGxcbmV4cG9ydCBjb25zdCBzb3J0Q3VycmVuY2llcyA9IChcbiAgc2VsZWN0ZWRDdXJyZW5jeTogc3RyaW5nLFxuICBhbGxDdXJyZW5jaWVzOiBzdHJpbmdbXVxuKSA9PiB7XG4gIGNvbnN0IHJlbWFpbmluZ0N1cnJlbmNpZXMgPSBhbGxDdXJyZW5jaWVzLmZpbHRlcihcbiAgICAoY3VycmVuY3kpID0+IGN1cnJlbmN5ICE9PSBzZWxlY3RlZEN1cnJlbmN5XG4gICk7XG4gIHJldHVybiBbc2VsZWN0ZWRDdXJyZW5jeSwgLi4ucmVtYWluaW5nQ3VycmVuY2llcy5zb3J0KCldO1xufTtcblxuY29uc3QgTG9jYWxpemVkSW5wdXQgPSAocHJvcHM6IFRMb2NhbGl6ZWRJbnB1dFByb3BzKSA9PiB7XG4gIGNvbnN0IHsgb25DaGFuZ2UgfSA9IHByb3BzO1xuICBjb25zdCBoYW5kbGVDaGFuZ2UgPSB1c2VDYWxsYmFjayhcbiAgICAoZXZlbnQpID0+IHtcbiAgICAgIC8vIFdlIG1hbmlwdWxhdGUgdGhlIGV2ZW50IHRvIGFkZCB0aGUgY3VycmVuY3kgdG8gdGhlIHRhcmdldC5cbiAgICAgIC8vIFRoYXQgd2F5IHRoZSB1c2VycyAgY2FuIHJlYWRcbiAgICAgIC8vIGV2ZW50LnRhcmdldC5jdXJyZW5jeSBhbmQgZXZlbnQudGFyZ2V0LnZhbHVlIHRvIGRldGVybWluZSB0aGUgbmV4dCB2YWx1ZS5cbiAgICAgIC8vXG4gICAgICAvLyBXZSBvbmx5IG5lZWQgdGhpcyBpbmZvcm1hdGlvbiBmb3IgdGhlIHN0b3J5LCB0aGUgTUMgYXBwbGljYXRpb24gY29kZSB3aWxsXG4gICAgICAvLyBuZXZlciBuZWVkIHRvIGFjY2VzcyB0aGUgaW5mb3JtYXRpb24gaW4gc3VjaCBhbiBpbmNvbnZlbmllbnQgd2F5LCBhc1xuICAgICAgLy8gRm9ybWlrIGNhbiBkZWFsIHdpdGggYSBuYW1lIGxpa2UgXCJmb28uZW5cIiBhbmQgc2V0cyB0aGUgdmFsdWUgY29ycmVjdGx5LlxuICAgICAgLy8gV2UgY2FuJ3QgdXNlIHRoaXMgYXMgd2UgYXJlbid0IGd1YXJhbnRlZWQgYSBuYW1lIGluIHRoZSBzdG9yeSBhcyB0aGUgdXNlclxuICAgICAgLy8gbWlnaHQgY2xlYXIgaXQgdXNpbmcgdGhlIGtub2IsIGFuZCB0aGVuIHdlIGNhbid0IHBhcnNlIHRoZSBjdXJyZW5jeSBmcm9tXG4gICAgICAvLyB0aGUgaW5wdXQgbmFtZSBhbnltb3JlLlxuICAgICAgLy9cbiAgICAgIGV2ZW50LnRhcmdldC5jdXJyZW5jeSA9IHByb3BzLmN1cnJlbmN5O1xuICAgICAgb25DaGFuZ2U/LihldmVudCk7XG4gICAgfSxcbiAgICBbcHJvcHMuY3VycmVuY3ksIG9uQ2hhbmdlXVxuICApO1xuICByZXR1cm4gKFxuICAgIDxTdGFjayBzY2FsZT1cInhzXCI+XG4gICAgICA8ZGl2XG4gICAgICAgIGNzcz17Y3NzYFxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBgfVxuICAgICAgPlxuICAgICAgICA8TW9uZXlJbnB1dFxuICAgICAgICAgIG5hbWU9e3Byb3BzLm5hbWV9XG4gICAgICAgICAgdmFsdWU9e3Byb3BzLnZhbHVlfVxuICAgICAgICAgIG9uQ2hhbmdlPXtoYW5kbGVDaGFuZ2V9XG4gICAgICAgICAgb25CbHVyPXtwcm9wcy5vbkJsdXJ9XG4gICAgICAgICAgaXNDb25kZW5zZWQ9e3Byb3BzLmlzQ29uZGVuc2VkfVxuICAgICAgICAgIGlzRGlzYWJsZWQ9e3Byb3BzLmlzRGlzYWJsZWR9XG4gICAgICAgICAgaXNSZWFkT25seT17cHJvcHMuaXNSZWFkT25seX1cbiAgICAgICAgICBwbGFjZWhvbGRlcj17cHJvcHMucGxhY2Vob2xkZXJ9XG4gICAgICAgICAgaGFzRXJyb3I9e3Byb3BzLmhhc0Vycm9yfVxuICAgICAgICAgIGhhc1dhcm5pbmc9e3Byb3BzLmhhc1dhcm5pbmd9XG4gICAgICAgICAgaGFzSGlnaFByZWNpc2lvbkJhZGdlPXtwcm9wcy5oYXNIaWdoUHJlY2lzaW9uQmFkZ2V9XG4gICAgICAgICAgey4uLmZpbHRlckRhdGFBdHRyaWJ1dGVzKHByb3BzKX1cbiAgICAgICAgLz5cbiAgICAgIDwvZGl2PlxuICAgICAge3Byb3BzLmVycm9yICYmIDxFcnJvck1lc3NhZ2U+e3Byb3BzLmVycm9yfTwvRXJyb3JNZXNzYWdlPn1cbiAgICAgIHtwcm9wcy53YXJuaW5nICYmIDxXYXJuaW5nTWVzc2FnZT57cHJvcHMud2FybmluZ308L1dhcm5pbmdNZXNzYWdlPn1cbiAgICA8L1N0YWNrPlxuICApO1xufTtcblxuTG9jYWxpemVkSW5wdXQuZGlzcGxheU5hbWUgPSAnTG9jYWxpemVkSW5wdXQnO1xuXG5jb25zdCBMb2NhbGl6ZWRNb25leUlucHV0ID0gKHByb3BzOiBUTG9jYWxpemVkTW9uZXlJbnB1dFByb3BzKSA9PiB7XG4gIGNvbnN0IGludGwgPSB1c2VJbnRsKCk7XG5cbiAgY29uc3QgZGVmYXVsdEV4cGFuc2lvblN0YXRlID1cbiAgICBwcm9wcy5oaWRlQ3VycmVuY3lFeHBhbnNpb25Db250cm9scyB8fFxuICAgIHByb3BzLmRlZmF1bHRFeHBhbmRDdXJyZW5jaWVzIHx8XG4gICAgLy8gZGVmYXVsdCB0byBgZmFsc2VgLCBiZWNhdXNlIHVzZVRvZ2dsZVN0YXRlIGRlZmF1bHRzIHRvIGB0cnVlYFxuICAgIGZhbHNlO1xuXG4gIGNvbnN0IFthcmVDdXJyZW5jaWVzRXhwYW5kZWQsIHRvZ2dsZUN1cnJlbmNpZXNdID0gdXNlVG9nZ2xlU3RhdGUoXG4gICAgZGVmYXVsdEV4cGFuc2lvblN0YXRlXG4gICk7XG5cbiAgY29uc3Qgb25Mb2NhbGl6ZWRNb25leUlucHV0VG9nZ2xlID0gdXNlQ2FsbGJhY2soXG4gICAgKCkgPT4gdG9nZ2xlQ3VycmVuY2llcygpLFxuICAgIFt0b2dnbGVDdXJyZW5jaWVzXVxuICApO1xuXG4gIGNvbnN0IGlkID0gdXNlRmllbGRJZChwcm9wcy5pZCwgc2VxdWVudGlhbElkKTtcblxuICBjb25zdCBoYXNFcnJvckluUmVtYWluaW5nQ3VycmVuY2llcyA9XG4gICAgcHJvcHMuaGFzRXJyb3IgfHxcbiAgICBnZXRIYXNFcnJvck9uUmVtYWluaW5nTGFuZ3VhZ2VzKHByb3BzLmVycm9ycywgcHJvcHMuc2VsZWN0ZWRDdXJyZW5jeSk7XG5cbiAgY29uc3QgaGFzV2FybmluZ0luUmVtYWluaW5nQ3VycmVuY2llcyA9XG4gICAgcHJvcHMuaGFzV2FybmluZyB8fFxuICAgIGdldEhhc1dhcm5pbmdPblJlbWFpbmluZ0xhbmd1YWdlcyhwcm9wcy53YXJuaW5ncywgcHJvcHMuc2VsZWN0ZWRDdXJyZW5jeSk7XG5cbiAgaWYgKGhhc0Vycm9ySW5SZW1haW5pbmdDdXJyZW5jaWVzIHx8IGhhc1dhcm5pbmdJblJlbWFpbmluZ0N1cnJlbmNpZXMpIHtcbiAgICAvLyB0aGlzIHVwZGF0ZSB3aXRoaW4gcmVuZGVyIHJlcGxhY2VzIHRoZSBvbGQgYGdldERlcml2ZWRTdGF0ZUZyb21Qcm9wc2AgZnVuY3Rpb25hbGl0eVxuICAgIC8vIGh0dHBzOi8vcmVhY3Rqcy5vcmcvZG9jcy9ob29rcy1mYXEuaHRtbCNob3ctZG8taS1pbXBsZW1lbnQtZ2V0ZGVyaXZlZHN0YXRlZnJvbXByb3BzXG4gICAgaWYgKCFhcmVDdXJyZW5jaWVzRXhwYW5kZWQpIHtcbiAgICAgIHRvZ2dsZUN1cnJlbmNpZXMoKTtcbiAgICB9XG4gIH1cblxuICBjb25zdCBjdXJyZW5jaWVzID0gc29ydEN1cnJlbmNpZXMoXG4gICAgcHJvcHMuc2VsZWN0ZWRDdXJyZW5jeSxcbiAgICBPYmplY3Qua2V5cyhwcm9wcy52YWx1ZSlcbiAgKTtcblxuICBjb25zdCBzaG91bGRSZW5kZXJDdXJyZW5jeUNvbnRyb2wgPVxuICAgIGN1cnJlbmNpZXMubGVuZ3RoID4gMSAmJiAhcHJvcHMuaGlkZUN1cnJlbmN5RXhwYW5zaW9uQ29udHJvbHM7XG5cbiAgaWYgKHByb3BzLmhpZGVDdXJyZW5jeUV4cGFuc2lvbkNvbnRyb2xzKSB7XG4gICAgd2FybmluZyhcbiAgICAgIHR5cGVvZiBwcm9wcy5kZWZhdWx0RXhwYW5kQ3VycmVuY2llcyAhPT0gJ2Jvb2xlYW4nLFxuICAgICAgJ0xvY2FsaXplZE1vbmV5SW5wdXQ6IFwiZGVmYXVsdEV4cGFuZEN1cnJlbmNpZXNcIiBkb2VzIG5vdCBoYXZlIGFueSBlZmZlY3Qgd2hlbiBcImhpZGVDdXJyZW5jeUV4cGFuc2lvbkNvbnRyb2xzXCIgaXMgc2V0LidcbiAgICApO1xuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8Q29uc3RyYWludHMuSG9yaXpvbnRhbCBtYXg9e3Byb3BzLmhvcml6b250YWxDb25zdHJhaW50fT5cbiAgICAgIDxTdGFjayBzY2FsZT1cInhzXCI+XG4gICAgICAgIDxTdGFjayBzY2FsZT1cInNcIj5cbiAgICAgICAgICB7Y3VycmVuY2llcy5tYXAoKGN1cnJlbmN5LCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgaXNGaXJzdEN1cnJlbmN5ID0gaW5kZXggPT09IDA7XG4gICAgICAgICAgICBpZiAoIWlzRmlyc3RDdXJyZW5jeSAmJiAhYXJlQ3VycmVuY2llc0V4cGFuZGVkKSByZXR1cm4gbnVsbDtcblxuICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgPExvY2FsaXplZElucHV0XG4gICAgICAgICAgICAgICAga2V5PXtjdXJyZW5jeX1cbiAgICAgICAgICAgICAgICBpZD17TG9jYWxpemVkTW9uZXlJbnB1dC5nZXRJZChpZCwgY3VycmVuY3kpfVxuICAgICAgICAgICAgICAgIG5hbWU9e0xvY2FsaXplZE1vbmV5SW5wdXQuZ2V0TmFtZShwcm9wcy5uYW1lLCBjdXJyZW5jeSl9XG4gICAgICAgICAgICAgICAgdmFsdWU9e3Byb3BzLnZhbHVlW2N1cnJlbmN5XX1cbiAgICAgICAgICAgICAgICBvbkNoYW5nZT17cHJvcHMub25DaGFuZ2V9XG4gICAgICAgICAgICAgICAgY3VycmVuY3k9e2N1cnJlbmN5fVxuICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPXtcbiAgICAgICAgICAgICAgICAgIHByb3BzLnBsYWNlaG9sZGVyID8gcHJvcHMucGxhY2Vob2xkZXJbY3VycmVuY3ldIDogdW5kZWZpbmVkXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIG9uQmx1cj17cHJvcHMub25CbHVyfVxuICAgICAgICAgICAgICAgIG9uRm9jdXM9e3Byb3BzLm9uRm9jdXN9XG4gICAgICAgICAgICAgICAgaXNDb25kZW5zZWQ9e3Byb3BzLmlzQ29uZGVuc2VkfVxuICAgICAgICAgICAgICAgIGlzRGlzYWJsZWQ9e3Byb3BzLmlzRGlzYWJsZWR9XG4gICAgICAgICAgICAgICAgaXNSZWFkT25seT17cHJvcHMuaXNSZWFkT25seX1cbiAgICAgICAgICAgICAgICBoYXNFcnJvcj17Qm9vbGVhbihcbiAgICAgICAgICAgICAgICAgIHByb3BzLmhhc0Vycm9yIHx8IChwcm9wcy5lcnJvcnMgJiYgcHJvcHMuZXJyb3JzW2N1cnJlbmN5XSlcbiAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgIGhhc1dhcm5pbmc9e0Jvb2xlYW4oXG4gICAgICAgICAgICAgICAgICBwcm9wcy5oYXNXYXJuaW5nIHx8XG4gICAgICAgICAgICAgICAgICAgIChwcm9wcy53YXJuaW5ncyAmJiBwcm9wcy53YXJuaW5nc1tjdXJyZW5jeV0pXG4gICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICB3YXJuaW5nPXtwcm9wcy53YXJuaW5ncyAmJiBwcm9wcy53YXJuaW5nc1tjdXJyZW5jeV19XG4gICAgICAgICAgICAgICAgZXJyb3I9e3Byb3BzLmVycm9ycyAmJiBwcm9wcy5lcnJvcnNbY3VycmVuY3ldfVxuICAgICAgICAgICAgICAgIHsuLi5jcmVhdGVMb2NhbGl6ZWREYXRhQXR0cmlidXRlcyhwcm9wcywgY3VycmVuY3kpfVxuICAgICAgICAgICAgICAgIGhhc0hpZ2hQcmVjaXNpb25CYWRnZT17cHJvcHMuaGFzSGlnaFByZWNpc2lvbkJhZGdlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9KX1cbiAgICAgICAgPC9TdGFjaz5cbiAgICAgICAge3Nob3VsZFJlbmRlckN1cnJlbmN5Q29udHJvbCAmJiAoXG4gICAgICAgICAgPExvY2FsaXplZElucHV0VG9nZ2xlXG4gICAgICAgICAgICBpY29uPXs8Q29pbnNJY29uIC8+fVxuICAgICAgICAgICAgb25DbGljaz17b25Mb2NhbGl6ZWRNb25leUlucHV0VG9nZ2xlfVxuICAgICAgICAgICAgaXNPcGVuPXthcmVDdXJyZW5jaWVzRXhwYW5kZWR9XG4gICAgICAgICAgICBpc0Rpc2FibGVkPXtcbiAgICAgICAgICAgICAgYXJlQ3VycmVuY2llc0V4cGFuZGVkICYmXG4gICAgICAgICAgICAgIEJvb2xlYW4oXG4gICAgICAgICAgICAgICAgaGFzRXJyb3JJblJlbWFpbmluZ0N1cnJlbmNpZXMgfHwgaGFzV2FybmluZ0luUmVtYWluaW5nQ3VycmVuY2llc1xuICAgICAgICAgICAgICApXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBzaG93TWVzc2FnZT17aW50bC5mb3JtYXRNZXNzYWdlKG1lc3NhZ2VzLnNob3csIHtcbiAgICAgICAgICAgICAgcmVtYWluaW5nQ3VycmVuY2llczogY3VycmVuY2llcy5sZW5ndGggLSAxLFxuICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICBoaWRlTWVzc2FnZT17aW50bC5mb3JtYXRNZXNzYWdlKG1lc3NhZ2VzLmhpZGUsIHtcbiAgICAgICAgICAgICAgcmVtYWluaW5nQ3VycmVuY2llczogY3VycmVuY2llcy5sZW5ndGggLSAxLFxuICAgICAgICAgICAgfSl9XG4gICAgICAgICAgLz5cbiAgICAgICAgKX1cbiAgICAgIDwvU3RhY2s+XG4gICAgPC9Db25zdHJhaW50cy5Ib3Jpem9udGFsPlxuICApO1xufTtcblxuTG9jYWxpemVkTW9uZXlJbnB1dC5kaXNwbGF5TmFtZSA9ICdMb2NhbGl6ZWRNb25leUlucHV0JztcblxuTG9jYWxpemVkTW9uZXlJbnB1dC5nZXRJZCA9IGdldElkO1xuXG5Mb2NhbGl6ZWRNb25leUlucHV0LmdldE5hbWUgPSBnZXROYW1lO1xuXG5Mb2NhbGl6ZWRNb25leUlucHV0LmRlZmF1bHRQcm9wcyA9IHtcbiAgaG9yaXpvbnRhbENvbnN0cmFpbnQ6ICdzY2FsZScsXG59O1xuXG5Mb2NhbGl6ZWRNb25leUlucHV0LmNvbnZlcnRUb01vbmV5VmFsdWVzID0gKFxuICB2YWx1ZXM6IFRWYWx1ZVtdLFxuICBsb2NhbGU6IHN0cmluZ1xuKTogQXJyYXk8VE1vbmV5VmFsdWUgfCBudWxsPiA9PlxuICBPYmplY3QudmFsdWVzKHZhbHVlcykubWFwPFRNb25leVZhbHVlIHwgbnVsbD4oKHZhbHVlKSA9PiB7XG4gICAgcmV0dXJuIE1vbmV5SW5wdXQuY29udmVydFRvTW9uZXlWYWx1ZSh2YWx1ZSwgbG9jYWxlKTtcbiAgfSk7XG5cbkxvY2FsaXplZE1vbmV5SW5wdXQucGFyc2VNb25leVZhbHVlcyA9IChcbiAgbW9uZXlWYWx1ZXM6IFRNb25leVZhbHVlW10gPSBbXSxcbiAgbG9jYWxlOiBzdHJpbmdcbik6IFJlY29yZDxUQ3VycmVuY3lDb2RlLCBUVmFsdWU+ID0+XG4gIG1vbmV5VmFsdWVzLnJlZHVjZTxSZWNvcmQ8VEN1cnJlbmN5Q29kZSwgVFZhbHVlPj4oKGFsbFZhbHVlcywgbW9uZXlWYWx1ZSkgPT4ge1xuICAgIGNvbnN0IHZhbHVlID0gTW9uZXlJbnB1dC5wYXJzZU1vbmV5VmFsdWUobW9uZXlWYWx1ZSwgbG9jYWxlKTtcbiAgICByZXR1cm4ge1xuICAgICAgLi4uYWxsVmFsdWVzLFxuICAgICAgW3ZhbHVlLmN1cnJlbmN5Q29kZV06IHZhbHVlLFxuICAgIH07XG4gIH0sIHt9IGFzIFJlY29yZDxUQ3VycmVuY3lDb2RlLCBUVmFsdWU+KTtcblxuTG9jYWxpemVkTW9uZXlJbnB1dC5nZXRIaWdoUHJlY2lzaW9uQ3VycmVuY2llcyA9IChcbiAgdmFsdWVzOiBSZWNvcmQ8VEN1cnJlbmN5Q29kZSwgVFZhbHVlPixcbiAgbG9jYWxlOiBzdHJpbmdcbik6IFRDdXJyZW5jeUNvZGVbXSA9PiB7XG4gIGNvbnN0IHR5cGVkQ3VycmVuY3lDb2RlcyA9IE9iamVjdC5rZXlzKHZhbHVlcykgYXMgVEN1cnJlbmN5Q29kZVtdO1xuICByZXR1cm4gdHlwZWRDdXJyZW5jeUNvZGVzLmZpbHRlcigoY3VycmVuY3lDb2RlKSA9PlxuICAgIE1vbmV5SW5wdXQuaXNIaWdoUHJlY2lzaW9uKHZhbHVlc1tjdXJyZW5jeUNvZGVdLCBsb2NhbGUpXG4gICk7XG59O1xuXG5Mb2NhbGl6ZWRNb25leUlucHV0LmdldEVtcHR5Q3VycmVuY2llcyA9IChcbiAgdmFsdWVzOiBSZWNvcmQ8VEN1cnJlbmN5Q29kZSwgVFZhbHVlPlxuKTogVEN1cnJlbmN5Q29kZVtdID0+IHtcbiAgY29uc3QgdHlwZWRDdXJyZW5jeUNvZGVzID0gT2JqZWN0LmtleXModmFsdWVzKSBhcyBUQ3VycmVuY3lDb2RlW107XG4gIHJldHVybiB0eXBlZEN1cnJlbmN5Q29kZXMuZmlsdGVyKChjdXJyZW5jeUNvZGUpID0+XG4gICAgTW9uZXlJbnB1dC5pc0VtcHR5KHZhbHVlc1tjdXJyZW5jeUNvZGVdKVxuICApO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgTG9jYWxpemVkTW9uZXlJbnB1dDtcbiJdfQ== */",
68
+ map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxvY2FsaXplZC1tb25leS1pbnB1dC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBcVBnQiIsImZpbGUiOiJsb2NhbGl6ZWQtbW9uZXktaW5wdXQudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdXNlQ2FsbGJhY2ssIHR5cGUgUmVhY3ROb2RlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgdXNlSW50bCB9IGZyb20gJ3JlYWN0LWludGwnO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xuaW1wb3J0IHsgdXNlVG9nZ2xlU3RhdGUsIHVzZUZpZWxkSWQgfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9ob29rcyc7XG5pbXBvcnQgTW9uZXlJbnB1dCwge1xuICB0eXBlIFRDdXJyZW5jeUNvZGUsXG4gIHR5cGUgVE1vbmV5VmFsdWUsXG4gIHR5cGUgVFZhbHVlLFxufSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9tb25leS1pbnB1dCc7XG5pbXBvcnQgeyBFcnJvck1lc3NhZ2UsIFdhcm5pbmdNZXNzYWdlIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvbWVzc2FnZXMnO1xuaW1wb3J0IFN0YWNrIGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L3NwYWNpbmdzLXN0YWNrJztcbmltcG9ydCBDb25zdHJhaW50cyBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9jb25zdHJhaW50cyc7XG5pbXBvcnQgeyBDb2luc0ljb24gfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9pY29ucyc7XG5pbXBvcnQge1xuICBjcmVhdGVMb2NhbGl6ZWREYXRhQXR0cmlidXRlcyxcbiAgZ2V0SGFzRXJyb3JPblJlbWFpbmluZ0xhbmd1YWdlcyxcbiAgZ2V0SGFzV2FybmluZ09uUmVtYWluaW5nTGFuZ3VhZ2VzLFxuICBnZXRJZCxcbiAgZ2V0TmFtZSxcbn0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvbG9jYWxpemVkLXV0aWxzJztcbmltcG9ydCB7XG4gIGNyZWF0ZVNlcXVlbnRpYWxJZCxcbiAgZmlsdGVyRGF0YUF0dHJpYnV0ZXMsXG4gIHdhcm5pbmcsXG59IGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L3V0aWxzJztcbmltcG9ydCB7IExvY2FsaXplZElucHV0VG9nZ2xlIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvaW5wdXQtdXRpbHMnO1xuaW1wb3J0IG1lc3NhZ2VzIGZyb20gJy4vbWVzc2FnZXMnO1xuXG50eXBlIFRDdXN0b21FdmVudCA9IHtcbiAgdGFyZ2V0OiB7XG4gICAgaWQ/OiBzdHJpbmc7XG4gICAgbmFtZT86IHN0cmluZztcbiAgICB2YWx1ZT86IHN0cmluZyB8IHN0cmluZ1tdIHwgbnVsbDtcbiAgfTtcbiAgcGVyc2lzdD86ICgpID0+IHZvaWQ7XG59O1xuXG5leHBvcnQgdHlwZSBUTG9jYWxpemVkTW9uZXlJbnB1dFByb3BzID0ge1xuICAvKipcbiAgICogVXNlZCBhcyBIVE1MIGlkIHByb3BlcnR5LlxuICAgKi9cbiAgaWQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgcHJlZml4IHVzZWQgdG8gY3JlYXRlIGEgSFRNTCBgbmFtZWAgcHJvcGVydHkgZm9yIHRoZSBhbW91bnQgaW5wdXQgZmllbGQgKGAke25hbWV9LmFtb3VudGApLlxuICAgKi9cbiAgbmFtZT86IHN0cmluZztcbiAgLyoqXG4gICAqIHZhbHVlIG9mIHBvc3NpYmxlIGN1cnJlbmN5XG4gICAqIDxici8+XG4gICAqIHRoZSBpbnB1dCBkb2Vzbid0IGFjY2VwdCBhIFwiY3VycmVuY2llc1wiIHByb3AsIGluc3RlYWQgYWxsIHBvc3NpYmxlXG4gICAqIGN1cnJlbmNpZXMgaGF2ZSB0byBleGlzdCAod2l0aCBlbXB0eSBvciBmaWxsZWQgc3RyaW5ncykgb24gdGhlIHZhbHVlOlxuICAgKiB7IEVVUjoge2Ftb3VudDogJzEyLjAwJywgY3VycmVuY3lDb2RlOiAnRVVSJ30sIFVTRDoge2Ftb3VudDogJycsIGN1cnJlbmN5Q29kZTogJ1VTRCd9fVxuICAgKi9cbiAgdmFsdWU6IFJlY29yZDxzdHJpbmcsIFRWYWx1ZT47XG4gIC8qKlxuICAgKiBDYWxsZWQgd2l0aCB0aGUgZXZlbnQgb2YgdGhlIGlucHV0LlxuICAgKi9cbiAgb25DaGFuZ2U/OiAoZXZlbnQ6IFRDdXN0b21FdmVudCkgPT4gdm9pZDtcbiAgLyoqXG4gICAqIHRoZSBjdXJyZW50bHkgc2VsZWN0ZWQgY3VycmVuY3lcbiAgICovXG4gIHNlbGVjdGVkQ3VycmVuY3k6IHN0cmluZztcbiAgLyoqXG4gICAqIENhbGxlZCB3aGVuIGlucHV0IGlzIGJsdXJyZWRcbiAgICovXG4gIG9uQmx1cj86IChldmVudDogVEN1c3RvbUV2ZW50KSA9PiB2b2lkO1xuICAvKipcbiAgICogQ2FsbGVkIHdoZW4gaW5wdXQgaXMgZm9jdXNlZFxuICAgKi9cbiAgb25Gb2N1cz86IChldmVudDogVEN1c3RvbUV2ZW50KSA9PiB2b2lkO1xuICAvKipcbiAgICogV2lsbCBoaWRlIHRoZSBjdXJyZW5jeSBleHBhbnNpb24gY29udHJvbHMgd2hlbiBzZXQgdG8gYHRydWVgLiBBbGwgY3VycmVuY2llcyB3aWxsIGJlIHNob3duIHdoZW4gc2V0IHRvIGB0cnVlYC5cbiAgICovXG4gIGhpZGVDdXJyZW5jeUV4cGFuc2lvbkNvbnRyb2xzPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIENvbnRyb2xzIHdoZXRoZXIgb25lIG9yIGFsbCBjdXJyZW5jaXJzIGFyZSB2aXNpYmxlIGJ5IGRlZmF1bHRcbiAgICovXG4gIGRlZmF1bHRFeHBhbmRDdXJyZW5jaWVzPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFVzZSB0aGlzIHByb3BlcnR5IHRvIHJlZHVjZSB0aGUgcGFkZGluZ3Mgb2YgdGhlIGNvbXBvbmVudCBmb3IgYSB1aSBjb21wYWN0IHZhcmlhbnRcbiAgICovXG4gIGlzQ29uZGVuc2VkPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEluZGljYXRlcyB0aGF0IHRoZSBpbnB1dCBjYW5ub3QgYmUgbW9kaWZpZWQgKGUuZyBub3QgYXV0aG9yaXplZCwgb3IgY2hhbmdlcyBjdXJyZW50bHkgc2F2aW5nKS5cbiAgICovXG4gIGlzRGlzYWJsZWQ/OiBib29sZWFuO1xuICAvKipcbiAgICogSW5kaWNhdGVzIHRoYXQgdGhlIGZpZWxkIGlzIGRpc3BsYXlpbmcgcmVhZC1vbmx5IGNvbnRlbnRcbiAgICovXG4gIGlzUmVhZE9ubHk/OiBib29sZWFuO1xuICAvKipcbiAgICogUGxhY2Vob2xkZXIgdGV4dCBmb3IgdGhlIGlucHV0XG4gICAqL1xuICBwbGFjZWhvbGRlcj86IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG4gIC8qKlxuICAgKiBIb3Jpem9udGFsIHNpemUgbGltaXQgb2YgdGhlIGlucHV0IGZpZWxkcy5cbiAgICovXG4gIGhvcml6b250YWxDb25zdHJhaW50PzpcbiAgICB8IDNcbiAgICB8IDRcbiAgICB8IDVcbiAgICB8IDZcbiAgICB8IDdcbiAgICB8IDhcbiAgICB8IDlcbiAgICB8IDEwXG4gICAgfCAxMVxuICAgIHwgMTJcbiAgICB8IDEzXG4gICAgfCAxNFxuICAgIHwgMTVcbiAgICB8IDE2XG4gICAgfCAnc2NhbGUnXG4gICAgfCAnYXV0byc7XG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgdGhhdCBpbnB1dCBoYXMgZXJyb3JzXG4gICAqL1xuICBoYXNFcnJvcj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBDb250cm9sIHRvIGluZGljYXRlIG9uIHRoZSBpbnB1dCBpZiB0aGVyZSBhcmUgdmFsdWVzIHRoYXQgYXJlIHBvdGVudGlhbGx5IGludmFsaWRcbiAgICovXG4gIGhhc1dhcm5pbmc/OiBib29sZWFuO1xuICAvKipcbiAgICogQSBtYXAgb2YgZXJyb3JzLiBFcnJvciBtZXNzYWdlcyBmb3Iga25vd24gZXJyb3JzIGFyZSByZW5kZXJlZCBhdXRvbWF0aWNhbGx5LlxuICAgKiA8YnI+XG4gICAqIFVua25vd24gZXJyb3JzIHdpbGwgYmUgZm9yd2FyZGVkIHRvIGByZW5kZXJFcnJvcmBcbiAgICovXG4gIGVycm9ycz86IFJlY29yZDxzdHJpbmcsIFJlYWN0Tm9kZT47XG4gIC8qKlxuICAgKiBBIG1hcCBvZiB3YXJuaW5ncy5cbiAgICovXG4gIHdhcm5pbmdzPzogUmVjb3JkPHN0cmluZywgUmVhY3ROb2RlPjtcbiAgLyoqXG4gICAqIFNob3dzIGhpZ2ggcHJlY2lzaW9uIGJhZGdlIGluIGNhc2UgY3VycmVudCB2YWx1ZSB1c2VzIGhpZ2ggcHJlY2lzaW9uLlxuICAgKi9cbiAgaGFzSGlnaFByZWNpc2lvbkJhZGdlPzogYm9vbGVhbjtcbn07XG5cbnR5cGUgVExvY2FsaXplZElucHV0UHJvcHMgPSB7XG4gIC8qKlxuICAgKiBVc2VkIGFzIEhUTUwgaWQgcHJvcGVydHkuXG4gICAqL1xuICBpZD86IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBwcmVmaXggdXNlZCB0byBjcmVhdGUgYSBIVE1MIGBuYW1lYCBwcm9wZXJ0eSBmb3IgdGhlIGFtb3VudCBpbnB1dCBmaWVsZCAoYCR7bmFtZX0uYW1vdW50YCkuXG4gICAqL1xuICBuYW1lPzogc3RyaW5nO1xuICAvKipcbiAgICogdmFsdWUgb2YgcG9zc2libGUgY3VycmVuY3lcbiAgICovXG4gIHZhbHVlOiBUVmFsdWU7XG4gIC8qKlxuICAgKiBDYWxsZWQgd2l0aCB0aGUgZXZlbnQgb2YgdGhlIGlucHV0LlxuICAgKi9cbiAgb25DaGFuZ2U/OiAoZXZlbnQ6IFRDdXN0b21FdmVudCkgPT4gdm9pZDtcbiAgLyoqXG4gICAqIENhbGxlZCB3aXRoIHRoZSBldmVudCBvZiB0aGUgaW5wdXQuXG4gICAqL1xuICBjdXJyZW5jeTogc3RyaW5nO1xuICAvKipcbiAgICogQ2FsbGVkIHdoZW4gaW5wdXQgaXMgYmx1cnJlZFxuICAgKi9cbiAgb25CbHVyPzogKGV2ZW50OiBUQ3VzdG9tRXZlbnQpID0+IHZvaWQ7XG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiBpbnB1dCBpcyBmb2N1c2VkXG4gICAqL1xuICBvbkZvY3VzPzogKGV2ZW50OiBUQ3VzdG9tRXZlbnQpID0+IHZvaWQ7XG4gIC8qKlxuICAgKiBVc2UgdGhpcyBwcm9wZXJ0eSB0byByZWR1Y2UgdGhlIHBhZGRpbmdzIG9mIHRoZSBjb21wb25lbnQgZm9yIGEgdWkgY29tcGFjdCB2YXJpYW50XG4gICAqL1xuICBpc0NvbmRlbnNlZD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgdGhhdCB0aGUgaW5wdXQgY2Fubm90IGJlIG1vZGlmaWVkIChlLmcgbm90IGF1dGhvcml6ZWQsIG9yIGNoYW5nZXMgY3VycmVudGx5IHNhdmluZykuXG4gICAqL1xuICBpc0Rpc2FibGVkPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEluZGljYXRlcyB0aGF0IHRoZSBmaWVsZCBpcyBkaXNwbGF5aW5nIHJlYWQtb25seSBjb250ZW50XG4gICAqL1xuICBpc1JlYWRPbmx5PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEluZGljYXRlcyB0aGF0IGlucHV0IGhhcyBlcnJvcnNcbiAgICovXG4gIGhhc0Vycm9yPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIENvbnRyb2wgdG8gaW5kaWNhdGUgb24gdGhlIGlucHV0IGlmIHRoZXJlIGFyZSB2YWx1ZXMgdGhhdCBhcmUgcG90ZW50aWFsbHkgaW52YWxpZFxuICAgKi9cbiAgaGFzV2FybmluZz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBQbGFjZWhvbGRlciB0ZXh0IGZvciB0aGUgaW5wdXRcbiAgICovXG4gIHBsYWNlaG9sZGVyPzogc3RyaW5nO1xuICAvKipcbiAgICogQSBtYXAgb2YgZXJyb3JzLiBFcnJvciBtZXNzYWdlcyBmb3Iga25vd24gZXJyb3JzIGFyZSByZW5kZXJlZCBhdXRvbWF0aWNhbGx5LlxuICAgKiA8YnI+XG4gICAqIFVua25vd24gZXJyb3JzIHdpbGwgYmUgZm9yd2FyZGVkIHRvIGByZW5kZXJFcnJvcmBcbiAgICovXG4gIGVycm9yPzogUmVhY3ROb2RlO1xuICAvKipcbiAgICogSFRNTCBub2RlIHRvIGRpc3BsYXkgd2FybmluZ1xuICAgKi9cbiAgd2FybmluZz86IFJlYWN0Tm9kZTtcbiAgLyoqXG4gICAqIFNob3dzIGhpZ2ggcHJlY2lzaW9uIGJhZGdlIGluIGNhc2UgY3VycmVudCB2YWx1ZSB1c2VzIGhpZ2ggcHJlY2lzaW9uLlxuICAgKi9cbiAgaGFzSGlnaFByZWNpc2lvbkJhZGdlPzogYm9vbGVhbjtcbn07XG5cbmNvbnN0IHNlcXVlbnRpYWxJZCA9IGNyZWF0ZVNlcXVlbnRpYWxJZCgnbG9jYWxpemVkLW1vbmV5LWlucHV0LScpO1xuXG4vLyBzb3J0cyB0aGUgY3VycmVuY2llcyB3aXRoIHRoZSBmb2xsb3dpbmcgcHJpb3JpdHk6XG4vLyAtIFRoZSBzZWxlY3RlZCBjdXJyZW5jeSBpcyBwbGFjZWQgZmlyc3QgKGUuZyBFVVIpXG4vLyAtIEFsbCBvdGhlciBjdXJyZW5jaWVzIGZvbGxvdywgc29ydGVkIGFscGhhYmV0aWNhbGx5IGFzIHdlbGxcbmV4cG9ydCBjb25zdCBzb3J0Q3VycmVuY2llcyA9IChcbiAgc2VsZWN0ZWRDdXJyZW5jeTogc3RyaW5nLFxuICBhbGxDdXJyZW5jaWVzOiBzdHJpbmdbXVxuKSA9PiB7XG4gIGNvbnN0IHJlbWFpbmluZ0N1cnJlbmNpZXMgPSBhbGxDdXJyZW5jaWVzLmZpbHRlcihcbiAgICAoY3VycmVuY3kpID0+IGN1cnJlbmN5ICE9PSBzZWxlY3RlZEN1cnJlbmN5XG4gICk7XG4gIHJldHVybiBbc2VsZWN0ZWRDdXJyZW5jeSwgLi4ucmVtYWluaW5nQ3VycmVuY2llcy5zb3J0KCldO1xufTtcblxuY29uc3QgTG9jYWxpemVkSW5wdXQgPSAocHJvcHM6IFRMb2NhbGl6ZWRJbnB1dFByb3BzKSA9PiB7XG4gIGNvbnN0IHsgb25DaGFuZ2UgfSA9IHByb3BzO1xuICBjb25zdCBoYW5kbGVDaGFuZ2UgPSB1c2VDYWxsYmFjayhcbiAgICAoZXZlbnQpID0+IHtcbiAgICAgIC8vIFdlIG1hbmlwdWxhdGUgdGhlIGV2ZW50IHRvIGFkZCB0aGUgY3VycmVuY3kgdG8gdGhlIHRhcmdldC5cbiAgICAgIC8vIFRoYXQgd2F5IHRoZSB1c2VycyAgY2FuIHJlYWRcbiAgICAgIC8vIGV2ZW50LnRhcmdldC5jdXJyZW5jeSBhbmQgZXZlbnQudGFyZ2V0LnZhbHVlIHRvIGRldGVybWluZSB0aGUgbmV4dCB2YWx1ZS5cbiAgICAgIC8vXG4gICAgICAvLyBXZSBvbmx5IG5lZWQgdGhpcyBpbmZvcm1hdGlvbiBmb3IgdGhlIHN0b3J5LCB0aGUgTUMgYXBwbGljYXRpb24gY29kZSB3aWxsXG4gICAgICAvLyBuZXZlciBuZWVkIHRvIGFjY2VzcyB0aGUgaW5mb3JtYXRpb24gaW4gc3VjaCBhbiBpbmNvbnZlbmllbnQgd2F5LCBhc1xuICAgICAgLy8gRm9ybWlrIGNhbiBkZWFsIHdpdGggYSBuYW1lIGxpa2UgXCJmb28uZW5cIiBhbmQgc2V0cyB0aGUgdmFsdWUgY29ycmVjdGx5LlxuICAgICAgLy8gV2UgY2FuJ3QgdXNlIHRoaXMgYXMgd2UgYXJlbid0IGd1YXJhbnRlZWQgYSBuYW1lIGluIHRoZSBzdG9yeSBhcyB0aGUgdXNlclxuICAgICAgLy8gbWlnaHQgY2xlYXIgaXQgdXNpbmcgdGhlIGtub2IsIGFuZCB0aGVuIHdlIGNhbid0IHBhcnNlIHRoZSBjdXJyZW5jeSBmcm9tXG4gICAgICAvLyB0aGUgaW5wdXQgbmFtZSBhbnltb3JlLlxuICAgICAgLy9cbiAgICAgIGV2ZW50LnRhcmdldC5jdXJyZW5jeSA9IHByb3BzLmN1cnJlbmN5O1xuICAgICAgb25DaGFuZ2U/LihldmVudCk7XG4gICAgfSxcbiAgICBbcHJvcHMuY3VycmVuY3ksIG9uQ2hhbmdlXVxuICApO1xuICByZXR1cm4gKFxuICAgIDxTdGFjayBzY2FsZT1cInhzXCI+XG4gICAgICA8ZGl2XG4gICAgICAgIGNzcz17Y3NzYFxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBgfVxuICAgICAgPlxuICAgICAgICA8TW9uZXlJbnB1dFxuICAgICAgICAgIG5hbWU9e3Byb3BzLm5hbWV9XG4gICAgICAgICAgdmFsdWU9e3Byb3BzLnZhbHVlfVxuICAgICAgICAgIG9uQ2hhbmdlPXtoYW5kbGVDaGFuZ2V9XG4gICAgICAgICAgb25CbHVyPXtwcm9wcy5vbkJsdXJ9XG4gICAgICAgICAgaXNDb25kZW5zZWQ9e3Byb3BzLmlzQ29uZGVuc2VkfVxuICAgICAgICAgIGlzRGlzYWJsZWQ9e3Byb3BzLmlzRGlzYWJsZWR9XG4gICAgICAgICAgaXNSZWFkT25seT17cHJvcHMuaXNSZWFkT25seX1cbiAgICAgICAgICBwbGFjZWhvbGRlcj17cHJvcHMucGxhY2Vob2xkZXJ9XG4gICAgICAgICAgaGFzRXJyb3I9e3Byb3BzLmhhc0Vycm9yfVxuICAgICAgICAgIGhhc1dhcm5pbmc9e3Byb3BzLmhhc1dhcm5pbmd9XG4gICAgICAgICAgaGFzSGlnaFByZWNpc2lvbkJhZGdlPXtwcm9wcy5oYXNIaWdoUHJlY2lzaW9uQmFkZ2V9XG4gICAgICAgICAgey4uLmZpbHRlckRhdGFBdHRyaWJ1dGVzKHByb3BzKX1cbiAgICAgICAgLz5cbiAgICAgIDwvZGl2PlxuICAgICAge3Byb3BzLmVycm9yICYmIDxFcnJvck1lc3NhZ2U+e3Byb3BzLmVycm9yfTwvRXJyb3JNZXNzYWdlPn1cbiAgICAgIHtwcm9wcy53YXJuaW5nICYmIDxXYXJuaW5nTWVzc2FnZT57cHJvcHMud2FybmluZ308L1dhcm5pbmdNZXNzYWdlPn1cbiAgICA8L1N0YWNrPlxuICApO1xufTtcblxuTG9jYWxpemVkSW5wdXQuZGlzcGxheU5hbWUgPSAnTG9jYWxpemVkSW5wdXQnO1xuXG5jb25zdCBMb2NhbGl6ZWRNb25leUlucHV0ID0gKHtcbiAgaG9yaXpvbnRhbENvbnN0cmFpbnQgPSAnc2NhbGUnLFxuICAuLi5wcm9wc1xufTogVExvY2FsaXplZE1vbmV5SW5wdXRQcm9wcykgPT4ge1xuICBjb25zdCBpbnRsID0gdXNlSW50bCgpO1xuXG4gIGNvbnN0IGRlZmF1bHRFeHBhbnNpb25TdGF0ZSA9XG4gICAgcHJvcHMuaGlkZUN1cnJlbmN5RXhwYW5zaW9uQ29udHJvbHMgfHxcbiAgICBwcm9wcy5kZWZhdWx0RXhwYW5kQ3VycmVuY2llcyB8fFxuICAgIC8vIGRlZmF1bHQgdG8gYGZhbHNlYCwgYmVjYXVzZSB1c2VUb2dnbGVTdGF0ZSBkZWZhdWx0cyB0byBgdHJ1ZWBcbiAgICBmYWxzZTtcblxuICBjb25zdCBbYXJlQ3VycmVuY2llc0V4cGFuZGVkLCB0b2dnbGVDdXJyZW5jaWVzXSA9IHVzZVRvZ2dsZVN0YXRlKFxuICAgIGRlZmF1bHRFeHBhbnNpb25TdGF0ZVxuICApO1xuXG4gIGNvbnN0IG9uTG9jYWxpemVkTW9uZXlJbnB1dFRvZ2dsZSA9IHVzZUNhbGxiYWNrKFxuICAgICgpID0+IHRvZ2dsZUN1cnJlbmNpZXMoKSxcbiAgICBbdG9nZ2xlQ3VycmVuY2llc11cbiAgKTtcblxuICBjb25zdCBpZCA9IHVzZUZpZWxkSWQocHJvcHMuaWQsIHNlcXVlbnRpYWxJZCk7XG5cbiAgY29uc3QgaGFzRXJyb3JJblJlbWFpbmluZ0N1cnJlbmNpZXMgPVxuICAgIHByb3BzLmhhc0Vycm9yIHx8XG4gICAgZ2V0SGFzRXJyb3JPblJlbWFpbmluZ0xhbmd1YWdlcyhwcm9wcy5lcnJvcnMsIHByb3BzLnNlbGVjdGVkQ3VycmVuY3kpO1xuXG4gIGNvbnN0IGhhc1dhcm5pbmdJblJlbWFpbmluZ0N1cnJlbmNpZXMgPVxuICAgIHByb3BzLmhhc1dhcm5pbmcgfHxcbiAgICBnZXRIYXNXYXJuaW5nT25SZW1haW5pbmdMYW5ndWFnZXMocHJvcHMud2FybmluZ3MsIHByb3BzLnNlbGVjdGVkQ3VycmVuY3kpO1xuXG4gIGlmIChoYXNFcnJvckluUmVtYWluaW5nQ3VycmVuY2llcyB8fCBoYXNXYXJuaW5nSW5SZW1haW5pbmdDdXJyZW5jaWVzKSB7XG4gICAgLy8gdGhpcyB1cGRhdGUgd2l0aGluIHJlbmRlciByZXBsYWNlcyB0aGUgb2xkIGBnZXREZXJpdmVkU3RhdGVGcm9tUHJvcHNgIGZ1bmN0aW9uYWxpdHlcbiAgICAvLyBodHRwczovL3JlYWN0anMub3JnL2RvY3MvaG9va3MtZmFxLmh0bWwjaG93LWRvLWktaW1wbGVtZW50LWdldGRlcml2ZWRzdGF0ZWZyb21wcm9wc1xuICAgIGlmICghYXJlQ3VycmVuY2llc0V4cGFuZGVkKSB7XG4gICAgICB0b2dnbGVDdXJyZW5jaWVzKCk7XG4gICAgfVxuICB9XG5cbiAgY29uc3QgY3VycmVuY2llcyA9IHNvcnRDdXJyZW5jaWVzKFxuICAgIHByb3BzLnNlbGVjdGVkQ3VycmVuY3ksXG4gICAgT2JqZWN0LmtleXMocHJvcHMudmFsdWUpXG4gICk7XG5cbiAgY29uc3Qgc2hvdWxkUmVuZGVyQ3VycmVuY3lDb250cm9sID1cbiAgICBjdXJyZW5jaWVzLmxlbmd0aCA+IDEgJiYgIXByb3BzLmhpZGVDdXJyZW5jeUV4cGFuc2lvbkNvbnRyb2xzO1xuXG4gIGlmIChwcm9wcy5oaWRlQ3VycmVuY3lFeHBhbnNpb25Db250cm9scykge1xuICAgIHdhcm5pbmcoXG4gICAgICB0eXBlb2YgcHJvcHMuZGVmYXVsdEV4cGFuZEN1cnJlbmNpZXMgIT09ICdib29sZWFuJyxcbiAgICAgICdMb2NhbGl6ZWRNb25leUlucHV0OiBcImRlZmF1bHRFeHBhbmRDdXJyZW5jaWVzXCIgZG9lcyBub3QgaGF2ZSBhbnkgZWZmZWN0IHdoZW4gXCJoaWRlQ3VycmVuY3lFeHBhbnNpb25Db250cm9sc1wiIGlzIHNldC4nXG4gICAgKTtcbiAgfVxuXG4gIHJldHVybiAoXG4gICAgPENvbnN0cmFpbnRzLkhvcml6b250YWwgbWF4PXtob3Jpem9udGFsQ29uc3RyYWludH0+XG4gICAgICA8U3RhY2sgc2NhbGU9XCJ4c1wiPlxuICAgICAgICA8U3RhY2sgc2NhbGU9XCJzXCI+XG4gICAgICAgICAge2N1cnJlbmNpZXMubWFwKChjdXJyZW5jeSwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGlzRmlyc3RDdXJyZW5jeSA9IGluZGV4ID09PSAwO1xuICAgICAgICAgICAgaWYgKCFpc0ZpcnN0Q3VycmVuY3kgJiYgIWFyZUN1cnJlbmNpZXNFeHBhbmRlZCkgcmV0dXJuIG51bGw7XG5cbiAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgIDxMb2NhbGl6ZWRJbnB1dFxuICAgICAgICAgICAgICAgIGtleT17Y3VycmVuY3l9XG4gICAgICAgICAgICAgICAgaWQ9e0xvY2FsaXplZE1vbmV5SW5wdXQuZ2V0SWQoaWQsIGN1cnJlbmN5KX1cbiAgICAgICAgICAgICAgICBuYW1lPXtMb2NhbGl6ZWRNb25leUlucHV0LmdldE5hbWUocHJvcHMubmFtZSwgY3VycmVuY3kpfVxuICAgICAgICAgICAgICAgIHZhbHVlPXtwcm9wcy52YWx1ZVtjdXJyZW5jeV19XG4gICAgICAgICAgICAgICAgb25DaGFuZ2U9e3Byb3BzLm9uQ2hhbmdlfVxuICAgICAgICAgICAgICAgIGN1cnJlbmN5PXtjdXJyZW5jeX1cbiAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj17XG4gICAgICAgICAgICAgICAgICBwcm9wcy5wbGFjZWhvbGRlciA/IHByb3BzLnBsYWNlaG9sZGVyW2N1cnJlbmN5XSA6IHVuZGVmaW5lZFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBvbkJsdXI9e3Byb3BzLm9uQmx1cn1cbiAgICAgICAgICAgICAgICBvbkZvY3VzPXtwcm9wcy5vbkZvY3VzfVxuICAgICAgICAgICAgICAgIGlzQ29uZGVuc2VkPXtwcm9wcy5pc0NvbmRlbnNlZH1cbiAgICAgICAgICAgICAgICBpc0Rpc2FibGVkPXtwcm9wcy5pc0Rpc2FibGVkfVxuICAgICAgICAgICAgICAgIGlzUmVhZE9ubHk9e3Byb3BzLmlzUmVhZE9ubHl9XG4gICAgICAgICAgICAgICAgaGFzRXJyb3I9e0Jvb2xlYW4oXG4gICAgICAgICAgICAgICAgICBwcm9wcy5oYXNFcnJvciB8fCAocHJvcHMuZXJyb3JzICYmIHByb3BzLmVycm9yc1tjdXJyZW5jeV0pXG4gICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICBoYXNXYXJuaW5nPXtCb29sZWFuKFxuICAgICAgICAgICAgICAgICAgcHJvcHMuaGFzV2FybmluZyB8fFxuICAgICAgICAgICAgICAgICAgICAocHJvcHMud2FybmluZ3MgJiYgcHJvcHMud2FybmluZ3NbY3VycmVuY3ldKVxuICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgd2FybmluZz17cHJvcHMud2FybmluZ3MgJiYgcHJvcHMud2FybmluZ3NbY3VycmVuY3ldfVxuICAgICAgICAgICAgICAgIGVycm9yPXtwcm9wcy5lcnJvcnMgJiYgcHJvcHMuZXJyb3JzW2N1cnJlbmN5XX1cbiAgICAgICAgICAgICAgICB7Li4uY3JlYXRlTG9jYWxpemVkRGF0YUF0dHJpYnV0ZXMoXG4gICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGhvcml6b250YWxDb25zdHJhaW50LFxuICAgICAgICAgICAgICAgICAgICAuLi5wcm9wcyxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICBjdXJyZW5jeVxuICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgaGFzSGlnaFByZWNpc2lvbkJhZGdlPXtwcm9wcy5oYXNIaWdoUHJlY2lzaW9uQmFkZ2V9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICApO1xuICAgICAgICAgIH0pfVxuICAgICAgICA8L1N0YWNrPlxuICAgICAgICB7c2hvdWxkUmVuZGVyQ3VycmVuY3lDb250cm9sICYmIChcbiAgICAgICAgICA8TG9jYWxpemVkSW5wdXRUb2dnbGVcbiAgICAgICAgICAgIGljb249ezxDb2luc0ljb24gLz59XG4gICAgICAgICAgICBvbkNsaWNrPXtvbkxvY2FsaXplZE1vbmV5SW5wdXRUb2dnbGV9XG4gICAgICAgICAgICBpc09wZW49e2FyZUN1cnJlbmNpZXNFeHBhbmRlZH1cbiAgICAgICAgICAgIGlzRGlzYWJsZWQ9e1xuICAgICAgICAgICAgICBhcmVDdXJyZW5jaWVzRXhwYW5kZWQgJiZcbiAgICAgICAgICAgICAgQm9vbGVhbihcbiAgICAgICAgICAgICAgICBoYXNFcnJvckluUmVtYWluaW5nQ3VycmVuY2llcyB8fCBoYXNXYXJuaW5nSW5SZW1haW5pbmdDdXJyZW5jaWVzXG4gICAgICAgICAgICAgIClcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHNob3dNZXNzYWdlPXtpbnRsLmZvcm1hdE1lc3NhZ2UobWVzc2FnZXMuc2hvdywge1xuICAgICAgICAgICAgICByZW1haW5pbmdDdXJyZW5jaWVzOiBjdXJyZW5jaWVzLmxlbmd0aCAtIDEsXG4gICAgICAgICAgICB9KX1cbiAgICAgICAgICAgIGhpZGVNZXNzYWdlPXtpbnRsLmZvcm1hdE1lc3NhZ2UobWVzc2FnZXMuaGlkZSwge1xuICAgICAgICAgICAgICByZW1haW5pbmdDdXJyZW5jaWVzOiBjdXJyZW5jaWVzLmxlbmd0aCAtIDEsXG4gICAgICAgICAgICB9KX1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgPC9TdGFjaz5cbiAgICA8L0NvbnN0cmFpbnRzLkhvcml6b250YWw+XG4gICk7XG59O1xuXG5Mb2NhbGl6ZWRNb25leUlucHV0LmRpc3BsYXlOYW1lID0gJ0xvY2FsaXplZE1vbmV5SW5wdXQnO1xuXG5Mb2NhbGl6ZWRNb25leUlucHV0LmdldElkID0gZ2V0SWQ7XG5cbkxvY2FsaXplZE1vbmV5SW5wdXQuZ2V0TmFtZSA9IGdldE5hbWU7XG5cbkxvY2FsaXplZE1vbmV5SW5wdXQuY29udmVydFRvTW9uZXlWYWx1ZXMgPSAoXG4gIHZhbHVlczogVFZhbHVlW10sXG4gIGxvY2FsZTogc3RyaW5nXG4pOiBBcnJheTxUTW9uZXlWYWx1ZSB8IG51bGw+ID0+XG4gIE9iamVjdC52YWx1ZXModmFsdWVzKS5tYXA8VE1vbmV5VmFsdWUgfCBudWxsPigodmFsdWUpID0+IHtcbiAgICByZXR1cm4gTW9uZXlJbnB1dC5jb252ZXJ0VG9Nb25leVZhbHVlKHZhbHVlLCBsb2NhbGUpO1xuICB9KTtcblxuTG9jYWxpemVkTW9uZXlJbnB1dC5wYXJzZU1vbmV5VmFsdWVzID0gKFxuICBtb25leVZhbHVlczogVE1vbmV5VmFsdWVbXSA9IFtdLFxuICBsb2NhbGU6IHN0cmluZ1xuKTogUmVjb3JkPFRDdXJyZW5jeUNvZGUsIFRWYWx1ZT4gPT5cbiAgbW9uZXlWYWx1ZXMucmVkdWNlPFJlY29yZDxUQ3VycmVuY3lDb2RlLCBUVmFsdWU+PigoYWxsVmFsdWVzLCBtb25leVZhbHVlKSA9PiB7XG4gICAgY29uc3QgdmFsdWUgPSBNb25leUlucHV0LnBhcnNlTW9uZXlWYWx1ZShtb25leVZhbHVlLCBsb2NhbGUpO1xuICAgIHJldHVybiB7XG4gICAgICAuLi5hbGxWYWx1ZXMsXG4gICAgICBbdmFsdWUuY3VycmVuY3lDb2RlXTogdmFsdWUsXG4gICAgfTtcbiAgfSwge30gYXMgUmVjb3JkPFRDdXJyZW5jeUNvZGUsIFRWYWx1ZT4pO1xuXG5Mb2NhbGl6ZWRNb25leUlucHV0LmdldEhpZ2hQcmVjaXNpb25DdXJyZW5jaWVzID0gKFxuICB2YWx1ZXM6IFJlY29yZDxUQ3VycmVuY3lDb2RlLCBUVmFsdWU+LFxuICBsb2NhbGU6IHN0cmluZ1xuKTogVEN1cnJlbmN5Q29kZVtdID0+IHtcbiAgY29uc3QgdHlwZWRDdXJyZW5jeUNvZGVzID0gT2JqZWN0LmtleXModmFsdWVzKSBhcyBUQ3VycmVuY3lDb2RlW107XG4gIHJldHVybiB0eXBlZEN1cnJlbmN5Q29kZXMuZmlsdGVyKChjdXJyZW5jeUNvZGUpID0+XG4gICAgTW9uZXlJbnB1dC5pc0hpZ2hQcmVjaXNpb24odmFsdWVzW2N1cnJlbmN5Q29kZV0sIGxvY2FsZSlcbiAgKTtcbn07XG5cbkxvY2FsaXplZE1vbmV5SW5wdXQuZ2V0RW1wdHlDdXJyZW5jaWVzID0gKFxuICB2YWx1ZXM6IFJlY29yZDxUQ3VycmVuY3lDb2RlLCBUVmFsdWU+XG4pOiBUQ3VycmVuY3lDb2RlW10gPT4ge1xuICBjb25zdCB0eXBlZEN1cnJlbmN5Q29kZXMgPSBPYmplY3Qua2V5cyh2YWx1ZXMpIGFzIFRDdXJyZW5jeUNvZGVbXTtcbiAgcmV0dXJuIHR5cGVkQ3VycmVuY3lDb2Rlcy5maWx0ZXIoKGN1cnJlbmN5Q29kZSkgPT5cbiAgICBNb25leUlucHV0LmlzRW1wdHkodmFsdWVzW2N1cnJlbmN5Q29kZV0pXG4gICk7XG59O1xuXG5leHBvcnQgZGVmYXVsdCBMb2NhbGl6ZWRNb25leUlucHV0O1xuIl19 */",
67
69
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
68
70
  };
69
71
  const LocalizedInput = props => {
@@ -126,7 +128,10 @@ LocalizedInput.propTypes = process.env.NODE_ENV !== "production" ? {
126
128
  hasHighPrecisionBadge: _pt.bool
127
129
  } : {};
128
130
  LocalizedInput.displayName = 'LocalizedInput';
129
- const LocalizedMoneyInput = props => {
131
+ const LocalizedMoneyInput = _ref2 => {
132
+ let _ref2$horizontalConst = _ref2.horizontalConstraint,
133
+ horizontalConstraint = _ref2$horizontalConst === void 0 ? 'scale' : _ref2$horizontalConst,
134
+ props = _objectWithoutProperties(_ref2, _excluded);
130
135
  const intl = useIntl();
131
136
  const defaultExpansionState = props.hideCurrencyExpansionControls || props.defaultExpandCurrencies ||
132
137
  // default to `false`, because useToggleState defaults to `true`
@@ -152,7 +157,7 @@ const LocalizedMoneyInput = props => {
152
157
  process.env.NODE_ENV !== "production" ? warning(typeof props.defaultExpandCurrencies !== 'boolean', 'LocalizedMoneyInput: "defaultExpandCurrencies" does not have any effect when "hideCurrencyExpansionControls" is set.') : void 0;
153
158
  }
154
159
  return jsx(Constraints.Horizontal, {
155
- max: props.horizontalConstraint,
160
+ max: horizontalConstraint,
156
161
  children: jsxs(Stack, {
157
162
  scale: "xs",
158
163
  children: [jsx(Stack, {
@@ -176,7 +181,9 @@ const LocalizedMoneyInput = props => {
176
181
  hasWarning: Boolean(props.hasWarning || props.warnings && props.warnings[currency]),
177
182
  warning: props.warnings && props.warnings[currency],
178
183
  error: props.errors && props.errors[currency]
179
- }, createLocalizedDataAttributes(props, currency)), {}, {
184
+ }, createLocalizedDataAttributes(_objectSpread({
185
+ horizontalConstraint
186
+ }, props), currency)), {}, {
180
187
  hasHighPrecisionBadge: props.hasHighPrecisionBadge
181
188
  }), currency);
182
189
  })
@@ -219,9 +226,6 @@ LocalizedMoneyInput.propTypes = process.env.NODE_ENV !== "production" ? {
219
226
  LocalizedMoneyInput.displayName = 'LocalizedMoneyInput';
220
227
  LocalizedMoneyInput.getId = getId;
221
228
  LocalizedMoneyInput.getName = getName;
222
- LocalizedMoneyInput.defaultProps = {
223
- horizontalConstraint: 'scale'
224
- };
225
229
  LocalizedMoneyInput.convertToMoneyValues = (values, locale) => {
226
230
  var _context;
227
231
  return _mapInstanceProperty(_context = _Object$values(values)).call(_context, value => {
@@ -249,6 +253,6 @@ LocalizedMoneyInput.getEmptyCurrencies = values => {
249
253
  var LocalizedMoneyInput$1 = LocalizedMoneyInput;
250
254
 
251
255
  // NOTE: This string will be replaced on build time with the package version.
252
- var version = "19.20.0";
256
+ var version = "19.21.0";
253
257
 
254
258
  export { LocalizedMoneyInput$1 as default, version };
@@ -94,13 +94,10 @@ export type TLocalizedMoneyInputProps = {
94
94
  };
95
95
  export declare const sortCurrencies: (selectedCurrency: string, allCurrencies: string[]) => string[];
96
96
  declare const LocalizedMoneyInput: {
97
- (props: TLocalizedMoneyInputProps): import("@emotion/react/jsx-runtime").JSX.Element;
97
+ ({ horizontalConstraint, ...props }: TLocalizedMoneyInputProps): import("@emotion/react/jsx-runtime").JSX.Element;
98
98
  displayName: string;
99
99
  getId: (idPrefix?: string, language?: string) => string | undefined;
100
100
  getName: (namePrefix?: string, language?: string) => string | undefined;
101
- defaultProps: {
102
- horizontalConstraint: string;
103
- };
104
101
  convertToMoneyValues(values: TValue[], locale: string): Array<TMoneyValue | null>;
105
102
  parseMoneyValues(moneyValues: TMoneyValue[] | undefined, locale: string): Record<TCurrencyCode, TValue>;
106
103
  getHighPrecisionCurrencies(values: Record<TCurrencyCode, TValue>, locale: string): TCurrencyCode[];
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@commercetools-uikit/localized-money-input",
3
3
  "description": "A controlled input component for localized money values with validation states.",
4
- "version": "19.20.0",
4
+ "version": "19.21.0",
5
5
  "bugs": "https://github.com/commercetools/ui-kit/issues",
6
6
  "repository": {
7
7
  "type": "git",
@@ -21,19 +21,19 @@
21
21
  "dependencies": {
22
22
  "@babel/runtime": "^7.20.13",
23
23
  "@babel/runtime-corejs3": "^7.20.13",
24
- "@commercetools-uikit/constraints": "19.20.0",
25
- "@commercetools-uikit/design-system": "19.20.0",
26
- "@commercetools-uikit/flat-button": "19.20.0",
27
- "@commercetools-uikit/hooks": "19.20.0",
28
- "@commercetools-uikit/icons": "19.20.0",
29
- "@commercetools-uikit/input-utils": "19.20.0",
30
- "@commercetools-uikit/localized-utils": "19.20.0",
31
- "@commercetools-uikit/messages": "19.20.0",
32
- "@commercetools-uikit/money-input": "19.20.0",
33
- "@commercetools-uikit/select-utils": "19.20.0",
34
- "@commercetools-uikit/spacings-stack": "19.20.0",
35
- "@commercetools-uikit/tooltip": "19.20.0",
36
- "@commercetools-uikit/utils": "19.20.0",
24
+ "@commercetools-uikit/constraints": "19.21.0",
25
+ "@commercetools-uikit/design-system": "19.21.0",
26
+ "@commercetools-uikit/flat-button": "19.21.0",
27
+ "@commercetools-uikit/hooks": "19.21.0",
28
+ "@commercetools-uikit/icons": "19.21.0",
29
+ "@commercetools-uikit/input-utils": "19.21.0",
30
+ "@commercetools-uikit/localized-utils": "19.21.0",
31
+ "@commercetools-uikit/messages": "19.21.0",
32
+ "@commercetools-uikit/money-input": "19.21.0",
33
+ "@commercetools-uikit/select-utils": "19.21.0",
34
+ "@commercetools-uikit/spacings-stack": "19.21.0",
35
+ "@commercetools-uikit/tooltip": "19.21.0",
36
+ "@commercetools-uikit/utils": "19.21.0",
37
37
  "@emotion/react": "^11.10.5",
38
38
  "@emotion/styled": "^11.10.5",
39
39
  "prop-types": "15.8.1",