@theseam/ui-common 0.4.14 → 0.4.17

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 (35) hide show
  1. package/esm2020/google-maps/google-maps/google-maps.component.mjs +20 -9
  2. package/esm2020/google-maps/google-maps-api-loader/lazy-google-maps-api-loader.mjs +2 -1
  3. package/esm2020/google-maps/google-maps-places-autocomplete/google-maps-places-autocomplete.component.mjs +3 -3
  4. package/esm2020/google-maps/google-maps.service.mjs +6 -3
  5. package/esm2020/services/preferences/preferences-accessor.mjs +1 -1
  6. package/esm2020/services/preferences/preferences-manager.service.mjs +1 -1
  7. package/esm2020/services/preferences/preferences-record.mjs +1 -1
  8. package/esm2020/services/preferences/preferences.models.mjs +1 -1
  9. package/esm2020/story-helpers/story-preferences-accessor.service.mjs +1 -1
  10. package/esm2020/utils/geo-json/coerce-feature-collection.mjs +1 -1
  11. package/esm2020/utils/geo-json/is-feature-collection.validator.mjs +1 -1
  12. package/esm2020/utils/geo-json/is-only-geometry-types.mjs +1 -1
  13. package/esm2020/utils/geo-json/merge-polygons.mjs +1 -1
  14. package/esm2020/utils/geo-json/no-inner-rings.validator.mjs +1 -1
  15. package/esm2020/utils/geo-json/split-multi-polygons.mjs +1 -1
  16. package/esm2020/widget/preferences/widget-preferences.models.mjs +1 -1
  17. package/esm2020/widget/preferences/widget-preferences.service.mjs +1 -1
  18. package/esm2020/widget/preferences/widget-preferences.token.mjs +1 -1
  19. package/esm2020/widget/widget.models.mjs +1 -1
  20. package/fesm2015/theseam-ui-common-google-maps.mjs +28 -12
  21. package/fesm2015/theseam-ui-common-google-maps.mjs.map +1 -1
  22. package/fesm2015/theseam-ui-common-services.mjs.map +1 -1
  23. package/fesm2015/theseam-ui-common-story-helpers.mjs.map +1 -1
  24. package/fesm2015/theseam-ui-common-utils.mjs.map +1 -1
  25. package/fesm2015/theseam-ui-common-widget.mjs.map +1 -1
  26. package/fesm2020/theseam-ui-common-google-maps.mjs +27 -12
  27. package/fesm2020/theseam-ui-common-google-maps.mjs.map +1 -1
  28. package/fesm2020/theseam-ui-common-services.mjs.map +1 -1
  29. package/fesm2020/theseam-ui-common-story-helpers.mjs.map +1 -1
  30. package/fesm2020/theseam-ui-common-utils.mjs.map +1 -1
  31. package/fesm2020/theseam-ui-common-widget.mjs.map +1 -1
  32. package/google-maps/google-maps/google-maps.component.d.ts +4 -2
  33. package/google-maps/google-maps-api-loader/lazy-google-maps-api-loader.d.ts +1 -0
  34. package/google-maps/google-maps.service.d.ts +2 -0
  35. package/package.json +1 -1
@@ -92,6 +92,9 @@ export class GoogleMapsService {
92
92
  setBaseLatLng(lat, lng) {
93
93
  this._baseLatLng = { lat, lng };
94
94
  }
95
+ setPadding(padding) {
96
+ this._padding = padding;
97
+ }
95
98
  // TODO: Refactor out of the service meant to just wrap the google maps api.
96
99
  setFeatureContextMenu(menu) {
97
100
  this.closeContextMenu();
@@ -203,7 +206,7 @@ export class GoogleMapsService {
203
206
  this._assertInitialized();
204
207
  removeAllFeatures(this.googleMap.data);
205
208
  this.googleMap.data.addGeoJson(data);
206
- this.googleMap.fitBounds(getBoundsWithAllFeatures(this.googleMap.data));
209
+ this.googleMap.fitBounds(getBoundsWithAllFeatures(this.googleMap.data), this._padding);
207
210
  }
208
211
  // TODO: Refactor out of the service meant to just wrap the google maps api.
209
212
  reCenterOnFeatures() {
@@ -215,7 +218,7 @@ export class GoogleMapsService {
215
218
  this.googleMap.panTo(this._baseLatLng);
216
219
  return;
217
220
  }
218
- this.googleMap.fitBounds(getBoundsWithAllFeatures(this.googleMap.data));
221
+ this.googleMap.fitBounds(getBoundsWithAllFeatures(this.googleMap.data), this._padding);
219
222
  // TODO: Fix to pan to center. Currently fitBounds results in the expected
220
223
  // result, but pantToBounds animates.
221
224
  // this.googleMap.panToBounds(getBoundsWithAllFeatures(this.googleMap.data))
@@ -423,4 +426,4 @@ GoogleMapsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", ve
423
426
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: GoogleMapsService, decorators: [{
424
427
  type: Injectable
425
428
  }], ctorParameters: function () { return [{ type: i1.MapValueManagerService }, { type: i0.NgZone }, { type: i0.ViewContainerRef }]; } });
426
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ29vZ2xlLW1hcHMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi9nb29nbGUtbWFwcy9nb29nbGUtbWFwcy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQXVDLE1BQU0sZUFBZSxDQUFBO0FBQy9FLE9BQU8sRUFBRSxlQUFlLEVBQUUsSUFBSSxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQTtBQUNqRSxPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUcxRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQTtBQUVoRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQTtBQUNqRSxPQUFPLEVBQ0wsc0NBQXNDLEVBQ3RDLDRCQUE0QixFQUM1Qiw2QkFBNkIsRUFDN0Isd0JBQXdCLEVBQ3hCLGdCQUFnQixFQUNoQixnQkFBZ0IsRUFDaEIsc0NBQXNDLEVBQ3RDLDBCQUEwQixFQUMxQiwrQkFBK0IsRUFDL0IsaUJBQWlCLEVBQ2pCLDJCQUEyQixFQUMzQixpQkFBaUIsRUFDakIsa0JBQWtCLEVBQ2xCLGlDQUFpQyxHQUNsQyxNQUFNLCtCQUErQixDQUFBO0FBQ3RDLE9BQU8sRUFBMEIsY0FBYyxFQUFFLE1BQU0sNkJBQTZCLENBQUE7OztBQUlwRixNQUFNLHVCQUF1QixHQUFHLENBQUMsY0FBdUIsRUFBOEIsRUFBRSxDQUFDLENBQUM7SUFDeEYsU0FBUyxFQUFFLGNBQWM7SUFDekIsU0FBUyxFQUFFLGNBQWM7SUFDekIsUUFBUSxFQUFFLGNBQWM7Q0FDekIsQ0FBQyxDQUFBO0FBRUYsTUFBTSwrQkFBK0IsR0FBRyxDQUFDLGNBQXVCLEVBQTZDLEVBQUUsQ0FBQyxDQUFDO0lBQy9HLGNBQWMsRUFBRSxjQUFj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K0IsSUFBSTtRQUNuRCxPQUFPLElBQUksT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxFQUFFO1lBQ3JDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFBO1lBQ3pCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRTtnQkFDaEMsSUFBSSxtQkFBbUIsRUFBRTtvQkFDdkIsaUNBQWlDLENBQUMsQ0FBQyxDQUFDLENBQUE7aUJBQ3JDO2dCQUNELE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQTtZQUNaLENBQUMsQ0FBQyxDQUFBO1FBQ0osQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDO0lBRUQsaURBQWlEO0lBQ3pDLGtCQUFrQjtRQUN4QixJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsSUFBSSxDQUFDLE9BQU8sU0FBUyxLQUFLLFdBQVcsSUFBSSxTQUFTLENBQUMsRUFBRTtZQUN0RSxNQUFNLEtBQUssQ0FDVCw0RUFBNEU7Z0JBQzFFLG9FQUFvRSxDQUN2RSxDQUFBO1NBQ0Y7SUFDSCxDQUFDOzs4R0FuY1UsaUJBQWlCO2tIQUFqQixpQkFBaUI7MkZBQWpCLGlCQUFpQjtrQkFEN0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIE5nWm9uZSwgT25EZXN0cm95LCBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgZnJvbSwgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnXG5pbXBvcnQgeyBzd2l0Y2hNYXAsIHRha2VVbnRpbCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXG5cbmltcG9ydCB7IE1lbnVDb21wb25lbnQgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vbWVudSdcbmltcG9ydCB7IGlzTnVsbE9yVW5kZWZpbmVkLCBub3ROdWxsT3JVbmRlZmluZWQgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vdXRpbHMnXG5cbmltcG9ydCB7IEdvb2dsZU1hcHNDb250ZXh0TWVudSB9IGZyb20gJy4vZ29vZ2xlLW1hcHMtY29udGV4dG1lbnUnXG5pbXBvcnQge1xuICBhZGRJbm5lckZlYXR1cmVDdXRvdXRUb0V4dGVyaW9yRmVhdHVyZSxcbiAgY3JlYXRlRGF0YUZlYXR1cmVGcm9tUG9seWdvbixcbiAgY3JlYXRlRmVhdHVyZUNoYW5nZU9ic2VydmFibGUsXG4gIGdldEJvdW5kc1dpdGhBbGxGZWF0dXJlcyxcbiAgZ2V0RmVhdHVyZUNlbnRlcixcbiAgZ2V0RmVhdHVyZXNDb3VudCxcbiAgZ2V0SG92ZXJlZFN0eWxlT3B0aW9uc0RlZmluZWRCeUZlYXR1cmUsXG4gIGdldFBvc3NpYmxlRXh0ZXJpb3JGZWF0dXJlLFxuICBnZXRTdHlsZU9wdGlvbnNEZWZpbmVkQnlGZWF0dXJlLFxuICBpc0ZlYXR1cmVTZWxlY3RlZCxcbiAgcG9seWdvbkhhc1ZhbGlkUGF0aHNMZW5ndGhzLFxuICByZW1vdmVBbGxGZWF0dXJlcyxcbiAgc2V0RmVhdHVyZVNlbGVjdGVkLFxuICBzdHJpcEFwcEZlYXR1cmVQcm9wZXJ0aWVzRnJvbUpzb24sXG59IGZyb20gJy4vZ29vZ2xlLW1hcHMtZmVhdHVyZS1oZWxwZXJzJ1xuaW1wb3J0IHsgTWFwVmFsdWVNYW5hZ2VyU2VydmljZSwgTWFwVmFsdWVTb3VyY2UgfSBmcm9tICcuL21hcC12YWx1ZS1tYW5hZ2VyLnNlcnZpY2UnXG5cbmRlY2xhcmUgY29uc3QgbmdEZXZNb2RlOiBib29sZWFuIHwgdW5kZWZpbmVkXG5cbmNvbnN0IERFRkFVTFRfUE9MWUdPTl9PUFRJT05TID0gKGVkaXRpbmdFbmFibGVkOiBib29sZWFuKTogZ29vZ2xlLm1hcHMuUG9seWdvbk9wdGlvbnMgPT4gKHtcbiAgY2xpY2thYmxlOiBlZGl0aW5nRW5hYmxlZCxcbiAgZHJhZ2dhYmxlOiBlZGl0aW5nRW5hYmxlZCxcbiAgZWRpdGFibGU6IGVkaXRpbmdFbmFibGVkLFxufSlcblxuY29uc3QgREVGQVVMVF9EUkFXSU5HX01BTkFHRVJfT1BUSU9OUyA9IChlZGl0aW5nRW5hYmxlZDogYm9vbGVhbik6IGdvb2dsZS5tYXBzLmRyYXdpbmcuRHJhd2luZ01hbmFnZXJPcHRpb25zID0+ICh7XG4gIGRyYXdpbmdDb250cm9sOiBlZGl0aW5nRW5hYmxlZCxcbiAgZHJhd2luZ0NvbnRyb2xPcHRpb25zOiB7XG4gICAgZHJhd2luZ01vZGVzOiBbXG4gICAgICBnb29nbGUubWFwcy5kcmF3aW5nLk92ZXJsYXlUeXBlLlBPTFlHT04sXG4gICAgXSxcbiAgfSxcbiAgcG9seWdvbk9wdGlvbnM6IERFRkFVTFRfUE9MWUdPTl9PUFRJT05TKGVkaXRpbmdFbmFibGVkKSxcbiAgZHJhd2luZ01vZGU6IG51bGwsXG59KVxuXG5jb25zdCBGRUFUVVJFX1NUWUxFX09QVElPTlNfREVGQVVMVCA9IChlZGl0aW5nRW5hYmxlZDogYm9vbGVhbik6IGdvb2dsZS5tYXBzLkRhdGEuU3R5bGVPcHRpb25zID0+ICh7XG4gIGNsaWNrYWJsZTogdHJ1ZSxcbiAgLy8gY2xpY2thYmxlOiBlZGl0aW5nRW5hYmxlZCxcbiAgdmlzaWJsZTogdHJ1ZSxcbiAgLy8gekluZGV4PzogbnVtYmVyO1xuXG4gIC8vIGN1cnNvcj86IHN0cmluZztcbiAgZHJhZ2dhYmxlOiBmYWxzZSxcbiAgZWRpdGFibGU6IGZhbHNlLFxuICBmaWxsQ29sb3I6ICd0ZWFsJyxcbiAgZmlsbE9wYWNpdHk6IDAuMyxcbiAgc3Ryb2tlQ29sb3I6ICdibHVlJyxcbiAgc3Ryb2tlT3BhY2l0eTogMSxcbiAgc3Ryb2tlV2VpZ2h0OiAyLFxufSlcblxuY29uc3QgRkVBVFVSRV9TVFlMRV9PUFRJT05TX1NFTEVDVEVEID0gKGVkaXRpbmdFbmFibGVkOiBib29sZWFuKTogZ29vZ2xlLm1hcHMuRGF0YS5TdHlsZU9wdGlvbnMgPT4gKHtcbiAgLi4uRkVBVFVSRV9TVFlMRV9PUFRJT05TX0RFRkFVTFQoZWRpdGluZ0VuYWJsZWQpLFxuICBkcmFnZ2FibGU6IGVkaXRpbmdFbmFibGVkLFxuICBlZGl0YWJsZTogZWRpdGluZ0VuYWJsZWQsXG4gIGZpbGxDb2xvcjogJ2dyZWVuJyxcbiAgZmlsbE9wYWNpdHk6IDAuNyxcbiAgc3Ryb2tlQ29sb3I6ICdsaW1lZ3JlZW4nLFxuICBzdHJva2VPcGFjaXR5OiAxLFxuICBzdHJva2VXZWlnaHQ6IDIsXG59KVxuXG5jb25zdCBGRUFUVVJFX1NUWUxFX09WRVJSSURFX09QVElPTlNfSE9WRVJFRCA9IChlZGl0aW5nRW5hYmxlZDogYm9vbGVhbik6IGdvb2dsZS5tYXBzLkRhdGEuU3R5bGVPcHRpb25zID0+ICh7XG4gIHN0cm9rZUNvbG9yOiAnYmxhY2snLFxuICBzdHJva2VPcGFjaXR5OiAxLFxuICBzdHJva2VXZWlnaHQ6IDQsXG59KVxuXG5jb25zdCBTVVBQT1JURURfUFJPUEVSVFlfU1RZTEVfT1BUSU9OUzogKGtleW9mIGdvb2dsZS5tYXBzLkRhdGEuU3R5bGVPcHRpb25zKVtdID0gW1xuICAnZmlsbENvbG9yJyxcbiAgJ2ZpbGxPcGFjaXR5JyxcbiAgJ3N0cm9rZUNvbG9yJyxcbiAgJ3N0cm9rZU9wYWNpdHknLFxuICAnc3Ryb2tlV2VpZ2h0JyxcbiAgJ2xhYmVsJyxcbiAgJ29wYWNpdHknLFxuICAnaWNvbicsXG4gICdjbGlja2FibGUnLFxuICAndmlzaWJsZScsXG5dXG5cbnR5cGUgV2l0aFJlcXVpcmVkPFQsIEsgZXh0ZW5kcyBrZXlvZiBUPiA9IFQgJiB7IFtQIGluIEtdLT86IFRbUF0gfVxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgR29vZ2xlTWFwc1NlcnZpY2UgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX25nVW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdDx2b2lkPigpXG5cbiAgcHJpdmF0ZSByZWFkb25seSBfbWFwUmVhZHlTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSlcbiAgcHJpdmF0ZSByZWFkb25seSBfZWRpdGluZ0VuYWJsZWRTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPih0cnVlKVxuXG4gIHByaXZhdGUgX2RyYXdpbmdNYW5hZ2VyPzogZ29vZ2xlLm1hcHMuZHJhd2luZy5EcmF3aW5nTWFuYWdlclxuICBwcml2YXRlIF9mZWF0dXJlQ29udGV4dE1lbnU6IE1lbnVDb21wb25lbnQgfCBudWxsID0gbnVsbFxuICBwcml2YXRlIF9hY3RpdmVDb250ZXh0TWVudTogR29vZ2xlTWFwc0NvbnRleHRNZW51IHwgbnVsbCA9IG51bGxcbiAgcHJpdmF0ZSBfYmFzZUxhdExuZz86IGdvb2dsZS5tYXBzLkxhdExuZ0xpdGVyYWxcblxuICBwcml2YXRlIF9hbGxvd0RyYXdpbmdIb2xlSW5Qb2x5Z29uID0gZmFsc2VcblxuICAvLyBUT0RPOiBNb3ZlIHRvIGEgYmV0dGVyIHBsYWNlIHRoYW4gdGhlIG1hcCB3cmFwcGVyIHNlcnZpY2UuXG4gIHByaXZhdGUgX2ZpbGVJbnB1dEhhbmRsZXI6ICgoZmlsZTogRmlsZSkgPT4gdm9pZCkgfCB1bmRlZmluZWQgfCBudWxsXG5cbiAgcHVibGljIGdvb2dsZU1hcD86IGdvb2dsZS5tYXBzLk1hcFxuXG4gIHB1YmxpYyByZWFkb25seSBtYXBSZWFkeSQ6IE9ic2VydmFibGU8Ym9vbGVhbj5cblxuICBwdWJsaWMgZ2V0IG1hcFJlYWR5KCk6IGJvb2xlYW4geyByZXR1cm4gdGhpcy5fbWFwUmVhZHlTdWJqZWN0LnZhbHVlIH1cblxuICBwdWJsaWMgcmVhZG9ubHkgZWRpdGluZ0VuYWJsZWQkOiBPYnNlcnZhYmxlPGJvb2xlYW4+XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBfbWFwVmFsdWVNYW5hZ2VyOiBNYXBWYWx1ZU1hbmFnZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgX25nWm9uZTogTmdab25lLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgX3ZjcjogVmlld0NvbnRhaW5lclJlZixcbiAgKSB7XG4gICAgdGhpcy5lZGl0aW5nRW5hYmxlZCQgPSB0aGlzLl9lZGl0aW5nRW5hYmxlZFN1YmplY3QuYXNPYnNlcnZhYmxlKClcbiAgICB0aGlzLm1hcFJlYWR5JCA9IHRoaXMuX21hcFJlYWR5U3ViamVjdC5hc09ic2VydmFibGUoKVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fbmdVbnN1YnNjcmliZS5uZXh0KClcbiAgICB0aGlzLl9uZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKClcbiAgfVxuXG4gIHB1YmxpYyBzZXRNYXAobWFwOiBnb29nbGUubWFwcy5NYXApOiB2b2lkIHtcbiAgICB0aGlzLmdvb2dsZU1hcCA9IG1hcFxuICAgIHRoaXMuX21hcFJlYWR5U3ViamVjdC5uZXh0KHRydWUpXG4gICAgdGhpcy5faW5pdERyYXdpbmdNYW5hZ2VyKClcbiAgICB0aGlzLl9pbml0RmVhdHVyZVN0eWxpbmcoKVxuICAgIHRoaXMuX2luaXRGZWF0dXJlQ2hhbmdlTGlzdGVuZXJzKClcbiAgfVxuXG4gIHB1YmxpYyBzZXRCYXNlTGF0TG5nKGxhdDogbnVtYmVyLCBsbmc6IG51bWJlcik6IHZvaWQge1xuICAgIHRoaXMuX2Jhc2VMYXRMbmcgPSB7IGxhdCwgbG5nIH1cbiAgfVxuXG4gIC8vIFRPRE86IFJlZmFjdG9yIG91dCBvZiB0aGUgc2VydmljZSBtZWFudCB0byBqdXN0IHdyYXAgdGhlIGdvb2dsZSBtYXBzIGFwaS5cbiAgcHVibGljIHNldEZlYXR1cmVDb250ZXh0TWVudShtZW51OiBNZW51Q29tcG9uZW50IHwgbnVsbCk6IHZvaWQge1xuICAgIHRoaXMuY2xvc2VDb250ZXh0TWVudSgpXG4gICAgdGhpcy5fZmVhdHVyZUNvbnRleHRNZW51ID0gbWVudVxuICB9XG5cbiAgcHVibGljIHNldEVkaXRpbmdFbmFibGVkKGVuYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLl9lZGl0aW5nRW5hYmxlZFN1YmplY3QubmV4dChlbmFibGVkKVxuXG4gICAgaWYgKHRoaXMubWFwUmVhZHkpIHtcbiAgICAgIHRoaXMuX2Fzc2VydEluaXRpYWxpemVkKClcbiAgICAgIHRoaXMuZ29vZ2xlTWFwLmRhdGEucmV2ZXJ0U3R5bGUoKVxuICAgICAgaWYgKCFlbmFibGVkKSB7XG4gICAgICAgIHRoaXMuc3RvcERyYXdpbmcoKVxuICAgICAgICBjb25zdCBvcHRpb25zID0gREVGQVVMVF9EUkFXSU5HX01BTkFHRVJfT1BUSU9OUyh0aGlzLmlzRWRpdGluZ0VuYWJsZWQoKSlcbiAgICAgICAgdGhpcy5fZHJhd2luZ01hbmFnZXI/LnNldE9wdGlvbnMob3B0aW9ucylcbiAgICAgICAgdGhpcy5fZHJhd2luZ01hbmFnZXI/LnNldE1hcChudWxsKVxuICAgICAgICB0aGlzLmdvb2dsZU1hcC5kYXRhLmZvckVhY2goZiA9PiB7XG4gICAgICAgICAgaWYgKGlzRmVhdHVyZVNlbGVjdGVkKGYpKSB7XG4gICAgICAgICAgICBzZXRGZWF0dXJlU2VsZWN0ZWQoZiwgZmFsc2UpXG4gICAgICAgICAgfVxuICAgICAgICB9KVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3Qgb3B0aW9ucyA9IERFRkFVTFRfRFJBV0lOR19NQU5BR0VSX09QVElPTlModGhpcy5pc0VkaXRpbmdFbmFibGVkKCkpXG4gICAgICAgIHRoaXMuX2RyYXdpbmdNYW5hZ2VyPy5zZXRPcHRpb25zKG9wdGlvbnMpXG4gICAgICAgIHRoaXMuX2RyYXdpbmdNYW5hZ2VyPy5zZXRNYXAodGhpcy5nb29nbGVNYXApXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGlzRWRpdGluZ0VuYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2VkaXRpbmdFbmFibGVkU3ViamVjdC52YWx1ZVxuICB9XG5cbiAgcHVibGljIGdldERpdigpOiBIVE1MRGl2RWxlbWVudCB7XG4gICAgdGhpcy5fYXNzZXJ0SW5pdGlhbGl6ZWQoKVxuICAgIHJldHVybiB0aGlzLmdvb2dsZU1hcC5nZXREaXYoKSBhcyBIVE1MRGl2RWxlbWVudFxuICB9XG5cbiAgcHVibGljIGZpdEJvdW5kcyhib3VuZHM6IGdvb2dsZS5tYXBzLkxhdExuZ0JvdW5kcyB8IGdvb2dsZS5tYXBzLkxhdExuZ0JvdW5kc0xpdGVyYWwsIHBhZGRpbmc/OiBudW1iZXIgfCBnb29nbGUubWFwcy5QYWRkaW5nKTogdm9pZCB7XG4gICAgdGhpcy5fYXNzZXJ0SW5pdGlhbGl6ZWQoKVxuICAgIHRoaXMuZ29vZ2xlTWFwLmZpdEJvdW5kcyhib3VuZHMsIHBhZGRpbmcpXG4gIH1cblxuICAvKipcbiAgICogSXRlcmF0ZXMgdGhlIG1hcCdzIGZlYXR1cmVzIGFuZCByZW1vdmVzIGFueSB0aGF0IGFyZSBzZWxlY3RlZC5cbiAgICovXG4gIHB1YmxpYyBkZWxldGVTZWxlY3Rpb24oKTogdm9pZCB7XG4gICAgdGhpcy5fYXNzZXJ0SW5pdGlhbGl6ZWQoKVxuICAgIGNvbnN0IG1hcERhdGEgPSB0aGlzLmdvb2dsZU1hcC5kYXRhXG4gICAgbWFwRGF0YS5mb3JFYWNoKGYgPT4ge1xuICAgICAgaWYgKGlzRmVhdHVyZVNlbGVjdGVkKGYpKSB7XG4gICAgICAgIG1hcERhdGEucmVtb3ZlKGYpXG4gICAgICB9XG4gICAgfSlcbiAgfVxuXG4gIC8qKlxuICAgKiBTdG9wcyB0aGUgY3VycmVudCBkcmF3aW5nLlxuICAgKi9cbiAgcHVibGljIHN0b3BEcmF3aW5nKCk6IHZvaWQge1xuICAgIHRoaXMuX25nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICBpZiAoaXNOdWxsT3JVbmRlZmluZWQodGhpcy5fZHJhd2luZ01hbmFnZXIpIHx8IHRoaXMuX2RyYXdpbmdNYW5hZ2VyLmdldERyYXdpbmdNb2RlKCkgPT09IG51bGwpIHtcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIC8vIExpc3RlbmluZyBmb3IgdGhlIGNvbXBsZXRpb24gZXZlbnQgb2YgdGhlIG92ZXJsYXkgY3VycmVudGx5IGJlaW5nIGRyYXduXG4gICAgICAvLyBhbmQgcmVtb3ZpbmcgaXQuIEkgaGF2ZW4ndCBmb3VuZCBhIHdheSB0byBjYW5jZWwgdGhlIGN1cnJlbnQgZHJhd2luZyxcbiAgICAgIC8vIHdpdGhvdXQgdGhpcyBoYWNrIHRoYXQgYXNzdW1lcyBvdXIgbGlzdGVuZXJzIHdpbGwgbm90IHJ1biBpbnRvIGEgcmFjZVxuICAgICAgLy8gY29uZGl0aW9uLlxuICAgICAgY29uc3QgbGlzdGVuZXIgPSBnb29nbGUubWFwcy5ldmVudC5hZGRMaXN0ZW5lcihcbiAgICAgICAgdGhpcy5fZHJhd2luZ01hbmFnZXIsXG4gICAgICAgICdvdmVybGF5Y29tcGxldGUnLFxuICAgICAgICAoZXZlbnQ6IGdvb2dsZS5tYXBzLmRyYXdpbmcuT3ZlcmxheUNvbXBsZXRlRXZlbnQpID0+IHtcbiAgICAgICAgICBldmVudC5vdmVybGF5Py5zZXRNYXAobnVsbClcbiAgICAgICAgICBsaXN0ZW5lci5yZW1vdmUoKVxuICAgICAgICB9LFxuICAgICAgKVxuXG4gICAgICAvLyBUbyBmYWtlIGNhbmNlbGluZyB0aGUgY3VycmVudCBkcmF3aW5nLCB3aXRob3V0IGRpc2FibGluZyB0aGUgZHJhd2luZ1xuICAgICAgLy8gbW9kZSwgdGhlIGRyYXdpbmcgbW9kZSBpcyBiZWluZyB1bnNldCB0aGVuIGltbWVkaWF0ZWx5IHNldCBiYWNrLiBXaGVuXG4gICAgICAvLyB0aGUgbW9kZSBpcyB1bnNldCB0aGUgJ292ZXJsYXljb21wbGV0ZScgZXZlbnQgd2lsbCBmaXJlLCB3aGljaCB3aWxsXG4gICAgICAvLyBnaXZlIGEgcmVmZXJlbmNlIHRvIHRoZSBjdXJyZW50IG92ZXJsYXkgdG8gcmVtb3ZlLCB0aGVuIGl0IGlzIHNldCBiYWNrXG4gICAgICAvLyB0byB0aGUgbW9kZSB0aGUgdXNlciB3YXMgdXNpbmcuIFRvIHRoZSB1c2VyIGlzIHNob3VsZCBqdXN0IHNlZW0gbGlrZVxuICAgICAgLy8gdGhlIGN1cnJlbnQgZHJhd2luZyB3YXMgY2FuY2VsZWQgYW5kIHRoZXkgY2FuIHN0YXJ0IGRyYXdpbmcgYWdhaW4uXG4gICAgICBjb25zdCBtb2RlID0gdGhpcy5fZHJhd2luZ01hbmFnZXIuZ2V0RHJhd2luZ01vZGUoKVxuICAgICAgdGhpcy5fZHJhd2luZ01hbmFnZXIuc2V0RHJhd2luZ01vZGUobnVsbClcbiAgICAgIHRoaXMuX2RyYXdpbmdNYW5hZ2VyLnNldERyYXdpbmdNb2RlKG1vZGUpXG5cbiAgICAgIC8vICdvdmVybGF5Y29tcGxldGUnIHNob3VsZCBmaXJlIGltbWVkaWF0ZWx5LCB1bmxlc3MgYW4gb3ZlcmxheSBoYWRuJ3RcbiAgICAgIC8vIHN0YXJ0ZWQgZHJhd2luZy4gVGhpcyB0aW1lb3V0IHdpbGwgbWFrZSBzdXJlIHRoZSBsaXN0ZW5lciBnZXRzIHJlbW92ZWQuXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgbGlzdGVuZXIucmVtb3ZlKClcbiAgICAgIH0pXG4gICAgfSlcbiAgfVxuXG4gIHByaXZhdGUgX2luaXREcmF3aW5nTWFuYWdlcigpOiB2b2lkIHtcbiAgICBpZiAobm90TnVsbE9yVW5kZWZpbmVkKHRoaXMuX2RyYXdpbmdNYW5hZ2VyKSkge1xuICAgICAgdGhyb3cgRXJyb3IoYERyYXdpbmdNYW5hZ2VyIGlzIGFscmVhZHkgaW5pdGlhbGl6ZWQuYClcbiAgICB9XG5cbiAgICB0aGlzLl9hc3NlcnRJbml0aWFsaXplZCgpXG5cbiAgICBjb25zdCBvcHRpb25zID0gREVGQVVMVF9EUkFXSU5HX01BTkFHRVJfT1BUSU9OUyh0aGlzLmlzRWRpdGluZ0VuYWJsZWQoKSlcblxuICAgIGNvbnN0IGRyYXdpbmdNYW5hZ2VyID0gbmV3IGdvb2dsZS5tYXBzLmRyYXdpbmcuRHJhd2luZ01hbmFnZXIob3B0aW9ucylcbiAgICBkcmF3aW5nTWFuYWdlci5zZXRNYXAodGhpcy5nb29nbGVNYXApXG5cbiAgICB0aGlzLl9kcmF3aW5nTWFuYWdlciA9IGRyYXdpbmdNYW5hZ2VyXG5cbiAgICB0aGlzLl9kcmF3aW5nTWFuYWdlci5hZGRMaXN0ZW5lcignZHJhd2luZ21vZGVfY2hhbmdlZCcsIChldmVudDogYW55KSA9PiB7XG4gICAgICBpZiAodGhpcy5fZHJhd2luZ01hbmFnZXI/LmdldERyYXdpbmdNb2RlKCkgIT09IG51bGwpIHtcbiAgICAgICAgdGhpcy5fYXNzZXJ0SW5pdGlhbGl6ZWQoKVxuICAgICAgICB0aGlzLmdvb2dsZU1hcC5kYXRhLmZvckVhY2goZiA9PiB7XG4gICAgICAgICAgaWYgKGlzRmVhdHVyZVNlbGVjdGVkKGYpKSB7XG4gICAgICAgICAgICBzZXRGZWF0dXJlU2VsZWN0ZWQoZiwgZmFsc2UpXG4gICAgICAgICAgfVxuICAgICAgICB9KVxuICAgICAgfVxuICAgIH0pXG4gIH1cblxuICBwdWJsaWMgYWRkQ29udHJvbChlbGVtZW50OiBIVE1MRWxlbWVudCwgcG9zaXRpb246IGdvb2dsZS5tYXBzLkNvbnRyb2xQb3NpdGlvbik6IHZvaWQge1xuICAgIHRoaXMuX2Fzc2VydEluaXRpYWxpemVkKClcbiAgICB0aGlzLmdvb2dsZU1hcC5jb250cm9sc1twb3NpdGlvbl0ucHVzaChlbGVtZW50KVxuICB9XG5cbiAgcHVibGljIGFzeW5jIHNldERhdGEoZGF0YTogYW55KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdGhpcy5fYXNzZXJ0SW5pdGlhbGl6ZWQoKVxuICAgIHJlbW92ZUFsbEZlYXR1cmVzKHRoaXMuZ29vZ2xlTWFwLmRhdGEpXG4gICAgdGhpcy5nb29nbGVNYXAuZGF0YS5hZGRHZW9Kc29uKGRhdGEpXG4gICAgdGhpcy5nb29nbGVNYXAuZml0Qm91bmRzKGdldEJvdW5kc1dpdGhBbGxGZWF0dXJlcyh0aGlzLmdvb2dsZU1hcC5kYXRhKSlcbiAgfVxuXG4gIC8vIFRPRE86IFJlZmFjdG9yIG91dCBvZiB0aGUgc2VydmljZSBtZWFudCB0byBqdXN0IHdyYXAgdGhlIGdvb2dsZSBtYXBzIGFwaS5cbiAgcHVibGljIHJlQ2VudGVyT25GZWF0dXJlcygpOiB2b2lkIHtcbiAgICB0aGlzLl9hc3NlcnRJbml0aWFsaXplZCgpXG4gICAgaWYgKGdldEZlYXR1cmVzQ291bnQodGhpcy5nb29nbGVNYXAuZGF0YSkgPT09IDApIHtcbiAgICAgIGlmICghdGhpcy5fYmFzZUxhdExuZykge1xuICAgICAgICByZXR1cm5cbiAgICAgIH1cblxuICAgICAgdGhpcy5nb29nbGVNYXAucGFuVG8odGhpcy5fYmFzZUxhdExuZylcbiAgICAgIHJldHVyblxuICAgIH1cbiAgICB0aGlzLmdvb2dsZU1hcC5maXRCb3VuZHMoZ2V0Qm91bmRzV2l0aEFsbEZlYXR1cmVzKHRoaXMuZ29vZ2xlTWFwLmRhdGEpKVxuXG4gICAgLy8gVE9ETzogRml4IHRvIHBhbiB0byBjZW50ZXIuIEN1cnJlbnRseSBmaXRCb3VuZHMgcmVzdWx0cyBpbiB0aGUgZXhwZWN0ZWRcbiAgICAvLyByZXN1bHQsIGJ1dCBwYW50VG9Cb3VuZHMgYW5pbWF0ZXMuXG4gICAgLy8gdGhpcy5nb29nbGVNYXAucGFuVG9Cb3VuZHMoZ2V0Qm91bmRzV2l0aEFsbEZlYXR1cmVzKHRoaXMuZ29vZ2xlTWFwLmRhdGEpKVxuICB9XG5cbiAgcHVibGljIGFsbG93RHJhd2luZ0hvbGVJblBvbHlnb24oYWxsb3c6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLl9hbGxvd0RyYXdpbmdIb2xlSW5Qb2x5Z29uID0gYWxsb3dcbiAgfVxuXG4gIHB1YmxpYyBzZXRGaWxlSW5wdXRIYW5kbGVyKGhhbmRsZXI6ICgoZmlsZTogRmlsZSkgPT4gdm9pZCkgfCB1bmRlZmluZWQgfCBudWxsKTogdm9pZCB7XG4gICAgdGhpcy5fZmlsZUlucHV0SGFuZGxlciA9IGhhbmRsZXJcbiAgfVxuXG4gIHB1YmxpYyBnZXRGaWxlSW5wdXRIYW5kbGVyKCk6ICgoZmlsZTogRmlsZSkgPT4gdm9pZCkgfCB1bmRlZmluZWQgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5fZmlsZUlucHV0SGFuZGxlclxuICB9XG5cbiAgcHJpdmF0ZSBfaW5pdEZlYXR1cmVTdHlsaW5nKCk6IHZvaWQge1xuICAgIHRoaXMuX2Fzc2VydEluaXRpYWxpemVkKClcblxuICAgIC8vIERpc2FibGUgYW55IHNlbGVjdGlvbiB3aGVuIGNsaWNraW5nIHRoZSBtYXAuXG4gICAgLy9cbiAgICAvLyBUT0RPOiBUaGVyZSBtYXkgYmUgYSBiZXR0ZXIgd2F5IHRvIGRvIHRoaXMgdGhhdCB3b3VsZCBiZSBtb3JlIGFjY3VyYXRlIG9yXG4gICAgLy8gYWRkaXRpb25hbCBldmVudHMgdGhhdCBzaG91bGQgYmUgbGlzdGVuZWQgdG8sIHN1Y2ggYXMgdGhlIGRpc2FibGluZ1xuICAgIC8vIHNlbGVjdGlvbiB3aGVuIHRoZSBtYXAgbG9vc2VzIGZvY3VzLlxuICAgIHRoaXMuZ29vZ2xlTWFwLmFkZExpc3RlbmVyKCdjbGljaycsIChldmVuOiBnb29nbGUubWFwcy5NYXBNb3VzZUV2ZW50IHwgZ29vZ2xlLm1hcHMuSWNvbk1vdXNlRXZlbnQpID0+IHtcbiAgICAgIHRoaXMuX2Fzc2VydEluaXRpYWxpemVkKClcbiAgICAgIHRoaXMuZ29vZ2xlTWFwLmRhdGEuZm9yRWFjaChmID0+IHNldEZlYXR1cmVTZWxlY3RlZChmLCBmYWxzZSkpXG4gICAgfSlcblxuICAgIC8vIERldGVybWluZSB3aGF0IHRoZSBzdHlsZSBvZiB0aGUgZmVhdHVyZXMgYXJlLlxuICAgIHRoaXMuZ29vZ2xlTWFwLmRhdGEuc2V0U3R5bGUoZmVhdHVyZSA9PiB7XG4gICAgICBsZXQgb3B0cyA9IEZFQVRVUkVfU1RZTEVfT1BUSU9OU19ERUZBVUxUKHRoaXMuaXNFZGl0aW5nRW5hYmxlZCgpKVxuXG4gICAgICBjb25zdCBvcHRpb25zID0gZ2V0U3R5bGVPcHRpb25zRGVmaW5lZEJ5RmVhdHVyZShmZWF0dXJlKVxuICAgICAgdGhpcy5fbWVyZ2VTdHlsZU9wdGlvbnMob3B0cywgb3B0aW9ucyA/PyB7fSlcblxuICAgICAgaWYgKGlzRmVhdHVyZVNlbGVjdGVkKGZlYXR1cmUpKSB7XG4gICAgICAgIGNvbnN0IGhvdmVyT3B0aW9ucyA9IGdldEhvdmVyZWRTdHlsZU9wdGlvbnNEZWZpbmVkQnlGZWF0dXJlKGZlYXR1cmUpXG4gICAgICAgIG9wdHMgPSBGRUFUVVJFX1NUWUxFX09QVElPTlNfU0VMRUNURUQodGhpcy5pc0VkaXRpbmdFbmFibGVkKCkpXG4gICAgICAgIHRoaXMuX21lcmdlU3R5bGVPcHRpb25zKG9wdHMsIGhvdmVyT3B0aW9ucyA/PyB7fSlcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIG9wdHNcbiAgICB9KVxuXG4gICAgLy8gU2VsZWN0IGEgZmVhdHVyZSB3aGVuIGNsaWNrZWQuXG4gICAgdGhpcy5nb29nbGVNYXAuZGF0YS5hZGRMaXN0ZW5lcignY2xpY2snLCAoZXZlbnQ6IGdvb2dsZS5tYXBzLkRhdGEuTW91c2VFdmVudCkgPT4ge1xuICAgICAgdGhpcy5fYXNzZXJ0SW5pdGlhbGl6ZWQoKVxuXG4gICAgICBzZXRGZWF0dXJlU2VsZWN0ZWQoZXZlbnQuZmVhdHVyZSwgdHJ1ZSlcbiAgICAgIHRoaXMuZ29vZ2xlTWFwLmRhdGEuZm9yRWFjaChmID0+IHtcbiAgICAgICAgaWYgKGYgIT09IGV2ZW50LmZlYXR1cmUgJiYgaXNGZWF0dXJlU2VsZWN0ZWQoZikpIHtcbiAgICAgICAgICBzZXRGZWF0dXJlU2VsZWN0ZWQoZiwgZmFsc2UpXG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgfSlcblxuICAgIC8vIFNldCBhIHN0eWxlIG9uIGhvdmVyZWQgZmVhdHVyZXMgdGhhdCBjYW4gYmUgc2VsZWN0ZWQuXG4gICAgdGhpcy5nb29nbGVNYXAuZGF0YS5hZGRMaXN0ZW5lcignbW91c2VvdmVyJywgKGV2ZW50OiBnb29nbGUubWFwcy5EYXRhLk1vdXNlRXZlbnQpID0+IHtcbiAgICAgIHRoaXMuX2Fzc2VydEluaXRpYWxpemVkKClcbiAgICAgIHRoaXMuZ29vZ2xlTWFwLmRhdGEucmV2ZXJ0U3R5bGUoKVxuXG4gICAgICBpZiAoIXRoaXMuaXNEcmF3aW5nKCkgJiYgIWlzRmVhdHVyZVNlbGVjdGVkKGV2ZW50LmZlYXR1cmUpKSB7XG4gICAgICAgIHRoaXMuc2V0RmVhdHVyZUhvdmVyZWRTdHlsZU92ZXJyaWRlKGV2ZW50LmZlYXR1cmUpXG4gICAgICB9XG4gICAgfSlcblxuICAgIC8vIFJlbW92ZSBhbnkgaG92ZXIgc3R5bGVzIHdoZW4gbW91c2UgbW92ZXMgYXdheS5cbiAgICB0aGlzLmdvb2dsZU1hcC5kYXRhLmFkZExpc3RlbmVyKCdtb3VzZW91dCcsIChldmVudDogZ29vZ2xlLm1hcHMuRGF0YS5Nb3VzZUV2ZW50KSA9PiB7XG4gICAgICB0aGlzLl9hc3NlcnRJbml0aWFsaXplZCgpXG4gICAgICB0aGlzLmdvb2dsZU1hcC5kYXRhLnJldmVydFN0eWxlKClcbiAgICB9KVxuICB9XG5cbiAgcHVibGljIHNldEZlYXR1cmVIb3ZlcmVkU3R5bGVPdmVycmlkZShmZWF0dXJlOiBnb29nbGUubWFwcy5EYXRhLkZlYXR1cmUpIHtcbiAgICB0aGlzLl9hc3NlcnRJbml0aWFsaXplZCgpXG4gICAgY29uc3Qgb3ZlcnJpZGVPcHRzID0gRkVBVFVSRV9TVFlMRV9PVkVSUklERV9PUFRJT05TX0hPVkVSRUQodGhpcy5pc0VkaXRpbmdFbmFibGVkKCkpXG4gICAgY29uc3QgaG92ZXJPcHRpb25zID0gZ2V0SG92ZXJlZFN0eWxlT3B0aW9uc0RlZmluZWRCeUZlYXR1cmUoZmVhdHVyZSlcbiAgICB0aGlzLl9tZXJnZVN0eWxlT3B0aW9ucyhvdmVycmlkZU9wdHMsIGhvdmVyT3B0aW9ucyA/PyB7fSlcbiAgICB0aGlzLmdvb2dsZU1hcC5kYXRhLm92ZXJyaWRlU3R5bGUoZmVhdHVyZSwgb3ZlcnJpZGVPcHRzKVxuICB9XG5cbiAgcHJpdmF0ZSBfbWVyZ2VTdHlsZU9wdGlvbnMob3B0aW9uczogZ29vZ2xlLm1hcHMuRGF0YS5TdHlsZU9wdGlvbnMsIHByb3BlcnRpZXNTdHlsZU9wdGlvbnM6IGdvb2dsZS5tYXBzLkRhdGEuU3R5bGVPcHRpb25zKTogdm9pZCB7XG4gICAgaWYgKE9iamVjdC5rZXlzKHByb3BlcnRpZXNTdHlsZU9wdGlvbnMpLmxlbmd0aCA9PT0gMCkge1xuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgZm9yIChjb25zdCBvcHQgb2YgU1VQUE9SVEVEX1BST1BFUlRZX1NUWUxFX09QVElPTlMpIHtcbiAgICAgIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocHJvcGVydGllc1N0eWxlT3B0aW9ucywgb3B0KSkge1xuICAgICAgICBvcHRpb25zW29wdF0gPSBwcm9wZXJ0aWVzU3R5bGVPcHRpb25zW29wdF0gYXMgYW55XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfaW5pdEZlYXR1cmVDaGFuZ2VMaXN0ZW5lcnMoKTogdm9pZCB7XG4gICAgdGhpcy5fYXNzZXJ0SW5pdGlhbGl6ZWQoKVxuXG4gICAgY3JlYXRlRmVhdHVyZUNoYW5nZU9ic2VydmFibGUodGhpcy5nb29nbGVNYXAuZGF0YSwgdGhpcy5fbmdab25lKS5waXBlKFxuICAgICAgc3dpdGNoTWFwKCgpID0+IGZyb20odGhpcy5nZXRHZW9Kc29uKCkpLnBpcGUoXG4gICAgICAgIHRhcChnZW9Kc29uID0+IHRoaXMuX21hcFZhbHVlTWFuYWdlci5zZXRWYWx1ZShnZW9Kc29uLCBNYXBWYWx1ZVNvdXJjZS5GZWF0dXJlQ2hhbmdlKSksXG4gICAgICApKSxcbiAgICAgIHRha2VVbnRpbCh0aGlzLl9uZ1Vuc3Vic2NyaWJlKSxcbiAgICApLnN1YnNjcmliZSgpXG5cbiAgICB0aGlzLmdvb2dsZU1hcC5kYXRhLmFkZExpc3RlbmVyKCdjb250ZXh0bWVudScsIChldmVudDogZ29vZ2xlLm1hcHMuRGF0YS5Nb3VzZUV2ZW50KSA9PiB7XG4gICAgICBpZiAoIWlzRmVhdHVyZVNlbGVjdGVkKGV2ZW50LmZlYXR1cmUpKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICB0aGlzLl9vcGVuQ29udGV4dE1lbnVGb3JGZWF0dXJlKGV2ZW50LmZlYXR1cmUsIGV2ZW50LmxhdExuZyA/PyB1bmRlZmluZWQpXG4gICAgfSlcblxuICAgIGlmIChub3ROdWxsT3JVbmRlZmluZWQodGhpcy5fZHJhd2luZ01hbmFnZXIpKSB7XG4gICAgICBnb29nbGUubWFwcy5ldmVudC5hZGRMaXN0ZW5lcih0aGlzLl9kcmF3aW5nTWFuYWdlciwgJ3BvbHlnb25jb21wbGV0ZScsIChwb2x5Z29uOiBnb29nbGUubWFwcy5Qb2x5Z29uKSA9PiB7XG4gICAgICAgIC8vIFRoZSBEcmF3aW5nTWFuYWdlciBkb2Vzbid0IHNlZW0gdG8gaGF2ZSBhIHdheSB0byBhY2Nlc3MgdGhlIG92ZXJsYXlzLFxuICAgICAgICAvLyBzbyBpZiB0aGUgbWFwIGlzIG5vdCBzZXQgdGhlbiBpdCBzaG91bGRuJ3kgYmUgY29uc2lkZXJlZCBhIHN1Y2Nlc3NmdWxcbiAgICAgICAgLy8gY29tcGxldGlvbi4gSSBhbSBjYW5jZWxpbmcgdGhlIGFjdGl2ZSBkcmF3aW5nIGJ5IGRpc2FibGluZyBkcmF3aW5nXG4gICAgICAgIC8vIG1vZGUgYW5kIHNldHRpbmcgdGhlIG1hcCBudWxsIGluIHRoZSAnb3ZlcmxheWNvbXBsZXRlJyBldmVudCwgd2hpY2hcbiAgICAgICAgLy8gZmlyZXMgYmVmb3JlIHRoZSAncG9seWdvbmNvbXBsZXRlJyBldmVudC5cbiAgICAgICAgaWYgKGlzTnVsbE9yVW5kZWZpbmVkKHBvbHlnb24uZ2V0TWFwKCkpKSB7XG4gICAgICAgICAgcmV0dXJuXG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLl9hc3NlcnRJbml0aWFsaXplZCgpXG5cbiAgICAgICAgLy8gVE9ETzogU2VlIGlmIHRoZXJlIGlzIGEgd2F5IHRvIHByZXZlbnQgdGhlIHBvbHlnb24gZnJvbSBjb21wbGV0aW5nXG4gICAgICAgIC8vIHdpdGhvdXQgZW5vdWdoIHBvaW50cy4gVGhpcyBpcyB2ZXJ5IGxvdyBwcmlvcml0eSwgYmVjYXVzZSBzdGFydGluZ1xuICAgICAgICAvLyBvdmVyIGFmdGVyIGFkZGluZyBhIHNpbmdsZSBwb2ludCBpc24ndCBhIG1ham9yIGluY29udmVuaWVuY2UuXG4gICAgICAgIGlmICghcG9seWdvbkhhc1ZhbGlkUGF0aHNMZW5ndGhzKHBvbHlnb24pKSB7XG4gICAgICAgICAgLy8gUmVtb3ZlIHRoZSBkcmF3biBwb2x5Z29uLlxuICAgICAgICAgIHBvbHlnb24uc2V0TWFwKG51bGwpXG4gICAgICAgICAgLy8gU3RvcCBkcmF3aW5nLlxuICAgICAgICAgIHRoaXMuX2RyYXdpbmdNYW5hZ2VyPy5zZXREcmF3aW5nTW9kZShudWxsKVxuICAgICAgICAgIHJldHVyblxuICAgICAgICB9XG5cbiAgICAgICAgLy8gQ3JlYXRlIGEgbWFwIGZlYXR1cmUgb2YgdGhlIGRyYXduIHBvbHlnb24uXG4gICAgICAgIGNvbnN0IGZlYXR1cmUgPSBjcmVhdGVEYXRhRmVhdHVyZUZyb21Qb2x5Z29uKHBvbHlnb24pXG4gICAgICAgIC8vIFJlbW92ZSB0aGUgZHJhd24gcG9seWdvbi5cbiAgICAgICAgcG9seWdvbi5zZXRNYXAobnVsbClcblxuICAgICAgICAvLyBTdG9wIGRyYXdpbmcuXG4gICAgICAgIHRoaXMuX2RyYXdpbmdNYW5hZ2VyPy5zZXREcmF3aW5nTW9kZShudWxsKVxuXG4gICAgICAgIC8vIENoZWNrIGlmIHRoZSBmZWF0dXJlIHNob3VsZCBiZSB1c2VkIGFzIGEgY3V0b3V0IHRvIGFuIGV4aXN0aW5nXG4gICAgICAgIC8vIGZlYXR1cmUgb3IgYWRkZWQgYXMgaXQncyBvd24gZmVhdHVyZS5cbiAgICAgICAgY29uc3QgZXh0ZXJpb3JQb2x5Z29uRmVhdHVyZSA9IHRoaXMuX2FsbG93RHJhd2luZ0hvbGVJblBvbHlnb25cbiAgICAgICAgICA/IGdldFBvc3NpYmxlRXh0ZXJpb3JGZWF0dXJlKHRoaXMuZ29vZ2xlTWFwLmRhdGEsIGZlYXR1cmUpXG4gICAgICAgICAgOiB1bmRlZmluZWRcbiAgICAgICAgaWYgKGV4dGVyaW9yUG9seWdvbkZlYXR1cmUpIHtcbiAgICAgICAgICBhZGRJbm5lckZlYXR1cmVDdXRvdXRUb0V4dGVyaW9yRmVhdHVyZShleHRlcmlvclBvbHlnb25GZWF0dXJlLCBmZWF0dXJlKVxuICAgICAgICAgIHNldEZlYXR1cmVTZWxlY3RlZChleHRlcmlvclBvbHlnb25GZWF0dXJlLCB0cnVlKVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMuZ29vZ2xlTWFwLmRhdGEuYWRkKGZlYXR1cmUpXG4gICAgICAgICAgc2V0RmVhdHVyZVNlbGVjdGVkKGZlYXR1cmUsIHRydWUpXG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgfVxuICB9XG5cbiAgcHVibGljIGlzRHJhd2luZygpOiBib29sZWFuIHtcbiAgICBpZiAoaXNOdWxsT3JVbmRlZmluZWQodGhpcy5fZHJhd2luZ01hbmFnZXIpKSB7XG4gICAgICByZXR1cm4gdHJ1ZVxuICAgIH1cblxuICAgIHJldHVybiB0aGlzLl9kcmF3aW5nTWFuYWdlci5nZXREcmF3aW5nTW9kZSgpICE9PSBudWxsXG4gIH1cblxuICAvLyBUT0RPOiBSZWZhY3RvciBvdXQgb2YgdGhlIHNlcnZpY2UgbWVhbnQgdG8ganVzdCB3cmFwIHRoZSBnb29nbGUgbWFwcyBhcGkuXG4gIHB1YmxpYyBoYXNTZWxlY3RlZEZlYXR1cmUoKTogYm9vbGVhbiB7XG4gICAgdGhpcy5fYXNzZXJ0SW5pdGlhbGl6ZWQoKVxuICAgIGxldCBpc1NlbGVjdGVkID0gZmFsc2VcbiAgICB0aGlzLmdvb2dsZU1hcC5kYXRhLmZvckVhY2goZiA9PiB7XG4gICAgICBpZiAoaXNGZWF0dXJlU2VsZWN0ZWQoZikpIHtcbiAgICAgICAgaXNTZWxlY3RlZCA9IHRydWVcbiAgICAgIH1cbiAgICB9KVxuICAgIHJldHVybiBpc1NlbGVjdGVkXG4gIH1cblxuICAvLyBUT0RPOiBSZWZhY3RvciBvdXQgb2YgdGhlIHNlcnZpY2UgbWVhbnQgdG8ganVzdCB3cmFwIHRoZSBnb29nbGUgbWFwcyBhcGkuXG4gIHB1YmxpYyBnZXRTZWxlY3RlZEZlYXR1cmUoKTogZ29vZ2xlLm1hcHMuRGF0YS5GZWF0dXJlIHwgbnVsbCB7XG4gICAgdGhpcy5fYXNzZXJ0SW5pdGlhbGl6ZWQoKVxuICAgIGxldCBmZWF0dXJlOiBnb29nbGUubWFwcy5EYXRhLkZlYXR1cmUgfCBudWxsID0gbnVsbFxuICAgIHRoaXMuZ29vZ2xlTWFwLmRhdGEuZm9yRWFjaChmID0+IHtcbiAgICAgIGlmIChpc0ZlYXR1cmVTZWxlY3RlZChmKSkge1xuICAgICAgICBmZWF0dXJlID0gZlxuICAgICAgfVxuICAgIH0pXG4gICAgcmV0dXJuIGZlYXR1cmVcbiAgfVxuXG4gIC8vIFRPRE86IFJlZmFjdG9yIG91dCBvZiB0aGUgc2VydmljZSBtZWFudCB0byBqdXN0IHdyYXAgdGhlIGdvb2dsZSBtYXBzIGFwaS5cbiAgcHVibGljIG9wZW5Db250ZXh0TWVudSgpOiB2b2lkIHtcbiAgICBjb25zdCBmZWF0dXJlID0gdGhpcy5nZXRTZWxlY3RlZEZlYXR1cmUoKVxuICAgIGlmIChmZWF0dXJlKSB7XG4gICAgICB0aGlzLl9vcGVuQ29udGV4dE1lbnVGb3JGZWF0dXJlKGZlYXR1cmUpXG4gICAgfVxuICB9XG5cbiAgLy8gVE9ETzogUmVmYWN0b3Igb3V0IG9mIHRoZSBzZXJ2aWNlIG1lYW50IHRvIGp1c3Qgd3JhcCB0aGUgZ29vZ2xlIG1hcHMgYXBpLlxuICBwdWJsaWMgY2xvc2VDb250ZXh0TWVudSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fYWN0aXZlQ29udGV4dE1lbnUpIHtcbiAgICAgIHRoaXMuX2FjdGl2ZUNvbnRleHRNZW51LmNsb3NlKClcbiAgICAgIHRoaXMuX2FjdGl2ZUNvbnRleHRNZW51ID0gbnVsbFxuICAgIH1cbiAgfVxuXG4gIC8vIFRPRE86IFJlZmFjdG9yIG91dCBvZiB0aGUgc2VydmljZSBtZWFudCB0byBqdXN0IHdyYXAgdGhlIGdvb2dsZSBtYXBzIGFwaS5cbiAgcHJpdmF0ZSBfb3BlbkNvbnRleHRNZW51Rm9yRmVhdHVyZShmZWF0dXJlOiBnb29nbGUubWFwcy5EYXRhLkZlYXR1cmUsIHBvc2l0aW9uPzogZ29vZ2xlLm1hcHMuTGF0TG5nKSB7XG4gICAgdGhpcy5jbG9zZUNvbnRleHRNZW51KClcblxuICAgIHRoaXMuX2Fzc2VydEluaXRpYWxpemVkKClcblxuICAgIGxldCBfcG9zaXRpb24gPSBwb3NpdGlvblxuICAgIGlmICghX3Bvc2l0aW9uKSB7XG4gICAgICBfcG9zaXRpb24gPSBnZXRGZWF0dXJlQ2VudGVyKGZlYXR1cmUpXG4gICAgfVxuICAgIGlmICh0aGlzLl9mZWF0dXJlQ29udGV4dE1lbnUpIHtcbiAgICAgIHRoaXMuX2FjdGl2ZUNvbnRleHRNZW51ID0gbmV3IEdvb2dsZU1hcHNDb250ZXh0TWVudShcbiAgICAgICAgdGhpcy5nb29nbGVNYXAsXG4gICAgICAgIHRoaXMuX2ZlYXR1cmVDb250ZXh0TWVudSxcbiAgICAgICAgX3Bvc2l0aW9uLFxuICAgICAgICB0aGlzLl92Y3IsXG4gICAgICAgIHRoaXMuX25nWm9uZSxcbiAgICAgICAgdGhpcy5nb29nbGVNYXAuZGF0YSxcbiAgICAgICAgZmVhdHVyZSxcbiAgICAgIClcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0R2VvSnNvbihyZW1vdmVBcHBQcm9wZXJ0aWVzOiBib29sZWFuID0gdHJ1ZSk6IFByb21pc2U8b2JqZWN0PiB7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgIHRoaXMuX2Fzc2VydEluaXRpYWxpemVkKClcbiAgICAgIHRoaXMuZ29vZ2xlTWFwLmRhdGEudG9HZW9Kc29uKGYgPT4ge1xuICAgICAgICBpZiAocmVtb3ZlQXBwUHJvcGVydGllcykge1xuICAgICAgICAgIHN0cmlwQXBwRmVhdHVyZVByb3BlcnRpZXNGcm9tSnNvbihmKVxuICAgICAgICB9XG4gICAgICAgIHJlc29sdmUoZilcbiAgICAgIH0pXG4gICAgfSlcbiAgfVxuXG4gIC8qKiBBc3NlcnRzIHRoYXQgdGhlIG1hcCBoYXMgYmVlbiBpbml0aWFsaXplZC4gKi9cbiAgcHJpdmF0ZSBfYXNzZXJ0SW5pdGlhbGl6ZWQoKTogYXNzZXJ0cyB0aGlzIGlzIFdpdGhSZXF1aXJlZDxHb29nbGVNYXBzU2VydmljZSwgJ2dvb2dsZU1hcCc+IHtcbiAgICBpZiAoIXRoaXMuZ29vZ2xlTWFwICYmICh0eXBlb2YgbmdEZXZNb2RlID09PSAndW5kZWZpbmVkJyB8fCBuZ0Rldk1vZGUpKSB7XG4gICAgICB0aHJvdyBFcnJvcihcbiAgICAgICAgJ0Nhbm5vdCBhY2Nlc3MgR29vZ2xlIE1hcCBpbmZvcm1hdGlvbiBiZWZvcmUgdGhlIEFQSSBoYXMgYmVlbiBpbml0aWFsaXplZC4gJyArXG4gICAgICAgICAgJ1BsZWFzZSB3YWl0IGZvciB0aGUgQVBJIHRvIGxvYWQgYmVmb3JlIHRyeWluZyB0byBpbnRlcmFjdCB3aXRoIGl0LicsXG4gICAgICApXG4gICAgfVxuICB9XG5cbn1cbiJdfQ==
429
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ29vZ2xlLW1hcHMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi9nb29nbGUtbWFwcy9nb29nbGUtbWFwcy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQXVDLE1BQU0sZUFBZSxDQUFBO0FBQy9FLE9BQU8sRUFBRSxlQUFlLEVBQUUsSUFBSSxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQTtBQUNqRSxPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUcxRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQTtBQUVoRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQTtBQUNqRSxPQUFPLEVBQ0wsc0NBQXNDLEVBQ3RDLDRCQUE0QixFQUM1Qiw2QkFBNkIsRUFDN0Isd0JBQXdCLEVBQ3hCLGdCQUFnQixFQUNoQixnQkFBZ0IsRUFDaEIsc0NBQXNDLEVBQ3RDLDBCQUEwQixFQUMxQiwrQkFBK0IsRUFDL0IsaUJBQWlCLEVBQ2pCLDJCQUEyQixFQUMzQixpQkFBaUIsRUFDakIsa0JBQWtCLEVBQ2xCLGlDQUFpQyxHQUNsQyxNQUFNLCtCQUErQixDQUFBO0FBQ3RDLE9BQU8sRUFBMEIsY0FBYyxFQUFFLE1BQU0sNkJBQTZCLENBQUE7OztBQUlwRixNQUFNLHVCQUF1QixHQUFHLENBQUMsY0FBdUIsRUFBOEIsRUFBRSxDQUFDLENBQUM7SUFDeEYsU0FBUyxFQUFFLGNBQWM7SUFDekIsU0FBUyxFQUFFLGNBQWM7SUFDekIsUUFBUSxFQUFFLGNBQWM7Q0FDekIsQ0FBQyxDQUFBO0FBRUYsTUFBTSwrQkFBK0IsR0FBRyxDQUFDLGNBQXVCLEVBQTZDLEVBQUUsQ0FBQyxDQUFDO0lBQy9HLGNBQWMsRUFBRSxjQUFj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QUksRUFDVCxJQUFJLENBQUMsT0FBTyxFQUNaLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUNuQixPQUFPLENBQ1IsQ0FBQTtTQUNGO0lBQ0gsQ0FBQztJQUVNLFVBQVUsQ0FBQyxzQkFBK0IsSUFBSTtRQUNuRCxPQUFPLElBQUksT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxFQUFFO1lBQ3JDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFBO1lBQ3pCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRTtnQkFDaEMsSUFBSSxtQkFBbUIsRUFBRTtvQkFDdkIsaUNBQWlDLENBQUMsQ0FBQyxDQUFDLENBQUE7aUJBQ3JDO2dCQUNELE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQTtZQUNaLENBQUMsQ0FBQyxDQUFBO1FBQ0osQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDO0lBRUQsaURBQWlEO0lBQ3pDLGtCQUFrQjtRQUN4QixJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsSUFBSSxDQUFDLE9BQU8sU0FBUyxLQUFLLFdBQVcsSUFBSSxTQUFTLENBQUMsRUFBRTtZQUN0RSxNQUFNLEtBQUssQ0FDVCw0RUFBNEU7Z0JBQzFFLG9FQUFvRSxDQUN2RSxDQUFBO1NBQ0Y7SUFDSCxDQUFDOzs4R0F4Y1UsaUJBQWlCO2tIQUFqQixpQkFBaUI7MkZBQWpCLGlCQUFpQjtrQkFEN0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIE5nWm9uZSwgT25EZXN0cm95LCBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgZnJvbSwgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnXG5pbXBvcnQgeyBzd2l0Y2hNYXAsIHRha2VVbnRpbCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXG5cbmltcG9ydCB7IE1lbnVDb21wb25lbnQgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vbWVudSdcbmltcG9ydCB7IGlzTnVsbE9yVW5kZWZpbmVkLCBub3ROdWxsT3JVbmRlZmluZWQgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vdXRpbHMnXG5cbmltcG9ydCB7IEdvb2dsZU1hcHNDb250ZXh0TWVudSB9IGZyb20gJy4vZ29vZ2xlLW1hcHMtY29udGV4dG1lbnUnXG5pbXBvcnQge1xuICBhZGRJbm5lckZlYXR1cmVDdXRvdXRUb0V4dGVyaW9yRmVhdHVyZSxcbiAgY3JlYXRlRGF0YUZlYXR1cmVGcm9tUG9seWdvbixcbiAgY3JlYXRlRmVhdHVyZUNoYW5nZU9ic2VydmFibGUsXG4gIGdldEJvdW5kc1dpdGhBbGxGZWF0dXJlcyxcbiAgZ2V0RmVhdHVyZUNlbnRlcixcbiAgZ2V0RmVhdHVyZXNDb3VudCxcbiAgZ2V0SG92ZXJlZFN0eWxlT3B0aW9uc0RlZmluZWRCeUZlYXR1cmUsXG4gIGdldFBvc3NpYmxlRXh0ZXJpb3JGZWF0dXJlLFxuICBnZXRTdHlsZU9wdGlvbnNEZWZpbmVkQnlGZWF0dXJlLFxuICBpc0ZlYXR1cmVTZWxlY3RlZCxcbiAgcG9seWdvbkhhc1ZhbGlkUGF0aHNMZW5ndGhzLFxuICByZW1vdmVBbGxGZWF0dXJlcyxcbiAgc2V0RmVhdHVyZVNlbGVjdGVkLFxuICBzdHJpcEFwcEZlYXR1cmVQcm9wZXJ0aWVzRnJvbUpzb24sXG59IGZyb20gJy4vZ29vZ2xlLW1hcHMtZmVhdHVyZS1oZWxwZXJzJ1xuaW1wb3J0IHsgTWFwVmFsdWVNYW5hZ2VyU2VydmljZSwgTWFwVmFsdWVTb3VyY2UgfSBmcm9tICcuL21hcC12YWx1ZS1tYW5hZ2VyLnNlcnZpY2UnXG5cbmRlY2xhcmUgY29uc3QgbmdEZXZNb2RlOiBib29sZWFuIHwgdW5kZWZpbmVkXG5cbmNvbnN0IERFRkFVTFRfUE9MWUdPTl9PUFRJT05TID0gKGVkaXRpbmdFbmFibGVkOiBib29sZWFuKTogZ29vZ2xlLm1hcHMuUG9seWdvbk9wdGlvbnMgPT4gKHtcbiAgY2xpY2thYmxlOiBlZGl0aW5nRW5hYmxlZCxcbiAgZHJhZ2dhYmxlOiBlZGl0aW5nRW5hYmxlZCxcbiAgZWRpdGFibGU6IGVkaXRpbmdFbmFibGVkLFxufSlcblxuY29uc3QgREVGQVVMVF9EUkFXSU5HX01BTkFHRVJfT1BUSU9OUyA9IChlZGl0aW5nRW5hYmxlZDogYm9vbGVhbik6IGdvb2dsZS5tYXBzLmRyYXdpbmcuRHJhd2luZ01hbmFnZXJPcHRpb25zID0+ICh7XG4gIGRyYXdpbmdDb250cm9sOiBlZGl0aW5nRW5hYmxlZCxcbiAgZHJhd2luZ0NvbnRyb2xPcHRpb25zOiB7XG4gICAgZHJhd2luZ01vZGVzOiBbXG4gICAgICBnb29nbGUubWFwcy5kcmF3aW5nLk92ZXJsYXlUeXBlLlBPTFlHT04sXG4gICAgXSxcbiAgfSxcbiAgcG9seWdvbk9wdGlvbnM6IERFRkFVTFRfUE9MWUdPTl9PUFRJT05TKGVkaXRpbmdFbmFibGVkKSxcbiAgZHJhd2luZ01vZGU6IG51bGwsXG59KVxuXG5jb25zdCBGRUFUVVJFX1NUWUxFX09QVElPTlNfREVGQVVMVCA9IChlZGl0aW5nRW5hYmxlZDogYm9vbGVhbik6IGdvb2dsZS5tYXBzLkRhdGEuU3R5bGVPcHRpb25zID0+ICh7XG4gIGNsaWNrYWJsZTogdHJ1ZSxcbiAgLy8gY2xpY2thYmxlOiBlZGl0aW5nRW5hYmxlZCxcbiAgdmlzaWJsZTogdHJ1ZSxcbiAgLy8gekluZGV4PzogbnVtYmVyO1xuXG4gIC8vIGN1cnNvcj86IHN0cmluZztcbiAgZHJhZ2dhYmxlOiBmYWxzZSxcbiAgZWRpdGFibGU6IGZhbHNlLFxuICBmaWxsQ29sb3I6ICd0ZWFsJyxcbiAgZmlsbE9wYWNpdHk6IDAuMyxcbiAgc3Ryb2tlQ29sb3I6ICdibHVlJyxcbiAgc3Ryb2tlT3BhY2l0eTogMSxcbiAgc3Ryb2tlV2VpZ2h0OiAyLFxufSlcblxuY29uc3QgRkVBVFVSRV9TVFlMRV9PUFRJT05TX1NFTEVDVEVEID0gKGVkaXRpbmdFbmFibGVkOiBib29sZWFuKTogZ29vZ2xlLm1hcHMuRGF0YS5TdHlsZU9wdGlvbnMgPT4gKHtcbiAgLi4uRkVBVFVSRV9TVFlMRV9PUFRJT05TX0RFRkFVTFQoZWRpdGluZ0VuYWJsZWQpLFxuICBkcmFnZ2FibGU6IGVkaXRpbmdFbmFibGVkLFxuICBlZGl0YWJsZTogZWRpdGluZ0VuYWJsZWQsXG4gIGZpbGxDb2xvcjogJ2dyZWVuJyxcbiAgZmlsbE9wYWNpdHk6IDAuNyxcbiAgc3Ryb2tlQ29sb3I6ICdsaW1lZ3JlZW4nLFxuICBzdHJva2VPcGFjaXR5OiAxLFxuICBzdHJva2VXZWlnaHQ6IDIsXG59KVxuXG5jb25zdCBGRUFUVVJFX1NUWUxFX09WRVJSSURFX09QVElPTlNfSE9WRVJFRCA9IChlZGl0aW5nRW5hYmxlZDogYm9vbGVhbik6IGdvb2dsZS5tYXBzLkRhdGEuU3R5bGVPcHRpb25zID0+ICh7XG4gIHN0cm9rZUNvbG9yOiAnYmxhY2snLFxuICBzdHJva2VPcGFjaXR5OiAxLFxuICBzdHJva2VXZWlnaHQ6IDQsXG59KVxuXG5jb25zdCBTVVBQT1JURURfUFJPUEVSVFlfU1RZTEVfT1BUSU9OUzogKGtleW9mIGdvb2dsZS5tYXBzLkRhdGEuU3R5bGVPcHRpb25zKVtdID0gW1xuICAnZmlsbENvbG9yJyxcbiAgJ2ZpbGxPcGFjaXR5JyxcbiAgJ3N0cm9rZUNvbG9yJyxcbiAgJ3N0cm9rZU9wYWNpdHknLFxuICAnc3Ryb2tlV2VpZ2h0JyxcbiAgJ2xhYmVsJyxcbiAgJ29wYWNpdHknLFxuICAnaWNvbicsXG4gICdjbGlja2FibGUnLFxuICAndmlzaWJsZScsXG5dXG5cbnR5cGUgV2l0aFJlcXVpcmVkPFQsIEsgZXh0ZW5kcyBrZXlvZiBUPiA9IFQgJiB7IFtQIGluIEtdLT86IFRbUF0gfVxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgR29vZ2xlTWFwc1NlcnZpY2UgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX25nVW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdDx2b2lkPigpXG5cbiAgcHJpdmF0ZSByZWFkb25seSBfbWFwUmVhZHlTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSlcbiAgcHJpdmF0ZSByZWFkb25seSBfZWRpdGluZ0VuYWJsZWRTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPih0cnVlKVxuXG4gIHByaXZhdGUgX2RyYXdpbmdNYW5hZ2VyPzogZ29vZ2xlLm1hcHMuZHJhd2luZy5EcmF3aW5nTWFuYWdlclxuICBwcml2YXRlIF9mZWF0dXJlQ29udGV4dE1lbnU6IE1lbnVDb21wb25lbnQgfCBudWxsID0gbnVsbFxuICBwcml2YXRlIF9hY3RpdmVDb250ZXh0TWVudTogR29vZ2xlTWFwc0NvbnRleHRNZW51IHwgbnVsbCA9IG51bGxcbiAgcHJpdmF0ZSBfYmFzZUxhdExuZz86IGdvb2dsZS5tYXBzLkxhdExuZ0xpdGVyYWxcbiAgcHJpdmF0ZSBfcGFkZGluZz86IG51bWJlciB8IGdvb2dsZS5tYXBzLlBhZGRpbmdcblxuICBwcml2YXRlIF9hbGxvd0RyYXdpbmdIb2xlSW5Qb2x5Z29uID0gZmFsc2VcblxuICAvLyBUT0RPOiBNb3ZlIHRvIGEgYmV0dGVyIHBsYWNlIHRoYW4gdGhlIG1hcCB3cmFwcGVyIHNlcnZpY2UuXG4gIHByaXZhdGUgX2ZpbGVJbnB1dEhhbmRsZXI6ICgoZmlsZTogRmlsZSkgPT4gdm9pZCkgfCB1bmRlZmluZWQgfCBudWxsXG5cbiAgcHVibGljIGdvb2dsZU1hcD86IGdvb2dsZS5tYXBzLk1hcFxuXG4gIHB1YmxpYyByZWFkb25seSBtYXBSZWFkeSQ6IE9ic2VydmFibGU8Ym9vbGVhbj5cblxuICBwdWJsaWMgZ2V0IG1hcFJlYWR5KCk6IGJvb2xlYW4geyByZXR1cm4gdGhpcy5fbWFwUmVhZHlTdWJqZWN0LnZhbHVlIH1cblxuICBwdWJsaWMgcmVhZG9ubHkgZWRpdGluZ0VuYWJsZWQkOiBPYnNlcnZhYmxlPGJvb2xlYW4+XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBfbWFwVmFsdWVNYW5hZ2VyOiBNYXBWYWx1ZU1hbmFnZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgX25nWm9uZTogTmdab25lLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgX3ZjcjogVmlld0NvbnRhaW5lclJlZixcbiAgKSB7XG4gICAgdGhpcy5lZGl0aW5nRW5hYmxlZCQgPSB0aGlzLl9lZGl0aW5nRW5hYmxlZFN1YmplY3QuYXNPYnNlcnZhYmxlKClcbiAgICB0aGlzLm1hcFJlYWR5JCA9IHRoaXMuX21hcFJlYWR5U3ViamVjdC5hc09ic2VydmFibGUoKVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fbmdVbnN1YnNjcmliZS5uZXh0KClcbiAgICB0aGlzLl9uZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKClcbiAgfVxuXG4gIHB1YmxpYyBzZXRNYXAobWFwOiBnb29nbGUubWFwcy5NYXApOiB2b2lkIHtcbiAgICB0aGlzLmdvb2dsZU1hcCA9IG1hcFxuICAgIHRoaXMuX21hcFJlYWR5U3ViamVjdC5uZXh0KHRydWUpXG4gICAgdGhpcy5faW5pdERyYXdpbmdNYW5hZ2VyKClcbiAgICB0aGlzLl9pbml0RmVhdHVyZVN0eWxpbmcoKVxuICAgIHRoaXMuX2luaXRGZWF0dXJlQ2hhbmdlTGlzdGVuZXJzKClcbiAgfVxuXG4gIHB1YmxpYyBzZXRCYXNlTGF0TG5nKGxhdDogbnVtYmVyLCBsbmc6IG51bWJlcik6IHZvaWQge1xuICAgIHRoaXMuX2Jhc2VMYXRMbmcgPSB7IGxhdCwgbG5nIH1cbiAgfVxuXG4gIHB1YmxpYyBzZXRQYWRkaW5nKHBhZGRpbmc6IG51bWJlciB8IGdvb2dsZS5tYXBzLlBhZGRpbmcgfCB1bmRlZmluZWQpOiB2b2lkIHtcbiAgICB0aGlzLl9wYWRkaW5nID0gcGFkZGluZ1xuICB9XG5cbiAgLy8gVE9ETzogUmVmYWN0b3Igb3V0IG9mIHRoZSBzZXJ2aWNlIG1lYW50IHRvIGp1c3Qgd3JhcCB0aGUgZ29vZ2xlIG1hcHMgYXBpLlxuICBwdWJsaWMgc2V0RmVhdHVyZUNvbnRleHRNZW51KG1lbnU6IE1lbnVDb21wb25lbnQgfCBudWxsKTogdm9pZCB7XG4gICAgdGhpcy5jbG9zZUNvbnRleHRNZW51KClcbiAgICB0aGlzLl9mZWF0dXJlQ29udGV4dE1lbnUgPSBtZW51XG4gIH1cblxuICBwdWJsaWMgc2V0RWRpdGluZ0VuYWJsZWQoZW5hYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuX2VkaXRpbmdFbmFibGVkU3ViamVjdC5uZXh0KGVuYWJsZWQpXG5cbiAgICBpZiAodGhpcy5tYXBSZWFkeSkge1xuICAgICAgdGhpcy5fYXNzZXJ0SW5pdGlhbGl6ZWQoKVxuICAgICAgdGhpcy5nb29nbGVNYXAuZGF0YS5yZXZlcnRTdHlsZSgpXG4gICAgICBpZiAoIWVuYWJsZWQpIHtcbiAgICAgICAgdGhpcy5zdG9wRHJhd2luZygpXG4gICAgICAgIGNvbnN0IG9wdGlvbnMgPSBERUZBVUxUX0RSQVdJTkdfTUFOQUdFUl9PUFRJT05TKHRoaXMuaXNFZGl0aW5nRW5hYmxlZCgpKVxuICAgICAgICB0aGlzLl9kcmF3aW5nTWFuYWdlcj8uc2V0T3B0aW9ucyhvcHRpb25zKVxuICAgICAgICB0aGlzLl9kcmF3aW5nTWFuYWdlcj8uc2V0TWFwKG51bGwpXG4gICAgICAgIHRoaXMuZ29vZ2xlTWFwLmRhdGEuZm9yRWFjaChmID0+IHtcbiAgICAgICAgICBpZiAoaXNGZWF0dXJlU2VsZWN0ZWQoZikpIHtcbiAgICAgICAgICAgIHNldEZlYXR1cmVTZWxlY3RlZChmLCBmYWxzZSlcbiAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCBvcHRpb25zID0gREVGQVVMVF9EUkFXSU5HX01BTkFHRVJfT1BUSU9OUyh0aGlzLmlzRWRpdGluZ0VuYWJsZWQoKSlcbiAgICAgICAgdGhpcy5fZHJhd2luZ01hbmFnZXI/LnNldE9wdGlvbnMob3B0aW9ucylcbiAgICAgICAgdGhpcy5fZHJhd2luZ01hbmFnZXI/LnNldE1hcCh0aGlzLmdvb2dsZU1hcClcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwdWJsaWMgaXNFZGl0aW5nRW5hYmxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fZWRpdGluZ0VuYWJsZWRTdWJqZWN0LnZhbHVlXG4gIH1cblxuICBwdWJsaWMgZ2V0RGl2KCk6IEhUTUxEaXZFbGVtZW50IHtcbiAgICB0aGlzLl9hc3NlcnRJbml0aWFsaXplZCgpXG4gICAgcmV0dXJuIHRoaXMuZ29vZ2xlTWFwLmdldERpdigpIGFzIEhUTUxEaXZFbGVtZW50XG4gIH1cblxuICBwdWJsaWMgZml0Qm91bmRzKGJvdW5kczogZ29vZ2xlLm1hcHMuTGF0TG5nQm91bmRzIHwgZ29vZ2xlLm1hcHMuTGF0TG5nQm91bmRzTGl0ZXJhbCwgcGFkZGluZz86IG51bWJlciB8IGdvb2dsZS5tYXBzLlBhZGRpbmcpOiB2b2lkIHtcbiAgICB0aGlzLl9hc3NlcnRJbml0aWFsaXplZCgpXG4gICAgdGhpcy5nb29nbGVNYXAuZml0Qm91bmRzKGJvdW5kcywgcGFkZGluZylcbiAgfVxuXG4gIC8qKlxuICAgKiBJdGVyYXRlcyB0aGUgbWFwJ3MgZmVhdHVyZXMgYW5kIHJlbW92ZXMgYW55IHRoYXQgYXJlIHNlbGVjdGVkLlxuICAgKi9cbiAgcHVibGljIGRlbGV0ZVNlbGVjdGlvbigpOiB2b2lkIHtcbiAgICB0aGlzLl9hc3NlcnRJbml0aWFsaXplZCgpXG4gICAgY29uc3QgbWFwRGF0YSA9IHRoaXMuZ29vZ2xlTWFwLmRhdGFcbiAgICBtYXBEYXRhLmZvckVhY2goZiA9PiB7XG4gICAgICBpZiAoaXNGZWF0dXJlU2VsZWN0ZWQoZikpIHtcbiAgICAgICAgbWFwRGF0YS5yZW1vdmUoZilcbiAgICAgIH1cbiAgICB9KVxuICB9XG5cbiAgLyoqXG4gICAqIFN0b3BzIHRoZSBjdXJyZW50IGRyYXdpbmcuXG4gICAqL1xuICBwdWJsaWMgc3RvcERyYXdpbmcoKTogdm9pZCB7XG4gICAgdGhpcy5fbmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcbiAgICAgIGlmIChpc051bGxPclVuZGVmaW5lZCh0aGlzLl9kcmF3aW5nTWFuYWdlcikgfHwgdGhpcy5fZHJhd2luZ01hbmFnZXIuZ2V0RHJhd2luZ01vZGUoKSA9PT0gbnVsbCkge1xuICAgICAgICByZXR1cm5cbiAgICAgIH1cblxuICAgICAgLy8gTGlzdGVuaW5nIGZvciB0aGUgY29tcGxldGlvbiBldmVudCBvZiB0aGUgb3ZlcmxheSBjdXJyZW50bHkgYmVpbmcgZHJhd25cbiAgICAgIC8vIGFuZCByZW1vdmluZyBpdC4gSSBoYXZlbid0IGZvdW5kIGEgd2F5IHRvIGNhbmNlbCB0aGUgY3VycmVudCBkcmF3aW5nLFxuICAgICAgLy8gd2l0aG91dCB0aGlzIGhhY2sgdGhhdCBhc3N1bWVzIG91ciBsaXN0ZW5lcnMgd2lsbCBub3QgcnVuIGludG8gYSByYWNlXG4gICAgICAvLyBjb25kaXRpb24uXG4gICAgICBjb25zdCBsaXN0ZW5lciA9IGdvb2dsZS5tYXBzLmV2ZW50LmFkZExpc3RlbmVyKFxuICAgICAgICB0aGlzLl9kcmF3aW5nTWFuYWdlcixcbiAgICAgICAgJ292ZXJsYXljb21wbGV0ZScsXG4gICAgICAgIChldmVudDogZ29vZ2xlLm1hcHMuZHJhd2luZy5PdmVybGF5Q29tcGxldGVFdmVudCkgPT4ge1xuICAgICAgICAgIGV2ZW50Lm92ZXJsYXk/LnNldE1hcChudWxsKVxuICAgICAgICAgIGxpc3RlbmVyLnJlbW92ZSgpXG4gICAgICAgIH0sXG4gICAgICApXG5cbiAgICAgIC8vIFRvIGZha2UgY2FuY2VsaW5nIHRoZSBjdXJyZW50IGRyYXdpbmcsIHdpdGhvdXQgZGlzYWJsaW5nIHRoZSBkcmF3aW5nXG4gICAgICAvLyBtb2RlLCB0aGUgZHJhd2luZyBtb2RlIGlzIGJlaW5nIHVuc2V0IHRoZW4gaW1tZWRpYXRlbHkgc2V0IGJhY2suIFdoZW5cbiAgICAgIC8vIHRoZSBtb2RlIGlzIHVuc2V0IHRoZSAnb3ZlcmxheWNvbXBsZXRlJyBldmVudCB3aWxsIGZpcmUsIHdoaWNoIHdpbGxcbiAgICAgIC8vIGdpdmUgYSByZWZlcmVuY2UgdG8gdGhlIGN1cnJlbnQgb3ZlcmxheSB0byByZW1vdmUsIHRoZW4gaXQgaXMgc2V0IGJhY2tcbiAgICAgIC8vIHRvIHRoZSBtb2RlIHRoZSB1c2VyIHdhcyB1c2luZy4gVG8gdGhlIHVzZXIgaXMgc2hvdWxkIGp1c3Qgc2VlbSBsaWtlXG4gICAgICAvLyB0aGUgY3VycmVudCBkcmF3aW5nIHdhcyBjYW5jZWxlZCBhbmQgdGhleSBjYW4gc3RhcnQgZHJhd2luZyBhZ2Fpbi5cbiAgICAgIGNvbnN0IG1vZGUgPSB0aGlzLl9kcmF3aW5nTWFuYWdlci5nZXREcmF3aW5nTW9kZSgpXG4gICAgICB0aGlzLl9kcmF3aW5nTWFuYWdlci5zZXREcmF3aW5nTW9kZShudWxsKVxuICAgICAgdGhpcy5fZHJhd2luZ01hbmFnZXIuc2V0RHJhd2luZ01vZGUobW9kZSlcblxuICAgICAgLy8gJ292ZXJsYXljb21wbGV0ZScgc2hvdWxkIGZpcmUgaW1tZWRpYXRlbHksIHVubGVzcyBhbiBvdmVybGF5IGhhZG4ndFxuICAgICAgLy8gc3RhcnRlZCBkcmF3aW5nLiBUaGlzIHRpbWVvdXQgd2lsbCBtYWtlIHN1cmUgdGhlIGxpc3RlbmVyIGdldHMgcmVtb3ZlZC5cbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICBsaXN0ZW5lci5yZW1vdmUoKVxuICAgICAgfSlcbiAgICB9KVxuICB9XG5cbiAgcHJpdmF0ZSBfaW5pdERyYXdpbmdNYW5hZ2VyKCk6IHZvaWQge1xuICAgIGlmIChub3ROdWxsT3JVbmRlZmluZWQodGhpcy5fZHJhd2luZ01hbmFnZXIpKSB7XG4gICAgICB0aHJvdyBFcnJvcihgRHJhd2luZ01hbmFnZXIgaXMgYWxyZWFkeSBpbml0aWFsaXplZC5gKVxuICAgIH1cblxuICAgIHRoaXMuX2Fzc2VydEluaXRpYWxpemVkKClcblxuICAgIGNvbnN0IG9wdGlvbnMgPSBERUZBVUxUX0RSQVdJTkdfTUFOQUdFUl9PUFRJT05TKHRoaXMuaXNFZGl0aW5nRW5hYmxlZCgpKVxuXG4gICAgY29uc3QgZHJhd2luZ01hbmFnZXIgPSBuZXcgZ29vZ2xlLm1hcHMuZHJhd2luZy5EcmF3aW5nTWFuYWdlcihvcHRpb25zKVxuICAgIGRyYXdpbmdNYW5hZ2VyLnNldE1hcCh0aGlzLmdvb2dsZU1hcClcblxuICAgIHRoaXMuX2RyYXdpbmdNYW5hZ2VyID0gZHJhd2luZ01hbmFnZXJcblxuICAgIHRoaXMuX2RyYXdpbmdNYW5hZ2VyLmFkZExpc3RlbmVyKCdkcmF3aW5nbW9kZV9jaGFuZ2VkJywgKGV2ZW50OiBhbnkpID0+IHtcbiAgICAgIGlmICh0aGlzLl9kcmF3aW5nTWFuYWdlcj8uZ2V0RHJhd2luZ01vZGUoKSAhPT0gbnVsbCkge1xuICAgICAgICB0aGlzLl9hc3NlcnRJbml0aWFsaXplZCgpXG4gICAgICAgIHRoaXMuZ29vZ2xlTWFwLmRhdGEuZm9yRWFjaChmID0+IHtcbiAgICAgICAgICBpZiAoaXNGZWF0dXJlU2VsZWN0ZWQoZikpIHtcbiAgICAgICAgICAgIHNldEZlYXR1cmVTZWxlY3RlZChmLCBmYWxzZSlcbiAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgICB9XG4gICAgfSlcbiAgfVxuXG4gIHB1YmxpYyBhZGRDb250cm9sKGVsZW1lbnQ6IEhUTUxFbGVtZW50LCBwb3NpdGlvbjogZ29vZ2xlLm1hcHMuQ29udHJvbFBvc2l0aW9uKTogdm9pZCB7XG4gICAgdGhpcy5fYXNzZXJ0SW5pdGlhbGl6ZWQoKVxuICAgIHRoaXMuZ29vZ2xlTWFwLmNvbnRyb2xzW3Bvc2l0aW9uXS5wdXNoKGVsZW1lbnQpXG4gIH1cblxuICBwdWJsaWMgYXN5bmMgc2V0RGF0YShkYXRhOiBhbnkpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICB0aGlzLl9hc3NlcnRJbml0aWFsaXplZCgpXG4gICAgcmVtb3ZlQWxsRmVhdHVyZXModGhpcy5nb29nbGVNYXAuZGF0YSlcbiAgICB0aGlzLmdvb2dsZU1hcC5kYXRhLmFkZEdlb0pzb24oZGF0YSlcbiAgICB0aGlzLmdvb2dsZU1hcC5maXRCb3VuZHMoZ2V0Qm91bmRzV2l0aEFsbEZlYXR1cmVzKHRoaXMuZ29vZ2xlTWFwLmRhdGEpLCB0aGlzLl9wYWRkaW5nKVxuICB9XG5cbiAgLy8gVE9ETzogUmVmYWN0b3Igb3V0IG9mIHRoZSBzZXJ2aWNlIG1lYW50IHRvIGp1c3Qgd3JhcCB0aGUgZ29vZ2xlIG1hcHMgYXBpLlxuICBwdWJsaWMgcmVDZW50ZXJPbkZlYXR1cmVzKCk6IHZvaWQge1xuICAgIHRoaXMuX2Fzc2VydEluaXRpYWxpemVkKClcbiAgICBpZiAoZ2V0RmVhdHVyZXNDb3VudCh0aGlzLmdvb2dsZU1hcC5kYXRhKSA9PT0gMCkge1xuICAgICAgaWYgKCF0aGlzLl9iYXNlTGF0TG5nKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICB0aGlzLmdvb2dsZU1hcC5wYW5Ubyh0aGlzLl9iYXNlTGF0TG5nKVxuICAgICAgcmV0dXJuXG4gICAgfVxuICAgIHRoaXMuZ29vZ2xlTWFwLmZpdEJvdW5kcyhnZXRCb3VuZHNXaXRoQWxsRmVhdHVyZXModGhpcy5nb29nbGVNYXAuZGF0YSksIHRoaXMuX3BhZGRpbmcpXG5cbiAgICAvLyBUT0RPOiBGaXggdG8gcGFuIHRvIGNlbnRlci4gQ3VycmVudGx5IGZpdEJvdW5kcyByZXN1bHRzIGluIHRoZSBleHBlY3RlZFxuICAgIC8vIHJlc3VsdCwgYnV0IHBhbnRUb0JvdW5kcyBhbmltYXRlcy5cbiAgICAvLyB0aGlzLmdvb2dsZU1hcC5wYW5Ub0JvdW5kcyhnZXRCb3VuZHNXaXRoQWxsRmVhdHVyZXModGhpcy5nb29nbGVNYXAuZGF0YSkpXG4gIH1cblxuICBwdWJsaWMgYWxsb3dEcmF3aW5nSG9sZUluUG9seWdvbihhbGxvdzogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuX2FsbG93RHJhd2luZ0hvbGVJblBvbHlnb24gPSBhbGxvd1xuICB9XG5cbiAgcHVibGljIHNldEZpbGVJbnB1dEhhbmRsZXIoaGFuZGxlcjogKChmaWxlOiBGaWxlKSA9PiB2b2lkKSB8IHVuZGVmaW5lZCB8IG51bGwpOiB2b2lkIHtcbiAgICB0aGlzLl9maWxlSW5wdXRIYW5kbGVyID0gaGFuZGxlclxuICB9XG5cbiAgcHVibGljIGdldEZpbGVJbnB1dEhhbmRsZXIoKTogKChmaWxlOiBGaWxlKSA9PiB2b2lkKSB8IHVuZGVmaW5lZCB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLl9maWxlSW5wdXRIYW5kbGVyXG4gIH1cblxuICBwcml2YXRlIF9pbml0RmVhdHVyZVN0eWxpbmcoKTogdm9pZCB7XG4gICAgdGhpcy5fYXNzZXJ0SW5pdGlhbGl6ZWQoKVxuXG4gICAgLy8gRGlzYWJsZSBhbnkgc2VsZWN0aW9uIHdoZW4gY2xpY2tpbmcgdGhlIG1hcC5cbiAgICAvL1xuICAgIC8vIFRPRE86IFRoZXJlIG1heSBiZSBhIGJldHRlciB3YXkgdG8gZG8gdGhpcyB0aGF0IHdvdWxkIGJlIG1vcmUgYWNjdXJhdGUgb3JcbiAgICAvLyBhZGRpdGlvbmFsIGV2ZW50cyB0aGF0IHNob3VsZCBiZSBsaXN0ZW5lZCB0bywgc3VjaCBhcyB0aGUgZGlzYWJsaW5nXG4gICAgLy8gc2VsZWN0aW9uIHdoZW4gdGhlIG1hcCBsb29zZXMgZm9jdXMuXG4gICAgdGhpcy5nb29nbGVNYXAuYWRkTGlzdGVuZXIoJ2NsaWNrJywgKGV2ZW46IGdvb2dsZS5tYXBzLk1hcE1vdXNlRXZlbnQgfCBnb29nbGUubWFwcy5JY29uTW91c2VFdmVudCkgPT4ge1xuICAgICAgdGhpcy5fYXNzZXJ0SW5pdGlhbGl6ZWQoKVxuICAgICAgdGhpcy5nb29nbGVNYXAuZGF0YS5mb3JFYWNoKGYgPT4gc2V0RmVhdHVyZVNlbGVjdGVkKGYsIGZhbHNlKSlcbiAgICB9KVxuXG4gICAgLy8gRGV0ZXJtaW5lIHdoYXQgdGhlIHN0eWxlIG9mIHRoZSBmZWF0dXJlcyBhcmUuXG4gICAgdGhpcy5nb29nbGVNYXAuZGF0YS5zZXRTdHlsZShmZWF0dXJlID0+IHtcbiAgICAgIGxldCBvcHRzID0gRkVBVFVSRV9TVFlMRV9PUFRJT05TX0RFRkFVTFQodGhpcy5pc0VkaXRpbmdFbmFibGVkKCkpXG5cbiAgICAgIGNvbnN0IG9wdGlvbnMgPSBnZXRTdHlsZU9wdGlvbnNEZWZpbmVkQnlGZWF0dXJlKGZlYXR1cmUpXG4gICAgICB0aGlzLl9tZXJnZVN0eWxlT3B0aW9ucyhvcHRzLCBvcHRpb25zID8/IHt9KVxuXG4gICAgICBpZiAoaXNGZWF0dXJlU2VsZWN0ZWQoZmVhdHVyZSkpIHtcbiAgICAgICAgY29uc3QgaG92ZXJPcHRpb25zID0gZ2V0SG92ZXJlZFN0eWxlT3B0aW9uc0RlZmluZWRCeUZlYXR1cmUoZmVhdHVyZSlcbiAgICAgICAgb3B0cyA9IEZFQVRVUkVfU1RZTEVfT1BUSU9OU19TRUxFQ1RFRCh0aGlzLmlzRWRpdGluZ0VuYWJsZWQoKSlcbiAgICAgICAgdGhpcy5fbWVyZ2VTdHlsZU9wdGlvbnMob3B0cywgaG92ZXJPcHRpb25zID8/IHt9KVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gb3B0c1xuICAgIH0pXG5cbiAgICAvLyBTZWxlY3QgYSBmZWF0dXJlIHdoZW4gY2xpY2tlZC5cbiAgICB0aGlzLmdvb2dsZU1hcC5kYXRhLmFkZExpc3RlbmVyKCdjbGljaycsIChldmVudDogZ29vZ2xlLm1hcHMuRGF0YS5Nb3VzZUV2ZW50KSA9PiB7XG4gICAgICB0aGlzLl9hc3NlcnRJbml0aWFsaXplZCgpXG5cbiAgICAgIHNldEZlYXR1cmVTZWxlY3RlZChldmVudC5mZWF0dXJlLCB0cnVlKVxuICAgICAgdGhpcy5nb29nbGVNYXAuZGF0YS5mb3JFYWNoKGYgPT4ge1xuICAgICAgICBpZiAoZiAhPT0gZXZlbnQuZmVhdHVyZSAmJiBpc0ZlYXR1cmVTZWxlY3RlZChmKSkge1xuICAgICAgICAgIHNldEZlYXR1cmVTZWxlY3RlZChmLCBmYWxzZSlcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICB9KVxuXG4gICAgLy8gU2V0IGEgc3R5bGUgb24gaG92ZXJlZCBmZWF0dXJlcyB0aGF0IGNhbiBiZSBzZWxlY3RlZC5cbiAgICB0aGlzLmdvb2dsZU1hcC5kYXRhLmFkZExpc3RlbmVyKCdtb3VzZW92ZXInLCAoZXZlbnQ6IGdvb2dsZS5tYXBzLkRhdGEuTW91c2VFdmVudCkgPT4ge1xuICAgICAgdGhpcy5fYXNzZXJ0SW5pdGlhbGl6ZWQoKVxuICAgICAgdGhpcy5nb29nbGVNYXAuZGF0YS5yZXZlcnRTdHlsZSgpXG5cbiAgICAgIGlmICghdGhpcy5pc0RyYXdpbmcoKSAmJiAhaXNGZWF0dXJlU2VsZWN0ZWQoZXZlbnQuZmVhdHVyZSkpIHtcbiAgICAgICAgdGhpcy5zZXRGZWF0dXJlSG92ZXJlZFN0eWxlT3ZlcnJpZGUoZXZlbnQuZmVhdHVyZSlcbiAgICAgIH1cbiAgICB9KVxuXG4gICAgLy8gUmVtb3ZlIGFueSBob3ZlciBzdHlsZXMgd2hlbiBtb3VzZSBtb3ZlcyBhd2F5LlxuICAgIHRoaXMuZ29vZ2xlTWFwLmRhdGEuYWRkTGlzdGVuZXIoJ21vdXNlb3V0JywgKGV2ZW50OiBnb29nbGUubWFwcy5EYXRhLk1vdXNlRXZlbnQpID0+IHtcbiAgICAgIHRoaXMuX2Fzc2VydEluaXRpYWxpemVkKClcbiAgICAgIHRoaXMuZ29vZ2xlTWFwLmRhdGEucmV2ZXJ0U3R5bGUoKVxuICAgIH0pXG4gIH1cblxuICBwdWJsaWMgc2V0RmVhdHVyZUhvdmVyZWRTdHlsZU92ZXJyaWRlKGZlYXR1cmU6IGdvb2dsZS5tYXBzLkRhdGEuRmVhdHVyZSkge1xuICAgIHRoaXMuX2Fzc2VydEluaXRpYWxpemVkKClcbiAgICBjb25zdCBvdmVycmlkZU9wdHMgPSBGRUFUVVJFX1NUWUxFX09WRVJSSURFX09QVElPTlNfSE9WRVJFRCh0aGlzLmlzRWRpdGluZ0VuYWJsZWQoKSlcbiAgICBjb25zdCBob3Zlck9wdGlvbnMgPSBnZXRIb3ZlcmVkU3R5bGVPcHRpb25zRGVmaW5lZEJ5RmVhdHVyZShmZWF0dXJlKVxuICAgIHRoaXMuX21lcmdlU3R5bGVPcHRpb25zKG92ZXJyaWRlT3B0cywgaG92ZXJPcHRpb25zID8/IHt9KVxuICAgIHRoaXMuZ29vZ2xlTWFwLmRhdGEub3ZlcnJpZGVTdHlsZShmZWF0dXJlLCBvdmVycmlkZU9wdHMpXG4gIH1cblxuICBwcml2YXRlIF9tZXJnZVN0eWxlT3B0aW9ucyhvcHRpb25zOiBnb29nbGUubWFwcy5EYXRhLlN0eWxlT3B0aW9ucywgcHJvcGVydGllc1N0eWxlT3B0aW9uczogZ29vZ2xlLm1hcHMuRGF0YS5TdHlsZU9wdGlvbnMpOiB2b2lkIHtcbiAgICBpZiAoT2JqZWN0LmtleXMocHJvcGVydGllc1N0eWxlT3B0aW9ucykubGVuZ3RoID09PSAwKSB7XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBmb3IgKGNvbnN0IG9wdCBvZiBTVVBQT1JURURfUFJPUEVSVFlfU1RZTEVfT1BUSU9OUykge1xuICAgICAgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChwcm9wZXJ0aWVzU3R5bGVPcHRpb25zLCBvcHQpKSB7XG4gICAgICAgIG9wdGlvbnNbb3B0XSA9IHByb3BlcnRpZXNTdHlsZU9wdGlvbnNbb3B0XSBhcyBhbnlcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9pbml0RmVhdHVyZUNoYW5nZUxpc3RlbmVycygpOiB2b2lkIHtcbiAgICB0aGlzLl9hc3NlcnRJbml0aWFsaXplZCgpXG5cbiAgICBjcmVhdGVGZWF0dXJlQ2hhbmdlT2JzZXJ2YWJsZSh0aGlzLmdvb2dsZU1hcC5kYXRhLCB0aGlzLl9uZ1pvbmUpLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoKCkgPT4gZnJvbSh0aGlzLmdldEdlb0pzb24oKSkucGlwZShcbiAgICAgICAgdGFwKGdlb0pzb24gPT4gdGhpcy5fbWFwVmFsdWVNYW5hZ2VyLnNldFZhbHVlKGdlb0pzb24sIE1hcFZhbHVlU291cmNlLkZlYXR1cmVDaGFuZ2UpKSxcbiAgICAgICkpLFxuICAgICAgdGFrZVVudGlsKHRoaXMuX25nVW5zdWJzY3JpYmUpLFxuICAgICkuc3Vic2NyaWJlKClcblxuICAgIHRoaXMuZ29vZ2xlTWFwLmRhdGEuYWRkTGlzdGVuZXIoJ2NvbnRleHRtZW51JywgKGV2ZW50OiBnb29nbGUubWFwcy5EYXRhLk1vdXNlRXZlbnQpID0+IHtcbiAgICAgIGlmICghaXNGZWF0dXJlU2VsZWN0ZWQoZXZlbnQuZmVhdHVyZSkpIHtcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIHRoaXMuX29wZW5Db250ZXh0TWVudUZvckZlYXR1cmUoZXZlbnQuZmVhdHVyZSwgZXZlbnQubGF0TG5nID8/IHVuZGVmaW5lZClcbiAgICB9KVxuXG4gICAgaWYgKG5vdE51bGxPclVuZGVmaW5lZCh0aGlzLl9kcmF3aW5nTWFuYWdlcikpIHtcbiAgICAgIGdvb2dsZS5tYXBzLmV2ZW50LmFkZExpc3RlbmVyKHRoaXMuX2RyYXdpbmdNYW5hZ2VyLCAncG9seWdvbmNvbXBsZXRlJywgKHBvbHlnb246IGdvb2dsZS5tYXBzLlBvbHlnb24pID0+IHtcbiAgICAgICAgLy8gVGhlIERyYXdpbmdNYW5hZ2VyIGRvZXNuJ3Qgc2VlbSB0byBoYXZlIGEgd2F5IHRvIGFjY2VzcyB0aGUgb3ZlcmxheXMsXG4gICAgICAgIC8vIHNvIGlmIHRoZSBtYXAgaXMgbm90IHNldCB0aGVuIGl0IHNob3VsZG4neSBiZSBjb25zaWRlcmVkIGEgc3VjY2Vzc2Z1bFxuICAgICAgICAvLyBjb21wbGV0aW9uLiBJIGFtIGNhbmNlbGluZyB0aGUgYWN0aXZlIGRyYXdpbmcgYnkgZGlzYWJsaW5nIGRyYXdpbmdcbiAgICAgICAgLy8gbW9kZSBhbmQgc2V0dGluZyB0aGUgbWFwIG51bGwgaW4gdGhlICdvdmVybGF5Y29tcGxldGUnIGV2ZW50LCB3aGljaFxuICAgICAgICAvLyBmaXJlcyBiZWZvcmUgdGhlICdwb2x5Z29uY29tcGxldGUnIGV2ZW50LlxuICAgICAgICBpZiAoaXNOdWxsT3JVbmRlZmluZWQocG9seWdvbi5nZXRNYXAoKSkpIHtcbiAgICAgICAgICByZXR1cm5cbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuX2Fzc2VydEluaXRpYWxpemVkKClcblxuICAgICAgICAvLyBUT0RPOiBTZWUgaWYgdGhlcmUgaXMgYSB3YXkgdG8gcHJldmVudCB0aGUgcG9seWdvbiBmcm9tIGNvbXBsZXRpbmdcbiAgICAgICAgLy8gd2l0aG91dCBlbm91Z2ggcG9pbnRzLiBUaGlzIGlzIHZlcnkgbG93IHByaW9yaXR5LCBiZWNhdXNlIHN0YXJ0aW5nXG4gICAgICAgIC8vIG92ZXIgYWZ0ZXIgYWRkaW5nIGEgc2luZ2xlIHBvaW50IGlzbid0IGEgbWFqb3IgaW5jb252ZW5pZW5jZS5cbiAgICAgICAgaWYgKCFwb2x5Z29uSGFzVmFsaWRQYXRoc0xlbmd0aHMocG9seWdvbikpIHtcbiAgICAgICAgICAvLyBSZW1vdmUgdGhlIGRyYXduIHBvbHlnb24uXG4gICAgICAgICAgcG9seWdvbi5zZXRNYXAobnVsbClcbiAgICAgICAgICAvLyBTdG9wIGRyYXdpbmcuXG4gICAgICAgICAgdGhpcy5fZHJhd2luZ01hbmFnZXI/LnNldERyYXdpbmdNb2RlKG51bGwpXG4gICAgICAgICAgcmV0dXJuXG4gICAgICAgIH1cblxuICAgICAgICAvLyBDcmVhdGUgYSBtYXAgZmVhdHVyZSBvZiB0aGUgZHJhd24gcG9seWdvbi5cbiAgICAgICAgY29uc3QgZmVhdHVyZSA9IGNyZWF0ZURhdGFGZWF0dXJlRnJvbVBvbHlnb24ocG9seWdvbilcbiAgICAgICAgLy8gUmVtb3ZlIHRoZSBkcmF3biBwb2x5Z29uLlxuICAgICAgICBwb2x5Z29uLnNldE1hcChudWxsKVxuXG4gICAgICAgIC8vIFN0b3AgZHJhd2luZy5cbiAgICAgICAgdGhpcy5fZHJhd2luZ01hbmFnZXI/LnNldERyYXdpbmdNb2RlKG51bGwpXG5cbiAgICAgICAgLy8gQ2hlY2sgaWYgdGhlIGZlYXR1cmUgc2hvdWxkIGJlIHVzZWQgYXMgYSBjdXRvdXQgdG8gYW4gZXhpc3RpbmdcbiAgICAgICAgLy8gZmVhdHVyZSBvciBhZGRlZCBhcyBpdCdzIG93biBmZWF0dXJlLlxuICAgICAgICBjb25zdCBleHRlcmlvclBvbHlnb25GZWF0dXJlID0gdGhpcy5fYWxsb3dEcmF3aW5nSG9sZUluUG9seWdvblxuICAgICAgICAgID8gZ2V0UG9zc2libGVFeHRlcmlvckZlYXR1cmUodGhpcy5nb29nbGVNYXAuZGF0YSwgZmVhdHVyZSlcbiAgICAgICAgICA6IHVuZGVmaW5lZFxuICAgICAgICBpZiAoZXh0ZXJpb3JQb2x5Z29uRmVhdHVyZSkge1xuICAgICAgICAgIGFkZElubmVyRmVhdHVyZUN1dG91dFRvRXh0ZXJpb3JGZWF0dXJlKGV4dGVyaW9yUG9seWdvbkZlYXR1cmUsIGZlYXR1cmUpXG4gICAgICAgICAgc2V0RmVhdHVyZVNlbGVjdGVkKGV4dGVyaW9yUG9seWdvbkZlYXR1cmUsIHRydWUpXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5nb29nbGVNYXAuZGF0YS5hZGQoZmVhdHVyZSlcbiAgICAgICAgICBzZXRGZWF0dXJlU2VsZWN0ZWQoZmVhdHVyZSwgdHJ1ZSlcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgaXNEcmF3aW5nKCk6IGJvb2xlYW4ge1xuICAgIGlmIChpc051bGxPclVuZGVmaW5lZCh0aGlzLl9kcmF3aW5nTWFuYWdlcikpIHtcbiAgICAgIHJldHVybiB0cnVlXG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuX2RyYXdpbmdNYW5hZ2VyLmdldERyYXdpbmdNb2RlKCkgIT09IG51bGxcbiAgfVxuXG4gIC8vIFRPRE86IFJlZmFjdG9yIG91dCBvZiB0aGUgc2VydmljZSBtZWFudCB0byBqdXN0IHdyYXAgdGhlIGdvb2dsZSBtYXBzIGFwaS5cbiAgcHVibGljIGhhc1NlbGVjdGVkRmVhdHVyZSgpOiBib29sZWFuIHtcbiAgICB0aGlzLl9hc3NlcnRJbml0aWFsaXplZCgpXG4gICAgbGV0IGlzU2VsZWN0ZWQgPSBmYWxzZVxuICAgIHRoaXMuZ29vZ2xlTWFwLmRhdGEuZm9yRWFjaChmID0+IHtcbiAgICAgIGlmIChpc0ZlYXR1cmVTZWxlY3RlZChmKSkge1xuICAgICAgICBpc1NlbGVjdGVkID0gdHJ1ZVxuICAgICAgfVxuICAgIH0pXG4gICAgcmV0dXJuIGlzU2VsZWN0ZWRcbiAgfVxuXG4gIC8vIFRPRE86IFJlZmFjdG9yIG91dCBvZiB0aGUgc2VydmljZSBtZWFudCB0byBqdXN0IHdyYXAgdGhlIGdvb2dsZSBtYXBzIGFwaS5cbiAgcHVibGljIGdldFNlbGVjdGVkRmVhdHVyZSgpOiBnb29nbGUubWFwcy5EYXRhLkZlYXR1cmUgfCBudWxsIHtcbiAgICB0aGlzLl9hc3NlcnRJbml0aWFsaXplZCgpXG4gICAgbGV0IGZlYXR1cmU6IGdvb2dsZS5tYXBzLkRhdGEuRmVhdHVyZSB8IG51bGwgPSBudWxsXG4gICAgdGhpcy5nb29nbGVNYXAuZGF0YS5mb3JFYWNoKGYgPT4ge1xuICAgICAgaWYgKGlzRmVhdHVyZVNlbGVjdGVkKGYpKSB7XG4gICAgICAgIGZlYXR1cmUgPSBmXG4gICAgICB9XG4gICAgfSlcbiAgICByZXR1cm4gZmVhdHVyZVxuICB9XG5cbiAgLy8gVE9ETzogUmVmYWN0b3Igb3V0IG9mIHRoZSBzZXJ2aWNlIG1lYW50IHRvIGp1c3Qgd3JhcCB0aGUgZ29vZ2xlIG1hcHMgYXBpLlxuICBwdWJsaWMgb3BlbkNvbnRleHRNZW51KCk6IHZvaWQge1xuICAgIGNvbnN0IGZlYXR1cmUgPSB0aGlzLmdldFNlbGVjdGVkRmVhdHVyZSgpXG4gICAgaWYgKGZlYXR1cmUpIHtcbiAgICAgIHRoaXMuX29wZW5Db250ZXh0TWVudUZvckZlYXR1cmUoZmVhdHVyZSlcbiAgICB9XG4gIH1cblxuICAvLyBUT0RPOiBSZWZhY3RvciBvdXQgb2YgdGhlIHNlcnZpY2UgbWVhbnQgdG8ganVzdCB3cmFwIHRoZSBnb29nbGUgbWFwcyBhcGkuXG4gIHB1YmxpYyBjbG9zZUNvbnRleHRNZW51KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9hY3RpdmVDb250ZXh0TWVudSkge1xuICAgICAgdGhpcy5fYWN0aXZlQ29udGV4dE1lbnUuY2xvc2UoKVxuICAgICAgdGhpcy5fYWN0aXZlQ29udGV4dE1lbnUgPSBudWxsXG4gICAgfVxuICB9XG5cbiAgLy8gVE9ETzogUmVmYWN0b3Igb3V0IG9mIHRoZSBzZXJ2aWNlIG1lYW50IHRvIGp1c3Qgd3JhcCB0aGUgZ29vZ2xlIG1hcHMgYXBpLlxuICBwcml2YXRlIF9vcGVuQ29udGV4dE1lbnVGb3JGZWF0dXJlKGZlYXR1cmU6IGdvb2dsZS5tYXBzLkRhdGEuRmVhdHVyZSwgcG9zaXRpb24/OiBnb29nbGUubWFwcy5MYXRMbmcpIHtcbiAgICB0aGlzLmNsb3NlQ29udGV4dE1lbnUoKVxuXG4gICAgdGhpcy5fYXNzZXJ0SW5pdGlhbGl6ZWQoKVxuXG4gICAgbGV0IF9wb3NpdGlvbiA9IHBvc2l0aW9uXG4gICAgaWYgKCFfcG9zaXRpb24pIHtcbiAgICAgIF9wb3NpdGlvbiA9IGdldEZlYXR1cmVDZW50ZXIoZmVhdHVyZSlcbiAgICB9XG4gICAgaWYgKHRoaXMuX2ZlYXR1cmVDb250ZXh0TWVudSkge1xuICAgICAgdGhpcy5fYWN0aXZlQ29udGV4dE1lbnUgPSBuZXcgR29vZ2xlTWFwc0NvbnRleHRNZW51KFxuICAgICAgICB0aGlzLmdvb2dsZU1hcCxcbiAgICAgICAgdGhpcy5fZmVhdHVyZUNvbnRleHRNZW51LFxuICAgICAgICBfcG9zaXRpb24sXG4gICAgICAgIHRoaXMuX3ZjcixcbiAgICAgICAgdGhpcy5fbmdab25lLFxuICAgICAgICB0aGlzLmdvb2dsZU1hcC5kYXRhLFxuICAgICAgICBmZWF0dXJlLFxuICAgICAgKVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZXRHZW9Kc29uKHJlbW92ZUFwcFByb3BlcnRpZXM6IGJvb2xlYW4gPSB0cnVlKTogUHJvbWlzZTxvYmplY3Q+IHtcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgdGhpcy5fYXNzZXJ0SW5pdGlhbGl6ZWQoKVxuICAgICAgdGhpcy5nb29nbGVNYXAuZGF0YS50b0dlb0pzb24oZiA9PiB7XG4gICAgICAgIGlmIChyZW1vdmVBcHBQcm9wZXJ0aWVzKSB7XG4gICAgICAgICAgc3RyaXBBcHBGZWF0dXJlUHJvcGVydGllc0Zyb21Kc29uKGYpXG4gICAgICAgIH1cbiAgICAgICAgcmVzb2x2ZShmKVxuICAgICAgfSlcbiAgICB9KVxuICB9XG5cbiAgLyoqIEFzc2VydHMgdGhhdCB0aGUgbWFwIGhhcyBiZWVuIGluaXRpYWxpemVkLiAqL1xuICBwcml2YXRlIF9hc3NlcnRJbml0aWFsaXplZCgpOiBhc3NlcnRzIHRoaXMgaXMgV2l0aFJlcXVpcmVkPEdvb2dsZU1hcHNTZXJ2aWNlLCAnZ29vZ2xlTWFwJz4ge1xuICAgIGlmICghdGhpcy5nb29nbGVNYXAgJiYgKHR5cGVvZiBuZ0Rldk1vZGUgPT09ICd1bmRlZmluZWQnIHx8IG5nRGV2TW9kZSkpIHtcbiAgICAgIHRocm93IEVycm9yKFxuICAgICAgICAnQ2Fubm90IGFjY2VzcyBHb29nbGUgTWFwIGluZm9ybWF0aW9uIGJlZm9yZSB0aGUgQVBJIGhhcyBiZWVuIGluaXRpYWxpemVkLiAnICtcbiAgICAgICAgICAnUGxlYXNlIHdhaXQgZm9yIHRoZSBBUEkgdG8gbG9hZCBiZWZvcmUgdHJ5aW5nIHRvIGludGVyYWN0IHdpdGggaXQuJyxcbiAgICAgIClcbiAgICB9XG4gIH1cblxufVxuIl19
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJlZmVyZW5jZXMtYWNjZXNzb3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vc2VydmljZXMvcHJlZmVyZW5jZXMvcHJlZmVyZW5jZXMtYWNjZXNzb3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJ1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBUaGVTZWFtUHJlZmVyZW5jZXNBY2Nlc3NvciB7XHJcblxyXG4gIC8qKlxyXG4gICAqIEdldHMgYSBwcmVmZXJlbmNlLlxyXG4gICAqL1xyXG4gIGdldChuYW1lOiBzdHJpbmcpOiBPYnNlcnZhYmxlPHN0cmluZz5cclxuXHJcbiAgLyoqXHJcbiAgICogVXBkYXRlIGEgcHJlZmVyZW5jZS5cclxuICAgKi9cclxuICB1cGRhdGUobmFtZTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKTogT2JzZXJ2YWJsZTxzdHJpbmc+XHJcblxyXG4gIC8qKlxyXG4gICAqIERlbGV0ZSBhIHByZWZlcmVuY2UuXHJcbiAgICovXHJcbiAgZGVsZXRlKG5hbWU6IHN0cmluZyk6IE9ic2VydmFibGU8Ym9vbGVhbj5cclxuXHJcbn1cclxuIl19
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJlZmVyZW5jZXMtYWNjZXNzb3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vc2VydmljZXMvcHJlZmVyZW5jZXMvcHJlZmVyZW5jZXMtYWNjZXNzb3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJ1xuXG5leHBvcnQgaW50ZXJmYWNlIFRoZVNlYW1QcmVmZXJlbmNlc0FjY2Vzc29yIHtcblxuICAvKipcbiAgICogR2V0cyBhIHByZWZlcmVuY2UuXG4gICAqL1xuICBnZXQobmFtZTogc3RyaW5nKTogT2JzZXJ2YWJsZTxzdHJpbmc+XG5cbiAgLyoqXG4gICAqIFVwZGF0ZSBhIHByZWZlcmVuY2UuXG4gICAqL1xuICB1cGRhdGUobmFtZTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKTogT2JzZXJ2YWJsZTxzdHJpbmc+XG5cbiAgLyoqXG4gICAqIERlbGV0ZSBhIHByZWZlcmVuY2UuXG4gICAqL1xuICBkZWxldGUobmFtZTogc3RyaW5nKTogT2JzZXJ2YWJsZTxib29sZWFuPlxuXG59XG4iXX0=
@@ -66,4 +66,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
66
66
  providedIn: 'root'
67
67
  }]
68
68
  }] });
69
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJlZmVyZW5jZXMtbWFuYWdlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL3NlcnZpY2VzL3ByZWZlcmVuY2VzL3ByZWZlcmVuY2VzLW1hbmFnZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQzFDLE9BQU8sRUFBRSxHQUFHLEVBQWMsTUFBTSxNQUFNLENBQUE7QUFJdEMsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sc0JBQXNCLENBQUE7O0FBS2xFLE1BQU0sT0FBTyxnQ0FBZ0M7SUFIN0M7UUFLbUIsbUJBQWMsR0FBRyxJQUFJLEdBQUcsRUFBdUMsQ0FBQTtLQXFFakY7SUFuRVEsV0FBVyxDQUNoQixhQUFxQixFQUNyQixRQUFvQyxFQUNwQyxVQUFrQztRQUVsQyxJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsQ0FBQTtRQUVsRCxJQUFJLEtBQUssSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDNUMsTUFBTSxLQUFLLENBQUMsMENBQTBDLGFBQWEsNENBQTRDLENBQUMsQ0FBQTtTQUNqSDtRQUVELElBQUksS0FBSyxJQUFJLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxFQUFFO1lBQ2hELE1BQU0sS0FBSyxDQUFDLDRDQUE0QyxhQUFhLDhDQUE4QyxDQUFDLENBQUE7U0FDckg7UUFFRCxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ1YsS0FBSyxHQUFHLElBQUksMkJBQTJCLENBQUMsYUFBYSxFQUFFLFFBQVEsRUFBRSxVQUFVLENBQUMsQ0FBQTtZQUM1RSxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsS0FBSyxDQUFDLENBQUE7U0FDOUM7UUFDRCxPQUFPLEtBQUssQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUMxQixHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDTixtRUFBbUU7WUFDbkUscUVBQXFFO1lBQ3JFLG9DQUFvQztZQUNwQyxFQUFFO1lBQ0Ysd0VBQXdFO1lBQ3hFLGVBQWU7WUFDZixJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtnQkFDL0IsT0FBTyxVQUFVLENBQUE7YUFDbEI7WUFFRCxPQUFPLENBQUMsQ0FBQTtRQUNWLENBQUMsQ0FBQyxDQUNILENBQUE7SUFDSCxDQUFDO0lBRU0sTUFBTSxDQUFDLGFBQXFCLEVBQUUsS0FBNkI7UUFDaEUsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLENBQUE7UUFDcEQsSUFBSSxLQUFLLEVBQUU7WUFDVCxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFBO1NBQ3BCO0lBQ0gsQ0FBQztJQUVNLE1BQU0sQ0FBQyxhQUFxQjtRQUNqQyxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsQ0FBQTtRQUNwRCxJQUFJLEtBQUssRUFBRTtZQUNULEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQTtTQUNmO0lBQ0gsQ0FBQztJQUVNLE9BQU8sQ0FBQyxhQUFxQjtRQUNsQyxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsQ0FBQTtRQUNwRCxJQUFJLEtBQUssRUFBRTtZQUNULEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQTtTQUNoQjtJQUNILENBQUM7SUFFTSxTQUFTLENBQUMsYUFBcUI7UUFDcEMsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLENBQUE7UUFDcEQsT0FBTyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUE7SUFDbkQsQ0FBQztJQUVNLFFBQVEsQ0FBQyxhQUFxQjtRQUNuQyxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsQ0FBQTtRQUNwRCxPQUFPLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLE1BQU0sS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQTtJQUNsRCxDQUFDOzs2SEFyRVUsZ0NBQWdDO2lJQUFoQyxnQ0FBZ0MsY0FGL0IsTUFBTTsyRkFFUCxnQ0FBZ0M7a0JBSDVDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXHJcbmltcG9ydCB7IG1hcCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnXHJcblxyXG5pbXBvcnQgeyBUaGVTZWFtUHJlZmVyZW5jZXNCYXNlIH0gZnJvbSAnLi9wcmVmZXJlbmNlcy5tb2RlbHMnXHJcbmltcG9ydCB7IFRoZVNlYW1QcmVmZXJlbmNlc0FjY2Vzc29yIH0gZnJvbSAnLi9wcmVmZXJlbmNlcy1hY2Nlc3NvcidcclxuaW1wb3J0IHsgVGhlU2VhbVByZWZlcmVuY2VzTWFwUmVjb3JkIH0gZnJvbSAnLi9wcmVmZXJlbmNlcy1yZWNvcmQnXHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUaGVTZWFtUHJlZmVyZW5jZXNNYW5hZ2VyU2VydmljZSB7XHJcblxyXG4gIHByaXZhdGUgcmVhZG9ubHkgX3RhYmxlUHJlZnNNYXAgPSBuZXcgTWFwPHN0cmluZywgVGhlU2VhbVByZWZlcmVuY2VzTWFwUmVjb3JkPigpXHJcblxyXG4gIHB1YmxpYyBwcmVmZXJlbmNlcyhcclxuICAgIHByZWZlcmVuY2VLZXk6IHN0cmluZyxcclxuICAgIGFjY2Vzc29yOiBUaGVTZWFtUHJlZmVyZW5jZXNBY2Nlc3NvcixcclxuICAgIGVtcHR5UHJlZnM6IFRoZVNlYW1QcmVmZXJlbmNlc0Jhc2UsXHJcbiAgKTogT2JzZXJ2YWJsZTxUaGVTZWFtUHJlZmVyZW5jZXNCYXNlPiB7XHJcbiAgICBsZXQgcHJlZnMgPSB0aGlzLl90YWJsZVByZWZzTWFwLmdldChwcmVmZXJlbmNlS2V5KVxyXG5cclxuICAgIGlmIChwcmVmcyAmJiAhcHJlZnMuaXNTYW1lQWNjZXNzb3IoYWNjZXNzb3IpKSB7XHJcbiAgICAgIHRocm93IEVycm9yKGBQcmVmZXJlbmNlcyBhY2Nlc3NvciBtaXNtYXRjaCBmb3Iga2V5ICcke3ByZWZlcmVuY2VLZXl9Jy4gQ2hhbmdpbmcgdGhlIGFjY2Vzc29yIGlzIG5vdCBzdXBwb3J0ZWQuYClcclxuICAgIH1cclxuXHJcbiAgICBpZiAocHJlZnMgJiYgIXByZWZzLmlzU2FtZUVtcHR5UHJlZnMoZW1wdHlQcmVmcykpIHtcclxuICAgICAgdGhyb3cgRXJyb3IoYFByZWZlcmVuY2VzIGVtcHR5UHJlZnMgbWlzbWF0Y2ggZm9yIGtleSAnJHtwcmVmZXJlbmNlS2V5fScuIENoYW5naW5nIHRoZSBlbXB0eVByZWZzIGlzIG5vdCBzdXBwb3J0ZWQuYClcclxuICAgIH1cclxuXHJcbiAgICBpZiAoIXByZWZzKSB7XHJcbiAgICAgIHByZWZzID0gbmV3IFRoZVNlYW1QcmVmZXJlbmNlc01hcFJlY29yZChwcmVmZXJlbmNlS2V5LCBhY2Nlc3NvciwgZW1wdHlQcmVmcylcclxuICAgICAgdGhpcy5fdGFibGVQcmVmc01hcC5zZXQocHJlZmVyZW5jZUtleSwgcHJlZnMpXHJcbiAgICB9XHJcbiAgICByZXR1cm4gcHJlZnMub2JzZXJ2YWJsZS5waXBlKFxyXG4gICAgICBtYXAodiA9PiB7XHJcbiAgICAgICAgLy8gVGhpcyBpcyBmb3IgYXNzdW1pbmcgdGhlIGFjY2Vzc29yIHJldHVybmVkIGFuIGVtcHR5IG9iamVjdCwgYXMgYVxyXG4gICAgICAgIC8vIGRlZmF1bHQgZm9yIGEgbWlzc2luZyBwcmVmZXJlbmNlLiBJbnN0ZWFkIG9mIHRocm93aW5nIGFuIGVycm9yLCB3ZVxyXG4gICAgICAgIC8vIHJldHVybiBhIHZhbGlkIGVtcHR5IHByZWZlcmVuY2VzLlxyXG4gICAgICAgIC8vXHJcbiAgICAgICAgLy8gTk9URTogTWF5IHJlbW92ZSB0aGlzLCB3aGVuIGEgbW9yZSBnZW5lcmljIHByZWZlcmVuY2VzIGltcGxlbWVudGF0aW9uXHJcbiAgICAgICAgLy8gaXMgZmluaXNoZWQuXHJcbiAgICAgICAgaWYgKE9iamVjdC5rZXlzKHYpLmxlbmd0aCA9PT0gMCkge1xyXG4gICAgICAgICAgcmV0dXJuIGVtcHR5UHJlZnNcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiB2XHJcbiAgICAgIH0pLFxyXG4gICAgKVxyXG4gIH1cclxuXHJcbiAgcHVibGljIHVwZGF0ZShwcmVmZXJlbmNlS2V5OiBzdHJpbmcsIHZhbHVlOiBUaGVTZWFtUHJlZmVyZW5jZXNCYXNlKTogdm9pZCB7XHJcbiAgICBjb25zdCBwcmVmcyA9IHRoaXMuX3RhYmxlUHJlZnNNYXAuZ2V0KHByZWZlcmVuY2VLZXkpXHJcbiAgICBpZiAocHJlZnMpIHtcclxuICAgICAgcHJlZnMudXBkYXRlKHZhbHVlKVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGRlbGV0ZShwcmVmZXJlbmNlS2V5OiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIGNvbnN0IHByZWZzID0gdGhpcy5fdGFibGVQcmVmc01hcC5nZXQocHJlZmVyZW5jZUtleSlcclxuICAgIGlmIChwcmVmcykge1xyXG4gICAgICBwcmVmcy5kZWxldGUoKVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIHJlZnJlc2gocHJlZmVyZW5jZUtleTogc3RyaW5nKTogdm9pZCB7XHJcbiAgICBjb25zdCBwcmVmcyA9IHRoaXMuX3RhYmxlUHJlZnNNYXAuZ2V0KHByZWZlcmVuY2VLZXkpXHJcbiAgICBpZiAocHJlZnMpIHtcclxuICAgICAgcHJlZnMucmVmcmVzaCgpXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaXNQZW5kaW5nKHByZWZlcmVuY2VLZXk6IHN0cmluZyk6IGJvb2xlYW4ge1xyXG4gICAgY29uc3QgcHJlZnMgPSB0aGlzLl90YWJsZVByZWZzTWFwLmdldChwcmVmZXJlbmNlS2V5KVxyXG4gICAgcmV0dXJuIHByZWZzID8gcHJlZnMuc3RhdHVzID09PSAncGVuZGluZycgOiBmYWxzZVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGlzTG9hZGVkKHByZWZlcmVuY2VLZXk6IHN0cmluZyk6IGJvb2xlYW4ge1xyXG4gICAgY29uc3QgcHJlZnMgPSB0aGlzLl90YWJsZVByZWZzTWFwLmdldChwcmVmZXJlbmNlS2V5KVxyXG4gICAgcmV0dXJuIHByZWZzID8gcHJlZnMuc3RhdHVzID09PSAnbG9hZGVkJyA6IGZhbHNlXHJcbiAgfVxyXG5cclxufVxyXG4iXX0=
69
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJlZmVyZW5jZXMtbWFuYWdlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL3NlcnZpY2VzL3ByZWZlcmVuY2VzL3ByZWZlcmVuY2VzLW1hbmFnZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQzFDLE9BQU8sRUFBRSxHQUFHLEVBQWMsTUFBTSxNQUFNLENBQUE7QUFJdEMsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sc0JBQXNCLENBQUE7O0FBS2xFLE1BQU0sT0FBTyxnQ0FBZ0M7SUFIN0M7UUFLbUIsbUJBQWMsR0FBRyxJQUFJLEdBQUcsRUFBdUMsQ0FBQTtLQXFFakY7SUFuRVEsV0FBVyxDQUNoQixhQUFxQixFQUNyQixRQUFvQyxFQUNwQyxVQUFrQztRQUVsQyxJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsQ0FBQTtRQUVsRCxJQUFJLEtBQUssSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDNUMsTUFBTSxLQUFLLENBQUMsMENBQTBDLGFBQWEsNENBQTRDLENBQUMsQ0FBQTtTQUNqSDtRQUVELElBQUksS0FBSyxJQUFJLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxFQUFFO1lBQ2hELE1BQU0sS0FBSyxDQUFDLDRDQUE0QyxhQUFhLDhDQUE4QyxDQUFDLENBQUE7U0FDckg7UUFFRCxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ1YsS0FBSyxHQUFHLElBQUksMkJBQTJCLENBQUMsYUFBYSxFQUFFLFFBQVEsRUFBRSxVQUFVLENBQUMsQ0FBQTtZQUM1RSxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsS0FBSyxDQUFDLENBQUE7U0FDOUM7UUFDRCxPQUFPLEtBQUssQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUMxQixHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDTixtRUFBbUU7WUFDbkUscUVBQXFFO1lBQ3JFLG9DQUFvQztZQUNwQyxFQUFFO1lBQ0Ysd0VBQXdFO1lBQ3hFLGVBQWU7WUFDZixJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtnQkFDL0IsT0FBTyxVQUFVLENBQUE7YUFDbEI7WUFFRCxPQUFPLENBQUMsQ0FBQTtRQUNWLENBQUMsQ0FBQyxDQUNILENBQUE7SUFDSCxDQUFDO0lBRU0sTUFBTSxDQUFDLGFBQXFCLEVBQUUsS0FBNkI7UUFDaEUsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLENBQUE7UUFDcEQsSUFBSSxLQUFLLEVBQUU7WUFDVCxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFBO1NBQ3BCO0lBQ0gsQ0FBQztJQUVNLE1BQU0sQ0FBQyxhQUFxQjtRQUNqQyxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsQ0FBQTtRQUNwRCxJQUFJLEtBQUssRUFBRTtZQUNULEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQTtTQUNmO0lBQ0gsQ0FBQztJQUVNLE9BQU8sQ0FBQyxhQUFxQjtRQUNsQyxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsQ0FBQTtRQUNwRCxJQUFJLEtBQUssRUFBRTtZQUNULEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQTtTQUNoQjtJQUNILENBQUM7SUFFTSxTQUFTLENBQUMsYUFBcUI7UUFDcEMsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLENBQUE7UUFDcEQsT0FBTyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUE7SUFDbkQsQ0FBQztJQUVNLFFBQVEsQ0FBQyxhQUFxQjtRQUNuQyxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsQ0FBQTtRQUNwRCxPQUFPLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLE1BQU0sS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQTtJQUNsRCxDQUFDOzs2SEFyRVUsZ0NBQWdDO2lJQUFoQyxnQ0FBZ0MsY0FGL0IsTUFBTTsyRkFFUCxnQ0FBZ0M7a0JBSDVDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBtYXAsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJ1xuXG5pbXBvcnQgeyBUaGVTZWFtUHJlZmVyZW5jZXNCYXNlIH0gZnJvbSAnLi9wcmVmZXJlbmNlcy5tb2RlbHMnXG5pbXBvcnQgeyBUaGVTZWFtUHJlZmVyZW5jZXNBY2Nlc3NvciB9IGZyb20gJy4vcHJlZmVyZW5jZXMtYWNjZXNzb3InXG5pbXBvcnQgeyBUaGVTZWFtUHJlZmVyZW5jZXNNYXBSZWNvcmQgfSBmcm9tICcuL3ByZWZlcmVuY2VzLXJlY29yZCdcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgVGhlU2VhbVByZWZlcmVuY2VzTWFuYWdlclNlcnZpY2Uge1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX3RhYmxlUHJlZnNNYXAgPSBuZXcgTWFwPHN0cmluZywgVGhlU2VhbVByZWZlcmVuY2VzTWFwUmVjb3JkPigpXG5cbiAgcHVibGljIHByZWZlcmVuY2VzKFxuICAgIHByZWZlcmVuY2VLZXk6IHN0cmluZyxcbiAgICBhY2Nlc3NvcjogVGhlU2VhbVByZWZlcmVuY2VzQWNjZXNzb3IsXG4gICAgZW1wdHlQcmVmczogVGhlU2VhbVByZWZlcmVuY2VzQmFzZSxcbiAgKTogT2JzZXJ2YWJsZTxUaGVTZWFtUHJlZmVyZW5jZXNCYXNlPiB7XG4gICAgbGV0IHByZWZzID0gdGhpcy5fdGFibGVQcmVmc01hcC5nZXQocHJlZmVyZW5jZUtleSlcblxuICAgIGlmIChwcmVmcyAmJiAhcHJlZnMuaXNTYW1lQWNjZXNzb3IoYWNjZXNzb3IpKSB7XG4gICAgICB0aHJvdyBFcnJvcihgUHJlZmVyZW5jZXMgYWNjZXNzb3IgbWlzbWF0Y2ggZm9yIGtleSAnJHtwcmVmZXJlbmNlS2V5fScuIENoYW5naW5nIHRoZSBhY2Nlc3NvciBpcyBub3Qgc3VwcG9ydGVkLmApXG4gICAgfVxuXG4gICAgaWYgKHByZWZzICYmICFwcmVmcy5pc1NhbWVFbXB0eVByZWZzKGVtcHR5UHJlZnMpKSB7XG4gICAgICB0aHJvdyBFcnJvcihgUHJlZmVyZW5jZXMgZW1wdHlQcmVmcyBtaXNtYXRjaCBmb3Iga2V5ICcke3ByZWZlcmVuY2VLZXl9Jy4gQ2hhbmdpbmcgdGhlIGVtcHR5UHJlZnMgaXMgbm90IHN1cHBvcnRlZC5gKVxuICAgIH1cblxuICAgIGlmICghcHJlZnMpIHtcbiAgICAgIHByZWZzID0gbmV3IFRoZVNlYW1QcmVmZXJlbmNlc01hcFJlY29yZChwcmVmZXJlbmNlS2V5LCBhY2Nlc3NvciwgZW1wdHlQcmVmcylcbiAgICAgIHRoaXMuX3RhYmxlUHJlZnNNYXAuc2V0KHByZWZlcmVuY2VLZXksIHByZWZzKVxuICAgIH1cbiAgICByZXR1cm4gcHJlZnMub2JzZXJ2YWJsZS5waXBlKFxuICAgICAgbWFwKHYgPT4ge1xuICAgICAgICAvLyBUaGlzIGlzIGZvciBhc3N1bWluZyB0aGUgYWNjZXNzb3IgcmV0dXJuZWQgYW4gZW1wdHkgb2JqZWN0LCBhcyBhXG4gICAgICAgIC8vIGRlZmF1bHQgZm9yIGEgbWlzc2luZyBwcmVmZXJlbmNlLiBJbnN0ZWFkIG9mIHRocm93aW5nIGFuIGVycm9yLCB3ZVxuICAgICAgICAvLyByZXR1cm4gYSB2YWxpZCBlbXB0eSBwcmVmZXJlbmNlcy5cbiAgICAgICAgLy9cbiAgICAgICAgLy8gTk9URTogTWF5IHJlbW92ZSB0aGlzLCB3aGVuIGEgbW9yZSBnZW5lcmljIHByZWZlcmVuY2VzIGltcGxlbWVudGF0aW9uXG4gICAgICAgIC8vIGlzIGZpbmlzaGVkLlxuICAgICAgICBpZiAoT2JqZWN0LmtleXModikubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgcmV0dXJuIGVtcHR5UHJlZnNcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB2XG4gICAgICB9KSxcbiAgICApXG4gIH1cblxuICBwdWJsaWMgdXBkYXRlKHByZWZlcmVuY2VLZXk6IHN0cmluZywgdmFsdWU6IFRoZVNlYW1QcmVmZXJlbmNlc0Jhc2UpOiB2b2lkIHtcbiAgICBjb25zdCBwcmVmcyA9IHRoaXMuX3RhYmxlUHJlZnNNYXAuZ2V0KHByZWZlcmVuY2VLZXkpXG4gICAgaWYgKHByZWZzKSB7XG4gICAgICBwcmVmcy51cGRhdGUodmFsdWUpXG4gICAgfVxuICB9XG5cbiAgcHVibGljIGRlbGV0ZShwcmVmZXJlbmNlS2V5OiBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb25zdCBwcmVmcyA9IHRoaXMuX3RhYmxlUHJlZnNNYXAuZ2V0KHByZWZlcmVuY2VLZXkpXG4gICAgaWYgKHByZWZzKSB7XG4gICAgICBwcmVmcy5kZWxldGUoKVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyByZWZyZXNoKHByZWZlcmVuY2VLZXk6IHN0cmluZyk6IHZvaWQge1xuICAgIGNvbnN0IHByZWZzID0gdGhpcy5fdGFibGVQcmVmc01hcC5nZXQocHJlZmVyZW5jZUtleSlcbiAgICBpZiAocHJlZnMpIHtcbiAgICAgIHByZWZzLnJlZnJlc2goKVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBpc1BlbmRpbmcocHJlZmVyZW5jZUtleTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgY29uc3QgcHJlZnMgPSB0aGlzLl90YWJsZVByZWZzTWFwLmdldChwcmVmZXJlbmNlS2V5KVxuICAgIHJldHVybiBwcmVmcyA/IHByZWZzLnN0YXR1cyA9PT0gJ3BlbmRpbmcnIDogZmFsc2VcbiAgfVxuXG4gIHB1YmxpYyBpc0xvYWRlZChwcmVmZXJlbmNlS2V5OiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICBjb25zdCBwcmVmcyA9IHRoaXMuX3RhYmxlUHJlZnNNYXAuZ2V0KHByZWZlcmVuY2VLZXkpXG4gICAgcmV0dXJuIHByZWZzID8gcHJlZnMuc3RhdHVzID09PSAnbG9hZGVkJyA6IGZhbHNlXG4gIH1cblxufVxuIl19
@@ -69,4 +69,4 @@ export class TheSeamPreferencesMapRecord {
69
69
  return prefs;
70
70
  }
71
71
  }
72
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJlZmVyZW5jZXMtcmVjb3JkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL3NlcnZpY2VzL3ByZWZlcmVuY2VzL3ByZWZlcmVuY2VzLXJlY29yZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ3pDLE9BQU8sRUFBRSxHQUFHLEVBQWMsRUFBRSxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBRWpHLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDBCQUEwQixDQUFBO0FBWTdELE1BQU0sT0FBTywyQkFBMkI7SUFVdEMsWUFDbUIsSUFBWSxFQUNaLFNBQXFDLEVBQ3JDLFdBQW1DO1FBRm5DLFNBQUksR0FBSixJQUFJLENBQVE7UUFDWixjQUFTLEdBQVQsU0FBUyxDQUE0QjtRQUNyQyxnQkFBVyxHQUFYLFdBQVcsQ0FBd0I7UUFYckMsb0JBQWUsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFBO1FBQ3JDLHlCQUFvQixHQUFHLElBQUksT0FBTyxFQUF3QyxDQUFBO1FBRW5GLFlBQU8sR0FBbUMsU0FBUyxDQUFBO1FBVXpELElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUE7UUFDMUMsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsb0JBQW9CLENBQUMsWUFBWSxFQUFFLENBQUE7SUFDOUQsQ0FBQztJQUVPLGlCQUFpQjtRQUN2QixJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUNuQixPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUE7U0FDNUI7UUFFRCxNQUFNLFFBQVEsR0FBRyxDQUFDLEdBQVcsRUFBc0IsRUFBRSxDQUNuRCxJQUFJLENBQUMs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QUVPLHdCQUF3QixDQUFDLFVBQWtCO1FBQ2pELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUE7UUFFcEMsNEJBQTRCO1FBRTVCLE9BQU8sS0FBSyxDQUFBO0lBQ2QsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNEZXZNb2RlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcclxuaW1wb3J0IHsgbWFwLCBPYnNlcnZhYmxlLCBvZiwgc2hhcmVSZXBsYXksIHN0YXJ0V2l0aCwgU3ViamVjdCwgc3dpdGNoTWFwLCB0YWtlLCB0YXAgfSBmcm9tICdyeGpzJ1xyXG5cclxuaW1wb3J0IHsgbm90TnVsbE9yVW5kZWZpbmVkIH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL3V0aWxzJ1xyXG5cclxuaW1wb3J0IHsgVGhlU2VhbVByZWZlcmVuY2VzQWNjZXNzb3IgfSBmcm9tICcuL3ByZWZlcmVuY2VzLWFjY2Vzc29yJ1xyXG5pbXBvcnQgeyBUaGVTZWFtUHJlZmVyZW5jZXNCYXNlIH0gZnJvbSAnLi9wcmVmZXJlbmNlcy5tb2RlbHMnXHJcblxyXG5leHBvcnQgdHlwZSBUaGVTZWFtUHJlZmVyZW5jZXNSZWNvcmRTdGF0dXMgPSAncGVuZGluZycgfCAnbG9hZGVkJ1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBUaGVTZWFtUHJlZmVyZW5jZXNSZWNvcmRTdGF0dXNDaGFuZ2Uge1xyXG4gIHByZXZpb3VzOiBUaGVTZWFtUHJlZmVyZW5jZXNSZWNvcmRTdGF0dXNcclxuICBjdXJyZW50OiBUaGVTZWFtUHJlZmVyZW5jZXNSZWNvcmRTdGF0dXNcclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIFRoZVNlYW1QcmVmZXJlbmNlc01hcFJlY29yZCB7XHJcblxyXG4gIHByaXZhdGUgcmVhZG9ubHkgX3JlZnJlc2hTdWJqZWN0ID0gbmV3IFN1YmplY3Q8dm9pZD4oKVxyXG4gIHByaXZhdGUgcmVhZG9ubHkgX3N0YXR1c0NoYW5nZVN1YmplY3QgPSBuZXcgU3ViamVjdDxUaGVTZWFtUHJlZmVyZW5jZXNSZWNvcmRTdGF0dXNDaGFuZ2U+KClcclxuXHJcbiAgcHJpdmF0ZSBfc3RhdHVzOiBUaGVTZWFtUHJlZmVyZW5jZXNSZWNvcmRTdGF0dXMgPSAncGVuZGluZydcclxuXHJcbiAgcHVibGljIHJlYWRvbmx5IG9ic2VydmFibGU6IE9ic2VydmFibGU8VGhlU2VhbVByZWZlcmVuY2VzQmFzZT5cclxuICBwdWJsaWMgcmVhZG9ubHkgc3RhdHVzQ2hhbmdlOiBPYnNlcnZhYmxlPFRoZVNlYW1QcmVmZXJlbmNlc1JlY29yZFN0YXR1c0NoYW5nZT5cclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9rZXk6IHN0cmluZyxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgX2FjY2Vzc29yOiBUaGVTZWFtUHJlZmVyZW5jZXNBY2Nlc3NvcixcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgX2VtcHR5UHJlZnM6IFRoZVNlYW1QcmVmZXJlbmNlc0Jhc2UsXHJcbiAgKSB7XHJcbiAgICB0aGlzLm9ic2VydmFibGUgPSB0aGlzLl9jcmVhdGVPYnNlcnZhYmxlKClcclxuICAgIHRoaXMuc3RhdHVzQ2hhbmdlID0gdGhpcy5fc3RhdHVzQ2hhbmdlU3ViamVjdC5hc09ic2VydmFibGUoKVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfY3JlYXRlT2JzZXJ2YWJsZSgpOiBPYnNlcnZhYmxlPFRoZVNlYW1QcmVmZXJlbmNlc0Jhc2U+IHtcclxuICAgIGlmICghdGhpcy5fYWNjZXNzb3IpIHtcclxuICAgICAgcmV0dXJuIG9mKHRoaXMuX2VtcHR5UHJlZnMpXHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgYWNjZXNzb3IgPSAoa2V5OiBzdHJpbmcpOiBPYnNlcnZhYmxlPHN0cmluZz4gPT5cclxuICAgICAgdGhpcy5fYWNjZXNzb3IgPyB0aGlzLl9hY2Nlc3Nvci5nZXQoa2V5KSA6IG9mKEpTT04uc3RyaW5naWZ5KHRoaXMuX2VtcHR5UHJlZnMpKVxyXG5cclxuICAgIHJldHVybiB0aGlzLl9yZWZyZXNoU3ViamVjdC5waXBlKFxyXG4gICAgICBzdGFydFdpdGgodW5kZWZpbmVkKSxcclxuICAgICAgc3dpdGNoTWFwKCgpID0+IGFjY2Vzc29yKHRoaXMuX2tleSkucGlwZShcclxuICAgICAgICBtYXAodiA9PiB7XHJcbiAgICAgICAgICBpZiAoIXYpIHtcclxuICAgICAgICAgICAgcmV0dXJuIG51bGxcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAvLyBUT0RPOiBBZGQgYSBzY2hlbWEgdmFsaWRhdG9yIGFuZCBtaWdyYXRpb24gdG9vbCB0byBhdm9pZCBwYXJzaW5nIGlzc3Vlcy5cclxuICAgICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAgIHJldHVybiB0aGlzLl9kZXNjZXJpYWxpemVQcmVmZXJlbmNlcyh2KVxyXG4gICAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcclxuICAgICAgICAgICAgaWYgKGlzRGV2TW9kZSgpKSB7XHJcbiAgICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWNvbnNvbGVcclxuICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKGVycm9yKVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHJldHVybiBudWxsXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSksXHJcbiAgICAgICAgbWFwKHYgPT4gbm90TnVsbE9yVW5kZWZpbmVkKHYpID8gdiA6IHRoaXMuX2VtcHR5UHJlZnMpLFxyXG4gICAgICAgIHRhcCgoKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLl9zZXRTdGF0dXMoJ2xvYWRlZCcpXHJcbiAgICAgICAgfSlcclxuICAgICAgKSksXHJcbiAgICAgIHNoYXJlUmVwbGF5KHsgYnVmZmVyU2l6ZTogMSwgcmVmQ291bnQ6IHRydWUgfSksXHJcbiAgICApXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgdXBkYXRlKHZhbHVlOiBUaGVTZWFtUHJlZmVyZW5jZXNCYXNlKTogdm9pZCB7XHJcbiAgICB0aGlzLl9hY2Nlc3Nvci51cGRhdGUodGhpcy5fa2V5LCBKU09OLnN0cmluZ2lmeSh2YWx1ZSkpLnBpcGUodGFrZSgxKSkuc3Vic2NyaWJlKClcclxuICB9XHJcblxyXG4gIHB1YmxpYyBkZWxldGUoKTogdm9pZCB7XHJcbiAgICB0aGlzLl9hY2Nlc3Nvci5kZWxldGUodGhpcy5fa2V5KS5waXBlKHRha2UoMSkpLnN1YnNjcmliZSgpXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgcmVmcmVzaCgpOiB2b2lkIHtcclxuICAgIHRoaXMuX3NldFN0YXR1cygncGVuZGluZycpXHJcbiAgICB0aGlzLl9yZWZyZXNoU3ViamVjdC5uZXh0KClcclxuICB9XHJcblxyXG4gIHB1YmxpYyBpc1NhbWVBY2Nlc3NvcihhY2Nlc3NvcjogVGhlU2VhbVByZWZlcmVuY2VzQWNjZXNzb3IpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl9hY2Nlc3NvciA9PT0gYWNjZXNzb3JcclxuICB9XHJcblxyXG4gIHB1YmxpYyBpc1NhbWVFbXB0eVByZWZzKGVtcHR5UHJlZnM6IFRoZVNlYW1QcmVmZXJlbmNlc0Jhc2UpOiBib29sZWFuIHtcclxuICAgIHJldHVybiBKU09OLnN0cmluZ2lmeSh0aGlzLl9lbXB0eVByZWZzKSA9PT0gSlNPTi5zdHJpbmdpZnkoZW1wdHlQcmVmcylcclxuICB9XHJcblxyXG4gIGdldCBzdGF0dXMoKTogVGhlU2VhbVByZWZlcmVuY2VzUmVjb3JkU3RhdHVzIHtcclxuICAgIHJldHVybiB0aGlzLl9zdGF0dXNcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX3NldFN0YXR1cyhzdGF0dXM6IFRoZVNlYW1QcmVmZXJlbmNlc1JlY29yZFN0YXR1cyk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuX3N0YXR1cyA9PT0gc3RhdHVzKSB7XHJcbiAgICAgIHJldHVyblxyXG4gICAgfVxyXG4gICAgY29uc3QgcHJldiA9IHRoaXMuX3N0YXR1c1xyXG4gICAgdGhpcy5fc3RhdHVzID0gc3RhdHVzXHJcbiAgICB0aGlzLl9zdGF0dXNDaGFuZ2VTdWJqZWN0Lm5leHQoeyBwcmV2aW91czogcHJldiwgY3VycmVudDogc3RhdHVzIH0pXHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9kZXNjZXJpYWxpemVQcmVmZXJlbmNlcyhzZXJpYWxpemVkOiBzdHJpbmcpOiBUaGVTZWFtUHJlZmVyZW5jZXNCYXNlIHtcclxuICAgIGNvbnN0IHByZWZzID0gSlNPTi5wYXJzZShzZXJpYWxpemVkKVxyXG5cclxuICAgIC8vIFRPRE86IEltcGxlbWVudCBtaWdyYXRpb25cclxuXHJcbiAgICByZXR1cm4gcHJlZnNcclxuICB9XHJcbn1cclxuIl19
72
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJlZmVyZW5jZXMtcmVjb3JkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL3NlcnZpY2VzL3ByZWZlcmVuY2VzL3ByZWZlcmVuY2VzLXJlY29yZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ3pDLE9BQU8sRUFBRSxHQUFHLEVBQWMsRUFBRSxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBRWpHLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDBCQUEwQixDQUFBO0FBWTdELE1BQU0sT0FBTywyQkFBMkI7SUFVdEMsWUFDbUIsSUFBWSxFQUNaLFNBQXFDLEVBQ3JDLFdBQW1DO1FBRm5DLFNBQUksR0FBSixJQUFJLENBQVE7UUFDWixjQUFTLEdBQVQsU0FBUyxDQUE0QjtRQUNyQyxnQkFBVyxHQUFYLFdBQVcsQ0FBd0I7UUFYckMsb0JBQWUsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFBO1FBQ3JDLHlCQUFvQixHQUFHLElBQUksT0FBTyxFQUF3QyxDQUFBO1FBRW5GLFlBQU8sR0FBbUMsU0FBUyxDQUFBO1FBVXpELElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUE7UUFDMUMsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsb0JBQW9CLENBQUMsWUFBWSxFQUFFLENBQUE7SUFDOUQsQ0FBQztJQUVPLGlCQUFpQjtRQUN2QixJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUNuQixPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUE7U0FDNUI7UUFFRCxNQUFNLFFBQVEsR0FBRyxDQUFDLEdBQVcsRUFBc0IsRUFBRSxDQUNuRCxJQUFJLENBQUMs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QUVPLHdCQUF3QixDQUFDLFVBQWtCO1FBQ2pELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUE7UUFFcEMsNEJBQTRCO1FBRTVCLE9BQU8sS0FBSyxDQUFBO0lBQ2QsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNEZXZNb2RlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IG1hcCwgT2JzZXJ2YWJsZSwgb2YsIHNoYXJlUmVwbGF5LCBzdGFydFdpdGgsIFN1YmplY3QsIHN3aXRjaE1hcCwgdGFrZSwgdGFwIH0gZnJvbSAncnhqcydcblxuaW1wb3J0IHsgbm90TnVsbE9yVW5kZWZpbmVkIH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL3V0aWxzJ1xuXG5pbXBvcnQgeyBUaGVTZWFtUHJlZmVyZW5jZXNBY2Nlc3NvciB9IGZyb20gJy4vcHJlZmVyZW5jZXMtYWNjZXNzb3InXG5pbXBvcnQgeyBUaGVTZWFtUHJlZmVyZW5jZXNCYXNlIH0gZnJvbSAnLi9wcmVmZXJlbmNlcy5tb2RlbHMnXG5cbmV4cG9ydCB0eXBlIFRoZVNlYW1QcmVmZXJlbmNlc1JlY29yZFN0YXR1cyA9ICdwZW5kaW5nJyB8ICdsb2FkZWQnXG5cbmV4cG9ydCBpbnRlcmZhY2UgVGhlU2VhbVByZWZlcmVuY2VzUmVjb3JkU3RhdHVzQ2hhbmdlIHtcbiAgcHJldmlvdXM6IFRoZVNlYW1QcmVmZXJlbmNlc1JlY29yZFN0YXR1c1xuICBjdXJyZW50OiBUaGVTZWFtUHJlZmVyZW5jZXNSZWNvcmRTdGF0dXNcbn1cblxuZXhwb3J0IGNsYXNzIFRoZVNlYW1QcmVmZXJlbmNlc01hcFJlY29yZCB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfcmVmcmVzaFN1YmplY3QgPSBuZXcgU3ViamVjdDx2b2lkPigpXG4gIHByaXZhdGUgcmVhZG9ubHkgX3N0YXR1c0NoYW5nZVN1YmplY3QgPSBuZXcgU3ViamVjdDxUaGVTZWFtUHJlZmVyZW5jZXNSZWNvcmRTdGF0dXNDaGFuZ2U+KClcblxuICBwcml2YXRlIF9zdGF0dXM6IFRoZVNlYW1QcmVmZXJlbmNlc1JlY29yZFN0YXR1cyA9ICdwZW5kaW5nJ1xuXG4gIHB1YmxpYyByZWFkb25seSBvYnNlcnZhYmxlOiBPYnNlcnZhYmxlPFRoZVNlYW1QcmVmZXJlbmNlc0Jhc2U+XG4gIHB1YmxpYyByZWFkb25seSBzdGF0dXNDaGFuZ2U6IE9ic2VydmFibGU8VGhlU2VhbVByZWZlcmVuY2VzUmVjb3JkU3RhdHVzQ2hhbmdlPlxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgX2tleTogc3RyaW5nLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgX2FjY2Vzc29yOiBUaGVTZWFtUHJlZmVyZW5jZXNBY2Nlc3NvcixcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9lbXB0eVByZWZzOiBUaGVTZWFtUHJlZmVyZW5jZXNCYXNlLFxuICApIHtcbiAgICB0aGlzLm9ic2VydmFibGUgPSB0aGlzLl9jcmVhdGVPYnNlcnZhYmxlKClcbiAgICB0aGlzLnN0YXR1c0NoYW5nZSA9IHRoaXMuX3N0YXR1c0NoYW5nZVN1YmplY3QuYXNPYnNlcnZhYmxlKClcbiAgfVxuXG4gIHByaXZhdGUgX2NyZWF0ZU9ic2VydmFibGUoKTogT2JzZXJ2YWJsZTxUaGVTZWFtUHJlZmVyZW5jZXNCYXNlPiB7XG4gICAgaWYgKCF0aGlzLl9hY2Nlc3Nvcikge1xuICAgICAgcmV0dXJuIG9mKHRoaXMuX2VtcHR5UHJlZnMpXG4gICAgfVxuXG4gICAgY29uc3QgYWNjZXNzb3IgPSAoa2V5OiBzdHJpbmcpOiBPYnNlcnZhYmxlPHN0cmluZz4gPT5cbiAgICAgIHRoaXMuX2FjY2Vzc29yID8gdGhpcy5fYWNjZXNzb3IuZ2V0KGtleSkgOiBvZihKU09OLnN0cmluZ2lmeSh0aGlzLl9lbXB0eVByZWZzKSlcblxuICAgIHJldHVybiB0aGlzLl9yZWZyZXNoU3ViamVjdC5waXBlKFxuICAgICAgc3RhcnRXaXRoKHVuZGVmaW5lZCksXG4gICAgICBzd2l0Y2hNYXAoKCkgPT4gYWNjZXNzb3IodGhpcy5fa2V5KS5waXBlKFxuICAgICAgICBtYXAodiA9PiB7XG4gICAgICAgICAgaWYgKCF2KSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbFxuICAgICAgICAgIH1cblxuICAgICAgICAgIC8vIFRPRE86IEFkZCBhIHNjaGVtYSB2YWxpZGF0b3IgYW5kIG1pZ3JhdGlvbiB0b29sIHRvIGF2b2lkIHBhcnNpbmcgaXNzdWVzLlxuICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5fZGVzY2VyaWFsaXplUHJlZmVyZW5jZXModilcbiAgICAgICAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgICAgICAgaWYgKGlzRGV2TW9kZSgpKSB7XG4gICAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb25zb2xlXG4gICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoZXJyb3IpXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gbnVsbFxuICAgICAgICAgIH1cbiAgICAgICAgfSksXG4gICAgICAgIG1hcCh2ID0+IG5vdE51bGxPclVuZGVmaW5lZCh2KSA/IHYgOiB0aGlzLl9lbXB0eVByZWZzKSxcbiAgICAgICAgdGFwKCgpID0+IHtcbiAgICAgICAgICB0aGlzLl9zZXRTdGF0dXMoJ2xvYWRlZCcpXG4gICAgICAgIH0pXG4gICAgICApKSxcbiAgICAgIHNoYXJlUmVwbGF5KHsgYnVmZmVyU2l6ZTogMSwgcmVmQ291bnQ6IHRydWUgfSksXG4gICAgKVxuICB9XG5cbiAgcHVibGljIHVwZGF0ZSh2YWx1ZTogVGhlU2VhbVByZWZlcmVuY2VzQmFzZSk6IHZvaWQge1xuICAgIHRoaXMuX2FjY2Vzc29yLnVwZGF0ZSh0aGlzLl9rZXksIEpTT04uc3RyaW5naWZ5KHZhbHVlKSkucGlwZSh0YWtlKDEpKS5zdWJzY3JpYmUoKVxuICB9XG5cbiAgcHVibGljIGRlbGV0ZSgpOiB2b2lkIHtcbiAgICB0aGlzLl9hY2Nlc3Nvci5kZWxldGUodGhpcy5fa2V5KS5waXBlKHRha2UoMSkpLnN1YnNjcmliZSgpXG4gIH1cblxuICBwdWJsaWMgcmVmcmVzaCgpOiB2b2lkIHtcbiAgICB0aGlzLl9zZXRTdGF0dXMoJ3BlbmRpbmcnKVxuICAgIHRoaXMuX3JlZnJlc2hTdWJqZWN0Lm5leHQoKVxuICB9XG5cbiAgcHVibGljIGlzU2FtZUFjY2Vzc29yKGFjY2Vzc29yOiBUaGVTZWFtUHJlZmVyZW5jZXNBY2Nlc3Nvcik6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9hY2Nlc3NvciA9PT0gYWNjZXNzb3JcbiAgfVxuXG4gIHB1YmxpYyBpc1NhbWVFbXB0eVByZWZzKGVtcHR5UHJlZnM6IFRoZVNlYW1QcmVmZXJlbmNlc0Jhc2UpOiBib29sZWFuIHtcbiAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkodGhpcy5fZW1wdHlQcmVmcykgPT09IEpTT04uc3RyaW5naWZ5KGVtcHR5UHJlZnMpXG4gIH1cblxuICBnZXQgc3RhdHVzKCk6IFRoZVNlYW1QcmVmZXJlbmNlc1JlY29yZFN0YXR1cyB7XG4gICAgcmV0dXJuIHRoaXMuX3N0YXR1c1xuICB9XG5cbiAgcHJpdmF0ZSBfc2V0U3RhdHVzKHN0YXR1czogVGhlU2VhbVByZWZlcmVuY2VzUmVjb3JkU3RhdHVzKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX3N0YXR1cyA9PT0gc3RhdHVzKSB7XG4gICAgICByZXR1cm5cbiAgICB9XG4gICAgY29uc3QgcHJldiA9IHRoaXMuX3N0YXR1c1xuICAgIHRoaXMuX3N0YXR1cyA9IHN0YXR1c1xuICAgIHRoaXMuX3N0YXR1c0NoYW5nZVN1YmplY3QubmV4dCh7IHByZXZpb3VzOiBwcmV2LCBjdXJyZW50OiBzdGF0dXMgfSlcbiAgfVxuXG4gIHByaXZhdGUgX2Rlc2NlcmlhbGl6ZVByZWZlcmVuY2VzKHNlcmlhbGl6ZWQ6IHN0cmluZyk6IFRoZVNlYW1QcmVmZXJlbmNlc0Jhc2Uge1xuICAgIGNvbnN0IHByZWZzID0gSlNPTi5wYXJzZShzZXJpYWxpemVkKVxuXG4gICAgLy8gVE9ETzogSW1wbGVtZW50IG1pZ3JhdGlvblxuXG4gICAgcmV0dXJuIHByZWZzXG4gIH1cbn1cbiJdfQ==
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJlZmVyZW5jZXMubW9kZWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL3NlcnZpY2VzL3ByZWZlcmVuY2VzL3ByZWZlcmVuY2VzLm1vZGVscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiXHJcbmV4cG9ydCBpbnRlcmZhY2UgVGhlU2VhbVByZWZlcmVuY2VzQmFzZSB7XHJcbiAgdmVyc2lvbjogbnVtYmVyXHJcbn1cclxuIl19
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJlZmVyZW5jZXMubW9kZWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL3NlcnZpY2VzL3ByZWZlcmVuY2VzL3ByZWZlcmVuY2VzLm1vZGVscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiXG5leHBvcnQgaW50ZXJmYWNlIFRoZVNlYW1QcmVmZXJlbmNlc0Jhc2Uge1xuICB2ZXJzaW9uOiBudW1iZXJcbn1cbiJdfQ==
@@ -31,4 +31,4 @@ StoryPreferencesAccessorService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion
31
31
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: StoryPreferencesAccessorService, decorators: [{
32
32
  type: Injectable
33
33
  }] });
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcnktcHJlZmVyZW5jZXMtYWNjZXNzb3Iuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi9zdG9yeS1oZWxwZXJzL3N0b3J5LXByZWZlcmVuY2VzLWFjY2Vzc29yLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUMxQyxPQUFPLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFBOztBQUlyQyxNQUFNLGVBQWUsR0FBRyxZQUFZLENBQUE7QUFHcEMsTUFBTSxPQUFPLCtCQUErQjtJQUUxQzs7T0FFRztJQUNJLEdBQUcsQ0FBQyxJQUFZO1FBQ3JCLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFBO1FBQ3hCLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsR0FBRyxlQUFlLElBQUksSUFBSSxFQUFFLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBQTtJQUN2RSxDQUFDO0lBRUQ7O09BRUc7SUFDSSxNQUFNLENBQUMsSUFBWSxFQUFFLEtBQWE7UUFDdkMsOEJBQThCO1FBQzlCLFlBQVksQ0FBQyxPQUFPLENBQUMsR0FBRyxlQUFlLElBQUksSUFBSSxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUE7UUFDekQsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFBO0lBQ3ZCLENBQUM7SUFFRDs7T0FFRztJQUNJLE1BQU0sQ0FBQyxJQUFZO1FBQ3hCLFlBQVksQ0FBQyxVQUFVLENBQUMsR0FBRyxlQUFlLElBQUksSUFBSSxFQUFFLENBQUMsQ0FBQTtRQUNyRCxPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUNqQixDQUFDOzs0SEF6QlUsK0JBQStCO2dJQUEvQiwrQkFBK0I7MkZBQS9CLCtCQUErQjtrQkFEM0MsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnXHJcblxyXG5pbXBvcnQgeyBUaGVTZWFtUHJlZmVyZW5jZXNBY2Nlc3NvciB9IGZyb20gJ0B0aGVzZWFtL3VpLWNvbW1vbi9zZXJ2aWNlcydcclxuXHJcbmNvbnN0IEFDQ0VTU09SX1BSRUZJWCA9ICdzdG9yeS1wcmVmJ1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgU3RvcnlQcmVmZXJlbmNlc0FjY2Vzc29yU2VydmljZSBpbXBsZW1lbnRzIFRoZVNlYW1QcmVmZXJlbmNlc0FjY2Vzc29yIHtcclxuXHJcbiAgLyoqXHJcbiAgICogR2V0cyBhIHByZWZlcmVuY2UuXHJcbiAgICovXHJcbiAgcHVibGljIGdldChuYW1lOiBzdHJpbmcpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xyXG4gICAgY29uc29sZS5sb2coJ2dldCcsIG5hbWUpXHJcbiAgICByZXR1cm4gb2YobG9jYWxTdG9yYWdlLmdldEl0ZW0oYCR7QUNDRVNTT1JfUFJFRklYfS0ke25hbWV9YCkgfHwgJ3t9JylcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFVwZGF0ZSBhIHByZWZlcmVuY2UuXHJcbiAgICovXHJcbiAgcHVibGljIHVwZGF0ZShuYW1lOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xyXG4gICAgLy8gY29uc29sZS5sb2coJ3VwZGF0ZScsIG5hbWUpXHJcbiAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbShgJHtBQ0NFU1NPUl9QUkVGSVh9LSR7bmFtZX1gLCB2YWx1ZSlcclxuICAgIHJldHVybiB0aGlzLmdldChuYW1lKVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRGVsZXRlIGEgcHJlZmVyZW5jZS5cclxuICAgKi9cclxuICBwdWJsaWMgZGVsZXRlKG5hbWU6IHN0cmluZyk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xyXG4gICAgbG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oYCR7QUNDRVNTT1JfUFJFRklYfS0ke25hbWV9YClcclxuICAgIHJldHVybiBvZih0cnVlKVxyXG4gIH1cclxuXHJcbn1cclxuIl19
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcnktcHJlZmVyZW5jZXMtYWNjZXNzb3Iuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi9zdG9yeS1oZWxwZXJzL3N0b3J5LXByZWZlcmVuY2VzLWFjY2Vzc29yLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUMxQyxPQUFPLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFBOztBQUlyQyxNQUFNLGVBQWUsR0FBRyxZQUFZLENBQUE7QUFHcEMsTUFBTSxPQUFPLCtCQUErQjtJQUUxQzs7T0FFRztJQUNJLEdBQUcsQ0FBQyxJQUFZO1FBQ3JCLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFBO1FBQ3hCLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsR0FBRyxlQUFlLElBQUksSUFBSSxFQUFFLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBQTtJQUN2RSxDQUFDO0lBRUQ7O09BRUc7SUFDSSxNQUFNLENBQUMsSUFBWSxFQUFFLEtBQWE7UUFDdkMsOEJBQThCO1FBQzlCLFlBQVksQ0FBQyxPQUFPLENBQUMsR0FBRyxlQUFlLElBQUksSUFBSSxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUE7UUFDekQsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFBO0lBQ3ZCLENBQUM7SUFFRDs7T0FFRztJQUNJLE1BQU0sQ0FBQyxJQUFZO1FBQ3hCLFlBQVksQ0FBQyxVQUFVLENBQUMsR0FBRyxlQUFlLElBQUksSUFBSSxFQUFFLENBQUMsQ0FBQTtRQUNyRCxPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUNqQixDQUFDOzs0SEF6QlUsK0JBQStCO2dJQUEvQiwrQkFBK0I7MkZBQS9CLCtCQUErQjtrQkFEM0MsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJ1xuXG5pbXBvcnQgeyBUaGVTZWFtUHJlZmVyZW5jZXNBY2Nlc3NvciB9IGZyb20gJ0B0aGVzZWFtL3VpLWNvbW1vbi9zZXJ2aWNlcydcblxuY29uc3QgQUNDRVNTT1JfUFJFRklYID0gJ3N0b3J5LXByZWYnXG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBTdG9yeVByZWZlcmVuY2VzQWNjZXNzb3JTZXJ2aWNlIGltcGxlbWVudHMgVGhlU2VhbVByZWZlcmVuY2VzQWNjZXNzb3Ige1xuXG4gIC8qKlxuICAgKiBHZXRzIGEgcHJlZmVyZW5jZS5cbiAgICovXG4gIHB1YmxpYyBnZXQobmFtZTogc3RyaW5nKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcbiAgICBjb25zb2xlLmxvZygnZ2V0JywgbmFtZSlcbiAgICByZXR1cm4gb2YobG9jYWxTdG9yYWdlLmdldEl0ZW0oYCR7QUNDRVNTT1JfUFJFRklYfS0ke25hbWV9YCkgfHwgJ3t9JylcbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGUgYSBwcmVmZXJlbmNlLlxuICAgKi9cbiAgcHVibGljIHVwZGF0ZShuYW1lOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xuICAgIC8vIGNvbnNvbGUubG9nKCd1cGRhdGUnLCBuYW1lKVxuICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKGAke0FDQ0VTU09SX1BSRUZJWH0tJHtuYW1lfWAsIHZhbHVlKVxuICAgIHJldHVybiB0aGlzLmdldChuYW1lKVxuICB9XG5cbiAgLyoqXG4gICAqIERlbGV0ZSBhIHByZWZlcmVuY2UuXG4gICAqL1xuICBwdWJsaWMgZGVsZXRlKG5hbWU6IHN0cmluZyk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIGxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKGAke0FDQ0VTU09SX1BSRUZJWH0tJHtuYW1lfWApXG4gICAgcmV0dXJuIG9mKHRydWUpXG4gIH1cblxufVxuIl19
@@ -41,4 +41,4 @@ function isFeatureCollectionValue(value) {
41
41
  }
42
42
  return value.type === 'FeatureCollection' && Array.isArray(value.features);
43
43
  }
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29lcmNlLWZlYXR1cmUtY29sbGVjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi91dGlscy9nZW8tanNvbi9jb2VyY2UtZmVhdHVyZS1jb2xsZWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLGlFQUFpRTtBQUNqRSxNQUFNLFVBQVUsdUJBQXVCLENBQUMsS0FBVTtJQUNoRCxPQUFPLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQTtBQUMxQixDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBUyxVQUFVLENBQUMsS0FBVTtJQUM1QixNQUFNLE1BQU0sR0FBRyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQTtJQUN0QyxJQUFJLHdCQUF3QixDQUFDLE1BQU0sQ0FBQyxFQUFFO1FBQ3BDLE9BQU8sTUFBTSxDQUFBO0tBQ2Q7SUFDRCxPQUFPLElBQUksQ0FBQTtBQUNiLENBQUM7QUFFRDs7O0dBR0c7QUFDSCxTQUFTLGdCQUFnQixDQUFDLEtBQVU7SUFDbEMsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUU7UUFDN0IsSUFBSTtZQUNGLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQTtTQUN6QjtRQUFDLE1BQU07WUFDTixPQUFPLElBQUksQ0FBQTtTQUNaO0tBQ0Y7SUFFRCxPQUFPLEtBQUssQ0FBQTtBQUNkLENBQUM7QUFFRDs7Ozs7O0dBTUc7QUFDSCxTQUFTLHdCQUF3QixDQUFDLEtBQVU7SUFDMUMsSUFBSSxLQUFLLEtBQUssU0FBUyxJQUFJLEtBQUssS0FBSyxJQUFJLEVBQUU7UUFDekMsT0FBTyxLQUFLLENBQUE7S0FDYjtJQUNELE9BQU8sS0FBSyxDQUFDLElBQUksS0FBSyxtQkFBbUIsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQTtBQUM1RSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRmVhdHVyZUNvbGxlY3Rpb24gfSBmcm9tICdnZW9qc29uJ1xyXG5cclxuLy8gVE9ETzogTWFrZSB0aGlzIG1vcmUgdGhvcm91Z2ggYW5kIG1heWJlIGVycm9yIG9uIHVucmVjb2duaXplZC5cclxuZXhwb3J0IGZ1bmN0aW9uIGNvZXJjZUZlYXR1cmVDb2xsZWN0aW9uKHZhbHVlOiBhbnkpOiBGZWF0dXJlQ29sbGVjdGlvbiB8IG51bGwge1xyXG4gIHJldHVybiBwYXJzZVZhbHVlKHZhbHVlKVxyXG59XHJcblxyXG4vKipcclxuICogUGFyc2VzIHRoZSB2YWx1ZSB0byBhIEZlYXR1cmVDb2xsZWN0aW9uIG9iamVjdCBvciBudWxsIGlmIGl0IGlzIG5vdCBhXHJcbiAqIEZlYXR1cmVDb2xsZWN0aW9uLlxyXG4gKi9cclxuZnVuY3Rpb24gcGFyc2VWYWx1ZSh2YWx1ZTogYW55KTogRmVhdHVyZUNvbGxlY3Rpb24gfCBudWxsIHtcclxuICBjb25zdCBfdmFsdWUgPSBwYXJzZVN0cmluZ1ZhbHVlKHZhbHVlKVxyXG4gIGlmIChpc0ZlYXR1cmVDb2xsZWN0aW9uVmFsdWUoX3ZhbHVlKSkge1xyXG4gICAgcmV0dXJuIF92YWx1ZVxyXG4gIH1cclxuICByZXR1cm4gbnVsbFxyXG59XHJcblxyXG4vKipcclxuICogVHJpZXMgdG8gcGFyc2UgdGhlIHZhbHVlIHRvIGFuIG9iamVjdCwgaW4gY2FzZSB0aGUgdmFsdWUgaXMgYSBzdHJpbmdpZmllZFxyXG4gKiBqc29uLlxyXG4gKi9cclxuZnVuY3Rpb24gcGFyc2VTdHJpbmdWYWx1ZSh2YWx1ZTogYW55KTogYW55IHtcclxuICBpZiAodHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJykge1xyXG4gICAgdHJ5IHtcclxuICAgICAgcmV0dXJuIEpTT04ucGFyc2UodmFsdWUpXHJcbiAgICB9IGNhdGNoIHtcclxuICAgICAgcmV0dXJuIG51bGxcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHJldHVybiB2YWx1ZVxyXG59XHJcblxyXG4vKipcclxuICogQ2hlY2tzIGlmIHRoZSB2YWx1ZSBpcyBhIEZlYXR1cmVDb2xsZWN0aW9uLlxyXG4gKlxyXG4gKiBOT1RFOiBUaGlzIGlzIG5vdCBhIHRob3JvdWdoIEZlYXR1cmVDb2xsZWN0aW9uIGNoZWNrLiBJdCBvbmx5IGNoZWNrcyB0aGF0IHRoZVxyXG4gKiB2YWx1ZSBpcyBhbiBvYmplY3QgcmVzZW1ibGluZyBhIEdlb0pTT04uRmVhdHVyZUNvbGxlY3Rpb24sIGVub3VnaCBmb3IgdGhlXHJcbiAqIHZhbGlkYXRvci5cclxuICovXHJcbmZ1bmN0aW9uIGlzRmVhdHVyZUNvbGxlY3Rpb25WYWx1ZSh2YWx1ZTogYW55KTogdmFsdWUgaXMgRmVhdHVyZUNvbGxlY3Rpb24ge1xyXG4gIGlmICh2YWx1ZSA9PT0gdW5kZWZpbmVkIHx8IHZhbHVlID09PSBudWxsKSB7XHJcbiAgICByZXR1cm4gZmFsc2VcclxuICB9XHJcbiAgcmV0dXJuIHZhbHVlLnR5cGUgPT09ICdGZWF0dXJlQ29sbGVjdGlvbicgJiYgQXJyYXkuaXNBcnJheSh2YWx1ZS5mZWF0dXJlcylcclxufVxyXG4iXX0=
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29lcmNlLWZlYXR1cmUtY29sbGVjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi91dGlscy9nZW8tanNvbi9jb2VyY2UtZmVhdHVyZS1jb2xsZWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLGlFQUFpRTtBQUNqRSxNQUFNLFVBQVUsdUJBQXVCLENBQUMsS0FBVTtJQUNoRCxPQUFPLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQTtBQUMxQixDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBUyxVQUFVLENBQUMsS0FBVTtJQUM1QixNQUFNLE1BQU0sR0FBRyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQTtJQUN0QyxJQUFJLHdCQUF3QixDQUFDLE1BQU0sQ0FBQyxFQUFFO1FBQ3BDLE9BQU8sTUFBTSxDQUFBO0tBQ2Q7SUFDRCxPQUFPLElBQUksQ0FBQTtBQUNiLENBQUM7QUFFRDs7O0dBR0c7QUFDSCxTQUFTLGdCQUFnQixDQUFDLEtBQVU7SUFDbEMsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUU7UUFDN0IsSUFBSTtZQUNGLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQTtTQUN6QjtRQUFDLE1BQU07WUFDTixPQUFPLElBQUksQ0FBQTtTQUNaO0tBQ0Y7SUFFRCxPQUFPLEtBQUssQ0FBQTtBQUNkLENBQUM7QUFFRDs7Ozs7O0dBTUc7QUFDSCxTQUFTLHdCQUF3QixDQUFDLEtBQVU7SUFDMUMsSUFBSSxLQUFLLEtBQUssU0FBUyxJQUFJLEtBQUssS0FBSyxJQUFJLEVBQUU7UUFDekMsT0FBTyxLQUFLLENBQUE7S0FDYjtJQUNELE9BQU8sS0FBSyxDQUFDLElBQUksS0FBSyxtQkFBbUIsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQTtBQUM1RSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRmVhdHVyZUNvbGxlY3Rpb24gfSBmcm9tICdnZW9qc29uJ1xuXG4vLyBUT0RPOiBNYWtlIHRoaXMgbW9yZSB0aG9yb3VnaCBhbmQgbWF5YmUgZXJyb3Igb24gdW5yZWNvZ25pemVkLlxuZXhwb3J0IGZ1bmN0aW9uIGNvZXJjZUZlYXR1cmVDb2xsZWN0aW9uKHZhbHVlOiBhbnkpOiBGZWF0dXJlQ29sbGVjdGlvbiB8IG51bGwge1xuICByZXR1cm4gcGFyc2VWYWx1ZSh2YWx1ZSlcbn1cblxuLyoqXG4gKiBQYXJzZXMgdGhlIHZhbHVlIHRvIGEgRmVhdHVyZUNvbGxlY3Rpb24gb2JqZWN0IG9yIG51bGwgaWYgaXQgaXMgbm90IGFcbiAqIEZlYXR1cmVDb2xsZWN0aW9uLlxuICovXG5mdW5jdGlvbiBwYXJzZVZhbHVlKHZhbHVlOiBhbnkpOiBGZWF0dXJlQ29sbGVjdGlvbiB8IG51bGwge1xuICBjb25zdCBfdmFsdWUgPSBwYXJzZVN0cmluZ1ZhbHVlKHZhbHVlKVxuICBpZiAoaXNGZWF0dXJlQ29sbGVjdGlvblZhbHVlKF92YWx1ZSkpIHtcbiAgICByZXR1cm4gX3ZhbHVlXG4gIH1cbiAgcmV0dXJuIG51bGxcbn1cblxuLyoqXG4gKiBUcmllcyB0byBwYXJzZSB0aGUgdmFsdWUgdG8gYW4gb2JqZWN0LCBpbiBjYXNlIHRoZSB2YWx1ZSBpcyBhIHN0cmluZ2lmaWVkXG4gKiBqc29uLlxuICovXG5mdW5jdGlvbiBwYXJzZVN0cmluZ1ZhbHVlKHZhbHVlOiBhbnkpOiBhbnkge1xuICBpZiAodHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJykge1xuICAgIHRyeSB7XG4gICAgICByZXR1cm4gSlNPTi5wYXJzZSh2YWx1ZSlcbiAgICB9IGNhdGNoIHtcbiAgICAgIHJldHVybiBudWxsXG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHZhbHVlXG59XG5cbi8qKlxuICogQ2hlY2tzIGlmIHRoZSB2YWx1ZSBpcyBhIEZlYXR1cmVDb2xsZWN0aW9uLlxuICpcbiAqIE5PVEU6IFRoaXMgaXMgbm90IGEgdGhvcm91Z2ggRmVhdHVyZUNvbGxlY3Rpb24gY2hlY2suIEl0IG9ubHkgY2hlY2tzIHRoYXQgdGhlXG4gKiB2YWx1ZSBpcyBhbiBvYmplY3QgcmVzZW1ibGluZyBhIEdlb0pTT04uRmVhdHVyZUNvbGxlY3Rpb24sIGVub3VnaCBmb3IgdGhlXG4gKiB2YWxpZGF0b3IuXG4gKi9cbmZ1bmN0aW9uIGlzRmVhdHVyZUNvbGxlY3Rpb25WYWx1ZSh2YWx1ZTogYW55KTogdmFsdWUgaXMgRmVhdHVyZUNvbGxlY3Rpb24ge1xuICBpZiAodmFsdWUgPT09IHVuZGVmaW5lZCB8fCB2YWx1ZSA9PT0gbnVsbCkge1xuICAgIHJldHVybiBmYWxzZVxuICB9XG4gIHJldHVybiB2YWx1ZS50eXBlID09PSAnRmVhdHVyZUNvbGxlY3Rpb24nICYmIEFycmF5LmlzQXJyYXkodmFsdWUuZmVhdHVyZXMpXG59XG4iXX0=
@@ -18,4 +18,4 @@ export function isFeatureCollectionValidator() {
18
18
  return null;
19
19
  };
20
20
  }
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtZmVhdHVyZS1jb2xsZWN0aW9uLnZhbGlkYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi91dGlscy9nZW8tanNvbi9pcy1mZWF0dXJlLWNvbGxlY3Rpb24udmFsaWRhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDhCQUE4QixDQUFBO0FBQ2hFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDZCQUE2QixDQUFBO0FBRXJFLE1BQU0sQ0FBQyxNQUFNLG9DQUFvQyxHQUFHLHVCQUF1QixDQUFBO0FBRTNFLE1BQU0sVUFBVSw0QkFBNEI7SUFDMUMsT0FBTyxDQUFDLE9BQXdCLEVBQUUsRUFBRTtRQUNsQyxxRkFBcUY7UUFDckYsSUFBSSxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDcEMsT0FBTyxJQUFJLENBQUEsQ0FBQyx5REFBeUQ7U0FDdEU7UUFFRCxNQUFNLEtBQUssR0FBRyx1QkFBdUIsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUE7UUFFcEQsSUFBSSxLQUFLLEtBQUssSUFBSSxFQUFFO1lBQ2xCLE9BQU87Z0JBQ0wsQ0FBQyxvQ0FBb0MsQ0FBQyxFQUFFO29CQUN0QyxNQUFNLEVBQUUsOEJBQThCO2lCQUN2QzthQUNGLENBQUE7U0FDRjtRQUVELE9BQU8sSUFBSSxDQUFBO0lBQ2IsQ0FBQyxDQUFBO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgVmFsaWRhdG9yRm4gfSBmcm9tICdAYW5ndWxhci9mb3JtcydcclxuXHJcbmltcG9ydCB7IGlzRW1wdHlJbnB1dFZhbHVlIH0gZnJvbSAnLi4vZm9ybS9pcy1lbXB0eS1pbnB1dC12YWx1ZSdcclxuaW1wb3J0IHsgY29lcmNlRmVhdHVyZUNvbGxlY3Rpb24gfSBmcm9tICcuL2NvZXJjZS1mZWF0dXJlLWNvbGxlY3Rpb24nXHJcblxyXG5leHBvcnQgY29uc3QgSVNfRkVBVFVSRV9DT0xMRUNUSU9OX1ZBTElEQVRPUl9OQU1FID0gJ2lzLWZlYXR1cmUtY29sbGVjdGlvbidcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBpc0ZlYXR1cmVDb2xsZWN0aW9uVmFsaWRhdG9yKCk6IFZhbGlkYXRvckZuIHtcclxuICByZXR1cm4gKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCkgPT4ge1xyXG4gICAgLy8gRG9uJ3QgbmVlZCB0byB2YWxpZGF0ZSBpZiB0aGVyZSBpc24ndCBhIHZhbHVlLiBVc2UgYFZhbGlkYXRvcnMucmVxdWlyZWRgIGZvciB0aGF0LlxyXG4gICAgaWYgKGlzRW1wdHlJbnB1dFZhbHVlKGNvbnRyb2wudmFsdWUpKSB7XHJcbiAgICAgIHJldHVybiBudWxsIC8vIGRvbid0IHZhbGlkYXRlIGVtcHR5IHZhbHVlcyB0byBhbGxvdyBvcHRpb25hbCBjb250cm9sc1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IHZhbHVlID0gY29lcmNlRmVhdHVyZUNvbGxlY3Rpb24oY29udHJvbC52YWx1ZSlcclxuXHJcbiAgICBpZiAodmFsdWUgPT09IG51bGwpIHtcclxuICAgICAgcmV0dXJuIHtcclxuICAgICAgICBbSVNfRkVBVFVSRV9DT0xMRUNUSU9OX1ZBTElEQVRPUl9OQU1FXToge1xyXG4gICAgICAgICAgcmVhc29uOiBgTXVzdCBiZSBhIEZlYXR1cmVDb2xsZWN0aW9uLmAsXHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIG51bGxcclxuICB9XHJcbn1cclxuIl19
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtZmVhdHVyZS1jb2xsZWN0aW9uLnZhbGlkYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi91dGlscy9nZW8tanNvbi9pcy1mZWF0dXJlLWNvbGxlY3Rpb24udmFsaWRhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDhCQUE4QixDQUFBO0FBQ2hFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDZCQUE2QixDQUFBO0FBRXJFLE1BQU0sQ0FBQyxNQUFNLG9DQUFvQyxHQUFHLHVCQUF1QixDQUFBO0FBRTNFLE1BQU0sVUFBVSw0QkFBNEI7SUFDMUMsT0FBTyxDQUFDLE9BQXdCLEVBQUUsRUFBRTtRQUNsQyxxRkFBcUY7UUFDckYsSUFBSSxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDcEMsT0FBTyxJQUFJLENBQUEsQ0FBQyx5REFBeUQ7U0FDdEU7UUFFRCxNQUFNLEtBQUssR0FBRyx1QkFBdUIsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUE7UUFFcEQsSUFBSSxLQUFLLEtBQUssSUFBSSxFQUFFO1lBQ2xCLE9BQU87Z0JBQ0wsQ0FBQyxvQ0FBb0MsQ0FBQyxFQUFFO29CQUN0QyxNQUFNLEVBQUUsOEJBQThCO2lCQUN2QzthQUNGLENBQUE7U0FDRjtRQUVELE9BQU8sSUFBSSxDQUFBO0lBQ2IsQ0FBQyxDQUFBO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgVmFsaWRhdG9yRm4gfSBmcm9tICdAYW5ndWxhci9mb3JtcydcblxuaW1wb3J0IHsgaXNFbXB0eUlucHV0VmFsdWUgfSBmcm9tICcuLi9mb3JtL2lzLWVtcHR5LWlucHV0LXZhbHVlJ1xuaW1wb3J0IHsgY29lcmNlRmVhdHVyZUNvbGxlY3Rpb24gfSBmcm9tICcuL2NvZXJjZS1mZWF0dXJlLWNvbGxlY3Rpb24nXG5cbmV4cG9ydCBjb25zdCBJU19GRUFUVVJFX0NPTExFQ1RJT05fVkFMSURBVE9SX05BTUUgPSAnaXMtZmVhdHVyZS1jb2xsZWN0aW9uJ1xuXG5leHBvcnQgZnVuY3Rpb24gaXNGZWF0dXJlQ29sbGVjdGlvblZhbGlkYXRvcigpOiBWYWxpZGF0b3JGbiB7XG4gIHJldHVybiAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKSA9PiB7XG4gICAgLy8gRG9uJ3QgbmVlZCB0byB2YWxpZGF0ZSBpZiB0aGVyZSBpc24ndCBhIHZhbHVlLiBVc2UgYFZhbGlkYXRvcnMucmVxdWlyZWRgIGZvciB0aGF0LlxuICAgIGlmIChpc0VtcHR5SW5wdXRWYWx1ZShjb250cm9sLnZhbHVlKSkge1xuICAgICAgcmV0dXJuIG51bGwgLy8gZG9uJ3QgdmFsaWRhdGUgZW1wdHkgdmFsdWVzIHRvIGFsbG93IG9wdGlvbmFsIGNvbnRyb2xzXG4gICAgfVxuXG4gICAgY29uc3QgdmFsdWUgPSBjb2VyY2VGZWF0dXJlQ29sbGVjdGlvbihjb250cm9sLnZhbHVlKVxuXG4gICAgaWYgKHZhbHVlID09PSBudWxsKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBbSVNfRkVBVFVSRV9DT0xMRUNUSU9OX1ZBTElEQVRPUl9OQU1FXToge1xuICAgICAgICAgIHJlYXNvbjogYE11c3QgYmUgYSBGZWF0dXJlQ29sbGVjdGlvbi5gLFxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIG51bGxcbiAgfVxufVxuIl19
@@ -20,4 +20,4 @@ export function isOnlyGeometryTypes(featureCollection, types) {
20
20
  }
21
21
  return true;
22
22
  }
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtb25seS1nZW9tZXRyeS10eXBlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi91dGlscy9nZW8tanNvbi9pcy1vbmx5LWdlb21ldHJ5LXR5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBOztHQUVHO0FBQ0gsTUFBTSxVQUFVLG1CQUFtQixDQUFDLGlCQUFvQyxFQUFFLEtBQXlCO0lBQ2pHLElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7UUFDdEIsSUFBSSxpQkFBaUIsQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUN6QywyRUFBMkU7WUFDM0UsT0FBTyxLQUFLLENBQUE7U0FDYjthQUFNO1lBQ0wsb0VBQW9FO1lBQ3BFLCtDQUErQztZQUMvQyxPQUFPLElBQUksQ0FBQTtTQUNaO0tBQ0Y7SUFFRCxLQUFLLE1BQU0sQ0FBQyxJQUFJLGlCQUFpQixDQUFDLFFBQVEsRUFBRTtRQUMxQyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRTtZQUN6QyxPQUFPLEtBQUssQ0FBQTtTQUNiO0tBQ0Y7SUFFRCxPQUFPLElBQUksQ0FBQTtBQUNiLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGZWF0dXJlQ29sbGVjdGlvbiwgR2VvbWV0cnkgfSBmcm9tICdnZW9qc29uJ1xyXG5cclxuLyoqXHJcbiAqIFJldHVybnMgdHJ1ZSBpZiB0aGUgR2VvSlNPTiBpcyBvbmx5IHNwZWNpZmllcyBnZW9tZXRyaWVzLlxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGlzT25seUdlb21ldHJ5VHlwZXMoZmVhdHVyZUNvbGxlY3Rpb246IEZlYXR1cmVDb2xsZWN0aW9uLCB0eXBlczogR2VvbWV0cnlbJ3R5cGUnXVtdKTogYm9vbGVhbiB7XHJcbiAgaWYgKHR5cGVzLmxlbmd0aCA9PT0gMCkge1xyXG4gICAgaWYgKGZlYXR1cmVDb2xsZWN0aW9uLmZlYXR1cmVzLmxlbmd0aCA+IDApIHtcclxuICAgICAgLy8gSWYgbm8gdHlwZXMgYXJlIHNwZWNpZmllZCB0aGVuIHRoZXJlIGNhbid0IGJlIGFueSBzcGVjaWZpZWQgdHlwZXMgZm91bmQuXHJcbiAgICAgIHJldHVybiBmYWxzZVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgLy8gSWYgbm8gdHlwZXMgYXJlIHNwZWNpZmllZCBhbmQgdGhlcmUgYXJlIG5vIGZlYXR1cmVzIHRoZW4gdGhlcmUgaXNcclxuICAgICAgLy8gbm90aGluZyB0byBzYXkgYSBzcGVjaWZpZWQgdHlwZSBpc24ndCBmb3VuZC5cclxuICAgICAgcmV0dXJuIHRydWVcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGZvciAoY29uc3QgZiBvZiBmZWF0dXJlQ29sbGVjdGlvbi5mZWF0dXJlcykge1xyXG4gICAgaWYgKHR5cGVzLmluZGV4T2YoZi5nZW9tZXRyeS50eXBlKSA9PT0gLTEpIHtcclxuICAgICAgcmV0dXJuIGZhbHNlXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICByZXR1cm4gdHJ1ZVxyXG59XHJcbiJdfQ==
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtb25seS1nZW9tZXRyeS10eXBlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi91dGlscy9nZW8tanNvbi9pcy1vbmx5LWdlb21ldHJ5LXR5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBOztHQUVHO0FBQ0gsTUFBTSxVQUFVLG1CQUFtQixDQUFDLGlCQUFvQyxFQUFFLEtBQXlCO0lBQ2pHLElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7UUFDdEIsSUFBSSxpQkFBaUIsQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUN6QywyRUFBMkU7WUFDM0UsT0FBTyxLQUFLLENBQUE7U0FDYjthQUFNO1lBQ0wsb0VBQW9FO1lBQ3BFLCtDQUErQztZQUMvQyxPQUFPLElBQUksQ0FBQTtTQUNaO0tBQ0Y7SUFFRCxLQUFLLE1BQU0sQ0FBQyxJQUFJLGlCQUFpQixDQUFDLFFBQVEsRUFBRTtRQUMxQyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRTtZQUN6QyxPQUFPLEtBQUssQ0FBQTtTQUNiO0tBQ0Y7SUFFRCxPQUFPLElBQUksQ0FBQTtBQUNiLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGZWF0dXJlQ29sbGVjdGlvbiwgR2VvbWV0cnkgfSBmcm9tICdnZW9qc29uJ1xuXG4vKipcbiAqIFJldHVybnMgdHJ1ZSBpZiB0aGUgR2VvSlNPTiBpcyBvbmx5IHNwZWNpZmllcyBnZW9tZXRyaWVzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNPbmx5R2VvbWV0cnlUeXBlcyhmZWF0dXJlQ29sbGVjdGlvbjogRmVhdHVyZUNvbGxlY3Rpb24sIHR5cGVzOiBHZW9tZXRyeVsndHlwZSddW10pOiBib29sZWFuIHtcbiAgaWYgKHR5cGVzLmxlbmd0aCA9PT0gMCkge1xuICAgIGlmIChmZWF0dXJlQ29sbGVjdGlvbi5mZWF0dXJlcy5sZW5ndGggPiAwKSB7XG4gICAgICAvLyBJZiBubyB0eXBlcyBhcmUgc3BlY2lmaWVkIHRoZW4gdGhlcmUgY2FuJ3QgYmUgYW55IHNwZWNpZmllZCB0eXBlcyBmb3VuZC5cbiAgICAgIHJldHVybiBmYWxzZVxuICAgIH0gZWxzZSB7XG4gICAgICAvLyBJZiBubyB0eXBlcyBhcmUgc3BlY2lmaWVkIGFuZCB0aGVyZSBhcmUgbm8gZmVhdHVyZXMgdGhlbiB0aGVyZSBpc1xuICAgICAgLy8gbm90aGluZyB0byBzYXkgYSBzcGVjaWZpZWQgdHlwZSBpc24ndCBmb3VuZC5cbiAgICAgIHJldHVybiB0cnVlXG4gICAgfVxuICB9XG5cbiAgZm9yIChjb25zdCBmIG9mIGZlYXR1cmVDb2xsZWN0aW9uLmZlYXR1cmVzKSB7XG4gICAgaWYgKHR5cGVzLmluZGV4T2YoZi5nZW9tZXRyeS50eXBlKSA9PT0gLTEpIHtcbiAgICAgIHJldHVybiBmYWxzZVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiB0cnVlXG59XG4iXX0=
@@ -32,4 +32,4 @@ export function mergePolygons(featureCollection) {
32
32
  featureCollection.features.push(feature);
33
33
  }
34
34
  }
35
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVyZ2UtcG9seWdvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vdXRpbHMvZ2VvLWpzb24vbWVyZ2UtcG9seWdvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBTUE7Ozs7OztHQU1HO0FBQ0gsTUFBTSxVQUFVLGFBQWEsQ0FBQyxpQkFBb0M7SUFDaEUsTUFBTSxZQUFZLEdBQWlCO1FBQ2pDLElBQUksRUFBRSxjQUFjO1FBQ3BCLFdBQVcsRUFBRSxFQUFFO0tBQ2hCLENBQUE7SUFFRCxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsaUJBQWlCLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtRQUMxRCxNQUFNLENBQUMsR0FBRyxpQkFBaUIsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUE7UUFDdkMsSUFBSSxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksS0FBSyxTQUFTLEVBQUU7WUFDakMsWUFBWSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsQ0FBQTtZQUNyRCxpQkFBaUIsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQTtZQUN2QyxDQUFDLEVBQUUsQ0FBQTtTQUNKO2FBQU0sSUFBSSxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksS0FBSyxjQUFjLEVBQUU7WUFDN0MsWUFBWSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxDQUFBO1lBQ3hELGlCQUFpQixDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFBO1lBQ3ZDLENBQUMsRUFBRSxDQUFBO1NBQ0o7S0FDRjtJQUVELElBQUksWUFBWSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1FBQ3ZDLE1BQU0sT0FBTyxHQUFZO1lBQ3ZCLElBQUksRUFBRSxTQUFTO1lBQ2YsUUFBUSxFQUFFLFlBQVk7WUFDdEIsVUFBVSxFQUFFLEVBQUc7U0FDaEIsQ0FBQTtRQUNELGlCQUFpQixDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUE7S0FDekM7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBGZWF0dXJlLFxyXG4gIEZlYXR1cmVDb2xsZWN0aW9uLFxyXG4gIE11bHRpUG9seWdvbixcclxufSBmcm9tICdnZW9qc29uJ1xyXG5cclxuLyoqXHJcbiAqIE1lcmdlIFBvbHlnb24gYW5kIE11bHRpUG9seWdvbiBnZW9tZXRyaWVzIGludG8gYSBzaW5nbGUgTXVsdGlQb2x5Z29uLiBBbnlcclxuICogcHJvcGVydGllcywgb3RoZXIgdGhhbiAnY29vcmRpbmF0ZXMnLCBvZiB0aGUgUG9seWdvbnMgYW5kIE11bHRpUG9seWdvbnMgd2lsbFxyXG4gKiBiZSBsb3N0LlxyXG4gKlxyXG4gKiBOT1RFOiBQb2x5Z29ucyBhbmQgTXVsdFBvbHlnb25zIGluIGEgR2VvbWV0cnlDb2xsZWN0aW9uIHdpbGwgbm90IGJlIG1lcmdlZC5cclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBtZXJnZVBvbHlnb25zKGZlYXR1cmVDb2xsZWN0aW9uOiBGZWF0dXJlQ29sbGVjdGlvbik6IHZvaWQge1xyXG4gIGNvbnN0IG11bHRpUG9seWdvbjogTXVsdGlQb2x5Z29uID0ge1xyXG4gICAgdHlwZTogJ011bHRpUG9seWdvbicsXHJcbiAgICBjb29yZGluYXRlczogW10sXHJcbiAgfVxyXG5cclxuICBmb3IgKGxldCBpID0gMDsgaSA8IGZlYXR1cmVDb2xsZWN0aW9uLmZlYXR1cmVzLmxlbmd0aDsgaSsrKSB7XHJcbiAgICBjb25zdCBmID0gZmVhdHVyZUNvbGxlY3Rpb24uZmVhdHVyZXNbaV1cclxuICAgIGlmIChmLmdlb21ldHJ5LnR5cGUgPT09ICdQb2x5Z29uJykge1xyXG4gICAgICBtdWx0aVBvbHlnb24uY29vcmRpbmF0ZXMucHVzaChmLmdlb21ldHJ5LmNvb3JkaW5hdGVzKVxyXG4gICAgICBmZWF0dXJlQ29sbGVjdGlvbi5mZWF0dXJlcy5zcGxpY2UoaSwgMSlcclxuICAgICAgaS0tXHJcbiAgICB9IGVsc2UgaWYgKGYuZ2VvbWV0cnkudHlwZSA9PT0gJ011bHRpUG9seWdvbicpIHtcclxuICAgICAgbXVsdGlQb2x5Z29uLmNvb3JkaW5hdGVzLnB1c2goLi4uZi5nZW9tZXRyeS5jb29yZGluYXRlcylcclxuICAgICAgZmVhdHVyZUNvbGxlY3Rpb24uZmVhdHVyZXMuc3BsaWNlKGksIDEpXHJcbiAgICAgIGktLVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgaWYgKG11bHRpUG9seWdvbi5jb29yZGluYXRlcy5sZW5ndGggPiAwKSB7XHJcbiAgICBjb25zdCBmZWF0dXJlOiBGZWF0dXJlID0ge1xyXG4gICAgICB0eXBlOiAnRmVhdHVyZScsXHJcbiAgICAgIGdlb21ldHJ5OiBtdWx0aVBvbHlnb24sXHJcbiAgICAgIHByb3BlcnRpZXM6IHsgfSxcclxuICAgIH1cclxuICAgIGZlYXR1cmVDb2xsZWN0aW9uLmZlYXR1cmVzLnB1c2goZmVhdHVyZSlcclxuICB9XHJcbn1cclxuIl19
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVyZ2UtcG9seWdvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vdXRpbHMvZ2VvLWpzb24vbWVyZ2UtcG9seWdvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBTUE7Ozs7OztHQU1HO0FBQ0gsTUFBTSxVQUFVLGFBQWEsQ0FBQyxpQkFBb0M7SUFDaEUsTUFBTSxZQUFZLEdBQWlCO1FBQ2pDLElBQUksRUFBRSxjQUFjO1FBQ3BCLFdBQVcsRUFBRSxFQUFFO0tBQ2hCLENBQUE7SUFFRCxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsaUJBQWlCLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtRQUMxRCxNQUFNLENBQUMsR0FBRyxpQkFBaUIsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUE7UUFDdkMsSUFBSSxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksS0FBSyxTQUFTLEVBQUU7WUFDakMsWUFBWSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsQ0FBQTtZQUNyRCxpQkFBaUIsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQTtZQUN2QyxDQUFDLEVBQUUsQ0FBQTtTQUNKO2FBQU0sSUFBSSxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksS0FBSyxjQUFjLEVBQUU7WUFDN0MsWUFBWSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxDQUFBO1lBQ3hELGlCQUFpQixDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFBO1lBQ3ZDLENBQUMsRUFBRSxDQUFBO1NBQ0o7S0FDRjtJQUVELElBQUksWUFBWSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1FBQ3ZDLE1BQU0sT0FBTyxHQUFZO1lBQ3ZCLElBQUksRUFBRSxTQUFTO1lBQ2YsUUFBUSxFQUFFLFlBQVk7WUFDdEIsVUFBVSxFQUFFLEVBQUc7U0FDaEIsQ0FBQTtRQUNELGlCQUFpQixDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUE7S0FDekM7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgRmVhdHVyZSxcbiAgRmVhdHVyZUNvbGxlY3Rpb24sXG4gIE11bHRpUG9seWdvbixcbn0gZnJvbSAnZ2VvanNvbidcblxuLyoqXG4gKiBNZXJnZSBQb2x5Z29uIGFuZCBNdWx0aVBvbHlnb24gZ2VvbWV0cmllcyBpbnRvIGEgc2luZ2xlIE11bHRpUG9seWdvbi4gQW55XG4gKiBwcm9wZXJ0aWVzLCBvdGhlciB0aGFuICdjb29yZGluYXRlcycsIG9mIHRoZSBQb2x5Z29ucyBhbmQgTXVsdGlQb2x5Z29ucyB3aWxsXG4gKiBiZSBsb3N0LlxuICpcbiAqIE5PVEU6IFBvbHlnb25zIGFuZCBNdWx0UG9seWdvbnMgaW4gYSBHZW9tZXRyeUNvbGxlY3Rpb24gd2lsbCBub3QgYmUgbWVyZ2VkLlxuICovXG5leHBvcnQgZnVuY3Rpb24gbWVyZ2VQb2x5Z29ucyhmZWF0dXJlQ29sbGVjdGlvbjogRmVhdHVyZUNvbGxlY3Rpb24pOiB2b2lkIHtcbiAgY29uc3QgbXVsdGlQb2x5Z29uOiBNdWx0aVBvbHlnb24gPSB7XG4gICAgdHlwZTogJ011bHRpUG9seWdvbicsXG4gICAgY29vcmRpbmF0ZXM6IFtdLFxuICB9XG5cbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBmZWF0dXJlQ29sbGVjdGlvbi5mZWF0dXJlcy5sZW5ndGg7IGkrKykge1xuICAgIGNvbnN0IGYgPSBmZWF0dXJlQ29sbGVjdGlvbi5mZWF0dXJlc1tpXVxuICAgIGlmIChmLmdlb21ldHJ5LnR5cGUgPT09ICdQb2x5Z29uJykge1xuICAgICAgbXVsdGlQb2x5Z29uLmNvb3JkaW5hdGVzLnB1c2goZi5nZW9tZXRyeS5jb29yZGluYXRlcylcbiAgICAgIGZlYXR1cmVDb2xsZWN0aW9uLmZlYXR1cmVzLnNwbGljZShpLCAxKVxuICAgICAgaS0tXG4gICAgfSBlbHNlIGlmIChmLmdlb21ldHJ5LnR5cGUgPT09ICdNdWx0aVBvbHlnb24nKSB7XG4gICAgICBtdWx0aVBvbHlnb24uY29vcmRpbmF0ZXMucHVzaCguLi5mLmdlb21ldHJ5LmNvb3JkaW5hdGVzKVxuICAgICAgZmVhdHVyZUNvbGxlY3Rpb24uZmVhdHVyZXMuc3BsaWNlKGksIDEpXG4gICAgICBpLS1cbiAgICB9XG4gIH1cblxuICBpZiAobXVsdGlQb2x5Z29uLmNvb3JkaW5hdGVzLmxlbmd0aCA+IDApIHtcbiAgICBjb25zdCBmZWF0dXJlOiBGZWF0dXJlID0ge1xuICAgICAgdHlwZTogJ0ZlYXR1cmUnLFxuICAgICAgZ2VvbWV0cnk6IG11bHRpUG9seWdvbixcbiAgICAgIHByb3BlcnRpZXM6IHsgfSxcbiAgICB9XG4gICAgZmVhdHVyZUNvbGxlY3Rpb24uZmVhdHVyZXMucHVzaChmZWF0dXJlKVxuICB9XG59XG4iXX0=
@@ -60,4 +60,4 @@ function hasInnerRing(featureCollection) {
60
60
  }
61
61
  return false;
62
62
  }
63
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm8taW5uZXItcmluZ3MudmFsaWRhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL3V0aWxzL2dlby1qc29uL25vLWlubmVyLXJpbmdzLnZhbGlkYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQTtBQUNoRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQTtBQUVyRSxNQUFNLENBQUMsTUFBTSw2QkFBNkIsR0FBRyxnQkFBZ0IsQ0FBQTtBQUU3RDs7Ozs7O0dBTUc7QUFDSCxNQUFNLFVBQVUscUJBQXFCO0lBQ25DLE9BQU8sQ0FBQyxPQUF3QixFQUFFLEVBQUU7UUFDbEMscUZBQXFGO1FBQ3JGLElBQUksaUJBQWlCLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ3BDLE9BQU8sSUFBSSxDQUFBLENBQUMseURBQXlEO1NBQ3RFO1FBRUQsTUFBTSxLQUFLLEdBQUcsdUJBQXVCLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFBO1FBRXBELElBQUksS0FBSyxLQUFLLElBQUksRUFBRTtZQUNsQix3RUFBd0U7WUFDeEUsMEVBQTBFO1lBQzFFLE9BQU8sSUFBSSxDQUFBO1NBQ1o7UUFFRCxJQUFJLFlBQVksQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUN2QixPQUFPO2dCQUNMLENBQUMsNkJBQTZCLENBQUMsRUFBRTtvQkFDL0IsTUFBTSxFQUFFLG9DQUFvQztpQkFDN0M7YUFDRixDQUFBO1NBQ0Y7UUFFRCxPQUFPLElBQUksQ0FBQTtJQUNiLENBQUMsQ0FBQTtBQUNILENBQUM7QUFFRDs7Ozs7R0FLRztBQUNILFNBQVMsWUFBWSxDQUFDLGlCQUFvQztJQUN4RCxLQUFLLE1BQU0sQ0FBQyxJQUFJLGlCQUFpQixDQUFDLFFBQVEsRUFBRTtRQUMxQyx5RUFBeUU7UUFDekUsMEVBQTBFO1FBQzFFLDBFQUEwRTtRQUMxRSx5RUFBeUU7UUFDekUseUVBQXlFO1FBQ3pFLEVBQUU7UUFDRiw0RUFBNEU7UUFDNUUsSUFBSSxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksS0FBSyxTQUFTLEVBQUU7WUFDakMsSUFBSSxDQUFDLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO2dCQUNyQyxPQUFPLElBQUksQ0FBQTthQUNaO1NBQ0Y7YUFBTSxJQUFJLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxLQUFLLGNBQWMsRUFBRTtZQUM3QyxLQUFLLE1BQU0sTUFBTSxJQUFJLENBQUMsQ0FBQyxRQUFRLENBQUMsV0FBVyxFQUFFO2dCQUMzQyxJQUFJLE1BQU0sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO29CQUNyQixPQUFPLElBQUksQ0FBQTtpQkFDWjthQUNGO1NBQ0Y7S0FDRjtJQUVELE9BQU8sS0FBSyxDQUFBO0FBQ2QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgVmFsaWRhdG9yRm4gfSBmcm9tICdAYW5ndWxhci9mb3JtcydcclxuXHJcbmltcG9ydCB7IEZlYXR1cmVDb2xsZWN0aW9uIH0gZnJvbSAnZ2VvanNvbidcclxuXHJcbmltcG9ydCB7IGlzRW1wdHlJbnB1dFZhbHVlIH0gZnJvbSAnLi4vZm9ybS9pcy1lbXB0eS1pbnB1dC12YWx1ZSdcclxuaW1wb3J0IHsgY29lcmNlRmVhdHVyZUNvbGxlY3Rpb24gfSBmcm9tICcuL2NvZXJjZS1mZWF0dXJlLWNvbGxlY3Rpb24nXHJcblxyXG5leHBvcnQgY29uc3QgTk9fSU5ORVJfUklOR1NfVkFMSURBVE9SX05BTUUgPSAnbm8taW5uZXItcmluZ3MnXHJcblxyXG4vKipcclxuICogVmFsaWRhdGVzIHRoYXQgYSBGZWF0dXJlQ29sbGVjdGlvbiBkb2VzIG5vdCBjb250YWluIGFueSBQb2x5Z29uIHdpdGggaW5uZXJcclxuICogcmluZ3MoXCJob2xlc1wiKS5cclxuICpcclxuICogTk9URTogT25seSBjb25zaWRlcnMgUG9seWdvbiBhbmQgTXVsdGlQb2x5Z29uLiBEb2VzIG5vdCBjb25zaWRlclxyXG4gKiBHZW9tZXRyeUNvbGxlY3Rpb24uXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gbm9Jbm5lclJpbmdzVmFsaWRhdG9yKCk6IFZhbGlkYXRvckZuIHtcclxuICByZXR1cm4gKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCkgPT4ge1xyXG4gICAgLy8gRG9uJ3QgbmVlZCB0byB2YWxpZGF0ZSBpZiB0aGVyZSBpc24ndCBhIHZhbHVlLiBVc2UgYFZhbGlkYXRvcnMucmVxdWlyZWRgIGZvciB0aGF0LlxyXG4gICAgaWYgKGlzRW1wdHlJbnB1dFZhbHVlKGNvbnRyb2wudmFsdWUpKSB7XHJcbiAgICAgIHJldHVybiBudWxsIC8vIGRvbid0IHZhbGlkYXRlIGVtcHR5IHZhbHVlcyB0byBhbGxvdyBvcHRpb25hbCBjb250cm9sc1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IHZhbHVlID0gY29lcmNlRmVhdHVyZUNvbGxlY3Rpb24oY29udHJvbC52YWx1ZSlcclxuXHJcbiAgICBpZiAodmFsdWUgPT09IG51bGwpIHtcclxuICAgICAgLy8gSWYgdGhlcmUgaXNuJ3QgYSBGZWF0dXJlQ29sbGVjdGlvbiB0aGVuIHRoZXJlIGlzIG5vdGhpbmcgdG8gdmFsaWRhdGUuXHJcbiAgICAgIC8vIFVzZSAnaXNGZWF0dXJlQ29sbGVjdGlvbicgdG8gdmFsaWRhdGUgdGhlIHZhbHVlIGlzIGEgRmVhdHVyZUNvbGxlY3Rpb24uXHJcbiAgICAgIHJldHVybiBudWxsXHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGhhc0lubmVyUmluZyh2YWx1ZSkpIHtcclxuICAgICAgcmV0dXJuIHtcclxuICAgICAgICBbTk9fSU5ORVJfUklOR1NfVkFMSURBVE9SX05BTUVdOiB7XHJcbiAgICAgICAgICByZWFzb246IGBBIHNoYXBlIGNhbm5vdCBoYXZlIGFuIGlubmVyIHJpbmcuYFxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBudWxsXHJcbiAgfVxyXG59XHJcblxyXG4vKipcclxuICogQ2hlY2tzIGlmIGEgRmVhdHVyZUNvbGxlY3Rpb24gY29udGFpbnMgYW55IGdlb21ldHJpZXMgd2l0aCBhbiBpbm5lclxyXG4gKiByaW5nKFwiaG9sZVwiKS5cclxuICpcclxuICogTk9URTogRG9lcyBub3QgY29uc2lkZXIgR2VvbWV0cnlDb2xsZWN0aW9uLlxyXG4gKi9cclxuZnVuY3Rpb24gaGFzSW5uZXJSaW5nKGZlYXR1cmVDb2xsZWN0aW9uOiBGZWF0dXJlQ29sbGVjdGlvbik6IGJvb2xlYW4ge1xyXG4gIGZvciAoY29uc3QgZiBvZiBmZWF0dXJlQ29sbGVjdGlvbi5mZWF0dXJlcykge1xyXG4gICAgLy8gVGhlIHNwZWMgc2F5cyB0aGUgcmlnaHQtaGFuZCBydWxlIG11c3QgYmUgZm9sbG93ZWQsIGJ1dCBhbHNvIHNwZWNpZmllc1xyXG4gICAgLy8gdGhhdCB0b29scyBzaG91bGQgbm90IHJlamVjdCBwb2x5Z29ucyB0aGF0IGRvIG5vdCBmb2xsb3cgdGhlIHJpZ2h0LWhhbmRcclxuICAgIC8vIHJ1bGUuIEl0IGRvZXMgc3BlY2lmeSB0aGF0IHRoZSBmaXJzdCByaW5nIG11c3QgYmUgdGhlIGV4dGVyaW9yIHJpbmcgYW5kXHJcbiAgICAvLyB0aGUgb3RoZXJzIG11c3QgYmUgdGhlIGludGVyaW9yLiBTbywgdGhpcyBzaG91bGQgYmUgc2FmZSB0byBqdXN0IGNoZWNrXHJcbiAgICAvLyBpZiB0aGVyZSBhcmUgbXVsdGlwbGUgcmluZ3MsIGluc3RlYWQgb2YgY2hlY2tpbmcgdGhlaXIgd2luZGluZyBvcmRlcnMuXHJcbiAgICAvL1xyXG4gICAgLy8gUG9seWdvbiBzcGVjOiBodHRwczovL2RhdGF0cmFja2VyLmlldGYub3JnL2RvYy9odG1sL3JmYzc5NDYjc2VjdGlvbi0zLjEuNlxyXG4gICAgaWYgKGYuZ2VvbWV0cnkudHlwZSA9PT0gJ1BvbHlnb24nKSB7XHJcbiAgICAgIGlmIChmLmdlb21ldHJ5LmNvb3JkaW5hdGVzLmxlbmd0aCA+IDEpIHtcclxuICAgICAgICByZXR1cm4gdHJ1ZVxyXG4gICAgICB9XHJcbiAgICB9IGVsc2UgaWYgKGYuZ2VvbWV0cnkudHlwZSA9PT0gJ011bHRpUG9seWdvbicpIHtcclxuICAgICAgZm9yIChjb25zdCBjb29yZHMgb2YgZi5nZW9tZXRyeS5jb29yZGluYXRlcykge1xyXG4gICAgICAgIGlmIChjb29yZHMubGVuZ3RoID4gMSkge1xyXG4gICAgICAgICAgcmV0dXJuIHRydWVcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHJldHVybiBmYWxzZVxyXG59XHJcbiJdfQ==
63
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm8taW5uZXItcmluZ3MudmFsaWRhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL3V0aWxzL2dlby1qc29uL25vLWlubmVyLXJpbmdzLnZhbGlkYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQTtBQUNoRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQTtBQUVyRSxNQUFNLENBQUMsTUFBTSw2QkFBNkIsR0FBRyxnQkFBZ0IsQ0FBQTtBQUU3RDs7Ozs7O0dBTUc7QUFDSCxNQUFNLFVBQVUscUJBQXFCO0lBQ25DLE9BQU8sQ0FBQyxPQUF3QixFQUFFLEVBQUU7UUFDbEMscUZBQXFGO1FBQ3JGLElBQUksaUJBQWlCLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ3BDLE9BQU8sSUFBSSxDQUFBLENBQUMseURBQXlEO1NBQ3RFO1FBRUQsTUFBTSxLQUFLLEdBQUcsdUJBQXVCLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFBO1FBRXBELElBQUksS0FBSyxLQUFLLElBQUksRUFBRTtZQUNsQix3RUFBd0U7WUFDeEUsMEVBQTBFO1lBQzFFLE9BQU8sSUFBSSxDQUFBO1NBQ1o7UUFFRCxJQUFJLFlBQVksQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUN2QixPQUFPO2dCQUNMLENBQUMsNkJBQTZCLENBQUMsRUFBRTtvQkFDL0IsTUFBTSxFQUFFLG9DQUFvQztpQkFDN0M7YUFDRixDQUFBO1NBQ0Y7UUFFRCxPQUFPLElBQUksQ0FBQTtJQUNiLENBQUMsQ0FBQTtBQUNILENBQUM7QUFFRDs7Ozs7R0FLRztBQUNILFNBQVMsWUFBWSxDQUFDLGlCQUFvQztJQUN4RCxLQUFLLE1BQU0sQ0FBQyxJQUFJLGlCQUFpQixDQUFDLFFBQVEsRUFBRTtRQUMxQyx5RUFBeUU7UUFDekUsMEVBQTBFO1FBQzFFLDBFQUEwRTtRQUMxRSx5RUFBeUU7UUFDekUseUVBQXlFO1FBQ3pFLEVBQUU7UUFDRiw0RUFBNEU7UUFDNUUsSUFBSSxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksS0FBSyxTQUFTLEVBQUU7WUFDakMsSUFBSSxDQUFDLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO2dCQUNyQyxPQUFPLElBQUksQ0FBQTthQUNaO1NBQ0Y7YUFBTSxJQUFJLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxLQUFLLGNBQWMsRUFBRTtZQUM3QyxLQUFLLE1BQU0sTUFBTSxJQUFJLENBQUMsQ0FBQyxRQUFRLENBQUMsV0FBVyxFQUFFO2dCQUMzQyxJQUFJLE1BQU0sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO29CQUNyQixPQUFPLElBQUksQ0FBQTtpQkFDWjthQUNGO1NBQ0Y7S0FDRjtJQUVELE9BQU8sS0FBSyxDQUFBO0FBQ2QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgVmFsaWRhdG9yRm4gfSBmcm9tICdAYW5ndWxhci9mb3JtcydcblxuaW1wb3J0IHsgRmVhdHVyZUNvbGxlY3Rpb24gfSBmcm9tICdnZW9qc29uJ1xuXG5pbXBvcnQgeyBpc0VtcHR5SW5wdXRWYWx1ZSB9IGZyb20gJy4uL2Zvcm0vaXMtZW1wdHktaW5wdXQtdmFsdWUnXG5pbXBvcnQgeyBjb2VyY2VGZWF0dXJlQ29sbGVjdGlvbiB9IGZyb20gJy4vY29lcmNlLWZlYXR1cmUtY29sbGVjdGlvbidcblxuZXhwb3J0IGNvbnN0IE5PX0lOTkVSX1JJTkdTX1ZBTElEQVRPUl9OQU1FID0gJ25vLWlubmVyLXJpbmdzJ1xuXG4vKipcbiAqIFZhbGlkYXRlcyB0aGF0IGEgRmVhdHVyZUNvbGxlY3Rpb24gZG9lcyBub3QgY29udGFpbiBhbnkgUG9seWdvbiB3aXRoIGlubmVyXG4gKiByaW5ncyhcImhvbGVzXCIpLlxuICpcbiAqIE5PVEU6IE9ubHkgY29uc2lkZXJzIFBvbHlnb24gYW5kIE11bHRpUG9seWdvbi4gRG9lcyBub3QgY29uc2lkZXJcbiAqIEdlb21ldHJ5Q29sbGVjdGlvbi5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG5vSW5uZXJSaW5nc1ZhbGlkYXRvcigpOiBWYWxpZGF0b3JGbiB7XG4gIHJldHVybiAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKSA9PiB7XG4gICAgLy8gRG9uJ3QgbmVlZCB0byB2YWxpZGF0ZSBpZiB0aGVyZSBpc24ndCBhIHZhbHVlLiBVc2UgYFZhbGlkYXRvcnMucmVxdWlyZWRgIGZvciB0aGF0LlxuICAgIGlmIChpc0VtcHR5SW5wdXRWYWx1ZShjb250cm9sLnZhbHVlKSkge1xuICAgICAgcmV0dXJuIG51bGwgLy8gZG9uJ3QgdmFsaWRhdGUgZW1wdHkgdmFsdWVzIHRvIGFsbG93IG9wdGlvbmFsIGNvbnRyb2xzXG4gICAgfVxuXG4gICAgY29uc3QgdmFsdWUgPSBjb2VyY2VGZWF0dXJlQ29sbGVjdGlvbihjb250cm9sLnZhbHVlKVxuXG4gICAgaWYgKHZhbHVlID09PSBudWxsKSB7XG4gICAgICAvLyBJZiB0aGVyZSBpc24ndCBhIEZlYXR1cmVDb2xsZWN0aW9uIHRoZW4gdGhlcmUgaXMgbm90aGluZyB0byB2YWxpZGF0ZS5cbiAgICAgIC8vIFVzZSAnaXNGZWF0dXJlQ29sbGVjdGlvbicgdG8gdmFsaWRhdGUgdGhlIHZhbHVlIGlzIGEgRmVhdHVyZUNvbGxlY3Rpb24uXG4gICAgICByZXR1cm4gbnVsbFxuICAgIH1cblxuICAgIGlmIChoYXNJbm5lclJpbmcodmFsdWUpKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBbTk9fSU5ORVJfUklOR1NfVkFMSURBVE9SX05BTUVdOiB7XG4gICAgICAgICAgcmVhc29uOiBgQSBzaGFwZSBjYW5ub3QgaGF2ZSBhbiBpbm5lciByaW5nLmBcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBudWxsXG4gIH1cbn1cblxuLyoqXG4gKiBDaGVja3MgaWYgYSBGZWF0dXJlQ29sbGVjdGlvbiBjb250YWlucyBhbnkgZ2VvbWV0cmllcyB3aXRoIGFuIGlubmVyXG4gKiByaW5nKFwiaG9sZVwiKS5cbiAqXG4gKiBOT1RFOiBEb2VzIG5vdCBjb25zaWRlciBHZW9tZXRyeUNvbGxlY3Rpb24uXG4gKi9cbmZ1bmN0aW9uIGhhc0lubmVyUmluZyhmZWF0dXJlQ29sbGVjdGlvbjogRmVhdHVyZUNvbGxlY3Rpb24pOiBib29sZWFuIHtcbiAgZm9yIChjb25zdCBmIG9mIGZlYXR1cmVDb2xsZWN0aW9uLmZlYXR1cmVzKSB7XG4gICAgLy8gVGhlIHNwZWMgc2F5cyB0aGUgcmlnaHQtaGFuZCBydWxlIG11c3QgYmUgZm9sbG93ZWQsIGJ1dCBhbHNvIHNwZWNpZmllc1xuICAgIC8vIHRoYXQgdG9vbHMgc2hvdWxkIG5vdCByZWplY3QgcG9seWdvbnMgdGhhdCBkbyBub3QgZm9sbG93IHRoZSByaWdodC1oYW5kXG4gICAgLy8gcnVsZS4gSXQgZG9lcyBzcGVjaWZ5IHRoYXQgdGhlIGZpcnN0IHJpbmcgbXVzdCBiZSB0aGUgZXh0ZXJpb3IgcmluZyBhbmRcbiAgICAvLyB0aGUgb3RoZXJzIG11c3QgYmUgdGhlIGludGVyaW9yLiBTbywgdGhpcyBzaG91bGQgYmUgc2FmZSB0byBqdXN0IGNoZWNrXG4gICAgLy8gaWYgdGhlcmUgYXJlIG11bHRpcGxlIHJpbmdzLCBpbnN0ZWFkIG9mIGNoZWNraW5nIHRoZWlyIHdpbmRpbmcgb3JkZXJzLlxuICAgIC8vXG4gICAgLy8gUG9seWdvbiBzcGVjOiBodHRwczovL2RhdGF0cmFja2VyLmlldGYub3JnL2RvYy9odG1sL3JmYzc5NDYjc2VjdGlvbi0zLjEuNlxuICAgIGlmIChmLmdlb21ldHJ5LnR5cGUgPT09ICdQb2x5Z29uJykge1xuICAgICAgaWYgKGYuZ2VvbWV0cnkuY29vcmRpbmF0ZXMubGVuZ3RoID4gMSkge1xuICAgICAgICByZXR1cm4gdHJ1ZVxuICAgICAgfVxuICAgIH0gZWxzZSBpZiAoZi5nZW9tZXRyeS50eXBlID09PSAnTXVsdGlQb2x5Z29uJykge1xuICAgICAgZm9yIChjb25zdCBjb29yZHMgb2YgZi5nZW9tZXRyeS5jb29yZGluYXRlcykge1xuICAgICAgICBpZiAoY29vcmRzLmxlbmd0aCA+IDEpIHtcbiAgICAgICAgICByZXR1cm4gdHJ1ZVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGZhbHNlXG59XG4iXX0=
@@ -26,4 +26,4 @@ function splitMultPolygon(multiPolygon) {
26
26
  coordinates: c,
27
27
  }));
28
28
  }
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BsaXQtbXVsdGktcG9seWdvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vdXRpbHMvZ2VvLWpzb24vc3BsaXQtbXVsdGktcG9seWdvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBT0E7Ozs7O0dBS0c7QUFDSCxNQUFNLFVBQVUsa0JBQWtCLENBQUMsaUJBQW9DO0lBQ3JFLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxpQkFBaUIsQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO1FBQzFELElBQUksaUJBQWlCLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQ2pDLE1BQU0sUUFBUSxHQUFHLGlCQUFpQixDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUE7WUFDdkQsSUFBSSxRQUFRLENBQUMsSUFBSSxLQUFLLGNBQWMsRUFBRTtnQkFDcEMsTUFBTSxRQUFRLEdBQUcsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztvQkFDcEQsSUFBSSxFQUFFLFNBQVM7b0JBQ2YsUUFBUSxFQUFFLENBQUM7b0JBQ1gsVUFBVSxFQUFFLEVBQUc7aUJBQ0osQ0FBQSxDQUFDLENBQUE7Z0JBQ2QsaUJBQWlCLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEdBQUcsUUFBUSxDQUFDLENBQUE7Z0JBQ3BELENBQUMsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFBO2FBQ3RDO1NBQ0Y7S0FDRjtBQUNILENBQUM7QUFFRCxTQUFTLGdCQUFnQixDQUFDLFlBQTBCO0lBQ2xELE9BQU8sWUFBWSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3hDLElBQUksRUFBRSxTQUFTO1FBQ2YsV0FBVyxFQUFFLENBQUM7S0FDZixDQUFDLENBQUMsQ0FBQTtBQUNMLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQb2x5Z29uIH0gZnJvbSAnQHR1cmYvaGVscGVycydcclxuaW1wb3J0IHtcclxuICBGZWF0dXJlLFxyXG4gIEZlYXR1cmVDb2xsZWN0aW9uLFxyXG4gIE11bHRpUG9seWdvbixcclxufSBmcm9tICdnZW9qc29uJ1xyXG5cclxuLyoqXHJcbiAqIFNwbGl0IGFsbCBNdWx0aVBvbHlnb24gaW50byBQb2x5Z29uLiBBbnkgcHJvcGVydGllcywgb3RoZXIgdGhhblxyXG4gKiAnY29vcmRpbmF0ZXMnLCBvZiB0aGUgTXVsdGlQb2x5Z29ucyB3aWxsIGJlIGxvc3QuXHJcbiAqXHJcbiAqIE5PVEU6IE11bHRpUG9seWdvbnMgaW4gYSBHZW9tZXRyeUNvbGxlY3Rpb24gd2lsbCBub3QgYmUgc3BsaXQuXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gc3BsaXRNdWx0aVBvbHlnb25zKGZlYXR1cmVDb2xsZWN0aW9uOiBGZWF0dXJlQ29sbGVjdGlvbik6IHZvaWQge1xyXG4gIGZvciAobGV0IGkgPSAwOyBpIDwgZmVhdHVyZUNvbGxlY3Rpb24uZmVhdHVyZXMubGVuZ3RoOyBpKyspIHtcclxuICAgIGlmIChmZWF0dXJlQ29sbGVjdGlvbi5mZWF0dXJlc1tpXSkge1xyXG4gICAgICBjb25zdCBnZW9tZXRyeSA9IGZlYXR1cmVDb2xsZWN0aW9uLmZlYXR1cmVzW2ldLmdlb21ldHJ5XHJcbiAgICAgIGlmIChnZW9tZXRyeS50eXBlID09PSAnTXVsdGlQb2x5Z29uJykge1xyXG4gICAgICAgIGNvbnN0IGZlYXR1cmVzID0gc3BsaXRNdWx0UG9seWdvbihnZW9tZXRyeSkubWFwKHAgPT4gKHtcclxuICAgICAgICAgIHR5cGU6ICdGZWF0dXJlJyxcclxuICAgICAgICAgIGdlb21ldHJ5OiBwLFxyXG4gICAgICAgICAgcHJvcGVydGllczogeyB9LFxyXG4gICAgICAgIH0gYXMgRmVhdHVyZSkpXHJcbiAgICAgICAgZmVhdHVyZUNvbGxlY3Rpb24uZmVhdHVyZXMuc3BsaWNlKGksIDEsIC4uLmZlYXR1cmVzKVxyXG4gICAgICAgIGkgKz0gTWF0aC5tYXgoZmVhdHVyZXMubGVuZ3RoIC0gMSwgMClcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuZnVuY3Rpb24gc3BsaXRNdWx0UG9seWdvbihtdWx0aVBvbHlnb246IE11bHRpUG9seWdvbik6IFBvbHlnb25bXSB7XHJcbiAgcmV0dXJuIG11bHRpUG9seWdvbi5jb29yZGluYXRlcy5tYXAoYyA9PiAoe1xyXG4gICAgdHlwZTogJ1BvbHlnb24nLFxyXG4gICAgY29vcmRpbmF0ZXM6IGMsXHJcbiAgfSkpXHJcbn1cclxuIl19
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BsaXQtbXVsdGktcG9seWdvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vdXRpbHMvZ2VvLWpzb24vc3BsaXQtbXVsdGktcG9seWdvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBT0E7Ozs7O0dBS0c7QUFDSCxNQUFNLFVBQVUsa0JBQWtCLENBQUMsaUJBQW9DO0lBQ3JFLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxpQkFBaUIsQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO1FBQzFELElBQUksaUJBQWlCLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQ2pDLE1BQU0sUUFBUSxHQUFHLGlCQUFpQixDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUE7WUFDdkQsSUFBSSxRQUFRLENBQUMsSUFBSSxLQUFLLGNBQWMsRUFBRTtnQkFDcEMsTUFBTSxRQUFRLEdBQUcsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztvQkFDcEQsSUFBSSxFQUFFLFNBQVM7b0JBQ2YsUUFBUSxFQUFFLENBQUM7b0JBQ1gsVUFBVSxFQUFFLEVBQUc7aUJBQ0osQ0FBQSxDQUFDLENBQUE7Z0JBQ2QsaUJBQWlCLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEdBQUcsUUFBUSxDQUFDLENBQUE7Z0JBQ3BELENBQUMsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFBO2FBQ3RDO1NBQ0Y7S0FDRjtBQUNILENBQUM7QUFFRCxTQUFTLGdCQUFnQixDQUFDLFlBQTBCO0lBQ2xELE9BQU8sWUFBWSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3hDLElBQUksRUFBRSxTQUFTO1FBQ2YsV0FBVyxFQUFFLENBQUM7S0FDZixDQUFDLENBQUMsQ0FBQTtBQUNMLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQb2x5Z29uIH0gZnJvbSAnQHR1cmYvaGVscGVycydcbmltcG9ydCB7XG4gIEZlYXR1cmUsXG4gIEZlYXR1cmVDb2xsZWN0aW9uLFxuICBNdWx0aVBvbHlnb24sXG59IGZyb20gJ2dlb2pzb24nXG5cbi8qKlxuICogU3BsaXQgYWxsIE11bHRpUG9seWdvbiBpbnRvIFBvbHlnb24uIEFueSBwcm9wZXJ0aWVzLCBvdGhlciB0aGFuXG4gKiAnY29vcmRpbmF0ZXMnLCBvZiB0aGUgTXVsdGlQb2x5Z29ucyB3aWxsIGJlIGxvc3QuXG4gKlxuICogTk9URTogTXVsdGlQb2x5Z29ucyBpbiBhIEdlb21ldHJ5Q29sbGVjdGlvbiB3aWxsIG5vdCBiZSBzcGxpdC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHNwbGl0TXVsdGlQb2x5Z29ucyhmZWF0dXJlQ29sbGVjdGlvbjogRmVhdHVyZUNvbGxlY3Rpb24pOiB2b2lkIHtcbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBmZWF0dXJlQ29sbGVjdGlvbi5mZWF0dXJlcy5sZW5ndGg7IGkrKykge1xuICAgIGlmIChmZWF0dXJlQ29sbGVjdGlvbi5mZWF0dXJlc1tpXSkge1xuICAgICAgY29uc3QgZ2VvbWV0cnkgPSBmZWF0dXJlQ29sbGVjdGlvbi5mZWF0dXJlc1tpXS5nZW9tZXRyeVxuICAgICAgaWYgKGdlb21ldHJ5LnR5cGUgPT09ICdNdWx0aVBvbHlnb24nKSB7XG4gICAgICAgIGNvbnN0IGZlYXR1cmVzID0gc3BsaXRNdWx0UG9seWdvbihnZW9tZXRyeSkubWFwKHAgPT4gKHtcbiAgICAgICAgICB0eXBlOiAnRmVhdHVyZScsXG4gICAgICAgICAgZ2VvbWV0cnk6IHAsXG4gICAgICAgICAgcHJvcGVydGllczogeyB9LFxuICAgICAgICB9IGFzIEZlYXR1cmUpKVxuICAgICAgICBmZWF0dXJlQ29sbGVjdGlvbi5mZWF0dXJlcy5zcGxpY2UoaSwgMSwgLi4uZmVhdHVyZXMpXG4gICAgICAgIGkgKz0gTWF0aC5tYXgoZmVhdHVyZXMubGVuZ3RoIC0gMSwgMClcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuZnVuY3Rpb24gc3BsaXRNdWx0UG9seWdvbihtdWx0aVBvbHlnb246IE11bHRpUG9seWdvbik6IFBvbHlnb25bXSB7XG4gIHJldHVybiBtdWx0aVBvbHlnb24uY29vcmRpbmF0ZXMubWFwKGMgPT4gKHtcbiAgICB0eXBlOiAnUG9seWdvbicsXG4gICAgY29vcmRpbmF0ZXM6IGMsXG4gIH0pKVxufVxuIl19
@@ -2,4 +2,4 @@ export const CURRENT_WIDGET_PREFERENCES_VERSION = 1;
2
2
  export const EMPTY_WIDGET_PREFERENCES = {
3
3
  version: 1,
4
4
  };
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0LXByZWZlcmVuY2VzLm1vZGVscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi93aWRnZXQvcHJlZmVyZW5jZXMvd2lkZ2V0LXByZWZlcmVuY2VzLm1vZGVscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFTQSxNQUFNLENBQUMsTUFBTSxrQ0FBa0MsR0FBRyxDQUFDLENBQUE7QUFFbkQsTUFBTSxDQUFDLE1BQU0sd0JBQXdCLEdBQTZCO0lBQ2hFLE9BQU8sRUFBRSxDQUFDO0NBQ1gsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRoZVNlYW1QcmVmZXJlbmNlc0Jhc2UgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vc2VydmljZXMnXHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFRoZVNlYW1XaWRnZXRQcmVmZXJlbmNlc192MSBleHRlbmRzIFRoZVNlYW1QcmVmZXJlbmNlc0Jhc2Uge1xyXG4gIHZlcnNpb246IDFcclxuICBjb2xsYXBzZWQ/OiBib29sZWFuXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIFRoZVNlYW1XaWRnZXRQcmVmZXJlbmNlcyA9IFRoZVNlYW1XaWRnZXRQcmVmZXJlbmNlc192MVxyXG5cclxuZXhwb3J0IGNvbnN0IENVUlJFTlRfV0lER0VUX1BSRUZFUkVOQ0VTX1ZFUlNJT04gPSAxXHJcblxyXG5leHBvcnQgY29uc3QgRU1QVFlfV0lER0VUX1BSRUZFUkVOQ0VTOiBUaGVTZWFtV2lkZ2V0UHJlZmVyZW5jZXMgPSB7XHJcbiAgdmVyc2lvbjogMSxcclxufVxyXG4iXX0=
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0LXByZWZlcmVuY2VzLm1vZGVscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi93aWRnZXQvcHJlZmVyZW5jZXMvd2lkZ2V0LXByZWZlcmVuY2VzLm1vZGVscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFTQSxNQUFNLENBQUMsTUFBTSxrQ0FBa0MsR0FBRyxDQUFDLENBQUE7QUFFbkQsTUFBTSxDQUFDLE1BQU0sd0JBQXdCLEdBQTZCO0lBQ2hFLE9BQU8sRUFBRSxDQUFDO0NBQ1gsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRoZVNlYW1QcmVmZXJlbmNlc0Jhc2UgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vc2VydmljZXMnXG5cbmV4cG9ydCBpbnRlcmZhY2UgVGhlU2VhbVdpZGdldFByZWZlcmVuY2VzX3YxIGV4dGVuZHMgVGhlU2VhbVByZWZlcmVuY2VzQmFzZSB7XG4gIHZlcnNpb246IDFcbiAgY29sbGFwc2VkPzogYm9vbGVhblxufVxuXG5leHBvcnQgdHlwZSBUaGVTZWFtV2lkZ2V0UHJlZmVyZW5jZXMgPSBUaGVTZWFtV2lkZ2V0UHJlZmVyZW5jZXNfdjFcblxuZXhwb3J0IGNvbnN0IENVUlJFTlRfV0lER0VUX1BSRUZFUkVOQ0VTX1ZFUlNJT04gPSAxXG5cbmV4cG9ydCBjb25zdCBFTVBUWV9XSURHRVRfUFJFRkVSRU5DRVM6IFRoZVNlYW1XaWRnZXRQcmVmZXJlbmNlcyA9IHtcbiAgdmVyc2lvbjogMSxcbn1cbiJdfQ==
@@ -75,4 +75,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
75
75
  type: Inject,
76
76
  args: [THESEAM_WIDGET_PREFERENCES_ACCESSOR]
77
77
  }] }]; } });
78
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0LXByZWZlcmVuY2VzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vd2lkZ2V0L3ByZWZlcmVuY2VzL3dpZGdldC1wcmVmZXJlbmNlcy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUM1RCxPQUFPLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQ3JDLE9BQU8sRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBRy9DLE9BQU8sRUFBRSxtQ0FBbUMsRUFBRSxNQUFNLDRCQUE0QixDQUFBO0FBQ2hGLE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSx3QkFBd0IsRUFBNEIsTUFBTSw2QkFBNkIsQ0FBQTs7O0FBSXBJLCtFQUErRTtBQUMvRSwyREFBMkQ7QUFFM0Qsc0NBQXNDO0FBRXRDLE1BQU0sT0FBTyx3QkFBd0I7SUFJbkMsWUFDbUIsbUJBQXFELEVBQ0wsY0FBMkM7UUFEM0Ysd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFrQztRQUNMLG1CQUFjLEdBQWQsY0FBYyxDQUE2QjtRQUp0RyxvQkFBZSxHQUFrRSxFQUFHLENBQUE7SUFLeEYsQ0FBQztJQUVFLGNBQWMsQ0FBQyxhQUFxQjtRQUN6QyxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsYUFBYSxDQUFDLElBQUksSUFBSSxDQUFDLGVBQWUsQ0FBQyxhQUFhLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFBO0lBQzlGLENBQUM7SUFFTSxTQUFTLENBQUMsYUFBcUI7UUFDcEMsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxDQUFBO0lBQzFELENBQUM7SUFFTSxRQUFRLENBQUMsYUFBcUI7UUFDbkMsT0FB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TixRQUFROzswQkFBSSxNQUFNOzJCQUFDLG1DQUFtQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnXHJcbmltcG9ydCB7IG1hcCwgdGFrZSwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXHJcblxyXG5pbXBvcnQgeyBUaGVTZWFtUHJlZmVyZW5jZXNBY2Nlc3NvciwgVGhlU2VhbVByZWZlcmVuY2VzQmFzZSwgVGhlU2VhbVByZWZlcmVuY2VzTWFuYWdlclNlcnZpY2UgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vc2VydmljZXMnXHJcbmltcG9ydCB7IFRIRVNFQU1fV0lER0VUX1BSRUZFUkVOQ0VTX0FDQ0VTU09SIH0gZnJvbSAnLi93aWRnZXQtcHJlZmVyZW5jZXMudG9rZW4nXHJcbmltcG9ydCB7IENVUlJFTlRfV0lER0VUX1BSRUZFUkVOQ0VTX1ZFUlNJT04sIEVNUFRZX1dJREdFVF9QUkVGRVJFTkNFUywgVGhlU2VhbVdpZGdldFByZWZlcmVuY2VzIH0gZnJvbSAnLi93aWRnZXQtcHJlZmVyZW5jZXMubW9kZWxzJ1xyXG5cclxudHlwZSBUaGVTZWFtV2lkZ2V0UHJlZmVyZW5jZXNQYXRjaCA9IE9taXQ8VGhlU2VhbVdpZGdldFByZWZlcmVuY2VzLCAndmVyc2lvbic+XHJcblxyXG4vLyBUT0RPOiBSZXRoaW5rIHRoaXMuIEkgb3JpZ2luYWxseSBpbXBsZW1lbnRlZCB0aGlzIHRvIGJlIHNoYXJlZCB3aWRnZXQncyB0aGVuXHJcbi8vIGNoYW5nZWQgaXQgdG8gYmUgcGVyIHdpZGdldCwgZm9yIHRoZSBhY2Nlc3NvciBpbmplY3Rpb24uXHJcblxyXG4vLyBASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBXaWRnZXRQcmVmZXJlbmNlc1NlcnZpY2Uge1xyXG5cclxuICBwcml2YXRlIF9wZW5kaW5nUGF0Y2hlczogeyBbcHJlZmVyZW5jZXNLZXk6IHN0cmluZ106IFRoZVNlYW1XaWRnZXRQcmVmZXJlbmNlc1BhdGNoW10gfSA9IHsgfVxyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgX3ByZWZlcmVuY2VzTWFuYWdlcjogVGhlU2VhbVByZWZlcmVuY2VzTWFuYWdlclNlcnZpY2UsXHJcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KFRIRVNFQU1fV0lER0VUX1BSRUZFUkVOQ0VTX0FDQ0VTU09SKSBwcml2YXRlIF9wcmVmc0FjY2Vzc29yPzogVGhlU2VhbVByZWZlcmVuY2VzQWNjZXNzb3JcclxuICApIHsgfVxyXG5cclxuICBwdWJsaWMgaXNQYXRjaFBlbmRpbmcocHJlZmVyZW5jZUtleTogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5fcGVuZGluZ1BhdGNoZXNbcHJlZmVyZW5jZUtleV0gJiYgdGhpcy5fcGVuZGluZ1BhdGNoZXNbcHJlZmVyZW5jZUtleV0ubGVuZ3RoID4gMFxyXG4gIH1cclxuXHJcbiAgcHVibGljIGlzUGVuZGluZyhwcmVmZXJlbmNlS2V5OiBzdHJpbmcpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl9wcmVmZXJlbmNlc01hbmFnZXIuaXNQZW5kaW5nKHByZWZlcmVuY2VLZXkpXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaXNMb2FkZWQocHJlZmVyZW5jZUtleTogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5fcHJlZmVyZW5jZXNNYW5hZ2VyLmlzTG9hZGVkKHByZWZlcmVuY2VLZXkpXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgcHJlZmVyZW5jZXMocHJlZmVyZW5jZUtleTogc3RyaW5nKTogT2JzZXJ2YWJsZTxUaGVTZWFtV2lkZ2V0UHJlZmVyZW5jZXM+IHtcclxuICAgIGlmICghdGhpcy5fcHJlZnNBY2Nlc3Nvcikge1xyXG4gICAgICByZXR1cm4gb2YoSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShFTVBUWV9XSURHRVRfUFJFRkVSRU5DRVMpKSlcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gdGhpcy5fcHJlZmVyZW5jZXNNYW5hZ2VyLnByZWZlcmVuY2VzKHByZWZlcmVuY2VLZXksIHRoaXMuX3ByZWZzQWNjZXNzb3IsIEVNUFRZX1dJREdFVF9QUkVGRVJFTkNFUykucGlwZShcclxuICAgICAgbWFwKHByZWZzID0+IHtcclxuICAgICAgICBpZiAodGhpcy5faXNWYWxpZFByZWZlcmVuY2VzKHByZWZzKSkge1xyXG4gICAgICAgICAgcmV0dXJuIHByZWZzXHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aHJvdyBFcnJvcihgUHJlZmVyZW5jZXMgZm9yIGtleSAnJHtwcmVmZXJlbmNlS2V5fScgaXMgbm90IGEgdmFsaWQgd2lkZ2V0IHByZWZlcmVuY2VzLmApXHJcbiAgICAgIH0pXHJcbiAgICApXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgcmVmcmVzaChwcmVmZXJlbmNlS2V5OiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIHRoaXMuX3ByZWZlcmVuY2VzTWFuYWdlci5yZWZyZXNoKHByZWZlcmVuY2VLZXkpXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgcGF0Y2hQcmVmZXJlbmNlcyhwcmVmZXJlbmNlS2V5OiBzdHJpbmcsIHByZWZlcmVuY2VzOiBUaGVTZWFtV2lkZ2V0UHJlZmVyZW5jZXNQYXRjaCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLl9wcmVmc0FjY2Vzc29yKSB7XHJcbiAgICAgIHJldHVyblxyXG4gICAgfVxyXG5cclxuICAgIGlmICghdGhpcy5fcGVuZGluZ1BhdGNoZXNbcHJlZmVyZW5jZUtleV0pIHtcclxuICAgICAgdGhpcy5fcGVuZGluZ1BhdGNoZXNbcHJlZmVyZW5jZUtleV0gPSBbXVxyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLl9wZW5kaW5nUGF0Y2hlc1twcmVmZXJlbmNlS2V5XS5sZW5ndGggPiAwKSB7XHJcbiAgICAgIHRoaXMuX3BlbmRpbmdQYXRjaGVzW3ByZWZlcmVuY2VLZXldLnB1c2gocHJlZmVyZW5jZXMpXHJcbiAgICAgIHJldHVyblxyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuX3BlbmRpbmdQYXRjaGVzW3ByZWZlcmVuY2VLZXldLnB1c2gocHJlZmVyZW5jZXMpXHJcblxyXG4gICAgdGhpcy5wcmVmZXJlbmNlcyhwcmVmZXJlbmNlS2V5KS5waXBlKFxyXG4gICAgICB0YWtlKDEpLFxyXG4gICAgICBtYXAocHJlZnMgPT4ge1xyXG4gICAgICAgIGNvbnN0IHBlbmRpbmdQYXRjaGVzID0gdGhpcy5fcGVuZGluZ1BhdGNoZXNbcHJlZmVyZW5jZUtleV1cclxuICAgICAgICB0aGlzLl9wZW5kaW5nUGF0Y2hlc1twcmVmZXJlbmNlS2V5XSA9IFtdXHJcbiAgICAgICAgY29uc3QgbmV3UHJlZnM6IFRoZVNlYW1XaWRnZXRQcmVmZXJlbmNlcyA9IHBlbmRpbmdQYXRjaGVzLnJlZHVjZSgoYWNjLCBwYXRjaCkgPT4ge1xyXG4gICAgICAgICAgcmV0dXJuIHsgLi4uYWNjLCAuLi5wYXRjaCB9XHJcbiAgICAgICAgfSwgcHJlZnMpIGFzIFRoZVNlYW1XaWRnZXRQcmVmZXJlbmNlcyAvLyBUeXBlc2NyaXB0IGlzbid0IHJlY29nbml6aW5nIHRoYXQgJ3ZlcnNpb24nIGlzIGluY2x1ZGVkIGluIHRoZSBpbml0aWFsIHZhbHVlLlxyXG5cclxuICAgICAgICBpZiAoIXRoaXMuX2lzVmFsaWRQcmVmZXJlbmNlcyhuZXdQcmVmcykpIHtcclxuICAgICAgICAgIHRocm93IEVycm9yKGBBdHRlbXB0ZWQgdG8gcGF0Y2ggcHJlZmVyZW5jZXMgZm9yIGtleSAnJHtwcmVmZXJlbmNlS2V5fScgd2l0aCBpbnZhbGlkIHByZWZlcmVuY2VzLmApXHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLl9wcmVmZXJlbmNlc01hbmFnZXIudXBkYXRlKHByZWZlcmVuY2VLZXksIG5ld1ByZWZzKVxyXG4gICAgICB9KSxcclxuICAgICAgdGFwKCgpID0+IHRoaXMucmVmcmVzaChwcmVmZXJlbmNlS2V5KSksXHJcbiAgICApLnN1YnNjcmliZSgpXHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9pc1ZhbGlkUHJlZmVyZW5jZXMocHJlZnM6IFRoZVNlYW1QcmVmZXJlbmNlc0Jhc2UpOiBwcmVmcyBpcyBUaGVTZWFtV2lkZ2V0UHJlZmVyZW5jZXMge1xyXG4gICAgcmV0dXJuIHByZWZzLnZlcnNpb24gPT09IENVUlJFTlRfV0lER0VUX1BSRUZFUkVOQ0VTX1ZFUlNJT05cclxuICB9XHJcblxyXG59XHJcbiJdfQ==
78
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0LXByZWZlcmVuY2VzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vd2lkZ2V0L3ByZWZlcmVuY2VzL3dpZGdldC1wcmVmZXJlbmNlcy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUM1RCxPQUFPLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQ3JDLE9BQU8sRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBRy9DLE9BQU8sRUFBRSxtQ0FBbUMsRUFBRSxNQUFNLDRCQUE0QixDQUFBO0FBQ2hGLE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSx3QkFBd0IsRUFBNEIsTUFBTSw2QkFBNkIsQ0FBQTs7O0FBSXBJLCtFQUErRTtBQUMvRSwyREFBMkQ7QUFFM0Qsc0NBQXNDO0FBRXRDLE1BQU0sT0FBTyx3QkFBd0I7SUFJbkMsWUFDbUIsbUJBQXFELEVBQ0wsY0FBMkM7UUFEM0Ysd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFrQztRQUNMLG1CQUFjLEdBQWQsY0FBYyxDQUE2QjtRQUp0RyxvQkFBZSxHQUFrRSxFQUFHLENBQUE7SUFLeEYsQ0FBQztJQUVFLGNBQWMsQ0FBQyxhQUFxQjtRQUN6QyxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsYUFBYSxDQUFDLElBQUksSUFBSSxDQUFDLGVBQWUsQ0FBQyxhQUFhLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFBO0lBQzlGLENBQUM7SUFFTSxTQUFTLENBQUMsYUFBcUI7UUFDcEMsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxDQUFBO0lBQzFELENBQUM7SUFFTSxRQUFRLENBQUMsYUFBcUI7UUFDbkMsT0FB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TixRQUFROzswQkFBSSxNQUFNOzJCQUFDLG1DQUFtQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHsgbWFwLCB0YWtlLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycydcblxuaW1wb3J0IHsgVGhlU2VhbVByZWZlcmVuY2VzQWNjZXNzb3IsIFRoZVNlYW1QcmVmZXJlbmNlc0Jhc2UsIFRoZVNlYW1QcmVmZXJlbmNlc01hbmFnZXJTZXJ2aWNlIH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL3NlcnZpY2VzJ1xuaW1wb3J0IHsgVEhFU0VBTV9XSURHRVRfUFJFRkVSRU5DRVNfQUNDRVNTT1IgfSBmcm9tICcuL3dpZGdldC1wcmVmZXJlbmNlcy50b2tlbidcbmltcG9ydCB7IENVUlJFTlRfV0lER0VUX1BSRUZFUkVOQ0VTX1ZFUlNJT04sIEVNUFRZX1dJREdFVF9QUkVGRVJFTkNFUywgVGhlU2VhbVdpZGdldFByZWZlcmVuY2VzIH0gZnJvbSAnLi93aWRnZXQtcHJlZmVyZW5jZXMubW9kZWxzJ1xuXG50eXBlIFRoZVNlYW1XaWRnZXRQcmVmZXJlbmNlc1BhdGNoID0gT21pdDxUaGVTZWFtV2lkZ2V0UHJlZmVyZW5jZXMsICd2ZXJzaW9uJz5cblxuLy8gVE9ETzogUmV0aGluayB0aGlzLiBJIG9yaWdpbmFsbHkgaW1wbGVtZW50ZWQgdGhpcyB0byBiZSBzaGFyZWQgd2lkZ2V0J3MgdGhlblxuLy8gY2hhbmdlZCBpdCB0byBiZSBwZXIgd2lkZ2V0LCBmb3IgdGhlIGFjY2Vzc29yIGluamVjdGlvbi5cblxuLy8gQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBXaWRnZXRQcmVmZXJlbmNlc1NlcnZpY2Uge1xuXG4gIHByaXZhdGUgX3BlbmRpbmdQYXRjaGVzOiB7IFtwcmVmZXJlbmNlc0tleTogc3RyaW5nXTogVGhlU2VhbVdpZGdldFByZWZlcmVuY2VzUGF0Y2hbXSB9ID0geyB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBfcHJlZmVyZW5jZXNNYW5hZ2VyOiBUaGVTZWFtUHJlZmVyZW5jZXNNYW5hZ2VyU2VydmljZSxcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KFRIRVNFQU1fV0lER0VUX1BSRUZFUkVOQ0VTX0FDQ0VTU09SKSBwcml2YXRlIF9wcmVmc0FjY2Vzc29yPzogVGhlU2VhbVByZWZlcmVuY2VzQWNjZXNzb3JcbiAgKSB7IH1cblxuICBwdWJsaWMgaXNQYXRjaFBlbmRpbmcocHJlZmVyZW5jZUtleTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3BlbmRpbmdQYXRjaGVzW3ByZWZlcmVuY2VLZXldICYmIHRoaXMuX3BlbmRpbmdQYXRjaGVzW3ByZWZlcmVuY2VLZXldLmxlbmd0aCA+IDBcbiAgfVxuXG4gIHB1YmxpYyBpc1BlbmRpbmcocHJlZmVyZW5jZUtleTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3ByZWZlcmVuY2VzTWFuYWdlci5pc1BlbmRpbmcocHJlZmVyZW5jZUtleSlcbiAgfVxuXG4gIHB1YmxpYyBpc0xvYWRlZChwcmVmZXJlbmNlS2V5OiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fcHJlZmVyZW5jZXNNYW5hZ2VyLmlzTG9hZGVkKHByZWZlcmVuY2VLZXkpXG4gIH1cblxuICBwdWJsaWMgcHJlZmVyZW5jZXMocHJlZmVyZW5jZUtleTogc3RyaW5nKTogT2JzZXJ2YWJsZTxUaGVTZWFtV2lkZ2V0UHJlZmVyZW5jZXM+IHtcbiAgICBpZiAoIXRoaXMuX3ByZWZzQWNjZXNzb3IpIHtcbiAgICAgIHJldHVybiBvZihKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KEVNUFRZX1dJREdFVF9QUkVGRVJFTkNFUykpKVxuICAgIH1cblxuICAgIHJldHVybiB0aGlzLl9wcmVmZXJlbmNlc01hbmFnZXIucHJlZmVyZW5jZXMocHJlZmVyZW5jZUtleSwgdGhpcy5fcHJlZnNBY2Nlc3NvciwgRU1QVFlfV0lER0VUX1BSRUZFUkVOQ0VTKS5waXBlKFxuICAgICAgbWFwKHByZWZzID0+IHtcbiAgICAgICAgaWYgKHRoaXMuX2lzVmFsaWRQcmVmZXJlbmNlcyhwcmVmcykpIHtcbiAgICAgICAgICByZXR1cm4gcHJlZnNcbiAgICAgICAgfVxuXG4gICAgICAgIHRocm93IEVycm9yKGBQcmVmZXJlbmNlcyBmb3Iga2V5ICcke3ByZWZlcmVuY2VLZXl9JyBpcyBub3QgYSB2YWxpZCB3aWRnZXQgcHJlZmVyZW5jZXMuYClcbiAgICAgIH0pXG4gICAgKVxuICB9XG5cbiAgcHVibGljIHJlZnJlc2gocHJlZmVyZW5jZUtleTogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5fcHJlZmVyZW5jZXNNYW5hZ2VyLnJlZnJlc2gocHJlZmVyZW5jZUtleSlcbiAgfVxuXG4gIHB1YmxpYyBwYXRjaFByZWZlcmVuY2VzKHByZWZlcmVuY2VLZXk6IHN0cmluZywgcHJlZmVyZW5jZXM6IFRoZVNlYW1XaWRnZXRQcmVmZXJlbmNlc1BhdGNoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLl9wcmVmc0FjY2Vzc29yKSB7XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBpZiAoIXRoaXMuX3BlbmRpbmdQYXRjaGVzW3ByZWZlcmVuY2VLZXldKSB7XG4gICAgICB0aGlzLl9wZW5kaW5nUGF0Y2hlc1twcmVmZXJlbmNlS2V5XSA9IFtdXG4gICAgfVxuXG4gICAgaWYgKHRoaXMuX3BlbmRpbmdQYXRjaGVzW3ByZWZlcmVuY2VLZXldLmxlbmd0aCA+IDApIHtcbiAgICAgIHRoaXMuX3BlbmRpbmdQYXRjaGVzW3ByZWZlcmVuY2VLZXldLnB1c2gocHJlZmVyZW5jZXMpXG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICB0aGlzLl9wZW5kaW5nUGF0Y2hlc1twcmVmZXJlbmNlS2V5XS5wdXNoKHByZWZlcmVuY2VzKVxuXG4gICAgdGhpcy5wcmVmZXJlbmNlcyhwcmVmZXJlbmNlS2V5KS5waXBlKFxuICAgICAgdGFrZSgxKSxcbiAgICAgIG1hcChwcmVmcyA9PiB7XG4gICAgICAgIGNvbnN0IHBlbmRpbmdQYXRjaGVzID0gdGhpcy5fcGVuZGluZ1BhdGNoZXNbcHJlZmVyZW5jZUtleV1cbiAgICAgICAgdGhpcy5fcGVuZGluZ1BhdGNoZXNbcHJlZmVyZW5jZUtleV0gPSBbXVxuICAgICAgICBjb25zdCBuZXdQcmVmczogVGhlU2VhbVdpZGdldFByZWZlcmVuY2VzID0gcGVuZGluZ1BhdGNoZXMucmVkdWNlKChhY2MsIHBhdGNoKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIHsgLi4uYWNjLCAuLi5wYXRjaCB9XG4gICAgICAgIH0sIHByZWZzKSBhcyBUaGVTZWFtV2lkZ2V0UHJlZmVyZW5jZXMgLy8gVHlwZXNjcmlwdCBpc24ndCByZWNvZ25pemluZyB0aGF0ICd2ZXJzaW9uJyBpcyBpbmNsdWRlZCBpbiB0aGUgaW5pdGlhbCB2YWx1ZS5cblxuICAgICAgICBpZiAoIXRoaXMuX2lzVmFsaWRQcmVmZXJlbmNlcyhuZXdQcmVmcykpIHtcbiAgICAgICAgICB0aHJvdyBFcnJvcihgQXR0ZW1wdGVkIHRvIHBhdGNoIHByZWZlcmVuY2VzIGZvciBrZXkgJyR7cHJlZmVyZW5jZUtleX0nIHdpdGggaW52YWxpZCBwcmVmZXJlbmNlcy5gKVxuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5fcHJlZmVyZW5jZXNNYW5hZ2VyLnVwZGF0ZShwcmVmZXJlbmNlS2V5LCBuZXdQcmVmcylcbiAgICAgIH0pLFxuICAgICAgdGFwKCgpID0+IHRoaXMucmVmcmVzaChwcmVmZXJlbmNlS2V5KSksXG4gICAgKS5zdWJzY3JpYmUoKVxuICB9XG5cbiAgcHJpdmF0ZSBfaXNWYWxpZFByZWZlcmVuY2VzKHByZWZzOiBUaGVTZWFtUHJlZmVyZW5jZXNCYXNlKTogcHJlZnMgaXMgVGhlU2VhbVdpZGdldFByZWZlcmVuY2VzIHtcbiAgICByZXR1cm4gcHJlZnMudmVyc2lvbiA9PT0gQ1VSUkVOVF9XSURHRVRfUFJFRkVSRU5DRVNfVkVSU0lPTlxuICB9XG5cbn1cbiJdfQ==
@@ -1,3 +1,3 @@
1
1
  import { InjectionToken } from '@angular/core';
2
2
  export const THESEAM_WIDGET_PREFERENCES_ACCESSOR = new InjectionToken('TheSeamWidgetPreferencesAccessor');
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0LXByZWZlcmVuY2VzLnRva2VuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL3dpZGdldC9wcmVmZXJlbmNlcy93aWRnZXQtcHJlZmVyZW5jZXMudG9rZW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUk5QyxNQUFNLENBQUMsTUFBTSxtQ0FBbUMsR0FBRyxJQUFJLGNBQWMsQ0FDbkUsa0NBQWtDLENBQ25DLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXHJcblxyXG5pbXBvcnQgeyBUaGVTZWFtUHJlZmVyZW5jZXNBY2Nlc3NvciB9IGZyb20gJ0B0aGVzZWFtL3VpLWNvbW1vbi9zZXJ2aWNlcydcclxuXHJcbmV4cG9ydCBjb25zdCBUSEVTRUFNX1dJREdFVF9QUkVGRVJFTkNFU19BQ0NFU1NPUiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxUaGVTZWFtUHJlZmVyZW5jZXNBY2Nlc3Nvcj4oXHJcbiAgJ1RoZVNlYW1XaWRnZXRQcmVmZXJlbmNlc0FjY2Vzc29yJ1xyXG4pXHJcbiJdfQ==
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0LXByZWZlcmVuY2VzLnRva2VuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL3dpZGdldC9wcmVmZXJlbmNlcy93aWRnZXQtcHJlZmVyZW5jZXMudG9rZW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUk5QyxNQUFNLENBQUMsTUFBTSxtQ0FBbUMsR0FBRyxJQUFJLGNBQWMsQ0FDbkUsa0NBQWtDLENBQ25DLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5cbmltcG9ydCB7IFRoZVNlYW1QcmVmZXJlbmNlc0FjY2Vzc29yIH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL3NlcnZpY2VzJ1xuXG5leHBvcnQgY29uc3QgVEhFU0VBTV9XSURHRVRfUFJFRkVSRU5DRVNfQUNDRVNTT1IgPSBuZXcgSW5qZWN0aW9uVG9rZW48VGhlU2VhbVByZWZlcmVuY2VzQWNjZXNzb3I+KFxuICAnVGhlU2VhbVdpZGdldFByZWZlcmVuY2VzQWNjZXNzb3InXG4pXG4iXX0=
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0Lm1vZGVscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi93aWRnZXQvd2lkZ2V0Lm1vZGVscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiXHJcbmV4cG9ydCBpbnRlcmZhY2UgVGhlU2VhbVdpZGdldERhdGEge1xyXG4gIHdpZGdldElkPzogc3RyaW5nXHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgVGhlU2VhbVdpZGdldERlZmF1bHRzIHtcclxuICBjYW5Db2xsYXBzZT86IGJvb2xlYW5cclxuICBjb2xsYXBzZWQ/OiBib29sZWFuXHJcbn1cclxuIl19
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0Lm1vZGVscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi93aWRnZXQvd2lkZ2V0Lm1vZGVscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiXG5leHBvcnQgaW50ZXJmYWNlIFRoZVNlYW1XaWRnZXREYXRhIHtcbiAgd2lkZ2V0SWQ/OiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUaGVTZWFtV2lkZ2V0RGVmYXVsdHMge1xuICBjYW5Db2xsYXBzZT86IGJvb2xlYW5cbiAgY29sbGFwc2VkPzogYm9vbGVhblxufVxuIl19