@carto/kepler.gl 0.0.25 → 0.0.28
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/components/common/field-selector.js +3 -1
- package/dist/components/common/item-selector/item-selector.js +10 -3
- package/dist/components/side-panel/layer-panel/layer-configurator.js +5 -3
- package/dist/components/side-panel/layer-panel/vis-config-by-field-selector.js +6 -4
- package/dist/constants/default-settings.js +1 -1
- package/dist/constants/index.js +7 -1
- package/dist/layers/base-layer.js +6 -3
- package/package.json +8 -8
- package/src/components/common/field-selector.js +2 -0
- package/src/components/common/item-selector/item-selector.d.ts +1 -0
- package/src/components/common/item-selector/item-selector.js +8 -2
- package/src/components/side-panel/layer-panel/layer-configurator.js +2 -1
- package/src/components/side-panel/layer-panel/vis-config-by-field-selector.js +4 -2
- package/src/constants/index.js +1 -0
- package/src/layers/base-layer.js +4 -1
- package/umd/keplergl.min.js +22 -22
|
@@ -178,6 +178,7 @@ function FieldSelectorFactory(FieldListItemFactory) {
|
|
|
178
178
|
inputTheme: this.props.inputTheme,
|
|
179
179
|
size: this.props.size,
|
|
180
180
|
isError: this.props.error,
|
|
181
|
+
isLoading: this.props.isLoading,
|
|
181
182
|
selectedItems: this.selectedItemsSelector(this.props),
|
|
182
183
|
erasable: this.props.erasable,
|
|
183
184
|
options: this.fieldOptionsSelector(this.props),
|
|
@@ -204,6 +205,7 @@ function FieldSelectorFactory(FieldListItemFactory) {
|
|
|
204
205
|
placeholder: _propTypes["default"].string,
|
|
205
206
|
erasable: _propTypes["default"].bool,
|
|
206
207
|
error: _propTypes["default"].bool,
|
|
208
|
+
isLoading: _propTypes["default"].bool,
|
|
207
209
|
multiSelect: _propTypes["default"].bool,
|
|
208
210
|
closeOnSelect: _propTypes["default"].bool,
|
|
209
211
|
showToken: _propTypes["default"].bool,
|
|
@@ -228,4 +230,4 @@ function FieldSelectorFactory(FieldListItemFactory) {
|
|
|
228
230
|
FieldSelectorFactory.deps = [FieldListItemFactoryFactory];
|
|
229
231
|
var _default = FieldSelectorFactory;
|
|
230
232
|
exports["default"] = _default;
|
|
231
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2NvbW1vbi9maWVsZC1zZWxlY3Rvci5qcyJdLCJuYW1lcyI6WyJkZWZhdWx0RGlzcGxheU9wdGlvbiIsImQiLCJkaXNwbGF5TmFtZSIsIm5hbWUiLCJkZWZhdWx0VmFsdWVPcHRpb24iLCJTdHlsZWRUb2tlbiIsInN0eWxlZCIsImRpdiIsInByb3BzIiwidGhlbWUiLCJmaWVsZFRva2VuUmlnaHRNYXJnaW4iLCJTdHlsZWRGaWVsZExpc3RJdGVtIiwiRmllbGRMaXN0SXRlbUZhY3RvcnlGYWN0b3J5IiwiZGVwcyIsIkZpZWxkVG9rZW5GYWN0b3J5IiwiRmllbGRUb2tlbiIsIkZpZWxkTGlzdEl0ZW1GYWN0b3J5Iiwic2hvd1Rva2VuIiwiRmllbGRMaXN0SXRlbSIsInZhbHVlIiwiZGlzcGxheU9wdGlvbiIsInR5cGUiLCJjbGFzc0xpc3QiLCJsaXN0SXRlbUFuY2hvciIsIlN1Z2dlc3RlZEZpZWxkSGVhZGVyIiwiRmllbGRUeXBlIiwiUHJvcFR5cGVzIiwib25lT2ZUeXBlIiwic3RyaW5nIiwiYXJyYXlPZiIsInNoYXBlIiwiZm9ybWF0IiwiaWQiLCJmaWVsZElkeCIsIm51bWJlciIsIkZpZWxkU2VsZWN0b3JGYWN0b3J5IiwiRmllbGRTZWxlY3RvciIsImZpZWxkcyIsImZpbHRlciIsImZpZWxkIiwiZmluZCIsImZpbHRlckZpZWxkVHlwZXMiLCJmaWVsZHNTZWxlY3RvciIsInZhbHVlU2VsZWN0b3IiLCJtYXAiLCJmIiwiZmlsdGVyZWRGaWVsZHNTZWxlY3RvciIsImZpbHRlckZpZWxkVHlwZXNTZWxlY3RvciIsImZpbHRlcnMiLCJBcnJheSIsImlzQXJyYXkiLCJpbmNsdWRlcyIsInNob3dUb2tlblNlbGVjdG9yIiwiY2xvc2VPblNlbGVjdCIsInN1Z2dlc3RlZCIsImlucHV0VGhlbWUiLCJzaXplIiwiZXJyb3IiLCJzZWxlY3RlZEl0ZW1zU2VsZWN0b3IiLCJlcmFzYWJsZSIsImZpZWxkT3B0aW9uc1NlbGVjdG9yIiwibXVsdGlTZWxlY3QiLCJwbGFjZWhvbGRlciIsInBsYWNlbWVudCIsIm9uU2VsZWN0IiwiZmllbGRMaXN0SXRlbVNlbGVjdG9yIiwiQ3VzdG9tQ2hpY2tsZXRDb21wb25lbnQiLCJDb21wb25lbnQiLCJhcnJheSIsImZ1bmMiLCJpc1JlcXVpcmVkIiwiYm9vbCIsImFueSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQW9CQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFFQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7Ozs7Ozs7QUFFQSxJQUFNQSxvQkFBb0IsR0FBRyxTQUF2QkEsb0JBQXVCLENBQUFDLENBQUM7QUFBQSxTQUFJQSxDQUFDLENBQUNDLFdBQUYsSUFBaUJELENBQUMsQ0FBQ0UsSUFBdkI7QUFBQSxDQUE5Qjs7QUFDQSxJQUFNQyxrQkFBa0IsR0FBRyxTQUFyQkEsa0JBQXFCLENBQUFILENBQUM7QUFBQSxTQUFJQSxDQUFDLENBQUNFLElBQU47QUFBQSxDQUE1Qjs7QUFFQSxJQUFNRSxXQUFXLEdBQUdDLDZCQUFPQyxHQUFWLDRJQUVILFVBQUFDLEtBQUs7QUFBQSxTQUFJQSxLQUFLLENBQUNDLEtBQU4sQ0FBWUMscUJBQWhCO0FBQUEsQ0FGRixDQUFqQjs7QUFJQSxJQUFNQyxtQkFBbUIsR0FBR0wsNkJBQU9DLEdBQVYsNkdBQXpCOztBQUlBSywyQkFBMkIsQ0FBQ0MsSUFBNUIsR0FBbUMsQ0FBQ0Msc0JBQUQsQ0FBbkMsQyxDQUNBOztBQUNPLFNBQVNGLDJCQUFULENBQXFDRyxVQUFyQyxFQUFpRDtBQUN0RCxNQUFNQyxvQkFBb0IsR0FBRyxTQUF2QkEsb0JBQXVCLEdBQXNCO0FBQUEsUUFBckJDLFNBQXFCLHVFQUFULElBQVM7O0FBQ2pELFFBQU1DLGFBQWEsR0FBRyxTQUFoQkEsYUFBZ0I7QUFBQSxVQUFFQyxLQUFGLFFBQUVBLEtBQUY7QUFBQSxvQ0FBU0MsYUFBVDtBQUFBLFVBQVNBLGFBQVQsbUNBQXlCcEIsb0JBQXpCO0FBQUEsMEJBQ3BCLGdDQUFDLG1CQUFEO0FBQXFCLFFBQUEsU0FBUyxFQUFDO0FBQS9CLFNBQ0dpQixTQUFTLGdCQUNSLGdDQUFDLFdBQUQscUJBQ0UsZ0NBQUMsVUFBRDtBQUFZLFFBQUEsSUFBSSxFQUFFRSxLQUFLLENBQUNFO0FBQXhCLFFBREYsQ0FEUSxHQUlOLElBTE4sZUFNRTtBQUFNLFFBQUEsU0FBUyxFQUFFQyx3QkFBVUM7QUFBM0IsU0FBNENILGFBQWEsQ0FBQ0QsS0FBRCxDQUF6RCxDQU5GLENBRG9CO0FBQUEsS0FBdEI7O0FBVUEsV0FBT0QsYUFBUDtBQUNELEdBWkQ7O0FBYUEsU0FBT0Ysb0JBQVA7QUFDRDs7QUFFRCxJQUFNUSxvQkFBb0IsR0FBRyxTQUF2QkEsb0JBQXVCO0FBQUEsc0JBQU0sK0RBQU47QUFBQSxDQUE3Qjs7QUFFQSxJQUFNQyxTQUFTLEdBQUdDLHNCQUFVQyxTQUFWLENBQW9CLENBQ3BDRCxzQkFBVUUsTUFEMEIsRUFFcENGLHNCQUFVRyxPQUFWLENBQWtCSCxzQkFBVUUsTUFBNUIsQ0FGb0MsRUFHcENGLHNCQUFVRyxPQUFWLENBQ0VILHNCQUFVSSxLQUFWLENBQWdCO0FBQ2QzQixFQUFBQSxJQUFJLEVBQUV1QixzQkFBVUUsTUFERjtBQUVkRyxFQUFBQSxNQUFNLEVBQUVMLHNCQUFVRTtBQUZKLENBQWhCLENBREYsQ0FIb0MsRUFTcENGLHNCQUFVSSxLQUFWLENBQWdCO0FBQ2RDLEVBQUFBLE1BQU0sRUFBRUwsc0JBQVVFLE1BREo7QUFFZEksRUFBQUEsRUFBRSxFQUFFTixzQkFBVUUsTUFGQTtBQUdkekIsRUFBQUEsSUFBSSxFQUFFdUIsc0JBQVVFLE1BSEY7QUFJZEssRUFBQUEsUUFBUSxFQUFFUCxzQkFBVVEsTUFKTjtBQUtkYixFQUFBQSxJQUFJLEVBQUVLLHNCQUFVUTtBQUxGLENBQWhCLENBVG9DLENBQXBCLENBQWxCOztBQWtCQSxTQUFTQyxvQkFBVCxDQUE4Qm5CLG9CQUE5QixFQUFvRDtBQUFBLE1BQzVDb0IsYUFENEM7QUFBQTs7QUFBQTs7QUFBQTtBQUFBOztBQUFBOztBQUFBO0FBQUE7QUFBQTs7QUFBQTtBQUFBLHlHQWdDL0IsVUFBQTVCLEtBQUs7QUFBQSxlQUFJQSxLQUFLLENBQUM2QixNQUFWO0FBQUEsT0FoQzBCO0FBQUEsaUhBaUN2QixVQUFBN0IsS0FBSztBQUFBLGVBQzVCQSxLQUFLLENBQUM2QixNQUFOLENBQWFDLE1BQWIsQ0FDRSxVQUFBQyxLQUFLO0FBQUEsaUJBQ0gsQ0FBQyxvQkFBUS9CLEtBQUssQ0FBQ1csS0FBZCxFQUFxQnFCLElBQXJCLENBQTBCLFVBQUF2QyxDQUFDO0FBQUEsbUJBQUtBLENBQUMsQ0FBQ0UsSUFBRixHQUFTRixDQUFDLENBQUNFLElBQUYsS0FBV29DLEtBQUssQ0FBQ3BDLElBQTFCLEdBQWlDRixDQUFDLEtBQUtzQyxLQUFLLENBQUNwQyxJQUFsRDtBQUFBLFdBQTNCLENBREU7QUFBQSxTQURQLENBRDRCO0FBQUEsT0FqQ2tCO0FBQUEsd0dBc0NoQyxVQUFBSyxLQUFLO0FBQUEsZUFBSUEsS0FBSyxDQUFDVyxLQUFWO0FBQUEsT0F0QzJCO0FBQUEsbUhBdUNyQixVQUFBWCxLQUFLO0FBQUEsZUFBSUEsS0FBSyxDQUFDaUMsZ0JBQVY7QUFBQSxPQXZDZ0I7QUFBQSw0R0F3QzVCLFVBQUFqQyxLQUFLO0FBQUEsZUFBSUEsS0FBSyxDQUFDUyxTQUFWO0FBQUEsT0F4Q3VCO0FBQUEsZ0hBMEN4Qiw4QkFDdEIsTUFBS3lCLGNBRGlCLEVBRXRCLE1BQUtDLGFBRmlCLEVBR3RCLFVBQUNOLE1BQUQsRUFBU2xCLEtBQVQ7QUFBQSxlQUNFLG9CQUFRQSxLQUFSLEVBQ0d5QixHQURILENBQ08sVUFBQTNDLENBQUM7QUFBQSxpQkFDSm9DLE1BQU0sQ0FBQ0csSUFBUCxDQUFZLFVBQUFLLENBQUM7QUFBQSxtQkFDWCxtQ0FBbUI1QyxDQUFuQixLQUF5QkEsQ0FBQyxDQUFDRSxJQUEzQixHQUNJRixDQUFDLENBQUNFLElBQUYsS0FBV0Msa0JBQWtCLENBQUN5QyxDQUFELENBRGpDLEdBRUk1QyxDQUFDLEtBQUtHLGtCQUFrQixDQUFDeUMsQ0FBRCxDQUhqQjtBQUFBLFdBQWIsQ0FESTtBQUFBLFNBRFIsRUFRR1AsTUFSSCxDQVFVLFVBQUFyQyxDQUFDO0FBQUEsaUJBQUlBLENBQUo7QUFBQSxTQVJYLENBREY7QUFBQSxPQUhzQixDQTFDd0I7QUFBQSwrR0F5RHpCLDhCQUNyQixNQUFLNkMsc0JBRGdCLEVBRXJCLE1BQUtDLHdCQUZnQixFQUdyQixVQUFDVixNQUFELEVBQVNJLGdCQUFULEVBQThCO0FBQzVCLFlBQUksQ0FBQ0EsZ0JBQUwsRUFBdUI7QUFDckIsaUJBQU9KLE1BQVA7QUFDRDs7QUFDRCxZQUFNVyxPQUFPLEdBQUdDLEtBQUssQ0FBQ0MsT0FBTixDQUFjVCxnQkFBZCxJQUFrQ0EsZ0JBQWxDLEdBQXFELENBQUNBLGdCQUFELENBQXJFO0FBQ0EsZUFBT0osTUFBTSxDQUFDQyxNQUFQLENBQWMsVUFBQU8sQ0FBQztBQUFBLGlCQUFJRyxPQUFPLENBQUNHLFFBQVIsQ0FBaUJOLENBQUMsQ0FBQ3hCLElBQW5CLENBQUo7QUFBQSxTQUFmLENBQVA7QUFDRCxPQVRvQixDQXpEeUI7QUFBQSxnSEFxRXhCLDhCQUFlLE1BQUsrQixpQkFBcEIsRUFBdUNwQyxvQkFBdkMsQ0FyRXdCO0FBQUE7QUFBQTs7QUFBQTtBQUFBO0FBQUEsYUF1RWhELGtCQUFTO0FBQ1AsNEJBQ0U7QUFBSyxVQUFBLFNBQVMsRUFBQztBQUFmLHdCQUNFLGdDQUFDLHdCQUFEO0FBQ0UsVUFBQSxjQUFjLEVBQUUsd0JBQUFmLENBQUM7QUFBQSxtQkFBSUEsQ0FBSjtBQUFBLFdBRG5CO0FBRUUsVUFBQSxhQUFhLEVBQUUsS0FBS08sS0FBTCxDQUFXNkMsYUFGNUI7QUFHRSxVQUFBLGFBQWEsRUFBRXJELG9CQUhqQjtBQUlFLFVBQUEsWUFBWSxFQUFDLGFBSmY7QUFLRSxVQUFBLFlBQVksRUFBRSxLQUFLUSxLQUFMLENBQVc4QyxTQUwzQjtBQU1FLFVBQUEsVUFBVSxFQUFFLEtBQUs5QyxLQUFMLENBQVcrQyxVQU56QjtBQU9FLFVBQUEsSUFBSSxFQUFFLEtBQUsvQyxLQUFMLENBQVdnRCxJQVBuQjtBQVFFLFVBQUEsT0FBTyxFQUFFLEtBQUtoRCxLQUFMLENBQVdpRCxLQVJ0QjtBQVNFLFVBQUEsYUFBYSxFQUFFLEtBQUtDLHFCQUFMLENBQTJCLEtBQUtsRCxLQUFoQyxDQVRqQjtBQVVFLFVBQUEsUUFBUSxFQUFFLEtBQUtBLEtBQUwsQ0FBV21ELFFBVnZCO0FBV0UsVUFBQSxPQUFPLEVBQUUsS0FBS0Msb0JBQUwsQ0FBMEIsS0FBS3BELEtBQS9CLENBWFg7QUFZRSxVQUFBLFdBQVcsRUFBRSxLQUFLQSxLQUFMLENBQVdxRCxXQVoxQjtBQWFFLFVBQUEsV0FBVyxFQUFFLEtBQUtyRCxLQUFMLENBQVdzRCxXQWIxQjtBQWNFLFVBQUEsU0FBUyxFQUFFLEtBQUt0RCxLQUFMLENBQVd1RCxTQWR4QjtBQWVFLFVBQUEsUUFBUSxFQUFFLEtBQUt2RCxLQUFMLENBQVd3RCxRQWZ2QjtBQWdCRSxVQUFBLCtCQUErQixFQUFFLEtBQUtDLHFCQUFMLENBQTJCLEtBQUt6RCxLQUFoQyxDQWhCbkM7QUFpQkUsVUFBQSx1QkFBdUIsRUFBRSxLQUFLQSxLQUFMLENBQVc4QyxTQUFYLEdBQXVCOUIsb0JBQXZCLEdBQThDLElBakJ6RTtBQWtCRSxVQUFBLHVCQUF1QixFQUFFLEtBQUtoQixLQUFMLENBQVcwRDtBQWxCdEMsVUFERixDQURGO0FBd0JEO0FBaEcrQztBQUFBO0FBQUEsSUFDdEJDLGdCQURzQjs7QUFBQSxtQ0FDNUMvQixhQUQ0QyxlQUU3QjtBQUNqQkMsSUFBQUEsTUFBTSxFQUFFWCxzQkFBVUMsU0FBVixDQUFvQixDQUFDRCxzQkFBVTBDLEtBQVgsRUFBa0IxQyxzQkFBVUcsT0FBVixDQUFrQkosU0FBbEIsQ0FBbEIsQ0FBcEIsQ0FEUztBQUVqQnVDLElBQUFBLFFBQVEsRUFBRXRDLHNCQUFVMkMsSUFBVixDQUFlQyxVQUZSO0FBR2pCUCxJQUFBQSxTQUFTLEVBQUVyQyxzQkFBVUUsTUFISjtBQUlqQlQsSUFBQUEsS0FBSyxFQUFFTSxTQUpVO0FBS2pCZ0IsSUFBQUEsZ0JBQWdCLEVBQUVmLHNCQUFVQyxTQUFWLENBQW9CLENBQUNGLFNBQUQsRUFBWUMsc0JBQVVHLE9BQVYsQ0FBa0JKLFNBQWxCLENBQVosQ0FBcEIsQ0FMRDtBQU1qQjhCLElBQUFBLFVBQVUsRUFBRTdCLHNCQUFVRSxNQU5MO0FBT2pCa0MsSUFBQUEsV0FBVyxFQUFFcEMsc0JBQVVFLE1BUE47QUFRakIrQixJQUFBQSxRQUFRLEVBQUVqQyxzQkFBVTZDLElBUkg7QUFTakJkLElBQUFBLEtBQUssRUFBRS9CLHNCQUFVNkMsSUFUQTtBQVVqQlYsSUFBQUEsV0FBVyxFQUFFbkMsc0JBQVU2QyxJQVZOO0FBV2pCbEIsSUFBQUEsYUFBYSxFQUFFM0Isc0JBQVU2QyxJQVhSO0FBWWpCdEQsSUFBQUEsU0FBUyxFQUFFUyxzQkFBVTZDLElBWko7QUFhakJqQixJQUFBQSxTQUFTLEVBQUU1QixzQkFBVUcsT0FBVixDQUFrQkgsc0JBQVU4QyxHQUE1QixDQWJNO0FBY2pCTixJQUFBQSx1QkFBdUIsRUFBRXhDLHNCQUFVMkM7QUFkbEIsR0FGNkI7QUFBQSxtQ0FDNUNqQyxhQUQ0QyxrQkFtQjFCO0FBQ3BCdUIsSUFBQUEsUUFBUSxFQUFFLElBRFU7QUFFcEJGLElBQUFBLEtBQUssRUFBRSxLQUZhO0FBR3BCcEIsSUFBQUEsTUFBTSxFQUFFLEVBSFk7QUFJcEIyQixJQUFBQSxRQUFRLEVBQUUsb0JBQU0sQ0FBRSxDQUpFO0FBS3BCRCxJQUFBQSxTQUFTLEVBQUUsUUFMUztBQU1wQjVDLElBQUFBLEtBQUssRUFBRSxJQU5hO0FBT3BCMEMsSUFBQUEsV0FBVyxFQUFFLEtBUE87QUFRcEJSLElBQUFBLGFBQWEsRUFBRSxJQVJLO0FBU3BCcEMsSUFBQUEsU0FBUyxFQUFFLElBVFM7QUFVcEI2QyxJQUFBQSxXQUFXLEVBQUU7QUFWTyxHQW5CMEI7QUFrR2xELFNBQU8xQixhQUFQO0FBQ0Q7O0FBRURELG9CQUFvQixDQUFDdEIsSUFBckIsR0FBNEIsQ0FBQ0QsMkJBQUQsQ0FBNUI7ZUFDZXVCLG9CIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IChjKSAyMDIyIFViZXIgVGVjaG5vbG9naWVzLCBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cblxuaW1wb3J0IFJlYWN0LCB7Q29tcG9uZW50fSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzJztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQge2NyZWF0ZVNlbGVjdG9yfSBmcm9tICdyZXNlbGVjdCc7XG5cbmltcG9ydCBJdGVtU2VsZWN0b3IgZnJvbSAnLi9pdGVtLXNlbGVjdG9yL2l0ZW0tc2VsZWN0b3InO1xuaW1wb3J0IHtjbGFzc0xpc3R9IGZyb20gJy4vaXRlbS1zZWxlY3Rvci9kcm9wZG93bi1saXN0JztcbmltcG9ydCB7dG9BcnJheX0gZnJvbSAndXRpbHMvdXRpbHMnO1xuaW1wb3J0IHtub3ROdWxsb3JVbmRlZmluZWR9IGZyb20gJ3V0aWxzL2RhdGEtdXRpbHMnO1xuaW1wb3J0IEZpZWxkVG9rZW5GYWN0b3J5IGZyb20gJy4uL2NvbW1vbi9maWVsZC10b2tlbic7XG5cbmNvbnN0IGRlZmF1bHREaXNwbGF5T3B0aW9uID0gZCA9PiBkLmRpc3BsYXlOYW1lIHx8IGQubmFtZTtcbmNvbnN0IGRlZmF1bHRWYWx1ZU9wdGlvbiA9IGQgPT4gZC5uYW1lO1xuXG5jb25zdCBTdHlsZWRUb2tlbiA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiAwICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuZmllbGRUb2tlblJpZ2h0TWFyZ2lufXB4IDAgMDtcbmA7XG5jb25zdCBTdHlsZWRGaWVsZExpc3RJdGVtID0gc3R5bGVkLmRpdmBcbiAgbGluZS1oZWlnaHQ6IDA7XG5gO1xuXG5GaWVsZExpc3RJdGVtRmFjdG9yeUZhY3RvcnkuZGVwcyA9IFtGaWVsZFRva2VuRmFjdG9yeV07XG4vLyBjdXN0b20gbGlzdCBJdGVtXG5leHBvcnQgZnVuY3Rpb24gRmllbGRMaXN0SXRlbUZhY3RvcnlGYWN0b3J5KEZpZWxkVG9rZW4pIHtcbiAgY29uc3QgRmllbGRMaXN0SXRlbUZhY3RvcnkgPSAoc2hvd1Rva2VuID0gdHJ1ZSkgPT4ge1xuICAgIGNvbnN0IEZpZWxkTGlzdEl0ZW0gPSAoe3ZhbHVlLCBkaXNwbGF5T3B0aW9uID0gZGVmYXVsdERpc3BsYXlPcHRpb259KSA9PiAoXG4gICAgICA8U3R5bGVkRmllbGRMaXN0SXRlbSBjbGFzc05hbWU9XCJmaWVsZC1zZWxlY3Rvcl9saXN0LWl0ZW1cIj5cbiAgICAgICAge3Nob3dUb2tlbiA/IChcbiAgICAgICAgICA8U3R5bGVkVG9rZW4+XG4gICAgICAgICAgICA8RmllbGRUb2tlbiB0eXBlPXt2YWx1ZS50eXBlfSAvPlxuICAgICAgICAgIDwvU3R5bGVkVG9rZW4+XG4gICAgICAgICkgOiBudWxsfVxuICAgICAgICA8c3BhbiBjbGFzc05hbWU9e2NsYXNzTGlzdC5saXN0SXRlbUFuY2hvcn0+e2Rpc3BsYXlPcHRpb24odmFsdWUpfTwvc3Bhbj5cbiAgICAgIDwvU3R5bGVkRmllbGRMaXN0SXRlbT5cbiAgICApO1xuICAgIHJldHVybiBGaWVsZExpc3RJdGVtO1xuICB9O1xuICByZXR1cm4gRmllbGRMaXN0SXRlbUZhY3Rvcnk7XG59XG5cbmNvbnN0IFN1Z2dlc3RlZEZpZWxkSGVhZGVyID0gKCkgPT4gPGRpdj5TdWdnZXN0ZWQgRmllbGQ8L2Rpdj47XG5cbmNvbnN0IEZpZWxkVHlwZSA9IFByb3BUeXBlcy5vbmVPZlR5cGUoW1xuICBQcm9wVHlwZXMuc3RyaW5nLFxuICBQcm9wVHlwZXMuYXJyYXlPZihQcm9wVHlwZXMuc3RyaW5nKSxcbiAgUHJvcFR5cGVzLmFycmF5T2YoXG4gICAgUHJvcFR5cGVzLnNoYXBlKHtcbiAgICAgIG5hbWU6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgICBmb3JtYXQ6IFByb3BUeXBlcy5zdHJpbmdcbiAgICB9KVxuICApLFxuICBQcm9wVHlwZXMuc2hhcGUoe1xuICAgIGZvcm1hdDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBpZDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBuYW1lOiBQcm9wVHlwZXMuc3RyaW5nLFxuICAgIGZpZWxkSWR4OiBQcm9wVHlwZXMubnVtYmVyLFxuICAgIHR5cGU6IFByb3BUeXBlcy5udW1iZXJcbiAgfSlcbl0pO1xuXG5mdW5jdGlvbiBGaWVsZFNlbGVjdG9yRmFjdG9yeShGaWVsZExpc3RJdGVtRmFjdG9yeSkge1xuICBjbGFzcyBGaWVsZFNlbGVjdG9yIGV4dGVuZHMgQ29tcG9uZW50IHtcbiAgICBzdGF0aWMgcHJvcFR5cGVzID0ge1xuICAgICAgZmllbGRzOiBQcm9wVHlwZXMub25lT2ZUeXBlKFtQcm9wVHlwZXMuYXJyYXksIFByb3BUeXBlcy5hcnJheU9mKEZpZWxkVHlwZSldKSxcbiAgICAgIG9uU2VsZWN0OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgICAgcGxhY2VtZW50OiBQcm9wVHlwZXMuc3RyaW5nLFxuICAgICAgdmFsdWU6IEZpZWxkVHlwZSxcbiAgICAgIGZpbHRlckZpZWxkVHlwZXM6IFByb3BUeXBlcy5vbmVPZlR5cGUoW0ZpZWxkVHlwZSwgUHJvcFR5cGVzLmFycmF5T2YoRmllbGRUeXBlKV0pLFxuICAgICAgaW5wdXRUaGVtZTogUHJvcFR5cGVzLnN0cmluZyxcbiAgICAgIHBsYWNlaG9sZGVyOiBQcm9wVHlwZXMuc3RyaW5nLFxuICAgICAgZXJhc2FibGU6IFByb3BUeXBlcy5ib29sLFxuICAgICAgZXJyb3I6IFByb3BUeXBlcy5ib29sLFxuICAgICAgbXVsdGlTZWxlY3Q6IFByb3BUeXBlcy5ib29sLFxuICAgICAgY2xvc2VPblNlbGVjdDogUHJvcFR5cGVzLmJvb2wsXG4gICAgICBzaG93VG9rZW46IFByb3BUeXBlcy5ib29sLFxuICAgICAgc3VnZ2VzdGVkOiBQcm9wVHlwZXMuYXJyYXlPZihQcm9wVHlwZXMuYW55KSxcbiAgICAgIEN1c3RvbUNoaWNrbGV0Q29tcG9uZW50OiBQcm9wVHlwZXMuZnVuY1xuICAgIH07XG5cbiAgICBzdGF0aWMgZGVmYXVsdFByb3BzID0ge1xuICAgICAgZXJhc2FibGU6IHRydWUsXG4gICAgICBlcnJvcjogZmFsc2UsXG4gICAgICBmaWVsZHM6IFtdLFxuICAgICAgb25TZWxlY3Q6ICgpID0+IHt9LFxuICAgICAgcGxhY2VtZW50OiAnYm90dG9tJyxcbiAgICAgIHZhbHVlOiBudWxsLFxuICAgICAgbXVsdGlTZWxlY3Q6IGZhbHNlLFxuICAgICAgY2xvc2VPblNlbGVjdDogdHJ1ZSxcbiAgICAgIHNob3dUb2tlbjogdHJ1ZSxcbiAgICAgIHBsYWNlaG9sZGVyOiAncGxhY2Vob2xkZXIuc2VsZWN0RmllbGQnXG4gICAgfTtcblxuICAgIGZpZWxkc1NlbGVjdG9yID0gcHJvcHMgPT4gcHJvcHMuZmllbGRzO1xuICAgIGZpbHRlcmVkRmllbGRzU2VsZWN0b3IgPSBwcm9wcyA9PlxuICAgICAgcHJvcHMuZmllbGRzLmZpbHRlcihcbiAgICAgICAgZmllbGQgPT5cbiAgICAgICAgICAhdG9BcnJheShwcm9wcy52YWx1ZSkuZmluZChkID0+IChkLm5hbWUgPyBkLm5hbWUgPT09IGZpZWxkLm5hbWUgOiBkID09PSBmaWVsZC5uYW1lKSlcbiAgICAgICk7XG4gICAgdmFsdWVTZWxlY3RvciA9IHByb3BzID0+IHByb3BzLnZhbHVlO1xuICAgIGZpbHRlckZpZWxkVHlwZXNTZWxlY3RvciA9IHByb3BzID0+IHByb3BzLmZpbHRlckZpZWxkVHlwZXM7XG4gICAgc2hvd1Rva2VuU2VsZWN0b3IgPSBwcm9wcyA9PiBwcm9wcy5zaG93VG9rZW47XG5cbiAgICBzZWxlY3RlZEl0ZW1zU2VsZWN0b3IgPSBjcmVhdGVTZWxlY3RvcihcbiAgICAgIHRoaXMuZmllbGRzU2VsZWN0b3IsXG4gICAgICB0aGlzLnZhbHVlU2VsZWN0b3IsXG4gICAgICAoZmllbGRzLCB2YWx1ZSkgPT5cbiAgICAgICAgdG9BcnJheSh2YWx1ZSlcbiAgICAgICAgICAubWFwKGQgPT5cbiAgICAgICAgICAgIGZpZWxkcy5maW5kKGYgPT5cbiAgICAgICAgICAgICAgbm90TnVsbG9yVW5kZWZpbmVkKGQpICYmIGQubmFtZVxuICAgICAgICAgICAgICAgID8gZC5uYW1lID09PSBkZWZhdWx0VmFsdWVPcHRpb24oZilcbiAgICAgICAgICAgICAgICA6IGQgPT09IGRlZmF1bHRWYWx1ZU9wdGlvbihmKVxuICAgICAgICAgICAgKVxuICAgICAgICAgIClcbiAgICAgICAgICAuZmlsdGVyKGQgPT4gZClcbiAgICApO1xuXG4gICAgZmllbGRPcHRpb25zU2VsZWN0b3IgPSBjcmVhdGVTZWxlY3RvcihcbiAgICAgIHRoaXMuZmlsdGVyZWRGaWVsZHNTZWxlY3RvcixcbiAgICAgIHRoaXMuZmlsdGVyRmllbGRUeXBlc1NlbGVjdG9yLFxuICAgICAgKGZpZWxkcywgZmlsdGVyRmllbGRUeXBlcykgPT4ge1xuICAgICAgICBpZiAoIWZpbHRlckZpZWxkVHlwZXMpIHtcbiAgICAgICAgICByZXR1cm4gZmllbGRzO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGZpbHRlcnMgPSBBcnJheS5pc0FycmF5KGZpbHRlckZpZWxkVHlwZXMpID8gZmlsdGVyRmllbGRUeXBlcyA6IFtmaWx0ZXJGaWVsZFR5cGVzXTtcbiAgICAgICAgcmV0dXJuIGZpZWxkcy5maWx0ZXIoZiA9PiBmaWx0ZXJzLmluY2x1ZGVzKGYudHlwZSkpO1xuICAgICAgfVxuICAgICk7XG5cbiAgICBmaWVsZExpc3RJdGVtU2VsZWN0b3IgPSBjcmVhdGVTZWxlY3Rvcih0aGlzLnNob3dUb2tlblNlbGVjdG9yLCBGaWVsZExpc3RJdGVtRmFjdG9yeSk7XG5cbiAgICByZW5kZXIoKSB7XG4gICAgICByZXR1cm4gKFxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImZpZWxkLXNlbGVjdG9yXCI+XG4gICAgICAgICAgPEl0ZW1TZWxlY3RvclxuICAgICAgICAgICAgZ2V0T3B0aW9uVmFsdWU9e2QgPT4gZH1cbiAgICAgICAgICAgIGNsb3NlT25TZWxlY3Q9e3RoaXMucHJvcHMuY2xvc2VPblNlbGVjdH1cbiAgICAgICAgICAgIGRpc3BsYXlPcHRpb249e2RlZmF1bHREaXNwbGF5T3B0aW9ufVxuICAgICAgICAgICAgZmlsdGVyT3B0aW9uPVwiZGlzcGxheU5hbWVcIlxuICAgICAgICAgICAgZml4ZWRPcHRpb25zPXt0aGlzLnByb3BzLnN1Z2dlc3RlZH1cbiAgICAgICAgICAgIGlucHV0VGhlbWU9e3RoaXMucHJvcHMuaW5wdXRUaGVtZX1cbiAgICAgICAgICAgIHNpemU9e3RoaXMucHJvcHMuc2l6ZX1cbiAgICAgICAgICAgIGlzRXJyb3I9e3RoaXMucHJvcHMuZXJyb3J9XG4gICAgICAgICAgICBzZWxlY3RlZEl0ZW1zPXt0aGlzLnNlbGVjdGVkSXRlbXNTZWxlY3Rvcih0aGlzLnByb3BzKX1cbiAgICAgICAgICAgIGVyYXNhYmxlPXt0aGlzLnByb3BzLmVyYXNhYmxlfVxuICAgICAgICAgICAgb3B0aW9ucz17dGhpcy5maWVsZE9wdGlvbnNTZWxlY3Rvcih0aGlzLnByb3BzKX1cbiAgICAgICAgICAgIG11bHRpU2VsZWN0PXt0aGlzLnByb3BzLm11bHRpU2VsZWN0fVxuICAgICAgICAgICAgcGxhY2Vob2xkZXI9e3RoaXMucHJvcHMucGxhY2Vob2xkZXJ9XG4gICAgICAgICAgICBwbGFjZW1lbnQ9e3RoaXMucHJvcHMucGxhY2VtZW50fVxuICAgICAgICAgICAgb25DaGFuZ2U9e3RoaXMucHJvcHMub25TZWxlY3R9XG4gICAgICAgICAgICBEcm9wRG93bkxpbmVJdGVtUmVuZGVyQ29tcG9uZW50PXt0aGlzLmZpZWxkTGlzdEl0ZW1TZWxlY3Rvcih0aGlzLnByb3BzKX1cbiAgICAgICAgICAgIERyb3Bkb3duSGVhZGVyQ29tcG9uZW50PXt0aGlzLnByb3BzLnN1Z2dlc3RlZCA/IFN1Z2dlc3RlZEZpZWxkSGVhZGVyIDogbnVsbH1cbiAgICAgICAgICAgIEN1c3RvbUNoaWNrbGV0Q29tcG9uZW50PXt0aGlzLnByb3BzLkN1c3RvbUNoaWNrbGV0Q29tcG9uZW50fVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgKTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIEZpZWxkU2VsZWN0b3I7XG59XG5cbkZpZWxkU2VsZWN0b3JGYWN0b3J5LmRlcHMgPSBbRmllbGRMaXN0SXRlbUZhY3RvcnlGYWN0b3J5XTtcbmV4cG9ydCBkZWZhdWx0IEZpZWxkU2VsZWN0b3JGYWN0b3J5O1xuIl19
|
|
233
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2NvbW1vbi9maWVsZC1zZWxlY3Rvci5qcyJdLCJuYW1lcyI6WyJkZWZhdWx0RGlzcGxheU9wdGlvbiIsImQiLCJkaXNwbGF5TmFtZSIsIm5hbWUiLCJkZWZhdWx0VmFsdWVPcHRpb24iLCJTdHlsZWRUb2tlbiIsInN0eWxlZCIsImRpdiIsInByb3BzIiwidGhlbWUiLCJmaWVsZFRva2VuUmlnaHRNYXJnaW4iLCJTdHlsZWRGaWVsZExpc3RJdGVtIiwiRmllbGRMaXN0SXRlbUZhY3RvcnlGYWN0b3J5IiwiZGVwcyIsIkZpZWxkVG9rZW5GYWN0b3J5IiwiRmllbGRUb2tlbiIsIkZpZWxkTGlzdEl0ZW1GYWN0b3J5Iiwic2hvd1Rva2VuIiwiRmllbGRMaXN0SXRlbSIsInZhbHVlIiwiZGlzcGxheU9wdGlvbiIsInR5cGUiLCJjbGFzc0xpc3QiLCJsaXN0SXRlbUFuY2hvciIsIlN1Z2dlc3RlZEZpZWxkSGVhZGVyIiwiRmllbGRUeXBlIiwiUHJvcFR5cGVzIiwib25lT2ZUeXBlIiwic3RyaW5nIiwiYXJyYXlPZiIsInNoYXBlIiwiZm9ybWF0IiwiaWQiLCJmaWVsZElkeCIsIm51bWJlciIsIkZpZWxkU2VsZWN0b3JGYWN0b3J5IiwiRmllbGRTZWxlY3RvciIsImZpZWxkcyIsImZpbHRlciIsImZpZWxkIiwiZmluZCIsImZpbHRlckZpZWxkVHlwZXMiLCJmaWVsZHNTZWxlY3RvciIsInZhbHVlU2VsZWN0b3IiLCJtYXAiLCJmIiwiZmlsdGVyZWRGaWVsZHNTZWxlY3RvciIsImZpbHRlckZpZWxkVHlwZXNTZWxlY3RvciIsImZpbHRlcnMiLCJBcnJheSIsImlzQXJyYXkiLCJpbmNsdWRlcyIsInNob3dUb2tlblNlbGVjdG9yIiwiY2xvc2VPblNlbGVjdCIsInN1Z2dlc3RlZCIsImlucHV0VGhlbWUiLCJzaXplIiwiZXJyb3IiLCJpc0xvYWRpbmciLCJzZWxlY3RlZEl0ZW1zU2VsZWN0b3IiLCJlcmFzYWJsZSIsImZpZWxkT3B0aW9uc1NlbGVjdG9yIiwibXVsdGlTZWxlY3QiLCJwbGFjZWhvbGRlciIsInBsYWNlbWVudCIsIm9uU2VsZWN0IiwiZmllbGRMaXN0SXRlbVNlbGVjdG9yIiwiQ3VzdG9tQ2hpY2tsZXRDb21wb25lbnQiLCJDb21wb25lbnQiLCJhcnJheSIsImZ1bmMiLCJpc1JlcXVpcmVkIiwiYm9vbCIsImFueSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQW9CQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFFQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7Ozs7Ozs7QUFFQSxJQUFNQSxvQkFBb0IsR0FBRyxTQUF2QkEsb0JBQXVCLENBQUFDLENBQUM7QUFBQSxTQUFJQSxDQUFDLENBQUNDLFdBQUYsSUFBaUJELENBQUMsQ0FBQ0UsSUFBdkI7QUFBQSxDQUE5Qjs7QUFDQSxJQUFNQyxrQkFBa0IsR0FBRyxTQUFyQkEsa0JBQXFCLENBQUFILENBQUM7QUFBQSxTQUFJQSxDQUFDLENBQUNFLElBQU47QUFBQSxDQUE1Qjs7QUFFQSxJQUFNRSxXQUFXLEdBQUdDLDZCQUFPQyxHQUFWLDRJQUVILFVBQUFDLEtBQUs7QUFBQSxTQUFJQSxLQUFLLENBQUNDLEtBQU4sQ0FBWUMscUJBQWhCO0FBQUEsQ0FGRixDQUFqQjs7QUFJQSxJQUFNQyxtQkFBbUIsR0FBR0wsNkJBQU9DLEdBQVYsNkdBQXpCOztBQUlBSywyQkFBMkIsQ0FBQ0MsSUFBNUIsR0FBbUMsQ0FBQ0Msc0JBQUQsQ0FBbkMsQyxDQUNBOztBQUNPLFNBQVNGLDJCQUFULENBQXFDRyxVQUFyQyxFQUFpRDtBQUN0RCxNQUFNQyxvQkFBb0IsR0FBRyxTQUF2QkEsb0JBQXVCLEdBQXNCO0FBQUEsUUFBckJDLFNBQXFCLHVFQUFULElBQVM7O0FBQ2pELFFBQU1DLGFBQWEsR0FBRyxTQUFoQkEsYUFBZ0I7QUFBQSxVQUFFQyxLQUFGLFFBQUVBLEtBQUY7QUFBQSxvQ0FBU0MsYUFBVDtBQUFBLFVBQVNBLGFBQVQsbUNBQXlCcEIsb0JBQXpC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RCxTQUFPM0IsYUFBUDtBQUNEOztBQUVERCxvQkFBb0IsQ0FBQ3RCLElBQXJCLEdBQTRCLENBQUNELDJCQUFELENBQTVCO2VBQ2V1QixvQiIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAoYykgMjAyMiBVYmVyIFRlY2hub2xvZ2llcywgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG5cbmltcG9ydCBSZWFjdCwge0NvbXBvbmVudH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdzdHlsZWQtY29tcG9uZW50cyc7XG5pbXBvcnQgUHJvcFR5cGVzIGZyb20gJ3Byb3AtdHlwZXMnO1xuaW1wb3J0IHtjcmVhdGVTZWxlY3Rvcn0gZnJvbSAncmVzZWxlY3QnO1xuXG5pbXBvcnQgSXRlbVNlbGVjdG9yIGZyb20gJy4vaXRlbS1zZWxlY3Rvci9pdGVtLXNlbGVjdG9yJztcbmltcG9ydCB7Y2xhc3NMaXN0fSBmcm9tICcuL2l0ZW0tc2VsZWN0b3IvZHJvcGRvd24tbGlzdCc7XG5pbXBvcnQge3RvQXJyYXl9IGZyb20gJ3V0aWxzL3V0aWxzJztcbmltcG9ydCB7bm90TnVsbG9yVW5kZWZpbmVkfSBmcm9tICd1dGlscy9kYXRhLXV0aWxzJztcbmltcG9ydCBGaWVsZFRva2VuRmFjdG9yeSBmcm9tICcuLi9jb21tb24vZmllbGQtdG9rZW4nO1xuXG5jb25zdCBkZWZhdWx0RGlzcGxheU9wdGlvbiA9IGQgPT4gZC5kaXNwbGF5TmFtZSB8fCBkLm5hbWU7XG5jb25zdCBkZWZhdWx0VmFsdWVPcHRpb24gPSBkID0+IGQubmFtZTtcblxuY29uc3QgU3R5bGVkVG9rZW4gPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbjogMCAke3Byb3BzID0+IHByb3BzLnRoZW1lLmZpZWxkVG9rZW5SaWdodE1hcmdpbn1weCAwIDA7XG5gO1xuY29uc3QgU3R5bGVkRmllbGRMaXN0SXRlbSA9IHN0eWxlZC5kaXZgXG4gIGxpbmUtaGVpZ2h0OiAwO1xuYDtcblxuRmllbGRMaXN0SXRlbUZhY3RvcnlGYWN0b3J5LmRlcHMgPSBbRmllbGRUb2tlbkZhY3RvcnldO1xuLy8gY3VzdG9tIGxpc3QgSXRlbVxuZXhwb3J0IGZ1bmN0aW9uIEZpZWxkTGlzdEl0ZW1GYWN0b3J5RmFjdG9yeShGaWVsZFRva2VuKSB7XG4gIGNvbnN0IEZpZWxkTGlzdEl0ZW1GYWN0b3J5ID0gKHNob3dUb2tlbiA9IHRydWUpID0+IHtcbiAgICBjb25zdCBGaWVsZExpc3RJdGVtID0gKHt2YWx1ZSwgZGlzcGxheU9wdGlvbiA9IGRlZmF1bHREaXNwbGF5T3B0aW9ufSkgPT4gKFxuICAgICAgPFN0eWxlZEZpZWxkTGlzdEl0ZW0gY2xhc3NOYW1lPVwiZmllbGQtc2VsZWN0b3JfbGlzdC1pdGVtXCI+XG4gICAgICAgIHtzaG93VG9rZW4gPyAoXG4gICAgICAgICAgPFN0eWxlZFRva2VuPlxuICAgICAgICAgICAgPEZpZWxkVG9rZW4gdHlwZT17dmFsdWUudHlwZX0gLz5cbiAgICAgICAgICA8L1N0eWxlZFRva2VuPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPHNwYW4gY2xhc3NOYW1lPXtjbGFzc0xpc3QubGlzdEl0ZW1BbmNob3J9PntkaXNwbGF5T3B0aW9uKHZhbHVlKX08L3NwYW4+XG4gICAgICA8L1N0eWxlZEZpZWxkTGlzdEl0ZW0+XG4gICAgKTtcbiAgICByZXR1cm4gRmllbGRMaXN0SXRlbTtcbiAgfTtcbiAgcmV0dXJuIEZpZWxkTGlzdEl0ZW1GYWN0b3J5O1xufVxuXG5jb25zdCBTdWdnZXN0ZWRGaWVsZEhlYWRlciA9ICgpID0+IDxkaXY+U3VnZ2VzdGVkIEZpZWxkPC9kaXY+O1xuXG5jb25zdCBGaWVsZFR5cGUgPSBQcm9wVHlwZXMub25lT2ZUeXBlKFtcbiAgUHJvcFR5cGVzLnN0cmluZyxcbiAgUHJvcFR5cGVzLmFycmF5T2YoUHJvcFR5cGVzLnN0cmluZyksXG4gIFByb3BUeXBlcy5hcnJheU9mKFxuICAgIFByb3BUeXBlcy5zaGFwZSh7XG4gICAgICBuYW1lOiBQcm9wVHlwZXMuc3RyaW5nLFxuICAgICAgZm9ybWF0OiBQcm9wVHlwZXMuc3RyaW5nXG4gICAgfSlcbiAgKSxcbiAgUHJvcFR5cGVzLnNoYXBlKHtcbiAgICBmb3JtYXQ6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgaWQ6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgbmFtZTogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBmaWVsZElkeDogUHJvcFR5cGVzLm51bWJlcixcbiAgICB0eXBlOiBQcm9wVHlwZXMubnVtYmVyXG4gIH0pXG5dKTtcblxuZnVuY3Rpb24gRmllbGRTZWxlY3RvckZhY3RvcnkoRmllbGRMaXN0SXRlbUZhY3RvcnkpIHtcbiAgY2xhc3MgRmllbGRTZWxlY3RvciBleHRlbmRzIENvbXBvbmVudCB7XG4gICAgc3RhdGljIHByb3BUeXBlcyA9IHtcbiAgICAgIGZpZWxkczogUHJvcFR5cGVzLm9uZU9mVHlwZShbUHJvcFR5cGVzLmFycmF5LCBQcm9wVHlwZXMuYXJyYXlPZihGaWVsZFR5cGUpXSksXG4gICAgICBvblNlbGVjdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIHBsYWNlbWVudDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICAgIHZhbHVlOiBGaWVsZFR5cGUsXG4gICAgICBmaWx0ZXJGaWVsZFR5cGVzOiBQcm9wVHlwZXMub25lT2ZUeXBlKFtGaWVsZFR5cGUsIFByb3BUeXBlcy5hcnJheU9mKEZpZWxkVHlwZSldKSxcbiAgICAgIGlucHV0VGhlbWU6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgICBwbGFjZWhvbGRlcjogUHJvcFR5cGVzLnN0cmluZyxcbiAgICAgIGVyYXNhYmxlOiBQcm9wVHlwZXMuYm9vbCxcbiAgICAgIGVycm9yOiBQcm9wVHlwZXMuYm9vbCxcbiAgICAgIGlzTG9hZGluZzogUHJvcFR5cGVzLmJvb2wsXG4gICAgICBtdWx0aVNlbGVjdDogUHJvcFR5cGVzLmJvb2wsXG4gICAgICBjbG9zZU9uU2VsZWN0OiBQcm9wVHlwZXMuYm9vbCxcbiAgICAgIHNob3dUb2tlbjogUHJvcFR5cGVzLmJvb2wsXG4gICAgICBzdWdnZXN0ZWQ6IFByb3BUeXBlcy5hcnJheU9mKFByb3BUeXBlcy5hbnkpLFxuICAgICAgQ3VzdG9tQ2hpY2tsZXRDb21wb25lbnQ6IFByb3BUeXBlcy5mdW5jXG4gICAgfTtcblxuICAgIHN0YXRpYyBkZWZhdWx0UHJvcHMgPSB7XG4gICAgICBlcmFzYWJsZTogdHJ1ZSxcbiAgICAgIGVycm9yOiBmYWxzZSxcbiAgICAgIGZpZWxkczogW10sXG4gICAgICBvblNlbGVjdDogKCkgPT4ge30sXG4gICAgICBwbGFjZW1lbnQ6ICdib3R0b20nLFxuICAgICAgdmFsdWU6IG51bGwsXG4gICAgICBtdWx0aVNlbGVjdDogZmFsc2UsXG4gICAgICBjbG9zZU9uU2VsZWN0OiB0cnVlLFxuICAgICAgc2hvd1Rva2VuOiB0cnVlLFxuICAgICAgcGxhY2Vob2xkZXI6ICdwbGFjZWhvbGRlci5zZWxlY3RGaWVsZCdcbiAgICB9O1xuXG4gICAgZmllbGRzU2VsZWN0b3IgPSBwcm9wcyA9PiBwcm9wcy5maWVsZHM7XG4gICAgZmlsdGVyZWRGaWVsZHNTZWxlY3RvciA9IHByb3BzID0+XG4gICAgICBwcm9wcy5maWVsZHMuZmlsdGVyKFxuICAgICAgICBmaWVsZCA9PlxuICAgICAgICAgICF0b0FycmF5KHByb3BzLnZhbHVlKS5maW5kKGQgPT4gKGQubmFtZSA/IGQubmFtZSA9PT0gZmllbGQubmFtZSA6IGQgPT09IGZpZWxkLm5hbWUpKVxuICAgICAgKTtcbiAgICB2YWx1ZVNlbGVjdG9yID0gcHJvcHMgPT4gcHJvcHMudmFsdWU7XG4gICAgZmlsdGVyRmllbGRUeXBlc1NlbGVjdG9yID0gcHJvcHMgPT4gcHJvcHMuZmlsdGVyRmllbGRUeXBlcztcbiAgICBzaG93VG9rZW5TZWxlY3RvciA9IHByb3BzID0+IHByb3BzLnNob3dUb2tlbjtcblxuICAgIHNlbGVjdGVkSXRlbXNTZWxlY3RvciA9IGNyZWF0ZVNlbGVjdG9yKFxuICAgICAgdGhpcy5maWVsZHNTZWxlY3RvcixcbiAgICAgIHRoaXMudmFsdWVTZWxlY3RvcixcbiAgICAgIChmaWVsZHMsIHZhbHVlKSA9PlxuICAgICAgICB0b0FycmF5KHZhbHVlKVxuICAgICAgICAgIC5tYXAoZCA9PlxuICAgICAgICAgICAgZmllbGRzLmZpbmQoZiA9PlxuICAgICAgICAgICAgICBub3ROdWxsb3JVbmRlZmluZWQoZCkgJiYgZC5uYW1lXG4gICAgICAgICAgICAgICAgPyBkLm5hbWUgPT09IGRlZmF1bHRWYWx1ZU9wdGlvbihmKVxuICAgICAgICAgICAgICAgIDogZCA9PT0gZGVmYXVsdFZhbHVlT3B0aW9uKGYpXG4gICAgICAgICAgICApXG4gICAgICAgICAgKVxuICAgICAgICAgIC5maWx0ZXIoZCA9PiBkKVxuICAgICk7XG5cbiAgICBmaWVsZE9wdGlvbnNTZWxlY3RvciA9IGNyZWF0ZVNlbGVjdG9yKFxuICAgICAgdGhpcy5maWx0ZXJlZEZpZWxkc1NlbGVjdG9yLFxuICAgICAgdGhpcy5maWx0ZXJGaWVsZFR5cGVzU2VsZWN0b3IsXG4gICAgICAoZmllbGRzLCBmaWx0ZXJGaWVsZFR5cGVzKSA9PiB7XG4gICAgICAgIGlmICghZmlsdGVyRmllbGRUeXBlcykge1xuICAgICAgICAgIHJldHVybiBmaWVsZHM7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgZmlsdGVycyA9IEFycmF5LmlzQXJyYXkoZmlsdGVyRmllbGRUeXBlcykgPyBmaWx0ZXJGaWVsZFR5cGVzIDogW2ZpbHRlckZpZWxkVHlwZXNdO1xuICAgICAgICByZXR1cm4gZmllbGRzLmZpbHRlcihmID0+IGZpbHRlcnMuaW5jbHVkZXMoZi50eXBlKSk7XG4gICAgICB9XG4gICAgKTtcblxuICAgIGZpZWxkTGlzdEl0ZW1TZWxlY3RvciA9IGNyZWF0ZVNlbGVjdG9yKHRoaXMuc2hvd1Rva2VuU2VsZWN0b3IsIEZpZWxkTGlzdEl0ZW1GYWN0b3J5KTtcblxuICAgIHJlbmRlcigpIHtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmllbGQtc2VsZWN0b3JcIj5cbiAgICAgICAgICA8SXRlbVNlbGVjdG9yXG4gICAgICAgICAgICBnZXRPcHRpb25WYWx1ZT17ZCA9PiBkfVxuICAgICAgICAgICAgY2xvc2VPblNlbGVjdD17dGhpcy5wcm9wcy5jbG9zZU9uU2VsZWN0fVxuICAgICAgICAgICAgZGlzcGxheU9wdGlvbj17ZGVmYXVsdERpc3BsYXlPcHRpb259XG4gICAgICAgICAgICBmaWx0ZXJPcHRpb249XCJkaXNwbGF5TmFtZVwiXG4gICAgICAgICAgICBmaXhlZE9wdGlvbnM9e3RoaXMucHJvcHMuc3VnZ2VzdGVkfVxuICAgICAgICAgICAgaW5wdXRUaGVtZT17dGhpcy5wcm9wcy5pbnB1dFRoZW1lfVxuICAgICAgICAgICAgc2l6ZT17dGhpcy5wcm9wcy5zaXplfVxuICAgICAgICAgICAgaXNFcnJvcj17dGhpcy5wcm9wcy5lcnJvcn1cbiAgICAgICAgICAgIGlzTG9hZGluZz17dGhpcy5wcm9wcy5pc0xvYWRpbmd9XG4gICAgICAgICAgICBzZWxlY3RlZEl0ZW1zPXt0aGlzLnNlbGVjdGVkSXRlbXNTZWxlY3Rvcih0aGlzLnByb3BzKX1cbiAgICAgICAgICAgIGVyYXNhYmxlPXt0aGlzLnByb3BzLmVyYXNhYmxlfVxuICAgICAgICAgICAgb3B0aW9ucz17dGhpcy5maWVsZE9wdGlvbnNTZWxlY3Rvcih0aGlzLnByb3BzKX1cbiAgICAgICAgICAgIG11bHRpU2VsZWN0PXt0aGlzLnByb3BzLm11bHRpU2VsZWN0fVxuICAgICAgICAgICAgcGxhY2Vob2xkZXI9e3RoaXMucHJvcHMucGxhY2Vob2xkZXJ9XG4gICAgICAgICAgICBwbGFjZW1lbnQ9e3RoaXMucHJvcHMucGxhY2VtZW50fVxuICAgICAgICAgICAgb25DaGFuZ2U9e3RoaXMucHJvcHMub25TZWxlY3R9XG4gICAgICAgICAgICBEcm9wRG93bkxpbmVJdGVtUmVuZGVyQ29tcG9uZW50PXt0aGlzLmZpZWxkTGlzdEl0ZW1TZWxlY3Rvcih0aGlzLnByb3BzKX1cbiAgICAgICAgICAgIERyb3Bkb3duSGVhZGVyQ29tcG9uZW50PXt0aGlzLnByb3BzLnN1Z2dlc3RlZCA/IFN1Z2dlc3RlZEZpZWxkSGVhZGVyIDogbnVsbH1cbiAgICAgICAgICAgIEN1c3RvbUNoaWNrbGV0Q29tcG9uZW50PXt0aGlzLnByb3BzLkN1c3RvbUNoaWNrbGV0Q29tcG9uZW50fVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgKTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIEZpZWxkU2VsZWN0b3I7XG59XG5cbkZpZWxkU2VsZWN0b3JGYWN0b3J5LmRlcHMgPSBbRmllbGRMaXN0SXRlbUZhY3RvcnlGYWN0b3J5XTtcbmV4cG9ydCBkZWZhdWx0IEZpZWxkU2VsZWN0b3JGYWN0b3J5O1xuIl19
|
|
@@ -49,6 +49,8 @@ var _typeahead = _interopRequireDefault(require("./typeahead"));
|
|
|
49
49
|
|
|
50
50
|
var _icons = require("../icons");
|
|
51
51
|
|
|
52
|
+
var _loadingSpinner = _interopRequireDefault(require("../loading-spinner"));
|
|
53
|
+
|
|
52
54
|
var _dropdownList = _interopRequireWildcard(require("./dropdown-list"));
|
|
53
55
|
|
|
54
56
|
var _utils = require("../../../utils/utils");
|
|
@@ -181,7 +183,7 @@ var ItemSelector = /*#__PURE__*/function (_Component) {
|
|
|
181
183
|
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "_showTypeahead", function (e) {
|
|
182
184
|
e.stopPropagation();
|
|
183
185
|
|
|
184
|
-
if (!_this.props.disabled) {
|
|
186
|
+
if (!_this.props.disabled && !_this.props.isLoading) {
|
|
185
187
|
_this.setState({
|
|
186
188
|
showTypeahead: true
|
|
187
189
|
});
|
|
@@ -270,7 +272,11 @@ var ItemSelector = /*#__PURE__*/function (_Component) {
|
|
|
270
272
|
light: this.props.inputTheme === 'light'
|
|
271
273
|
}) : /*#__PURE__*/_react["default"].createElement(_localization.FormattedMessage, {
|
|
272
274
|
id: this.props.placeholder || 'placeholder.selectValue'
|
|
273
|
-
})), this.props.erasable && hasValue ? /*#__PURE__*/_react["default"].createElement(DropdownSelectActionRight, null, /*#__PURE__*/_react["default"].createElement(
|
|
275
|
+
})), this.props.erasable && hasValue ? /*#__PURE__*/_react["default"].createElement(DropdownSelectActionRight, null, this.props.isLoading ? /*#__PURE__*/_react["default"].createElement(_loadingSpinner["default"], {
|
|
276
|
+
size: 18,
|
|
277
|
+
strokeWidth: 2,
|
|
278
|
+
gap: 0
|
|
279
|
+
}) : /*#__PURE__*/_react["default"].createElement(_icons.Delete, {
|
|
274
280
|
height: "12px",
|
|
275
281
|
onClick: this._onErase
|
|
276
282
|
})) : this.props.showArrow ? /*#__PURE__*/_react["default"].createElement(DropdownSelectActionRight, null, /*#__PURE__*/_react["default"].createElement(_icons.ArrowDown, {
|
|
@@ -297,6 +303,7 @@ var ItemSelector = /*#__PURE__*/function (_Component) {
|
|
|
297
303
|
placement: _propTypes["default"].string,
|
|
298
304
|
disabled: _propTypes["default"].bool,
|
|
299
305
|
isError: _propTypes["default"].bool,
|
|
306
|
+
isLoading: _propTypes["default"].bool,
|
|
300
307
|
multiSelect: _propTypes["default"].bool,
|
|
301
308
|
inputTheme: _propTypes["default"].string,
|
|
302
309
|
onBlur: _propTypes["default"].func,
|
|
@@ -333,4 +340,4 @@ exports.ItemSelectorListen = ItemSelectorListen;
|
|
|
333
340
|
var _default = (0, _reactIntl.injectIntl)((0, _reactOnclickoutside["default"])(ItemSelector));
|
|
334
341
|
|
|
335
342
|
exports["default"] = _default;
|
|
336
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2NvbW1vbi9pdGVtLXNlbGVjdG9yL2l0ZW0tc2VsZWN0b3IuanMiXSwibmFtZXMiOlsiU3R5bGVkRHJvcGRvd25TZWxlY3QiLCJzdHlsZWQiLCJkaXYiLCJhdHRycyIsImNsYXNzTmFtZSIsInByb3BzIiwiaW5wdXRUaGVtZSIsInRoZW1lIiwic2Vjb25kYXJ5SW5wdXQiLCJpbnB1dExUIiwiaW5wdXQiLCJzaXplIiwiaW5wdXRCb3hIZWlnaHRTbWFsbCIsImlucHV0Qm94SGVpZ2h0IiwiZHJvcGRvd25MaXN0QW5jaG9yIiwiRHJvcGRvd25TZWxlY3RWYWx1ZSIsInNwYW4iLCJoYXNQbGFjZWhvbGRlciIsInNlbGVjdENvbG9yUGxhY2VIb2xkZXJMVCIsInNlbGVjdENvbG9yUGxhY2VIb2xkZXIiLCJzZWxlY3RDb2xvckxUIiwic2VsZWN0Q29sb3IiLCJkcm9wZG93bkxpc3RJdGVtTFQiLCJkcm9wZG93bkxpc3RJdGVtIiwiZHJvcGRvd25MaXN0QW5jaG9yTFQiLCJEcm9wZG93blNlbGVjdEFjdGlvblJpZ2h0Iiwic3VidGV4dENvbG9yIiwidGV4dENvbG9yIiwiRHJvcGRvd25XcmFwcGVyIiwiZHJvcGRvd25XcmFwcGVyWiIsInBsYWNlbWVudCIsImRyb3Bkb3duV2FwcGVyTWFyZ2luIiwiSXRlbVNlbGVjdG9yIiwic2hvd1R5cGVhaGVhZCIsIl9oaWRlVHlwZWFoZWFkIiwib25CbHVyIiwiaXRlbSIsImUiLCJwcmV2ZW50RGVmYXVsdCIsInN0b3BQcm9wYWdhdGlvbiIsInNlbGVjdGVkSXRlbXMiLCJpbmRleCIsImZpbmRJbmRleCIsInQiLCJpdGVtcyIsInNsaWNlIiwibGVuZ3RoIiwib25DaGFuZ2UiLCJjbG9zZU9uU2VsZWN0Iiwic2V0U3RhdGUiLCJfb25CbHVyIiwiZ2V0VmFsdWUiLCJBY2Nlc3NvciIsImdlbmVyYXRlT3B0aW9uVG9TdHJpbmdGb3IiLCJnZXRPcHRpb25WYWx1ZSIsImRpc3BsYXlPcHRpb24iLCJwcmV2aW91c1NlbGVjdGVkIiwibXVsdGlTZWxlY3QiLCJjb25jYXQiLCJkaXNhYmxlZCIsImludGwiLCJyZXN1bHRzIiwibGlzdEl0ZW0iLCJsaXN0QW5jaG9yIiwib3B0aW9ucyIsImZpbHRlck9wdGlvbiIsImZpeGVkT3B0aW9ucyIsInR5cGVhaGVhZFBsYWNlaG9sZGVyIiwiZm9ybWF0TWVzc2FnZSIsImlkIiwiX3NlbGVjdEl0ZW0iLCJEcm9wRG93blJlbmRlckNvbXBvbmVudCIsIkRyb3Bkb3duSGVhZGVyQ29tcG9uZW50IiwiRHJvcERvd25MaW5lSXRlbVJlbmRlckNvbXBvbmVudCIsInNlYXJjaGFibGUiLCJzZWxlY3RlZCIsImhhc1ZhbHVlIiwiZHJvcGRvd25TZWxlY3RQcm9wcyIsImFjdGl2ZSIsInN0YXRlIiwib25DbGljayIsIl9zaG93VHlwZWFoZWFkIiwiZXJyb3IiLCJpc0Vycm9yIiwicG9zaXRpb24iLCJwbGFjZWhvbGRlciIsIl9yZW1vdmVJdGVtIiwiQ3VzdG9tQ2hpY2tsZXRDb21wb25lbnQiLCJlcmFzYWJsZSIsIl9vbkVyYXNlIiwic2hvd0Fycm93IiwiX3JlbmRlckRyb3Bkb3duIiwiQ29tcG9uZW50IiwiUHJvcFR5cGVzIiwib25lT2ZUeXBlIiwiYXJyYXkiLCJzdHJpbmciLCJudW1iZXIiLCJib29sIiwib2JqZWN0IiwiZnVuYyIsImlzUmVxdWlyZWQiLCJhcnJheU9mIiwiYW55IiwiZHJvcGRvd25IZWFkZXIiLCJEcm9wZG93bkxpc3QiLCJMaXN0SXRlbSIsIkl0ZW1TZWxlY3Rvckxpc3RlbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQW9CQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFFQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFFQTs7QUFDQTs7QUFDQTs7Ozs7Ozs7QUFFTyxJQUFNQSxvQkFBb0IsR0FBR0MsNkJBQU9DLEdBQVAsQ0FBV0MsS0FBWCxDQUFpQjtBQUNuREMsRUFBQUEsU0FBUyxFQUFFO0FBRHdDLENBQWpCLENBQUgsZ0tBRzdCLFVBQUFDLEtBQUs7QUFBQSxTQUNMQSxLQUFLLENBQUNDLFVBQU4sS0FBcUIsV0FBckIsR0FDSUQsS0FBSyxDQUFDRSxLQUFOLENBQVlDLGNBRGhCLEdBRUlILEtBQUssQ0FBQ0MsVUFBTixLQUFxQixPQUFyQixHQUNBRCxLQUFLLENBQUNFLEtBQU4sQ0FBWUUsT0FEWixHQUVBSixLQUFLLENBQUNFLEtBQU4sQ0FBWUcsS0FMWDtBQUFBLENBSHdCLEVBVXJCLFVBQUFMLEtBQUs7QUFBQSxTQUNiQSxLQUFLLENBQUNNLElBQU4sS0FBZSxPQUFmLEdBQXlCTixLQUFLLENBQUNFLEtBQU4sQ0FBWUssbUJBQXJDLEdBQTJEUCxLQUFLLENBQUNFLEtBQU4sQ0FBWU0sY0FEMUQ7QUFBQSxDQVZnQixFQWMzQixVQUFBUixLQUFLO0FBQUEsU0FBSUEsS0FBSyxDQUFDRSxLQUFOLENBQVlPLGtCQUFoQjtBQUFBLENBZHNCLENBQTFCOzs7O0FBa0JQLElBQU1DLG1CQUFtQixHQUFHZCw2QkFBT2UsSUFBVixrUUFDZCxVQUFBWCxLQUFLO0FBQUEsU0FDWkEsS0FBSyxDQUFDWSxjQUFOLElBQXdCWixLQUFLLENBQUNDLFVBQU4sS0FBcUIsT0FBN0MsR0FDSUQsS0FBSyxDQUFDRSxLQUFOLENBQVlXLHdCQURoQixHQUVJYixLQUFLLENBQUNZLGNBQU4sR0FDQVosS0FBSyxDQUFDRSxLQUFOLENBQVlZLHNCQURaLEdBRUFkLEtBQUssQ0FBQ0MsVUFBTixLQUFxQixPQUFyQixHQUNBRCxLQUFLLENBQUNFLEtBQU4sQ0FBWWEsYUFEWixHQUVBZixLQUFLLENBQUNFLEtBQU4sQ0FBWWMsV0FQSjtBQUFBLENBRFMsRUFjbkIsVUFBQWhCLEtBQUs7QUFBQSxTQUNMQSxLQUFLLENBQUNDLFVBQU4sS0FBcUIsT0FBckIsR0FBK0JELEtBQUssQ0FBQ0UsS0FBTixDQUFZZSxrQkFBM0MsR0FBZ0VqQixLQUFLLENBQUNFLEtBQU4sQ0FBWWdCLGdCQUR2RTtBQUFBLENBZGMsRUFtQm5CLFVBQUFsQixLQUFLO0FBQUEsU0FDTEEsS0FBSyxDQUFDQyxVQUFOLEtBQXFCLE9BQXJCLEdBQ0lELEtBQUssQ0FBQ0UsS0FBTixDQUFZaUIsb0JBRGhCLEdBRUluQixLQUFLLENBQUNFLEtBQU4sQ0FBWU8sa0JBSFg7QUFBQSxDQW5CYyxDQUF6Qjs7QUEwQkEsSUFBTVcseUJBQXlCLEdBQUd4Qiw2QkFBT0MsR0FBVix3TEFHcEIsVUFBQUcsS0FBSztBQUFBLFNBQUlBLEtBQUssQ0FBQ0UsS0FBTixDQUFZbUIsWUFBaEI7QUFBQSxDQUhlLEVBTWxCLFVBQUFyQixLQUFLO0FBQUEsU0FBSUEsS0FBSyxDQUFDRSxLQUFOLENBQVlvQixTQUFoQjtBQUFBLENBTmEsQ0FBL0I7O0FBVUEsSUFBTUMsZUFBZSxHQUFHM0IsNkJBQU9DLEdBQVYsNE9BSVIsVUFBQUcsS0FBSztBQUFBLFNBQUlBLEtBQUssQ0FBQ0UsS0FBTixDQUFZc0IsZ0JBQWhCO0FBQUEsQ0FKRyxFQU1ULFVBQUF4QixLQUFLO0FBQUEsU0FBS0EsS0FBSyxDQUFDeUIsU0FBTixLQUFvQixLQUFwQixHQUE0QnpCLEtBQUssQ0FBQ0UsS0FBTixDQUFZTSxjQUF4QyxHQUF5RCxNQUE5RDtBQUFBLENBTkksRUFPTCxVQUFBUixLQUFLO0FBQUEsU0FDakJBLEtBQUssQ0FBQ3lCLFNBQU4sS0FBb0IsUUFBcEIsYUFBa0N6QixLQUFLLENBQUNFLEtBQU4sQ0FBWXdCLG9CQUE5QyxVQUF5RSxNQUR4RDtBQUFBLENBUEEsRUFTRixVQUFBMUIsS0FBSztBQUFBLFNBQ3BCQSxLQUFLLENBQUN5QixTQUFOLEtBQW9CLEtBQXBCLGFBQStCekIsS0FBSyxDQUFDRSxLQUFOLENBQVl3QixvQkFBM0MsVUFBc0UsTUFEbEQ7QUFBQSxDQVRILENBQXJCOztJQWFNQyxZOzs7Ozs7Ozs7Ozs7Ozs7OEZBdURJO0FBQ05DLE1BQUFBLGFBQWEsRUFBRTtBQURULEs7MkdBSWEsWUFBTTtBQUN6QixZQUFLQyxjQUFMO0FBQ0QsSztnR0FPUyxZQUFNO0FBQ2Q7QUFDQTtBQUNBLFVBQUksTUFBSzdCLEtBQUwsQ0FBVzhCLE1BQWYsRUFBdUI7QUFDckIsY0FBSzlCLEtBQUwsQ0FBVzhCLE1BQVg7QUFDRDtBQUNGLEs7b0dBRWEsVUFBQ0MsSUFBRCxFQUFPQyxDQUFQLEVBQWE7QUFDekI7QUFDQUEsTUFBQUEsQ0FBQyxDQUFDQyxjQUFGO0FBQ0FELE1BQUFBLENBQUMsQ0FBQ0UsZUFBRjtBQUh5QixVQUlsQkMsYUFKa0IsR0FJRCxNQUFLbkMsS0FKSixDQUlsQm1DLGFBSmtCO0FBS3pCLFVBQU1DLEtBQUssR0FBR0QsYUFBYSxDQUFDRSxTQUFkLENBQXdCLFVBQUFDLENBQUM7QUFBQSxlQUFJQSxDQUFDLEtBQUtQLElBQVY7QUFBQSxPQUF6QixDQUFkOztBQUVBLFVBQUlLLEtBQUssR0FBRyxDQUFaLEVBQWU7QUFDYjtBQUNEOztBQUVELFVBQU1HLEtBQUssaURBQ05KLGFBQWEsQ0FBQ0ssS0FBZCxDQUFvQixDQUFwQixFQUF1QkosS0FBdkIsQ0FETSx1Q0FFTkQsYUFBYSxDQUFDSyxLQUFkLENBQW9CSixLQUFLLEdBQUcsQ0FBNUIsRUFBK0JELGFBQWEsQ0FBQ00sTUFBN0MsQ0FGTSxFQUFYOztBQUtBLFlBQUt6QyxLQUFMLENBQVcwQyxRQUFYLENBQW9CSCxLQUFwQjs7QUFFQSxVQUFJLE1BQUt2QyxLQUFMLENBQVcyQyxhQUFmLEVBQThCO0FBQzVCLGNBQUtDLFFBQUwsQ0FBYztBQUFDaEIsVUFBQUEsYUFBYSxFQUFFO0FBQWhCLFNBQWQ7O0FBQ0EsY0FBS2lCLE9BQUw7QUFDRDtBQUNGLEs7b0dBRWEsVUFBQWQsSUFBSSxFQUFJO0FBQ3BCLFVBQU1lLFFBQVEsR0FBR0MscUJBQVNDLHlCQUFULENBQ2YsTUFBS2hELEtBQUwsQ0FBV2lELGNBQVgsSUFBNkIsTUFBS2pELEtBQUwsQ0FBV2tELGFBRHpCLENBQWpCOztBQUlBLFVBQU1DLGdCQUFnQixHQUFHLG9CQUFRLE1BQUtuRCxLQUFMLENBQVdtQyxhQUFuQixDQUF6Qjs7QUFFQSxVQUFJLE1BQUtuQyxLQUFMLENBQVdvRCxXQUFmLEVBQTRCO0FBQzFCLFlBQU1iLEtBQUssR0FBRyx3QkFBT1ksZ0JBQWdCLENBQUNFLE1BQWpCLENBQXdCLG9CQUFRdEIsSUFBUixDQUF4QixDQUFQLEVBQStDZSxRQUEvQyxDQUFkOztBQUNBLGNBQUs5QyxLQUFMLENBQVcwQyxRQUFYLENBQW9CSCxLQUFwQjtBQUNELE9BSEQsTUFHTztBQUNMLGNBQUt2QyxLQUFMLENBQVcwQyxRQUFYLENBQW9CSSxRQUFRLENBQUNmLElBQUQsQ0FBNUI7QUFDRDs7QUFFRCxVQUFJLE1BQUsvQixLQUFMLENBQVcyQyxhQUFmLEVBQThCO0FBQzVCLGNBQUtDLFFBQUwsQ0FBYztBQUFDaEIsVUFBQUEsYUFBYSxFQUFFO0FBQWhCLFNBQWQ7O0FBQ0EsY0FBS2lCLE9BQUw7QUFDRDtBQUNGLEs7aUdBRVUsVUFBQWIsQ0FBQyxFQUFJO0FBQ2RBLE1BQUFBLENBQUMsQ0FBQ0UsZUFBRjs7QUFDQSxZQUFLbEMsS0FBTCxDQUFXMEMsUUFBWCxDQUFvQixJQUFwQjtBQUNELEs7dUdBRWdCLFVBQUFWLENBQUMsRUFBSTtBQUNwQkEsTUFBQUEsQ0FBQyxDQUFDRSxlQUFGOztBQUNBLFVBQUksQ0FBQyxNQUFLbEMsS0FBTCxDQUFXc0QsUUFBaEIsRUFBMEI7QUFDeEIsY0FBS1YsUUFBTCxDQUFjO0FBQ1poQixVQUFBQSxhQUFhLEVBQUU7QUFESCxTQUFkO0FBR0Q7QUFDRixLOzs7Ozs7V0FyRUQsMEJBQWlCO0FBQ2YsV0FBS2dCLFFBQUwsQ0FBYztBQUFDaEIsUUFBQUEsYUFBYSxFQUFFO0FBQWhCLE9BQWQ7O0FBQ0EsV0FBS2lCLE9BQUw7QUFDRDs7O1dBb0VELHlCQUFnQlUsSUFBaEIsRUFBc0I7QUFDcEIsMEJBQ0UsZ0NBQUMsZUFBRDtBQUFpQixRQUFBLFNBQVMsRUFBRSxLQUFLdkQsS0FBTCxDQUFXeUI7QUFBdkMsc0JBQ0UsZ0NBQUMscUJBQUQ7QUFDRSxRQUFBLGFBQWEsRUFBRTtBQUNiK0IsVUFBQUEsT0FBTyxFQUFFLGVBREk7QUFFYm5ELFVBQUFBLEtBQUssRUFBRSxrQkFGTTtBQUdib0QsVUFBQUEsUUFBUSxFQUFFLFlBSEc7QUFJYkMsVUFBQUEsVUFBVSxFQUFFO0FBSkMsU0FEakI7QUFPRSxRQUFBLE9BQU8sRUFBRSxLQUFLMUQsS0FBTCxDQUFXMkQsT0FQdEI7QUFRRSxRQUFBLFlBQVksRUFBRSxLQUFLM0QsS0FBTCxDQUFXNEQsWUFSM0I7QUFTRSxRQUFBLFlBQVksRUFBRSxLQUFLNUQsS0FBTCxDQUFXNkQsWUFUM0I7QUFVRSxRQUFBLFdBQVcsRUFDVCxLQUFLN0QsS0FBTCxDQUFXOEQsb0JBQVgsSUFBbUNQLElBQW5DLEdBQ0lBLElBQUksQ0FBQ1EsYUFBTCxDQUFtQjtBQUFDQyxVQUFBQSxFQUFFLEVBQUU7QUFBTCxTQUFuQixDQURKLEdBRUksUUFiUjtBQWVFLFFBQUEsZ0JBQWdCLEVBQUUsS0FBS0MsV0FmekI7QUFnQkUsUUFBQSxtQkFBbUIsRUFBRSxLQUFLakUsS0FBTCxDQUFXa0UsdUJBaEJsQztBQWlCRSxRQUFBLHlCQUF5QixFQUFFLEtBQUtsRSxLQUFMLENBQVdtRSx1QkFqQnhDO0FBa0JFLFFBQUEsdUJBQXVCLEVBQUUsS0FBS25FLEtBQUwsQ0FBV29FLCtCQWxCdEM7QUFtQkUsUUFBQSxhQUFhLEVBQUVyQixxQkFBU0MseUJBQVQsQ0FBbUMsS0FBS2hELEtBQUwsQ0FBV2tELGFBQTlDLENBbkJqQjtBQW9CRSxRQUFBLFVBQVUsRUFBRSxLQUFLbEQsS0FBTCxDQUFXcUUsVUFwQnpCO0FBcUJFLFFBQUEsb0JBQW9CLE1BckJ0QjtBQXNCRSxRQUFBLGFBQWEsRUFBRSxvQkFBUSxLQUFLckUsS0FBTCxDQUFXbUMsYUFBbkIsQ0F0QmpCO0FBdUJFLFFBQUEsS0FBSyxFQUFFLEtBQUtuQyxLQUFMLENBQVdDLFVBQVgsS0FBMEI7QUF2Qm5DLFFBREYsQ0FERjtBQTZCRDs7O1dBRUQsa0JBQVM7QUFDUCxVQUFNcUUsUUFBUSxHQUFHLG9CQUFRLEtBQUt0RSxLQUFMLENBQVdtQyxhQUFuQixDQUFqQjtBQUNBLFVBQU1vQyxRQUFRLEdBQUdELFFBQVEsQ0FBQzdCLE1BQTFCOztBQUNBLFVBQU1TLGFBQWEsR0FBR0gscUJBQVNDLHlCQUFULENBQW1DLEtBQUtoRCxLQUFMLENBQVdrRCxhQUE5QyxDQUF0Qjs7QUFFQSxVQUFNc0IsbUJBQW1CLEdBQUc7QUFDMUJ6RSxRQUFBQSxTQUFTLEVBQUUsNEJBQVc7QUFDcEIwRSxVQUFBQSxNQUFNLEVBQUUsS0FBS0MsS0FBTCxDQUFXOUM7QUFEQyxTQUFYLENBRGU7QUFJMUJzQixRQUFBQSxhQUFhLEVBQWJBLGFBSjBCO0FBSzFCSSxRQUFBQSxRQUFRLEVBQUUsS0FBS3RELEtBQUwsQ0FBV3NELFFBTEs7QUFNMUJxQixRQUFBQSxPQUFPLEVBQUUsS0FBS0MsY0FOWTtBQU8xQkMsUUFBQUEsS0FBSyxFQUFFLEtBQUs3RSxLQUFMLENBQVc4RSxPQVBRO0FBUTFCN0UsUUFBQUEsVUFBVSxFQUFFLEtBQUtELEtBQUwsQ0FBV0MsVUFSRztBQVMxQkssUUFBQUEsSUFBSSxFQUFFLEtBQUtOLEtBQUwsQ0FBV007QUFUUyxPQUE1QjtBQVdBLFVBQU1pRCxJQUFJLEdBQUcsS0FBS3ZELEtBQUwsQ0FBV3VELElBQXhCO0FBRUEsMEJBQ0U7QUFBSyxRQUFBLFNBQVMsRUFBQztBQUFmLHNCQUNFO0FBQUssUUFBQSxLQUFLLEVBQUU7QUFBQ3dCLFVBQUFBLFFBQVEsRUFBRTtBQUFYO0FBQVosU0FFRyxLQUFLL0UsS0FBTCxDQUFXb0QsV0FBWCxnQkFDQyxnQ0FBQywyQkFBRCxnQ0FDTW9CLG1CQUROO0FBRUUsUUFBQSxhQUFhLEVBQUUsb0JBQVEsS0FBS3hFLEtBQUwsQ0FBV21DLGFBQW5CLENBRmpCO0FBR0UsUUFBQSxXQUFXLEVBQUUsS0FBS25DLEtBQUwsQ0FBV2dGLFdBSDFCO0FBSUUsUUFBQSxVQUFVLEVBQUUsS0FBS0MsV0FKbkI7QUFLRSxRQUFBLHVCQUF1QixFQUFFLEtBQUtqRixLQUFMLENBQVdrRix1QkFMdEM7QUFNRSxRQUFBLFVBQVUsRUFBRSxLQUFLbEYsS0FBTCxDQUFXQztBQU56QixTQURELGdCQVVDLGdDQUFDLG9CQUFELEVBQTBCdUUsbUJBQTFCLGVBQ0UsZ0NBQUMsbUJBQUQ7QUFDRSxRQUFBLGNBQWMsRUFBRSxDQUFDRCxRQURuQjtBQUVFLFFBQUEsVUFBVSxFQUFFLEtBQUt2RSxLQUFMLENBQVdDLFVBRnpCO0FBR0UsUUFBQSxTQUFTLEVBQUM7QUFIWixTQUtHc0UsUUFBUSxnQkFDUCxxQ0FBTSxLQUFOLENBQVksK0JBQVo7QUFDRSxRQUFBLGFBQWEsRUFBRXJCLGFBRGpCO0FBRUUsUUFBQSxLQUFLLEVBQUVvQixRQUFRLENBQUMsQ0FBRCxDQUZqQjtBQUdFLFFBQUEsS0FBSyxFQUFFLEtBQUt0RSxLQUFMLENBQVdDLFVBQVgsS0FBMEI7QUFIbkMsUUFETyxnQkFPUCxnQ0FBQyw4QkFBRDtBQUFrQixRQUFBLEVBQUUsRUFBRSxLQUFLRCxLQUFMLENBQVdnRixXQUFYLElBQTBCO0FBQWhELFFBWkosQ0FERixFQWdCRyxLQUFLaEYsS0FBTCxDQUFXbUYsUUFBWCxJQUF1QlosUUFBdkIsZ0JBQ0MsZ0NBQUMseUJBQUQscUJBQ0UsZ0NBQUMsYUFBRDtBQUFRLFFBQUEsTUFBTSxFQUFDLE1BQWY7QUFBc0IsUUFBQSxPQUFPLEVBQUUsS0FBS2E7QUFBcEMsUUFERixDQURELEdBSUcsS0FBS3BGLEtBQUwsQ0FBV3FGLFNBQVgsZ0JBQ0YsZ0NBQUMseUJBQUQscUJBQ0UsZ0NBQUMsZ0JBQUQ7QUFBVyxRQUFBLE1BQU0sRUFBQyxNQUFsQjtBQUF5QixRQUFBLE9BQU8sRUFBRSxLQUFLVDtBQUF2QyxRQURGLENBREUsR0FJQSxJQXhCTixDQVpKLEVBd0NHLEtBQUtGLEtBQUwsQ0FBVzlDLGFBQVgsSUFBNEIsS0FBSzBELGVBQUwsQ0FBcUIvQixJQUFyQixDQXhDL0IsQ0FERixDQURGO0FBOENEOzs7RUF0T3dCZ0MsZ0I7O2lDQUFyQjVELFksZUFDZTtBQUNqQjtBQUNBUSxFQUFBQSxhQUFhLEVBQUVxRCxzQkFBVUMsU0FBVixDQUFvQixDQUNqQ0Qsc0JBQVVFLEtBRHVCLEVBRWpDRixzQkFBVUcsTUFGdUIsRUFHakNILHNCQUFVSSxNQUh1QixFQUlqQ0osc0JBQVVLLElBSnVCLEVBS2pDTCxzQkFBVU0sTUFMdUIsQ0FBcEIsQ0FGRTtBQVNqQnBELEVBQUFBLFFBQVEsRUFBRThDLHNCQUFVTyxJQUFWLENBQWVDLFVBVFI7QUFVakJyQyxFQUFBQSxPQUFPLEVBQUU2QixzQkFBVVMsT0FBVixDQUFrQlQsc0JBQVVVLEdBQTVCLEVBQWlDRixVQVZ6QjtBQVlqQjtBQUNBbkMsRUFBQUEsWUFBWSxFQUFFMkIsc0JBQVVTLE9BQVYsQ0FBa0JULHNCQUFVVSxHQUE1QixDQWJHO0FBY2pCZixFQUFBQSxRQUFRLEVBQUVLLHNCQUFVSyxJQWRIO0FBZWpCUixFQUFBQSxTQUFTLEVBQUVHLHNCQUFVSyxJQWZKO0FBZ0JqQjNDLEVBQUFBLGFBQWEsRUFBRXNDLHNCQUFVQyxTQUFWLENBQW9CLENBQUNELHNCQUFVRyxNQUFYLEVBQW1CSCxzQkFBVU8sSUFBN0IsQ0FBcEIsQ0FoQkU7QUFpQmpCOUMsRUFBQUEsY0FBYyxFQUFFdUMsc0JBQVVDLFNBQVYsQ0FBb0IsQ0FBQ0Qsc0JBQVVHLE1BQVgsRUFBbUJILHNCQUFVTyxJQUE3QixDQUFwQixDQWpCQztBQWtCakJuQyxFQUFBQSxZQUFZLEVBQUU0QixzQkFBVUMsU0FBVixDQUFvQixDQUFDRCxzQkFBVUcsTUFBWCxFQUFtQkgsc0JBQVVPLElBQTdCLENBQXBCLENBbEJHO0FBbUJqQnRFLEVBQUFBLFNBQVMsRUFBRStELHNCQUFVRyxNQW5CSjtBQW9CakJyQyxFQUFBQSxRQUFRLEVBQUVrQyxzQkFBVUssSUFwQkg7QUFxQmpCZixFQUFBQSxPQUFPLEVBQUVVLHNCQUFVSyxJQXJCRjtBQXNCakJ6QyxFQUFBQSxXQUFXLEVBQUVvQyxzQkFBVUssSUF0Qk47QUF1QmpCNUYsRUFBQUEsVUFBVSxFQUFFdUYsc0JBQVVHLE1BdkJMO0FBd0JqQjdELEVBQUFBLE1BQU0sRUFBRTBELHNCQUFVTyxJQXhCRDtBQXlCakJmLEVBQUFBLFdBQVcsRUFBRVEsc0JBQVVHLE1BekJOO0FBMEJqQmhELEVBQUFBLGFBQWEsRUFBRTZDLHNCQUFVSyxJQTFCUjtBQTJCakIvQixFQUFBQSxvQkFBb0IsRUFBRTBCLHNCQUFVRyxNQTNCZjtBQTRCakJ4QixFQUFBQSx1QkFBdUIsRUFBRXFCLHNCQUFVTyxJQTVCbEI7QUE2QmpCN0IsRUFBQUEsdUJBQXVCLEVBQUVzQixzQkFBVU8sSUE3QmxCO0FBOEJqQjNCLEVBQUFBLCtCQUErQixFQUFFb0Isc0JBQVVPLElBOUIxQjtBQStCakJiLEVBQUFBLHVCQUF1QixFQUFFTSxzQkFBVU87QUEvQmxCLEM7aUNBRGZwRSxZLGtCQW1Da0I7QUFDcEJ3RCxFQUFBQSxRQUFRLEVBQUUsS0FEVTtBQUVwQkUsRUFBQUEsU0FBUyxFQUFFLEtBRlM7QUFHcEI1RCxFQUFBQSxTQUFTLEVBQUUsUUFIUztBQUlwQlUsRUFBQUEsYUFBYSxFQUFFLEVBSks7QUFLcEJlLEVBQUFBLGFBQWEsRUFBRSxJQUxLO0FBTXBCRCxFQUFBQSxjQUFjLEVBQUUsSUFOSTtBQU9wQlcsRUFBQUEsWUFBWSxFQUFFLElBUE07QUFRcEJDLEVBQUFBLFlBQVksRUFBRSxJQVJNO0FBU3BCNUQsRUFBQUEsVUFBVSxFQUFFLFNBVFE7QUFVcEJtRCxFQUFBQSxXQUFXLEVBQUUsSUFWTztBQVdwQjRCLEVBQUFBLFdBQVcsRUFBRSx3QkFYTztBQVlwQnJDLEVBQUFBLGFBQWEsRUFBRSxJQVpLO0FBYXBCMEIsRUFBQUEsVUFBVSxFQUFFLElBYlE7QUFjcEI4QixFQUFBQSxjQUFjLEVBQUUsSUFkSTtBQWVwQmhDLEVBQUFBLHVCQUF1QixFQUFFLElBZkw7QUFnQnBCRCxFQUFBQSx1QkFBdUIsRUFBRWtDLHdCQWhCTDtBQWlCcEJoQyxFQUFBQSwrQkFBK0IsRUFBRWlDO0FBakJiLEM7QUFzTWpCLElBQU1DLGtCQUFrQixHQUFHLHFDQUFzQjNFLFlBQXRCLENBQTNCOzs7ZUFDUSwyQkFBVyxxQ0FBc0JBLFlBQXRCLENBQVgsQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAoYykgMjAyMiBVYmVyIFRlY2hub2xvZ2llcywgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG5cbmltcG9ydCBSZWFjdCwge0NvbXBvbmVudH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBjbGFzc25hbWVzIGZyb20gJ2NsYXNzbmFtZXMnO1xuaW1wb3J0IHVuaXFCeSBmcm9tICdsb2Rhc2gudW5pcWJ5JztcbmltcG9ydCBsaXN0ZW5zVG9DbGlja091dHNpZGUgZnJvbSAncmVhY3Qtb25jbGlja291dHNpZGUnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdzdHlsZWQtY29tcG9uZW50cyc7XG5cbmltcG9ydCBBY2Nlc3NvciBmcm9tICcuL2FjY2Vzc29yJztcbmltcG9ydCBDaGlja2xldGVkSW5wdXQgZnJvbSAnLi9jaGlja2xldGVkLWlucHV0JztcbmltcG9ydCBUeXBlYWhlYWQgZnJvbSAnLi90eXBlYWhlYWQnO1xuaW1wb3J0IHtEZWxldGUsIEFycm93RG93bn0gZnJvbSAnY29tcG9uZW50cy9jb21tb24vaWNvbnMnO1xuaW1wb3J0IERyb3Bkb3duTGlzdCwge0xpc3RJdGVtfSBmcm9tICcuL2Ryb3Bkb3duLWxpc3QnO1xuXG5pbXBvcnQge3RvQXJyYXl9IGZyb20gJ3V0aWxzL3V0aWxzJztcbmltcG9ydCB7aW5qZWN0SW50bH0gZnJvbSAncmVhY3QtaW50bCc7XG5pbXBvcnQge0Zvcm1hdHRlZE1lc3NhZ2V9IGZyb20gJ2xvY2FsaXphdGlvbic7XG5cbmV4cG9ydCBjb25zdCBTdHlsZWREcm9wZG93blNlbGVjdCA9IHN0eWxlZC5kaXYuYXR0cnMoe1xuICBjbGFzc05hbWU6ICdpdGVtLXNlbGVjdG9yX19kcm9wZG93bidcbn0pYFxuICAke3Byb3BzID0+XG4gICAgcHJvcHMuaW5wdXRUaGVtZSA9PT0gJ3NlY29uZGFyeSdcbiAgICAgID8gcHJvcHMudGhlbWUuc2Vjb25kYXJ5SW5wdXRcbiAgICAgIDogcHJvcHMuaW5wdXRUaGVtZSA9PT0gJ2xpZ2h0J1xuICAgICAgPyBwcm9wcy50aGVtZS5pbnB1dExUXG4gICAgICA6IHByb3BzLnRoZW1lLmlucHV0fTtcblxuICBoZWlnaHQ6ICR7cHJvcHMgPT5cbiAgICBwcm9wcy5zaXplID09PSAnc21hbGwnID8gcHJvcHMudGhlbWUuaW5wdXRCb3hIZWlnaHRTbWFsbCA6IHByb3BzLnRoZW1lLmlucHV0Qm94SGVpZ2h0fTtcblxuICAubGlzdF9faXRlbV9fYW5jaG9yIHtcbiAgICAke3Byb3BzID0+IHByb3BzLnRoZW1lLmRyb3Bkb3duTGlzdEFuY2hvcn07XG4gIH1cbmA7XG5cbmNvbnN0IERyb3Bkb3duU2VsZWN0VmFsdWUgPSBzdHlsZWQuc3BhbmBcbiAgY29sb3I6ICR7cHJvcHMgPT5cbiAgICBwcm9wcy5oYXNQbGFjZWhvbGRlciAmJiBwcm9wcy5pbnB1dFRoZW1lID09PSAnbGlnaHQnXG4gICAgICA/IHByb3BzLnRoZW1lLnNlbGVjdENvbG9yUGxhY2VIb2xkZXJMVFxuICAgICAgOiBwcm9wcy5oYXNQbGFjZWhvbGRlclxuICAgICAgPyBwcm9wcy50aGVtZS5zZWxlY3RDb2xvclBsYWNlSG9sZGVyXG4gICAgICA6IHByb3BzLmlucHV0VGhlbWUgPT09ICdsaWdodCdcbiAgICAgID8gcHJvcHMudGhlbWUuc2VsZWN0Q29sb3JMVFxuICAgICAgOiBwcm9wcy50aGVtZS5zZWxlY3RDb2xvcn07XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIC5saXN0X19pdGVtIHtcbiAgICAke3Byb3BzID0+XG4gICAgICBwcm9wcy5pbnB1dFRoZW1lID09PSAnbGlnaHQnID8gcHJvcHMudGhlbWUuZHJvcGRvd25MaXN0SXRlbUxUIDogcHJvcHMudGhlbWUuZHJvcGRvd25MaXN0SXRlbX07XG4gIH1cblxuICAubGlzdF9faXRlbV9fYW5jaG9yIHtcbiAgICAke3Byb3BzID0+XG4gICAgICBwcm9wcy5pbnB1dFRoZW1lID09PSAnbGlnaHQnXG4gICAgICAgID8gcHJvcHMudGhlbWUuZHJvcGRvd25MaXN0QW5jaG9yTFRcbiAgICAgICAgOiBwcm9wcy50aGVtZS5kcm9wZG93bkxpc3RBbmNob3J9O1xuICB9XG5gO1xuXG5jb25zdCBEcm9wZG93blNlbGVjdEFjdGlvblJpZ2h0ID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnN1YnRleHRDb2xvcn07XG5cbiAgOmhvdmVyIHtcbiAgICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS50ZXh0Q29sb3J9O1xuICB9XG5gO1xuXG5jb25zdCBEcm9wZG93bldyYXBwZXIgPSBzdHlsZWQuZGl2YFxuICBib3JkZXI6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmRyb3Bkb3duV3JhcHBlclp9O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogJHtwcm9wcyA9PiAocHJvcHMucGxhY2VtZW50ID09PSAndG9wJyA/IHByb3BzLnRoZW1lLmlucHV0Qm94SGVpZ2h0IDogJ2F1dG8nKX07XG4gIG1hcmdpbi10b3A6ICR7cHJvcHMgPT5cbiAgICBwcm9wcy5wbGFjZW1lbnQgPT09ICdib3R0b20nID8gYCR7cHJvcHMudGhlbWUuZHJvcGRvd25XYXBwZXJNYXJnaW59cHhgIDogJ2F1dG8nfTtcbiAgbWFyZ2luLWJvdHRvbTogJHtwcm9wcyA9PlxuICAgIHByb3BzLnBsYWNlbWVudCA9PT0gJ3RvcCcgPyBgJHtwcm9wcy50aGVtZS5kcm9wZG93bldhcHBlck1hcmdpbn1weGAgOiAnYXV0byd9O1xuYDtcblxuY2xhc3MgSXRlbVNlbGVjdG9yIGV4dGVuZHMgQ29tcG9uZW50IHtcbiAgc3RhdGljIHByb3BUeXBlcyA9IHtcbiAgICAvLyByZXF1aXJlZCBwcm9wZXJ0aWVzXG4gICAgc2VsZWN0ZWRJdGVtczogUHJvcFR5cGVzLm9uZU9mVHlwZShbXG4gICAgICBQcm9wVHlwZXMuYXJyYXksXG4gICAgICBQcm9wVHlwZXMuc3RyaW5nLFxuICAgICAgUHJvcFR5cGVzLm51bWJlcixcbiAgICAgIFByb3BUeXBlcy5ib29sLFxuICAgICAgUHJvcFR5cGVzLm9iamVjdFxuICAgIF0pLFxuICAgIG9uQ2hhbmdlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIG9wdGlvbnM6IFByb3BUeXBlcy5hcnJheU9mKFByb3BUeXBlcy5hbnkpLmlzUmVxdWlyZWQsXG5cbiAgICAvLyBvcHRpb25hbCBwcm9wZXJ0aWVzXG4gICAgZml4ZWRPcHRpb25zOiBQcm9wVHlwZXMuYXJyYXlPZihQcm9wVHlwZXMuYW55KSxcbiAgICBlcmFzYWJsZTogUHJvcFR5cGVzLmJvb2wsXG4gICAgc2hvd0Fycm93OiBQcm9wVHlwZXMuYm9vbCxcbiAgICBkaXNwbGF5T3B0aW9uOiBQcm9wVHlwZXMub25lT2ZUeXBlKFtQcm9wVHlwZXMuc3RyaW5nLCBQcm9wVHlwZXMuZnVuY10pLFxuICAgIGdldE9wdGlvblZhbHVlOiBQcm9wVHlwZXMub25lT2ZUeXBlKFtQcm9wVHlwZXMuc3RyaW5nLCBQcm9wVHlwZXMuZnVuY10pLFxuICAgIGZpbHRlck9wdGlvbjogUHJvcFR5cGVzLm9uZU9mVHlwZShbUHJvcFR5cGVzLnN0cmluZywgUHJvcFR5cGVzLmZ1bmNdKSxcbiAgICBwbGFjZW1lbnQ6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgZGlzYWJsZWQ6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzRXJyb3I6IFByb3BUeXBlcy5ib29sLFxuICAgIG11bHRpU2VsZWN0OiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpbnB1dFRoZW1lOiBQcm9wVHlwZXMuc3RyaW5nLFxuICAgIG9uQmx1cjogUHJvcFR5cGVzLmZ1bmMsXG4gICAgcGxhY2Vob2xkZXI6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgY2xvc2VPblNlbGVjdDogUHJvcFR5cGVzLmJvb2wsXG4gICAgdHlwZWFoZWFkUGxhY2Vob2xkZXI6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgRHJvcGRvd25IZWFkZXJDb21wb25lbnQ6IFByb3BUeXBlcy5mdW5jLFxuICAgIERyb3BEb3duUmVuZGVyQ29tcG9uZW50OiBQcm9wVHlwZXMuZnVuYyxcbiAgICBEcm9wRG93bkxpbmVJdGVtUmVuZGVyQ29tcG9uZW50OiBQcm9wVHlwZXMuZnVuYyxcbiAgICBDdXN0b21DaGlja2xldENvbXBvbmVudDogUHJvcFR5cGVzLmZ1bmNcbiAgfTtcblxuICBzdGF0aWMgZGVmYXVsdFByb3BzID0ge1xuICAgIGVyYXNhYmxlOiBmYWxzZSxcbiAgICBzaG93QXJyb3c6IGZhbHNlLFxuICAgIHBsYWNlbWVudDogJ2JvdHRvbScsXG4gICAgc2VsZWN0ZWRJdGVtczogW10sXG4gICAgZGlzcGxheU9wdGlvbjogbnVsbCxcbiAgICBnZXRPcHRpb25WYWx1ZTogbnVsbCxcbiAgICBmaWx0ZXJPcHRpb246IG51bGwsXG4gICAgZml4ZWRPcHRpb25zOiBudWxsLFxuICAgIGlucHV0VGhlbWU6ICdwcmltYXJ5JyxcbiAgICBtdWx0aVNlbGVjdDogdHJ1ZSxcbiAgICBwbGFjZWhvbGRlcjogJ3BsYWNlaG9sZGVyLmVudGVyVmFsdWUnLFxuICAgIGNsb3NlT25TZWxlY3Q6IHRydWUsXG4gICAgc2VhcmNoYWJsZTogdHJ1ZSxcbiAgICBkcm9wZG93bkhlYWRlcjogbnVsbCxcbiAgICBEcm9wZG93bkhlYWRlckNvbXBvbmVudDogbnVsbCxcbiAgICBEcm9wRG93blJlbmRlckNvbXBvbmVudDogRHJvcGRvd25MaXN0LFxuICAgIERyb3BEb3duTGluZUl0ZW1SZW5kZXJDb21wb25lbnQ6IExpc3RJdGVtXG4gIH07XG5cbiAgc3RhdGUgPSB7XG4gICAgc2hvd1R5cGVhaGVhZDogZmFsc2VcbiAgfTtcblxuICBoYW5kbGVDbGlja091dHNpZGUgPSAoKSA9PiB7XG4gICAgdGhpcy5faGlkZVR5cGVhaGVhZCgpO1xuICB9O1xuXG4gIF9oaWRlVHlwZWFoZWFkKCkge1xuICAgIHRoaXMuc2V0U3RhdGUoe3Nob3dUeXBlYWhlYWQ6IGZhbHNlfSk7XG4gICAgdGhpcy5fb25CbHVyKCk7XG4gIH1cblxuICBfb25CbHVyID0gKCkgPT4ge1xuICAgIC8vIG5vdGU6IGNoaWNrbGV0ZWQgaW5wdXQgaXMgbm90IGEgcmVhbCBmb3JtIGVsZW1lbnQgc28gd2UgY2FsbCBvbkJsdXIoKVxuICAgIC8vIHdoZW4gd2UgZmVlbCB0aGUgZXZlbnRzIGFyZSBhcHByb3ByaWF0ZVxuICAgIGlmICh0aGlzLnByb3BzLm9uQmx1cikge1xuICAgICAgdGhpcy5wcm9wcy5vbkJsdXIoKTtcbiAgICB9XG4gIH07XG5cbiAgX3JlbW92ZUl0ZW0gPSAoaXRlbSwgZSkgPT4ge1xuICAgIC8vIG9ubHkgdXNlZCB3aGVuIG11bHRpU2VsZWN0ID0gdHJ1ZVxuICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIGNvbnN0IHtzZWxlY3RlZEl0ZW1zfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgaW5kZXggPSBzZWxlY3RlZEl0ZW1zLmZpbmRJbmRleCh0ID0+IHQgPT09IGl0ZW0pO1xuXG4gICAgaWYgKGluZGV4IDwgMCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGl0ZW1zID0gW1xuICAgICAgLi4uc2VsZWN0ZWRJdGVtcy5zbGljZSgwLCBpbmRleCksXG4gICAgICAuLi5zZWxlY3RlZEl0ZW1zLnNsaWNlKGluZGV4ICsgMSwgc2VsZWN0ZWRJdGVtcy5sZW5ndGgpXG4gICAgXTtcblxuICAgIHRoaXMucHJvcHMub25DaGFuZ2UoaXRlbXMpO1xuXG4gICAgaWYgKHRoaXMucHJvcHMuY2xvc2VPblNlbGVjdCkge1xuICAgICAgdGhpcy5zZXRTdGF0ZSh7c2hvd1R5cGVhaGVhZDogZmFsc2V9KTtcbiAgICAgIHRoaXMuX29uQmx1cigpO1xuICAgIH1cbiAgfTtcblxuICBfc2VsZWN0SXRlbSA9IGl0ZW0gPT4ge1xuICAgIGNvbnN0IGdldFZhbHVlID0gQWNjZXNzb3IuZ2VuZXJhdGVPcHRpb25Ub1N0cmluZ0ZvcihcbiAgICAgIHRoaXMucHJvcHMuZ2V0T3B0aW9uVmFsdWUgfHwgdGhpcy5wcm9wcy5kaXNwbGF5T3B0aW9uXG4gICAgKTtcblxuICAgIGNvbnN0IHByZXZpb3VzU2VsZWN0ZWQgPSB0b0FycmF5KHRoaXMucHJvcHMuc2VsZWN0ZWRJdGVtcyk7XG5cbiAgICBpZiAodGhpcy5wcm9wcy5tdWx0aVNlbGVjdCkge1xuICAgICAgY29uc3QgaXRlbXMgPSB1bmlxQnkocHJldmlvdXNTZWxlY3RlZC5jb25jYXQodG9BcnJheShpdGVtKSksIGdldFZhbHVlKTtcbiAgICAgIHRoaXMucHJvcHMub25DaGFuZ2UoaXRlbXMpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnByb3BzLm9uQ2hhbmdlKGdldFZhbHVlKGl0ZW0pKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5wcm9wcy5jbG9zZU9uU2VsZWN0KSB7XG4gICAgICB0aGlzLnNldFN0YXRlKHtzaG93VHlwZWFoZWFkOiBmYWxzZX0pO1xuICAgICAgdGhpcy5fb25CbHVyKCk7XG4gICAgfVxuICB9O1xuXG4gIF9vbkVyYXNlID0gZSA9PiB7XG4gICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB0aGlzLnByb3BzLm9uQ2hhbmdlKG51bGwpO1xuICB9O1xuXG4gIF9zaG93VHlwZWFoZWFkID0gZSA9PiB7XG4gICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICBpZiAoIXRoaXMucHJvcHMuZGlzYWJsZWQpIHtcbiAgICAgIHRoaXMuc2V0U3RhdGUoe1xuICAgICAgICBzaG93VHlwZWFoZWFkOiB0cnVlXG4gICAgICB9KTtcbiAgICB9XG4gIH07XG5cbiAgX3JlbmRlckRyb3Bkb3duKGludGwpIHtcbiAgICByZXR1cm4gKFxuICAgICAgPERyb3Bkb3duV3JhcHBlciBwbGFjZW1lbnQ9e3RoaXMucHJvcHMucGxhY2VtZW50fT5cbiAgICAgICAgPFR5cGVhaGVhZFxuICAgICAgICAgIGN1c3RvbUNsYXNzZXM9e3tcbiAgICAgICAgICAgIHJlc3VsdHM6ICdsaXN0LXNlbGVjdG9yJyxcbiAgICAgICAgICAgIGlucHV0OiAndHlwZWFoZWFkX19pbnB1dCcsXG4gICAgICAgICAgICBsaXN0SXRlbTogJ2xpc3RfX2l0ZW0nLFxuICAgICAgICAgICAgbGlzdEFuY2hvcjogJ2xpc3RfX2l0ZW1fX2FuY2hvcidcbiAgICAgICAgICB9fVxuICAgICAgICAgIG9wdGlvbnM9e3RoaXMucHJvcHMub3B0aW9uc31cbiAgICAgICAgICBmaWx0ZXJPcHRpb249e3RoaXMucHJvcHMuZmlsdGVyT3B0aW9ufVxuICAgICAgICAgIGZpeGVkT3B0aW9ucz17dGhpcy5wcm9wcy5maXhlZE9wdGlvbnN9XG4gICAgICAgICAgcGxhY2Vob2xkZXI9e1xuICAgICAgICAgICAgdGhpcy5wcm9wcy50eXBlYWhlYWRQbGFjZWhvbGRlciB8fCBpbnRsXG4gICAgICAgICAgICAgID8gaW50bC5mb3JtYXRNZXNzYWdlKHtpZDogJ3BsYWNlaG9sZGVyLnNlYXJjaCd9KVxuICAgICAgICAgICAgICA6ICdTZWFyY2gnXG4gICAgICAgICAgfVxuICAgICAgICAgIG9uT3B0aW9uU2VsZWN0ZWQ9e3RoaXMuX3NlbGVjdEl0ZW19XG4gICAgICAgICAgY3VzdG9tTGlzdENvbXBvbmVudD17dGhpcy5wcm9wcy5Ecm9wRG93blJlbmRlckNvbXBvbmVudH1cbiAgICAgICAgICBjdXN0b21MaXN0SGVhZGVyQ29tcG9uZW50PXt0aGlzLnByb3BzLkRyb3Bkb3duSGVhZGVyQ29tcG9uZW50fVxuICAgICAgICAgIGN1c3RvbUxpc3RJdGVtQ29tcG9uZW50PXt0aGlzLnByb3BzLkRyb3BEb3duTGluZUl0ZW1SZW5kZXJDb21wb25lbnR9XG4gICAgICAgICAgZGlzcGxheU9wdGlvbj17QWNjZXNzb3IuZ2VuZXJhdGVPcHRpb25Ub1N0cmluZ0Zvcih0aGlzLnByb3BzLmRpc3BsYXlPcHRpb24pfVxuICAgICAgICAgIHNlYXJjaGFibGU9e3RoaXMucHJvcHMuc2VhcmNoYWJsZX1cbiAgICAgICAgICBzaG93T3B0aW9uc1doZW5FbXB0eVxuICAgICAgICAgIHNlbGVjdGVkSXRlbXM9e3RvQXJyYXkodGhpcy5wcm9wcy5zZWxlY3RlZEl0ZW1zKX1cbiAgICAgICAgICBsaWdodD17dGhpcy5wcm9wcy5pbnB1dFRoZW1lID09PSAnbGlnaHQnfVxuICAgICAgICAvPlxuICAgICAgPC9Ecm9wZG93bldyYXBwZXI+XG4gICAgKTtcbiAgfVxuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCBzZWxlY3RlZCA9IHRvQXJyYXkodGhpcy5wcm9wcy5zZWxlY3RlZEl0ZW1zKTtcbiAgICBjb25zdCBoYXNWYWx1ZSA9IHNlbGVjdGVkLmxlbmd0aDtcbiAgICBjb25zdCBkaXNwbGF5T3B0aW9uID0gQWNjZXNzb3IuZ2VuZXJhdGVPcHRpb25Ub1N0cmluZ0Zvcih0aGlzLnByb3BzLmRpc3BsYXlPcHRpb24pO1xuXG4gICAgY29uc3QgZHJvcGRvd25TZWxlY3RQcm9wcyA9IHtcbiAgICAgIGNsYXNzTmFtZTogY2xhc3NuYW1lcyh7XG4gICAgICAgIGFjdGl2ZTogdGhpcy5zdGF0ZS5zaG93VHlwZWFoZWFkXG4gICAgICB9KSxcbiAgICAgIGRpc3BsYXlPcHRpb24sXG4gICAgICBkaXNhYmxlZDogdGhpcy5wcm9wcy5kaXNhYmxlZCxcbiAgICAgIG9uQ2xpY2s6IHRoaXMuX3Nob3dUeXBlYWhlYWQsXG4gICAgICBlcnJvcjogdGhpcy5wcm9wcy5pc0Vycm9yLFxuICAgICAgaW5wdXRUaGVtZTogdGhpcy5wcm9wcy5pbnB1dFRoZW1lLFxuICAgICAgc2l6ZTogdGhpcy5wcm9wcy5zaXplXG4gICAgfTtcbiAgICBjb25zdCBpbnRsID0gdGhpcy5wcm9wcy5pbnRsO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwiaXRlbS1zZWxlY3RvclwiPlxuICAgICAgICA8ZGl2IHN0eWxlPXt7cG9zaXRpb246ICdyZWxhdGl2ZSd9fT5cbiAgICAgICAgICB7LyogdGhpcyBwYXJ0IGlzIHVzZWQgdG8gZGlzcGxheSB0aGUgbGFiZWwgKi99XG4gICAgICAgICAge3RoaXMucHJvcHMubXVsdGlTZWxlY3QgPyAoXG4gICAgICAgICAgICA8Q2hpY2tsZXRlZElucHV0XG4gICAgICAgICAgICAgIHsuLi5kcm9wZG93blNlbGVjdFByb3BzfVxuICAgICAgICAgICAgICBzZWxlY3RlZEl0ZW1zPXt0b0FycmF5KHRoaXMucHJvcHMuc2VsZWN0ZWRJdGVtcyl9XG4gICAgICAgICAgICAgIHBsYWNlaG9sZGVyPXt0aGlzLnByb3BzLnBsYWNlaG9sZGVyfVxuICAgICAgICAgICAgICByZW1vdmVJdGVtPXt0aGlzLl9yZW1vdmVJdGVtfVxuICAgICAgICAgICAgICBDdXN0b21DaGlja2xldENvbXBvbmVudD17dGhpcy5wcm9wcy5DdXN0b21DaGlja2xldENvbXBvbmVudH1cbiAgICAgICAgICAgICAgaW5wdXRUaGVtZT17dGhpcy5wcm9wcy5pbnB1dFRoZW1lfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApIDogKFxuICAgICAgICAgICAgPFN0eWxlZERyb3Bkb3duU2VsZWN0IHsuLi5kcm9wZG93blNlbGVjdFByb3BzfT5cbiAgICAgICAgICAgICAgPERyb3Bkb3duU2VsZWN0VmFsdWVcbiAgICAgICAgICAgICAgICBoYXNQbGFjZWhvbGRlcj17IWhhc1ZhbHVlfVxuICAgICAgICAgICAgICAgIGlucHV0VGhlbWU9e3RoaXMucHJvcHMuaW5wdXRUaGVtZX1cbiAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJpdGVtLXNlbGVjdG9yX19kcm9wZG93bl9fdmFsdWVcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge2hhc1ZhbHVlID8gKFxuICAgICAgICAgICAgICAgICAgPHRoaXMucHJvcHMuRHJvcERvd25MaW5lSXRlbVJlbmRlckNvbXBvbmVudFxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5T3B0aW9uPXtkaXNwbGF5T3B0aW9ufVxuICAgICAgICAgICAgICAgICAgICB2YWx1ZT17c2VsZWN0ZWRbMF19XG4gICAgICAgICAgICAgICAgICAgIGxpZ2h0PXt0aGlzLnByb3BzLmlucHV0VGhlbWUgPT09ICdsaWdodCd9XG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD17dGhpcy5wcm9wcy5wbGFjZWhvbGRlciB8fCAncGxhY2Vob2xkZXIuc2VsZWN0VmFsdWUnfSAvPlxuICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgIDwvRHJvcGRvd25TZWxlY3RWYWx1ZT5cbiAgICAgICAgICAgICAge3RoaXMucHJvcHMuZXJhc2FibGUgJiYgaGFzVmFsdWUgPyAoXG4gICAgICAgICAgICAgICAgPERyb3Bkb3duU2VsZWN0QWN0aW9uUmlnaHQ+XG4gICAgICAgICAgICAgICAgICA8RGVsZXRlIGhlaWdodD1cIjEycHhcIiBvbkNsaWNrPXt0aGlzLl9vbkVyYXNlfSAvPlxuICAgICAgICAgICAgICAgIDwvRHJvcGRvd25TZWxlY3RBY3Rpb25SaWdodD5cbiAgICAgICAgICAgICAgKSA6IHRoaXMucHJvcHMuc2hvd0Fycm93ID8gKFxuICAgICAgICAgICAgICAgIDxEcm9wZG93blNlbGVjdEFjdGlvblJpZ2h0PlxuICAgICAgICAgICAgICAgICAgPEFycm93RG93biBoZWlnaHQ9XCIxNHB4XCIgb25DbGljaz17dGhpcy5fc2hvd1R5cGVhaGVhZH0gLz5cbiAgICAgICAgICAgICAgICA8L0Ryb3Bkb3duU2VsZWN0QWN0aW9uUmlnaHQ+XG4gICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgPC9TdHlsZWREcm9wZG93blNlbGVjdD5cbiAgICAgICAgICApfVxuICAgICAgICAgIHsvKiB0aGlzIHBhcnQgaXMgdXNlZCB0byBidWlsdCB0aGUgbGlzdCAqL31cbiAgICAgICAgICB7dGhpcy5zdGF0ZS5zaG93VHlwZWFoZWFkICYmIHRoaXMuX3JlbmRlckRyb3Bkb3duKGludGwpfVxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IEl0ZW1TZWxlY3Rvckxpc3RlbiA9IGxpc3RlbnNUb0NsaWNrT3V0c2lkZShJdGVtU2VsZWN0b3IpO1xuZXhwb3J0IGRlZmF1bHQgaW5qZWN0SW50bChsaXN0ZW5zVG9DbGlja091dHNpZGUoSXRlbVNlbGVjdG9yKSk7XG4iXX0=
|
|
343
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2NvbW1vbi9pdGVtLXNlbGVjdG9yL2l0ZW0tc2VsZWN0b3IuanMiXSwibmFtZXMiOlsiU3R5bGVkRHJvcGRvd25TZWxlY3QiLCJzdHlsZWQiLCJkaXYiLCJhdHRycyIsImNsYXNzTmFtZSIsInByb3BzIiwiaW5wdXRUaGVtZSIsInRoZW1lIiwic2Vjb25kYXJ5SW5wdXQiLCJpbnB1dExUIiwiaW5wdXQiLCJzaXplIiwiaW5wdXRCb3hIZWlnaHRTbWFsbCIsImlucHV0Qm94SGVpZ2h0IiwiZHJvcGRvd25MaXN0QW5jaG9yIiwiRHJvcGRvd25TZWxlY3RWYWx1ZSIsInNwYW4iLCJoYXNQbGFjZWhvbGRlciIsInNlbGVjdENvbG9yUGxhY2VIb2xkZXJMVCIsInNlbGVjdENvbG9yUGxhY2VIb2xkZXIiLCJzZWxlY3RDb2xvckxUIiwic2VsZWN0Q29sb3IiLCJkcm9wZG93bkxpc3RJdGVtTFQiLCJkcm9wZG93bkxpc3RJdGVtIiwiZHJvcGRvd25MaXN0QW5jaG9yTFQiLCJEcm9wZG93blNlbGVjdEFjdGlvblJpZ2h0Iiwic3VidGV4dENvbG9yIiwidGV4dENvbG9yIiwiRHJvcGRvd25XcmFwcGVyIiwiZHJvcGRvd25XcmFwcGVyWiIsInBsYWNlbWVudCIsImRyb3Bkb3duV2FwcGVyTWFyZ2luIiwiSXRlbVNlbGVjdG9yIiwic2hvd1R5cGVhaGVhZCIsIl9oaWRlVHlwZWFoZWFkIiwib25CbHVyIiwiaXRlbSIsImUiLCJwcmV2ZW50RGVmYXVsdCIsInN0b3BQcm9wYWdhdGlvbiIsInNlbGVjdGVkSXRlbXMiLCJpbmRleCIsImZpbmRJbmRleCIsInQiLCJpdGVtcyIsInNsaWNlIiwibGVuZ3RoIiwib25DaGFuZ2UiLCJjbG9zZU9uU2VsZWN0Iiwic2V0U3RhdGUiLCJfb25CbHVyIiwiZ2V0VmFsdWUiLCJBY2Nlc3NvciIsImdlbmVyYXRlT3B0aW9uVG9TdHJpbmdGb3IiLCJnZXRPcHRpb25WYWx1ZSIsImRpc3BsYXlPcHRpb24iLCJwcmV2aW91c1NlbGVjdGVkIiwibXVsdGlTZWxlY3QiLCJjb25jYXQiLCJkaXNhYmxlZCIsImlzTG9hZGluZyIsImludGwiLCJyZXN1bHRzIiwibGlzdEl0ZW0iLCJsaXN0QW5jaG9yIiwib3B0aW9ucyIsImZpbHRlck9wdGlvbiIsImZpeGVkT3B0aW9ucyIsInR5cGVhaGVhZFBsYWNlaG9sZGVyIiwiZm9ybWF0TWVzc2FnZSIsImlkIiwiX3NlbGVjdEl0ZW0iLCJEcm9wRG93blJlbmRlckNvbXBvbmVudCIsIkRyb3Bkb3duSGVhZGVyQ29tcG9uZW50IiwiRHJvcERvd25MaW5lSXRlbVJlbmRlckNvbXBvbmVudCIsInNlYXJjaGFibGUiLCJzZWxlY3RlZCIsImhhc1ZhbHVlIiwiZHJvcGRvd25TZWxlY3RQcm9wcyIsImFjdGl2ZSIsInN0YXRlIiwib25DbGljayIsIl9zaG93VHlwZWFoZWFkIiwiZXJyb3IiLCJpc0Vycm9yIiwicG9zaXRpb24iLCJwbGFjZWhvbGRlciIsIl9yZW1vdmVJdGVtIiwiQ3VzdG9tQ2hpY2tsZXRDb21wb25lbnQiLCJlcmFzYWJsZSIsIl9vbkVyYXNlIiwic2hvd0Fycm93IiwiX3JlbmRlckRyb3Bkb3duIiwiQ29tcG9uZW50IiwiUHJvcFR5cGVzIiwib25lT2ZUeXBlIiwiYXJyYXkiLCJzdHJpbmciLCJudW1iZXIiLCJib29sIiwib2JqZWN0IiwiZnVuYyIsImlzUmVxdWlyZWQiLCJhcnJheU9mIiwiYW55IiwiZHJvcGRvd25IZWFkZXIiLCJEcm9wZG93bkxpc3QiLCJMaXN0SXRlbSIsIkl0ZW1TZWxlY3Rvckxpc3RlbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQW9CQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFFQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFFQTs7QUFDQTs7QUFDQTs7Ozs7Ozs7QUFFTyxJQUFNQSxvQkFBb0IsR0FBR0MsNkJBQU9DLEdBQVAsQ0FBV0MsS0FBWCxD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RUFBQUEsdUJBQXVCLEVBQUUsSUFmTDtBQWdCcEJELEVBQUFBLHVCQUF1QixFQUFFa0Msd0JBaEJMO0FBaUJwQmhDLEVBQUFBLCtCQUErQixFQUFFaUM7QUFqQmIsQztBQTBNakIsSUFBTUMsa0JBQWtCLEdBQUcscUNBQXNCNUUsWUFBdEIsQ0FBM0I7OztlQUNRLDJCQUFXLHFDQUFzQkEsWUFBdEIsQ0FBWCxDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IChjKSAyMDIyIFViZXIgVGVjaG5vbG9naWVzLCBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cblxuaW1wb3J0IFJlYWN0LCB7Q29tcG9uZW50fSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgUHJvcFR5cGVzIGZyb20gJ3Byb3AtdHlwZXMnO1xuaW1wb3J0IGNsYXNzbmFtZXMgZnJvbSAnY2xhc3NuYW1lcyc7XG5pbXBvcnQgdW5pcUJ5IGZyb20gJ2xvZGFzaC51bmlxYnknO1xuaW1wb3J0IGxpc3RlbnNUb0NsaWNrT3V0c2lkZSBmcm9tICdyZWFjdC1vbmNsaWNrb3V0c2lkZSc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzJztcblxuaW1wb3J0IEFjY2Vzc29yIGZyb20gJy4vYWNjZXNzb3InO1xuaW1wb3J0IENoaWNrbGV0ZWRJbnB1dCBmcm9tICcuL2NoaWNrbGV0ZWQtaW5wdXQnO1xuaW1wb3J0IFR5cGVhaGVhZCBmcm9tICcuL3R5cGVhaGVhZCc7XG5pbXBvcnQge0RlbGV0ZSwgQXJyb3dEb3dufSBmcm9tICdjb21wb25lbnRzL2NvbW1vbi9pY29ucyc7XG5pbXBvcnQgTG9hZGluZ1NwaW5uZXIgZnJvbSAnY29tcG9uZW50cy9jb21tb24vbG9hZGluZy1zcGlubmVyJztcbmltcG9ydCBEcm9wZG93bkxpc3QsIHtMaXN0SXRlbX0gZnJvbSAnLi9kcm9wZG93bi1saXN0JztcblxuaW1wb3J0IHt0b0FycmF5fSBmcm9tICd1dGlscy91dGlscyc7XG5pbXBvcnQge2luamVjdEludGx9IGZyb20gJ3JlYWN0LWludGwnO1xuaW1wb3J0IHtGb3JtYXR0ZWRNZXNzYWdlfSBmcm9tICdsb2NhbGl6YXRpb24nO1xuXG5leHBvcnQgY29uc3QgU3R5bGVkRHJvcGRvd25TZWxlY3QgPSBzdHlsZWQuZGl2LmF0dHJzKHtcbiAgY2xhc3NOYW1lOiAnaXRlbS1zZWxlY3Rvcl9fZHJvcGRvd24nXG59KWBcbiAgJHtwcm9wcyA9PlxuICAgIHByb3BzLmlucHV0VGhlbWUgPT09ICdzZWNvbmRhcnknXG4gICAgICA/IHByb3BzLnRoZW1lLnNlY29uZGFyeUlucHV0XG4gICAgICA6IHByb3BzLmlucHV0VGhlbWUgPT09ICdsaWdodCdcbiAgICAgID8gcHJvcHMudGhlbWUuaW5wdXRMVFxuICAgICAgOiBwcm9wcy50aGVtZS5pbnB1dH07XG5cbiAgaGVpZ2h0OiAke3Byb3BzID0+XG4gICAgcHJvcHMuc2l6ZSA9PT0gJ3NtYWxsJyA/IHByb3BzLnRoZW1lLmlucHV0Qm94SGVpZ2h0U21hbGwgOiBwcm9wcy50aGVtZS5pbnB1dEJveEhlaWdodH07XG5cbiAgLmxpc3RfX2l0ZW1fX2FuY2hvciB7XG4gICAgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5kcm9wZG93bkxpc3RBbmNob3J9O1xuICB9XG5gO1xuXG5jb25zdCBEcm9wZG93blNlbGVjdFZhbHVlID0gc3R5bGVkLnNwYW5gXG4gIGNvbG9yOiAke3Byb3BzID0+XG4gICAgcHJvcHMuaGFzUGxhY2Vob2xkZXIgJiYgcHJvcHMuaW5wdXRUaGVtZSA9PT0gJ2xpZ2h0J1xuICAgICAgPyBwcm9wcy50aGVtZS5zZWxlY3RDb2xvclBsYWNlSG9sZGVyTFRcbiAgICAgIDogcHJvcHMuaGFzUGxhY2Vob2xkZXJcbiAgICAgID8gcHJvcHMudGhlbWUuc2VsZWN0Q29sb3JQbGFjZUhvbGRlclxuICAgICAgOiBwcm9wcy5pbnB1dFRoZW1lID09PSAnbGlnaHQnXG4gICAgICA/IHByb3BzLnRoZW1lLnNlbGVjdENvbG9yTFRcbiAgICAgIDogcHJvcHMudGhlbWUuc2VsZWN0Q29sb3J9O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAubGlzdF9faXRlbSB7XG4gICAgJHtwcm9wcyA9PlxuICAgICAgcHJvcHMuaW5wdXRUaGVtZSA9PT0gJ2xpZ2h0JyA/IHByb3BzLnRoZW1lLmRyb3Bkb3duTGlzdEl0ZW1MVCA6IHByb3BzLnRoZW1lLmRyb3Bkb3duTGlzdEl0ZW19O1xuICB9XG5cbiAgLmxpc3RfX2l0ZW1fX2FuY2hvciB7XG4gICAgJHtwcm9wcyA9PlxuICAgICAgcHJvcHMuaW5wdXRUaGVtZSA9PT0gJ2xpZ2h0J1xuICAgICAgICA/IHByb3BzLnRoZW1lLmRyb3Bkb3duTGlzdEFuY2hvckxUXG4gICAgICAgIDogcHJvcHMudGhlbWUuZHJvcGRvd25MaXN0QW5jaG9yfTtcbiAgfVxuYDtcblxuY29uc3QgRHJvcGRvd25TZWxlY3RBY3Rpb25SaWdodCA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi1yaWdodDogNnB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zdWJ0ZXh0Q29sb3J9O1xuXG4gIDpob3ZlciB7XG4gICAgY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUudGV4dENvbG9yfTtcbiAgfVxuYDtcblxuY29uc3QgRHJvcGRvd25XcmFwcGVyID0gc3R5bGVkLmRpdmBcbiAgYm9yZGVyOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5kcm9wZG93bldyYXBwZXJafTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206ICR7cHJvcHMgPT4gKHByb3BzLnBsYWNlbWVudCA9PT0gJ3RvcCcgPyBwcm9wcy50aGVtZS5pbnB1dEJveEhlaWdodCA6ICdhdXRvJyl9O1xuICBtYXJnaW4tdG9wOiAke3Byb3BzID0+XG4gICAgcHJvcHMucGxhY2VtZW50ID09PSAnYm90dG9tJyA/IGAke3Byb3BzLnRoZW1lLmRyb3Bkb3duV2FwcGVyTWFyZ2lufXB4YCA6ICdhdXRvJ307XG4gIG1hcmdpbi1ib3R0b206ICR7cHJvcHMgPT5cbiAgICBwcm9wcy5wbGFjZW1lbnQgPT09ICd0b3AnID8gYCR7cHJvcHMudGhlbWUuZHJvcGRvd25XYXBwZXJNYXJnaW59cHhgIDogJ2F1dG8nfTtcbmA7XG5cbmNsYXNzIEl0ZW1TZWxlY3RvciBleHRlbmRzIENvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgLy8gcmVxdWlyZWQgcHJvcGVydGllc1xuICAgIHNlbGVjdGVkSXRlbXM6IFByb3BUeXBlcy5vbmVPZlR5cGUoW1xuICAgICAgUHJvcFR5cGVzLmFycmF5LFxuICAgICAgUHJvcFR5cGVzLnN0cmluZyxcbiAgICAgIFByb3BUeXBlcy5udW1iZXIsXG4gICAgICBQcm9wVHlwZXMuYm9vbCxcbiAgICAgIFByb3BUeXBlcy5vYmplY3RcbiAgICBdKSxcbiAgICBvbkNoYW5nZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvcHRpb25zOiBQcm9wVHlwZXMuYXJyYXlPZihQcm9wVHlwZXMuYW55KS5pc1JlcXVpcmVkLFxuXG4gICAgLy8gb3B0aW9uYWwgcHJvcGVydGllc1xuICAgIGZpeGVkT3B0aW9uczogUHJvcFR5cGVzLmFycmF5T2YoUHJvcFR5cGVzLmFueSksXG4gICAgZXJhc2FibGU6IFByb3BUeXBlcy5ib29sLFxuICAgIHNob3dBcnJvdzogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGlzcGxheU9wdGlvbjogUHJvcFR5cGVzLm9uZU9mVHlwZShbUHJvcFR5cGVzLnN0cmluZywgUHJvcFR5cGVzLmZ1bmNdKSxcbiAgICBnZXRPcHRpb25WYWx1ZTogUHJvcFR5cGVzLm9uZU9mVHlwZShbUHJvcFR5cGVzLnN0cmluZywgUHJvcFR5cGVzLmZ1bmNdKSxcbiAgICBmaWx0ZXJPcHRpb246IFByb3BUeXBlcy5vbmVPZlR5cGUoW1Byb3BUeXBlcy5zdHJpbmcsIFByb3BUeXBlcy5mdW5jXSksXG4gICAgcGxhY2VtZW50OiBQcm9wVHlwZXMuc3RyaW5nLFxuICAgIGRpc2FibGVkOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpc0Vycm9yOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpc0xvYWRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIG11bHRpU2VsZWN0OiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpbnB1dFRoZW1lOiBQcm9wVHlwZXMuc3RyaW5nLFxuICAgIG9uQmx1cjogUHJvcFR5cGVzLmZ1bmMsXG4gICAgcGxhY2Vob2xkZXI6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgY2xvc2VPblNlbGVjdDogUHJvcFR5cGVzLmJvb2wsXG4gICAgdHlwZWFoZWFkUGxhY2Vob2xkZXI6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgRHJvcGRvd25IZWFkZXJDb21wb25lbnQ6IFByb3BUeXBlcy5mdW5jLFxuICAgIERyb3BEb3duUmVuZGVyQ29tcG9uZW50OiBQcm9wVHlwZXMuZnVuYyxcbiAgICBEcm9wRG93bkxpbmVJdGVtUmVuZGVyQ29tcG9uZW50OiBQcm9wVHlwZXMuZnVuYyxcbiAgICBDdXN0b21DaGlja2xldENvbXBvbmVudDogUHJvcFR5cGVzLmZ1bmNcbiAgfTtcblxuICBzdGF0aWMgZGVmYXVsdFByb3BzID0ge1xuICAgIGVyYXNhYmxlOiBmYWxzZSxcbiAgICBzaG93QXJyb3c6IGZhbHNlLFxuICAgIHBsYWNlbWVudDogJ2JvdHRvbScsXG4gICAgc2VsZWN0ZWRJdGVtczogW10sXG4gICAgZGlzcGxheU9wdGlvbjogbnVsbCxcbiAgICBnZXRPcHRpb25WYWx1ZTogbnVsbCxcbiAgICBmaWx0ZXJPcHRpb246IG51bGwsXG4gICAgZml4ZWRPcHRpb25zOiBudWxsLFxuICAgIGlucHV0VGhlbWU6ICdwcmltYXJ5JyxcbiAgICBtdWx0aVNlbGVjdDogdHJ1ZSxcbiAgICBwbGFjZWhvbGRlcjogJ3BsYWNlaG9sZGVyLmVudGVyVmFsdWUnLFxuICAgIGNsb3NlT25TZWxlY3Q6IHRydWUsXG4gICAgc2VhcmNoYWJsZTogdHJ1ZSxcbiAgICBkcm9wZG93bkhlYWRlcjogbnVsbCxcbiAgICBEcm9wZG93bkhlYWRlckNvbXBvbmVudDogbnVsbCxcbiAgICBEcm9wRG93blJlbmRlckNvbXBvbmVudDogRHJvcGRvd25MaXN0LFxuICAgIERyb3BEb3duTGluZUl0ZW1SZW5kZXJDb21wb25lbnQ6IExpc3RJdGVtXG4gIH07XG5cbiAgc3RhdGUgPSB7XG4gICAgc2hvd1R5cGVhaGVhZDogZmFsc2VcbiAgfTtcblxuICBoYW5kbGVDbGlja091dHNpZGUgPSAoKSA9PiB7XG4gICAgdGhpcy5faGlkZVR5cGVhaGVhZCgpO1xuICB9O1xuXG4gIF9oaWRlVHlwZWFoZWFkKCkge1xuICAgIHRoaXMuc2V0U3RhdGUoe3Nob3dUeXBlYWhlYWQ6IGZhbHNlfSk7XG4gICAgdGhpcy5fb25CbHVyKCk7XG4gIH1cblxuICBfb25CbHVyID0gKCkgPT4ge1xuICAgIC8vIG5vdGU6IGNoaWNrbGV0ZWQgaW5wdXQgaXMgbm90IGEgcmVhbCBmb3JtIGVsZW1lbnQgc28gd2UgY2FsbCBvbkJsdXIoKVxuICAgIC8vIHdoZW4gd2UgZmVlbCB0aGUgZXZlbnRzIGFyZSBhcHByb3ByaWF0ZVxuICAgIGlmICh0aGlzLnByb3BzLm9uQmx1cikge1xuICAgICAgdGhpcy5wcm9wcy5vbkJsdXIoKTtcbiAgICB9XG4gIH07XG5cbiAgX3JlbW92ZUl0ZW0gPSAoaXRlbSwgZSkgPT4ge1xuICAgIC8vIG9ubHkgdXNlZCB3aGVuIG11bHRpU2VsZWN0ID0gdHJ1ZVxuICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIGNvbnN0IHtzZWxlY3RlZEl0ZW1zfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgaW5kZXggPSBzZWxlY3RlZEl0ZW1zLmZpbmRJbmRleCh0ID0+IHQgPT09IGl0ZW0pO1xuXG4gICAgaWYgKGluZGV4IDwgMCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGl0ZW1zID0gW1xuICAgICAgLi4uc2VsZWN0ZWRJdGVtcy5zbGljZSgwLCBpbmRleCksXG4gICAgICAuLi5zZWxlY3RlZEl0ZW1zLnNsaWNlKGluZGV4ICsgMSwgc2VsZWN0ZWRJdGVtcy5sZW5ndGgpXG4gICAgXTtcblxuICAgIHRoaXMucHJvcHMub25DaGFuZ2UoaXRlbXMpO1xuXG4gICAgaWYgKHRoaXMucHJvcHMuY2xvc2VPblNlbGVjdCkge1xuICAgICAgdGhpcy5zZXRTdGF0ZSh7c2hvd1R5cGVhaGVhZDogZmFsc2V9KTtcbiAgICAgIHRoaXMuX29uQmx1cigpO1xuICAgIH1cbiAgfTtcblxuICBfc2VsZWN0SXRlbSA9IGl0ZW0gPT4ge1xuICAgIGNvbnN0IGdldFZhbHVlID0gQWNjZXNzb3IuZ2VuZXJhdGVPcHRpb25Ub1N0cmluZ0ZvcihcbiAgICAgIHRoaXMucHJvcHMuZ2V0T3B0aW9uVmFsdWUgfHwgdGhpcy5wcm9wcy5kaXNwbGF5T3B0aW9uXG4gICAgKTtcblxuICAgIGNvbnN0IHByZXZpb3VzU2VsZWN0ZWQgPSB0b0FycmF5KHRoaXMucHJvcHMuc2VsZWN0ZWRJdGVtcyk7XG5cbiAgICBpZiAodGhpcy5wcm9wcy5tdWx0aVNlbGVjdCkge1xuICAgICAgY29uc3QgaXRlbXMgPSB1bmlxQnkocHJldmlvdXNTZWxlY3RlZC5jb25jYXQodG9BcnJheShpdGVtKSksIGdldFZhbHVlKTtcbiAgICAgIHRoaXMucHJvcHMub25DaGFuZ2UoaXRlbXMpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnByb3BzLm9uQ2hhbmdlKGdldFZhbHVlKGl0ZW0pKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5wcm9wcy5jbG9zZU9uU2VsZWN0KSB7XG4gICAgICB0aGlzLnNldFN0YXRlKHtzaG93VHlwZWFoZWFkOiBmYWxzZX0pO1xuICAgICAgdGhpcy5fb25CbHVyKCk7XG4gICAgfVxuICB9O1xuXG4gIF9vbkVyYXNlID0gZSA9PiB7XG4gICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB0aGlzLnByb3BzLm9uQ2hhbmdlKG51bGwpO1xuICB9O1xuXG4gIF9zaG93VHlwZWFoZWFkID0gZSA9PiB7XG4gICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICBpZiAoIXRoaXMucHJvcHMuZGlzYWJsZWQgJiYgIXRoaXMucHJvcHMuaXNMb2FkaW5nKSB7XG4gICAgICB0aGlzLnNldFN0YXRlKHtcbiAgICAgICAgc2hvd1R5cGVhaGVhZDogdHJ1ZVxuICAgICAgfSk7XG4gICAgfVxuICB9O1xuXG4gIF9yZW5kZXJEcm9wZG93bihpbnRsKSB7XG4gICAgcmV0dXJuIChcbiAgICAgIDxEcm9wZG93bldyYXBwZXIgcGxhY2VtZW50PXt0aGlzLnByb3BzLnBsYWNlbWVudH0+XG4gICAgICAgIDxUeXBlYWhlYWRcbiAgICAgICAgICBjdXN0b21DbGFzc2VzPXt7XG4gICAgICAgICAgICByZXN1bHRzOiAnbGlzdC1zZWxlY3RvcicsXG4gICAgICAgICAgICBpbnB1dDogJ3R5cGVhaGVhZF9faW5wdXQnLFxuICAgICAgICAgICAgbGlzdEl0ZW06ICdsaXN0X19pdGVtJyxcbiAgICAgICAgICAgIGxpc3RBbmNob3I6ICdsaXN0X19pdGVtX19hbmNob3InXG4gICAgICAgICAgfX1cbiAgICAgICAgICBvcHRpb25zPXt0aGlzLnByb3BzLm9wdGlvbnN9XG4gICAgICAgICAgZmlsdGVyT3B0aW9uPXt0aGlzLnByb3BzLmZpbHRlck9wdGlvbn1cbiAgICAgICAgICBmaXhlZE9wdGlvbnM9e3RoaXMucHJvcHMuZml4ZWRPcHRpb25zfVxuICAgICAgICAgIHBsYWNlaG9sZGVyPXtcbiAgICAgICAgICAgIHRoaXMucHJvcHMudHlwZWFoZWFkUGxhY2Vob2xkZXIgfHwgaW50bFxuICAgICAgICAgICAgICA/IGludGwuZm9ybWF0TWVzc2FnZSh7aWQ6ICdwbGFjZWhvbGRlci5zZWFyY2gnfSlcbiAgICAgICAgICAgICAgOiAnU2VhcmNoJ1xuICAgICAgICAgIH1cbiAgICAgICAgICBvbk9wdGlvblNlbGVjdGVkPXt0aGlzLl9zZWxlY3RJdGVtfVxuICAgICAgICAgIGN1c3RvbUxpc3RDb21wb25lbnQ9e3RoaXMucHJvcHMuRHJvcERvd25SZW5kZXJDb21wb25lbnR9XG4gICAgICAgICAgY3VzdG9tTGlzdEhlYWRlckNvbXBvbmVudD17dGhpcy5wcm9wcy5Ecm9wZG93bkhlYWRlckNvbXBvbmVudH1cbiAgICAgICAgICBjdXN0b21MaXN0SXRlbUNvbXBvbmVudD17dGhpcy5wcm9wcy5Ecm9wRG93bkxpbmVJdGVtUmVuZGVyQ29tcG9uZW50fVxuICAgICAgICAgIGRpc3BsYXlPcHRpb249e0FjY2Vzc29yLmdlbmVyYXRlT3B0aW9uVG9TdHJpbmdGb3IodGhpcy5wcm9wcy5kaXNwbGF5T3B0aW9uKX1cbiAgICAgICAgICBzZWFyY2hhYmxlPXt0aGlzLnByb3BzLnNlYXJjaGFibGV9XG4gICAgICAgICAgc2hvd09wdGlvbnNXaGVuRW1wdHlcbiAgICAgICAgICBzZWxlY3RlZEl0ZW1zPXt0b0FycmF5KHRoaXMucHJvcHMuc2VsZWN0ZWRJdGVtcyl9XG4gICAgICAgICAgbGlnaHQ9e3RoaXMucHJvcHMuaW5wdXRUaGVtZSA9PT0gJ2xpZ2h0J31cbiAgICAgICAgLz5cbiAgICAgIDwvRHJvcGRvd25XcmFwcGVyPlxuICAgICk7XG4gIH1cblxuICByZW5kZXIoKSB7XG4gICAgY29uc3Qgc2VsZWN0ZWQgPSB0b0FycmF5KHRoaXMucHJvcHMuc2VsZWN0ZWRJdGVtcyk7XG4gICAgY29uc3QgaGFzVmFsdWUgPSBzZWxlY3RlZC5sZW5ndGg7XG4gICAgY29uc3QgZGlzcGxheU9wdGlvbiA9IEFjY2Vzc29yLmdlbmVyYXRlT3B0aW9uVG9TdHJpbmdGb3IodGhpcy5wcm9wcy5kaXNwbGF5T3B0aW9uKTtcblxuICAgIGNvbnN0IGRyb3Bkb3duU2VsZWN0UHJvcHMgPSB7XG4gICAgICBjbGFzc05hbWU6IGNsYXNzbmFtZXMoe1xuICAgICAgICBhY3RpdmU6IHRoaXMuc3RhdGUuc2hvd1R5cGVhaGVhZFxuICAgICAgfSksXG4gICAgICBkaXNwbGF5T3B0aW9uLFxuICAgICAgZGlzYWJsZWQ6IHRoaXMucHJvcHMuZGlzYWJsZWQsXG4gICAgICBvbkNsaWNrOiB0aGlzLl9zaG93VHlwZWFoZWFkLFxuICAgICAgZXJyb3I6IHRoaXMucHJvcHMuaXNFcnJvcixcbiAgICAgIGlucHV0VGhlbWU6IHRoaXMucHJvcHMuaW5wdXRUaGVtZSxcbiAgICAgIHNpemU6IHRoaXMucHJvcHMuc2l6ZVxuICAgIH07XG4gICAgY29uc3QgaW50bCA9IHRoaXMucHJvcHMuaW50bDtcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cIml0ZW0tc2VsZWN0b3JcIj5cbiAgICAgICAgPGRpdiBzdHlsZT17e3Bvc2l0aW9uOiAncmVsYXRpdmUnfX0+XG4gICAgICAgICAgey8qIHRoaXMgcGFydCBpcyB1c2VkIHRvIGRpc3BsYXkgdGhlIGxhYmVsICovfVxuICAgICAgICAgIHt0aGlzLnByb3BzLm11bHRpU2VsZWN0ID8gKFxuICAgICAgICAgICAgPENoaWNrbGV0ZWRJbnB1dFxuICAgICAgICAgICAgICB7Li4uZHJvcGRvd25TZWxlY3RQcm9wc31cbiAgICAgICAgICAgICAgc2VsZWN0ZWRJdGVtcz17dG9BcnJheSh0aGlzLnByb3BzLnNlbGVjdGVkSXRlbXMpfVxuICAgICAgICAgICAgICBwbGFjZWhvbGRlcj17dGhpcy5wcm9wcy5wbGFjZWhvbGRlcn1cbiAgICAgICAgICAgICAgcmVtb3ZlSXRlbT17dGhpcy5fcmVtb3ZlSXRlbX1cbiAgICAgICAgICAgICAgQ3VzdG9tQ2hpY2tsZXRDb21wb25lbnQ9e3RoaXMucHJvcHMuQ3VzdG9tQ2hpY2tsZXRDb21wb25lbnR9XG4gICAgICAgICAgICAgIGlucHV0VGhlbWU9e3RoaXMucHJvcHMuaW5wdXRUaGVtZX1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTdHlsZWREcm9wZG93blNlbGVjdCB7Li4uZHJvcGRvd25TZWxlY3RQcm9wc30+XG4gICAgICAgICAgICAgIDxEcm9wZG93blNlbGVjdFZhbHVlXG4gICAgICAgICAgICAgICAgaGFzUGxhY2Vob2xkZXI9eyFoYXNWYWx1ZX1cbiAgICAgICAgICAgICAgICBpbnB1dFRoZW1lPXt0aGlzLnByb3BzLmlucHV0VGhlbWV9XG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lPVwiaXRlbS1zZWxlY3Rvcl9fZHJvcGRvd25fX3ZhbHVlXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHtoYXNWYWx1ZSA/IChcbiAgICAgICAgICAgICAgICAgIDx0aGlzLnByb3BzLkRyb3BEb3duTGluZUl0ZW1SZW5kZXJDb21wb25lbnRcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheU9wdGlvbj17ZGlzcGxheU9wdGlvbn1cbiAgICAgICAgICAgICAgICAgICAgdmFsdWU9e3NlbGVjdGVkWzBdfVxuICAgICAgICAgICAgICAgICAgICBsaWdodD17dGhpcy5wcm9wcy5pbnB1dFRoZW1lID09PSAnbGlnaHQnfVxuICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICApIDogKFxuICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9e3RoaXMucHJvcHMucGxhY2Vob2xkZXIgfHwgJ3BsYWNlaG9sZGVyLnNlbGVjdFZhbHVlJ30gLz5cbiAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICA8L0Ryb3Bkb3duU2VsZWN0VmFsdWU+XG4gICAgICAgICAgICAgIHt0aGlzLnByb3BzLmVyYXNhYmxlICYmIGhhc1ZhbHVlID8gKFxuICAgICAgICAgICAgICAgIDxEcm9wZG93blNlbGVjdEFjdGlvblJpZ2h0PlxuICAgICAgICAgICAgICAgICAge3RoaXMucHJvcHMuaXNMb2FkaW5nID8gKFxuICAgICAgICAgICAgICAgICAgICA8TG9hZGluZ1NwaW5uZXIgc2l6ZT17MTh9IHN0cm9rZVdpZHRoPXsyfSBnYXA9ezB9IC8+XG4gICAgICAgICAgICAgICAgICApIDogKFxuICAgICAgICAgICAgICAgICAgICA8RGVsZXRlIGhlaWdodD1cIjEycHhcIiBvbkNsaWNrPXt0aGlzLl9vbkVyYXNlfSAvPlxuICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICA8L0Ryb3Bkb3duU2VsZWN0QWN0aW9uUmlnaHQ+XG4gICAgICAgICAgICAgICkgOiB0aGlzLnByb3BzLnNob3dBcnJvdyA/IChcbiAgICAgICAgICAgICAgICA8RHJvcGRvd25TZWxlY3RBY3Rpb25SaWdodD5cbiAgICAgICAgICAgICAgICAgIDxBcnJvd0Rvd24gaGVpZ2h0PVwiMTRweFwiIG9uQ2xpY2s9e3RoaXMuX3Nob3dUeXBlYWhlYWR9IC8+XG4gICAgICAgICAgICAgICAgPC9Ecm9wZG93blNlbGVjdEFjdGlvblJpZ2h0PlxuICAgICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgIDwvU3R5bGVkRHJvcGRvd25TZWxlY3Q+XG4gICAgICAgICAgKX1cbiAgICAgICAgICB7LyogdGhpcyBwYXJ0IGlzIHVzZWQgdG8gYnVpbHQgdGhlIGxpc3QgKi99XG4gICAgICAgICAge3RoaXMuc3RhdGUuc2hvd1R5cGVhaGVhZCAmJiB0aGlzLl9yZW5kZXJEcm9wZG93bihpbnRsKX1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICApO1xuICB9XG59XG5cbmV4cG9ydCBjb25zdCBJdGVtU2VsZWN0b3JMaXN0ZW4gPSBsaXN0ZW5zVG9DbGlja091dHNpZGUoSXRlbVNlbGVjdG9yKTtcbmV4cG9ydCBkZWZhdWx0IGluamVjdEludGwobGlzdGVuc1RvQ2xpY2tPdXRzaWRlKEl0ZW1TZWxlY3RvcikpO1xuIl19
|