@carto/kepler.gl 0.0.48 → 0.0.49

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.
Files changed (34) hide show
  1. package/CHANGELOG.md +711 -0
  2. package/dist/components/common/field-selector.js +7 -3
  3. package/dist/components/common/item-selector/item-selector.js +6 -1
  4. package/dist/components/common/styled-components.js +2 -2
  5. package/dist/components/index.js +10 -1
  6. package/dist/components/kepler-gl.js +2 -1
  7. package/dist/components/side-panel/layer-panel/custom-markers-config-group.js +40 -0
  8. package/dist/components/side-panel/layer-panel/layer-configurator.js +16 -8
  9. package/dist/components/side-panel/layer-panel/vis-config-by-field-selector.js +21 -5
  10. package/dist/constants/default-settings.js +8 -6
  11. package/dist/layers/base-layer.js +92 -9
  12. package/dist/layers/layer-factory.js +23 -1
  13. package/dist/layers/point-layer/point-layer.js +125 -22
  14. package/dist/localization/en.js +9 -3
  15. package/dist/utils/index.js +7 -1
  16. package/dist/utils/layer-utils.js +12 -3
  17. package/package.json +1 -1
  18. package/src/.DS_Store +0 -0
  19. package/src/components/common/field-selector.js +12 -6
  20. package/src/components/common/item-selector/item-selector.js +4 -0
  21. package/src/components/common/styled-components.js +1 -1
  22. package/src/components/index.js +1 -0
  23. package/src/components/kepler-gl.js +1 -0
  24. package/src/components/side-panel/layer-panel/custom-markers-config-group.js +30 -0
  25. package/src/components/side-panel/layer-panel/layer-configurator.js +27 -10
  26. package/src/components/side-panel/layer-panel/vis-config-by-field-selector.js +21 -9
  27. package/src/constants/default-settings.js +12 -4
  28. package/src/layers/base-layer.js +74 -7
  29. package/src/layers/layer-factory.js +22 -0
  30. package/src/layers/point-layer/point-layer.js +133 -27
  31. package/src/localization/en.js +8 -2
  32. package/src/utils/index.js +6 -1
  33. package/src/utils/layer-utils.d.ts +3 -1
  34. package/src/utils/layer-utils.js +8 -2
@@ -229,7 +229,9 @@ function FieldSelectorFactory(FieldListItemFactory) {
229
229
  DropDownLineItemRenderComponent: this.fieldListItemSelector(this.props),
230
230
  DropdownHeaderComponent: this.props.suggested ? SuggestedFieldHeader : null,
231
231
  CustomChickletComponent: this.props.CustomChickletComponent,
232
- withSubOptions: this.props.withAggregator
232
+ withSubOptions: this.props.withAggregator,
233
+ onBlur: this.props.onBlur,
234
+ onFocus: this.props.onFocus
233
235
  }));
234
236
  }
235
237
  }]);
@@ -253,7 +255,9 @@ function FieldSelectorFactory(FieldListItemFactory) {
253
255
  closeOnSelect: _propTypes["default"].bool,
254
256
  showToken: _propTypes["default"].bool,
255
257
  suggested: _propTypes["default"].arrayOf(_propTypes["default"].any),
256
- CustomChickletComponent: _propTypes["default"].func
258
+ CustomChickletComponent: _propTypes["default"].func,
259
+ onBlur: _propTypes["default"].func,
260
+ onFocus: _propTypes["default"].func
257
261
  });
258
262
  (0, _defineProperty2["default"])(FieldSelector, "defaultProps", {
259
263
  erasable: true,
@@ -275,4 +279,4 @@ function FieldSelectorFactory(FieldListItemFactory) {
275
279
  FieldSelectorFactory.deps = [FieldListItemFactoryFactory];
276
280
  var _default = FieldSelectorFactory;
277
281
  exports["default"] = _default;
278
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2NvbW1vbi9maWVsZC1zZWxlY3Rvci5qcyJdLCJuYW1lcyI6WyJkZWZhdWx0RGlzcGxheU9wdGlvbiIsImQiLCJvcHRpb25OYW1lIiwiZGlzcGxheU5hbWUiLCJuYW1lIiwiYWdncmVnYXRvciIsImFnZ2VnYXRvckRpc3BsYXkiLCJGSUVMRF9BR0dSRUdBVE9SUyIsImZpbmQiLCJhIiwiaWQiLCJkZWZhdWx0VmFsdWVPcHRpb24iLCJTdHlsZWRUb2tlbiIsInN0eWxlZCIsImRpdiIsIlN0eWxlZEZpZWxkTGlzdEl0ZW0iLCJGaWVsZExpc3RJdGVtRmFjdG9yeUZhY3RvcnkiLCJkZXBzIiwiRmllbGRUb2tlbkZhY3RvcnkiLCJGaWVsZFRva2VuIiwiRmllbGRMaXN0SXRlbUZhY3RvcnkiLCJzaG93VG9rZW4iLCJGaWVsZExpc3RJdGVtIiwidmFsdWUiLCJkaXNwbGF5T3B0aW9uIiwiY2xhc3NMaXN0IiwibGlzdEl0ZW1BbmNob3IiLCJ0eXBlIiwiU3VnZ2VzdGVkRmllbGRIZWFkZXIiLCJGaWVsZFR5cGUiLCJQcm9wVHlwZXMiLCJvbmVPZlR5cGUiLCJzdHJpbmciLCJhcnJheU9mIiwic2hhcGUiLCJmb3JtYXQiLCJmaWVsZElkeCIsIm51bWJlciIsIkZpZWxkU2VsZWN0b3JGYWN0b3J5IiwiRmllbGRTZWxlY3RvciIsInByb3BzIiwiZmllbGRzIiwid2l0aEFnZ3JlZ2F0b3IiLCJmaWx0ZXIiLCJmaWVsZCIsImZpbHRlckZpZWxkVHlwZXMiLCJmaWVsZHNTZWxlY3RvciIsInZhbHVlU2VsZWN0b3IiLCJhZ2dyZWdhdG9yU2VsZWN0b3IiLCJtYXAiLCJmIiwiZmlsdGVyZWRGaWVsZHNTZWxlY3RvciIsImZpbHRlckZpZWxkVHlwZXNTZWxlY3RvciIsIndpdGhBZ2dyZWdhdG9yU2VsZWN0b3IiLCJmaWVsZHNXaXRoQWdncmVnYXRvcnMiLCJhZ2dyZWdhdG9ycyIsIkZJRUxEX1RZUEVTX0FHR1JFR0FUT1JTIiwiYWdnIiwiZmlsdGVycyIsIkFycmF5IiwiaXNBcnJheSIsImluY2x1ZGVzIiwic2hvd1Rva2VuU2VsZWN0b3IiLCJjbG9zZU9uU2VsZWN0Iiwic3VnZ2VzdGVkIiwiaW5wdXRUaGVtZSIsInNpemUiLCJlcnJvciIsImlzTG9hZGluZyIsInNlbGVjdGVkSXRlbXNTZWxlY3RvciIsImVyYXNhYmxlIiwiZmllbGRPcHRpb25zU2VsZWN0b3IiLCJtdWx0aVNlbGVjdCIsInBsYWNlaG9sZGVyIiwicGxhY2VtZW50Iiwib25TZWxlY3QiLCJmaWVsZExpc3RJdGVtU2VsZWN0b3IiLCJDdXN0b21DaGlja2xldENvbXBvbmVudCIsIkNvbXBvbmVudCIsImFycmF5IiwiZnVuYyIsImlzUmVxdWlyZWQiLCJib29sIiwiYW55Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBb0JBOztBQUNBOztBQUNBOztBQUNBOztBQUVBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOzs7Ozs7Ozs7Ozs7QUFFQSxJQUFNQSxvQkFBb0IsR0FBRyxTQUF2QkEsb0JBQXVCLENBQUFDLENBQUMsRUFBSTtBQUFBOztBQUNoQyxNQUFNQyxVQUFVLEdBQUdELENBQUMsQ0FBQ0UsV0FBRixJQUFpQkYsQ0FBQyxDQUFDRyxJQUF0QztBQUNBLE1BQU1DLFVBQVUsR0FBR0osQ0FBQyxDQUFDSSxVQUFyQjtBQUNBLE1BQU1DLGdCQUFnQiw0QkFBR0MsbUNBQWtCQyxJQUFsQixDQUF1QixVQUFBQyxDQUFDO0FBQUEsV0FBSUEsQ0FBQyxDQUFDQyxFQUFGLEtBQVNMLFVBQWI7QUFBQSxHQUF4QixDQUFILDBEQUFHLHNCQUFrREYsV0FBM0U7O0FBQ0EsTUFBSUcsZ0JBQUosRUFBc0I7QUFDcEIscUJBQVVBLGdCQUFWLGNBQThCSixVQUE5QjtBQUNEOztBQUNELFNBQU9BLFVBQVA7QUFDRCxDQVJEOztBQVNBLElBQU1TLGtCQUFrQixHQUFHLFNBQXJCQSxrQkFBcUIsQ0FBQVYsQ0FBQztBQUFBLFNBQUlBLENBQUMsQ0FB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c0JBQVVxRCxHQUE1QixDQWhCTTtBQWlCakJOLElBQUFBLHVCQUF1QixFQUFFL0Msc0JBQVVrRDtBQWpCbEIsR0FGNkI7QUFBQSxtQ0FDNUN6QyxhQUQ0QyxrQkFzQjFCO0FBQ3BCK0IsSUFBQUEsUUFBUSxFQUFFLElBRFU7QUFFcEJILElBQUFBLEtBQUssRUFBRSxLQUZhO0FBR3BCMUIsSUFBQUEsTUFBTSxFQUFFLEVBSFk7QUFJcEJrQyxJQUFBQSxRQUFRLEVBQUUsb0JBQU0sQ0FBRSxDQUpFO0FBS3BCRCxJQUFBQSxTQUFTLEVBQUUsUUFMUztBQU1wQm5ELElBQUFBLEtBQUssRUFBRSxJQU5hO0FBT3BCbEIsSUFBQUEsVUFBVSxFQUFFLElBUFE7QUFRcEJxQyxJQUFBQSxjQUFjLEVBQUUsS0FSSTtBQVNwQjhCLElBQUFBLFdBQVcsRUFBRSxLQVRPO0FBVXBCVCxJQUFBQSxhQUFhLEVBQUUsSUFWSztBQVdwQjFDLElBQUFBLFNBQVMsRUFBRSxJQVhTO0FBWXBCb0QsSUFBQUEsV0FBVyxFQUFFO0FBWk8sR0F0QjBCO0FBOEhsRCxTQUFPbEMsYUFBUDtBQUNEOztBQUVERCxvQkFBb0IsQ0FBQ3JCLElBQXJCLEdBQTRCLENBQUNELDJCQUFELENBQTVCO2VBQ2VzQixvQiIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAoYykgMjAyMiBVYmVyIFRlY2hub2xvZ2llcywgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG5cbmltcG9ydCBSZWFjdCwge0NvbXBvbmVudH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdzdHlsZWQtY29tcG9uZW50cyc7XG5pbXBvcnQgUHJvcFR5cGVzIGZyb20gJ3Byb3AtdHlwZXMnO1xuaW1wb3J0IHtjcmVhdGVTZWxlY3Rvcn0gZnJvbSAncmVzZWxlY3QnO1xuXG5pbXBvcnQgSXRlbVNlbGVjdG9yIGZyb20gJy4vaXRlbS1zZWxlY3Rvci9pdGVtLXNlbGVjdG9yJztcbmltcG9ydCB7Y2xhc3NMaXN0fSBmcm9tICcuL2l0ZW0tc2VsZWN0b3IvZHJvcGRvd24tbGlzdCc7XG5pbXBvcnQge3RvQXJyYXl9IGZyb20gJ3V0aWxzL3V0aWxzJztcbmltcG9ydCB7bm90TnVsbG9yVW5kZWZpbmVkfSBmcm9tICd1dGlscy9kYXRhLXV0aWxzJztcbmltcG9ydCBGaWVsZFRva2VuRmFjdG9yeSBmcm9tICcuLi9jb21tb24vZmllbGQtdG9rZW4nO1xuaW1wb3J0IHtGSUVMRF9UWVBFU19BR0dSRUdBVE9SUywgRklFTERfQUdHUkVHQVRPUlN9IGZyb20gJ2NvbnN0YW50cy9kZWZhdWx0LXNldHRpbmdzJztcblxuY29uc3QgZGVmYXVsdERpc3BsYXlPcHRpb24gPSBkID0+IHtcbiAgY29uc3Qgb3B0aW9uTmFtZSA9IGQuZGlzcGxheU5hbWUgfHwgZC5uYW1lO1xuICBjb25zdCBhZ2dyZWdhdG9yID0gZC5hZ2dyZWdhdG9yO1xuICBjb25zdCBhZ2dlZ2F0b3JEaXNwbGF5ID0gRklFTERfQUdHUkVHQVRPUlMuZmluZChhID0+IGEuaWQgPT09IGFnZ3JlZ2F0b3IpPy5kaXNwbGF5TmFtZTtcbiAgaWYgKGFnZ2VnYXRvckRpc3BsYXkpIHtcbiAgICByZXR1cm4gYCR7YWdnZWdhdG9yRGlzcGxheX0oJHtvcHRpb25OYW1lfSlgO1xuICB9XG4gIHJldHVybiBvcHRpb25OYW1lO1xufTtcbmNvbnN0IGRlZmF1bHRWYWx1ZU9wdGlvbiA9IGQgPT4gZC5uYW1lO1xuXG5jb25zdCBTdHlsZWRUb2tlbiA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiAwIDAgMCBhdXRvO1xuYDtcbmNvbnN0IFN0eWxlZEZpZWxkTGlzdEl0ZW0gPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAxIDEgYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICBsaW5lLWhlaWdodDogMDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbmA7XG5cbkZpZWxkTGlzdEl0ZW1GYWN0b3J5RmFjdG9yeS5kZXBzID0gW0ZpZWxkVG9rZW5GYWN0b3J5XTtcbi8vIGN1c3RvbSBsaXN0IEl0ZW1cbmV4cG9ydCBmdW5jdGlvbiBGaWVsZExpc3RJdGVtRmFjdG9yeUZhY3RvcnkoRmllbGRUb2tlbikge1xuICBjb25zdCBGaWVsZExpc3RJdGVtRmFjdG9yeSA9IChzaG93VG9rZW4gPSB0cnVlKSA9PiB7XG4gICAgY29uc3QgRmllbGRMaXN0SXRlbSA9ICh7dmFsdWUsIGRpc3BsYXlPcHRpb24gPSBkZWZhdWx0RGlzcGxheU9wdGlvbn0pID0+IHtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxTdHlsZWRGaWVsZExpc3RJdGVtIGNsYXNzTmFtZT1cImZpZWxkLXNlbGVjdG9yX2xpc3QtaXRlbVwiPlxuICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT17Y2xhc3NMaXN0Lmxpc3RJdGVtQW5jaG9yfT57ZGlzcGxheU9wdGlvbih2YWx1ZSl9PC9zcGFuPlxuICAgICAgICAgIHtzaG93VG9rZW4gJiYgdmFsdWUudHlwZSA/IChcbiAgICAgICAgICAgIDxTdHlsZWRUb2tlbj5cbiAgICAgICAgICAgICAgPEZpZWxkVG9rZW4gdHlwZT17dmFsdWUudHlwZX0gLz5cbiAgICAgICAgICAgIDwvU3R5bGVkVG9rZW4+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvU3R5bGVkRmllbGRMaXN0SXRlbT5cbiAgICAgICk7XG4gICAgfTtcbiAgICByZXR1cm4gRmllbGRMaXN0SXRlbTtcbiAgfTtcbiAgcmV0dXJuIEZpZWxkTGlzdEl0ZW1GYWN0b3J5O1xufVxuXG5jb25zdCBTdWdnZXN0ZWRGaWVsZEhlYWRlciA9ICgpID0+IDxkaXY+U3VnZ2VzdGVkIEZpZWxkPC9kaXY+O1xuXG5jb25zdCBGaWVsZFR5cGUgPSBQcm9wVHlwZXMub25lT2ZUeXBlKFtcbiAgUHJvcFR5cGVzLnN0cmluZyxcbiAgUHJvcFR5cGVzLmFycmF5T2YoUHJvcFR5cGVzLnN0cmluZyksXG4gIFByb3BUeXBlcy5hcnJheU9mKFxuICAgIFByb3BUeXBlcy5zaGFwZSh7XG4gICAgICBuYW1lOiBQcm9wVHlwZXMuc3RyaW5nLFxuICAgICAgZm9ybWF0OiBQcm9wVHlwZXMuc3RyaW5nXG4gICAgfSlcbiAgKSxcbiAgUHJvcFR5cGVzLnNoYXBlKHtcbiAgICBmb3JtYXQ6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgaWQ6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgbmFtZTogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBmaWVsZElkeDogUHJvcFR5cGVzLm51bWJlcixcbiAgICB0eXBlOiBQcm9wVHlwZXMubnVtYmVyXG4gIH0pXG5dKTtcblxuZnVuY3Rpb24gRmllbGRTZWxlY3RvckZhY3RvcnkoRmllbGRMaXN0SXRlbUZhY3RvcnkpIHtcbiAgY2xhc3MgRmllbGRTZWxlY3RvciBleHRlbmRzIENvbXBvbmVudCB7XG4gICAgc3RhdGljIHByb3BUeXBlcyA9IHtcbiAgICAgIGZpZWxkczogUHJvcFR5cGVzLm9uZU9mVHlwZShbUHJvcFR5cGVzLmFycmF5LCBQcm9wVHlwZXMuYXJyYXlPZihGaWVsZFR5cGUpXSksXG4gICAgICBvblNlbGVjdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIHBsYWNlbWVudDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICAgIHZhbHVlOiBGaWVsZFR5cGUsXG4gICAgICBhZ2dyZWdhdG9yOiBQcm9wVHlwZXMuc3RyaW5nLFxuICAgICAgd2l0aEFnZ3JlZ2F0b3I6IFByb3BUeXBlcy5ib29sLFxuICAgICAgZmlsdGVyRmllbGRUeXBlczogUHJvcFR5cGVzLm9uZU9mVHlwZShbRmllbGRUeXBlLCBQcm9wVHlwZXMuYXJyYXlPZihGaWVsZFR5cGUpXSksXG4gICAgICBpbnB1dFRoZW1lOiBQcm9wVHlwZXMuc3RyaW5nLFxuICAgICAgcGxhY2Vob2xkZXI6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgICBlcmFzYWJsZTogUHJvcFR5cGVzLmJvb2wsXG4gICAgICBlcnJvcjogUHJvcFR5cGVzLmJvb2wsXG4gICAgICBpc0xvYWRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgICAgbXVsdGlTZWxlY3Q6IFByb3BUeXBlcy5ib29sLFxuICAgICAgY2xvc2VPblNlbGVjdDogUHJvcFR5cGVzLmJvb2wsXG4gICAgICBzaG93VG9rZW46IFByb3BUeXBlcy5ib29sLFxuICAgICAgc3VnZ2VzdGVkOiBQcm9wVHlwZXMuYXJyYXlPZihQcm9wVHlwZXMuYW55KSxcbiAgICAgIEN1c3RvbUNoaWNrbGV0Q29tcG9uZW50OiBQcm9wVHlwZXMuZnVuY1xuICAgIH07XG5cbiAgICBzdGF0aWMgZGVmYXVsdFByb3BzID0ge1xuICAgICAgZXJhc2FibGU6IHRydWUsXG4gICAgICBlcnJvcjogZmFsc2UsXG4gICAgICBmaWVsZHM6IFtdLFxuICAgICAgb25TZWxlY3Q6ICgpID0+IHt9LFxuICAgICAgcGxhY2VtZW50OiAnYm90dG9tJyxcbiAgICAgIHZhbHVlOiBudWxsLFxuICAgICAgYWdncmVnYXRvcjogbnVsbCxcbiAgICAgIHdpdGhBZ2dyZWdhdG9yOiBmYWxzZSxcbiAgICAgIG11bHRpU2VsZWN0OiBmYWxzZSxcbiAgICAgIGNsb3NlT25TZWxlY3Q6IHRydWUsXG4gICAgICBzaG93VG9rZW46IHRydWUsXG4gICAgICBwbGFjZWhvbGRlcjogJ3BsYWNlaG9sZGVyLnNlbGVjdEZpZWxkJ1xuICAgIH07XG5cbiAgICBmaWVsZHNTZWxlY3RvciA9IHByb3BzID0+IHByb3BzLmZpZWxkcztcbiAgICBmaWx0ZXJlZEZpZWxkc1NlbGVjdG9yID0gcHJvcHMgPT5cbiAgICAgIHByb3BzLndpdGhBZ2dyZWdhdG9yID8gcHJvcHMuZmllbGRzIDogcHJvcHMuZmllbGRzLmZpbHRlcihcbiAgICAgICAgZmllbGQgPT5cbiAgICAgICAgICAhdG9BcnJheShwcm9wcy52YWx1ZSkuZmluZChkID0+IChkLm5hbWUgPyBkLm5hbWUgPT09IGZpZWxkLm5hbWUgOiBkID09PSBmaWVsZC5uYW1lKSlcbiAgICAgICk7XG4gICAgdmFsdWVTZWxlY3RvciA9IHByb3BzID0+IHByb3BzLnZhbHVlO1xuICAgIGFnZ3JlZ2F0b3JTZWxlY3RvciA9IHByb3BzID0+IHByb3BzLmFnZ3JlZ2F0b3I7XG4gICAgZmlsdGVyRmllbGRUeXBlc1NlbGVjdG9yID0gcHJvcHMgPT4gcHJvcHMuZmlsdGVyRmllbGRUeXBlcztcbiAgICBzaG93VG9rZW5TZWxlY3RvciA9IHByb3BzID0+IHByb3BzLnNob3dUb2tlbjtcbiAgICB3aXRoQWdncmVnYXRvclNlbGVjdG9yID0gcHJvcHMgPT4gcHJvcHMud2l0aEFnZ3JlZ2F0b3JcblxuICAgIHNlbGVjdGVkSXRlbXNTZWxlY3RvciA9IGNyZWF0ZVNlbGVjdG9yKFxuICAgICAgdGhpcy5maWVsZHNTZWxlY3RvcixcbiAgICAgIHRoaXMudmFsdWVTZWxlY3RvcixcbiAgICAgIHRoaXMuYWdncmVnYXRvclNlbGVjdG9yLFxuICAgICAgKGZpZWxkcywgdmFsdWUsIGFnZ3JlZ2F0b3IpID0+XG4gICAgICAgIHRvQXJyYXkodmFsdWUpXG4gICAgICAgICAgLm1hcChkID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGZpZWxkID0gZmllbGRzLmZpbmQoZiA9PlxuICAgICAgICAgICAgICBub3ROdWxsb3JVbmRlZmluZWQoZCkgJiYgZC5uYW1lXG4gICAgICAgICAgICAgICAgPyBkLm5hbWUgPT09IGRlZmF1bHRWYWx1ZU9wdGlvbihmKVxuICAgICAgICAgICAgICAgIDogZCA9PT0gZGVmYXVsdFZhbHVlT3B0aW9uKGYpXG4gICAgICAgICAgICApO1xuXG4gICAgICAgICAgICBpZiAoZmllbGQgJiYgYWdncmVnYXRvcikge1xuICAgICAgICAgICAgICByZXR1cm4gey4uLmZpZWxkLCBhZ2dyZWdhdG9yfTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBmaWVsZDtcbiAgICAgICAgICB9KVxuICAgICAgICAgIC5maWx0ZXIoZCA9PiBkKVxuICAgICk7XG5cbiAgICBmaWVsZE9wdGlvbnNTZWxlY3RvciA9IGNyZWF0ZVNlbGVjdG9yKFxuICAgICAgdGhpcy5maWx0ZXJlZEZpZWxkc1NlbGVjdG9yLFxuICAgICAgdGhpcy52YWx1ZVNlbGVjdG9yLFxuICAgICAgdGhpcy5maWx0ZXJGaWVsZFR5cGVzU2VsZWN0b3IsXG4gICAgICB0aGlzLmFnZ3JlZ2F0b3JTZWxlY3RvcixcbiAgICAgIHRoaXMud2l0aEFnZ3JlZ2F0b3JTZWxlY3RvcixcbiAgICAgIChmaWVsZHMsIHZhbHVlLCBmaWx0ZXJGaWVsZFR5cGVzLCBhZ2dyZWdhdG9yLCB3aXRoQWdncmVnYXRvcikgPT4ge1xuICAgICAgICBjb25zdCBmaWVsZHNXaXRoQWdncmVnYXRvcnMgPSBmaWVsZHMubWFwKGZpZWxkID0+IHtcbiAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgLi4uZmllbGQsXG4gICAgICAgICAgICAuLi4od2l0aEFnZ3JlZ2F0b3IgJiYge1xuICAgICAgICAgICAgICBhZ2dyZWdhdG9yczogRklFTERfVFlQRVNfQUdHUkVHQVRPUlNbZmllbGQudHlwZV0/LmZpbHRlcihhZ2cgPT4ge1xuICAgICAgICAgICAgICAgIHJldHVybiBmaWVsZC5pZCA9PT0gdmFsdWUgPyBhZ2cgIT09IGFnZ3JlZ2F0b3IgOiB0cnVlO1xuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICB9O1xuICAgICAgICB9KTtcbiAgICAgICAgaWYgKCFmaWx0ZXJGaWVsZFR5cGVzKSB7XG4gICAgICAgICAgcmV0dXJuIGZpZWxkc1dpdGhBZ2dyZWdhdG9ycztcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBmaWx0ZXJzID0gQXJyYXkuaXNBcnJheShmaWx0ZXJGaWVsZFR5cGVzKSA/IGZpbHRlckZpZWxkVHlwZXMgOiBbZmlsdGVyRmllbGRUeXBlc107XG4gICAgICAgIHJldHVybiBmaWVsZHNXaXRoQWdncmVnYXRvcnMuZmlsdGVyKGYgPT4gZmlsdGVycy5pbmNsdWRlcyhmLnR5cGUpKTtcbiAgICAgIH1cbiAgICApO1xuXG4gICAgZmllbGRMaXN0SXRlbVNlbGVjdG9yID0gY3JlYXRlU2VsZWN0b3IodGhpcy5zaG93VG9rZW5TZWxlY3RvciwgRmllbGRMaXN0SXRlbUZhY3RvcnkpO1xuXG4gICAgcmVuZGVyKCkge1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmaWVsZC1zZWxlY3RvclwiPlxuICAgICAgICAgIDxJdGVtU2VsZWN0b3JcbiAgICAgICAgICAgIGdldE9wdGlvblZhbHVlPXtkID0+IGR9XG4gICAgICAgICAgICBjbG9zZU9uU2VsZWN0PXt0aGlzLnByb3BzLmNsb3NlT25TZWxlY3R9XG4gICAgICAgICAgICBkaXNwbGF5T3B0aW9uPXtkZWZhdWx0RGlzcGxheU9wdGlvbn1cbiAgICAgICAgICAgIGZpbHRlck9wdGlvbj1cImRpc3BsYXlOYW1lXCJcbiAgICAgICAgICAgIGZpeGVkT3B0aW9ucz17dGhpcy5wcm9wcy5zdWdnZXN0ZWR9XG4gICAgICAgICAgICBpbnB1dFRoZW1lPXt0aGlzLnByb3BzLmlucHV0VGhlbWV9XG4gICAgICAgICAgICBzaXplPXt0aGlzLnByb3BzLnNpemV9XG4gICAgICAgICAgICBpc0Vycm9yPXt0aGlzLnByb3BzLmVycm9yfVxuICAgICAgICAgICAgaXNMb2FkaW5nPXt0aGlzLnByb3BzLmlzTG9hZGluZ31cbiAgICAgICAgICAgIHNlbGVjdGVkSXRlbXM9e3RoaXMuc2VsZWN0ZWRJdGVtc1NlbGVjdG9yKHRoaXMucHJvcHMpfVxuICAgICAgICAgICAgZXJhc2FibGU9e3RoaXMucHJvcHMuZXJhc2FibGV9XG4gICAgICAgICAgICBvcHRpb25zPXt0aGlzLmZpZWxkT3B0aW9uc1NlbGVjdG9yKHRoaXMucHJvcHMpfVxuICAgICAgICAgICAgbXVsdGlTZWxlY3Q9e3RoaXMucHJvcHMubXVsdGlTZWxlY3R9XG4gICAgICAgICAgICBwbGFjZWhvbGRlcj17dGhpcy5wcm9wcy5wbGFjZWhvbGRlcn1cbiAgICAgICAgICAgIHBsYWNlbWVudD17dGhpcy5wcm9wcy5wbGFjZW1lbnR9XG4gICAgICAgICAgICBvbkNoYW5nZT17dGhpcy5wcm9wcy5vblNlbGVjdH1cbiAgICAgICAgICAgIERyb3BEb3duTGluZUl0ZW1SZW5kZXJDb21wb25lbnQ9e3RoaXMuZmllbGRMaXN0SXRlbVNlbGVjdG9yKHRoaXMucHJvcHMpfVxuICAgICAgICAgICAgRHJvcGRvd25IZWFkZXJDb21wb25lbnQ9e3RoaXMucHJvcHMuc3VnZ2VzdGVkID8gU3VnZ2VzdGVkRmllbGRIZWFkZXIgOiBudWxsfVxuICAgICAgICAgICAgQ3VzdG9tQ2hpY2tsZXRDb21wb25lbnQ9e3RoaXMucHJvcHMuQ3VzdG9tQ2hpY2tsZXRDb21wb25lbnR9XG4gICAgICAgICAgICB3aXRoU3ViT3B0aW9ucz17dGhpcy5wcm9wcy53aXRoQWdncmVnYXRvcn1cbiAgICAgICAgICAvPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICk7XG4gICAgfVxuICB9XG4gIHJldHVybiBGaWVsZFNlbGVjdG9yO1xufVxuXG5GaWVsZFNlbGVjdG9yRmFjdG9yeS5kZXBzID0gW0ZpZWxkTGlzdEl0ZW1GYWN0b3J5RmFjdG9yeV07XG5leHBvcnQgZGVmYXVsdCBGaWVsZFNlbGVjdG9yRmFjdG9yeTtcbiJdfQ==
282
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2NvbW1vbi9maWVsZC1zZWxlY3Rvci5qcyJdLCJuYW1lcyI6WyJkZWZhdWx0RGlzcGxheU9wdGlvbiIsImQiLCJvcHRpb25OYW1lIiwiZGlzcGxheU5hbWUiLCJuYW1lIiwiYWdncmVnYXRvciIsImFnZ2VnYXRvckRpc3BsYXkiLCJGSUVMRF9BR0dSRUdBVE9SUyIsImZpbmQiLCJhIiwiaWQiLCJkZWZhdWx0VmFsdWVPcHRpb24iLCJTdHlsZWRUb2tlbiIsInN0eWxlZCIsImRpdiIsIlN0eWxlZEZpZWxkTGlzdEl0ZW0iLCJGaWVsZExpc3RJdGVtRmFjdG9yeUZhY3RvcnkiLCJkZXBzIiwiRmllbGRUb2tlbkZhY3RvcnkiLCJGaWVsZFRva2VuIiwiRmllbGRMaXN0SXRlbUZhY3RvcnkiLCJzaG93VG9rZW4iLCJGaWVsZExpc3RJdGVtIiwidmFsdWUiLCJkaXNwbGF5T3B0aW9uIiwiY2xhc3NMaXN0IiwibGlzdEl0ZW1BbmNob3IiLCJ0eXBlIiwiU3VnZ2VzdGVkRmllbGRIZWFkZXIiLCJGaWVsZFR5cGUiLCJQcm9wVHlwZXMiLCJvbmVPZlR5cGUiLCJzdHJpbmciLCJhcnJheU9mIiwic2hhcGUiLCJmb3JtYXQiLCJmaWVsZElkeCIsIm51bWJlciIsIkZpZWxkU2VsZWN0b3JGYWN0b3J5IiwiRmllbGRTZWxlY3RvciIsInByb3BzIiwiZmllbGRzIiwid2l0aEFnZ3JlZ2F0b3IiLCJmaWx0ZXIiLCJmaWVsZCIsImZpbHRlckZpZWxkVHlwZXMiLCJmaWVsZHNTZWxlY3RvciIsInZhbHVlU2VsZWN0b3IiLCJhZ2dyZWdhdG9yU2VsZWN0b3IiLCJtYXAiLCJmIiwiZmlsdGVyZWRGaWVsZHNTZWxlY3RvciIsImZpbHRlckZpZWxkVHlwZXNTZWxlY3RvciIsIndpdGhBZ2dyZWdhdG9yU2VsZWN0b3IiLCJmaWVsZHNXaXRoQWdncmVnYXRvcnMiLCJhZ2dyZWdhdG9ycyIsIkZJRUxEX1RZUEVTX0FHR1JFR0FUT1JTIiwiYWdnIiwiZmlsdGVycyIsIkFycmF5IiwiaXNBcnJheSIsImluY2x1ZGVzIiwic2hvd1Rva2VuU2VsZWN0b3IiLCJjbG9zZU9uU2VsZWN0Iiwic3VnZ2VzdGVkIiwiaW5wdXRUaGVtZSIsInNpemUiLCJlcnJvciIsImlzTG9hZGluZyIsInNlbGVjdGVkSXRlbXNTZWxlY3RvciIsImVyYXNhYmxlIiwiZmllbGRPcHRpb25zU2VsZWN0b3IiLCJtdWx0aVNlbGVjdCIsInBsYWNlaG9sZGVyIiwicGxhY2VtZW50Iiwib25TZWxlY3QiLCJmaWVsZExpc3RJdGVtU2VsZWN0b3IiLCJDdXN0b21DaGlja2xldENvbXBvbmVudCIsIm9uQmx1ciIsIm9uRm9jdXMiLCJDb21wb25lbnQiLCJhcnJheSIsImZ1bmMiLCJpc1JlcXVpcmVkIiwiYm9vbCIsImFueSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQW9CQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFFQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7Ozs7Ozs7Ozs7O0FBRUEsSUFBTUEsb0JBQW9CLEdBQUcsU0FBdkJBLG9CQUF1QixDQUFBQyxDQUFDLEVBQUk7QUFBQTs7QUFDaEMsTUFBTUMsVUFBVSxHQUFHRCxDQUFDLENBQUNFLFdBQUYsSUFBaUJGLENBQUMsQ0FBQ0csSUFBdEM7QUFDQSxNQUFNQyxVQUFVLEdBQUdKLENBQUMsQ0FBQ0ksVUFBckI7QUFDQSxNQUFNQyxnQkFBZ0IsNEJBQUdDLG1DQUFrQkMsSUFBbEIsQ0FBdUIsVUFBQUMsQ0FBQztBQUFBLFdBQUlBLENBQUMsQ0FBQ0MsRUFBRixLQUFTTCxVQUFiO0FBQUEsR0FBeEIsQ0FBSCwwREFBRyxzQkFBa0RGLFdBQTNFOztBQUNBLE1BQUlHLGdCQUFKLEVBQXNCO0FBQ3BCLHFCQUFVQSxnQkFBVixjQUE4QkosVUFBOUI7QUFDRDs7QUFDRCxTQUFPQSxVQUFQO0FBQ0QsQ0FSRDs7QUFTQSxJQUFNUyxrQkFBa0IsR0FBRyxTQUFyQkEsa0JBQXFCLENBQUFWLENBQUM7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YUFBYSxFQUFFakMsc0JBQVVzRCxJQWRSO0FBZWpCL0QsSUFBQUEsU0FBUyxFQUFFUyxzQkFBVXNELElBZko7QUFnQmpCcEIsSUFBQUEsU0FBUyxFQUFFbEMsc0JBQVVHLE9BQVYsQ0FBa0JILHNCQUFVdUQsR0FBNUIsQ0FoQk07QUFpQmpCUixJQUFBQSx1QkFBdUIsRUFBRS9DLHNCQUFVb0QsSUFqQmxCO0FBa0JqQkosSUFBQUEsTUFBTSxFQUFFaEQsc0JBQVVvRCxJQWxCRDtBQW1CakJILElBQUFBLE9BQU8sRUFBRWpELHNCQUFVb0Q7QUFuQkYsR0FGNkI7QUFBQSxtQ0FDNUMzQyxhQUQ0QyxrQkF3QjFCO0FBQ3BCK0IsSUFBQUEsUUFBUSxFQUFFLElBRFU7QUFFcEJILElBQUFBLEtBQUssRUFBRSxLQUZhO0FBR3BCMUIsSUFBQUEsTUFBTSxFQUFFLEVBSFk7QUFJcEJrQyxJQUFBQSxRQUFRLEVBQUUsb0JBQU0sQ0FBRSxDQUpFO0FBS3BCRCxJQUFBQSxTQUFTLEVBQUUsUUFMUztBQU1wQm5ELElBQUFBLEtBQUssRUFBRSxJQU5hO0FBT3BCbEIsSUFBQUEsVUFBVSxFQUFFLElBUFE7QUFRcEJxQyxJQUFBQSxjQUFjLEVBQUUsS0FSSTtBQVNwQjhCLElBQUFBLFdBQVcsRUFBRSxLQVRPO0FBVXBCVCxJQUFBQSxhQUFhLEVBQUUsSUFWSztBQVdwQjFDLElBQUFBLFNBQVMsRUFBRSxJQVhTO0FBWXBCb0QsSUFBQUEsV0FBVyxFQUFFO0FBWk8sR0F4QjBCO0FBb0lsRCxTQUFPbEMsYUFBUDtBQUNEOztBQUVERCxvQkFBb0IsQ0FBQ3JCLElBQXJCLEdBQTRCLENBQUNELDJCQUFELENBQTVCO2VBQ2VzQixvQiIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAoYykgMjAyMiBVYmVyIFRlY2hub2xvZ2llcywgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG5cbmltcG9ydCBSZWFjdCwge0NvbXBvbmVudH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdzdHlsZWQtY29tcG9uZW50cyc7XG5pbXBvcnQgUHJvcFR5cGVzIGZyb20gJ3Byb3AtdHlwZXMnO1xuaW1wb3J0IHtjcmVhdGVTZWxlY3Rvcn0gZnJvbSAncmVzZWxlY3QnO1xuXG5pbXBvcnQgSXRlbVNlbGVjdG9yIGZyb20gJy4vaXRlbS1zZWxlY3Rvci9pdGVtLXNlbGVjdG9yJztcbmltcG9ydCB7Y2xhc3NMaXN0fSBmcm9tICcuL2l0ZW0tc2VsZWN0b3IvZHJvcGRvd24tbGlzdCc7XG5pbXBvcnQge3RvQXJyYXl9IGZyb20gJ3V0aWxzL3V0aWxzJztcbmltcG9ydCB7bm90TnVsbG9yVW5kZWZpbmVkfSBmcm9tICd1dGlscy9kYXRhLXV0aWxzJztcbmltcG9ydCBGaWVsZFRva2VuRmFjdG9yeSBmcm9tICcuLi9jb21tb24vZmllbGQtdG9rZW4nO1xuaW1wb3J0IHtGSUVMRF9UWVBFU19BR0dSRUdBVE9SUywgRklFTERfQUdHUkVHQVRPUlN9IGZyb20gJ2NvbnN0YW50cy9kZWZhdWx0LXNldHRpbmdzJztcblxuY29uc3QgZGVmYXVsdERpc3BsYXlPcHRpb24gPSBkID0+IHtcbiAgY29uc3Qgb3B0aW9uTmFtZSA9IGQuZGlzcGxheU5hbWUgfHwgZC5uYW1lO1xuICBjb25zdCBhZ2dyZWdhdG9yID0gZC5hZ2dyZWdhdG9yO1xuICBjb25zdCBhZ2dlZ2F0b3JEaXNwbGF5ID0gRklFTERfQUdHUkVHQVRPUlMuZmluZChhID0+IGEuaWQgPT09IGFnZ3JlZ2F0b3IpPy5kaXNwbGF5TmFtZTtcbiAgaWYgKGFnZ2VnYXRvckRpc3BsYXkpIHtcbiAgICByZXR1cm4gYCR7YWdnZWdhdG9yRGlzcGxheX0oJHtvcHRpb25OYW1lfSlgO1xuICB9XG4gIHJldHVybiBvcHRpb25OYW1lO1xufTtcbmNvbnN0IGRlZmF1bHRWYWx1ZU9wdGlvbiA9IGQgPT4gZC5uYW1lO1xuXG5jb25zdCBTdHlsZWRUb2tlbiA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiAwIDAgMCBhdXRvO1xuYDtcbmNvbnN0IFN0eWxlZEZpZWxkTGlzdEl0ZW0gPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAxIDEgYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICBsaW5lLWhlaWdodDogMDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbmA7XG5cbkZpZWxkTGlzdEl0ZW1GYWN0b3J5RmFjdG9yeS5kZXBzID0gW0ZpZWxkVG9rZW5GYWN0b3J5XTtcbi8vIGN1c3RvbSBsaXN0IEl0ZW1cbmV4cG9ydCBmdW5jdGlvbiBGaWVsZExpc3RJdGVtRmFjdG9yeUZhY3RvcnkoRmllbGRUb2tlbikge1xuICBjb25zdCBGaWVsZExpc3RJdGVtRmFjdG9yeSA9IChzaG93VG9rZW4gPSB0cnVlKSA9PiB7XG4gICAgY29uc3QgRmllbGRMaXN0SXRlbSA9ICh7dmFsdWUsIGRpc3BsYXlPcHRpb24gPSBkZWZhdWx0RGlzcGxheU9wdGlvbn0pID0+IHtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxTdHlsZWRGaWVsZExpc3RJdGVtIGNsYXNzTmFtZT1cImZpZWxkLXNlbGVjdG9yX2xpc3QtaXRlbVwiPlxuICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT17Y2xhc3NMaXN0Lmxpc3RJdGVtQW5jaG9yfT57ZGlzcGxheU9wdGlvbih2YWx1ZSl9PC9zcGFuPlxuICAgICAgICAgIHtzaG93VG9rZW4gJiYgdmFsdWUudHlwZSA/IChcbiAgICAgICAgICAgIDxTdHlsZWRUb2tlbj5cbiAgICAgICAgICAgICAgPEZpZWxkVG9rZW4gdHlwZT17dmFsdWUudHlwZX0gLz5cbiAgICAgICAgICAgIDwvU3R5bGVkVG9rZW4+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvU3R5bGVkRmllbGRMaXN0SXRlbT5cbiAgICAgICk7XG4gICAgfTtcbiAgICByZXR1cm4gRmllbGRMaXN0SXRlbTtcbiAgfTtcbiAgcmV0dXJuIEZpZWxkTGlzdEl0ZW1GYWN0b3J5O1xufVxuXG5jb25zdCBTdWdnZXN0ZWRGaWVsZEhlYWRlciA9ICgpID0+IDxkaXY+U3VnZ2VzdGVkIEZpZWxkPC9kaXY+O1xuXG5jb25zdCBGaWVsZFR5cGUgPSBQcm9wVHlwZXMub25lT2ZUeXBlKFtcbiAgUHJvcFR5cGVzLnN0cmluZyxcbiAgUHJvcFR5cGVzLmFycmF5T2YoUHJvcFR5cGVzLnN0cmluZyksXG4gIFByb3BUeXBlcy5hcnJheU9mKFxuICAgIFByb3BUeXBlcy5zaGFwZSh7XG4gICAgICBuYW1lOiBQcm9wVHlwZXMuc3RyaW5nLFxuICAgICAgZm9ybWF0OiBQcm9wVHlwZXMuc3RyaW5nXG4gICAgfSlcbiAgKSxcbiAgUHJvcFR5cGVzLnNoYXBlKHtcbiAgICBmb3JtYXQ6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgaWQ6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgbmFtZTogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBmaWVsZElkeDogUHJvcFR5cGVzLm51bWJlcixcbiAgICB0eXBlOiBQcm9wVHlwZXMubnVtYmVyXG4gIH0pXG5dKTtcblxuZnVuY3Rpb24gRmllbGRTZWxlY3RvckZhY3RvcnkoRmllbGRMaXN0SXRlbUZhY3RvcnkpIHtcbiAgY2xhc3MgRmllbGRTZWxlY3RvciBleHRlbmRzIENvbXBvbmVudCB7XG4gICAgc3RhdGljIHByb3BUeXBlcyA9IHtcbiAgICAgIGZpZWxkczogUHJvcFR5cGVzLm9uZU9mVHlwZShbUHJvcFR5cGVzLmFycmF5LCBQcm9wVHlwZXMuYXJyYXlPZihGaWVsZFR5cGUpXSksXG4gICAgICBvblNlbGVjdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIHBsYWNlbWVudDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICAgIHZhbHVlOiBGaWVsZFR5cGUsXG4gICAgICBhZ2dyZWdhdG9yOiBQcm9wVHlwZXMuc3RyaW5nLFxuICAgICAgd2l0aEFnZ3JlZ2F0b3I6IFByb3BUeXBlcy5ib29sLFxuICAgICAgZmlsdGVyRmllbGRUeXBlczogUHJvcFR5cGVzLm9uZU9mVHlwZShbRmllbGRUeXBlLCBQcm9wVHlwZXMuYXJyYXlPZihGaWVsZFR5cGUpXSksXG4gICAgICBpbnB1dFRoZW1lOiBQcm9wVHlwZXMuc3RyaW5nLFxuICAgICAgcGxhY2Vob2xkZXI6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgICBlcmFzYWJsZTogUHJvcFR5cGVzLmJvb2wsXG4gICAgICBlcnJvcjogUHJvcFR5cGVzLmJvb2wsXG4gICAgICBpc0xvYWRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgICAgbXVsdGlTZWxlY3Q6IFByb3BUeXBlcy5ib29sLFxuICAgICAgY2xvc2VPblNlbGVjdDogUHJvcFR5cGVzLmJvb2wsXG4gICAgICBzaG93VG9rZW46IFByb3BUeXBlcy5ib29sLFxuICAgICAgc3VnZ2VzdGVkOiBQcm9wVHlwZXMuYXJyYXlPZihQcm9wVHlwZXMuYW55KSxcbiAgICAgIEN1c3RvbUNoaWNrbGV0Q29tcG9uZW50OiBQcm9wVHlwZXMuZnVuYyxcbiAgICAgIG9uQmx1cjogUHJvcFR5cGVzLmZ1bmMsXG4gICAgICBvbkZvY3VzOiBQcm9wVHlwZXMuZnVuY1xuICAgIH07XG5cbiAgICBzdGF0aWMgZGVmYXVsdFByb3BzID0ge1xuICAgICAgZXJhc2FibGU6IHRydWUsXG4gICAgICBlcnJvcjogZmFsc2UsXG4gICAgICBmaWVsZHM6IFtdLFxuICAgICAgb25TZWxlY3Q6ICgpID0+IHt9LFxuICAgICAgcGxhY2VtZW50OiAnYm90dG9tJyxcbiAgICAgIHZhbHVlOiBudWxsLFxuICAgICAgYWdncmVnYXRvcjogbnVsbCxcbiAgICAgIHdpdGhBZ2dyZWdhdG9yOiBmYWxzZSxcbiAgICAgIG11bHRpU2VsZWN0OiBmYWxzZSxcbiAgICAgIGNsb3NlT25TZWxlY3Q6IHRydWUsXG4gICAgICBzaG93VG9rZW46IHRydWUsXG4gICAgICBwbGFjZWhvbGRlcjogJ3BsYWNlaG9sZGVyLnNlbGVjdEZpZWxkJ1xuICAgIH07XG5cbiAgICBmaWVsZHNTZWxlY3RvciA9IHByb3BzID0+IHByb3BzLmZpZWxkcztcbiAgICBmaWx0ZXJlZEZpZWxkc1NlbGVjdG9yID0gcHJvcHMgPT5cbiAgICAgIHByb3BzLndpdGhBZ2dyZWdhdG9yXG4gICAgICAgID8gcHJvcHMuZmllbGRzXG4gICAgICAgIDogcHJvcHMuZmllbGRzLmZpbHRlcihcbiAgICAgICAgICAgIGZpZWxkID0+XG4gICAgICAgICAgICAgICF0b0FycmF5KHByb3BzLnZhbHVlKS5maW5kKGQgPT4gKGQubmFtZSA/IGQubmFtZSA9PT0gZmllbGQubmFtZSA6IGQgPT09IGZpZWxkLm5hbWUpKVxuICAgICAgICAgICk7XG4gICAgdmFsdWVTZWxlY3RvciA9IHByb3BzID0+IHByb3BzLnZhbHVlO1xuICAgIGFnZ3JlZ2F0b3JTZWxlY3RvciA9IHByb3BzID0+IHByb3BzLmFnZ3JlZ2F0b3I7XG4gICAgZmlsdGVyRmllbGRUeXBlc1NlbGVjdG9yID0gcHJvcHMgPT4gcHJvcHMuZmlsdGVyRmllbGRUeXBlcztcbiAgICBzaG93VG9rZW5TZWxlY3RvciA9IHByb3BzID0+IHByb3BzLnNob3dUb2tlbjtcbiAgICB3aXRoQWdncmVnYXRvclNlbGVjdG9yID0gcHJvcHMgPT4gcHJvcHMud2l0aEFnZ3JlZ2F0b3I7XG5cbiAgICBzZWxlY3RlZEl0ZW1zU2VsZWN0b3IgPSBjcmVhdGVTZWxlY3RvcihcbiAgICAgIHRoaXMuZmllbGRzU2VsZWN0b3IsXG4gICAgICB0aGlzLnZhbHVlU2VsZWN0b3IsXG4gICAgICB0aGlzLmFnZ3JlZ2F0b3JTZWxlY3RvcixcbiAgICAgIChmaWVsZHMsIHZhbHVlLCBhZ2dyZWdhdG9yKSA9PlxuICAgICAgICB0b0FycmF5KHZhbHVlKVxuICAgICAgICAgIC5tYXAoZCA9PiB7XG4gICAgICAgICAgICBjb25zdCBmaWVsZCA9IGZpZWxkcy5maW5kKGYgPT5cbiAgICAgICAgICAgICAgbm90TnVsbG9yVW5kZWZpbmVkKGQpICYmIGQubmFtZVxuICAgICAgICAgICAgICAgID8gZC5uYW1lID09PSBkZWZhdWx0VmFsdWVPcHRpb24oZilcbiAgICAgICAgICAgICAgICA6IGQgPT09IGRlZmF1bHRWYWx1ZU9wdGlvbihmKVxuICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgaWYgKGZpZWxkICYmIGFnZ3JlZ2F0b3IpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIHsuLi5maWVsZCwgYWdncmVnYXRvcn07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gZmllbGQ7XG4gICAgICAgICAgfSlcbiAgICAgICAgICAuZmlsdGVyKGQgPT4gZClcbiAgICApO1xuXG4gICAgZmllbGRPcHRpb25zU2VsZWN0b3IgPSBjcmVhdGVTZWxlY3RvcihcbiAgICAgIHRoaXMuZmlsdGVyZWRGaWVsZHNTZWxlY3RvcixcbiAgICAgIHRoaXMudmFsdWVTZWxlY3RvcixcbiAgICAgIHRoaXMuZmlsdGVyRmllbGRUeXBlc1NlbGVjdG9yLFxuICAgICAgdGhpcy5hZ2dyZWdhdG9yU2VsZWN0b3IsXG4gICAgICB0aGlzLndpdGhBZ2dyZWdhdG9yU2VsZWN0b3IsXG4gICAgICAoZmllbGRzLCB2YWx1ZSwgZmlsdGVyRmllbGRUeXBlcywgYWdncmVnYXRvciwgd2l0aEFnZ3JlZ2F0b3IpID0+IHtcbiAgICAgICAgY29uc3QgZmllbGRzV2l0aEFnZ3JlZ2F0b3JzID0gZmllbGRzLm1hcChmaWVsZCA9PiB7XG4gICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIC4uLmZpZWxkLFxuICAgICAgICAgICAgLi4uKHdpdGhBZ2dyZWdhdG9yICYmIHtcbiAgICAgICAgICAgICAgYWdncmVnYXRvcnM6IEZJRUxEX1RZUEVTX0FHR1JFR0FUT1JTW2ZpZWxkLnR5cGVdPy5maWx0ZXIoYWdnID0+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gZmllbGQuaWQgPT09IHZhbHVlID8gYWdnICE9PSBhZ2dyZWdhdG9yIDogdHJ1ZTtcbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgfTtcbiAgICAgICAgfSk7XG4gICAgICAgIGlmICghZmlsdGVyRmllbGRUeXBlcykge1xuICAgICAgICAgIHJldHVybiBmaWVsZHNXaXRoQWdncmVnYXRvcnM7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgZmlsdGVycyA9IEFycmF5LmlzQXJyYXkoZmlsdGVyRmllbGRUeXBlcykgPyBmaWx0ZXJGaWVsZFR5cGVzIDogW2ZpbHRlckZpZWxkVHlwZXNdO1xuICAgICAgICByZXR1cm4gZmllbGRzV2l0aEFnZ3JlZ2F0b3JzLmZpbHRlcihmID0+IGZpbHRlcnMuaW5jbHVkZXMoZi50eXBlKSk7XG4gICAgICB9XG4gICAgKTtcblxuICAgIGZpZWxkTGlzdEl0ZW1TZWxlY3RvciA9IGNyZWF0ZVNlbGVjdG9yKHRoaXMuc2hvd1Rva2VuU2VsZWN0b3IsIEZpZWxkTGlzdEl0ZW1GYWN0b3J5KTtcblxuICAgIHJlbmRlcigpIHtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmllbGQtc2VsZWN0b3JcIj5cbiAgICAgICAgICA8SXRlbVNlbGVjdG9yXG4gICAgICAgICAgICBnZXRPcHRpb25WYWx1ZT17ZCA9PiBkfVxuICAgICAgICAgICAgY2xvc2VPblNlbGVjdD17dGhpcy5wcm9wcy5jbG9zZU9uU2VsZWN0fVxuICAgICAgICAgICAgZGlzcGxheU9wdGlvbj17ZGVmYXVsdERpc3BsYXlPcHRpb259XG4gICAgICAgICAgICBmaWx0ZXJPcHRpb249XCJkaXNwbGF5TmFtZVwiXG4gICAgICAgICAgICBmaXhlZE9wdGlvbnM9e3RoaXMucHJvcHMuc3VnZ2VzdGVkfVxuICAgICAgICAgICAgaW5wdXRUaGVtZT17dGhpcy5wcm9wcy5pbnB1dFRoZW1lfVxuICAgICAgICAgICAgc2l6ZT17dGhpcy5wcm9wcy5zaXplfVxuICAgICAgICAgICAgaXNFcnJvcj17dGhpcy5wcm9wcy5lcnJvcn1cbiAgICAgICAgICAgIGlzTG9hZGluZz17dGhpcy5wcm9wcy5pc0xvYWRpbmd9XG4gICAgICAgICAgICBzZWxlY3RlZEl0ZW1zPXt0aGlzLnNlbGVjdGVkSXRlbXNTZWxlY3Rvcih0aGlzLnByb3BzKX1cbiAgICAgICAgICAgIGVyYXNhYmxlPXt0aGlzLnByb3BzLmVyYXNhYmxlfVxuICAgICAgICAgICAgb3B0aW9ucz17dGhpcy5maWVsZE9wdGlvbnNTZWxlY3Rvcih0aGlzLnByb3BzKX1cbiAgICAgICAgICAgIG11bHRpU2VsZWN0PXt0aGlzLnByb3BzLm11bHRpU2VsZWN0fVxuICAgICAgICAgICAgcGxhY2Vob2xkZXI9e3RoaXMucHJvcHMucGxhY2Vob2xkZXJ9XG4gICAgICAgICAgICBwbGFjZW1lbnQ9e3RoaXMucHJvcHMucGxhY2VtZW50fVxuICAgICAgICAgICAgb25DaGFuZ2U9e3RoaXMucHJvcHMub25TZWxlY3R9XG4gICAgICAgICAgICBEcm9wRG93bkxpbmVJdGVtUmVuZGVyQ29tcG9uZW50PXt0aGlzLmZpZWxkTGlzdEl0ZW1TZWxlY3Rvcih0aGlzLnByb3BzKX1cbiAgICAgICAgICAgIERyb3Bkb3duSGVhZGVyQ29tcG9uZW50PXt0aGlzLnByb3BzLnN1Z2dlc3RlZCA/IFN1Z2dlc3RlZEZpZWxkSGVhZGVyIDogbnVsbH1cbiAgICAgICAgICAgIEN1c3RvbUNoaWNrbGV0Q29tcG9uZW50PXt0aGlzLnByb3BzLkN1c3RvbUNoaWNrbGV0Q29tcG9uZW50fVxuICAgICAgICAgICAgd2l0aFN1Yk9wdGlvbnM9e3RoaXMucHJvcHMud2l0aEFnZ3JlZ2F0b3J9XG4gICAgICAgICAgICBvbkJsdXI9e3RoaXMucHJvcHMub25CbHVyfVxuICAgICAgICAgICAgb25Gb2N1cz17dGhpcy5wcm9wcy5vbkZvY3VzfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgKTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIEZpZWxkU2VsZWN0b3I7XG59XG5cbkZpZWxkU2VsZWN0b3JGYWN0b3J5LmRlcHMgPSBbRmllbGRMaXN0SXRlbUZhY3RvcnlGYWN0b3J5XTtcbmV4cG9ydCBkZWZhdWx0IEZpZWxkU2VsZWN0b3JGYWN0b3J5O1xuIl19
@@ -196,6 +196,10 @@ var ItemSelector = /*#__PURE__*/function (_Component) {
196
196
  e.stopPropagation();
197
197
 
198
198
  if (!_this.props.disabled && !_this.props.isLoading) {
199
+ if (!_this.state.showTypeahead && _this.props.onFocus) {
200
+ _this.props.onFocus();
201
+ }
202
+
199
203
  _this.setState({
200
204
  showTypeahead: true
201
205
  });
@@ -320,6 +324,7 @@ var ItemSelector = /*#__PURE__*/function (_Component) {
320
324
  multiSelect: _propTypes["default"].bool,
321
325
  inputTheme: _propTypes["default"].string,
322
326
  onBlur: _propTypes["default"].func,
327
+ onFocus: _propTypes["default"].func,
323
328
  placeholder: _propTypes["default"].string,
324
329
  closeOnSelect: _propTypes["default"].bool,
325
330
  typeaheadPlaceholder: _propTypes["default"].string,
@@ -355,4 +360,4 @@ exports.ItemSelectorListen = ItemSelectorListen;
355
360
  var _default = (0, _reactIntl.injectIntl)((0, _reactOnclickoutside["default"])(ItemSelector));
356
361
 
357
362
  exports["default"] = _default;
358
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2NvbW1vbi9pdGVtLXNlbGVjdG9yL2l0ZW0tc2VsZWN0b3IuanMiXSwibmFtZXMiOlsiU3R5bGVkRHJvcGRvd25TZWxlY3QiLCJzdHlsZWQiLCJkaXYiLCJhdHRycyIsImNsYXNzTmFtZSIsInByb3BzIiwiaW5wdXRUaGVtZSIsInRoZW1lIiwic2Vjb25kYXJ5SW5wdXQiLCJpbnB1dExUIiwiaW5wdXQiLCJzaXplIiwiaW5wdXRCb3hIZWlnaHRTbWFsbCIsImlucHV0Qm94SGVpZ2h0IiwiZHJvcGRvd25MaXN0QW5jaG9yIiwiRHJvcGRvd25TZWxlY3RWYWx1ZSIsInNwYW4iLCJoYXNQbGFjZWhvbGRlciIsInNlbGVjdENvbG9yUGxhY2VIb2xkZXJMVCIsInNlbGVjdENvbG9yUGxhY2VIb2xkZXIiLCJzZWxlY3RDb2xvckxUIiwic2VsZWN0Q29sb3IiLCJkcm9wZG93bkxpc3RJdGVtTFQiLCJkcm9wZG93bkxpc3RJdGVtIiwiZHJvcGRvd25MaXN0QW5jaG9yTFQiLCJEcm9wZG93blNlbGVjdEFjdGlvblJpZ2h0Iiwic3VidGV4dENvbG9yIiwidGV4dENvbG9yIiwiRHJvcGRvd25XcmFwcGVyIiwiZHJvcGRvd25XcmFwcGVyWiIsInBsYWNlbWVudCIsImRyb3Bkb3duV2FwcGVyTWFyZ2luIiwicHJldmVudENsb3NlU2VsZWN0b3IiLCJJdGVtU2VsZWN0b3IiLCJzaG93VHlwZWFoZWFkIiwiZSIsInRhcmdldCIsImNsYXNzTGlzdCIsImNvbnRhaW5zIiwiX2hpZGVUeXBlYWhlYWQiLCJvbkJsdXIiLCJpdGVtIiwicHJldmVudERlZmF1bHQiLCJzdG9wUHJvcGFnYXRpb24iLCJzZWxlY3RlZEl0ZW1zIiwiaW5kZXgiLCJmaW5kSW5kZXgiLCJ0IiwiaXRlbXMiLCJzbGljZSIsImxlbmd0aCIsIm9uQ2hhbmdlIiwiY2xvc2VPblNlbGVjdCIsInNldFN0YXRlIiwiX29uQmx1ciIsImdldFZhbHVlIiwiQWNjZXNzb3IiLCJnZW5lcmF0ZU9wdGlvblRvU3RyaW5nRm9yIiwiZ2V0T3B0aW9uVmFsdWUiLCJkaXNwbGF5T3B0aW9uIiwicHJldmlvdXNTZWxlY3RlZCIsIm11bHRpU2VsZWN0IiwiY29uY2F0IiwiZGlzYWJsZWQiLCJpc0xvYWRpbmciLCJpbnRsIiwicmVzdWx0cyIsImxpc3RJdGVtIiwibGlzdEFuY2hvciIsIm9wdGlvbnMiLCJmaWx0ZXJPcHRpb24iLCJmaXhlZE9wdGlvbnMiLCJ0eXBlYWhlYWRQbGFjZWhvbGRlciIsImZvcm1hdE1lc3NhZ2UiLCJpZCIsIl9zZWxlY3RJdGVtIiwiRHJvcERvd25SZW5kZXJDb21wb25lbnQiLCJEcm9wZG93bkhlYWRlckNvbXBvbmVudCIsIkRyb3BEb3duTGluZUl0ZW1SZW5kZXJDb21wb25lbnQiLCJzZWFyY2hhYmxlIiwid2l0aFN1Yk9wdGlvbnMiLCJzZWxlY3RlZCIsImhhc1ZhbHVlIiwiZHJvcGRvd25TZWxlY3RQcm9wcyIsImFjdGl2ZSIsInN0YXRlIiwib25DbGljayIsIl9zaG93VHlwZWFoZWFkIiwiZXJyb3IiLCJpc0Vycm9yIiwicG9zaXRpb24iLCJwbGFjZWhvbGRlciIsIl9yZW1vdmVJdGVtIiwiQ3VzdG9tQ2hpY2tsZXRDb21wb25lbnQiLCJlcmFzYWJsZSIsIl9vbkVyYXNlIiwic2hvd0Fycm93IiwiX3JlbmRlckRyb3Bkb3duIiwiQ29tcG9uZW50IiwiUHJvcFR5cGVzIiwib25lT2ZUeXBlIiwiYXJyYXkiLCJzdHJpbmciLCJudW1iZXIiLCJib29sIiwib2JqZWN0IiwiZnVuYyIsImlzUmVxdWlyZWQiLCJhcnJheU9mIiwiYW55IiwiZHJvcGRvd25IZWFkZXIiLCJEcm9wZG93bkxpc3QiLCJMaXN0SXRlbSIsIkl0ZW1TZWxlY3Rvckxpc3RlbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQW9CQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFFQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7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R3BCbEUsRUFBQUEsU0FBUyxFQUFFLFFBSFM7QUFJcEJjLEVBQUFBLGFBQWEsRUFBRSxFQUpLO0FBS3BCZSxFQUFBQSxhQUFhLEVBQUUsSUFMSztBQU1wQkQsRUFBQUEsY0FBYyxFQUFFLElBTkk7QUFPcEJZLEVBQUFBLFlBQVksRUFBRSxJQVBNO0FBUXBCQyxFQUFBQSxZQUFZLEVBQUUsSUFSTTtBQVNwQmpFLEVBQUFBLFVBQVUsRUFBRSxTQVRRO0FBVXBCdUQsRUFBQUEsV0FBVyxFQUFFLElBVk87QUFXcEI4QixFQUFBQSxXQUFXLEVBQUUsd0JBWE87QUFZcEJ2QyxFQUFBQSxhQUFhLEVBQUUsSUFaSztBQWFwQjJCLEVBQUFBLFVBQVUsRUFBRSxJQWJRO0FBY3BCK0IsRUFBQUEsY0FBYyxFQUFFLElBZEk7QUFlcEJqQyxFQUFBQSx1QkFBdUIsRUFBRSxJQWZMO0FBZ0JwQkQsRUFBQUEsdUJBQXVCLEVBQUVtQyx3QkFoQkw7QUFpQnBCakMsRUFBQUEsK0JBQStCLEVBQUVrQyxzQkFqQmI7QUFrQnBCaEMsRUFBQUEsY0FBYyxFQUFFO0FBbEJJLEM7QUErTWpCLElBQU1pQyxrQkFBa0IsR0FBRyxxQ0FBc0JoRixZQUF0QixDQUEzQjs7O2VBQ1EsMkJBQVcscUNBQXNCQSxZQUF0QixDQUFYLEMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgKGMpIDIwMjIgVWJlciBUZWNobm9sb2dpZXMsIEluYy5cbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4vLyBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4vLyBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4vLyBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6XG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLlxuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuXG5pbXBvcnQgUmVhY3QsIHtDb21wb25lbnR9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQgY2xhc3NuYW1lcyBmcm9tICdjbGFzc25hbWVzJztcbmltcG9ydCB1bmlxQnkgZnJvbSAnbG9kYXNoLnVuaXFieSc7XG5pbXBvcnQgbGlzdGVuc1RvQ2xpY2tPdXRzaWRlIGZyb20gJ3JlYWN0LW9uY2xpY2tvdXRzaWRlJztcbmltcG9ydCBzdHlsZWQgZnJvbSAnc3R5bGVkLWNvbXBvbmVudHMnO1xuXG5pbXBvcnQgQWNjZXNzb3IgZnJvbSAnLi9hY2Nlc3Nvcic7XG5pbXBvcnQgQ2hpY2tsZXRlZElucHV0IGZyb20gJy4vY2hpY2tsZXRlZC1pbnB1dCc7XG5pbXBvcnQgVHlwZWFoZWFkIGZyb20gJy4vdHlwZWFoZWFkJztcbmltcG9ydCB7RGVsZXRlLCBBcnJvd0Rvd259IGZyb20gJ2NvbXBvbmVudHMvY29tbW9uL2ljb25zJztcbmltcG9ydCBMb2FkaW5nU3Bpbm5lciBmcm9tICdjb21wb25lbnRzL2NvbW1vbi9sb2FkaW5nLXNwaW5uZXInO1xuaW1wb3J0IERyb3Bkb3duTGlzdCwge0xpc3RJdGVtfSBmcm9tICcuL2Ryb3Bkb3duLWxpc3QnO1xuXG5pbXBvcnQge3RvQXJyYXl9IGZyb20gJ3V0aWxzL3V0aWxzJztcbmltcG9ydCB7aW5qZWN0SW50bH0gZnJvbSAncmVhY3QtaW50bCc7XG5pbXBvcnQge0Zvcm1hdHRlZE1lc3NhZ2V9IGZyb20gJ2xvY2FsaXphdGlvbic7XG5cbmV4cG9ydCBjb25zdCBTdHlsZWREcm9wZG93blNlbGVjdCA9IHN0eWxlZC5kaXYuYXR0cnMoe1xuICBjbGFzc05hbWU6ICdpdGVtLXNlbGVjdG9yX19kcm9wZG93bidcbn0pYFxuICAke3Byb3BzID0+XG4gICAgcHJvcHMuaW5wdXRUaGVtZSA9PT0gJ3NlY29uZGFyeSdcbiAgICAgID8gcHJvcHMudGhlbWUuc2Vjb25kYXJ5SW5wdXRcbiAgICAgIDogcHJvcHMuaW5wdXRUaGVtZSA9PT0gJ2xpZ2h0J1xuICAgICAgPyBwcm9wcy50aGVtZS5pbnB1dExUXG4gICAgICA6IHByb3BzLnRoZW1lLmlucHV0fTtcblxuICBoZWlnaHQ6ICR7cHJvcHMgPT5cbiAgICBwcm9wcy5zaXplID09PSAnc21hbGwnID8gcHJvcHMudGhlbWUuaW5wdXRCb3hIZWlnaHRTbWFsbCA6IHByb3BzLnRoZW1lLmlucHV0Qm94SGVpZ2h0fTtcblxuICAubGlzdF9faXRlbV9fYW5jaG9yIHtcbiAgICAke3Byb3BzID0+IHByb3BzLnRoZW1lLmRyb3Bkb3duTGlzdEFuY2hvcn07XG4gIH1cbmA7XG5cbmNvbnN0IERyb3Bkb3duU2VsZWN0VmFsdWUgPSBzdHlsZWQuc3BhbmBcbiAgY29sb3I6ICR7cHJvcHMgPT5cbiAgICBwcm9wcy5oYXNQbGFjZWhvbGRlciAmJiBwcm9wcy5pbnB1dFRoZW1lID09PSAnbGlnaHQnXG4gICAgICA/IHByb3BzLnRoZW1lLnNlbGVjdENvbG9yUGxhY2VIb2xkZXJMVFxuICAgICAgOiBwcm9wcy5oYXNQbGFjZWhvbGRlclxuICAgICAgPyBwcm9wcy50aGVtZS5zZWxlY3RDb2xvclBsYWNlSG9sZGVyXG4gICAgICA6IHByb3BzLmlucHV0VGhlbWUgPT09ICdsaWdodCdcbiAgICAgID8gcHJvcHMudGhlbWUuc2VsZWN0Q29sb3JMVFxuICAgICAgOiBwcm9wcy50aGVtZS5zZWxlY3RDb2xvcn07XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIC5saXN0X19pdGVtIHtcbiAgICAke3Byb3BzID0+XG4gICAgICBwcm9wcy5pbnB1dFRoZW1lID09PSAnbGlnaHQnID8gcHJvcHMudGhlbWUuZHJvcGRvd25MaXN0SXRlbUxUIDogcHJvcHMudGhlbWUuZHJvcGRvd25MaXN0SXRlbX07XG4gIH1cblxuICAubGlzdF9faXRlbV9fYW5jaG9yIHtcbiAgICAke3Byb3BzID0+XG4gICAgICBwcm9wcy5pbnB1dFRoZW1lID09PSAnbGlnaHQnXG4gICAgICAgID8gcHJvcHMudGhlbWUuZHJvcGRvd25MaXN0QW5jaG9yTFRcbiAgICAgICAgOiBwcm9wcy50aGVtZS5kcm9wZG93bkxpc3RBbmNob3J9O1xuICB9XG5gO1xuXG5jb25zdCBEcm9wZG93blNlbGVjdEFjdGlvblJpZ2h0ID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnN1YnRleHRDb2xvcn07XG5cbiAgOmhvdmVyIHtcbiAgICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS50ZXh0Q29sb3J9O1xuICB9XG5gO1xuXG5jb25zdCBEcm9wZG93bldyYXBwZXIgPSBzdHlsZWQuZGl2YFxuICBib3JkZXI6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmRyb3Bkb3duV3JhcHBlclp9O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogJHtwcm9wcyA9PiAocHJvcHMucGxhY2VtZW50ID09PSAndG9wJyA/IHByb3BzLnRoZW1lLmlucHV0Qm94SGVpZ2h0IDogJ2F1dG8nKX07XG4gIG1hcmdpbi10b3A6ICR7cHJvcHMgPT5cbiAgICBwcm9wcy5wbGFjZW1lbnQgPT09ICdib3R0b20nID8gYCR7cHJvcHMudGhlbWUuZHJvcGRvd25XYXBwZXJNYXJnaW59cHhgIDogJ2F1dG8nfTtcbiAgbWFyZ2luLWJvdHRvbTogJHtwcm9wcyA9PlxuICAgIHByb3BzLnBsYWNlbWVudCA9PT0gJ3RvcCcgPyBgJHtwcm9wcy50aGVtZS5kcm9wZG93bldhcHBlck1hcmdpbn1weGAgOiAnYXV0byd9O1xuYDtcblxuLy8gVGhlIGl0ZW0tc2VsZWN0b3IgY29tcG9uZW50IGRpc21vdW50IGFsbCBpdHMgY2hpbGRyZW4gaWYgeW91IGNsaWNrIG91dHNpZGUgb2YgdGhlIGNvbXBvbmVudCBiZWNhdXNlIG9mIGxpc3RlbnNUb0NsaWNrT3V0c2lkZSBmdW5jdGlvbi5cbi8vIElmIHlvdSB3YW50IHRvIHByZXZlbnQgdGhpcyBiZWhhdmlvdXIgd2hlbiB5b3UgY2xpY2sgb24gYSBjaGlsZCBhZGQgdGhpcyBjbGFzcyB0byBpdC5cbi8vIEl0IGlzIHVzZWZ1bCBmb3IgZXhhbXBsZSwgd2hlbiB5b3UgYWRkIHRoZSBjaGlsZCBjb21wb25lbnQgb24gdGhlIHRvcCBvZiB0cmVlIHdpdGggYSBQb3J0YWwgYXMgZHJvcGRvd24tbGlzdCBkb2VzIHdpdGggaXRlbS1zZWxlY3Rvci1zdWJtZW51XG5leHBvcnQgY29uc3QgcHJldmVudENsb3NlU2VsZWN0b3IgPSAncHJldmVudF9fY2xvc2VfX3NlbGVjdG9yJztcblxuY2xhc3MgSXRlbVNlbGVjdG9yIGV4dGVuZHMgQ29tcG9uZW50IHtcbiAgc3RhdGljIHByb3BUeXBlcyA9IHtcbiAgICAvLyByZXF1aXJlZCBwcm9wZXJ0aWVzXG4gICAgc2VsZWN0ZWRJdGVtczogUHJvcFR5cGVzLm9uZU9mVHlwZShbXG4gICAgICBQcm9wVHlwZXMuYXJyYXksXG4gICAgICBQcm9wVHlwZXMuc3RyaW5nLFxuICAgICAgUHJvcFR5cGVzLm51bWJlcixcbiAgICAgIFByb3BUeXBlcy5ib29sLFxuICAgICAgUHJvcFR5cGVzLm9iamVjdFxuICAgIF0pLFxuICAgIG9uQ2hhbmdlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIG9wdGlvbnM6IFByb3BUeXBlcy5hcnJheU9mKFByb3BUeXBlcy5hbnkpLmlzUmVxdWlyZWQsXG5cbiAgICAvLyBvcHRpb25hbCBwcm9wZXJ0aWVzXG4gICAgZml4ZWRPcHRpb25zOiBQcm9wVHlwZXMuYXJyYXlPZihQcm9wVHlwZXMuYW55KSxcbiAgICBlcmFzYWJsZTogUHJvcFR5cGVzLmJvb2wsXG4gICAgc2hvd0Fycm93OiBQcm9wVHlwZXMuYm9vbCxcbiAgICBkaXNwbGF5T3B0aW9uOiBQcm9wVHlwZXMub25lT2ZUeXBlKFtQcm9wVHlwZXMuc3RyaW5nLCBQcm9wVHlwZXMuZnVuY10pLFxuICAgIGdldE9wdGlvblZhbHVlOiBQcm9wVHlwZXMub25lT2ZUeXBlKFtQcm9wVHlwZXMuc3RyaW5nLCBQcm9wVHlwZXMuZnVuY10pLFxuICAgIGZpbHRlck9wdGlvbjogUHJvcFR5cGVzLm9uZU9mVHlwZShbUHJvcFR5cGVzLnN0cmluZywgUHJvcFR5cGVzLmZ1bmNdKSxcbiAgICBwbGFjZW1lbnQ6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgZGlzYWJsZWQ6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzRXJyb3I6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzTG9hZGluZzogUHJvcFR5cGVzLmJvb2wsXG4gICAgbXVsdGlTZWxlY3Q6IFByb3BUeXBlcy5ib29sLFxuICAgIGlucHV0VGhlbWU6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25CbHVyOiBQcm9wVHlwZXMuZnVuYyxcbiAgICBwbGFjZWhvbGRlcjogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjbG9zZU9uU2VsZWN0OiBQcm9wVHlwZXMuYm9vbCxcbiAgICB0eXBlYWhlYWRQbGFjZWhvbGRlcjogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBEcm9wZG93bkhlYWRlckNvbXBvbmVudDogUHJvcFR5cGVzLmZ1bmMsXG4gICAgRHJvcERvd25SZW5kZXJDb21wb25lbnQ6IFByb3BUeXBlcy5mdW5jLFxuICAgIERyb3BEb3duTGluZUl0ZW1SZW5kZXJDb21wb25lbnQ6IFByb3BUeXBlcy5mdW5jLFxuICAgIEN1c3RvbUNoaWNrbGV0Q29tcG9uZW50OiBQcm9wVHlwZXMuZnVuYyxcbiAgICB3aXRoU3ViT3B0aW9uczogUHJvcFR5cGVzLmJvb2xcbiAgfTtcblxuICBzdGF0aWMgZGVmYXVsdFByb3BzID0ge1xuICAgIGVyYXNhYmxlOiBmYWxzZSxcbiAgICBzaG93QXJyb3c6IGZhbHNlLFxuICAgIHBsYWNlbWVudDogJ2JvdHRvbScsXG4gICAgc2VsZWN0ZWRJdGVtczogW10sXG4gICAgZGlzcGxheU9wdGlvbjogbnVsbCxcbiAgICBnZXRPcHRpb25WYWx1ZTogbnVsbCxcbiAgICBmaWx0ZXJPcHRpb246IG51bGwsXG4gICAgZml4ZWRPcHRpb25zOiBudWxsLFxuICAgIGlucHV0VGhlbWU6ICdwcmltYXJ5JyxcbiAgICBtdWx0aVNlbGVjdDogdHJ1ZSxcbiAgICBwbGFjZWhvbGRlcjogJ3BsYWNlaG9sZGVyLmVudGVyVmFsdWUnLFxuICAgIGNsb3NlT25TZWxlY3Q6IHRydWUsXG4gICAgc2VhcmNoYWJsZTogdHJ1ZSxcbiAgICBkcm9wZG93bkhlYWRlcjogbnVsbCxcbiAgICBEcm9wZG93bkhlYWRlckNvbXBvbmVudDogbnVsbCxcbiAgICBEcm9wRG93blJlbmRlckNvbXBvbmVudDogRHJvcGRvd25MaXN0LFxuICAgIERyb3BEb3duTGluZUl0ZW1SZW5kZXJDb21wb25lbnQ6IExpc3RJdGVtLFxuICAgIHdpdGhTdWJPcHRpb25zOiBmYWxzZVxuICB9O1xuXG4gIHN0YXRlID0ge1xuICAgIHNob3dUeXBlYWhlYWQ6IGZhbHNlXG4gIH07XG5cbiAgaGFuZGxlQ2xpY2tPdXRzaWRlID0gZSA9PiB7XG4gICAgaWYgKGU/LnRhcmdldD8uY2xhc3NMaXN0Py5jb250YWlucyhwcmV2ZW50Q2xvc2VTZWxlY3RvcikpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5faGlkZVR5cGVhaGVhZCgpO1xuICB9O1xuXG4gIF9oaWRlVHlwZWFoZWFkKCkge1xuICAgIHRoaXMuc2V0U3RhdGUoe3Nob3dUeXBlYWhlYWQ6IGZhbHNlfSk7XG4gICAgdGhpcy5fb25CbHVyKCk7XG4gIH1cblxuICBfb25CbHVyID0gKCkgPT4ge1xuICAgIC8vIG5vdGU6IGNoaWNrbGV0ZWQgaW5wdXQgaXMgbm90IGEgcmVhbCBmb3JtIGVsZW1lbnQgc28gd2UgY2FsbCBvbkJsdXIoKVxuICAgIC8vIHdoZW4gd2UgZmVlbCB0aGUgZXZlbnRzIGFyZSBhcHByb3ByaWF0ZVxuICAgIGlmICh0aGlzLnByb3BzLm9uQmx1cikge1xuICAgICAgdGhpcy5wcm9wcy5vbkJsdXIoKTtcbiAgICB9XG4gIH07XG5cbiAgX3JlbW92ZUl0ZW0gPSAoaXRlbSwgZSkgPT4ge1xuICAgIC8vIG9ubHkgdXNlZCB3aGVuIG11bHRpU2VsZWN0ID0gdHJ1ZVxuICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIGNvbnN0IHtzZWxlY3RlZEl0ZW1zfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgaW5kZXggPSBzZWxlY3RlZEl0ZW1zLmZpbmRJbmRleCh0ID0+IHQgPT09IGl0ZW0pO1xuXG4gICAgaWYgKGluZGV4IDwgMCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGl0ZW1zID0gW1xuICAgICAgLi4uc2VsZWN0ZWRJdGVtcy5zbGljZSgwLCBpbmRleCksXG4gICAgICAuLi5zZWxlY3RlZEl0ZW1zLnNsaWNlKGluZGV4ICsgMSwgc2VsZWN0ZWRJdGVtcy5sZW5ndGgpXG4gICAgXTtcblxuICAgIHRoaXMucHJvcHMub25DaGFuZ2UoaXRlbXMpO1xuXG4gICAgaWYgKHRoaXMucHJvcHMuY2xvc2VPblNlbGVjdCkge1xuICAgICAgdGhpcy5zZXRTdGF0ZSh7c2hvd1R5cGVhaGVhZDogZmFsc2V9KTtcbiAgICAgIHRoaXMuX29uQmx1cigpO1xuICAgIH1cbiAgfTtcblxuICBfc2VsZWN0SXRlbSA9IGl0ZW0gPT4ge1xuICAgIGNvbnN0IGdldFZhbHVlID0gQWNjZXNzb3IuZ2VuZXJhdGVPcHRpb25Ub1N0cmluZ0ZvcihcbiAgICAgIHRoaXMucHJvcHMuZ2V0T3B0aW9uVmFsdWUgfHwgdGhpcy5wcm9wcy5kaXNwbGF5T3B0aW9uXG4gICAgKTtcblxuICAgIGNvbnN0IHByZXZpb3VzU2VsZWN0ZWQgPSB0b0FycmF5KHRoaXMucHJvcHMuc2VsZWN0ZWRJdGVtcyk7XG5cbiAgICBpZiAodGhpcy5wcm9wcy5tdWx0aVNlbGVjdCkge1xuICAgICAgY29uc3QgaXRlbXMgPSB1bmlxQnkocHJldmlvdXNTZWxlY3RlZC5jb25jYXQodG9BcnJheShpdGVtKSksIGdldFZhbHVlKTtcbiAgICAgIHRoaXMucHJvcHMub25DaGFuZ2UoaXRlbXMpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnByb3BzLm9uQ2hhbmdlKGdldFZhbHVlKGl0ZW0pKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5wcm9wcy5jbG9zZU9uU2VsZWN0KSB7XG4gICAgICB0aGlzLnNldFN0YXRlKHtzaG93VHlwZWFoZWFkOiBmYWxzZX0pO1xuICAgICAgdGhpcy5fb25CbHVyKCk7XG4gICAgfVxuICB9O1xuXG4gIF9vbkVyYXNlID0gZSA9PiB7XG4gICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB0aGlzLnByb3BzLm9uQ2hhbmdlKG51bGwpO1xuICB9O1xuXG4gIF9zaG93VHlwZWFoZWFkID0gZSA9PiB7XG4gICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICBpZiAoIXRoaXMucHJvcHMuZGlzYWJsZWQgJiYgIXRoaXMucHJvcHMuaXNMb2FkaW5nKSB7XG4gICAgICB0aGlzLnNldFN0YXRlKHtcbiAgICAgICAgc2hvd1R5cGVhaGVhZDogdHJ1ZVxuICAgICAgfSk7XG4gICAgfVxuICB9O1xuXG4gIF9yZW5kZXJEcm9wZG93bihpbnRsKSB7XG4gICAgcmV0dXJuIChcbiAgICAgIDxEcm9wZG93bldyYXBwZXIgcGxhY2VtZW50PXt0aGlzLnByb3BzLnBsYWNlbWVudH0+XG4gICAgICAgIDxUeXBlYWhlYWRcbiAgICAgICAgICBjdXN0b21DbGFzc2VzPXt7XG4gICAgICAgICAgICByZXN1bHRzOiAnbGlzdC1zZWxlY3RvcicsXG4gICAgICAgICAgICBpbnB1dDogJ3R5cGVhaGVhZF9faW5wdXQnLFxuICAgICAgICAgICAgbGlzdEl0ZW06ICdsaXN0X19pdGVtJyxcbiAgICAgICAgICAgIGxpc3RBbmNob3I6ICdsaXN0X19pdGVtX19hbmNob3InXG4gICAgICAgICAgfX1cbiAgICAgICAgICBvcHRpb25zPXt0aGlzLnByb3BzLm9wdGlvbnN9XG4gICAgICAgICAgZmlsdGVyT3B0aW9uPXt0aGlzLnByb3BzLmZpbHRlck9wdGlvbn1cbiAgICAgICAgICBmaXhlZE9wdGlvbnM9e3RoaXMucHJvcHMuZml4ZWRPcHRpb25zfVxuICAgICAgICAgIHBsYWNlaG9sZGVyPXtcbiAgICAgICAgICAgIHRoaXMucHJvcHMudHlwZWFoZWFkUGxhY2Vob2xkZXIgfHwgaW50bFxuICAgICAgICAgICAgICA/IGludGwuZm9ybWF0TWVzc2FnZSh7aWQ6ICdwbGFjZWhvbGRlci5zZWFyY2gnfSlcbiAgICAgICAgICAgICAgOiAnU2VhcmNoJ1xuICAgICAgICAgIH1cbiAgICAgICAgICBvbk9wdGlvblNlbGVjdGVkPXt0aGlzLl9zZWxlY3RJdGVtfVxuICAgICAgICAgIGN1c3RvbUxpc3RDb21wb25lbnQ9e3RoaXMucHJvcHMuRHJvcERvd25SZW5kZXJDb21wb25lbnR9XG4gICAgICAgICAgY3VzdG9tTGlzdEhlYWRlckNvbXBvbmVudD17dGhpcy5wcm9wcy5Ecm9wZG93bkhlYWRlckNvbXBvbmVudH1cbiAgICAgICAgICBjdXN0b21MaXN0SXRlbUNvbXBvbmVudD17dGhpcy5wcm9wcy5Ecm9wRG93bkxpbmVJdGVtUmVuZGVyQ29tcG9uZW50fVxuICAgICAgICAgIGRpc3BsYXlPcHRpb249e0FjY2Vzc29yLmdlbmVyYXRlT3B0aW9uVG9TdHJpbmdGb3IodGhpcy5wcm9wcy5kaXNwbGF5T3B0aW9uKX1cbiAgICAgICAgICBzZWFyY2hhYmxlPXt0aGlzLnByb3BzLnNlYXJjaGFibGV9XG4gICAgICAgICAgc2hvd09wdGlvbnNXaGVuRW1wdHlcbiAgICAgICAgICBzZWxlY3RlZEl0ZW1zPXt0b0FycmF5KHRoaXMucHJvcHMuc2VsZWN0ZWRJdGVtcyl9XG4gICAgICAgICAgbGlnaHQ9e3RoaXMucHJvcHMuaW5wdXRUaGVtZSA9PT0gJ2xpZ2h0J31cbiAgICAgICAgICB3aXRoU3ViT3B0aW9ucz17dGhpcy5wcm9wcy53aXRoU3ViT3B0aW9uc31cbiAgICAgICAgLz5cbiAgICAgIDwvRHJvcGRvd25XcmFwcGVyPlxuICAgICk7XG4gIH1cblxuICByZW5kZXIoKSB7XG4gICAgY29uc3Qgc2VsZWN0ZWQgPSB0b0FycmF5KHRoaXMucHJvcHMuc2VsZWN0ZWRJdGVtcyk7XG4gICAgY29uc3QgaGFzVmFsdWUgPSBzZWxlY3RlZC5sZW5ndGg7XG4gICAgY29uc3QgZGlzcGxheU9wdGlvbiA9IEFjY2Vzc29yLmdlbmVyYXRlT3B0aW9uVG9TdHJpbmdGb3IodGhpcy5wcm9wcy5kaXNwbGF5T3B0aW9uKTtcblxuICAgIGNvbnN0IGRyb3Bkb3duU2VsZWN0UHJvcHMgPSB7XG4gICAgICBjbGFzc05hbWU6IGNsYXNzbmFtZXMoe1xuICAgICAgICBhY3RpdmU6IHRoaXMuc3RhdGUuc2hvd1R5cGVhaGVhZFxuICAgICAgfSksXG4gICAgICBkaXNwbGF5T3B0aW9uLFxuICAgICAgZGlzYWJsZWQ6IHRoaXMucHJvcHMuZGlzYWJsZWQsXG4gICAgICBvbkNsaWNrOiB0aGlzLl9zaG93VHlwZWFoZWFkLFxuICAgICAgZXJyb3I6IHRoaXMucHJvcHMuaXNFcnJvcixcbiAgICAgIGlucHV0VGhlbWU6IHRoaXMucHJvcHMuaW5wdXRUaGVtZSxcbiAgICAgIHNpemU6IHRoaXMucHJvcHMuc2l6ZVxuICAgIH07XG4gICAgY29uc3QgaW50bCA9IHRoaXMucHJvcHMuaW50bDtcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cIml0ZW0tc2VsZWN0b3JcIj5cbiAgICAgICAgPGRpdiBzdHlsZT17e3Bvc2l0aW9uOiAncmVsYXRpdmUnfX0+XG4gICAgICAgICAgey8qIHRoaXMgcGFydCBpcyB1c2VkIHRvIGRpc3BsYXkgdGhlIGxhYmVsICovfVxuICAgICAgICAgIHt0aGlzLnByb3BzLm11bHRpU2VsZWN0ID8gKFxuICAgICAgICAgICAgPENoaWNrbGV0ZWRJbnB1dFxuICAgICAgICAgICAgICB7Li4uZHJvcGRvd25TZWxlY3RQcm9wc31cbiAgICAgICAgICAgICAgc2VsZWN0ZWRJdGVtcz17dG9BcnJheSh0aGlzLnByb3BzLnNlbGVjdGVkSXRlbXMpfVxuICAgICAgICAgICAgICBwbGFjZWhvbGRlcj17dGhpcy5wcm9wcy5wbGFjZWhvbGRlcn1cbiAgICAgICAgICAgICAgcmVtb3ZlSXRlbT17dGhpcy5fcmVtb3ZlSXRlbX1cbiAgICAgICAgICAgICAgQ3VzdG9tQ2hpY2tsZXRDb21wb25lbnQ9e3RoaXMucHJvcHMuQ3VzdG9tQ2hpY2tsZXRDb21wb25lbnR9XG4gICAgICAgICAgICAgIGlucHV0VGhlbWU9e3RoaXMucHJvcHMuaW5wdXRUaGVtZX1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTdHlsZWREcm9wZG93blNlbGVjdCB7Li4uZHJvcGRvd25TZWxlY3RQcm9wc30+XG4gICAgICAgICAgICAgIDxEcm9wZG93blNlbGVjdFZhbHVlXG4gICAgICAgICAgICAgICAgaGFzUGxhY2Vob2xkZXI9eyFoYXNWYWx1ZX1cbiAgICAgICAgICAgICAgICBpbnB1dFRoZW1lPXt0aGlzLnByb3BzLmlucHV0VGhlbWV9XG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lPVwiaXRlbS1zZWxlY3Rvcl9fZHJvcGRvd25fX3ZhbHVlXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHtoYXNWYWx1ZSA/IChcbiAgICAgICAgICAgICAgICAgIDx0aGlzLnByb3BzLkRyb3BEb3duTGluZUl0ZW1SZW5kZXJDb21wb25lbnRcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheU9wdGlvbj17ZGlzcGxheU9wdGlvbn1cbiAgICAgICAgICAgICAgICAgICAgdmFsdWU9e3NlbGVjdGVkWzBdfVxuICAgICAgICAgICAgICAgICAgICBsaWdodD17dGhpcy5wcm9wcy5pbnB1dFRoZW1lID09PSAnbGlnaHQnfVxuICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICApIDogKFxuICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9e3RoaXMucHJvcHMucGxhY2Vob2xkZXIgfHwgJ3BsYWNlaG9sZGVyLnNlbGVjdFZhbHVlJ30gLz5cbiAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICA8L0Ryb3Bkb3duU2VsZWN0VmFsdWU+XG4gICAgICAgICAgICAgIHt0aGlzLnByb3BzLmVyYXNhYmxlICYmIGhhc1ZhbHVlID8gKFxuICAgICAgICAgICAgICAgIDxEcm9wZG93blNlbGVjdEFjdGlvblJpZ2h0PlxuICAgICAgICAgICAgICAgICAge3RoaXMucHJvcHMuaXNMb2FkaW5nID8gKFxuICAgICAgICAgICAgICAgICAgICA8TG9hZGluZ1NwaW5uZXIgc2l6ZT17MTh9IHN0cm9rZVdpZHRoPXsyfSBnYXA9ezB9IC8+XG4gICAgICAgICAgICAgICAgICApIDogKFxuICAgICAgICAgICAgICAgICAgICA8RGVsZXRlIGhlaWdodD1cIjEycHhcIiBvbkNsaWNrPXt0aGlzLl9vbkVyYXNlfSAvPlxuICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICA8L0Ryb3Bkb3duU2VsZWN0QWN0aW9uUmlnaHQ+XG4gICAgICAgICAgICAgICkgOiB0aGlzLnByb3BzLnNob3dBcnJvdyA/IChcbiAgICAgICAgICAgICAgICA8RHJvcGRvd25TZWxlY3RBY3Rpb25SaWdodD5cbiAgICAgICAgICAgICAgICAgIDxBcnJvd0Rvd24gaGVpZ2h0PVwiMTRweFwiIG9uQ2xpY2s9e3RoaXMuX3Nob3dUeXBlYWhlYWR9IC8+XG4gICAgICAgICAgICAgICAgPC9Ecm9wZG93blNlbGVjdEFjdGlvblJpZ2h0PlxuICAgICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgIDwvU3R5bGVkRHJvcGRvd25TZWxlY3Q+XG4gICAgICAgICAgKX1cbiAgICAgICAgICB7LyogdGhpcyBwYXJ0IGlzIHVzZWQgdG8gYnVpbHQgdGhlIGxpc3QgKi99XG4gICAgICAgICAge3RoaXMuc3RhdGUuc2hvd1R5cGVhaGVhZCAmJiB0aGlzLl9yZW5kZXJEcm9wZG93bihpbnRsKX1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICApO1xuICB9XG59XG5cbmV4cG9ydCBjb25zdCBJdGVtU2VsZWN0b3JMaXN0ZW4gPSBsaXN0ZW5zVG9DbGlja091dHNpZGUoSXRlbVNlbGVjdG9yKTtcbmV4cG9ydCBkZWZhdWx0IGluamVjdEludGwobGlzdGVuc1RvQ2xpY2tPdXRzaWRlKEl0ZW1TZWxlY3RvcikpO1xuIl19
363
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2NvbW1vbi9pdGVtLXNlbGVjdG9yL2l0ZW0tc2VsZWN0b3IuanMiXSwibmFtZXMiOlsiU3R5bGVkRHJvcGRvd25TZWxlY3QiLCJzdHlsZWQiLCJkaXYiLCJhdHRycyIsImNsYXNzTmFtZSIsInByb3BzIiwiaW5wdXRUaGVtZSIsInRoZW1lIiwic2Vjb25kYXJ5SW5wdXQiLCJpbnB1dExUIiwiaW5wdXQiLCJzaXplIiwiaW5wdXRCb3hIZWlnaHRTbWFsbCIsImlucHV0Qm94SGVpZ2h0IiwiZHJvcGRvd25MaXN0QW5jaG9yIiwiRHJvcGRvd25TZWxlY3RWYWx1ZSIsInNwYW4iLCJoYXNQbGFjZWhvbGRlciIsInNlbGVjdENvbG9yUGxhY2VIb2xkZXJMVCIsInNlbGVjdENvbG9yUGxhY2VIb2xkZXIiLCJzZWxlY3RDb2xvckxUIiwic2VsZWN0Q29sb3IiLCJkcm9wZG93bkxpc3RJdGVtTFQiLCJkcm9wZG93bkxpc3RJdGVtIiwiZHJvcGRvd25MaXN0QW5jaG9yTFQiLCJEcm9wZG93blNlbGVjdEFjdGlvblJpZ2h0Iiwic3VidGV4dENvbG9yIiwidGV4dENvbG9yIiwiRHJvcGRvd25XcmFwcGVyIiwiZHJvcGRvd25XcmFwcGVyWiIsInBsYWNlbWVudCIsImRyb3Bkb3duV2FwcGVyTWFyZ2luIiwicHJldmVudENsb3NlU2VsZWN0b3IiLCJJdGVtU2VsZWN0b3IiLCJzaG93VHlwZWFoZWFkIiwiZSIsInRhcmdldCIsImNsYXNzTGlzdCIsImNvbnRhaW5zIiwiX2hpZGVUeXBlYWhlYWQiLCJvbkJsdXIiLCJpdGVtIiwicHJldmVudERlZmF1bHQiLCJzdG9wUHJvcGFnYXRpb24iLCJzZWxlY3RlZEl0ZW1zIiwiaW5kZXgiLCJmaW5kSW5kZXgiLCJ0IiwiaXRlbXMiLCJzbGljZSIsImxlbmd0aCIsIm9uQ2hhbmdlIiwiY2xvc2VPblNlbGVjdCIsInNldFN0YXRlIiwiX29uQmx1ciIsImdldFZhbHVlIiwiQWNjZXNzb3IiLCJnZW5lcmF0ZU9wdGlvblRvU3RyaW5nRm9yIiwiZ2V0T3B0aW9uVmFsdWUiLCJkaXNwbGF5T3B0aW9uIiwicHJldmlvdXNTZWxlY3RlZCIsIm11bHRpU2VsZWN0IiwiY29uY2F0IiwiZGlzYWJsZWQiLCJpc0xvYWRpbmciLCJzdGF0ZSIsIm9uRm9jdXMiLCJpbnRsIiwicmVzdWx0cyIsImxpc3RJdGVtIiwibGlzdEFuY2hvciIsIm9wdGlvbnMiLCJmaWx0ZXJPcHRpb24iLCJmaXhlZE9wdGlvbnMiLCJ0eXBlYWhlYWRQbGFjZWhvbGRlciIsImZvcm1hdE1lc3NhZ2UiLCJpZCIsIl9zZWxlY3RJdGVtIiwiRHJvcERvd25SZW5kZXJDb21wb25lbnQiLCJEcm9wZG93bkhlYWRlckNvbXBvbmVudCIsIkRyb3BEb3duTGluZUl0ZW1SZW5kZXJDb21wb25lbnQiLCJzZWFyY2hhYmxlIiwid2l0aFN1Yk9wdGlvbnMiLCJzZWxlY3RlZCIsImhhc1ZhbHVlIiwiZHJvcGRvd25TZWxlY3RQcm9wcyIsImFjdGl2ZSIsIm9uQ2xpY2siLCJfc2hvd1R5cGVhaGVhZCIsImVycm9yIiwiaXNFcnJvciIsInBvc2l0aW9uIiwicGxhY2Vob2xkZXIiLCJfcmVtb3ZlSXRlbSIsIkN1c3RvbUNoaWNrbGV0Q29tcG9uZW50IiwiZXJhc2FibGUiLCJfb25FcmFzZSIsInNob3dBcnJvdyIsIl9yZW5kZXJEcm9wZG93biIsIkNvbXBvbmVudCIsIlByb3BUeXBlcyIsIm9uZU9mVHlwZSIsImFycmF5Iiwic3RyaW5nIiwibnVtYmVyIiwiYm9vbCIsIm9iamVjdCIsImZ1bmMiLCJpc1JlcXVpcmVkIiwiYXJyYXlPZiIsImFueSIsImRyb3Bkb3duSGVhZGVyIiwiRHJvcGRvd25MaXN0IiwiTGlzdEl0ZW0iLCJJdGVtU2VsZWN0b3JMaXN0ZW4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFvQkE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBRUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FB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QzFCO0FBaUNqQmIsRUFBQUEsdUJBQXVCLEVBQUVNLHNCQUFVTyxJQWpDbEI7QUFrQ2pCekIsRUFBQUEsY0FBYyxFQUFFa0Isc0JBQVVLO0FBbENULEM7aUNBRGZ4RSxZLGtCQXNDa0I7QUFDcEI4RCxFQUFBQSxRQUFRLEVBQUUsS0FEVTtBQUVwQkUsRUFBQUEsU0FBUyxFQUFFLEtBRlM7QUFHcEJuRSxFQUFBQSxTQUFTLEVBQUUsUUFIUztBQUlwQmMsRUFBQUEsYUFBYSxFQUFFLEVBSks7QUFLcEJlLEVBQUFBLGFBQWEsRUFBRSxJQUxLO0FBTXBCRCxFQUFBQSxjQUFjLEVBQUUsSUFOSTtBQU9wQmMsRUFBQUEsWUFBWSxFQUFFLElBUE07QUFRcEJDLEVBQUFBLFlBQVksRUFBRSxJQVJNO0FBU3BCbkUsRUFBQUEsVUFBVSxFQUFFLFNBVFE7QUFVcEJ1RCxFQUFBQSxXQUFXLEVBQUUsSUFWTztBQVdwQitCLEVBQUFBLFdBQVcsRUFBRSx3QkFYTztBQVlwQnhDLEVBQUFBLGFBQWEsRUFBRSxJQVpLO0FBYXBCNkIsRUFBQUEsVUFBVSxFQUFFLElBYlE7QUFjcEI4QixFQUFBQSxjQUFjLEVBQUUsSUFkSTtBQWVwQmhDLEVBQUFBLHVCQUF1QixFQUFFLElBZkw7QUFnQnBCRCxFQUFBQSx1QkFBdUIsRUFBRWtDLHdCQWhCTDtBQWlCcEJoQyxFQUFBQSwrQkFBK0IsRUFBRWlDLHNCQWpCYjtBQWtCcEIvQixFQUFBQSxjQUFjLEVBQUU7QUFsQkksQztBQWtOakIsSUFBTWdDLGtCQUFrQixHQUFHLHFDQUFzQmpGLFlBQXRCLENBQTNCOzs7ZUFDUSwyQkFBVyxxQ0FBc0JBLFlBQXRCLENBQVgsQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAoYykgMjAyMiBVYmVyIFRlY2hub2xvZ2llcywgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG5cbmltcG9ydCBSZWFjdCwge0NvbXBvbmVudH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBjbGFzc25hbWVzIGZyb20gJ2NsYXNzbmFtZXMnO1xuaW1wb3J0IHVuaXFCeSBmcm9tICdsb2Rhc2gudW5pcWJ5JztcbmltcG9ydCBsaXN0ZW5zVG9DbGlja091dHNpZGUgZnJvbSAncmVhY3Qtb25jbGlja291dHNpZGUnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdzdHlsZWQtY29tcG9uZW50cyc7XG5cbmltcG9ydCBBY2Nlc3NvciBmcm9tICcuL2FjY2Vzc29yJztcbmltcG9ydCBDaGlja2xldGVkSW5wdXQgZnJvbSAnLi9jaGlja2xldGVkLWlucHV0JztcbmltcG9ydCBUeXBlYWhlYWQgZnJvbSAnLi90eXBlYWhlYWQnO1xuaW1wb3J0IHtEZWxldGUsIEFycm93RG93bn0gZnJvbSAnY29tcG9uZW50cy9jb21tb24vaWNvbnMnO1xuaW1wb3J0IExvYWRpbmdTcGlubmVyIGZyb20gJ2NvbXBvbmVudHMvY29tbW9uL2xvYWRpbmctc3Bpbm5lcic7XG5pbXBvcnQgRHJvcGRvd25MaXN0LCB7TGlzdEl0ZW19IGZyb20gJy4vZHJvcGRvd24tbGlzdCc7XG5cbmltcG9ydCB7dG9BcnJheX0gZnJvbSAndXRpbHMvdXRpbHMnO1xuaW1wb3J0IHtpbmplY3RJbnRsfSBmcm9tICdyZWFjdC1pbnRsJztcbmltcG9ydCB7Rm9ybWF0dGVkTWVzc2FnZX0gZnJvbSAnbG9jYWxpemF0aW9uJztcblxuZXhwb3J0IGNvbnN0IFN0eWxlZERyb3Bkb3duU2VsZWN0ID0gc3R5bGVkLmRpdi5hdHRycyh7XG4gIGNsYXNzTmFtZTogJ2l0ZW0tc2VsZWN0b3JfX2Ryb3Bkb3duJ1xufSlgXG4gICR7cHJvcHMgPT5cbiAgICBwcm9wcy5pbnB1dFRoZW1lID09PSAnc2Vjb25kYXJ5J1xuICAgICAgPyBwcm9wcy50aGVtZS5zZWNvbmRhcnlJbnB1dFxuICAgICAgOiBwcm9wcy5pbnB1dFRoZW1lID09PSAnbGlnaHQnXG4gICAgICA/IHByb3BzLnRoZW1lLmlucHV0TFRcbiAgICAgIDogcHJvcHMudGhlbWUuaW5wdXR9O1xuXG4gIGhlaWdodDogJHtwcm9wcyA9PlxuICAgIHByb3BzLnNpemUgPT09ICdzbWFsbCcgPyBwcm9wcy50aGVtZS5pbnB1dEJveEhlaWdodFNtYWxsIDogcHJvcHMudGhlbWUuaW5wdXRCb3hIZWlnaHR9O1xuXG4gIC5saXN0X19pdGVtX19hbmNob3Ige1xuICAgICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuZHJvcGRvd25MaXN0QW5jaG9yfTtcbiAgfVxuYDtcblxuY29uc3QgRHJvcGRvd25TZWxlY3RWYWx1ZSA9IHN0eWxlZC5zcGFuYFxuICBjb2xvcjogJHtwcm9wcyA9PlxuICAgIHByb3BzLmhhc1BsYWNlaG9sZGVyICYmIHByb3BzLmlucHV0VGhlbWUgPT09ICdsaWdodCdcbiAgICAgID8gcHJvcHMudGhlbWUuc2VsZWN0Q29sb3JQbGFjZUhvbGRlckxUXG4gICAgICA6IHByb3BzLmhhc1BsYWNlaG9sZGVyXG4gICAgICA/IHByb3BzLnRoZW1lLnNlbGVjdENvbG9yUGxhY2VIb2xkZXJcbiAgICAgIDogcHJvcHMuaW5wdXRUaGVtZSA9PT0gJ2xpZ2h0J1xuICAgICAgPyBwcm9wcy50aGVtZS5zZWxlY3RDb2xvckxUXG4gICAgICA6IHByb3BzLnRoZW1lLnNlbGVjdENvbG9yfTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgLmxpc3RfX2l0ZW0ge1xuICAgICR7cHJvcHMgPT5cbiAgICAgIHByb3BzLmlucHV0VGhlbWUgPT09ICdsaWdodCcgPyBwcm9wcy50aGVtZS5kcm9wZG93bkxpc3RJdGVtTFQgOiBwcm9wcy50aGVtZS5kcm9wZG93bkxpc3RJdGVtfTtcbiAgfVxuXG4gIC5saXN0X19pdGVtX19hbmNob3Ige1xuICAgICR7cHJvcHMgPT5cbiAgICAgIHByb3BzLmlucHV0VGhlbWUgPT09ICdsaWdodCdcbiAgICAgICAgPyBwcm9wcy50aGVtZS5kcm9wZG93bkxpc3RBbmNob3JMVFxuICAgICAgICA6IHByb3BzLnRoZW1lLmRyb3Bkb3duTGlzdEFuY2hvcn07XG4gIH1cbmA7XG5cbmNvbnN0IERyb3Bkb3duU2VsZWN0QWN0aW9uUmlnaHQgPSBzdHlsZWQuZGl2YFxuICBtYXJnaW4tcmlnaHQ6IDZweDtcbiAgZGlzcGxheTogZmxleDtcbiAgY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc3VidGV4dENvbG9yfTtcblxuICA6aG92ZXIge1xuICAgIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnRleHRDb2xvcn07XG4gIH1cbmA7XG5cbmNvbnN0IERyb3Bkb3duV3JhcHBlciA9IHN0eWxlZC5kaXZgXG4gIGJvcmRlcjogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuZHJvcGRvd25XcmFwcGVyWn07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAke3Byb3BzID0+IChwcm9wcy5wbGFjZW1lbnQgPT09ICd0b3AnID8gcHJvcHMudGhlbWUuaW5wdXRCb3hIZWlnaHQgOiAnYXV0bycpfTtcbiAgbWFyZ2luLXRvcDogJHtwcm9wcyA9PlxuICAgIHByb3BzLnBsYWNlbWVudCA9PT0gJ2JvdHRvbScgPyBgJHtwcm9wcy50aGVtZS5kcm9wZG93bldhcHBlck1hcmdpbn1weGAgOiAnYXV0byd9O1xuICBtYXJnaW4tYm90dG9tOiAke3Byb3BzID0+XG4gICAgcHJvcHMucGxhY2VtZW50ID09PSAndG9wJyA/IGAke3Byb3BzLnRoZW1lLmRyb3Bkb3duV2FwcGVyTWFyZ2lufXB4YCA6ICdhdXRvJ307XG5gO1xuXG4vLyBUaGUgaXRlbS1zZWxlY3RvciBjb21wb25lbnQgZGlzbW91bnQgYWxsIGl0cyBjaGlsZHJlbiBpZiB5b3UgY2xpY2sgb3V0c2lkZSBvZiB0aGUgY29tcG9uZW50IGJlY2F1c2Ugb2YgbGlzdGVuc1RvQ2xpY2tPdXRzaWRlIGZ1bmN0aW9uLlxuLy8gSWYgeW91IHdhbnQgdG8gcHJldmVudCB0aGlzIGJlaGF2aW91ciB3aGVuIHlvdSBjbGljayBvbiBhIGNoaWxkIGFkZCB0aGlzIGNsYXNzIHRvIGl0LlxuLy8gSXQgaXMgdXNlZnVsIGZvciBleGFtcGxlLCB3aGVuIHlvdSBhZGQgdGhlIGNoaWxkIGNvbXBvbmVudCBvbiB0aGUgdG9wIG9mIHRyZWUgd2l0aCBhIFBvcnRhbCBhcyBkcm9wZG93bi1saXN0IGRvZXMgd2l0aCBpdGVtLXNlbGVjdG9yLXN1Ym1lbnVcbmV4cG9ydCBjb25zdCBwcmV2ZW50Q2xvc2VTZWxlY3RvciA9ICdwcmV2ZW50X19jbG9zZV9fc2VsZWN0b3InO1xuXG5jbGFzcyBJdGVtU2VsZWN0b3IgZXh0ZW5kcyBDb21wb25lbnQge1xuICBzdGF0aWMgcHJvcFR5cGVzID0ge1xuICAgIC8vIHJlcXVpcmVkIHByb3BlcnRpZXNcbiAgICBzZWxlY3RlZEl0ZW1zOiBQcm9wVHlwZXMub25lT2ZUeXBlKFtcbiAgICAgIFByb3BUeXBlcy5hcnJheSxcbiAgICAgIFByb3BUeXBlcy5zdHJpbmcsXG4gICAgICBQcm9wVHlwZXMubnVtYmVyLFxuICAgICAgUHJvcFR5cGVzLmJvb2wsXG4gICAgICBQcm9wVHlwZXMub2JqZWN0XG4gICAgXSksXG4gICAgb25DaGFuZ2U6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb3B0aW9uczogUHJvcFR5cGVzLmFycmF5T2YoUHJvcFR5cGVzLmFueSkuaXNSZXF1aXJlZCxcblxuICAgIC8vIG9wdGlvbmFsIHByb3BlcnRpZXNcbiAgICBmaXhlZE9wdGlvbnM6IFByb3BUeXBlcy5hcnJheU9mKFByb3BUeXBlcy5hbnkpLFxuICAgIGVyYXNhYmxlOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBzaG93QXJyb3c6IFByb3BUeXBlcy5ib29sLFxuICAgIGRpc3BsYXlPcHRpb246IFByb3BUeXBlcy5vbmVPZlR5cGUoW1Byb3BUeXBlcy5zdHJpbmcsIFByb3BUeXBlcy5mdW5jXSksXG4gICAgZ2V0T3B0aW9uVmFsdWU6IFByb3BUeXBlcy5vbmVPZlR5cGUoW1Byb3BUeXBlcy5zdHJpbmcsIFByb3BUeXBlcy5mdW5jXSksXG4gICAgZmlsdGVyT3B0aW9uOiBQcm9wVHlwZXMub25lT2ZUeXBlKFtQcm9wVHlwZXMuc3RyaW5nLCBQcm9wVHlwZXMuZnVuY10pLFxuICAgIHBsYWNlbWVudDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBkaXNhYmxlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNFcnJvcjogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNMb2FkaW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBtdWx0aVNlbGVjdDogUHJvcFR5cGVzLmJvb2wsXG4gICAgaW5wdXRUaGVtZTogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBvbkJsdXI6IFByb3BUeXBlcy5mdW5jLFxuICAgIG9uRm9jdXM6IFByb3BUeXBlcy5mdW5jLFxuICAgIHBsYWNlaG9sZGVyOiBQcm9wVHlwZXMuc3RyaW5nLFxuICAgIGNsb3NlT25TZWxlY3Q6IFByb3BUeXBlcy5ib29sLFxuICAgIHR5cGVhaGVhZFBsYWNlaG9sZGVyOiBQcm9wVHlwZXMuc3RyaW5nLFxuICAgIERyb3Bkb3duSGVhZGVyQ29tcG9uZW50OiBQcm9wVHlwZXMuZnVuYyxcbiAgICBEcm9wRG93blJlbmRlckNvbXBvbmVudDogUHJvcFR5cGVzLmZ1bmMsXG4gICAgRHJvcERvd25MaW5lSXRlbVJlbmRlckNvbXBvbmVudDogUHJvcFR5cGVzLmZ1bmMsXG4gICAgQ3VzdG9tQ2hpY2tsZXRDb21wb25lbnQ6IFByb3BUeXBlcy5mdW5jLFxuICAgIHdpdGhTdWJPcHRpb25zOiBQcm9wVHlwZXMuYm9vbFxuICB9O1xuXG4gIHN0YXRpYyBkZWZhdWx0UHJvcHMgPSB7XG4gICAgZXJhc2FibGU6IGZhbHNlLFxuICAgIHNob3dBcnJvdzogZmFsc2UsXG4gICAgcGxhY2VtZW50OiAnYm90dG9tJyxcbiAgICBzZWxlY3RlZEl0ZW1zOiBbXSxcbiAgICBkaXNwbGF5T3B0aW9uOiBudWxsLFxuICAgIGdldE9wdGlvblZhbHVlOiBudWxsLFxuICAgIGZpbHRlck9wdGlvbjogbnVsbCxcbiAgICBmaXhlZE9wdGlvbnM6IG51bGwsXG4gICAgaW5wdXRUaGVtZTogJ3ByaW1hcnknLFxuICAgIG11bHRpU2VsZWN0OiB0cnVlLFxuICAgIHBsYWNlaG9sZGVyOiAncGxhY2Vob2xkZXIuZW50ZXJWYWx1ZScsXG4gICAgY2xvc2VPblNlbGVjdDogdHJ1ZSxcbiAgICBzZWFyY2hhYmxlOiB0cnVlLFxuICAgIGRyb3Bkb3duSGVhZGVyOiBudWxsLFxuICAgIERyb3Bkb3duSGVhZGVyQ29tcG9uZW50OiBudWxsLFxuICAgIERyb3BEb3duUmVuZGVyQ29tcG9uZW50OiBEcm9wZG93bkxpc3QsXG4gICAgRHJvcERvd25MaW5lSXRlbVJlbmRlckNvbXBvbmVudDogTGlzdEl0ZW0sXG4gICAgd2l0aFN1Yk9wdGlvbnM6IGZhbHNlXG4gIH07XG5cbiAgc3RhdGUgPSB7XG4gICAgc2hvd1R5cGVhaGVhZDogZmFsc2VcbiAgfTtcblxuICBoYW5kbGVDbGlja091dHNpZGUgPSBlID0+IHtcbiAgICBpZiAoZT8udGFyZ2V0Py5jbGFzc0xpc3Q/LmNvbnRhaW5zKHByZXZlbnRDbG9zZVNlbGVjdG9yKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLl9oaWRlVHlwZWFoZWFkKCk7XG4gIH07XG5cbiAgX2hpZGVUeXBlYWhlYWQoKSB7XG4gICAgdGhpcy5zZXRTdGF0ZSh7c2hvd1R5cGVhaGVhZDogZmFsc2V9KTtcbiAgICB0aGlzLl9vbkJsdXIoKTtcbiAgfVxuXG4gIF9vbkJsdXIgPSAoKSA9PiB7XG4gICAgLy8gbm90ZTogY2hpY2tsZXRlZCBpbnB1dCBpcyBub3QgYSByZWFsIGZvcm0gZWxlbWVudCBzbyB3ZSBjYWxsIG9uQmx1cigpXG4gICAgLy8gd2hlbiB3ZSBmZWVsIHRoZSBldmVudHMgYXJlIGFwcHJvcHJpYXRlXG4gICAgaWYgKHRoaXMucHJvcHMub25CbHVyKSB7XG4gICAgICB0aGlzLnByb3BzLm9uQmx1cigpO1xuICAgIH1cbiAgfTtcblxuICBfcmVtb3ZlSXRlbSA9IChpdGVtLCBlKSA9PiB7XG4gICAgLy8gb25seSB1c2VkIHdoZW4gbXVsdGlTZWxlY3QgPSB0cnVlXG4gICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgY29uc3Qge3NlbGVjdGVkSXRlbXN9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBpbmRleCA9IHNlbGVjdGVkSXRlbXMuZmluZEluZGV4KHQgPT4gdCA9PT0gaXRlbSk7XG5cbiAgICBpZiAoaW5kZXggPCAwKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgaXRlbXMgPSBbXG4gICAgICAuLi5zZWxlY3RlZEl0ZW1zLnNsaWNlKDAsIGluZGV4KSxcbiAgICAgIC4uLnNlbGVjdGVkSXRlbXMuc2xpY2UoaW5kZXggKyAxLCBzZWxlY3RlZEl0ZW1zLmxlbmd0aClcbiAgICBdO1xuXG4gICAgdGhpcy5wcm9wcy5vbkNoYW5nZShpdGVtcyk7XG5cbiAgICBpZiAodGhpcy5wcm9wcy5jbG9zZU9uU2VsZWN0KSB7XG4gICAgICB0aGlzLnNldFN0YXRlKHtzaG93VHlwZWFoZWFkOiBmYWxzZX0pO1xuICAgICAgdGhpcy5fb25CbHVyKCk7XG4gICAgfVxuICB9O1xuXG4gIF9zZWxlY3RJdGVtID0gaXRlbSA9PiB7XG4gICAgY29uc3QgZ2V0VmFsdWUgPSBBY2Nlc3Nvci5nZW5lcmF0ZU9wdGlvblRvU3RyaW5nRm9yKFxuICAgICAgdGhpcy5wcm9wcy5nZXRPcHRpb25WYWx1ZSB8fCB0aGlzLnByb3BzLmRpc3BsYXlPcHRpb25cbiAgICApO1xuXG4gICAgY29uc3QgcHJldmlvdXNTZWxlY3RlZCA9IHRvQXJyYXkodGhpcy5wcm9wcy5zZWxlY3RlZEl0ZW1zKTtcblxuICAgIGlmICh0aGlzLnByb3BzLm11bHRpU2VsZWN0KSB7XG4gICAgICBjb25zdCBpdGVtcyA9IHVuaXFCeShwcmV2aW91c1NlbGVjdGVkLmNvbmNhdCh0b0FycmF5KGl0ZW0pKSwgZ2V0VmFsdWUpO1xuICAgICAgdGhpcy5wcm9wcy5vbkNoYW5nZShpdGVtcyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucHJvcHMub25DaGFuZ2UoZ2V0VmFsdWUoaXRlbSkpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnByb3BzLmNsb3NlT25TZWxlY3QpIHtcbiAgICAgIHRoaXMuc2V0U3RhdGUoe3Nob3dUeXBlYWhlYWQ6IGZhbHNlfSk7XG4gICAgICB0aGlzLl9vbkJsdXIoKTtcbiAgICB9XG4gIH07XG5cbiAgX29uRXJhc2UgPSBlID0+IHtcbiAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIHRoaXMucHJvcHMub25DaGFuZ2UobnVsbCk7XG4gIH07XG5cbiAgX3Nob3dUeXBlYWhlYWQgPSBlID0+IHtcbiAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIGlmICghdGhpcy5wcm9wcy5kaXNhYmxlZCAmJiAhdGhpcy5wcm9wcy5pc0xvYWRpbmcpIHtcbiAgICAgIGlmICghdGhpcy5zdGF0ZS5zaG93VHlwZWFoZWFkICYmIHRoaXMucHJvcHMub25Gb2N1cykge1xuICAgICAgICB0aGlzLnByb3BzLm9uRm9jdXMoKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuc2V0U3RhdGUoe1xuICAgICAgICBzaG93VHlwZWFoZWFkOiB0cnVlXG4gICAgICB9KTtcbiAgICB9XG4gIH07XG5cbiAgX3JlbmRlckRyb3Bkb3duKGludGwpIHtcbiAgICByZXR1cm4gKFxuICAgICAgPERyb3Bkb3duV3JhcHBlciBwbGFjZW1lbnQ9e3RoaXMucHJvcHMucGxhY2VtZW50fT5cbiAgICAgICAgPFR5cGVhaGVhZFxuICAgICAgICAgIGN1c3RvbUNsYXNzZXM9e3tcbiAgICAgICAgICAgIHJlc3VsdHM6ICdsaXN0LXNlbGVjdG9yJyxcbiAgICAgICAgICAgIGlucHV0OiAndHlwZWFoZWFkX19pbnB1dCcsXG4gICAgICAgICAgICBsaXN0SXRlbTogJ2xpc3RfX2l0ZW0nLFxuICAgICAgICAgICAgbGlzdEFuY2hvcjogJ2xpc3RfX2l0ZW1fX2FuY2hvcidcbiAgICAgICAgICB9fVxuICAgICAgICAgIG9wdGlvbnM9e3RoaXMucHJvcHMub3B0aW9uc31cbiAgICAgICAgICBmaWx0ZXJPcHRpb249e3RoaXMucHJvcHMuZmlsdGVyT3B0aW9ufVxuICAgICAgICAgIGZpeGVkT3B0aW9ucz17dGhpcy5wcm9wcy5maXhlZE9wdGlvbnN9XG4gICAgICAgICAgcGxhY2Vob2xkZXI9e1xuICAgICAgICAgICAgdGhpcy5wcm9wcy50eXBlYWhlYWRQbGFjZWhvbGRlciB8fCBpbnRsXG4gICAgICAgICAgICAgID8gaW50bC5mb3JtYXRNZXNzYWdlKHtpZDogJ3BsYWNlaG9sZGVyLnNlYXJjaCd9KVxuICAgICAgICAgICAgICA6ICdTZWFyY2gnXG4gICAgICAgICAgfVxuICAgICAgICAgIG9uT3B0aW9uU2VsZWN0ZWQ9e3RoaXMuX3NlbGVjdEl0ZW19XG4gICAgICAgICAgY3VzdG9tTGlzdENvbXBvbmVudD17dGhpcy5wcm9wcy5Ecm9wRG93blJlbmRlckNvbXBvbmVudH1cbiAgICAgICAgICBjdXN0b21MaXN0SGVhZGVyQ29tcG9uZW50PXt0aGlzLnByb3BzLkRyb3Bkb3duSGVhZGVyQ29tcG9uZW50fVxuICAgICAgICAgIGN1c3RvbUxpc3RJdGVtQ29tcG9uZW50PXt0aGlzLnByb3BzLkRyb3BEb3duTGluZUl0ZW1SZW5kZXJDb21wb25lbnR9XG4gICAgICAgICAgZGlzcGxheU9wdGlvbj17QWNjZXNzb3IuZ2VuZXJhdGVPcHRpb25Ub1N0cmluZ0Zvcih0aGlzLnByb3BzLmRpc3BsYXlPcHRpb24pfVxuICAgICAgICAgIHNlYXJjaGFibGU9e3RoaXMucHJvcHMuc2VhcmNoYWJsZX1cbiAgICAgICAgICBzaG93T3B0aW9uc1doZW5FbXB0eVxuICAgICAgICAgIHNlbGVjdGVkSXRlbXM9e3RvQXJyYXkodGhpcy5wcm9wcy5zZWxlY3RlZEl0ZW1zKX1cbiAgICAgICAgICBsaWdodD17dGhpcy5wcm9wcy5pbnB1dFRoZW1lID09PSAnbGlnaHQnfVxuICAgICAgICAgIHdpdGhTdWJPcHRpb25zPXt0aGlzLnByb3BzLndpdGhTdWJPcHRpb25zfVxuICAgICAgICAvPlxuICAgICAgPC9Ecm9wZG93bldyYXBwZXI+XG4gICAgKTtcbiAgfVxuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCBzZWxlY3RlZCA9IHRvQXJyYXkodGhpcy5wcm9wcy5zZWxlY3RlZEl0ZW1zKTtcbiAgICBjb25zdCBoYXNWYWx1ZSA9IHNlbGVjdGVkLmxlbmd0aDtcbiAgICBjb25zdCBkaXNwbGF5T3B0aW9uID0gQWNjZXNzb3IuZ2VuZXJhdGVPcHRpb25Ub1N0cmluZ0Zvcih0aGlzLnByb3BzLmRpc3BsYXlPcHRpb24pO1xuXG4gICAgY29uc3QgZHJvcGRvd25TZWxlY3RQcm9wcyA9IHtcbiAgICAgIGNsYXNzTmFtZTogY2xhc3NuYW1lcyh7XG4gICAgICAgIGFjdGl2ZTogdGhpcy5zdGF0ZS5zaG93VHlwZWFoZWFkXG4gICAgICB9KSxcbiAgICAgIGRpc3BsYXlPcHRpb24sXG4gICAgICBkaXNhYmxlZDogdGhpcy5wcm9wcy5kaXNhYmxlZCxcbiAgICAgIG9uQ2xpY2s6IHRoaXMuX3Nob3dUeXBlYWhlYWQsXG4gICAgICBlcnJvcjogdGhpcy5wcm9wcy5pc0Vycm9yLFxuICAgICAgaW5wdXRUaGVtZTogdGhpcy5wcm9wcy5pbnB1dFRoZW1lLFxuICAgICAgc2l6ZTogdGhpcy5wcm9wcy5zaXplXG4gICAgfTtcbiAgICBjb25zdCBpbnRsID0gdGhpcy5wcm9wcy5pbnRsO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwiaXRlbS1zZWxlY3RvclwiPlxuICAgICAgICA8ZGl2IHN0eWxlPXt7cG9zaXRpb246ICdyZWxhdGl2ZSd9fT5cbiAgICAgICAgICB7LyogdGhpcyBwYXJ0IGlzIHVzZWQgdG8gZGlzcGxheSB0aGUgbGFiZWwgKi99XG4gICAgICAgICAge3RoaXMucHJvcHMubXVsdGlTZWxlY3QgPyAoXG4gICAgICAgICAgICA8Q2hpY2tsZXRlZElucHV0XG4gICAgICAgICAgICAgIHsuLi5kcm9wZG93blNlbGVjdFByb3BzfVxuICAgICAgICAgICAgICBzZWxlY3RlZEl0ZW1zPXt0b0FycmF5KHRoaXMucHJvcHMuc2VsZWN0ZWRJdGVtcyl9XG4gICAgICAgICAgICAgIHBsYWNlaG9sZGVyPXt0aGlzLnByb3BzLnBsYWNlaG9sZGVyfVxuICAgICAgICAgICAgICByZW1vdmVJdGVtPXt0aGlzLl9yZW1vdmVJdGVtfVxuICAgICAgICAgICAgICBDdXN0b21DaGlja2xldENvbXBvbmVudD17dGhpcy5wcm9wcy5DdXN0b21DaGlja2xldENvbXBvbmVudH1cbiAgICAgICAgICAgICAgaW5wdXRUaGVtZT17dGhpcy5wcm9wcy5pbnB1dFRoZW1lfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApIDogKFxuICAgICAgICAgICAgPFN0eWxlZERyb3Bkb3duU2VsZWN0IHsuLi5kcm9wZG93blNlbGVjdFByb3BzfT5cbiAgICAgICAgICAgICAgPERyb3Bkb3duU2VsZWN0VmFsdWVcbiAgICAgICAgICAgICAgICBoYXNQbGFjZWhvbGRlcj17IWhhc1ZhbHVlfVxuICAgICAgICAgICAgICAgIGlucHV0VGhlbWU9e3RoaXMucHJvcHMuaW5wdXRUaGVtZX1cbiAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJpdGVtLXNlbGVjdG9yX19kcm9wZG93bl9fdmFsdWVcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge2hhc1ZhbHVlID8gKFxuICAgICAgICAgICAgICAgICAgPHRoaXMucHJvcHMuRHJvcERvd25MaW5lSXRlbVJlbmRlckNvbXBvbmVudFxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5T3B0aW9uPXtkaXNwbGF5T3B0aW9ufVxuICAgICAgICAgICAgICAgICAgICB2YWx1ZT17c2VsZWN0ZWRbMF19XG4gICAgICAgICAgICAgICAgICAgIGxpZ2h0PXt0aGlzLnByb3BzLmlucHV0VGhlbWUgPT09ICdsaWdodCd9XG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD17dGhpcy5wcm9wcy5wbGFjZWhvbGRlciB8fCAncGxhY2Vob2xkZXIuc2VsZWN0VmFsdWUnfSAvPlxuICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgIDwvRHJvcGRvd25TZWxlY3RWYWx1ZT5cbiAgICAgICAgICAgICAge3RoaXMucHJvcHMuZXJhc2FibGUgJiYgaGFzVmFsdWUgPyAoXG4gICAgICAgICAgICAgICAgPERyb3Bkb3duU2VsZWN0QWN0aW9uUmlnaHQ+XG4gICAgICAgICAgICAgICAgICB7dGhpcy5wcm9wcy5pc0xvYWRpbmcgPyAoXG4gICAgICAgICAgICAgICAgICAgIDxMb2FkaW5nU3Bpbm5lciBzaXplPXsxOH0gc3Ryb2tlV2lkdGg9ezJ9IGdhcD17MH0gLz5cbiAgICAgICAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgICAgICAgIDxEZWxldGUgaGVpZ2h0PVwiMTJweFwiIG9uQ2xpY2s9e3RoaXMuX29uRXJhc2V9IC8+XG4gICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgIDwvRHJvcGRvd25TZWxlY3RBY3Rpb25SaWdodD5cbiAgICAgICAgICAgICAgKSA6IHRoaXMucHJvcHMuc2hvd0Fycm93ID8gKFxuICAgICAgICAgICAgICAgIDxEcm9wZG93blNlbGVjdEFjdGlvblJpZ2h0PlxuICAgICAgICAgICAgICAgICAgPEFycm93RG93biBoZWlnaHQ9XCIxNHB4XCIgb25DbGljaz17dGhpcy5fc2hvd1R5cGVhaGVhZH0gLz5cbiAgICAgICAgICAgICAgICA8L0Ryb3Bkb3duU2VsZWN0QWN0aW9uUmlnaHQ+XG4gICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgPC9TdHlsZWREcm9wZG93blNlbGVjdD5cbiAgICAgICAgICApfVxuICAgICAgICAgIHsvKiB0aGlzIHBhcnQgaXMgdXNlZCB0byBidWlsdCB0aGUgbGlzdCAqL31cbiAgICAgICAgICB7dGhpcy5zdGF0ZS5zaG93VHlwZWFoZWFkICYmIHRoaXMuX3JlbmRlckRyb3Bkb3duKGludGwpfVxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IEl0ZW1TZWxlY3Rvckxpc3RlbiA9IGxpc3RlbnNUb0NsaWNrT3V0c2lkZShJdGVtU2VsZWN0b3IpO1xuZXhwb3J0IGRlZmF1bHQgaW5qZWN0SW50bChsaXN0ZW5zVG9DbGlja091dHNpZGUoSXRlbVNlbGVjdG9yKSk7XG4iXX0=
@@ -64,7 +64,7 @@ exports.SBFlexboxNoMargin = SBFlexboxNoMargin;
64
64
  var PanelLabel = _styledComponents["default"].label.attrs({
65
65
  className: 'side-panel-panel__label'
66
66
  })(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n display: inline-block;\n font-size: 11px;\n font-weight: 400;\n margin-bottom: 4px;\n text-transform: capitalize;\n"])), function (props) {
67
- return props.theme.labelColor;
67
+ return props.active ? props.theme.labelColorActive : props.theme.labelColor;
68
68
  });
69
69
 
70
70
  exports.PanelLabel = PanelLabel;
@@ -400,4 +400,4 @@ var CheckMark = _styledComponents["default"].span.attrs({
400
400
  });
401
401
 
402
402
  exports.CheckMark = CheckMark;
403
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2NvbW1vbi9zdHlsZWQtY29tcG9uZW50cy5qcyJdLCJuYW1lcyI6WyJTZWxlY3RUZXh0Iiwic3R5bGVkIiwic3BhbiIsInByb3BzIiwidGhlbWUiLCJsYWJlbENvbG9yIiwic2VsZWN0Rm9udFNpemUiLCJTZWxlY3RUZXh0Qm9sZCIsInRleHRDb2xvciIsIkljb25Sb3VuZFNtYWxsIiwiZGl2Iiwic2Vjb25kYXJ5QnRuQmdkSG92ZXIiLCJzZWNvbmRhcnlCdG5Db2xvciIsIkNlbnRlckZsZXhib3giLCJDZW50ZXJWZXJ0aWNhbEZsZXhib3giLCJTcGFjZUJldHdlZW5GbGV4Ym94IiwiU0JGbGV4Ym94SXRlbSIsIlNCRmxleGJveE5vTWFyZ2luIiwiUGFuZWxMYWJlbCIsImxhYmVsIiwiYXR0cnMiLCJjbGFzc05hbWUiLCJQYW5lbExhYmVsV3JhcHBlciIsIlBhbmVsTGFiZWxCb2xkIiwiUGFuZWxIZWFkZXJUaXRsZSIsIlBhbmVsSGVhZGVyQ29udGVudCIsIlBhbmVsQ29udGVudCIsInBhbmVsQ29udGVudEJhY2tncm91bmQiLCJTaWRlUGFuZWxTZWN0aW9uIiwiZGlzYWJsZWQiLCJTaWRlUGFuZWxEaXZpZGVyIiwic2lkZXBhbmVsRGl2aWRlckJvcmRlciIsInBhbmVsQm9yZGVyQ29sb3IiLCJzaWRlcGFuZWxEaXZpZGVyTWFyZ2luIiwic2lkZXBhbmVsRGl2aWRlckhlaWdodCIsIlRvb2x0aXAiLCJSZWFjdFRvb2x0aXAiLCJ0b29sdGlwRm9udFNpemUiLCJ0b29sdGlwQm94U2hhZG93IiwidG9vbHRpcEJnIiwidG9vbHRpcENvbG9yIiwiQnV0dG9uIiwibmVnYXRpdmUiLCJuZWdhdGl2ZUJ0bkJnZCIsInNlY29uZGFyeSIsInNlY29uZGFyeUJ0bkJnZCIsImxpbmsiLCJsaW5rQnRuQmdkIiwiZmxvYXRpbmciLCJmbG9hdGluZ0J0bkJnZCIsImN0YSIsImN0YUJ0bkJnZCIsInByaW1hcnlCdG5CZ2QiLCJwcmltYXJ5QnRuUmFkaXVzIiwibmVnYXRpdmVCdG5Db2xvciIsImxpbmtCdG5Db2xvciIsImZsb2F0aW5nQnRuQ29sb3IiLCJjdGFCdG5Db2xvciIsInByaW1hcnlCdG5Db2xvciIsImxhcmdlIiwicHJpbWFyeUJ0bkZvbnRTaXplTGFyZ2UiLCJzbWFsbCIsInByaW1hcnlCdG5Gb250U2l6ZVNtYWxsIiwicHJpbWFyeUJ0bkZvbnRTaXplRGVmYXVsdCIsImJ0bkZvbnRGYW1pbHkiLCJ0cmFuc2l0aW9uIiwid2lkdGgiLCJuZWdhdGl2ZUJ0bkJvcmRlciIsInNlY29uZGFyeUJ0bkJvcmRlciIsImZsb2F0aW5nQnRuQm9yZGVyIiwibGlua0J0bkJvcmRlciIsInByaW1hcnlCdG5Cb3JkZXIiLCJuZWdhdGl2ZUJ0bkJnZEhvdmVyIiwibGlua0J0bkFjdEJnZEhvdmVyIiwiZmxvYXRpbmdCdG5CZ2RIb3ZlciIsImN0YUJ0bkJnZEhvdmVyIiwicHJpbWFyeUJ0bkJnZEhvdmVyIiwibmVnYXRpdmVCdG5BY3RDb2xvciIsInNlY29uZGFyeUJ0bkFjdENvbG9yIiwibGlua0J0bkFjdENvbG9yIiwiZmxvYXRpbmdCdG5BY3RDb2xvciIsImN0YUJ0bkFjdENvbG9yIiwicHJpbWFyeUJ0bkFjdENvbG9yIiwiSW5wdXQiLCJpbnB1dCIsInNlY29uZGFyeUlucHV0IiwiSW5wdXRMaWdodCIsImlucHV0TFQiLCJUZXh0QXJlYSIsInRleHRhcmVhIiwiVGV4dEFyZWFMaWdodCIsIklubGluZUlucHV0IiwiaW5saW5lSW5wdXQiLCJTdHlsZWRQYW5lbEhlYWRlciIsImFjdGl2ZSIsInBhbmVsQmFja2dyb3VuZEhvdmVyIiwicGFuZWxCYWNrZ3JvdW5kIiwibGFiZWxSQ0dDb2xvclZhbHVlcyIsImpvaW4iLCJwYW5lbEhlYWRlckhlaWdodCIsInBhbmVsSGVhZGVyQm9yZGVyUmFkaXVzIiwiU3R5bGVkUGFuZWxEcm9wZG93biIsInBhbmVsRHJvcGRvd25TY3JvbGxCYXIiLCJ0eXBlIiwibW9kYWxEcm9wZG93bkJhY2tncm91bmQiLCJwYW5lbEJveFNoYWRvdyIsInBhbmVsQm9yZGVyUmFkaXVzIiwiQnV0dG9uR3JvdXAiLCJEYXRhc2V0U3F1YXJlIiwiY29sb3IiLCJTZWxlY3Rpb25CdXR0b24iLCJzZWxlY3RlZCIsInNlbGVjdGlvbkJ0bkJvcmRlckFjdENvbG9yIiwic2VsZWN0aW9uQnRuQm9yZGVyQ29sb3IiLCJzZWxlY3Rpb25CdG5BY3RDb2xvciIsInNlbGVjdGlvbkJ0bkNvbG9yIiwic2VsZWN0aW9uQnRuQWN0QmdkIiwic2VsZWN0aW9uQnRuQmdkIiwiVGFibGUiLCJ0YWJsZSIsInBhbmVsQmFja2dyb3VuZExUIiwidGl0bGVDb2xvckxUIiwicGFuZWxCb3JkZXJMVCIsIlN0eWxlZE1vZGFsQ29udGVudCIsInRleHRDb2xvckxUIiwibW9kYWxMYXRlcmFsUGFkZGluZyIsIm1lZGlhIiwicG9ydGFibGUiLCJtb2RhbFBvcnRhYmxlTGF0ZXJhbFBhZGRpbmciLCJTdHlsZWRNb2RhbFZlcnRpY2FsUGFuZWwiLCJwYWxtIiwiU3R5bGVkTW9kYWxTZWN0aW9uIiwic3VidGV4dENvbG9yTFQiLCJTdHlsZWRNb2RhbElucHV0Rm9vdG5vdGUiLCJlcnJvciIsImVycm9yQ29sb3IiLCJTdHlsZWRNYXBDb250YWluZXIiLCJTdHlsZWRBdHRyYnV0aW9uIiwiU3R5bGVkRXhwb3J0U2VjdGlvbiIsIlN0eWxlZEZpbHRlcmVkT3B0aW9uIiwiU3R5bGVkVHlwZSIsIldpZGdldENvbnRhaW5lciIsIkJvdHRvbVdpZGdldElubmVyIiwiYm90dG9tV2lkZ2V0QmdkIiwiYm90dG9tSW5uZXJQZFZlcnQiLCJib3R0b21Jbm5lclBkU2lkZSIsImJvdHRvbVBhbmVsR2FwIiwiTWFwQ29udHJvbEJ1dHRvbiIsImZsb2F0aW5nQnRuQm9yZGVySG92ZXIiLCJTdHlsZWRGaWx0ZXJDb250ZW50IiwiVHJ1bmNhdGVkVGl0bGVUZXh0IiwiQ2hlY2tNYXJrIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQW9CQTs7QUFDQTs7QUFDQTs7QUFDQTs7OztBQUVP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LEtBQVosQ0FBa0I7QUFDekNDLEVBQUFBLFNBQVMsRUFBRTtBQUQ4QixDQUFsQixDQUFILDJpQkFHQSxVQUFBbEIsS0FBSztBQUFBLFNBQUlBLEtBQUssQ0FBQ0MsS0FBTixDQUFZNEcsMEJBQWhCO0FBQUEsQ0FITCxDQUFmIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IChjKSAyMDIyIFViZXIgVGVjaG5vbG9naWVzLCBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cblxuaW1wb3J0IHN0eWxlZCBmcm9tICdzdHlsZWQtY29tcG9uZW50cyc7XG5pbXBvcnQgUmVhY3RUb29sdGlwIGZyb20gJ3JlYWN0LXRvb2x0aXAnO1xuaW1wb3J0IHttZWRpYX0gZnJvbSAnc3R5bGVzL21lZGlhLWJyZWFrcG9pbnRzJztcbmltcG9ydCBjbGFzc25hbWVzIGZyb20gJ2NsYXNzbmFtZXMnO1xuXG5leHBvcnQgY29uc3QgU2VsZWN0VGV4dCA9IHN0eWxlZC5zcGFuYFxuICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5sYWJlbENvbG9yfTtcbiAgZm9udC1zaXplOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnNlbGVjdEZvbnRTaXplfTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcblxuICBpIHtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbmA7XG5cbmV4cG9ydCBjb25zdCBTZWxlY3RUZXh0Qm9sZCA9IHN0eWxlZChTZWxlY3RUZXh0KWBcbiAgY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUudGV4dENvbG9yfTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbmA7XG5cbmV4cG9ydCBjb25zdCBJY29uUm91bmRTbWFsbCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxOHB4O1xuICBoZWlnaHQ6IDE4cHg7XG4gIGJvcmRlci1yYWRpdXM6IDlweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zZWNvbmRhcnlCdG5CZ2RIb3Zlcn07XG4gIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnNlY29uZGFyeUJ0bkNvbG9yfTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgOmhvdmVyIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zZWNvbmRhcnlCdG5CZ2RIb3Zlcn07XG4gIH1cbmA7XG5cbmV4cG9ydCBjb25zdCBDZW50ZXJGbGV4Ym94ID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbmA7XG5cbmV4cG9ydCBjb25zdCBDZW50ZXJWZXJ0aWNhbEZsZXhib3ggPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuYDtcblxuZXhwb3J0IGNvbnN0IFNwYWNlQmV0d2VlbkZsZXhib3ggPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIG1hcmdpbi1sZWZ0OiAtMTZweDtcbmA7XG5cbmV4cG9ydCBjb25zdCBTQkZsZXhib3hJdGVtID0gc3R5bGVkLmRpdmBcbiAgZmxleC1ncm93OiAxO1xuICBtYXJnaW4tbGVmdDogMTZweDtcbmA7XG5cbmV4cG9ydCBjb25zdCBTQkZsZXhib3hOb01hcmdpbiA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmV4cG9ydCBjb25zdCBQYW5lbExhYmVsID0gc3R5bGVkLmxhYmVsLmF0dHJzKHtcbiAgY2xhc3NOYW1lOiAnc2lkZS1wYW5lbC1wYW5lbF9fbGFiZWwnXG59KWBcbiAgY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUubGFiZWxDb2xvcn07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAxMXB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBtYXJnaW4tYm90dG9tOiA0cHg7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuYDtcblxuZXhwb3J0IGNvbnN0IFBhbmVsTGFiZWxXcmFwcGVyID0gc3R5bGVkLmRpdi5hdHRycyh7XG4gIGNsYXNzTmFtZTogJ3NpZGUtcGFuZWwtcGFuZWxfX2xhYmVsLXdyYXBwZXInXG59KWBcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IHNlbGYtc3RhcnQ7XG5gO1xuXG5leHBvcnQgY29uc3QgUGFuZWxMYWJlbEJvbGQgPSBzdHlsZWQoUGFuZWxMYWJlbClgXG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG5gO1xuXG5leHBvcnQgY29uc3QgUGFuZWxIZWFkZXJUaXRsZSA9IHN0eWxlZC5zcGFuLmF0dHJzKHtcbiAgY2xhc3NOYW1lOiAnc2lkZS1wYW5lbC1wYW5lbF9faGVhZGVyX190aXRsZSdcbn0pYFxuICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS50ZXh0Q29sb3J9O1xuICBmb250LXNpemU6IDEzcHg7XG4gIGxldHRlci1zcGFjaW5nOiAwLjQzcHg7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuYDtcblxuZXhwb3J0IGNvbnN0IFBhbmVsSGVhZGVyQ29udGVudCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnRleHRDb2xvcn07XG4gIHBhZGRpbmctbGVmdDogMTJweDtcblxuICAuaWNvbiB7XG4gICAgY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUubGFiZWxDb2xvcn07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1hcmdpbi1yaWdodDogMTJweDtcbiAgfVxuYDtcblxuZXhwb3J0IGNvbnN0IFBhbmVsQ29udGVudCA9IHN0eWxlZC5kaXYuYXR0cnMoe1xuICBjbGFzc05hbWU6ICdzaWRlLXBhbmVsLXBhbmVsX19jb250ZW50J1xufSlgXG4gIGJhY2tncm91bmQtY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUucGFuZWxDb250ZW50QmFja2dyb3VuZH07XG4gIHBhZGRpbmc6IDEycHg7XG5gO1xuXG5leHBvcnQgY29uc3QgU2lkZVBhbmVsU2VjdGlvbiA9IHN0eWxlZC5kaXYuYXR0cnMoe1xuICBjbGFzc05hbWU6ICdzaWRlLXBhbmVsLXNlY3Rpb24nXG59KWBcbiAgbWFyZ2luLWJvdHRvbTogMTJweDtcblxuICBvcGFjaXR5OiAke3Byb3BzID0+IChwcm9wcy5kaXNhYmxlZCA/IDAuNCA6IDEpfTtcbiAgcG9pbnRlci1ldmVudHM6ICR7cHJvcHMgPT4gKHByb3BzLmRpc2FibGVkID8gJ25vbmUnIDogJ2FsbCcpfTtcbmA7XG5cbmV4cG9ydCBjb25zdCBTaWRlUGFuZWxEaXZpZGVyID0gc3R5bGVkLmRpdi5hdHRycyh7XG4gIGNsYXNzTmFtZTogJ3NpZGUtcGFuZWwtZGl2aWRlcidcbn0pYFxuICBib3JkZXItYm90dG9tOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnNpZGVwYW5lbERpdmlkZXJCb3JkZXJ9IHNvbGlkXG4gICAgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5wYW5lbEJvcmRlckNvbG9yfTtcbiAgbWFyZ2luLWJvdHRvbTogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zaWRlcGFuZWxEaXZpZGVyTWFyZ2lufXB4O1xuICBoZWlnaHQ6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc2lkZXBhbmVsRGl2aWRlckhlaWdodH1weDtcbmA7XG5cbmV4cG9ydCBjb25zdCBUb29sdGlwID0gc3R5bGVkKFJlYWN0VG9vbHRpcClgXG4gICYuX19yZWFjdF9jb21wb25lbnRfdG9vbHRpcCB7XG4gICAgZm9udC1zaXplOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnRvb2x0aXBGb250U2l6ZX07XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBwYWRkaW5nOiA3cHggMThweDtcbiAgICBib3gtc2hhZG93OiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnRvb2x0aXBCb3hTaGFkb3d9O1xuXG4gICAgJi50eXBlLWRhcmsge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS50b29sdGlwQmd9O1xuICAgICAgY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUudG9vbHRpcENvbG9yfTtcbiAgICAgICYucGxhY2UtYm90dG9tIHtcbiAgICAgICAgOmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnRvb2x0aXBCZ307XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5wbGFjZS10b3Age1xuICAgICAgICA6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUudG9vbHRpcEJnfTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLnBsYWNlLXJpZ2h0IHtcbiAgICAgICAgOmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUudG9vbHRpcEJnfTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLnBsYWNlLWxlZnQge1xuICAgICAgICA6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnRvb2x0aXBCZ307XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbmA7XG5cbmV4cG9ydCBjb25zdCBCdXR0b24gPSBzdHlsZWQuZGl2LmF0dHJzKHByb3BzID0+ICh7XG4gIGNsYXNzTmFtZTogY2xhc3NuYW1lcygnYnV0dG9uJywgcHJvcHMuY2xhc3NOYW1lKVxufSkpYFxuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAke3Byb3BzID0+XG4gICAgcHJvcHMubmVnYXRpdmVcbiAgICAgID8gcHJvcHMudGhlbWUubmVnYXRpdmVCdG5CZ2RcbiAgICAgIDogcHJvcHMuc2Vjb25kYXJ5XG4gICAgICA/IHByb3BzLnRoZW1lLnNlY29uZGFyeUJ0bkJnZFxuICAgICAgOiBwcm9wcy5saW5rXG4gICAgICA/IHByb3BzLnRoZW1lLmxpbmtCdG5CZ2RcbiAgICAgIDogcHJvcHMuZmxvYXRpbmdcbiAgICAgID8gcHJvcHMudGhlbWUuZmxvYXRpbmdCdG5CZ2RcbiAgICAgIDogcHJvcHMuY3RhXG4gICAgICA/IHByb3BzLnRoZW1lLmN0YUJ0bkJnZFxuICAgICAgOiBwcm9wcy50aGVtZS5wcmltYXJ5QnRuQmdkfTtcbiAgYm9yZGVyLXJhZGl1czogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5wcmltYXJ5QnRuUmFkaXVzfTtcbiAgY29sb3I6ICR7cHJvcHMgPT5cbiAgICBwcm9wcy5uZWdhdGl2ZVxuICAgICAgPyBwcm9wcy50aGVtZS5uZWdhdGl2ZUJ0bkNvbG9yXG4gICAgICA6IHByb3BzLnNlY29uZGFyeVxuICAgICAgPyBwcm9wcy50aGVtZS5zZWNvbmRhcnlCdG5Db2xvclxuICAgICAgOiBwcm9wcy5saW5rXG4gICAgICA/IHByb3BzLnRoZW1lLmxpbmtCdG5Db2xvclxuICAgICAgOiBwcm9wcy5mbG9hdGluZ1xuICAgICAgPyBwcm9wcy50aGVtZS5mbG9hdGluZ0J0bkNvbG9yXG4gICAgICA6IHByb3BzLmN0YVxuICAgICAgPyBwcm9wcy50aGVtZS5jdGFCdG5Db2xvclxuICAgICAgOiBwcm9wcy50aGVtZS5wcmltYXJ5QnRuQ29sb3J9O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBmb250LXNpemU6ICR7cHJvcHMgPT5cbiAgICBwcm9wcy5sYXJnZVxuICAgICAgPyBwcm9wcy50aGVtZS5wcmltYXJ5QnRuRm9udFNpemVMYXJnZVxuICAgICAgOiBwcm9wcy5zbWFsbFxuICAgICAgPyBwcm9wcy50aGVtZS5wcmltYXJ5QnRuRm9udFNpemVTbWFsbFxuICAgICAgOiBwcm9wcy50aGVtZS5wcmltYXJ5QnRuRm9udFNpemVEZWZhdWx0fTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1mYW1pbHk6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuYnRuRm9udEZhbWlseX07XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBsZXR0ZXItc3BhY2luZzogMC4zcHg7XG4gIGxpbmUtaGVpZ2h0OiAxNHB4O1xuICBvdXRsaW5lOiAwO1xuICBwYWRkaW5nOiAke3Byb3BzID0+IChwcm9wcy5sYXJnZSA/ICcxNHB4IDMycHgnIDogcHJvcHMuc21hbGwgPyAnNnB4IDlweCcgOiAnOXB4IDEycHgnKX07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdHJhbnNpdGlvbjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS50cmFuc2l0aW9ufTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6ICR7cHJvcHMgPT4gcHJvcHMud2lkdGggfHwgJ2F1dG8nfTtcbiAgb3BhY2l0eTogJHtwcm9wcyA9PiAocHJvcHMuZGlzYWJsZWQgPyAwLjQgOiAxKX07XG4gIHBvaW50ZXItZXZlbnRzOiAke3Byb3BzID0+IChwcm9wcy5kaXNhYmxlZCA/ICdub25lJyA6ICdhbGwnKX07XG4gIGJvcmRlcjogJHtwcm9wcyA9PlxuICAgIHByb3BzLm5lZ2F0aXZlXG4gICAgICA/IHByb3BzLnRoZW1lLm5lZ2F0aXZlQnRuQm9yZGVyXG4gICAgICA6IHByb3BzLnNlY29uZGFyeVxuICAgICAgPyBwcm9wcy50aGVtZS5zZWNvbmRhcnlCdG5Cb3JkZXJcbiAgICAgIDogcHJvcHMuZmxvYXRpbmdcbiAgICAgID8gcHJvcHMudGhlbWUuZmxvYXRpbmdCdG5Cb3JkZXJcbiAgICAgIDogcHJvcHMubGlua1xuICAgICAgPyBwcm9wcy50aGVtZS5saW5rQnRuQm9yZGVyXG4gICAgICA6IHByb3BzLnRoZW1lLnByaW1hcnlCdG5Cb3JkZXJ9O1xuICA6aG92ZXIsXG4gIDpmb2N1cyxcbiAgOmFjdGl2ZSxcbiAgJi5hY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR7cHJvcHMgPT5cbiAgICAgIHByb3BzLm5lZ2F0aXZlXG4gICAgICAgID8gcHJvcHMudGhlbWUubmVnYXRpdmVCdG5CZ2RIb3ZlclxuICAgICAgICA6IHByb3BzLnNlY29uZGFyeVxuICAgICAgICA/IHByb3BzLnRoZW1lLnNlY29uZGFyeUJ0bkJnZEhvdmVyXG4gICAgICAgIDogcHJvcHMubGlua1xuICAgICAgICA/IHByb3BzLnRoZW1lLmxpbmtCdG5BY3RCZ2RIb3ZlclxuICAgICAgICA6IHByb3BzLmZsb2F0aW5nXG4gICAgICAgID8gcHJvcHMudGhlbWUuZmxvYXRpbmdCdG5CZ2RIb3ZlclxuICAgICAgICA6IHByb3BzLmN0YVxuICAgICAgICA/IHByb3BzLnRoZW1lLmN0YUJ0bkJnZEhvdmVyXG4gICAgICAgIDogcHJvcHMudGhlbWUucHJpbWFyeUJ0bkJnZEhvdmVyfTtcbiAgICBjb2xvcjogJHtwcm9wcyA9PlxuICAgICAgcHJvcHMubmVnYXRpdmVcbiAgICAgICAgPyBwcm9wcy50aGVtZS5uZWdhdGl2ZUJ0bkFjdENvbG9yXG4gICAgICAgIDogcHJvcHMuc2Vjb25kYXJ5XG4gICAgICAgID8gcHJvcHMudGhlbWUuc2Vjb25kYXJ5QnRuQWN0Q29sb3JcbiAgICAgICAgOiBwcm9wcy5saW5rXG4gICAgICAgID8gcHJvcHMudGhlbWUubGlua0J0bkFjdENvbG9yXG4gICAgICAgIDogcHJvcHMuZmxvYXRpbmdcbiAgICAgICAgPyBwcm9wcy50aGVtZS5mbG9hdGluZ0J0bkFjdENvbG9yXG4gICAgICAgIDogcHJvcHMuY3RhXG4gICAgICAgID8gcHJvcHMudGhlbWUuY3RhQnRuQWN0Q29sb3JcbiAgICAgICAgOiBwcm9wcy50aGVtZS5wcmltYXJ5QnRuQWN0Q29sb3J9O1xuICB9XG5cbiAgc3ZnIHtcbiAgICBtYXJnaW4tcmlnaHQ6ICR7cHJvcHMgPT4gKHByb3BzLmxhcmdlID8gJzEwcHgnIDogcHJvcHMuc21hbGwgPyAnNnB4JyA6ICc4cHgnKX07XG4gIH1cbmA7XG5cbmV4cG9ydCBjb25zdCBJbnB1dCA9IHN0eWxlZC5pbnB1dGBcbiAgJHtwcm9wcyA9PiAocHJvcHMuc2Vjb25kYXJ5ID8gcHJvcHMudGhlbWUuc2Vjb25kYXJ5SW5wdXQgOiBwcm9wcy50aGVtZS5pbnB1dCl9O1xuYDtcblxuZXhwb3J0IGNvbnN0IElucHV0TGlnaHQgPSBzdHlsZWQuaW5wdXRgXG4gICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuaW5wdXRMVH07XG5gO1xuXG5leHBvcnQgY29uc3QgVGV4dEFyZWEgPSBzdHlsZWQudGV4dGFyZWFgXG4gICR7cHJvcHMgPT4gKHByb3BzLnNlY29uZGFyeSA/IHByb3BzLnRoZW1lLnNlY29uZGFyeUlucHV0IDogcHJvcHMudGhlbWUuaW5wdXQpfTtcbmA7XG5leHBvcnQgY29uc3QgVGV4dEFyZWFMaWdodCA9IHN0eWxlZC50ZXh0YXJlYWBcbiAgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5pbnB1dExUfSBoZWlnaHQ6IGF1dG87XG4gIHdoaXRlLXNwYWNlOiBwcmUtd3JhcDtcbmA7XG5cbmV4cG9ydCBjb25zdCBJbmxpbmVJbnB1dCA9IHN0eWxlZChJbnB1dClgXG4gICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuaW5saW5lSW5wdXR9O1xuYDtcblxuZXhwb3J0IGNvbnN0IFN0eWxlZFBhbmVsSGVhZGVyID0gc3R5bGVkLmRpdmBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtwcm9wcyA9PlxuICAgIHByb3BzLmFjdGl2ZSA/IHByb3BzLnRoZW1lLnBhbmVsQmFja2dyb3VuZEhvdmVyIDogcHJvcHMudGhlbWUucGFuZWxCYWNrZ3JvdW5kfTtcbiAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZFxuICAgIHJnYihcbiAgICAgICR7cHJvcHMgPT4gKHByb3BzLmxhYmVsUkNHQ29sb3JWYWx1ZXMgPyBwcm9wcy5sYWJlbFJDR0NvbG9yVmFsdWVzLmpvaW4oJywnKSA6ICd0cmFuc3BhcmVudCcpfVxuICAgICk7XG4gIHBhZGRpbmc6IDAgMTBweCAwIDA7XG4gIGhlaWdodDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5wYW5lbEhlYWRlckhlaWdodH1weDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnBhbmVsSGVhZGVyQm9yZGVyUmFkaXVzfTtcbiAgdHJhbnNpdGlvbjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS50cmFuc2l0aW9ufTtcbmA7XG5cbmV4cG9ydCBjb25zdCBTdHlsZWRQYW5lbERyb3Bkb3duID0gc3R5bGVkLmRpdmBcbiAgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5wYW5lbERyb3Bkb3duU2Nyb2xsQmFyfVxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke3Byb3BzID0+XG4gICAgcHJvcHMudHlwZSA9PT0gJ2xpZ2h0JyA/IHByb3BzLnRoZW1lLm1vZGFsRHJvcGRvd25CYWNrZ3JvdW5kIDogcHJvcHMudGhlbWUucGFuZWxCYWNrZ3JvdW5kfTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgYm94LXNoYWRvdzogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5wYW5lbEJveFNoYWRvd307XG4gIGJvcmRlci1yYWRpdXM6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUucGFuZWxCb3JkZXJSYWRpdXN9O1xuICBtYXgtaGVpZ2h0OiA1MDBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiA5OTk7XG5gO1xuXG5leHBvcnQgY29uc3QgQnV0dG9uR3JvdXAgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICAuYnV0dG9uIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAycHg7XG4gIH1cbiAgLmJ1dHRvbjpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5wcmltYXJ5QnRuUmFkaXVzfTtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnByaW1hcnlCdG5SYWRpdXN9O1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5idXR0b246bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUucHJpbWFyeUJ0blJhZGl1c307XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUucHJpbWFyeUJ0blJhZGl1c307XG4gIH1cbmA7XG5cbmV4cG9ydCBjb25zdCBEYXRhc2V0U3F1YXJlID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogOHB4O1xuICBoZWlnaHQ6IDhweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKCR7cHJvcHMgPT4gcHJvcHMuY29sb3Iuam9pbignLCcpfSk7XG4gIG1hcmdpbi1yaWdodDogMTJweDtcbmA7XG5cbmV4cG9ydCBjb25zdCBTZWxlY3Rpb25CdXR0b24gPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgYm9yZGVyOiAxcHggc29saWRcbiAgICAke3Byb3BzID0+XG4gICAgICBwcm9wcy5zZWxlY3RlZFxuICAgICAgICA/IHByb3BzLnRoZW1lLnNlbGVjdGlvbkJ0bkJvcmRlckFjdENvbG9yXG4gICAgICAgIDogcHJvcHMudGhlbWUuc2VsZWN0aW9uQnRuQm9yZGVyQ29sb3J9O1xuICBjb2xvcjogJHtwcm9wcyA9PlxuICAgIHByb3BzLnNlbGVjdGVkID8gcHJvcHMudGhlbWUuc2VsZWN0aW9uQnRuQWN0Q29sb3IgOiBwcm9wcy50aGVtZS5zZWxlY3Rpb25CdG5Db2xvcn07XG4gIGJhY2tncm91bmQtY29sb3I6ICR7cHJvcHMgPT5cbiAgICBwcm9wcy5zZWxlY3RlZCA/IHByb3BzLnRoZW1lLnNlbGVjdGlvbkJ0bkFjdEJnZCA6IHByb3BzLnRoZW1lLnNlbGVjdGlvbkJ0bkJnZH07XG5cbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LXdlaWdodDogNTAwO1xuICBtYXJnaW4tcmlnaHQ6IDZweDtcbiAgcGFkZGluZzogNnB4IDE2cHg7XG5cbiAgOmhvdmVyIHtcbiAgICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zZWxlY3Rpb25CdG5BY3RDb2xvcn07XG4gICAgYm9yZGVyOiAxcHggc29saWQgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zZWxlY3Rpb25CdG5Cb3JkZXJBY3RDb2xvcn07XG4gIH1cbmA7XG5cbmV4cG9ydCBjb25zdCBUYWJsZSA9IHN0eWxlZC50YWJsZWBcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xuXG4gIHRoZWFkIHtcbiAgICB0ciB0aCB7XG4gICAgICBiYWNrZ3JvdW5kOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnBhbmVsQmFja2dyb3VuZExUfTtcbiAgICAgIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnRpdGxlQ29sb3JMVH07XG4gICAgICBwYWRkaW5nOiAxOHB4IDEycHg7XG4gICAgICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgICB9XG4gIH1cblxuICB0Ym9keSB7XG4gICAgdHIgdGQge1xuICAgICAgYm9yZGVyLWJvdHRvbTogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5wYW5lbEJvcmRlckxUfTtcbiAgICAgIHBhZGRpbmc6IDEycHg7XG4gICAgfVxuICB9XG5gO1xuXG5leHBvcnQgY29uc3QgU3R5bGVkTW9kYWxDb250ZW50ID0gc3R5bGVkLmRpdmBcbiAgYmFja2dyb3VuZDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5wYW5lbEJhY2tncm91bmRMVH07XG4gIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnRleHRDb2xvckxUfTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZm9udC1zaXplOiAxMHB4O1xuICBwYWRkaW5nOiAyNHB4ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUubW9kYWxMYXRlcmFsUGFkZGluZ307XG4gIG1hcmdpbjogMCAtJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5tb2RhbExhdGVyYWxQYWRkaW5nfTtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAke21lZGlhLnBvcnRhYmxlYFxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgcGFkZGluZzogMTZweCAke3Byb3BzID0+IHByb3BzLnRoZW1lLm1vZGFsUG9ydGFibGVMYXRlcmFsUGFkZGluZ307XG4gICAgbWFyZ2luOiAwIC0ke3Byb3BzID0+IHByb3BzLnRoZW1lLm1vZGFsUG9ydGFibGVMYXRlcmFsUGFkZGluZ307XG4gIGB9O1xuYDtcblxuZXhwb3J0IGNvbnN0IFN0eWxlZE1vZGFsVmVydGljYWxQYW5lbCA9IHN0eWxlZC5kaXYuYXR0cnMoe1xuICBjbGFzc05hbWU6ICdtb2RhbC12ZXJ0aWNhbC1wYW5lbCdcbn0pYFxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbiAgZm9udC1zaXplOiAxMnB4O1xuXG4gIC5tb2RhbC1zZWN0aW9uOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAyNHB4O1xuICAgICR7bWVkaWEucGFsbWBcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgYH07XG4gIH1cblxuICBpbnB1dCB7XG4gICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gIH1cbmA7XG5cbmV4cG9ydCBjb25zdCBTdHlsZWRNb2RhbFNlY3Rpb24gPSBzdHlsZWQuZGl2LmF0dHJzKHtcbiAgY2xhc3NOYW1lOiAnbW9kYWwtc2VjdGlvbidcbn0pYFxuICBtYXJnaW4tYm90dG9tOiAzMnB4O1xuXG4gIC5tb2RhbC1zZWN0aW9uLXRpdGxlIHtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICB9XG4gIC5tb2RhbC1zZWN0aW9uLXN1YnRpdGxlIHtcbiAgICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zdWJ0ZXh0Q29sb3JMVH07XG4gIH1cblxuICBpbnB1dCB7XG4gICAgbWFyZ2luLXRvcDogOHB4O1xuICB9XG5cbiAgJHttZWRpYS5wb3J0YWJsZWBcbiAgICBtYXJnaW4tYm90dG9tOiAyNHB4O1xuICBgfTtcbiAgJHttZWRpYS5wYWxtYFxuICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gIGB9O1xuYDtcblxuZXhwb3J0IGNvbnN0IFN0eWxlZE1vZGFsSW5wdXRGb290bm90ZSA9IHN0eWxlZC5kaXYuYXR0cnMoe1xuICBjbGFzc05hbWU6ICdtb2RhbC1pbnB1dF9fZm9vdG5vdGUnXG59KWBcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgY29sb3I6ICR7cHJvcHMgPT4gKHByb3BzLmVycm9yID8gcHJvcHMudGhlbWUuZXJyb3JDb2xvciA6IHByb3BzLnRoZW1lLnN1YnRleHRDb2xvckxUKX07XG4gIGZvbnQtc2l6ZTogMTBweDtcbmA7XG4vKipcbiAqIE5ld2VyIHZlcnNpb25zIG9mIG1hcGJveC5nbCBkaXNwbGF5IGFuIGVycm9yIG1lc3NhZ2UgYmFubmVyIG9uIHRvcCBvZiB0aGUgbWFwIGJ5IGRlZmF1bHRcbiAqIHdoaWNoIHdpbGwgY2F1c2UgdGhlIG1hcCB0byBkaXNwbGF5IHBvaW50cyBpbiB0aGUgd3JvbmcgbG9jYXRpb25zXG4gKiBUaGlzIHdvcmthcm91bmQgd2lsbCBoaWRlIHRoZSBlcnJvciBiYW5uZXIuXG4gKi9cbmV4cG9ydCBjb25zdCBTdHlsZWRNYXBDb250YWluZXIgPSBzdHlsZWQuZGl2YFxuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICAubWFwYm94Z2wtbWFwIHtcbiAgICAubWFwYm94Z2wtbWlzc2luZy1jc3Mge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLm1hcGJveGdsLWN0cmwtYXR0cmliIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5gO1xuXG5leHBvcnQgY29uc3QgU3R5bGVkQXR0cmJ1dGlvbiA9IHN0eWxlZC5kaXYuYXR0cnMoe1xuICBjbGFzc05hbWU6ICdtYXBib3gtYXR0cmlidXRpb24tY29udGFpbmVyJ1xufSlgXG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCAxMHB4IDJweDtcbiAgei1pbmRleDogMDtcblxuICAuYXR0cml0aW9uLWxvZ28ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZm9udC1zaXplOiAxMHB4O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5sYWJlbENvbG9yfTtcbiAgICBtYXJnaW4tYm90dG9tOiAtNHB4O1xuXG4gICAgYS5tYXBib3hnbC1jdHJsLWxvZ28ge1xuICAgICAgd2lkdGg6IDcycHg7XG4gICAgICBtYXJnaW4tbGVmdDogNnB4O1xuICAgIH1cbiAgfVxuICBhIHtcbiAgICBmb250LXNpemU6IDEwcHg7XG4gIH1cbmA7XG5cbmV4cG9ydCBjb25zdCBTdHlsZWRFeHBvcnRTZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgbWFyZ2luOiAzNXB4IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS50ZXh0Q29sb3JMVH07XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgb3BhY2l0eTogJHtwcm9wcyA9PiAocHJvcHMuZGlzYWJsZWQgPyAwLjMgOiAxKX07XG4gIHBvaW50ZXItZXZlbnRzOiAke3Byb3BzID0+IChwcm9wcy5kaXNhYmxlZCA/ICdub25lJyA6ICdhbGwnKX07XG5cbiAgLmRlc2NyaXB0aW9uIHtcbiAgICB3aWR0aDogMTg1cHg7XG4gICAgLnRpdGxlIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgfVxuICAgIC5zdWJ0aXRsZSB7XG4gICAgICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zdWJ0ZXh0Q29sb3JMVH07XG4gICAgICBmb250LXNpemU6IDExcHg7XG4gICAgfVxuICB9XG4gIC53YXJuaW5nIHtcbiAgICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5lcnJvckNvbG9yfTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICB9XG4gIC5kZXNjcmlwdGlvbi5mdWxsIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuc2VsZWN0aW9uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBmbGV4OiAxO1xuICAgIHBhZGRpbmctbGVmdDogNTBweDtcblxuICAgIHNlbGVjdCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDFweDtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZvbnQ6IGluaGVyaXQ7XG4gICAgICBsaW5lLWhlaWdodDogMS41ZW07XG4gICAgICBwYWRkaW5nOiAwLjVlbSAzLjVlbSAwLjVlbSAxZW07XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIHdpZHRoOiAyNTBweDtcbiAgICAgIGhlaWdodDogMzZweDtcblxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCB0cmFuc3BhcmVudCA1MCUsIGdyYXkgNTAlKSxcbiAgICAgICAgbGluZWFyLWdyYWRpZW50KDEzNWRlZywgZ3JheSA1MCUsIHRyYW5zcGFyZW50IDUwJSksIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgI2NjYywgI2NjYyk7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjYWxjKDEwMCUgLSAyMHB4KSBjYWxjKDFlbSArIDJweCksIGNhbGMoMTAwJSAtIDE1cHgpIGNhbGMoMWVtICsgMnB4KSxcbiAgICAgICAgY2FsYygxMDAlIC0gMi41ZW0pIDQuNWVtO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiA1cHggNXB4LCA1cHggNXB4LCAxcHggMS41ZW07XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIH1cblxuICAgIHNlbGVjdDpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoNDVkZWcsIGdyZWVuIDUwJSwgdHJhbnNwYXJlbnQgNTAlKSxcbiAgICAgICAgbGluZWFyLWdyYWRpZW50KDEzNWRlZywgdHJhbnNwYXJlbnQgNTAlLCBncmVlbiA1MCUpLCBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNjY2MsICNjY2MpO1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2FsYygxMDAlIC0gMTVweCkgMWVtLCBjYWxjKDEwMCUgLSAyMHB4KSAxZW0sIGNhbGMoMTAwJSAtIDIuNWVtKSA0LjVlbTtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogNXB4IDVweCwgNXB4IDVweCwgMXB4IDEuNWVtO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIGJvcmRlci1jb2xvcjogZ3JlZW47XG4gICAgICBvdXRsaW5lOiAwO1xuICAgIH1cbiAgfVxuYDtcblxuZXhwb3J0IGNvbnN0IFN0eWxlZEZpbHRlcmVkT3B0aW9uID0gc3R5bGVkKFNlbGVjdGlvbkJ1dHRvbilgXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtYXJnaW46IDRweDtcbiAgcGFkZGluZzogOHB4IDEycHg7XG4gIHdpZHRoOiAxNDBweDtcblxuICAuZmlsdGVyLW9wdGlvbi10aXRsZSB7XG4gICAgY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUudGV4dENvbG9yTFR9O1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICB9XG4gIC5maWx0ZXItb3B0aW9uLXN1YnRpdGxlIHtcbiAgICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zdWJ0ZXh0Q29sb3JMVH07XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICB9XG5gO1xuXG5leHBvcnQgY29uc3QgU3R5bGVkVHlwZSA9IHN0eWxlZChTZWxlY3Rpb25CdXR0b24pYFxuICBoZWlnaHQ6IDEwMHB4O1xuICBtYXJnaW46IDRweDtcbiAgcGFkZGluZzogNnB4IDEwcHg7XG4gIHdpZHRoOiAxMDBweDtcbmA7XG5cbmV4cG9ydCBjb25zdCBXaWRnZXRDb250YWluZXIgPSBzdHlsZWQuZGl2YFxuICB6LWluZGV4OiAxO1xuYDtcblxuZXhwb3J0IGNvbnN0IEJvdHRvbVdpZGdldElubmVyID0gc3R5bGVkLmRpdmBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5ib3R0b21XaWRnZXRCZ2R9O1xuICBwYWRkaW5nOiAke3Byb3BzID0+IGAke3Byb3BzLnRoZW1lLmJvdHRvbUlubmVyUGRWZXJ0fXB4ICR7cHJvcHMudGhlbWUuYm90dG9tSW5uZXJQZFNpZGV9cHhgfTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tdG9wOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmJvdHRvbVBhbmVsR2FwfXB4O1xuYDtcblxuZXhwb3J0IGNvbnN0IE1hcENvbnRyb2xCdXR0b24gPSBzdHlsZWQoQnV0dG9uKS5hdHRycyh7XG4gIGNsYXNzTmFtZTogJ21hcC1jb250cm9sLWJ1dHRvbidcbn0pYFxuICBib3gtc2hhZG93OiAwIDZweCAxMnB4IDAgcmdiYSgwLCAwLCAwLCAwLjE2KTtcbiAgaGVpZ2h0OiAzMnB4O1xuICB3aWR0aDogMzJweDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtwcm9wcyA9PlxuICAgIHByb3BzLmFjdGl2ZSA/IHByb3BzLnRoZW1lLmZsb2F0aW5nQnRuQmdkSG92ZXIgOiBwcm9wcy50aGVtZS5mbG9hdGluZ0J0bkJnZH07XG4gIGNvbG9yOiAke3Byb3BzID0+XG4gICAgcHJvcHMuYWN0aXZlID8gcHJvcHMudGhlbWUuZmxvYXRpbmdCdG5BY3RDb2xvciA6IHByb3BzLnRoZW1lLmZsb2F0aW5nQnRuQ29sb3J9O1xuICBib3JkZXI6ICR7cHJvcHMgPT5cbiAgICBwcm9wcy5hY3RpdmUgPyBwcm9wcy50aGVtZS5mbG9hdGluZ0J0bkJvcmRlckhvdmVyIDogcHJvcHMudGhlbWUuZmxvYXRpbmdCdG5Cb3JkZXJ9O1xuXG4gIDpob3ZlcixcbiAgOmZvY3VzLFxuICA6YWN0aXZlLFxuICAmLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5mbG9hdGluZ0J0bkJnZEhvdmVyfTtcbiAgICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5mbG9hdGluZ0J0bkFjdENvbG9yfTtcbiAgICBib3JkZXI6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuZmxvYXRpbmdCdG5Cb3JkZXJIb3Zlcn07XG4gIH1cbiAgc3ZnIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbmA7XG5cbmV4cG9ydCBjb25zdCBTdHlsZWRGaWx0ZXJDb250ZW50ID0gc3R5bGVkLmRpdmBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5wYW5lbENvbnRlbnRCYWNrZ3JvdW5kfTtcbiAgcGFkZGluZzogMTJweDtcbmA7XG5cbmV4cG9ydCBjb25zdCBUcnVuY2F0ZWRUaXRsZVRleHQgPSBzdHlsZWQuZGl2YFxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbmA7XG5cbmV4cG9ydCBjb25zdCBDaGVja01hcmsgPSBzdHlsZWQuc3Bhbi5hdHRycyh7XG4gIGNsYXNzTmFtZTogJ2NoZWNrYm94LWlubmVyJ1xufSlgXG4gIGJhY2tncm91bmQtY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc2VsZWN0aW9uQnRuQm9yZGVyQWN0Q29sb3J9O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTBweDtcbiAgaGVpZ2h0OiAxMHB4O1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAycHg7XG5cbiAgOmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2ZmZjtcbiAgICBib3JkZXItdG9wOiAwO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKSBzY2FsZSgxKSB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgb3BhY2l0eTogMTtcbiAgICBjb250ZW50OiAnICc7XG4gICAgdG9wOiA0MCU7XG4gICAgbGVmdDogMzAlO1xuICAgIHdpZHRoOiAzLjJweDtcbiAgICBoZWlnaHQ6IDYuMjJweDtcbiAgfVxuYDtcbiJdfQ==
403
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2NvbW1vbi9zdHlsZWQtY29tcG9uZW50cy5qcyJdLCJuYW1lcyI6WyJTZWxlY3RUZXh0Iiwic3R5bGVkIiwic3BhbiIsInByb3BzIiwidGhlbWUiLCJsYWJlbENvbG9yIiwic2VsZWN0Rm9udFNpemUiLCJTZWxlY3RUZXh0Qm9sZCIsInRleHRDb2xvciIsIkljb25Sb3VuZFNtYWxsIiwiZGl2Iiwic2Vjb25kYXJ5QnRuQmdkSG92ZXIiLCJzZWNvbmRhcnlCdG5Db2xvciIsIkNlbnRlckZsZXhib3giLCJDZW50ZXJWZXJ0aWNhbEZsZXhib3giLCJTcGFjZUJldHdlZW5GbGV4Ym94IiwiU0JGbGV4Ym94SXRlbSIsIlNCRmxleGJveE5vTWFyZ2luIiwiUGFuZWxMYWJlbCIsImxhYmVsIiwiYXR0cnMiLCJjbGFzc05hbWUiLCJhY3RpdmUiLCJsYWJlbENvbG9yQWN0aXZlIiwiUGFuZWxMYWJlbFdyYXBwZXIiLCJQYW5lbExhYmVsQm9sZCIsIlBhbmVsSGVhZGVyVGl0bGUiLCJQYW5lbEhlYWRlckNvbnRlbnQiLCJQYW5lbENvbnRlbnQiLCJwYW5lbENvbnRlbnRCYWNrZ3JvdW5kIiwiU2lkZVBhbmVsU2VjdGlvbiIsImRpc2FibGVkIiwiU2lkZVBhbmVsRGl2aWRlciIsInNpZGVwYW5lbERpdmlkZXJCb3JkZXIiLCJwYW5lbEJvcmRlckNvbG9yIiwic2lkZXBhbmVsRGl2aWRlck1hcmdpbiIsInNpZGVwYW5lbERpdmlkZXJIZWlnaHQiLCJUb29sdGlwIiwiUmVhY3RUb29sdGlwIiwidG9vbHRpcEZvbnRTaXplIiwidG9vbHRpcEJveFNoYWRvdyIsInRvb2x0aXBCZyIsInRvb2x0aXBDb2xvciIsIkJ1dHRvbiIsIm5lZ2F0aXZlIiwibmVnYXRpdmVCdG5CZ2QiLCJzZWNvbmRhcnkiLCJzZWNvbmRhcnlCdG5CZ2QiLCJsaW5rIiwibGlua0J0bkJnZCIsImZsb2F0aW5nIiwiZmxvYXRpbmdCdG5CZ2QiLCJjdGEiLCJjdGFCdG5CZ2QiLCJwcmltYXJ5QnRuQmdkIiwicHJpbWFyeUJ0blJhZGl1cyIsIm5lZ2F0aXZlQnRuQ29sb3IiLCJsaW5rQnRuQ29sb3IiLCJmbG9hdGluZ0J0bkNvbG9yIiwiY3RhQnRuQ29sb3IiLCJwcmltYXJ5QnRuQ29sb3IiLCJsYXJnZSIsInByaW1hcnlCdG5Gb250U2l6ZUxhcmdlIiwic21hbGwiLCJwcmltYXJ5QnRuRm9udFNpemVTbWFsbCIsInByaW1hcnlCdG5Gb250U2l6ZURlZmF1bHQiLCJidG5Gb250RmFtaWx5IiwidHJhbnNpdGlvbiIsIndpZHRoIiwibmVnYXRpdmVCdG5Cb3JkZXIiLCJzZWNvbmRhcnlCdG5Cb3JkZXIiLCJmbG9hdGluZ0J0bkJvcmRlciIsImxpbmtCdG5Cb3JkZXIiLCJwcmltYXJ5QnRuQm9yZGVyIiwibmVnYXRpdmVCdG5CZ2RIb3ZlciIsImxpbmtCdG5BY3RCZ2RIb3ZlciIsImZsb2F0aW5nQnRuQmdkSG92ZXIiLCJjdGFCdG5CZ2RIb3ZlciIsInByaW1hcnlCdG5CZ2RIb3ZlciIsIm5lZ2F0aXZlQnRuQWN0Q29sb3IiLCJzZWNvbmRhcnlCdG5BY3RDb2xvciIsImxpbmtCdG5BY3RDb2xvciIsImZsb2F0aW5nQnRuQWN0Q29sb3IiLCJjdGFCdG5BY3RDb2xvciIsInByaW1hcnlCdG5BY3RDb2xvciIsIklucHV0IiwiaW5wdXQiLCJzZWNvbmRhcnlJbnB1dCIsIklucHV0TGlnaHQiLCJpbnB1dExUIiwiVGV4dEFyZWEiLCJ0ZXh0YXJlYSIsIlRleHRBcmVhTGlnaHQiLCJJbmxpbmVJbnB1dCIsImlubGluZUlucHV0IiwiU3R5bGVkUGFuZWxIZWFkZXIiLCJwYW5lbEJhY2tncm91bmRIb3ZlciIsInBhbmVsQmFja2dyb3VuZCIsImxhYmVsUkNHQ29sb3JWYWx1ZXMiLCJqb2luIiwicGFuZWxIZWFkZXJIZWlnaHQiLCJwYW5lbEhlYWRlckJvcmRlclJhZGl1cyIsIlN0eWxlZFBhbmVsRHJvcGRvd24iLCJwYW5lbERyb3Bkb3duU2Nyb2xsQmFyIiwidHlwZSIsIm1vZGFsRHJvcGRvd25CYWNrZ3JvdW5kIiwicGFuZWxCb3hTaGFkb3ciLCJwYW5lbEJvcmRlclJhZGl1cyIsIkJ1dHRvbkdyb3VwIiwiRGF0YXNldFNxdWFyZSIsImNvbG9yIiwiU2VsZWN0aW9uQnV0dG9uIiwic2VsZWN0ZWQiLCJzZWxlY3Rpb25CdG5Cb3JkZXJBY3RDb2xvciIsInNlbGVjdGlvbkJ0bkJvcmRlckNvbG9yIiwic2VsZWN0aW9uQnRuQWN0Q29sb3IiLCJzZWxlY3Rpb25CdG5Db2xvciIsInNlbGVjdGlvbkJ0bkFjdEJnZCIsInNlbGVjdGlvbkJ0bkJnZCIsIlRhYmxlIiwidGFibGUiLCJwYW5lbEJhY2tncm91bmRMVCIsInRpdGxlQ29sb3JMVCIsInBhbmVsQm9yZGVyTFQiLCJTdHlsZWRNb2RhbENvbnRlbnQiLCJ0ZXh0Q29sb3JMVCIsIm1vZGFsTGF0ZXJhbFBhZGRpbmciLCJtZWRpYSIsInBvcnRhYmxlIiwibW9kYWxQb3J0YWJsZUxhdGVyYWxQYWRkaW5nIiwiU3R5bGVkTW9kYWxWZXJ0aWNhbFBhbmVsIiwicGFsbSIsIlN0eWxlZE1vZGFsU2VjdGlvbiIsInN1YnRleHRDb2xvckxUIiwiU3R5bGVkTW9kYWxJbnB1dEZvb3Rub3RlIiwiZXJyb3IiLCJlcnJvckNvbG9yIiwiU3R5bGVkTWFwQ29udGFpbmVyIiwiU3R5bGVkQXR0cmJ1dGlvbiIsIlN0eWxlZEV4cG9ydFNlY3Rpb24iLCJTdHlsZWRGaWx0ZXJlZE9wdGlvbiIsIlN0eWxlZFR5cGUiLCJXaWRnZXRDb250YWluZXIiLCJCb3R0b21XaWRnZXRJbm5lciIsImJvdHRvbVdpZGdldEJnZCIsImJvdHRvbUlubmVyUGRWZXJ0IiwiYm90dG9tSW5uZXJQZFNpZGUiLCJib3R0b21QYW5lbEdhcCIsIk1hcENvbnRyb2xCdXR0b24iLCJmbG9hdGluZ0J0bkJvcmRlckhvdmVyIiwiU3R5bGVkRmlsdGVyQ29udGVudCIsIlRydW5jYXRlZFRpdGxlVGV4dCIsIkNoZWNrTWFyayJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFvQkE7O0FBQ0E7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MEgsa0JBQWtCLEdBQUd0Siw2QkFBT1MsR0FBVixxS0FBeEI7Ozs7QUFNQSxJQUFNOEksU0FBUyxHQUFHdkosNkJBQU9DLElBQVAsQ0FBWWtCLEtBQVosQ0FBa0I7QUFDekNDLEVBQUFBLFNBQVMsRUFBRTtBQUQ4QixDQUFsQixDQUFILDJpQkFHQSxVQUFBbEIsS0FBSztBQUFBLFNBQUlBLEtBQUssQ0FBQ0MsS0FBTixDQUFZNkcsMEJBQWhCO0FBQUEsQ0FITCxDQUFmIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IChjKSAyMDIyIFViZXIgVGVjaG5vbG9naWVzLCBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cblxuaW1wb3J0IHN0eWxlZCBmcm9tICdzdHlsZWQtY29tcG9uZW50cyc7XG5pbXBvcnQgUmVhY3RUb29sdGlwIGZyb20gJ3JlYWN0LXRvb2x0aXAnO1xuaW1wb3J0IHttZWRpYX0gZnJvbSAnc3R5bGVzL21lZGlhLWJyZWFrcG9pbnRzJztcbmltcG9ydCBjbGFzc25hbWVzIGZyb20gJ2NsYXNzbmFtZXMnO1xuXG5leHBvcnQgY29uc3QgU2VsZWN0VGV4dCA9IHN0eWxlZC5zcGFuYFxuICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5sYWJlbENvbG9yfTtcbiAgZm9udC1zaXplOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnNlbGVjdEZvbnRTaXplfTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcblxuICBpIHtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbmA7XG5cbmV4cG9ydCBjb25zdCBTZWxlY3RUZXh0Qm9sZCA9IHN0eWxlZChTZWxlY3RUZXh0KWBcbiAgY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUudGV4dENvbG9yfTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbmA7XG5cbmV4cG9ydCBjb25zdCBJY29uUm91bmRTbWFsbCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxOHB4O1xuICBoZWlnaHQ6IDE4cHg7XG4gIGJvcmRlci1yYWRpdXM6IDlweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zZWNvbmRhcnlCdG5CZ2RIb3Zlcn07XG4gIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnNlY29uZGFyeUJ0bkNvbG9yfTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgOmhvdmVyIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zZWNvbmRhcnlCdG5CZ2RIb3Zlcn07XG4gIH1cbmA7XG5cbmV4cG9ydCBjb25zdCBDZW50ZXJGbGV4Ym94ID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbmA7XG5cbmV4cG9ydCBjb25zdCBDZW50ZXJWZXJ0aWNhbEZsZXhib3ggPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuYDtcblxuZXhwb3J0IGNvbnN0IFNwYWNlQmV0d2VlbkZsZXhib3ggPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIG1hcmdpbi1sZWZ0OiAtMTZweDtcbmA7XG5cbmV4cG9ydCBjb25zdCBTQkZsZXhib3hJdGVtID0gc3R5bGVkLmRpdmBcbiAgZmxleC1ncm93OiAxO1xuICBtYXJnaW4tbGVmdDogMTZweDtcbmA7XG5cbmV4cG9ydCBjb25zdCBTQkZsZXhib3hOb01hcmdpbiA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmV4cG9ydCBjb25zdCBQYW5lbExhYmVsID0gc3R5bGVkLmxhYmVsLmF0dHJzKHtcbiAgY2xhc3NOYW1lOiAnc2lkZS1wYW5lbC1wYW5lbF9fbGFiZWwnXG59KWBcbiAgY29sb3I6ICR7cHJvcHMgPT4gKHByb3BzLmFjdGl2ZSA/IHByb3BzLnRoZW1lLmxhYmVsQ29sb3JBY3RpdmUgOiBwcm9wcy50aGVtZS5sYWJlbENvbG9yKX07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAxMXB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBtYXJnaW4tYm90dG9tOiA0cHg7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuYDtcblxuZXhwb3J0IGNvbnN0IFBhbmVsTGFiZWxXcmFwcGVyID0gc3R5bGVkLmRpdi5hdHRycyh7XG4gIGNsYXNzTmFtZTogJ3NpZGUtcGFuZWwtcGFuZWxfX2xhYmVsLXdyYXBwZXInXG59KWBcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IHNlbGYtc3RhcnQ7XG5gO1xuXG5leHBvcnQgY29uc3QgUGFuZWxMYWJlbEJvbGQgPSBzdHlsZWQoUGFuZWxMYWJlbClgXG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG5gO1xuXG5leHBvcnQgY29uc3QgUGFuZWxIZWFkZXJUaXRsZSA9IHN0eWxlZC5zcGFuLmF0dHJzKHtcbiAgY2xhc3NOYW1lOiAnc2lkZS1wYW5lbC1wYW5lbF9faGVhZGVyX190aXRsZSdcbn0pYFxuICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS50ZXh0Q29sb3J9O1xuICBmb250LXNpemU6IDEzcHg7XG4gIGxldHRlci1zcGFjaW5nOiAwLjQzcHg7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuYDtcblxuZXhwb3J0IGNvbnN0IFBhbmVsSGVhZGVyQ29udGVudCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnRleHRDb2xvcn07XG4gIHBhZGRpbmctbGVmdDogMTJweDtcblxuICAuaWNvbiB7XG4gICAgY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUubGFiZWxDb2xvcn07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1hcmdpbi1yaWdodDogMTJweDtcbiAgfVxuYDtcblxuZXhwb3J0IGNvbnN0IFBhbmVsQ29udGVudCA9IHN0eWxlZC5kaXYuYXR0cnMoe1xuICBjbGFzc05hbWU6ICdzaWRlLXBhbmVsLXBhbmVsX19jb250ZW50J1xufSlgXG4gIGJhY2tncm91bmQtY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUucGFuZWxDb250ZW50QmFja2dyb3VuZH07XG4gIHBhZGRpbmc6IDEycHg7XG5gO1xuXG5leHBvcnQgY29uc3QgU2lkZVBhbmVsU2VjdGlvbiA9IHN0eWxlZC5kaXYuYXR0cnMoe1xuICBjbGFzc05hbWU6ICdzaWRlLXBhbmVsLXNlY3Rpb24nXG59KWBcbiAgbWFyZ2luLWJvdHRvbTogMTJweDtcblxuICBvcGFjaXR5OiAke3Byb3BzID0+IChwcm9wcy5kaXNhYmxlZCA/IDAuNCA6IDEpfTtcbiAgcG9pbnRlci1ldmVudHM6ICR7cHJvcHMgPT4gKHByb3BzLmRpc2FibGVkID8gJ25vbmUnIDogJ2FsbCcpfTtcbmA7XG5cbmV4cG9ydCBjb25zdCBTaWRlUGFuZWxEaXZpZGVyID0gc3R5bGVkLmRpdi5hdHRycyh7XG4gIGNsYXNzTmFtZTogJ3NpZGUtcGFuZWwtZGl2aWRlcidcbn0pYFxuICBib3JkZXItYm90dG9tOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnNpZGVwYW5lbERpdmlkZXJCb3JkZXJ9IHNvbGlkXG4gICAgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5wYW5lbEJvcmRlckNvbG9yfTtcbiAgbWFyZ2luLWJvdHRvbTogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zaWRlcGFuZWxEaXZpZGVyTWFyZ2lufXB4O1xuICBoZWlnaHQ6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc2lkZXBhbmVsRGl2aWRlckhlaWdodH1weDtcbmA7XG5cbmV4cG9ydCBjb25zdCBUb29sdGlwID0gc3R5bGVkKFJlYWN0VG9vbHRpcClgXG4gICYuX19yZWFjdF9jb21wb25lbnRfdG9vbHRpcCB7XG4gICAgZm9udC1zaXplOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnRvb2x0aXBGb250U2l6ZX07XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBwYWRkaW5nOiA3cHggMThweDtcbiAgICBib3gtc2hhZG93OiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnRvb2x0aXBCb3hTaGFkb3d9O1xuXG4gICAgJi50eXBlLWRhcmsge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS50b29sdGlwQmd9O1xuICAgICAgY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUudG9vbHRpcENvbG9yfTtcbiAgICAgICYucGxhY2UtYm90dG9tIHtcbiAgICAgICAgOmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnRvb2x0aXBCZ307XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5wbGFjZS10b3Age1xuICAgICAgICA6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUudG9vbHRpcEJnfTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLnBsYWNlLXJpZ2h0IHtcbiAgICAgICAgOmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUudG9vbHRpcEJnfTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLnBsYWNlLWxlZnQge1xuICAgICAgICA6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnRvb2x0aXBCZ307XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbmA7XG5cbmV4cG9ydCBjb25zdCBCdXR0b24gPSBzdHlsZWQuZGl2LmF0dHJzKHByb3BzID0+ICh7XG4gIGNsYXNzTmFtZTogY2xhc3NuYW1lcygnYnV0dG9uJywgcHJvcHMuY2xhc3NOYW1lKVxufSkpYFxuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAke3Byb3BzID0+XG4gICAgcHJvcHMubmVnYXRpdmVcbiAgICAgID8gcHJvcHMudGhlbWUubmVnYXRpdmVCdG5CZ2RcbiAgICAgIDogcHJvcHMuc2Vjb25kYXJ5XG4gICAgICA/IHByb3BzLnRoZW1lLnNlY29uZGFyeUJ0bkJnZFxuICAgICAgOiBwcm9wcy5saW5rXG4gICAgICA/IHByb3BzLnRoZW1lLmxpbmtCdG5CZ2RcbiAgICAgIDogcHJvcHMuZmxvYXRpbmdcbiAgICAgID8gcHJvcHMudGhlbWUuZmxvYXRpbmdCdG5CZ2RcbiAgICAgIDogcHJvcHMuY3RhXG4gICAgICA/IHByb3BzLnRoZW1lLmN0YUJ0bkJnZFxuICAgICAgOiBwcm9wcy50aGVtZS5wcmltYXJ5QnRuQmdkfTtcbiAgYm9yZGVyLXJhZGl1czogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5wcmltYXJ5QnRuUmFkaXVzfTtcbiAgY29sb3I6ICR7cHJvcHMgPT5cbiAgICBwcm9wcy5uZWdhdGl2ZVxuICAgICAgPyBwcm9wcy50aGVtZS5uZWdhdGl2ZUJ0bkNvbG9yXG4gICAgICA6IHByb3BzLnNlY29uZGFyeVxuICAgICAgPyBwcm9wcy50aGVtZS5zZWNvbmRhcnlCdG5Db2xvclxuICAgICAgOiBwcm9wcy5saW5rXG4gICAgICA/IHByb3BzLnRoZW1lLmxpbmtCdG5Db2xvclxuICAgICAgOiBwcm9wcy5mbG9hdGluZ1xuICAgICAgPyBwcm9wcy50aGVtZS5mbG9hdGluZ0J0bkNvbG9yXG4gICAgICA6IHByb3BzLmN0YVxuICAgICAgPyBwcm9wcy50aGVtZS5jdGFCdG5Db2xvclxuICAgICAgOiBwcm9wcy50aGVtZS5wcmltYXJ5QnRuQ29sb3J9O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBmb250LXNpemU6ICR7cHJvcHMgPT5cbiAgICBwcm9wcy5sYXJnZVxuICAgICAgPyBwcm9wcy50aGVtZS5wcmltYXJ5QnRuRm9udFNpemVMYXJnZVxuICAgICAgOiBwcm9wcy5zbWFsbFxuICAgICAgPyBwcm9wcy50aGVtZS5wcmltYXJ5QnRuRm9udFNpemVTbWFsbFxuICAgICAgOiBwcm9wcy50aGVtZS5wcmltYXJ5QnRuRm9udFNpemVEZWZhdWx0fTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1mYW1pbHk6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuYnRuRm9udEZhbWlseX07XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBsZXR0ZXItc3BhY2luZzogMC4zcHg7XG4gIGxpbmUtaGVpZ2h0OiAxNHB4O1xuICBvdXRsaW5lOiAwO1xuICBwYWRkaW5nOiAke3Byb3BzID0+IChwcm9wcy5sYXJnZSA/ICcxNHB4IDMycHgnIDogcHJvcHMuc21hbGwgPyAnNnB4IDlweCcgOiAnOXB4IDEycHgnKX07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdHJhbnNpdGlvbjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS50cmFuc2l0aW9ufTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6ICR7cHJvcHMgPT4gcHJvcHMud2lkdGggfHwgJ2F1dG8nfTtcbiAgb3BhY2l0eTogJHtwcm9wcyA9PiAocHJvcHMuZGlzYWJsZWQgPyAwLjQgOiAxKX07XG4gIHBvaW50ZXItZXZlbnRzOiAke3Byb3BzID0+IChwcm9wcy5kaXNhYmxlZCA/ICdub25lJyA6ICdhbGwnKX07XG4gIGJvcmRlcjogJHtwcm9wcyA9PlxuICAgIHByb3BzLm5lZ2F0aXZlXG4gICAgICA/IHByb3BzLnRoZW1lLm5lZ2F0aXZlQnRuQm9yZGVyXG4gICAgICA6IHByb3BzLnNlY29uZGFyeVxuICAgICAgPyBwcm9wcy50aGVtZS5zZWNvbmRhcnlCdG5Cb3JkZXJcbiAgICAgIDogcHJvcHMuZmxvYXRpbmdcbiAgICAgID8gcHJvcHMudGhlbWUuZmxvYXRpbmdCdG5Cb3JkZXJcbiAgICAgIDogcHJvcHMubGlua1xuICAgICAgPyBwcm9wcy50aGVtZS5saW5rQnRuQm9yZGVyXG4gICAgICA6IHByb3BzLnRoZW1lLnByaW1hcnlCdG5Cb3JkZXJ9O1xuICA6aG92ZXIsXG4gIDpmb2N1cyxcbiAgOmFjdGl2ZSxcbiAgJi5hY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR7cHJvcHMgPT5cbiAgICAgIHByb3BzLm5lZ2F0aXZlXG4gICAgICAgID8gcHJvcHMudGhlbWUubmVnYXRpdmVCdG5CZ2RIb3ZlclxuICAgICAgICA6IHByb3BzLnNlY29uZGFyeVxuICAgICAgICA/IHByb3BzLnRoZW1lLnNlY29uZGFyeUJ0bkJnZEhvdmVyXG4gICAgICAgIDogcHJvcHMubGlua1xuICAgICAgICA/IHByb3BzLnRoZW1lLmxpbmtCdG5BY3RCZ2RIb3ZlclxuICAgICAgICA6IHByb3BzLmZsb2F0aW5nXG4gICAgICAgID8gcHJvcHMudGhlbWUuZmxvYXRpbmdCdG5CZ2RIb3ZlclxuICAgICAgICA6IHByb3BzLmN0YVxuICAgICAgICA/IHByb3BzLnRoZW1lLmN0YUJ0bkJnZEhvdmVyXG4gICAgICAgIDogcHJvcHMudGhlbWUucHJpbWFyeUJ0bkJnZEhvdmVyfTtcbiAgICBjb2xvcjogJHtwcm9wcyA9PlxuICAgICAgcHJvcHMubmVnYXRpdmVcbiAgICAgICAgPyBwcm9wcy50aGVtZS5uZWdhdGl2ZUJ0bkFjdENvbG9yXG4gICAgICAgIDogcHJvcHMuc2Vjb25kYXJ5XG4gICAgICAgID8gcHJvcHMudGhlbWUuc2Vjb25kYXJ5QnRuQWN0Q29sb3JcbiAgICAgICAgOiBwcm9wcy5saW5rXG4gICAgICAgID8gcHJvcHMudGhlbWUubGlua0J0bkFjdENvbG9yXG4gICAgICAgIDogcHJvcHMuZmxvYXRpbmdcbiAgICAgICAgPyBwcm9wcy50aGVtZS5mbG9hdGluZ0J0bkFjdENvbG9yXG4gICAgICAgIDogcHJvcHMuY3RhXG4gICAgICAgID8gcHJvcHMudGhlbWUuY3RhQnRuQWN0Q29sb3JcbiAgICAgICAgOiBwcm9wcy50aGVtZS5wcmltYXJ5QnRuQWN0Q29sb3J9O1xuICB9XG5cbiAgc3ZnIHtcbiAgICBtYXJnaW4tcmlnaHQ6ICR7cHJvcHMgPT4gKHByb3BzLmxhcmdlID8gJzEwcHgnIDogcHJvcHMuc21hbGwgPyAnNnB4JyA6ICc4cHgnKX07XG4gIH1cbmA7XG5cbmV4cG9ydCBjb25zdCBJbnB1dCA9IHN0eWxlZC5pbnB1dGBcbiAgJHtwcm9wcyA9PiAocHJvcHMuc2Vjb25kYXJ5ID8gcHJvcHMudGhlbWUuc2Vjb25kYXJ5SW5wdXQgOiBwcm9wcy50aGVtZS5pbnB1dCl9O1xuYDtcblxuZXhwb3J0IGNvbnN0IElucHV0TGlnaHQgPSBzdHlsZWQuaW5wdXRgXG4gICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuaW5wdXRMVH07XG5gO1xuXG5leHBvcnQgY29uc3QgVGV4dEFyZWEgPSBzdHlsZWQudGV4dGFyZWFgXG4gICR7cHJvcHMgPT4gKHByb3BzLnNlY29uZGFyeSA/IHByb3BzLnRoZW1lLnNlY29uZGFyeUlucHV0IDogcHJvcHMudGhlbWUuaW5wdXQpfTtcbmA7XG5leHBvcnQgY29uc3QgVGV4dEFyZWFMaWdodCA9IHN0eWxlZC50ZXh0YXJlYWBcbiAgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5pbnB1dExUfSBoZWlnaHQ6IGF1dG87XG4gIHdoaXRlLXNwYWNlOiBwcmUtd3JhcDtcbmA7XG5cbmV4cG9ydCBjb25zdCBJbmxpbmVJbnB1dCA9IHN0eWxlZChJbnB1dClgXG4gICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuaW5saW5lSW5wdXR9O1xuYDtcblxuZXhwb3J0IGNvbnN0IFN0eWxlZFBhbmVsSGVhZGVyID0gc3R5bGVkLmRpdmBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtwcm9wcyA9PlxuICAgIHByb3BzLmFjdGl2ZSA/IHByb3BzLnRoZW1lLnBhbmVsQmFja2dyb3VuZEhvdmVyIDogcHJvcHMudGhlbWUucGFuZWxCYWNrZ3JvdW5kfTtcbiAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZFxuICAgIHJnYihcbiAgICAgICR7cHJvcHMgPT4gKHByb3BzLmxhYmVsUkNHQ29sb3JWYWx1ZXMgPyBwcm9wcy5sYWJlbFJDR0NvbG9yVmFsdWVzLmpvaW4oJywnKSA6ICd0cmFuc3BhcmVudCcpfVxuICAgICk7XG4gIHBhZGRpbmc6IDAgMTBweCAwIDA7XG4gIGhlaWdodDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5wYW5lbEhlYWRlckhlaWdodH1weDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnBhbmVsSGVhZGVyQm9yZGVyUmFkaXVzfTtcbiAgdHJhbnNpdGlvbjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS50cmFuc2l0aW9ufTtcbmA7XG5cbmV4cG9ydCBjb25zdCBTdHlsZWRQYW5lbERyb3Bkb3duID0gc3R5bGVkLmRpdmBcbiAgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5wYW5lbERyb3Bkb3duU2Nyb2xsQmFyfVxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke3Byb3BzID0+XG4gICAgcHJvcHMudHlwZSA9PT0gJ2xpZ2h0JyA/IHByb3BzLnRoZW1lLm1vZGFsRHJvcGRvd25CYWNrZ3JvdW5kIDogcHJvcHMudGhlbWUucGFuZWxCYWNrZ3JvdW5kfTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgYm94LXNoYWRvdzogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5wYW5lbEJveFNoYWRvd307XG4gIGJvcmRlci1yYWRpdXM6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUucGFuZWxCb3JkZXJSYWRpdXN9O1xuICBtYXgtaGVpZ2h0OiA1MDBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiA5OTk7XG5gO1xuXG5leHBvcnQgY29uc3QgQnV0dG9uR3JvdXAgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICAuYnV0dG9uIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAycHg7XG4gIH1cbiAgLmJ1dHRvbjpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5wcmltYXJ5QnRuUmFkaXVzfTtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnByaW1hcnlCdG5SYWRpdXN9O1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5idXR0b246bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUucHJpbWFyeUJ0blJhZGl1c307XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUucHJpbWFyeUJ0blJhZGl1c307XG4gIH1cbmA7XG5cbmV4cG9ydCBjb25zdCBEYXRhc2V0U3F1YXJlID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogOHB4O1xuICBoZWlnaHQ6IDhweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKCR7cHJvcHMgPT4gcHJvcHMuY29sb3Iuam9pbignLCcpfSk7XG4gIG1hcmdpbi1yaWdodDogMTJweDtcbmA7XG5cbmV4cG9ydCBjb25zdCBTZWxlY3Rpb25CdXR0b24gPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgYm9yZGVyOiAxcHggc29saWRcbiAgICAke3Byb3BzID0+XG4gICAgICBwcm9wcy5zZWxlY3RlZFxuICAgICAgICA/IHByb3BzLnRoZW1lLnNlbGVjdGlvbkJ0bkJvcmRlckFjdENvbG9yXG4gICAgICAgIDogcHJvcHMudGhlbWUuc2VsZWN0aW9uQnRuQm9yZGVyQ29sb3J9O1xuICBjb2xvcjogJHtwcm9wcyA9PlxuICAgIHByb3BzLnNlbGVjdGVkID8gcHJvcHMudGhlbWUuc2VsZWN0aW9uQnRuQWN0Q29sb3IgOiBwcm9wcy50aGVtZS5zZWxlY3Rpb25CdG5Db2xvcn07XG4gIGJhY2tncm91bmQtY29sb3I6ICR7cHJvcHMgPT5cbiAgICBwcm9wcy5zZWxlY3RlZCA/IHByb3BzLnRoZW1lLnNlbGVjdGlvbkJ0bkFjdEJnZCA6IHByb3BzLnRoZW1lLnNlbGVjdGlvbkJ0bkJnZH07XG5cbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LXdlaWdodDogNTAwO1xuICBtYXJnaW4tcmlnaHQ6IDZweDtcbiAgcGFkZGluZzogNnB4IDE2cHg7XG5cbiAgOmhvdmVyIHtcbiAgICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zZWxlY3Rpb25CdG5BY3RDb2xvcn07XG4gICAgYm9yZGVyOiAxcHggc29saWQgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zZWxlY3Rpb25CdG5Cb3JkZXJBY3RDb2xvcn07XG4gIH1cbmA7XG5cbmV4cG9ydCBjb25zdCBUYWJsZSA9IHN0eWxlZC50YWJsZWBcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xuXG4gIHRoZWFkIHtcbiAgICB0ciB0aCB7XG4gICAgICBiYWNrZ3JvdW5kOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnBhbmVsQmFja2dyb3VuZExUfTtcbiAgICAgIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnRpdGxlQ29sb3JMVH07XG4gICAgICBwYWRkaW5nOiAxOHB4IDEycHg7XG4gICAgICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgICB9XG4gIH1cblxuICB0Ym9keSB7XG4gICAgdHIgdGQge1xuICAgICAgYm9yZGVyLWJvdHRvbTogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5wYW5lbEJvcmRlckxUfTtcbiAgICAgIHBhZGRpbmc6IDEycHg7XG4gICAgfVxuICB9XG5gO1xuXG5leHBvcnQgY29uc3QgU3R5bGVkTW9kYWxDb250ZW50ID0gc3R5bGVkLmRpdmBcbiAgYmFja2dyb3VuZDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5wYW5lbEJhY2tncm91bmRMVH07XG4gIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnRleHRDb2xvckxUfTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZm9udC1zaXplOiAxMHB4O1xuICBwYWRkaW5nOiAyNHB4ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUubW9kYWxMYXRlcmFsUGFkZGluZ307XG4gIG1hcmdpbjogMCAtJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5tb2RhbExhdGVyYWxQYWRkaW5nfTtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAke21lZGlhLnBvcnRhYmxlYFxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgcGFkZGluZzogMTZweCAke3Byb3BzID0+IHByb3BzLnRoZW1lLm1vZGFsUG9ydGFibGVMYXRlcmFsUGFkZGluZ307XG4gICAgbWFyZ2luOiAwIC0ke3Byb3BzID0+IHByb3BzLnRoZW1lLm1vZGFsUG9ydGFibGVMYXRlcmFsUGFkZGluZ307XG4gIGB9O1xuYDtcblxuZXhwb3J0IGNvbnN0IFN0eWxlZE1vZGFsVmVydGljYWxQYW5lbCA9IHN0eWxlZC5kaXYuYXR0cnMoe1xuICBjbGFzc05hbWU6ICdtb2RhbC12ZXJ0aWNhbC1wYW5lbCdcbn0pYFxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbiAgZm9udC1zaXplOiAxMnB4O1xuXG4gIC5tb2RhbC1zZWN0aW9uOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAyNHB4O1xuICAgICR7bWVkaWEucGFsbWBcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgYH07XG4gIH1cblxuICBpbnB1dCB7XG4gICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gIH1cbmA7XG5cbmV4cG9ydCBjb25zdCBTdHlsZWRNb2RhbFNlY3Rpb24gPSBzdHlsZWQuZGl2LmF0dHJzKHtcbiAgY2xhc3NOYW1lOiAnbW9kYWwtc2VjdGlvbidcbn0pYFxuICBtYXJnaW4tYm90dG9tOiAzMnB4O1xuXG4gIC5tb2RhbC1zZWN0aW9uLXRpdGxlIHtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICB9XG4gIC5tb2RhbC1zZWN0aW9uLXN1YnRpdGxlIHtcbiAgICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zdWJ0ZXh0Q29sb3JMVH07XG4gIH1cblxuICBpbnB1dCB7XG4gICAgbWFyZ2luLXRvcDogOHB4O1xuICB9XG5cbiAgJHttZWRpYS5wb3J0YWJsZWBcbiAgICBtYXJnaW4tYm90dG9tOiAyNHB4O1xuICBgfTtcbiAgJHttZWRpYS5wYWxtYFxuICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gIGB9O1xuYDtcblxuZXhwb3J0IGNvbnN0IFN0eWxlZE1vZGFsSW5wdXRGb290bm90ZSA9IHN0eWxlZC5kaXYuYXR0cnMoe1xuICBjbGFzc05hbWU6ICdtb2RhbC1pbnB1dF9fZm9vdG5vdGUnXG59KWBcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgY29sb3I6ICR7cHJvcHMgPT4gKHByb3BzLmVycm9yID8gcHJvcHMudGhlbWUuZXJyb3JDb2xvciA6IHByb3BzLnRoZW1lLnN1YnRleHRDb2xvckxUKX07XG4gIGZvbnQtc2l6ZTogMTBweDtcbmA7XG4vKipcbiAqIE5ld2VyIHZlcnNpb25zIG9mIG1hcGJveC5nbCBkaXNwbGF5IGFuIGVycm9yIG1lc3NhZ2UgYmFubmVyIG9uIHRvcCBvZiB0aGUgbWFwIGJ5IGRlZmF1bHRcbiAqIHdoaWNoIHdpbGwgY2F1c2UgdGhlIG1hcCB0byBkaXNwbGF5IHBvaW50cyBpbiB0aGUgd3JvbmcgbG9jYXRpb25zXG4gKiBUaGlzIHdvcmthcm91bmQgd2lsbCBoaWRlIHRoZSBlcnJvciBiYW5uZXIuXG4gKi9cbmV4cG9ydCBjb25zdCBTdHlsZWRNYXBDb250YWluZXIgPSBzdHlsZWQuZGl2YFxuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICAubWFwYm94Z2wtbWFwIHtcbiAgICAubWFwYm94Z2wtbWlzc2luZy1jc3Mge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLm1hcGJveGdsLWN0cmwtYXR0cmliIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5gO1xuXG5leHBvcnQgY29uc3QgU3R5bGVkQXR0cmJ1dGlvbiA9IHN0eWxlZC5kaXYuYXR0cnMoe1xuICBjbGFzc05hbWU6ICdtYXBib3gtYXR0cmlidXRpb24tY29udGFpbmVyJ1xufSlgXG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCAxMHB4IDJweDtcbiAgei1pbmRleDogMDtcblxuICAuYXR0cml0aW9uLWxvZ28ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZm9udC1zaXplOiAxMHB4O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5sYWJlbENvbG9yfTtcbiAgICBtYXJnaW4tYm90dG9tOiAtNHB4O1xuXG4gICAgYS5tYXBib3hnbC1jdHJsLWxvZ28ge1xuICAgICAgd2lkdGg6IDcycHg7XG4gICAgICBtYXJnaW4tbGVmdDogNnB4O1xuICAgIH1cbiAgfVxuICBhIHtcbiAgICBmb250LXNpemU6IDEwcHg7XG4gIH1cbmA7XG5cbmV4cG9ydCBjb25zdCBTdHlsZWRFeHBvcnRTZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgbWFyZ2luOiAzNXB4IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS50ZXh0Q29sb3JMVH07XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgb3BhY2l0eTogJHtwcm9wcyA9PiAocHJvcHMuZGlzYWJsZWQgPyAwLjMgOiAxKX07XG4gIHBvaW50ZXItZXZlbnRzOiAke3Byb3BzID0+IChwcm9wcy5kaXNhYmxlZCA/ICdub25lJyA6ICdhbGwnKX07XG5cbiAgLmRlc2NyaXB0aW9uIHtcbiAgICB3aWR0aDogMTg1cHg7XG4gICAgLnRpdGxlIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgfVxuICAgIC5zdWJ0aXRsZSB7XG4gICAgICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zdWJ0ZXh0Q29sb3JMVH07XG4gICAgICBmb250LXNpemU6IDExcHg7XG4gICAgfVxuICB9XG4gIC53YXJuaW5nIHtcbiAgICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5lcnJvckNvbG9yfTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICB9XG4gIC5kZXNjcmlwdGlvbi5mdWxsIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuc2VsZWN0aW9uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBmbGV4OiAxO1xuICAgIHBhZGRpbmctbGVmdDogNTBweDtcblxuICAgIHNlbGVjdCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDFweDtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZvbnQ6IGluaGVyaXQ7XG4gICAgICBsaW5lLWhlaWdodDogMS41ZW07XG4gICAgICBwYWRkaW5nOiAwLjVlbSAzLjVlbSAwLjVlbSAxZW07XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIHdpZHRoOiAyNTBweDtcbiAgICAgIGhlaWdodDogMzZweDtcblxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCB0cmFuc3BhcmVudCA1MCUsIGdyYXkgNTAlKSxcbiAgICAgICAgbGluZWFyLWdyYWRpZW50KDEzNWRlZywgZ3JheSA1MCUsIHRyYW5zcGFyZW50IDUwJSksIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgI2NjYywgI2NjYyk7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjYWxjKDEwMCUgLSAyMHB4KSBjYWxjKDFlbSArIDJweCksIGNhbGMoMTAwJSAtIDE1cHgpIGNhbGMoMWVtICsgMnB4KSxcbiAgICAgICAgY2FsYygxMDAlIC0gMi41ZW0pIDQuNWVtO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiA1cHggNXB4LCA1cHggNXB4LCAxcHggMS41ZW07XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIH1cblxuICAgIHNlbGVjdDpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoNDVkZWcsIGdyZWVuIDUwJSwgdHJhbnNwYXJlbnQgNTAlKSxcbiAgICAgICAgbGluZWFyLWdyYWRpZW50KDEzNWRlZywgdHJhbnNwYXJlbnQgNTAlLCBncmVlbiA1MCUpLCBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNjY2MsICNjY2MpO1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2FsYygxMDAlIC0gMTVweCkgMWVtLCBjYWxjKDEwMCUgLSAyMHB4KSAxZW0sIGNhbGMoMTAwJSAtIDIuNWVtKSA0LjVlbTtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogNXB4IDVweCwgNXB4IDVweCwgMXB4IDEuNWVtO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIGJvcmRlci1jb2xvcjogZ3JlZW47XG4gICAgICBvdXRsaW5lOiAwO1xuICAgIH1cbiAgfVxuYDtcblxuZXhwb3J0IGNvbnN0IFN0eWxlZEZpbHRlcmVkT3B0aW9uID0gc3R5bGVkKFNlbGVjdGlvbkJ1dHRvbilgXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtYXJnaW46IDRweDtcbiAgcGFkZGluZzogOHB4IDEycHg7XG4gIHdpZHRoOiAxNDBweDtcblxuICAuZmlsdGVyLW9wdGlvbi10aXRsZSB7XG4gICAgY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUudGV4dENvbG9yTFR9O1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICB9XG4gIC5maWx0ZXItb3B0aW9uLXN1YnRpdGxlIHtcbiAgICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zdWJ0ZXh0Q29sb3JMVH07XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICB9XG5gO1xuXG5leHBvcnQgY29uc3QgU3R5bGVkVHlwZSA9IHN0eWxlZChTZWxlY3Rpb25CdXR0b24pYFxuICBoZWlnaHQ6IDEwMHB4O1xuICBtYXJnaW46IDRweDtcbiAgcGFkZGluZzogNnB4IDEwcHg7XG4gIHdpZHRoOiAxMDBweDtcbmA7XG5cbmV4cG9ydCBjb25zdCBXaWRnZXRDb250YWluZXIgPSBzdHlsZWQuZGl2YFxuICB6LWluZGV4OiAxO1xuYDtcblxuZXhwb3J0IGNvbnN0IEJvdHRvbVdpZGdldElubmVyID0gc3R5bGVkLmRpdmBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5ib3R0b21XaWRnZXRCZ2R9O1xuICBwYWRkaW5nOiAke3Byb3BzID0+IGAke3Byb3BzLnRoZW1lLmJvdHRvbUlubmVyUGRWZXJ0fXB4ICR7cHJvcHMudGhlbWUuYm90dG9tSW5uZXJQZFNpZGV9cHhgfTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tdG9wOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmJvdHRvbVBhbmVsR2FwfXB4O1xuYDtcblxuZXhwb3J0IGNvbnN0IE1hcENvbnRyb2xCdXR0b24gPSBzdHlsZWQoQnV0dG9uKS5hdHRycyh7XG4gIGNsYXNzTmFtZTogJ21hcC1jb250cm9sLWJ1dHRvbidcbn0pYFxuICBib3gtc2hhZG93OiAwIDZweCAxMnB4IDAgcmdiYSgwLCAwLCAwLCAwLjE2KTtcbiAgaGVpZ2h0OiAzMnB4O1xuICB3aWR0aDogMzJweDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtwcm9wcyA9PlxuICAgIHByb3BzLmFjdGl2ZSA/IHByb3BzLnRoZW1lLmZsb2F0aW5nQnRuQmdkSG92ZXIgOiBwcm9wcy50aGVtZS5mbG9hdGluZ0J0bkJnZH07XG4gIGNvbG9yOiAke3Byb3BzID0+XG4gICAgcHJvcHMuYWN0aXZlID8gcHJvcHMudGhlbWUuZmxvYXRpbmdCdG5BY3RDb2xvciA6IHByb3BzLnRoZW1lLmZsb2F0aW5nQnRuQ29sb3J9O1xuICBib3JkZXI6ICR7cHJvcHMgPT5cbiAgICBwcm9wcy5hY3RpdmUgPyBwcm9wcy50aGVtZS5mbG9hdGluZ0J0bkJvcmRlckhvdmVyIDogcHJvcHMudGhlbWUuZmxvYXRpbmdCdG5Cb3JkZXJ9O1xuXG4gIDpob3ZlcixcbiAgOmZvY3VzLFxuICA6YWN0aXZlLFxuICAmLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5mbG9hdGluZ0J0bkJnZEhvdmVyfTtcbiAgICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5mbG9hdGluZ0J0bkFjdENvbG9yfTtcbiAgICBib3JkZXI6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuZmxvYXRpbmdCdG5Cb3JkZXJIb3Zlcn07XG4gIH1cbiAgc3ZnIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbmA7XG5cbmV4cG9ydCBjb25zdCBTdHlsZWRGaWx0ZXJDb250ZW50ID0gc3R5bGVkLmRpdmBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5wYW5lbENvbnRlbnRCYWNrZ3JvdW5kfTtcbiAgcGFkZGluZzogMTJweDtcbmA7XG5cbmV4cG9ydCBjb25zdCBUcnVuY2F0ZWRUaXRsZVRleHQgPSBzdHlsZWQuZGl2YFxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbmA7XG5cbmV4cG9ydCBjb25zdCBDaGVja01hcmsgPSBzdHlsZWQuc3Bhbi5hdHRycyh7XG4gIGNsYXNzTmFtZTogJ2NoZWNrYm94LWlubmVyJ1xufSlgXG4gIGJhY2tncm91bmQtY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc2VsZWN0aW9uQnRuQm9yZGVyQWN0Q29sb3J9O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTBweDtcbiAgaGVpZ2h0OiAxMHB4O1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAycHg7XG5cbiAgOmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2ZmZjtcbiAgICBib3JkZXItdG9wOiAwO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKSBzY2FsZSgxKSB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgb3BhY2l0eTogMTtcbiAgICBjb250ZW50OiAnICc7XG4gICAgdG9wOiA0MCU7XG4gICAgbGVmdDogMzAlO1xuICAgIHdpZHRoOiAzLjJweDtcbiAgICBoZWlnaHQ6IDYuMjJweDtcbiAgfVxuYDtcbiJdfQ==