@esolve/ng-esolve-connect 0.122.0 → 0.124.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (29) hide show
  1. package/esm2022/lib/locations/esolve-locations.service.mjs +34 -16
  2. package/esm2022/lib/locations/interfaces/esolve-location-geo-options.interface.mjs +2 -0
  3. package/esm2022/lib/locations/interfaces/index.mjs +2 -1
  4. package/esm2022/lib/transactions/classes/esolve-transaction-approval-result.model.mjs +11 -0
  5. package/esm2022/lib/transactions/classes/esolve-transaction.model.mjs +3 -1
  6. package/esm2022/lib/transactions/classes/index.mjs +2 -1
  7. package/esm2022/lib/transactions/esolve-transactions.service.mjs +32 -2
  8. package/esm2022/lib/transactions/interfaces/esolve-transaction-approval.interface.mjs +2 -0
  9. package/esm2022/lib/transactions/interfaces/esolve-transaction-options.interface.mjs +1 -1
  10. package/esm2022/lib/transactions/interfaces/esolve-transaction-record.interface.mjs +1 -1
  11. package/esm2022/lib/transactions/interfaces/index.mjs +2 -1
  12. package/esm2022/lib/transactions/types/esolve-transaction-approval-state.type.mjs +2 -0
  13. package/esm2022/lib/transactions/types/index.mjs +2 -1
  14. package/fesm2022/esolve-ng-esolve-connect.mjs +75 -16
  15. package/fesm2022/esolve-ng-esolve-connect.mjs.map +1 -1
  16. package/lib/locations/esolve-locations.service.d.ts +3 -1
  17. package/lib/locations/interfaces/esolve-location-geo-options.interface.d.ts +7 -0
  18. package/lib/locations/interfaces/index.d.ts +1 -0
  19. package/lib/transactions/classes/esolve-transaction-approval-result.model.d.ts +5 -0
  20. package/lib/transactions/classes/esolve-transaction.model.d.ts +2 -0
  21. package/lib/transactions/classes/index.d.ts +1 -0
  22. package/lib/transactions/esolve-transactions.service.d.ts +10 -2
  23. package/lib/transactions/interfaces/esolve-transaction-approval.interface.d.ts +7 -0
  24. package/lib/transactions/interfaces/esolve-transaction-options.interface.d.ts +3 -1
  25. package/lib/transactions/interfaces/esolve-transaction-record.interface.d.ts +2 -0
  26. package/lib/transactions/interfaces/index.d.ts +1 -0
  27. package/lib/transactions/types/esolve-transaction-approval-state.type.d.ts +1 -0
  28. package/lib/transactions/types/index.d.ts +1 -0
  29. package/package.json +1 -1
@@ -79,21 +79,14 @@ export class EsolveLocationsService {
79
79
  *
80
80
  * @returns An `Observable` with an array of stock locations
81
81
  */
82
- getStockLocationsGeo(addresses_id = 0, latitude = 0, longitude = 0) {
83
- return this.http
84
- .get(`${this.config.api_url}/get-locations-geo.php`, {
85
- params: {
86
- addresses_id,
87
- latitude,
88
- longitude,
89
- },
90
- })
91
- .pipe(map((response) => {
92
- if (response.records === undefined) {
93
- throw response;
94
- }
95
- return this.processStockLocations(response.records);
96
- }));
82
+ getStockLocationsGeo(addresses_id = 0, latitude = 0, longitude = 0, dispatches_stock, include_on_store_locator) {
83
+ return this.getLocationsGeoRecords({
84
+ addresses_id,
85
+ latitude,
86
+ longitude,
87
+ dispatches_stock,
88
+ include_on_store_locator,
89
+ });
97
90
  }
98
91
  getLocationFilters(options) {
99
92
  const params = new HttpParams({
@@ -130,6 +123,22 @@ export class EsolveLocationsService {
130
123
  return filters;
131
124
  }));
132
125
  }
126
+ getLocationsGeoRecords(options) {
127
+ let params = new HttpParams();
128
+ if (options) {
129
+ params = this.appendParams(options, params);
130
+ }
131
+ return this.http
132
+ .get(`${this.config.api_url}/get-locations-geo.php`, {
133
+ params,
134
+ })
135
+ .pipe(map((response) => {
136
+ if (response.records === undefined) {
137
+ throw response;
138
+ }
139
+ return this.processStockLocations(response.records);
140
+ }));
141
+ }
133
142
  /**
134
143
  * Retrieves location records from HTTP params.
135
144
  * @param params HTTP client parameters
@@ -158,6 +167,15 @@ export class EsolveLocationsService {
158
167
  processLocation(record) {
159
168
  return new EsolveLocation(record);
160
169
  }
170
+ appendParams(data, params = new HttpParams()) {
171
+ for (const key in data) {
172
+ const value = data[key];
173
+ if (value !== undefined && value !== null) {
174
+ params = params.append(key, value);
175
+ }
176
+ }
177
+ return params;
178
+ }
161
179
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: EsolveLocationsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
162
180
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: EsolveLocationsService, providedIn: 'root' }); }
163
181
  }
@@ -167,4 +185,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
167
185
  providedIn: 'root',
168
186
  }]
169
187
  }] });
170
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLWxvY2F0aW9ucy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9uZy1lc29sdmUtY29ubmVjdC9zcmMvbGliL2xvY2F0aW9ucy9lc29sdmUtbG9jYXRpb25zLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUM5RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUduRCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFckMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sU0FBUyxDQUFDO0FBRzlDLE9BQU8sRUFDSCxtQkFBbUIsRUFHbkIsMEJBQTBCLEVBQzFCLGlCQUFpQixFQUNqQix3QkFBd0IsR0FDM0IsTUFBTSxtQkFBbUIsQ0FBQztBQU8zQixPQUFPLEVBQUUsY0FBYyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sV0FBVyxDQUFDOztBQUsvRCxNQUFNLE9BQU8sc0JBQXNCO0lBSG5DO1FBTXFCLFdBQU0sR0FBRyxNQUFNLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUNyQyxTQUFJLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0tBc085QztJQXBPRzs7OztPQUlHO0lBQ0ksaUJBQWlCLENBQ3BCLE9BQStCO1FBRS9CLElBQUksTUFBTSxHQUFHLElBQUksVUFBVSxFQUFFLENBQUM7UUFFOUIsSUFBSSxPQUFPLEVBQUUsQ0FBQztZQUNWLElBQUksT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDO2dCQUNmLE1BQU0sR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDOUMsQ0FBQztZQUVELElBQUksT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDO2dCQUNm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S0c7SUFDSyxxQkFBcUIsQ0FDekIsT0FBa0M7UUFFbEMsTUFBTSxTQUFTLEdBQXdCLEVBQUUsQ0FBQztRQUUxQyxLQUFLLE1BQU0sTUFBTSxJQUFJLE9BQU8sRUFBRSxDQUFDO1lBQzNCLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1FBQ2pELENBQUM7UUFFRCxPQUFPLFNBQVMsQ0FBQztJQUNyQixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNLLGVBQWUsQ0FDbkIsTUFBK0I7UUFFL0IsT0FBTyxJQUFJLGNBQWMsQ0FBSSxNQUFNLENBQUMsQ0FBQztJQUN6QyxDQUFDOzhHQXpPUSxzQkFBc0I7a0hBQXRCLHNCQUFzQixjQUZuQixNQUFNOzsyRkFFVCxzQkFBc0I7a0JBSGxDLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCwgSHR0cFBhcmFtcyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEluamVjdGFibGUsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IEVzb2x2ZUNvbmZpZ1NlcnZpY2UgfSBmcm9tICcuLi9jb3JlJztcbmltcG9ydCB7IEVzb2x2ZUdldFJlc3BvbnNlIH0gZnJvbSAnLi4vc2hhcmVkL3Jlc3BvbnNlJztcbmltcG9ydCB7IEVzb2x2ZUN1c3RvbUZpZWxkcyB9IGZyb20gJy4uL3NoYXJlZC9jdXN0b20tZmllbGRzJztcbmltcG9ydCB7XG4gICAgRXNvbHZlRmlsdGVyRmFjdG9yeSxcbiAgICBFc29sdmVGaWx0ZXJMaXN0LFxuICAgIEVzb2x2ZUZpbHRlclJlY29yZExpc3QsXG4gICAgRXNvbHZlTXVsdGlwbGVTZWxlY3RGaWx0ZXIsXG4gICAgRXNvbHZlUmFuZ2VGaWx0ZXIsXG4gICAgRXNvbHZlU2luZ2xlU2VsZWN0RmlsdGVyLFxufSBmcm9tICcuLi9zaGFyZWQvZmlsdGVycyc7XG5cbmltcG9ydCB7XG4gICAgRXNvbHZlTG9jYXRpb25GaWx0ZXJPcHRpb25zLFxuICAgIEVzb2x2ZUxvY2F0aW9uT3B0aW9ucyxcbiAgICBFc29sdmVMb2NhdGlvblJlY29yZCxcbn0gZnJvbSAnLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IEVzb2x2ZUxvY2F0aW9uLCBFc29sdmVMb2NhdGlvbkxpc3QgfSBmcm9tICcuL2NsYXNzZXMnO1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBFc29sdmVMb2NhdGlvbnNTZXJ2aWNlPFxuICAgIFQgZXh0ZW5kcyBFc29sdmVDdXN0b21GaWVsZHMgPSBFc29sdmVDdXN0b21GaWVsZHMsXG4+IHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNvbmZpZyA9IGluamVjdChFc29sdmVDb25maWdTZXJ2aWNlKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGh0dHAgPSBpbmplY3QoSHR0cENsaWVudCk7XG5cbiAgICAvKipcbiAgICAgKiBSZXRyaWV2ZXMgYSBsaXN0IG9mIHN0b2NrIGxvY2F0aW9uc1xuICAgICAqXG4gICAgICogQHJldHVybnMgQW4gYE9ic2VydmFibGVgIHdpdGggYW4gYXJyYXkgb2Ygc3RvY2sgbG9jYXRpb25zXG4gICAgICovXG4gICAgcHVibGljIGdldFN0b2NrTG9jYXRpb25zKFxuICAgICAgICBvcHRpb25zPzogRXNvbHZlTG9jYXRpb25PcHRpb25zLFxuICAgICk6IE9ic2VydmFibGU8RXNvbHZlTG9jYXRpb25MaXN0PFQ+PiB7XG4gICAgICAgIGxldCBwYXJhbXMgPSBuZXcgSHR0cFBhcmFtcygpO1xuXG4gICAgICAgIGlmIChvcHRpb25zKSB7XG4gICAgICAgICAgICBpZiAob3B0aW9ucy5wYWdlKSB7XG4gICAgICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldCgncGFnZScsIG9wdGlvbnMucGFnZSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChvcHRpb25zLnJvd3MpIHtcbiAgICAgICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdyb3dzJywgb3B0aW9ucy5yb3dzKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKG9wdGlvbnMuc29ydCkge1xuICAgICAgICAgICAgICAgIGNvbnN0IHNvcnQgPSBvcHRpb25zLnNvcnQ7XG5cbiAgICAgICAgICAgICAgICBpZiAoc29ydC5maWVsZCkge1xuICAgICAgICAgICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdzb3J0Jywgc29ydC5maWVsZCk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaWYgKHNvcnQub3JkZXIpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldCgnb3JkZXInLCBzb3J0Lm9yZGVyKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChvcHRpb25zLnNlYXJjaF9waHJhc2UpIHtcbiAgICAgICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdzZWFyY2hfcGhyYXNlJywgb3B0aW9ucy5zZWFyY2hfcGhyYXNlKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKG9wdGlvbnMuaXNfYWN0aXZlKSB7XG4gICAgICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldCgnaXNfYWN0aXZlJywgb3B0aW9ucy5pc19hY3RpdmUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAob3B0aW9ucy5kaXNwYXRjaGVzX3N0b2NrKSB7XG4gICAgICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldChcbiAgICAgICAgICAgICAgICAgICAgJ2Rpc3BhdGNoZXNfc3RvY2snLFxuICAgICAgICAgICAgICAgICAgICBvcHRpb25zLmRpc3BhdGNoZXNfc3RvY2ssXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKG9wdGlvbnMucHJvdmluY2UpIHtcbiAgICAgICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdwcm92aW5jZScsIG9wdGlvbnMucHJvdmluY2UpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAob3B0aW9ucy5jb3VudHJ5KSB7XG4gICAgICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldCgnY291bnRyeScsIG9wdGlvbnMuY291bnRyeSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChvcHRpb25zLmZpbHRlcnMpIHtcbiAgICAgICAgICAgICAgICBsZXQgZmlsdGVycyA9IG9wdGlvbnMuZmlsdGVycztcblxuICAgICAgICAgICAgICAgIGlmICghQXJyYXkuaXNBcnJheShmaWx0ZXJzKSkge1xuICAgICAgICAgICAgICAgICAgICBmaWx0ZXJzID0gRXNvbHZlRmlsdGVyRmFjdG9yeS5jb3ZlcnRGcm9tT2JqKGZpbHRlcnMpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHBhcmFtcyA9IEVzb2x2ZUZpbHRlckZhY3RvcnkuY29udmVydFRvSHR0cFBhcmFtcyhcbiAgICAgICAgICAgICAgICAgICAgZmlsdGVycyxcbiAgICAgICAgICAgICAgICAgICAgcGFyYW1zLFxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhpcy5nZXRMb2NhdGlvblJlY29yZHMocGFyYW1zKS5waXBlKFxuICAgICAgICAgICAgbWFwKChyZXNwb25zZSkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAgICAgcmVzcG9uc2UucmVjb3JkcyA9PT0gdW5kZWZpbmVkIHx8XG4gICAgICAgICAgICAgICAgICAgIHJlc3BvbnNlLnJlY29yZHMubGVuZ3RoIDw9IDBcbiAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgcmVzcG9uc2U7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgY29uc3QgbG9jYXRpb25zOiBFc29sdmVMb2NhdGlvbjxUPltdID0gW107XG5cbiAgICAgICAgICAgICAgICByZXNwb25zZS5yZWNvcmRzLmZvckVhY2goKGxvY2F0aW9uUmVjb3JkKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGxvY2F0aW9ucy5wdXNoKHRoaXMucHJvY2Vzc0xvY2F0aW9uKGxvY2F0aW9uUmVjb3JkKSk7XG4gICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgICAgICByZXR1cm4gbmV3IEVzb2x2ZUxvY2F0aW9uTGlzdChcbiAgICAgICAgICAgICAgICAgICAgbG9jYXRpb25zLFxuICAgICAgICAgICAgICAgICAgICArcmVzcG9uc2UuYWRkaXRpb25hbF9kYXRhLnRvdGFsX3JlY29yZHMsXG4gICAgICAgICAgICAgICAgICAgIG9wdGlvbnM/LnBhZ2UgPz8gMCxcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfSksXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0cmlldmVzIGEgbGlzdCBvZiBzdG9jayBsb2NhdGlvbnMgdXNpbmcgdGhlIGFkZHJlc3NfaWQgYXMgcGFyYW1ldGVyIG9yIHRoZSBsYXRpdHVkZSBhbmQgbG9uZ2l0dWRlLlxuICAgICAqIFNldCB0aGUgYWRkcmVzc2VzX2lkIHRvIDAgYW5kIHRoZSBncHMgY29vcmRpbmF0ZXMgaW4gb3JkZXIgdG8gcmV0cmlldmUgdGhlIGxvY2F0aW9ucyBsaXN0IHdoZW4gdGhlIGFkZHJlc3MgaXNuJ3RcbiAgICAgKiB5ZXQgc2F2ZWQuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gYWRkcmVzc2VzX2lkIGlmIHN1cHBsaWVkLCB0aGUgbGF0aXR1ZGUgYW5kIGxvbmdpdHVkZSBvbiB0aGUgYWRkcmVzcyB3aWxsIGJlIHVzZWQuXG4gICAgICogQHBhcmFtIGxhdGl0dWRlIGlmIHN1cHBsaWVkIGFuZCBhZGRyZXNzX2lkID4gMCwgdGhlIHZhbHVlIGlzIGlnbm9yZWQuXG4gICAgICogQHBhcmFtIGxvbmdpdHVkZSBpZiBzdXBwbGllZCBhbmQgYWRkcmVzc19pZCA+IDAsIHRoZSB2YWx1ZSBpcyBpZ25vcmVkLlxuICAgICAqXG4gICAgICogQHJldHVybnMgQW4gYE9ic2VydmFibGVgIHdpdGggYW4gYXJyYXkgb2Ygc3RvY2sgbG9jYXRpb25zXG4gICAgICovXG4gICAgcHVibGljIGdldFN0b2NrTG9jYXRpb25zR2VvKFxuICAgICAgICBhZGRyZXNzZXNfaWQgPSAwLFxuICAgICAgICBsYXRpdHVkZSA9IDAsXG4gICAgICAgIGxvbmdpdHVkZSA9IDAsXG4gICAgKTogT2JzZXJ2YWJsZTxFc29sdmVMb2NhdGlvbjxUPltdPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgICAgICAgIC5nZXQ8RXNvbHZlR2V0UmVzcG9uc2U8RXNvbHZlTG9jYXRpb25SZWNvcmQ8VD5bXT4+KFxuICAgICAgICAgICAgICAgIGAke3RoaXMuY29uZmlnLmFwaV91cmx9L2dldC1sb2NhdGlvbnMtZ2VvLnBocGAsXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBwYXJhbXM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFkZHJlc3Nlc19pZCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGxhdGl0dWRlLFxuICAgICAgICAgICAgICAgICAgICAgICAgbG9uZ2l0dWRlLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAoKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChyZXNwb25zZS5yZWNvcmRzID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IHJlc3BvbnNlO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMucHJvY2Vzc1N0b2NrTG9jYXRpb25zKHJlc3BvbnNlLnJlY29yZHMpO1xuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0TG9jYXRpb25GaWx0ZXJzKFxuICAgICAgICBvcHRpb25zOiBFc29sdmVMb2NhdGlvbkZpbHRlck9wdGlvbnMsXG4gICAgKTogT2JzZXJ2YWJsZTxFc29sdmVGaWx0ZXJMaXN0PiB7XG4gICAgICAgIGNvbnN0IHBhcmFtcyA9IG5ldyBIdHRwUGFyYW1zKHtcbiAgICAgICAgICAgIGZyb21PYmplY3Q6IHtcbiAgICAgICAgICAgICAgICBjb3VudHJ5OiBvcHRpb25zLmNvdW50cnkgPz8gJycsXG4gICAgICAgICAgICAgICAgcHJvdmluY2U6IG9wdGlvbnMucHJvdmluY2UgPz8gJycsXG4gICAgICAgICAgICAgICAgZmllbGRzOiBvcHRpb25zLmZpZWxkcy5qb2luKCcsJyksXG4gICAgICAgICAgICB9LFxuICAgICAgICB9KTtcblxuICAgICAgICByZXR1cm4gdGhpcy5odHRwXG4gICAgICAgICAgICAuZ2V0PEVzb2x2ZUdldFJlc3BvbnNlPEVzb2x2ZUZpbHRlclJlY29yZExpc3Q+PihcbiAgICAgICAgICAgICAgICBgJHt0aGlzLmNvbmZpZy5hcGlfdXJsfS9nZXQtbG9jYXRpb24tZmlsdGVycy5waHBgLFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgcGFyYW1zLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAoKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChyZXNwb25zZS5yZWNvcmRzID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IHJlc3BvbnNlO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZmlsdGVycyA9IFtdO1xuXG4gICAgICAgICAgICAgICAgICAgIGZvciAoY29uc3QgcmVjb3JkIG9mIHJlc3BvbnNlLnJlY29yZHMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCBmaWx0ZXIgPSBudWxsO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVjb3JkLnR5cGUgPT09ICdyYW5nZScpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXIgPSBuZXcgRXNvbHZlUmFuZ2VGaWx0ZXIoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlY29yZC5maWVsZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgK3JlY29yZC5taW4sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICtyZWNvcmQubWF4LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHJlY29yZC50eXBlID09PSAnc2luZ2xlJykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbHRlciA9IG5ldyBFc29sdmVTaW5nbGVTZWxlY3RGaWx0ZXIoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlY29yZC5maWVsZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVjb3JkLnZhbHVlcyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChyZWNvcmQudHlwZSA9PT0gJ211bHRpcGxlJykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbHRlciA9IG5ldyBFc29sdmVNdWx0aXBsZVNlbGVjdEZpbHRlcihcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVjb3JkLmZpZWxkLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWNvcmQudmFsdWVzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChmaWx0ZXIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXJzLnB1c2goZmlsdGVyKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBmaWx0ZXJzO1xuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXRyaWV2ZXMgbG9jYXRpb24gcmVjb3JkcyBmcm9tIEhUVFAgcGFyYW1zLlxuICAgICAqIEBwYXJhbSBwYXJhbXMgSFRUUCBjbGllbnQgcGFyYW1ldGVyc1xuICAgICAqL1xuICAgIHByaXZhdGUgZ2V0TG9jYXRpb25SZWNvcmRzKFxuICAgICAgICBwYXJhbXM6IEh0dHBQYXJhbXMsXG4gICAgKTogT2JzZXJ2YWJsZTxFc29sdmVHZXRSZXNwb25zZTxFc29sdmVMb2NhdGlvblJlY29yZDxUPltdPj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLmdldDxFc29sdmVHZXRSZXNwb25zZTxFc29sdmVMb2NhdGlvblJlY29yZDxUPltdPj4oXG4gICAgICAgICAgICBgJHt0aGlzLmNvbmZpZy5hcGlfdXJsfS9nZXQtbG9jYXRpb25zLnBocGAsXG4gICAgICAgICAgICB7IHBhcmFtcyB9LFxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFByb2Nlc3NlcyB0aGUgZVNvbHZlIHN0b2NrIGxvY2F0aW9uIHJlY29yZHMuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gcmVjb3JkcyBSZWNvcmRzIHRvIHByb2Nlc3NcbiAgICAgKiBAcmV0dXJucyBBbiBhcnJheSBvZiBwcm9jZXNzZWQgc3RvY2sgbG9jYXRpb24gcmVjb3Jkc1xuICAgICAqL1xuICAgIHByaXZhdGUgcHJvY2Vzc1N0b2NrTG9jYXRpb25zKFxuICAgICAgICByZWNvcmRzOiBFc29sdmVMb2NhdGlvblJlY29yZDxUPltdLFxuICAgICk6IEVzb2x2ZUxvY2F0aW9uPFQ+W10ge1xuICAgICAgICBjb25zdCBsb2NhdGlvbnM6IEVzb2x2ZUxvY2F0aW9uPFQ+W10gPSBbXTtcblxuICAgICAgICBmb3IgKGNvbnN0IHJlY29yZCBvZiByZWNvcmRzKSB7XG4gICAgICAgICAgICBsb2NhdGlvbnMucHVzaCh0aGlzLnByb2Nlc3NMb2NhdGlvbihyZWNvcmQpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBsb2NhdGlvbnM7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHJvY2Vzc2VzIHRoZSBlU29sdmUgc3RvY2sgaXRlbSByZWNvcmQgYW5kIGNvbnZlcnRzIGl0IHRvIGFuIG9iamVjdC5cbiAgICAgKlxuICAgICAqIEBwYXJhbSByZWNvcmQgZVNvbHZlIHN0b2NrIGl0ZW0gcmVjb3JkXG4gICAgICovXG4gICAgcHJpdmF0ZSBwcm9jZXNzTG9jYXRpb24oXG4gICAgICAgIHJlY29yZDogRXNvbHZlTG9jYXRpb25SZWNvcmQ8VD4sXG4gICAgKTogRXNvbHZlTG9jYXRpb248VD4ge1xuICAgICAgICByZXR1cm4gbmV3IEVzb2x2ZUxvY2F0aW9uPFQ+KHJlY29yZCk7XG4gICAgfVxufVxuIl19
188
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLWxvY2F0aW9ucy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9uZy1lc29sdmUtY29ubmVjdC9zcmMvbGliL2xvY2F0aW9ucy9lc29sdmUtbG9jYXRpb25zLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUM5RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUduRCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFckMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sU0FBUyxDQUFDO0FBRzlDLE9BQU8sRUFDSCxtQkFBbUIsRUFHbkIsMEJBQTBCLEVBQzFCLGlCQUFpQixFQUNqQix3QkFBd0IsR0FDM0IsTUFBTSxtQkFBbUIsQ0FBQztBQVEzQixPQUFPLEVBQUUsY0FBYyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sV0FBVyxDQUFDOztBQUsvRCxNQUFNLE9BQU8sc0JBQXNCO0lBSG5DO1FBTXFCLFdBQU0sR0FBRyxNQUFNLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUNyQyxTQUFJLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0tBbVE5QztJQWpRRzs7OztPQUlHO0lBQ0ksaUJBQWlCLENBQ3BCLE9BQStCO1FBRS9CLElBQUksTUFBTSxHQUFHLElBQUksVUFBVSxFQUFFLENBQUM7UUFFOUIsSUFBSSxPQUFPLEVBQUUsQ0FBQztZQUNWLElBQUksT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDO2dCQUNmLE1BQU0sR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDOUMsQ0FBQztZQUVELElBQUksT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDO2dCQUNm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TTs7MkZBRVQsc0JBQXNCO2tCQUhsQyxVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQsIEh0dHBQYXJhbXMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJbmplY3RhYmxlLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBFc29sdmVDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi4vY29yZSc7XG5pbXBvcnQgeyBFc29sdmVHZXRSZXNwb25zZSB9IGZyb20gJy4uL3NoYXJlZC9yZXNwb25zZSc7XG5pbXBvcnQgeyBFc29sdmVDdXN0b21GaWVsZHMgfSBmcm9tICcuLi9zaGFyZWQvY3VzdG9tLWZpZWxkcyc7XG5pbXBvcnQge1xuICAgIEVzb2x2ZUZpbHRlckZhY3RvcnksXG4gICAgRXNvbHZlRmlsdGVyTGlzdCxcbiAgICBFc29sdmVGaWx0ZXJSZWNvcmRMaXN0LFxuICAgIEVzb2x2ZU11bHRpcGxlU2VsZWN0RmlsdGVyLFxuICAgIEVzb2x2ZVJhbmdlRmlsdGVyLFxuICAgIEVzb2x2ZVNpbmdsZVNlbGVjdEZpbHRlcixcbn0gZnJvbSAnLi4vc2hhcmVkL2ZpbHRlcnMnO1xuXG5pbXBvcnQge1xuICAgIEVzb2x2ZUxvY2F0aW9uRmlsdGVyT3B0aW9ucyxcbiAgICBFc29sdmVMb2NhdGlvbkdlb09wdGlvbnMsXG4gICAgRXNvbHZlTG9jYXRpb25PcHRpb25zLFxuICAgIEVzb2x2ZUxvY2F0aW9uUmVjb3JkLFxufSBmcm9tICcuL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgRXNvbHZlTG9jYXRpb24sIEVzb2x2ZUxvY2F0aW9uTGlzdCB9IGZyb20gJy4vY2xhc3Nlcyc7XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIEVzb2x2ZUxvY2F0aW9uc1NlcnZpY2U8XG4gICAgVCBleHRlbmRzIEVzb2x2ZUN1c3RvbUZpZWxkcyA9IEVzb2x2ZUN1c3RvbUZpZWxkcyxcbj4ge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgY29uZmlnID0gaW5qZWN0KEVzb2x2ZUNvbmZpZ1NlcnZpY2UpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgaHR0cCA9IGluamVjdChIdHRwQ2xpZW50KTtcblxuICAgIC8qKlxuICAgICAqIFJldHJpZXZlcyBhIGxpc3Qgb2Ygc3RvY2sgbG9jYXRpb25zXG4gICAgICpcbiAgICAgKiBAcmV0dXJucyBBbiBgT2JzZXJ2YWJsZWAgd2l0aCBhbiBhcnJheSBvZiBzdG9jayBsb2NhdGlvbnNcbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0U3RvY2tMb2NhdGlvbnMoXG4gICAgICAgIG9wdGlvbnM/OiBFc29sdmVMb2NhdGlvbk9wdGlvbnMsXG4gICAgKTogT2JzZXJ2YWJsZTxFc29sdmVMb2NhdGlvbkxpc3Q8VD4+IHtcbiAgICAgICAgbGV0IHBhcmFtcyA9IG5ldyBIdHRwUGFyYW1zKCk7XG5cbiAgICAgICAgaWYgKG9wdGlvbnMpIHtcbiAgICAgICAgICAgIGlmIChvcHRpb25zLnBhZ2UpIHtcbiAgICAgICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdwYWdlJywgb3B0aW9ucy5wYWdlKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKG9wdGlvbnMucm93cykge1xuICAgICAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ3Jvd3MnLCBvcHRpb25zLnJvd3MpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAob3B0aW9ucy5zb3J0KSB7XG4gICAgICAgICAgICAgICAgY29uc3Qgc29ydCA9IG9wdGlvbnMuc29ydDtcblxuICAgICAgICAgICAgICAgIGlmIChzb3J0LmZpZWxkKSB7XG4gICAgICAgICAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ3NvcnQnLCBzb3J0LmZpZWxkKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpZiAoc29ydC5vcmRlcikge1xuICAgICAgICAgICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdvcmRlcicsIHNvcnQub3JkZXIpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKG9wdGlvbnMuc2VhcmNoX3BocmFzZSkge1xuICAgICAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ3NlYXJjaF9waHJhc2UnLCBvcHRpb25zLnNlYXJjaF9waHJhc2UpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAob3B0aW9ucy5pc19hY3RpdmUpIHtcbiAgICAgICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdpc19hY3RpdmUnLCBvcHRpb25zLmlzX2FjdGl2ZSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChvcHRpb25zLmRpc3BhdGNoZXNfc3RvY2spIHtcbiAgICAgICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KFxuICAgICAgICAgICAgICAgICAgICAnZGlzcGF0Y2hlc19zdG9jaycsXG4gICAgICAgICAgICAgICAgICAgIG9wdGlvbnMuZGlzcGF0Y2hlc19zdG9jayxcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAob3B0aW9ucy5wcm92aW5jZSkge1xuICAgICAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ3Byb3ZpbmNlJywgb3B0aW9ucy5wcm92aW5jZSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChvcHRpb25zLmNvdW50cnkpIHtcbiAgICAgICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdjb3VudHJ5Jywgb3B0aW9ucy5jb3VudHJ5KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKG9wdGlvbnMuZmlsdGVycykge1xuICAgICAgICAgICAgICAgIGxldCBmaWx0ZXJzID0gb3B0aW9ucy5maWx0ZXJzO1xuXG4gICAgICAgICAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KGZpbHRlcnMpKSB7XG4gICAgICAgICAgICAgICAgICAgIGZpbHRlcnMgPSBFc29sdmVGaWx0ZXJGYWN0b3J5LmNvdmVydEZyb21PYmooZmlsdGVycyk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcGFyYW1zID0gRXNvbHZlRmlsdGVyRmFjdG9yeS5jb252ZXJ0VG9IdHRwUGFyYW1zKFxuICAgICAgICAgICAgICAgICAgICBmaWx0ZXJzLFxuICAgICAgICAgICAgICAgICAgICBwYXJhbXMsXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0aGlzLmdldExvY2F0aW9uUmVjb3JkcyhwYXJhbXMpLnBpcGUoXG4gICAgICAgICAgICBtYXAoKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICByZXNwb25zZS5yZWNvcmRzID09PSB1bmRlZmluZWQgfHxcbiAgICAgICAgICAgICAgICAgICAgcmVzcG9uc2UucmVjb3Jkcy5sZW5ndGggPD0gMFxuICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICB0aHJvdyByZXNwb25zZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBjb25zdCBsb2NhdGlvbnM6IEVzb2x2ZUxvY2F0aW9uPFQ+W10gPSBbXTtcblxuICAgICAgICAgICAgICAgIHJlc3BvbnNlLnJlY29yZHMuZm9yRWFjaCgobG9jYXRpb25SZWNvcmQpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgbG9jYXRpb25zLnB1c2godGhpcy5wcm9jZXNzTG9jYXRpb24obG9jYXRpb25SZWNvcmQpKTtcbiAgICAgICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgICAgIHJldHVybiBuZXcgRXNvbHZlTG9jYXRpb25MaXN0KFxuICAgICAgICAgICAgICAgICAgICBsb2NhdGlvbnMsXG4gICAgICAgICAgICAgICAgICAgICtyZXNwb25zZS5hZGRpdGlvbmFsX2RhdGEudG90YWxfcmVjb3JkcyxcbiAgICAgICAgICAgICAgICAgICAgb3B0aW9ucz8ucGFnZSA/PyAwLFxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXRyaWV2ZXMgYSBsaXN0IG9mIHN0b2NrIGxvY2F0aW9ucyB1c2luZyB0aGUgYWRkcmVzc19pZCBhcyBwYXJhbWV0ZXIgb3IgdGhlIGxhdGl0dWRlIGFuZCBsb25naXR1ZGUuXG4gICAgICogU2V0IHRoZSBhZGRyZXNzZXNfaWQgdG8gMCBhbmQgdGhlIGdwcyBjb29yZGluYXRlcyBpbiBvcmRlciB0byByZXRyaWV2ZSB0aGUgbG9jYXRpb25zIGxpc3Qgd2hlbiB0aGUgYWRkcmVzcyBpc24ndFxuICAgICAqIHlldCBzYXZlZC5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBhZGRyZXNzZXNfaWQgaWYgc3VwcGxpZWQsIHRoZSBsYXRpdHVkZSBhbmQgbG9uZ2l0dWRlIG9uIHRoZSBhZGRyZXNzIHdpbGwgYmUgdXNlZC5cbiAgICAgKiBAcGFyYW0gbGF0aXR1ZGUgaWYgc3VwcGxpZWQgYW5kIGFkZHJlc3NfaWQgPiAwLCB0aGUgdmFsdWUgaXMgaWdub3JlZC5cbiAgICAgKiBAcGFyYW0gbG9uZ2l0dWRlIGlmIHN1cHBsaWVkIGFuZCBhZGRyZXNzX2lkID4gMCwgdGhlIHZhbHVlIGlzIGlnbm9yZWQuXG4gICAgICpcbiAgICAgKiBAcmV0dXJucyBBbiBgT2JzZXJ2YWJsZWAgd2l0aCBhbiBhcnJheSBvZiBzdG9jayBsb2NhdGlvbnNcbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0U3RvY2tMb2NhdGlvbnNHZW8oXG4gICAgICAgIGFkZHJlc3Nlc19pZCA9IDAsXG4gICAgICAgIGxhdGl0dWRlID0gMCxcbiAgICAgICAgbG9uZ2l0dWRlID0gMCxcbiAgICAgICAgZGlzcGF0Y2hlc19zdG9jaz86IGJvb2xlYW4sXG4gICAgICAgIGluY2x1ZGVfb25fc3RvcmVfbG9jYXRvcj86IGJvb2xlYW4sXG4gICAgKTogT2JzZXJ2YWJsZTxFc29sdmVMb2NhdGlvbjxUPltdPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmdldExvY2F0aW9uc0dlb1JlY29yZHMoe1xuICAgICAgICAgICAgYWRkcmVzc2VzX2lkLFxuICAgICAgICAgICAgbGF0aXR1ZGUsXG4gICAgICAgICAgICBsb25naXR1ZGUsXG4gICAgICAgICAgICBkaXNwYXRjaGVzX3N0b2NrLFxuICAgICAgICAgICAgaW5jbHVkZV9vbl9zdG9yZV9sb2NhdG9yLFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0TG9jYXRpb25GaWx0ZXJzKFxuICAgICAgICBvcHRpb25zOiBFc29sdmVMb2NhdGlvbkZpbHRlck9wdGlvbnMsXG4gICAgKTogT2JzZXJ2YWJsZTxFc29sdmVGaWx0ZXJMaXN0PiB7XG4gICAgICAgIGNvbnN0IHBhcmFtcyA9IG5ldyBIdHRwUGFyYW1zKHtcbiAgICAgICAgICAgIGZyb21PYmplY3Q6IHtcbiAgICAgICAgICAgICAgICBjb3VudHJ5OiBvcHRpb25zLmNvdW50cnkgPz8gJycsXG4gICAgICAgICAgICAgICAgcHJvdmluY2U6IG9wdGlvbnMucHJvdmluY2UgPz8gJycsXG4gICAgICAgICAgICAgICAgZmllbGRzOiBvcHRpb25zLmZpZWxkcy5qb2luKCcsJyksXG4gICAgICAgICAgICB9LFxuICAgICAgICB9KTtcblxuICAgICAgICByZXR1cm4gdGhpcy5odHRwXG4gICAgICAgICAgICAuZ2V0PEVzb2x2ZUdldFJlc3BvbnNlPEVzb2x2ZUZpbHRlclJlY29yZExpc3Q+PihcbiAgICAgICAgICAgICAgICBgJHt0aGlzLmNvbmZpZy5hcGlfdXJsfS9nZXQtbG9jYXRpb24tZmlsdGVycy5waHBgLFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgcGFyYW1zLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAoKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChyZXNwb25zZS5yZWNvcmRzID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IHJlc3BvbnNlO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZmlsdGVycyA9IFtdO1xuXG4gICAgICAgICAgICAgICAgICAgIGZvciAoY29uc3QgcmVjb3JkIG9mIHJlc3BvbnNlLnJlY29yZHMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCBmaWx0ZXIgPSBudWxsO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVjb3JkLnR5cGUgPT09ICdyYW5nZScpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXIgPSBuZXcgRXNvbHZlUmFuZ2VGaWx0ZXIoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlY29yZC5maWVsZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgK3JlY29yZC5taW4sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICtyZWNvcmQubWF4LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHJlY29yZC50eXBlID09PSAnc2luZ2xlJykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbHRlciA9IG5ldyBFc29sdmVTaW5nbGVTZWxlY3RGaWx0ZXIoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlY29yZC5maWVsZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVjb3JkLnZhbHVlcyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChyZWNvcmQudHlwZSA9PT0gJ211bHRpcGxlJykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbHRlciA9IG5ldyBFc29sdmVNdWx0aXBsZVNlbGVjdEZpbHRlcihcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVjb3JkLmZpZWxkLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWNvcmQudmFsdWVzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChmaWx0ZXIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXJzLnB1c2goZmlsdGVyKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBmaWx0ZXJzO1xuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldExvY2F0aW9uc0dlb1JlY29yZHMob3B0aW9ucz86IEVzb2x2ZUxvY2F0aW9uR2VvT3B0aW9ucykge1xuICAgICAgICBsZXQgcGFyYW1zID0gbmV3IEh0dHBQYXJhbXMoKTtcblxuICAgICAgICBpZiAob3B0aW9ucykge1xuICAgICAgICAgICAgcGFyYW1zID0gdGhpcy5hcHBlbmRQYXJhbXMob3B0aW9ucywgcGFyYW1zKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgICAgICAgIC5nZXQ8RXNvbHZlR2V0UmVzcG9uc2U8RXNvbHZlTG9jYXRpb25SZWNvcmQ8VD5bXT4+KFxuICAgICAgICAgICAgICAgIGAke3RoaXMuY29uZmlnLmFwaV91cmx9L2dldC1sb2NhdGlvbnMtZ2VvLnBocGAsXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBwYXJhbXMsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcCgocmVzcG9uc2UpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHJlc3BvbnNlLnJlY29yZHMgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhyb3cgcmVzcG9uc2U7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5wcm9jZXNzU3RvY2tMb2NhdGlvbnMocmVzcG9uc2UucmVjb3Jkcyk7XG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHJpZXZlcyBsb2NhdGlvbiByZWNvcmRzIGZyb20gSFRUUCBwYXJhbXMuXG4gICAgICogQHBhcmFtIHBhcmFtcyBIVFRQIGNsaWVudCBwYXJhbWV0ZXJzXG4gICAgICovXG4gICAgcHJpdmF0ZSBnZXRMb2NhdGlvblJlY29yZHMoXG4gICAgICAgIHBhcmFtczogSHR0cFBhcmFtcyxcbiAgICApOiBPYnNlcnZhYmxlPEVzb2x2ZUdldFJlc3BvbnNlPEVzb2x2ZUxvY2F0aW9uUmVjb3JkPFQ+W10+PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PEVzb2x2ZUdldFJlc3BvbnNlPEVzb2x2ZUxvY2F0aW9uUmVjb3JkPFQ+W10+PihcbiAgICAgICAgICAgIGAke3RoaXMuY29uZmlnLmFwaV91cmx9L2dldC1sb2NhdGlvbnMucGhwYCxcbiAgICAgICAgICAgIHsgcGFyYW1zIH0sXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHJvY2Vzc2VzIHRoZSBlU29sdmUgc3RvY2sgbG9jYXRpb24gcmVjb3Jkcy5cbiAgICAgKlxuICAgICAqIEBwYXJhbSByZWNvcmRzIFJlY29yZHMgdG8gcHJvY2Vzc1xuICAgICAqIEByZXR1cm5zIEFuIGFycmF5IG9mIHByb2Nlc3NlZCBzdG9jayBsb2NhdGlvbiByZWNvcmRzXG4gICAgICovXG4gICAgcHJpdmF0ZSBwcm9jZXNzU3RvY2tMb2NhdGlvbnMoXG4gICAgICAgIHJlY29yZHM6IEVzb2x2ZUxvY2F0aW9uUmVjb3JkPFQ+W10sXG4gICAgKTogRXNvbHZlTG9jYXRpb248VD5bXSB7XG4gICAgICAgIGNvbnN0IGxvY2F0aW9uczogRXNvbHZlTG9jYXRpb248VD5bXSA9IFtdO1xuXG4gICAgICAgIGZvciAoY29uc3QgcmVjb3JkIG9mIHJlY29yZHMpIHtcbiAgICAgICAgICAgIGxvY2F0aW9ucy5wdXNoKHRoaXMucHJvY2Vzc0xvY2F0aW9uKHJlY29yZCkpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGxvY2F0aW9ucztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBQcm9jZXNzZXMgdGhlIGVTb2x2ZSBzdG9jayBpdGVtIHJlY29yZCBhbmQgY29udmVydHMgaXQgdG8gYW4gb2JqZWN0LlxuICAgICAqXG4gICAgICogQHBhcmFtIHJlY29yZCBlU29sdmUgc3RvY2sgaXRlbSByZWNvcmRcbiAgICAgKi9cbiAgICBwcml2YXRlIHByb2Nlc3NMb2NhdGlvbihcbiAgICAgICAgcmVjb3JkOiBFc29sdmVMb2NhdGlvblJlY29yZDxUPixcbiAgICApOiBFc29sdmVMb2NhdGlvbjxUPiB7XG4gICAgICAgIHJldHVybiBuZXcgRXNvbHZlTG9jYXRpb248VD4ocmVjb3JkKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGFwcGVuZFBhcmFtcyhcbiAgICAgICAgZGF0YTogeyBba2V5OiBzdHJpbmddOiBhbnkgfSxcbiAgICAgICAgcGFyYW1zID0gbmV3IEh0dHBQYXJhbXMoKSxcbiAgICApIHtcbiAgICAgICAgZm9yIChjb25zdCBrZXkgaW4gZGF0YSkge1xuICAgICAgICAgICAgY29uc3QgdmFsdWUgPSBkYXRhW2tleV07XG5cbiAgICAgICAgICAgIGlmICh2YWx1ZSAhPT0gdW5kZWZpbmVkICYmIHZhbHVlICE9PSBudWxsKSB7XG4gICAgICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLmFwcGVuZChrZXksIHZhbHVlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBwYXJhbXM7XG4gICAgfVxufVxuIl19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLWxvY2F0aW9uLWdlby1vcHRpb25zLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbmctZXNvbHZlLWNvbm5lY3Qvc3JjL2xpYi9sb2NhdGlvbnMvaW50ZXJmYWNlcy9lc29sdmUtbG9jYXRpb24tZ2VvLW9wdGlvbnMuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIEVzb2x2ZUxvY2F0aW9uR2VvT3B0aW9ucyB7XG4gICAgYWRkcmVzc2VzX2lkPzogbnVtYmVyO1xuICAgIGxhdGl0dWRlPzogbnVtYmVyO1xuICAgIGxvbmdpdHVkZT86IG51bWJlcjtcbiAgICBkaXNwYXRjaGVzX3N0b2NrPzogYm9vbGVhbjtcbiAgICBpbmNsdWRlX29uX3N0b3JlX2xvY2F0b3I/OiBib29sZWFuO1xufVxuIl19
@@ -1,4 +1,5 @@
1
1
  export * from './esolve-location-record.interface';
2
2
  export * from './esolve-location-options.interface';
3
3
  export * from './esolve-location-filter-options.interface';
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL25nLWVzb2x2ZS1jb25uZWN0L3NyYy9saWIvbG9jYXRpb25zL2ludGVyZmFjZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLHFDQUFxQyxDQUFDO0FBQ3BELGNBQWMsNENBQTRDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2Vzb2x2ZS1sb2NhdGlvbi1yZWNvcmQuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vZXNvbHZlLWxvY2F0aW9uLW9wdGlvbnMuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vZXNvbHZlLWxvY2F0aW9uLWZpbHRlci1vcHRpb25zLmludGVyZmFjZSc7XG4iXX0=
4
+ export * from './esolve-location-geo-options.interface';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL25nLWVzb2x2ZS1jb25uZWN0L3NyYy9saWIvbG9jYXRpb25zL2ludGVyZmFjZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLHFDQUFxQyxDQUFDO0FBQ3BELGNBQWMsNENBQTRDLENBQUM7QUFDM0QsY0FBYyx5Q0FBeUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZXNvbHZlLWxvY2F0aW9uLXJlY29yZC5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9lc29sdmUtbG9jYXRpb24tb3B0aW9ucy5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9lc29sdmUtbG9jYXRpb24tZmlsdGVyLW9wdGlvbnMuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vZXNvbHZlLWxvY2F0aW9uLWdlby1vcHRpb25zLmludGVyZmFjZSc7XG4iXX0=
@@ -0,0 +1,11 @@
1
+ import { EsolveResponseResult, } from '../../shared/response';
2
+ export class EsolveTransactionApprovalResult extends EsolveResponseResult {
3
+ constructor(response) {
4
+ super(response);
5
+ if (typeof response.esolve_id === 'string') {
6
+ throw new Error('Invalid response id.');
7
+ }
8
+ this.approved = response.esolve_id > 0;
9
+ }
10
+ }
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLXRyYW5zYWN0aW9uLWFwcHJvdmFsLXJlc3VsdC5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbmctZXNvbHZlLWNvbm5lY3Qvc3JjL2xpYi90cmFuc2FjdGlvbnMvY2xhc3Nlcy9lc29sdmUtdHJhbnNhY3Rpb24tYXBwcm92YWwtcmVzdWx0Lm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFSCxvQkFBb0IsR0FDdkIsTUFBTSx1QkFBdUIsQ0FBQztBQUUvQixNQUFNLE9BQU8sK0JBQWdDLFNBQVEsb0JBQW9CO0lBR3JFLFlBQVksUUFBZ0M7UUFDeEMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRWhCLElBQUksT0FBTyxRQUFRLENBQUMsU0FBUyxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQ3pDLE1BQU0sSUFBSSxLQUFLLENBQUMsc0JBQXNCLENBQUMsQ0FBQztRQUM1QyxDQUFDO1FBRUQsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQztJQUMzQyxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIEVzb2x2ZVBvc3RSZXNwb25zZUl0ZW0sXG4gICAgRXNvbHZlUmVzcG9uc2VSZXN1bHQsXG59IGZyb20gJy4uLy4uL3NoYXJlZC9yZXNwb25zZSc7XG5cbmV4cG9ydCBjbGFzcyBFc29sdmVUcmFuc2FjdGlvbkFwcHJvdmFsUmVzdWx0IGV4dGVuZHMgRXNvbHZlUmVzcG9uc2VSZXN1bHQge1xuICAgIHB1YmxpYyBhcHByb3ZlZDogYm9vbGVhbjtcblxuICAgIGNvbnN0cnVjdG9yKHJlc3BvbnNlOiBFc29sdmVQb3N0UmVzcG9uc2VJdGVtKSB7XG4gICAgICAgIHN1cGVyKHJlc3BvbnNlKTtcblxuICAgICAgICBpZiAodHlwZW9mIHJlc3BvbnNlLmVzb2x2ZV9pZCA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCByZXNwb25zZSBpZC4nKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuYXBwcm92ZWQgPSByZXNwb25zZS5lc29sdmVfaWQgPiAwO1xuICAgIH1cbn1cbiJdfQ==
@@ -23,6 +23,8 @@ export class EsolveTransaction {
23
23
  this.external_invoice_number = record.external_invoice_number;
24
24
  this.purchase_order_number = record.purchase_order_number;
25
25
  this.waybill_number = record.waybill_number ?? '';
26
+ this.key = record.key;
27
+ this.approval_state = record.approval_state;
26
28
  this.date = new Date(+record.txdate_timestamp * 1000);
27
29
  this.expected_date = new Date(+record.expected_date_timestamp * 1000);
28
30
  this.invoice_amount = +record.invoice_amount;
@@ -84,4 +86,4 @@ export class EsolveTransaction {
84
86
  }
85
87
  }
86
88
  }
87
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLXRyYW5zYWN0aW9uLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9uZy1lc29sdmUtY29ubmVjdC9zcmMvbGliL3RyYW5zYWN0aW9ucy9jbGFzc2VzL2Vzb2x2ZS10cmFuc2FjdGlvbi5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gscUJBQXFCLEdBR3hCLE1BQU0sWUFBWSxDQUFDO0FBUXBCLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQzlFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQzNGLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQzdGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ2pGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRWhGLE1BQU0sT0FBTyxpQkFBaUI7SUF3RDFCLFlBQVksTUFBK0I7UUFaM0Msb0JBQW9CO1FBQ2IsVUFBSyxHQUE0QixFQUFFLENBQUM7UUFZdkMsSUFBSSxDQUFDLEVBQUUsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFDckIsSUFBSSxDQUFDLElBQUksR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUM7UUFDcEMsSUFBSSxDQUFDLE1BQU0sR0FB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QUFJLENBQUMsQ0FBQztZQUMzRCxDQUFDO1FBQ0wsQ0FBQztRQUVELElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSx5QkFBeUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUMxRCxDQUFDO0lBRU8scUJBQXFCLENBQ3pCLFlBQTJDO1FBRTNDLEtBQUssTUFBTSxXQUFXLElBQUksWUFBWSxFQUFFLENBQUM7WUFDckMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxxQkFBcUIsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO1FBQzVELENBQUM7SUFDTCxDQUFDO0lBRU8saUJBQWlCLENBQUMsT0FBdUM7UUFDN0QsSUFBSSxDQUFDLE9BQU8sSUFBSSxPQUFPLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ25DLE9BQU87UUFDWCxDQUFDO1FBRUQsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBRTlCLEtBQUssTUFBTSxNQUFNLElBQUksT0FBTyxFQUFFLENBQUM7WUFDM0IsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQ2pCLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFDZixJQUFJLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxDQUNwQyxDQUFDO1FBQ04sQ0FBQztJQUNMLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgRXNvbHZlQ2FydEFsdGVybmF0aXZlLFxuICAgIEVzb2x2ZUNhcnRBbHRlcm5hdGl2ZVJlY29yZCxcbiAgICBFc29sdmVDYXJ0QWx0ZXJuYXRpdmVzTWFwLFxufSBmcm9tICcuLi8uLi9jYXJ0JztcblxuaW1wb3J0IHsgRXNvbHZlVHJhbnNhY3Rpb25UeXBlIH0gZnJvbSAnLi4vdHlwZXMnO1xuaW1wb3J0IHtcbiAgICBFc29sdmVUcmFuc2FjdGlvblJlY29yZCxcbiAgICBFc29sdmVUcmFuc2FjdGlvbkl0ZW1SZWNvcmQsXG59IGZyb20gJy4uL2ludGVyZmFjZXMnO1xuXG5pbXBvcnQgeyBFc29sdmVUcmFuc2FjdGlvbkFkZHJlc3MgfSBmcm9tICcuL2Vzb2x2ZS10cmFuc2FjdGlvbi1hZGRyZXNzLm1vZGVsJztcbmltcG9ydCB7IEVzb2x2ZVRyYW5zYWN0aW9uQ2xpZW50IH0gZnJvbSAnLi9lc29sdmUtdHJhbnNhY3Rpb24tY2xpZW50Lm1vZGVsJztcbmltcG9ydCB7IEVzb2x2ZVRyYW5zYWN0aW9uSXRlbSB9IGZyb20gJy4vZXNvbHZlLXRyYW5zYWN0aW9uLWl0ZW0ubW9kZWwnO1xuaW1wb3J0IHsgRXNvbHZlVHJhbnNhY3Rpb25Mb2NhdGlvbiB9IGZyb20gJy4vZXNvbHZlLXRyYW5zYWN0aW9uLWxvY2F0aW9uLm1vZGVsJztcbmltcG9ydCB7IEVzb2x2ZVRyYW5zYWN0aW9uUGF5bWVudE1ldGhvZCB9IGZyb20gJy4vZXNvbHZlLXRyYW5zYWN0aW9uLXBheW1lbnQtbWV0aG9kLm1vZGVsJztcbmltcG9ydCB7IEVzb2x2ZVRyYW5zYWN0aW9uU2hpcHBpbmdNZXRob2QgfSBmcm9tICcuL2Vzb2x2ZS10cmFuc2FjdGlvbi1zaGlwcGluZy1tZXRob2QubW9kZWwnO1xuaW1wb3J0IHsgRXNvbHZlVHJhbnNhY3Rpb25Vc2VyIH0gZnJvbSAnLi9lc29sdmUtdHJhbnNhY3Rpb24tdXNlci5tb2RlbCc7XG5pbXBvcnQgeyBFc29sdmVUcmFuc2FjdGlvblBpY2sgfSBmcm9tICcuL2Vzb2x2ZS10cmFuc2FjdGlvbi1waWNrLm1vZGVsJztcbmltcG9ydCB7IEVzb2x2ZVRyYW5zYWN0aW9uVGltZVNsb3QgfSBmcm9tICcuL2Vzb2x2ZS10cmFuc2FjdGlvbi10aW1lLXNsb3QubW9kZWwnO1xuaW1wb3J0IHsgRXNvbHZlVHJhbnNhY3Rpb25EZWxpdmVyeSB9IGZyb20gJy4vZXNvbHZlLXRyYW5zYWN0aW9uLWRlbGl2ZXJ5Lm1vZGVsJztcblxuZXhwb3J0IGNsYXNzIEVzb2x2ZVRyYW5zYWN0aW9uIHtcbiAgICBwdWJsaWMgaWQ6IG51bWJlcjtcbiAgICBwdWJsaWMgdHlwZTogRXNvbHZlVHJhbnNhY3Rpb25UeXBlO1xuICAgIHB1YmxpYyBzdGF0dXM6IHN0cmluZztcbiAgICBwdWJsaWMgY29tbWVudDogc3RyaW5nO1xuICAgIHB1YmxpYyBsb3lhbHR5X251bWJlcjogc3RyaW5nO1xuICAgIHB1YmxpYyBleHRlcm5hbF9vcmRlcl9udW1iZXI6IHN0cmluZztcbiAgICBwdWJsaWMgZXh0ZXJuYWxfaW52b2ljZV9udW1iZXI6IHN0cmluZztcbiAgICBwdWJsaWMgcHVyY2hhc2Vfb3JkZXJfbnVtYmVyOiBzdHJpbmc7XG4gICAgcHVibGljIGV4dGVybmFsX29yZGVyX3RvdGFsOiBudW1iZXI7XG4gICAgcHVibGljIHdheWJpbGxfbnVtYmVyOiBzdHJpbmc7XG5cbiAgICAvLyBEYXRlc1xuICAgIHB1YmxpYyBkYXRlOiBEYXRlO1xuICAgIHB1YmxpYyBleHBlY3RlZF9kYXRlOiBEYXRlO1xuXG4gICAgcHVibGljIGNsaWVudD86IEVzb2x2ZVRyYW5zYWN0aW9uQ2xpZW50O1xuICAgIHB1YmxpYyB1c2VyPzogRXNvbHZlVHJhbnNhY3Rpb25Vc2VyO1xuXG4gICAgLy8gTG9jYXRpb25cbiAgICBwdWJsaWMgbG9jYXRpb24/OiBFc29sdmVUcmFuc2FjdGlvbkxvY2F0aW9uO1xuXG4gICAgLy8gVG90YWxzXG4gICAgcHVibGljIGludm9pY2VfYW1vdW50OiBudW1iZXI7XG4gICAgcHVibGljIHZhdDogbnVtYmVyO1xuICAgIHB1YmxpYyBkaXNjb3VudDogbnVtYmVyO1xuICAgIHB1YmxpYyB0b3RhbDogbnVtYmVyO1xuICAgIHB1YmxpYyBzaGlwcGluZ190b3RhbDogbnVtYmVyO1xuICAgIHB1YmxpYyBpbnN1cmFuY2VfdG90YWw6IG51bWJlcjtcbiAgICBwdWJsaWMgYWxsb3dhbmNlOiBudW1iZXI7XG5cbiAgICAvLyBQYXltZW50XG4gICAgcHVibGljIHBheW1lbnRfbWV0aG9kPzogRXNvbHZlVHJhbnNhY3Rpb25QYXltZW50TWV0aG9kO1xuICAgIHB1YmxpYyBwYXltZW50OiBudW1iZXI7XG4gICAgcHVibGljIGdhdGV3YXlfdHJhbnNhY3Rpb25faWQ6IHN0cmluZztcbiAgICBwdWJsaWMgcGF5bWVudF9yZWZlcmVuY2U6IHN0cmluZztcbiAgICBwdWJsaWMgcGF5bWVudF9kZXNjcmlwdGlvbjogc3RyaW5nO1xuXG4gICAgLy8gU2hpcHBpbmdcbiAgICBwdWJsaWMgc2hpcHBpbmdfbWV0aG9kPzogRXNvbHZlVHJhbnNhY3Rpb25TaGlwcGluZ01ldGhvZDtcblxuICAgIC8vIEFkZHJlc3MgRGV0YWlsc1xuICAgIHB1YmxpYyBhZGRyZXNzOiBFc29sdmVUcmFuc2FjdGlvbkFkZHJlc3M7XG5cbiAgICAvLyBUcmFuc2FjdGlvbiBJdGVtc1xuICAgIHB1YmxpYyBpdGVtczogRXNvbHZlVHJhbnNhY3Rpb25JdGVtW10gPSBbXTtcbiAgICBwdWJsaWMgYWx0ZXJuYXRpdmVzPzogRXNvbHZlQ2FydEFsdGVybmF0aXZlc01hcDtcblxuICAgIHB1YmxpYyB0aW1lX3Nsb3Q/OiBFc29sdmVUcmFuc2FjdGlvblRpbWVTbG90O1xuXG4gICAgLy9QaWNraW5nXG4gICAgcHVibGljIHBpY2s/OiBFc29sdmVUcmFuc2FjdGlvblBpY2s7XG5cbiAgICAvL0RlbGl2ZXJ5XG4gICAgcHVibGljIGRlbGl2ZXJ5PzogRXNvbHZlVHJhbnNhY3Rpb25EZWxpdmVyeTtcblxuICAgIGNvbnN0cnVjdG9yKHJlY29yZDogRXNvbHZlVHJhbnNhY3Rpb25SZWNvcmQpIHtcbiAgICAgICAgdGhpcy5pZCA9ICtyZWNvcmQuaWQ7XG4gICAgICAgIHRoaXMudHlwZSA9IHJlY29yZC50cmFuc2FjdGlvbl90eXBlO1xuICAgICAgICB0aGlzLnN0YXR1cyA9IHJlY29yZC5zdGF0dXM7XG4gICAgICAgIHRoaXMuY29tbWVudCA9IHJlY29yZC5jb21tZW50ID8/ICcnO1xuICAgICAgICB0aGlzLmxveWFsdHlfbnVtYmVyID0gcmVjb3JkLmxveWFsdHludW1iZXI7XG4gICAgICAgIHRoaXMuZXh0ZXJuYWxfb3JkZXJfbnVtYmVyID0gcmVjb3JkLmV4dGVybmFsX29yZGVyX251bWJlcjtcbiAgICAgICAgdGhpcy5leHRlcm5hbF9vcmRlcl90b3RhbCA9ICsocmVjb3JkLmV4dGVybmFsX29yZGVyX3RvdGFsID8/IDApO1xuICAgICAgICB0aGlzLmV4dGVybmFsX2ludm9pY2VfbnVtYmVyID0gcmVjb3JkLmV4dGVybmFsX2ludm9pY2VfbnVtYmVyO1xuICAgICAgICB0aGlzLnB1cmNoYXNlX29yZGVyX251bWJlciA9IHJlY29yZC5wdXJjaGFzZV9vcmRlcl9udW1iZXI7XG4gICAgICAgIHRoaXMud2F5YmlsbF9udW1iZXIgPSByZWNvcmQud2F5YmlsbF9udW1iZXIgPz8gJyc7XG5cbiAgICAgICAgdGhpcy5kYXRlID0gbmV3IERhdGUoK3JlY29yZC50eGRhdGVfdGltZXN0YW1wICogMTAwMCk7XG4gICAgICAgIHRoaXMuZXhwZWN0ZWRfZGF0ZSA9IG5ldyBEYXRlKCtyZWNvcmQuZXhwZWN0ZWRfZGF0ZV90aW1lc3RhbXAgKiAxMDAwKTtcblxuICAgICAgICB0aGlzLmludm9pY2VfYW1vdW50ID0gK3JlY29yZC5pbnZvaWNlX2Ftb3VudDtcbiAgICAgICAgdGhpcy52YXQgPSArcmVjb3JkLnZhdDtcbiAgICAgICAgdGhpcy5kaXNjb3VudCA9ICtyZWNvcmQuZGlzY291bnQ7XG4gICAgICAgIHRoaXMudG90YWwgPSArcmVjb3JkLnRvdGFsO1xuICAgICAgICB0aGlzLnNoaXBwaW5nX3RvdGFsID0gK3JlY29yZC5zaGlwcGluZ190b3RhbDtcbiAgICAgICAgdGhpcy5pbnN1cmFuY2VfdG90YWwgPSArcmVjb3JkLmluc3VyYW5jZV90b3RhbDtcbiAgICAgICAgdGhpcy5hbGxvd2FuY2UgPSArcmVjb3JkLmFsbG93YW5jZTtcblxuICAgICAgICB0aGlzLnBheW1lbnQgPSArcmVjb3JkLnBheW1lbnQ7XG4gICAgICAgIHRoaXMucGF5bWVudF9yZWZlcmVuY2UgPSByZWNvcmQucGF5bWVudF9yZWZlcmVuY2U7XG4gICAgICAgIHRoaXMucGF5bWVudF9kZXNjcmlwdGlvbiA9IHJlY29yZC5wYXltZW50X2Rlc2NyaXB0aW9uO1xuICAgICAgICB0aGlzLmdhdGV3YXlfdHJhbnNhY3Rpb25faWQgPSByZWNvcmQuZ2F0ZXdheV90cmFuc2FjdGlvbl9pZDtcblxuICAgICAgICB0aGlzLmFkZHJlc3MgPSBuZXcgRXNvbHZlVHJhbnNhY3Rpb25BZGRyZXNzKFxuICAgICAgICAgICAgcmVjb3JkLnJlY2lwaWVudCxcbiAgICAgICAgICAgIHJlY29yZC5hZGRyZXNzX3R5cGUsXG4gICAgICAgICAgICByZWNvcmQuYWRkcmVzc19kZXNjcmlwdGlvbixcbiAgICAgICAgICAgIHJlY29yZC5zdHJlZXRfbnVtYmVyLFxuICAgICAgICAgICAgcmVjb3JkLnN0cmVldCxcbiAgICAgICAgICAgIHJlY29yZC5zdWJ1cmIsXG4gICAgICAgICAgICByZWNvcmQuY2l0eSxcbiAgICAgICAgICAgIHJlY29yZC5wcm92aW5jZSxcbiAgICAgICAgICAgIHJlY29yZC5jb3VudHJ5LFxuICAgICAgICAgICAgcmVjb3JkLnBvc3RhbF9jb2RlLFxuICAgICAgICAgICAgcmVjb3JkLnBvYm94LFxuICAgICAgICAgICAgcmVjb3JkLmFkZHJlc3NfYWxpYXMsXG4gICAgICAgICk7XG5cbiAgICAgICAgaWYgKHJlY29yZC51c2VyKSB7XG4gICAgICAgICAgICB0aGlzLnVzZXIgPSBuZXcgRXNvbHZlVHJhbnNhY3Rpb25Vc2VyKFxuICAgICAgICAgICAgICAgICtyZWNvcmQudXNlci5pZCxcbiAgICAgICAgICAgICAgICByZWNvcmQudXNlci5lbWFpbCxcbiAgICAgICAgICAgICAgICByZWNvcmQudXNlci5maXJzdG5hbWUsXG4gICAgICAgICAgICAgICAgcmVjb3JkLnVzZXIuc3VybmFtZSxcbiAgICAgICAgICAgICAgICByZWNvcmQudXNlci50ZWxudW1iZXIsXG4gICAgICAgICAgICAgICAgcmVjb3JkLnVzZXIuY2VsbG51bWJlcixcbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAocmVjb3JkLmNsaWVudCkge1xuICAgICAgICAgICAgdGhpcy5jbGllbnQgPSBuZXcgRXNvbHZlVHJhbnNhY3Rpb25DbGllbnQoXG4gICAgICAgICAgICAgICAgK3JlY29yZC5jbGllbnQuaWQsXG4gICAgICAgICAgICAgICAgcmVjb3JkLmNsaWVudC5hY2NvdW50LFxuICAgICAgICAgICAgICAgIHJlY29yZC5jbGllbnQuY29tcGFueV9uYW1lLFxuICAgICAgICAgICAgICAgIHJlY29yZC5jbGllbnQuYnJhbmNoX2NvZGUsXG4gICAgICAgICAgICAgICAgcmVjb3JkLmNsaWVudC5lbWFpbCxcbiAgICAgICAgICAgICAgICByZWNvcmQuY2xpZW50LmZpcnN0bmFtZSxcbiAgICAgICAgICAgICAgICByZWNvcmQuY2xpZW50LnN1cm5hbWUsXG4gICAgICAgICAgICAgICAgcmVjb3JkLmNsaWVudC5jb250YWN0X251bWJlcixcbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAocmVjb3JkLmxvY2F0aW9uX2RldGFpbHMpIHtcbiAgICAgICAgICAgIHRoaXMubG9jYXRpb24gPSBuZXcgRXNvbHZlVHJhbnNhY3Rpb25Mb2NhdGlvbihcbiAgICAgICAgICAgICAgICByZWNvcmQubG9jYXRpb25fZGV0YWlscyxcbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAocmVjb3JkLnBheW1lbnRfbWV0aG9kX2RldGFpbHMpIHtcbiAgICAgICAgICAgIHRoaXMucGF5bWVudF9tZXRob2QgPSBuZXcgRXNvbHZlVHJhbnNhY3Rpb25QYXltZW50TWV0aG9kKFxuICAgICAgICAgICAgICAgIHJlY29yZC5wYXltZW50X21ldGhvZF9kZXRhaWxzLmlkLFxuICAgICAgICAgICAgICAgIHJlY29yZC5wYXltZW50X21ldGhvZF9kZXRhaWxzLnBheW1ldGhvZF9uYW1lLFxuICAgICAgICAgICAgICAgIHJlY29yZC5wYXltZW50X21ldGhvZF9kZXRhaWxzLmRlc2NyaXB0aW9uLFxuICAgICAgICAgICAgICAgIHJlY29yZC5wYXltZW50X21ldGhvZF9kZXRhaWxzLmludGVncmF0aW9uX3R5cGUsXG4gICAgICAgICAgICAgICAgcmVjb3JkLnBheW1lbnRfbWV0aG9kX2RldGFpbHMuc2VydmljZV9wcm92aWRlcixcbiAgICAgICAgICAgICAgICByZWNvcmQucGF5bWVudF9tZXRob2RfZGV0YWlscy5vbl9hY2NvdW50XG4gICAgICAgICAgICApO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHJlY29yZC5zaGlwcGluZ19tZXRob2RfZGV0YWlscykge1xuICAgICAgICAgICAgdGhpcy5zaGlwcGluZ19tZXRob2QgPSBuZXcgRXNvbHZlVHJhbnNhY3Rpb25TaGlwcGluZ01ldGhvZChcbiAgICAgICAgICAgICAgICArcmVjb3JkLnNoaXBwaW5nX21ldGhvZF9kZXRhaWxzLmlkLFxuICAgICAgICAgICAgICAgIHJlY29yZC5zaGlwcGluZ19tZXRob2RfZGV0YWlscy5jYXJyaWVyX25hbWUsXG4gICAgICAgICAgICAgICAgcmVjb3JkLnNoaXBwaW5nX21ldGhvZF9kZXRhaWxzLmRlbGl2ZXJ5X2NhdGVnb3J5LFxuICAgICAgICAgICAgICAgIHJlY29yZC5zaGlwcGluZ19tZXRob2RfZGV0YWlscy5kZWxpdmVyeV9pbnRlZ3JhdGlvbl90eXBlID8/XG4gICAgICAgICAgICAgICAgICAgICdub25lJyxcbiAgICAgICAgICAgICAgICByZWNvcmQuc2hpcHBpbmdfbWV0aG9kX2RldGFpbHMubG9jYXRpb24sXG4gICAgICAgICAgICAgICAgcmVjb3JkLnNoaXBwaW5nX21ldGhvZF9kZXRhaWxzLmRlc2NyaXB0aW9uLFxuICAgICAgICAgICAgICAgIHJlY29yZC5zaGlwcGluZ19tZXRob2RfZGV0YWlscy5wcmljaW5nLFxuICAgICAgICAgICAgICAgICEhcmVjb3JkLnNoaXBwaW5nX21ldGhvZF9kZXRhaWxzLmNsaWVudF90b19jb2xsZWN0LFxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChyZWNvcmQudGltZV9zbG90KSB7XG4gICAgICAgICAgICB0aGlzLnRpbWVfc2xvdCA9IG5ldyBFc29sdmVUcmFuc2FjdGlvblRpbWVTbG90KHJlY29yZC50aW1lX3Nsb3QpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5wYXJzZVRyYW5zYWN0aW9uSXRlbXMocmVjb3JkLnRyYW5zYWN0aW9uX2l0ZW1zKTtcbiAgICAgICAgdGhpcy5wYXJzZUFsdGVybmF0aXZlcyhyZWNvcmQuYWx0ZXJuYXRpdmVzKTtcblxuICAgICAgICBpZiAocmVjb3JkLmNhcnRfcGlja19pZCAmJiByZWNvcmQucGlja19zdGF0dXMpIHtcbiAgICAgICAgICAgIHRoaXMucGljayA9IG5ldyBFc29sdmVUcmFuc2FjdGlvblBpY2soXG4gICAgICAgICAgICAgICAgK3JlY29yZC5jYXJ0X3BpY2tfaWQsXG4gICAgICAgICAgICAgICAgcmVjb3JkLnBpY2tfYmFsYW5jZWQgPz8gZmFsc2UsXG4gICAgICAgICAgICAgICAgcmVjb3JkLnBpY2tfc3RhdHVzLFxuICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgaWYgKHJlY29yZC5waWNrX3N0YXJ0ICE9PSB1bmRlZmluZWQgJiYgcmVjb3JkLnBpY2tfc3RhcnQgIT09IG51bGwpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnBpY2suc3RhcnRfZGF0ZSA9IG5ldyBEYXRlKCtyZWNvcmQucGlja19zdGFydCAqIDEwMDApO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAocmVjb3JkLnBpY2tfZW5kICE9PSB1bmRlZmluZWQgJiYgcmVjb3JkLnBpY2tfZW5kICE9PSBudWxsKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5waWNrLmVuZF9kYXRlID0gbmV3IERhdGUoK3JlY29yZC5waWNrX2VuZCAqIDEwMDApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5kZWxpdmVyeSA9IG5ldyBFc29sdmVUcmFuc2FjdGlvbkRlbGl2ZXJ5KHJlY29yZCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBwYXJzZVRyYW5zYWN0aW9uSXRlbXMoXG4gICAgICAgIHJlY29yZF9pdGVtczogRXNvbHZlVHJhbnNhY3Rpb25JdGVtUmVjb3JkW10sXG4gICAgKTogdm9pZCB7XG4gICAgICAgIGZvciAoY29uc3QgcmVjb3JkX2l0ZW0gb2YgcmVjb3JkX2l0ZW1zKSB7XG4gICAgICAgICAgICB0aGlzLml0ZW1zLnB1c2gobmV3IEVzb2x2ZVRyYW5zYWN0aW9uSXRlbShyZWNvcmRfaXRlbSkpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBwYXJzZUFsdGVybmF0aXZlcyhyZWNvcmRzPzogRXNvbHZlQ2FydEFsdGVybmF0aXZlUmVjb3JkW10pIHtcbiAgICAgICAgaWYgKCFyZWNvcmRzIHx8IHJlY29yZHMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmFsdGVybmF0aXZlcyA9IG5ldyBNYXAoKTtcblxuICAgICAgICBmb3IgKGNvbnN0IHJlY29yZCBvZiByZWNvcmRzKSB7XG4gICAgICAgICAgICB0aGlzLmFsdGVybmF0aXZlcy5zZXQoXG4gICAgICAgICAgICAgICAgK3JlY29yZC5pdGVtX2lkLFxuICAgICAgICAgICAgICAgIG5ldyBFc29sdmVDYXJ0QWx0ZXJuYXRpdmUocmVjb3JkKSxcbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
89
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLXRyYW5zYWN0aW9uLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9uZy1lc29sdmUtY29ubmVjdC9zcmMvbGliL3RyYW5zYWN0aW9ucy9jbGFzc2VzL2Vzb2x2ZS10cmFuc2FjdGlvbi5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gscUJBQXFCLEdBR3hCLE1BQU0sWUFBWSxDQUFDO0FBUXBCLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQzlFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQzNGLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQzdGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ2pGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRWhGLE1BQU0sT0FBTyxpQkFBaUI7SUEwRDFCLFlBQVksTUFBK0I7UUFaM0Msb0JBQW9CO1FBQ2IsVUFBSyxHQUE0QixFQUFFLENBQUM7UUFZdkMsSUFBSSxDQUFDLEVBQUUsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFDckIsSUFBSSxDQUFDLElBQUksR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUM7UUFDcEMsSUFBSSxDQUFDLE1BQU0sR0FB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QUFJLEVBQUUsQ0FBQztnQkFDNUQsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxJQUFJLENBQUMsQ0FBQyxNQUFNLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxDQUFDO1lBQzNELENBQUM7UUFDTCxDQUFDO1FBRUQsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLHlCQUF5QixDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFFTyxxQkFBcUIsQ0FDekIsWUFBMkM7UUFFM0MsS0FBSyxNQUFNLFdBQVcsSUFBSSxZQUFZLEVBQUUsQ0FBQztZQUNyQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLHFCQUFxQixDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7UUFDNUQsQ0FBQztJQUNMLENBQUM7SUFFTyxpQkFBaUIsQ0FBQyxPQUF1QztRQUM3RCxJQUFJLENBQUMsT0FBTyxJQUFJLE9BQU8sQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDbkMsT0FBTztRQUNYLENBQUM7UUFFRCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksR0FBRyxFQUFFLENBQUM7UUFFOUIsS0FBSyxNQUFNLE1BQU0sSUFBSSxPQUFPLEVBQUUsQ0FBQztZQUMzQixJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FDakIsQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUNmLElBQUkscUJBQXFCLENBQUMsTUFBTSxDQUFDLENBQ3BDLENBQUM7UUFDTixDQUFDO0lBQ0wsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBFc29sdmVDYXJ0QWx0ZXJuYXRpdmUsXG4gICAgRXNvbHZlQ2FydEFsdGVybmF0aXZlUmVjb3JkLFxuICAgIEVzb2x2ZUNhcnRBbHRlcm5hdGl2ZXNNYXAsXG59IGZyb20gJy4uLy4uL2NhcnQnO1xuXG5pbXBvcnQgeyBFc29sdmVUcmFuc2FjdGlvblR5cGUgfSBmcm9tICcuLi90eXBlcyc7XG5pbXBvcnQge1xuICAgIEVzb2x2ZVRyYW5zYWN0aW9uUmVjb3JkLFxuICAgIEVzb2x2ZVRyYW5zYWN0aW9uSXRlbVJlY29yZCxcbn0gZnJvbSAnLi4vaW50ZXJmYWNlcyc7XG5cbmltcG9ydCB7IEVzb2x2ZVRyYW5zYWN0aW9uQWRkcmVzcyB9IGZyb20gJy4vZXNvbHZlLXRyYW5zYWN0aW9uLWFkZHJlc3MubW9kZWwnO1xuaW1wb3J0IHsgRXNvbHZlVHJhbnNhY3Rpb25DbGllbnQgfSBmcm9tICcuL2Vzb2x2ZS10cmFuc2FjdGlvbi1jbGllbnQubW9kZWwnO1xuaW1wb3J0IHsgRXNvbHZlVHJhbnNhY3Rpb25JdGVtIH0gZnJvbSAnLi9lc29sdmUtdHJhbnNhY3Rpb24taXRlbS5tb2RlbCc7XG5pbXBvcnQgeyBFc29sdmVUcmFuc2FjdGlvbkxvY2F0aW9uIH0gZnJvbSAnLi9lc29sdmUtdHJhbnNhY3Rpb24tbG9jYXRpb24ubW9kZWwnO1xuaW1wb3J0IHsgRXNvbHZlVHJhbnNhY3Rpb25QYXltZW50TWV0aG9kIH0gZnJvbSAnLi9lc29sdmUtdHJhbnNhY3Rpb24tcGF5bWVudC1tZXRob2QubW9kZWwnO1xuaW1wb3J0IHsgRXNvbHZlVHJhbnNhY3Rpb25TaGlwcGluZ01ldGhvZCB9IGZyb20gJy4vZXNvbHZlLXRyYW5zYWN0aW9uLXNoaXBwaW5nLW1ldGhvZC5tb2RlbCc7XG5pbXBvcnQgeyBFc29sdmVUcmFuc2FjdGlvblVzZXIgfSBmcm9tICcuL2Vzb2x2ZS10cmFuc2FjdGlvbi11c2VyLm1vZGVsJztcbmltcG9ydCB7IEVzb2x2ZVRyYW5zYWN0aW9uUGljayB9IGZyb20gJy4vZXNvbHZlLXRyYW5zYWN0aW9uLXBpY2subW9kZWwnO1xuaW1wb3J0IHsgRXNvbHZlVHJhbnNhY3Rpb25UaW1lU2xvdCB9IGZyb20gJy4vZXNvbHZlLXRyYW5zYWN0aW9uLXRpbWUtc2xvdC5tb2RlbCc7XG5pbXBvcnQgeyBFc29sdmVUcmFuc2FjdGlvbkRlbGl2ZXJ5IH0gZnJvbSAnLi9lc29sdmUtdHJhbnNhY3Rpb24tZGVsaXZlcnkubW9kZWwnO1xuXG5leHBvcnQgY2xhc3MgRXNvbHZlVHJhbnNhY3Rpb24ge1xuICAgIHB1YmxpYyBpZDogbnVtYmVyO1xuICAgIHB1YmxpYyB0eXBlOiBFc29sdmVUcmFuc2FjdGlvblR5cGU7XG4gICAgcHVibGljIHN0YXR1czogc3RyaW5nO1xuICAgIHB1YmxpYyBjb21tZW50OiBzdHJpbmc7XG4gICAgcHVibGljIGxveWFsdHlfbnVtYmVyOiBzdHJpbmc7XG4gICAgcHVibGljIGV4dGVybmFsX29yZGVyX251bWJlcjogc3RyaW5nO1xuICAgIHB1YmxpYyBleHRlcm5hbF9pbnZvaWNlX251bWJlcjogc3RyaW5nO1xuICAgIHB1YmxpYyBwdXJjaGFzZV9vcmRlcl9udW1iZXI6IHN0cmluZztcbiAgICBwdWJsaWMgZXh0ZXJuYWxfb3JkZXJfdG90YWw6IG51bWJlcjtcbiAgICBwdWJsaWMgd2F5YmlsbF9udW1iZXI6IHN0cmluZztcbiAgICBwdWJsaWMga2V5Pzogc3RyaW5nO1xuICAgIHB1YmxpYyBhcHByb3ZhbF9zdGF0ZT86IHN0cmluZztcblxuICAgIC8vIERhdGVzXG4gICAgcHVibGljIGRhdGU6IERhdGU7XG4gICAgcHVibGljIGV4cGVjdGVkX2RhdGU6IERhdGU7XG5cbiAgICBwdWJsaWMgY2xpZW50PzogRXNvbHZlVHJhbnNhY3Rpb25DbGllbnQ7XG4gICAgcHVibGljIHVzZXI/OiBFc29sdmVUcmFuc2FjdGlvblVzZXI7XG5cbiAgICAvLyBMb2NhdGlvblxuICAgIHB1YmxpYyBsb2NhdGlvbj86IEVzb2x2ZVRyYW5zYWN0aW9uTG9jYXRpb247XG5cbiAgICAvLyBUb3RhbHNcbiAgICBwdWJsaWMgaW52b2ljZV9hbW91bnQ6IG51bWJlcjtcbiAgICBwdWJsaWMgdmF0OiBudW1iZXI7XG4gICAgcHVibGljIGRpc2NvdW50OiBudW1iZXI7XG4gICAgcHVibGljIHRvdGFsOiBudW1iZXI7XG4gICAgcHVibGljIHNoaXBwaW5nX3RvdGFsOiBudW1iZXI7XG4gICAgcHVibGljIGluc3VyYW5jZV90b3RhbDogbnVtYmVyO1xuICAgIHB1YmxpYyBhbGxvd2FuY2U6IG51bWJlcjtcblxuICAgIC8vIFBheW1lbnRcbiAgICBwdWJsaWMgcGF5bWVudF9tZXRob2Q/OiBFc29sdmVUcmFuc2FjdGlvblBheW1lbnRNZXRob2Q7XG4gICAgcHVibGljIHBheW1lbnQ6IG51bWJlcjtcbiAgICBwdWJsaWMgZ2F0ZXdheV90cmFuc2FjdGlvbl9pZDogc3RyaW5nO1xuICAgIHB1YmxpYyBwYXltZW50X3JlZmVyZW5jZTogc3RyaW5nO1xuICAgIHB1YmxpYyBwYXltZW50X2Rlc2NyaXB0aW9uOiBzdHJpbmc7XG5cbiAgICAvLyBTaGlwcGluZ1xuICAgIHB1YmxpYyBzaGlwcGluZ19tZXRob2Q/OiBFc29sdmVUcmFuc2FjdGlvblNoaXBwaW5nTWV0aG9kO1xuXG4gICAgLy8gQWRkcmVzcyBEZXRhaWxzXG4gICAgcHVibGljIGFkZHJlc3M6IEVzb2x2ZVRyYW5zYWN0aW9uQWRkcmVzcztcblxuICAgIC8vIFRyYW5zYWN0aW9uIEl0ZW1zXG4gICAgcHVibGljIGl0ZW1zOiBFc29sdmVUcmFuc2FjdGlvbkl0ZW1bXSA9IFtdO1xuICAgIHB1YmxpYyBhbHRlcm5hdGl2ZXM/OiBFc29sdmVDYXJ0QWx0ZXJuYXRpdmVzTWFwO1xuXG4gICAgcHVibGljIHRpbWVfc2xvdD86IEVzb2x2ZVRyYW5zYWN0aW9uVGltZVNsb3Q7XG5cbiAgICAvL1BpY2tpbmdcbiAgICBwdWJsaWMgcGljaz86IEVzb2x2ZVRyYW5zYWN0aW9uUGljaztcblxuICAgIC8vRGVsaXZlcnlcbiAgICBwdWJsaWMgZGVsaXZlcnk/OiBFc29sdmVUcmFuc2FjdGlvbkRlbGl2ZXJ5O1xuXG4gICAgY29uc3RydWN0b3IocmVjb3JkOiBFc29sdmVUcmFuc2FjdGlvblJlY29yZCkge1xuICAgICAgICB0aGlzLmlkID0gK3JlY29yZC5pZDtcbiAgICAgICAgdGhpcy50eXBlID0gcmVjb3JkLnRyYW5zYWN0aW9uX3R5cGU7XG4gICAgICAgIHRoaXMuc3RhdHVzID0gcmVjb3JkLnN0YXR1cztcbiAgICAgICAgdGhpcy5jb21tZW50ID0gcmVjb3JkLmNvbW1lbnQgPz8gJyc7XG4gICAgICAgIHRoaXMubG95YWx0eV9udW1iZXIgPSByZWNvcmQubG95YWx0eW51bWJlcjtcbiAgICAgICAgdGhpcy5leHRlcm5hbF9vcmRlcl9udW1iZXIgPSByZWNvcmQuZXh0ZXJuYWxfb3JkZXJfbnVtYmVyO1xuICAgICAgICB0aGlzLmV4dGVybmFsX29yZGVyX3RvdGFsID0gKyhyZWNvcmQuZXh0ZXJuYWxfb3JkZXJfdG90YWwgPz8gMCk7XG4gICAgICAgIHRoaXMuZXh0ZXJuYWxfaW52b2ljZV9udW1iZXIgPSByZWNvcmQuZXh0ZXJuYWxfaW52b2ljZV9udW1iZXI7XG4gICAgICAgIHRoaXMucHVyY2hhc2Vfb3JkZXJfbnVtYmVyID0gcmVjb3JkLnB1cmNoYXNlX29yZGVyX251bWJlcjtcbiAgICAgICAgdGhpcy53YXliaWxsX251bWJlciA9IHJlY29yZC53YXliaWxsX251bWJlciA/PyAnJztcblxuICAgICAgICB0aGlzLmtleSA9IHJlY29yZC5rZXk7XG4gICAgICAgIHRoaXMuYXBwcm92YWxfc3RhdGUgPSByZWNvcmQuYXBwcm92YWxfc3RhdGU7XG5cbiAgICAgICAgdGhpcy5kYXRlID0gbmV3IERhdGUoK3JlY29yZC50eGRhdGVfdGltZXN0YW1wICogMTAwMCk7XG4gICAgICAgIHRoaXMuZXhwZWN0ZWRfZGF0ZSA9IG5ldyBEYXRlKCtyZWNvcmQuZXhwZWN0ZWRfZGF0ZV90aW1lc3RhbXAgKiAxMDAwKTtcblxuICAgICAgICB0aGlzLmludm9pY2VfYW1vdW50ID0gK3JlY29yZC5pbnZvaWNlX2Ftb3VudDtcbiAgICAgICAgdGhpcy52YXQgPSArcmVjb3JkLnZhdDtcbiAgICAgICAgdGhpcy5kaXNjb3VudCA9ICtyZWNvcmQuZGlzY291bnQ7XG4gICAgICAgIHRoaXMudG90YWwgPSArcmVjb3JkLnRvdGFsO1xuICAgICAgICB0aGlzLnNoaXBwaW5nX3RvdGFsID0gK3JlY29yZC5zaGlwcGluZ190b3RhbDtcbiAgICAgICAgdGhpcy5pbnN1cmFuY2VfdG90YWwgPSArcmVjb3JkLmluc3VyYW5jZV90b3RhbDtcbiAgICAgICAgdGhpcy5hbGxvd2FuY2UgPSArcmVjb3JkLmFsbG93YW5jZTtcblxuICAgICAgICB0aGlzLnBheW1lbnQgPSArcmVjb3JkLnBheW1lbnQ7XG4gICAgICAgIHRoaXMucGF5bWVudF9yZWZlcmVuY2UgPSByZWNvcmQucGF5bWVudF9yZWZlcmVuY2U7XG4gICAgICAgIHRoaXMucGF5bWVudF9kZXNjcmlwdGlvbiA9IHJlY29yZC5wYXltZW50X2Rlc2NyaXB0aW9uO1xuICAgICAgICB0aGlzLmdhdGV3YXlfdHJhbnNhY3Rpb25faWQgPSByZWNvcmQuZ2F0ZXdheV90cmFuc2FjdGlvbl9pZDtcblxuICAgICAgICB0aGlzLmFkZHJlc3MgPSBuZXcgRXNvbHZlVHJhbnNhY3Rpb25BZGRyZXNzKFxuICAgICAgICAgICAgcmVjb3JkLnJlY2lwaWVudCxcbiAgICAgICAgICAgIHJlY29yZC5hZGRyZXNzX3R5cGUsXG4gICAgICAgICAgICByZWNvcmQuYWRkcmVzc19kZXNjcmlwdGlvbixcbiAgICAgICAgICAgIHJlY29yZC5zdHJlZXRfbnVtYmVyLFxuICAgICAgICAgICAgcmVjb3JkLnN0cmVldCxcbiAgICAgICAgICAgIHJlY29yZC5zdWJ1cmIsXG4gICAgICAgICAgICByZWNvcmQuY2l0eSxcbiAgICAgICAgICAgIHJlY29yZC5wcm92aW5jZSxcbiAgICAgICAgICAgIHJlY29yZC5jb3VudHJ5LFxuICAgICAgICAgICAgcmVjb3JkLnBvc3RhbF9jb2RlLFxuICAgICAgICAgICAgcmVjb3JkLnBvYm94LFxuICAgICAgICAgICAgcmVjb3JkLmFkZHJlc3NfYWxpYXMsXG4gICAgICAgICk7XG5cbiAgICAgICAgaWYgKHJlY29yZC51c2VyKSB7XG4gICAgICAgICAgICB0aGlzLnVzZXIgPSBuZXcgRXNvbHZlVHJhbnNhY3Rpb25Vc2VyKFxuICAgICAgICAgICAgICAgICtyZWNvcmQudXNlci5pZCxcbiAgICAgICAgICAgICAgICByZWNvcmQudXNlci5lbWFpbCxcbiAgICAgICAgICAgICAgICByZWNvcmQudXNlci5maXJzdG5hbWUsXG4gICAgICAgICAgICAgICAgcmVjb3JkLnVzZXIuc3VybmFtZSxcbiAgICAgICAgICAgICAgICByZWNvcmQudXNlci50ZWxudW1iZXIsXG4gICAgICAgICAgICAgICAgcmVjb3JkLnVzZXIuY2VsbG51bWJlcixcbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAocmVjb3JkLmNsaWVudCkge1xuICAgICAgICAgICAgdGhpcy5jbGllbnQgPSBuZXcgRXNvbHZlVHJhbnNhY3Rpb25DbGllbnQoXG4gICAgICAgICAgICAgICAgK3JlY29yZC5jbGllbnQuaWQsXG4gICAgICAgICAgICAgICAgcmVjb3JkLmNsaWVudC5hY2NvdW50LFxuICAgICAgICAgICAgICAgIHJlY29yZC5jbGllbnQuY29tcGFueV9uYW1lLFxuICAgICAgICAgICAgICAgIHJlY29yZC5jbGllbnQuYnJhbmNoX2NvZGUsXG4gICAgICAgICAgICAgICAgcmVjb3JkLmNsaWVudC5lbWFpbCxcbiAgICAgICAgICAgICAgICByZWNvcmQuY2xpZW50LmZpcnN0bmFtZSxcbiAgICAgICAgICAgICAgICByZWNvcmQuY2xpZW50LnN1cm5hbWUsXG4gICAgICAgICAgICAgICAgcmVjb3JkLmNsaWVudC5jb250YWN0X251bWJlcixcbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAocmVjb3JkLmxvY2F0aW9uX2RldGFpbHMpIHtcbiAgICAgICAgICAgIHRoaXMubG9jYXRpb24gPSBuZXcgRXNvbHZlVHJhbnNhY3Rpb25Mb2NhdGlvbihcbiAgICAgICAgICAgICAgICByZWNvcmQubG9jYXRpb25fZGV0YWlscyxcbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAocmVjb3JkLnBheW1lbnRfbWV0aG9kX2RldGFpbHMpIHtcbiAgICAgICAgICAgIHRoaXMucGF5bWVudF9tZXRob2QgPSBuZXcgRXNvbHZlVHJhbnNhY3Rpb25QYXltZW50TWV0aG9kKFxuICAgICAgICAgICAgICAgIHJlY29yZC5wYXltZW50X21ldGhvZF9kZXRhaWxzLmlkLFxuICAgICAgICAgICAgICAgIHJlY29yZC5wYXltZW50X21ldGhvZF9kZXRhaWxzLnBheW1ldGhvZF9uYW1lLFxuICAgICAgICAgICAgICAgIHJlY29yZC5wYXltZW50X21ldGhvZF9kZXRhaWxzLmRlc2NyaXB0aW9uLFxuICAgICAgICAgICAgICAgIHJlY29yZC5wYXltZW50X21ldGhvZF9kZXRhaWxzLmludGVncmF0aW9uX3R5cGUsXG4gICAgICAgICAgICAgICAgcmVjb3JkLnBheW1lbnRfbWV0aG9kX2RldGFpbHMuc2VydmljZV9wcm92aWRlcixcbiAgICAgICAgICAgICAgICByZWNvcmQucGF5bWVudF9tZXRob2RfZGV0YWlscy5vbl9hY2NvdW50XG4gICAgICAgICAgICApO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHJlY29yZC5zaGlwcGluZ19tZXRob2RfZGV0YWlscykge1xuICAgICAgICAgICAgdGhpcy5zaGlwcGluZ19tZXRob2QgPSBuZXcgRXNvbHZlVHJhbnNhY3Rpb25TaGlwcGluZ01ldGhvZChcbiAgICAgICAgICAgICAgICArcmVjb3JkLnNoaXBwaW5nX21ldGhvZF9kZXRhaWxzLmlkLFxuICAgICAgICAgICAgICAgIHJlY29yZC5zaGlwcGluZ19tZXRob2RfZGV0YWlscy5jYXJyaWVyX25hbWUsXG4gICAgICAgICAgICAgICAgcmVjb3JkLnNoaXBwaW5nX21ldGhvZF9kZXRhaWxzLmRlbGl2ZXJ5X2NhdGVnb3J5LFxuICAgICAgICAgICAgICAgIHJlY29yZC5zaGlwcGluZ19tZXRob2RfZGV0YWlscy5kZWxpdmVyeV9pbnRlZ3JhdGlvbl90eXBlID8/XG4gICAgICAgICAgICAgICAgICAgICdub25lJyxcbiAgICAgICAgICAgICAgICByZWNvcmQuc2hpcHBpbmdfbWV0aG9kX2RldGFpbHMubG9jYXRpb24sXG4gICAgICAgICAgICAgICAgcmVjb3JkLnNoaXBwaW5nX21ldGhvZF9kZXRhaWxzLmRlc2NyaXB0aW9uLFxuICAgICAgICAgICAgICAgIHJlY29yZC5zaGlwcGluZ19tZXRob2RfZGV0YWlscy5wcmljaW5nLFxuICAgICAgICAgICAgICAgICEhcmVjb3JkLnNoaXBwaW5nX21ldGhvZF9kZXRhaWxzLmNsaWVudF90b19jb2xsZWN0LFxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChyZWNvcmQudGltZV9zbG90KSB7XG4gICAgICAgICAgICB0aGlzLnRpbWVfc2xvdCA9IG5ldyBFc29sdmVUcmFuc2FjdGlvblRpbWVTbG90KHJlY29yZC50aW1lX3Nsb3QpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5wYXJzZVRyYW5zYWN0aW9uSXRlbXMocmVjb3JkLnRyYW5zYWN0aW9uX2l0ZW1zKTtcbiAgICAgICAgdGhpcy5wYXJzZUFsdGVybmF0aXZlcyhyZWNvcmQuYWx0ZXJuYXRpdmVzKTtcblxuICAgICAgICBpZiAocmVjb3JkLmNhcnRfcGlja19pZCAmJiByZWNvcmQucGlja19zdGF0dXMpIHtcbiAgICAgICAgICAgIHRoaXMucGljayA9IG5ldyBFc29sdmVUcmFuc2FjdGlvblBpY2soXG4gICAgICAgICAgICAgICAgK3JlY29yZC5jYXJ0X3BpY2tfaWQsXG4gICAgICAgICAgICAgICAgcmVjb3JkLnBpY2tfYmFsYW5jZWQgPz8gZmFsc2UsXG4gICAgICAgICAgICAgICAgcmVjb3JkLnBpY2tfc3RhdHVzLFxuICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgaWYgKHJlY29yZC5waWNrX3N0YXJ0ICE9PSB1bmRlZmluZWQgJiYgcmVjb3JkLnBpY2tfc3RhcnQgIT09IG51bGwpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnBpY2suc3RhcnRfZGF0ZSA9IG5ldyBEYXRlKCtyZWNvcmQucGlja19zdGFydCAqIDEwMDApO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAocmVjb3JkLnBpY2tfZW5kICE9PSB1bmRlZmluZWQgJiYgcmVjb3JkLnBpY2tfZW5kICE9PSBudWxsKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5waWNrLmVuZF9kYXRlID0gbmV3IERhdGUoK3JlY29yZC5waWNrX2VuZCAqIDEwMDApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5kZWxpdmVyeSA9IG5ldyBFc29sdmVUcmFuc2FjdGlvbkRlbGl2ZXJ5KHJlY29yZCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBwYXJzZVRyYW5zYWN0aW9uSXRlbXMoXG4gICAgICAgIHJlY29yZF9pdGVtczogRXNvbHZlVHJhbnNhY3Rpb25JdGVtUmVjb3JkW10sXG4gICAgKTogdm9pZCB7XG4gICAgICAgIGZvciAoY29uc3QgcmVjb3JkX2l0ZW0gb2YgcmVjb3JkX2l0ZW1zKSB7XG4gICAgICAgICAgICB0aGlzLml0ZW1zLnB1c2gobmV3IEVzb2x2ZVRyYW5zYWN0aW9uSXRlbShyZWNvcmRfaXRlbSkpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBwYXJzZUFsdGVybmF0aXZlcyhyZWNvcmRzPzogRXNvbHZlQ2FydEFsdGVybmF0aXZlUmVjb3JkW10pIHtcbiAgICAgICAgaWYgKCFyZWNvcmRzIHx8IHJlY29yZHMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmFsdGVybmF0aXZlcyA9IG5ldyBNYXAoKTtcblxuICAgICAgICBmb3IgKGNvbnN0IHJlY29yZCBvZiByZWNvcmRzKSB7XG4gICAgICAgICAgICB0aGlzLmFsdGVybmF0aXZlcy5zZXQoXG4gICAgICAgICAgICAgICAgK3JlY29yZC5pdGVtX2lkLFxuICAgICAgICAgICAgICAgIG5ldyBFc29sdmVDYXJ0QWx0ZXJuYXRpdmUocmVjb3JkKSxcbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
@@ -11,4 +11,5 @@ export * from './esolve-transaction-pick.model';
11
11
  export * from './esolve-transaction-time-slot.model';
12
12
  export * from './esolve-transaction-delivery.model';
13
13
  export * from './esolve-transaction.model';
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL25nLWVzb2x2ZS1jb25uZWN0L3NyYy9saWIvdHJhbnNhY3Rpb25zL2NsYXNzZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYyw0QkFBNEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZXNvbHZlLXRyYW5zYWN0aW9uLWFkZHJlc3MubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9lc29sdmUtdHJhbnNhY3Rpb24tY2xpZW50Lm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vZXNvbHZlLXRyYW5zYWN0aW9uLWl0ZW0tcHJpY2UubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9lc29sdmUtdHJhbnNhY3Rpb24taXRlbS5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL2Vzb2x2ZS10cmFuc2FjdGlvbi1saXN0Lm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vZXNvbHZlLXRyYW5zYWN0aW9uLWxvY2F0aW9uLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vZXNvbHZlLXRyYW5zYWN0aW9uLXBheW1lbnQtbWV0aG9kLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vZXNvbHZlLXRyYW5zYWN0aW9uLXNoaXBwaW5nLW1ldGhvZC5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL2Vzb2x2ZS10cmFuc2FjdGlvbi11c2VyLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vZXNvbHZlLXRyYW5zYWN0aW9uLXBpY2subW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9lc29sdmUtdHJhbnNhY3Rpb24tdGltZS1zbG90Lm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vZXNvbHZlLXRyYW5zYWN0aW9uLWRlbGl2ZXJ5Lm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vZXNvbHZlLXRyYW5zYWN0aW9uLm1vZGVsJztcbiJdfQ==
14
+ export * from './esolve-transaction-approval-result.model';
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL25nLWVzb2x2ZS1jb25uZWN0L3NyYy9saWIvdHJhbnNhY3Rpb25zL2NsYXNzZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLDRDQUE0QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9lc29sdmUtdHJhbnNhY3Rpb24tYWRkcmVzcy5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL2Vzb2x2ZS10cmFuc2FjdGlvbi1jbGllbnQubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9lc29sdmUtdHJhbnNhY3Rpb24taXRlbS1wcmljZS5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL2Vzb2x2ZS10cmFuc2FjdGlvbi1pdGVtLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vZXNvbHZlLXRyYW5zYWN0aW9uLWxpc3QubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9lc29sdmUtdHJhbnNhY3Rpb24tbG9jYXRpb24ubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9lc29sdmUtdHJhbnNhY3Rpb24tcGF5bWVudC1tZXRob2QubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9lc29sdmUtdHJhbnNhY3Rpb24tc2hpcHBpbmctbWV0aG9kLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vZXNvbHZlLXRyYW5zYWN0aW9uLXVzZXIubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9lc29sdmUtdHJhbnNhY3Rpb24tcGljay5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL2Vzb2x2ZS10cmFuc2FjdGlvbi10aW1lLXNsb3QubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9lc29sdmUtdHJhbnNhY3Rpb24tZGVsaXZlcnkubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9lc29sdmUtdHJhbnNhY3Rpb24ubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9lc29sdmUtdHJhbnNhY3Rpb24tYXBwcm92YWwtcmVzdWx0Lm1vZGVsJztcbiJdfQ==
@@ -5,7 +5,8 @@ import { EsolveConfigService } from '../core';
5
5
  import { EsolveSessionService } from '../session';
6
6
  import { EsolveErrorHandlerService } from '../shared/errors';
7
7
  import { EsolveFilterFactory } from '../shared/filters';
8
- import { EsolveTransaction, EsolveTransactionList } from './classes';
8
+ import { EsolveResponseHandlerService } from '../shared/response';
9
+ import { EsolveTransaction, EsolveTransactionApprovalResult, EsolveTransactionList } from './classes';
9
10
  import * as i0 from "@angular/core";
10
11
  export class EsolveTransactionsService {
11
12
  get user_id() {
@@ -22,6 +23,7 @@ export class EsolveTransactionsService {
22
23
  this.http = inject(HttpClient);
23
24
  this.sessionService = inject(EsolveSessionService);
24
25
  this.errorHandler = inject(EsolveErrorHandlerService);
26
+ this.responseHandler = inject(EsolveResponseHandlerService);
25
27
  this._user_id = 0;
26
28
  this.sessionService.getSession().subscribe((session) => {
27
29
  if (session.token !== '') {
@@ -40,6 +42,12 @@ export class EsolveTransactionsService {
40
42
  if (options.clients_id) {
41
43
  params = params.set('clients_id', options.clients_id);
42
44
  }
45
+ if (options.key) {
46
+ params = params.set('key', options.key);
47
+ }
48
+ if (options.approval_state) {
49
+ params = params.set('approval_state', options.approval_state);
50
+ }
43
51
  if (options.erp_identifier) {
44
52
  params = params.set('erp_identifier', options.erp_identifier);
45
53
  }
@@ -141,6 +149,28 @@ export class EsolveTransactionsService {
141
149
  return throwError(() => error);
142
150
  }
143
151
  }
152
+ /**
153
+ * Sets data to the service on weather the order is approve or not.
154
+ *
155
+ * @param approval_state It is used to identify the specific cart item for which the alternative is being set
156
+ * @returns an Observable of type EsolveTransactionApprovalResult.
157
+ */
158
+ setTranactionApprovalState(approval_state) {
159
+ return this.http
160
+ .post(`${this.config.api_url}/set-transaction-approval.php`, approval_state, {
161
+ headers: {
162
+ 'Content-Type': 'application/x-www-form-urlencoded;charset=utf-8;',
163
+ },
164
+ responseType: 'json',
165
+ observe: 'body',
166
+ })
167
+ .pipe(map((http_response) => this.responseHandler.validateSingleHttpResponse(http_response, (response) => {
168
+ if (typeof response.esolve_id === 'string') {
169
+ throw new Error('Invalid response id.');
170
+ }
171
+ return new EsolveTransactionApprovalResult(response);
172
+ })));
173
+ }
144
174
  loginGuard() {
145
175
  if (this.user_id <= 0) {
146
176
  this.errorHandler.throwError('login_required', 'Login is required');
@@ -165,4 +195,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
165
195
  providedIn: 'root',
166
196
  }]
167
197
  }], ctorParameters: () => [] });
168
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLXRyYW5zYWN0aW9ucy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9uZy1lc29sdmUtY29ubmVjdC9zcmMvbGliL3RyYW5zYWN0aW9ucy9lc29sdmUtdHJhbnNhY3Rpb25zLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUM5RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVuRCxPQUFPLEVBQWMsR0FBRyxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVuRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDOUMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ2xELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzdELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRXhELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLFdBQVcsQ0FBQzs7QUFTckUsTUFBTSxPQUFPLHlCQUF5QjtJQVFsQyxJQUFXLE9BQU87UUFDZCxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDekIsQ0FBQztJQUVELElBQVcsT0FBTyxDQUFDLEtBQWE7UUFDNUIsS0FBSyxHQUFHLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRTlCLElBQUksSUFBSSxDQUFDLFFBQVEsS0FBSyxLQUFLLEVBQUUsQ0FBQztZQUMxQixJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztRQUMxQixDQUFDO0lBQ0wsQ0FBQztJQUVEO1FBbkJpQixXQUFNLEdBQUcsTUFBTSxDQUFD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TyxVQUFVO1FBQ2QsSUFBSSxJQUFJLENBQUMsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQ3BCLElBQUksQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLGdCQUFnQixFQUFFLG1CQUFtQixDQUFDLENBQUM7UUFDeEUsQ0FBQztJQUNMLENBQUM7SUFFTyxtQkFBbUIsQ0FDdkIsT0FBa0M7UUFFbEMsTUFBTSxZQUFZLEdBQXdCLEVBQUUsQ0FBQztRQUU3QyxJQUFJLE9BQU8sRUFBRSxDQUFDO1lBQ1YsS0FBSyxNQUFNLE1BQU0sSUFBSSxPQUFPLEVBQUUsQ0FBQztnQkFDM0IsTUFBTSxXQUFXLEdBQUcsSUFBSSxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFFbEQsWUFBWSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUNuQyxDQUFDO1FBQ0wsQ0FBQztRQUVELE9BQU8sWUFBWSxDQUFDO0lBQ3hCLENBQUM7OEdBak9RLHlCQUF5QjtrSEFBekIseUJBQXlCLGNBRnRCLE1BQU07OzJGQUVULHlCQUF5QjtrQkFIckMsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwUGFyYW1zIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IE9ic2VydmFibGUsIG1hcCwgdGhyb3dFcnJvciB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBFc29sdmVDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi4vY29yZSc7XG5pbXBvcnQgeyBFc29sdmVTZXNzaW9uU2VydmljZSB9IGZyb20gJy4uL3Nlc3Npb24nO1xuaW1wb3J0IHsgRXNvbHZlRXJyb3JIYW5kbGVyU2VydmljZSB9IGZyb20gJy4uL3NoYXJlZC9lcnJvcnMnO1xuaW1wb3J0IHsgRXNvbHZlRmlsdGVyRmFjdG9yeSB9IGZyb20gJy4uL3NoYXJlZC9maWx0ZXJzJztcbmltcG9ydCB7IEVzb2x2ZUdldFJlc3BvbnNlIH0gZnJvbSAnLi4vc2hhcmVkL3Jlc3BvbnNlJztcbmltcG9ydCB7IEVzb2x2ZVRyYW5zYWN0aW9uLCBFc29sdmVUcmFuc2FjdGlvbkxpc3QgfSBmcm9tICcuL2NsYXNzZXMnO1xuaW1wb3J0IHtcbiAgICBFc29sdmVUcmFuc2FjdGlvbk9wdGlvbnMsXG4gICAgRXNvbHZlVHJhbnNhY3Rpb25SZWNvcmQsXG59IGZyb20gJy4vaW50ZXJmYWNlcyc7XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIEVzb2x2ZVRyYW5zYWN0aW9uc1NlcnZpY2Uge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgY29uZmlnID0gaW5qZWN0KEVzb2x2ZUNvbmZpZ1NlcnZpY2UpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgaHR0cCA9IGluamVjdChIdHRwQ2xpZW50KTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHNlc3Npb25TZXJ2aWNlID0gaW5qZWN0KEVzb2x2ZVNlc3Npb25TZXJ2aWNlKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGVycm9ySGFuZGxlciA9IGluamVjdChFc29sdmVFcnJvckhhbmRsZXJTZXJ2aWNlKTtcblxuICAgIHByaXZhdGUgX3VzZXJfaWQgPSAwO1xuXG4gICAgcHVibGljIGdldCB1c2VyX2lkKCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLl91c2VyX2lkO1xuICAgIH1cblxuICAgIHB1YmxpYyBzZXQgdXNlcl9pZCh2YWx1ZTogbnVtYmVyKSB7XG4gICAgICAgIHZhbHVlID0gdmFsdWUgPiAwID8gdmFsdWUgOiAwO1xuXG4gICAgICAgIGlmICh0aGlzLl91c2VyX2lkICE9PSB2YWx1ZSkge1xuICAgICAgICAgICAgdGhpcy5fdXNlcl9pZCA9IHZhbHVlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHRoaXMuc2Vzc2lvblNlcnZpY2UuZ2V0U2Vzc2lvbigpLnN1YnNjcmliZSgoc2Vzc2lvbikgPT4ge1xuICAgICAgICAgICAgaWYgKHNlc3Npb24udG9rZW4gIT09ICcnKSB7XG4gICAgICAgICAgICAgICAgdGhpcy51c2VyX2lkID0gc2Vzc2lvbi51c2VyX2lkO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0VHJhbnNhY3Rpb25zKFxuICAgICAgICBvcHRpb25zOiBFc29sdmVUcmFuc2FjdGlvbk9wdGlvbnMgPSB7fSxcbiAgICApOiBPYnNlcnZhYmxlPEVzb2x2ZVRyYW5zYWN0aW9uTGlzdD4ge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgdGhpcy5sb2dpbkd1YXJkKCk7XG5cbiAgICAgICAgICAgIGxldCBwYXJhbXMgPSBuZXcgSHR0cFBhcmFtcygpO1xuXG4gICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCd1c2VyX2lkJywgdGhpcy51c2VyX2lkKTtcblxuICAgICAgICAgICAgaWYgKG9wdGlvbnMudXNlcl9pZCAmJiBvcHRpb25zLnVzZXJfaWQgPT09IC0xKSB7XG4gICAgICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldCgndXNlcl9pZCcsIC0xKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKG9wdGlvbnMuY2xpZW50c19pZCkge1xuICAgICAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ2NsaWVudHNfaWQnLCBvcHRpb25zLmNsaWVudHNfaWQpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAob3B0aW9ucy5lcnBfaWRlbnRpZmllcikge1xuICAgICAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ2VycF9pZGVudGlmaWVyJywgb3B0aW9ucy5lcnBfaWRlbnRpZmllcik7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChvcHRpb25zLmxvY2F0aW9uX2lkKSB7XG4gICAgICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldCgnbG9jYXRpb25faWQnLCBvcHRpb25zLmxvY2F0aW9uX2lkKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKG9wdGlvbnMudHlwZSkge1xuICAgICAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ3R5cGUnLCBvcHRpb25zLnR5cGUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAob3B0aW9ucy5wYWdlKSB7XG4gICAgICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldCgncGFnZScsIG9wdGlvbnMucGFnZSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChvcHRpb25zLnJvd3MpIHtcbiAgICAgICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdyb3dzJywgb3B0aW9ucy5yb3dzKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKG9wdGlvbnMuZnJvbV9kYXRlKSB7XG4gICAgICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldCgnZnJvbV9kYXRlJywgb3B0aW9ucy5mcm9tX2RhdGUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAob3B0aW9ucy50b19kYXRlKSB7XG4gICAgICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldCgndG9fZGF0ZScsIG9wdGlvbnMudG9fZGF0ZSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChvcHRpb25zLnBpY2tfc3RhdHVzKSB7XG4gICAgICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldCgncGlja19zdGF0dXMnLCBvcHRpb25zLnBpY2tfc3RhdHVzKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKG9wdGlvbnMuZnJvbV9pZCkge1xuICAgICAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ2Zyb21faWQnLCBvcHRpb25zLmZyb21faWQpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAob3B0aW9ucy50b19pZCkge1xuICAgICAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ3RvX2lkJywgb3B0aW9ucy50b19pZCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChvcHRpb25zLm5vdF9zeW5jZWQpIHtcbiAgICAgICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdub3Rfc3luY2VkJywgb3B0aW9ucy5ub3Rfc3luY2VkKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKG9wdGlvbnMucGFpZCkge1xuICAgICAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ3BhaWQnLCBvcHRpb25zLnBhaWQpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAob3B0aW9ucy5mcm9tX3RhcmdldF9kYXRlKSB7XG4gICAgICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldChcbiAgICAgICAgICAgICAgICAgICAgJ2Zyb21fdGFyZ2V0X2RhdGUnLFxuICAgICAgICAgICAgICAgICAgICBvcHRpb25zLmZyb21fdGFyZ2V0X2RhdGUsXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKG9wdGlvbnMudG9fdGFyZ2V0X2RhdGUpIHtcbiAgICAgICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCd0b190YXJnZXRfZGF0ZScsIG9wdGlvbnMudG9fdGFyZ2V0X2RhdGUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAob3B0aW9ucy5zb3J0KSB7XG4gICAgICAgICAgICAgICAgY29uc3Qgc29ydCA9IG9wdGlvbnMuc29ydDtcblxuICAgICAgICAgICAgICAgIGlmIChzb3J0LmZpZWxkKSB7XG4gICAgICAgICAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ3NvcnQnLCBzb3J0LmZpZWxkKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpZiAoc29ydC5vcmRlcikge1xuICAgICAgICAgICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdvcmRlcicsIHNvcnQub3JkZXIpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKG9wdGlvbnMuZmlsdGVycykge1xuICAgICAgICAgICAgICAgIGxldCBmaWx0ZXJzID0gb3B0aW9ucy5maWx0ZXJzO1xuXG4gICAgICAgICAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KGZpbHRlcnMpKSB7XG4gICAgICAgICAgICAgICAgICAgIGZpbHRlcnMgPSBFc29sdmVGaWx0ZXJGYWN0b3J5LmNvdmVydEZyb21PYmooZmlsdGVycyk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcGFyYW1zID0gRXNvbHZlRmlsdGVyRmFjdG9yeS5jb252ZXJ0VG9IdHRwUGFyYW1zKFxuICAgICAgICAgICAgICAgICAgICBmaWx0ZXJzLFxuICAgICAgICAgICAgICAgICAgICBwYXJhbXMsXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuaHR0cFxuICAgICAgICAgICAgICAgIC5nZXQ8RXNvbHZlR2V0UmVzcG9uc2U8RXNvbHZlVHJhbnNhY3Rpb25SZWNvcmRbXT4+KFxuICAgICAgICAgICAgICAgICAgICBgJHt0aGlzLmNvbmZpZy5hcGlfdXJsfS9nZXQtdHJhbnNhY3Rpb25zLnBocGAsXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtczogcGFyYW1zLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICAgICAgbWFwKChyZXNwb25zZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJlc3BvbnNlLnJlY29yZHMgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IHJlc3BvbnNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBpdGVtcyA9IHRoaXMucHJvY2Vzc1RyYW5zYWN0aW9ucyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNwb25zZS5yZWNvcmRzLFxuICAgICAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHRvdGFsID0gKyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNwb25zZS5hZGRpdGlvbmFsX2RhdGEudG90YWxfcmVjb3JkcyA/PyAwXG4gICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgcm93cyA9IG9wdGlvbnMucm93cyA/PyB0b3RhbDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHBhZ2UgPSBvcHRpb25zLnBhZ2UgfHwgMTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG5ldyBFc29sdmVUcmFuc2FjdGlvbkxpc3QoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbXMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFnZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3dzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvdGFsLFxuICAgICAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+IGVycm9yKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBnZXRUcmFuc2FjdGlvbihcbiAgICAgICAgaWQ6IG51bWJlcixcbiAgICAgICAgdXNlcl9pZD86IG51bWJlcixcbiAgICAgICAgY2xpZW50c19pZD86IG51bWJlcixcbiAgICApOiBPYnNlcnZhYmxlPEVzb2x2ZVRyYW5zYWN0aW9uPiB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICB0aGlzLmxvZ2luR3VhcmQoKTtcblxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuaHR0cFxuICAgICAgICAgICAgICAgIC5nZXQ8RXNvbHZlR2V0UmVzcG9uc2U8RXNvbHZlVHJhbnNhY3Rpb25SZWNvcmRbXT4+KFxuICAgICAgICAgICAgICAgICAgICBgJHt0aGlzLmNvbmZpZy5hcGlfdXJsfS9nZXQtdHJhbnNhY3Rpb25zLnBocGAsXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZXJfaWQ6IHVzZXJfaWQgPz8gdGhpcy51c2VyX2lkLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zYWN0aW9uX2lkOiBpZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGllbnRzX2lkOiBjbGllbnRzX2lkID8/IDAsXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICAgICAgbWFwKChyZXNwb25zZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3BvbnNlLnJlY29yZHMgPT09IHVuZGVmaW5lZCB8fFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3BvbnNlLnJlY29yZHMubGVuZ3RoIDw9IDBcbiAgICAgICAgICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IHJlc3BvbnNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBpdGVtcyA9IHRoaXMucHJvY2Vzc1RyYW5zYWN0aW9ucyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNwb25zZS5yZWNvcmRzLFxuICAgICAgICAgICAgICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGl0ZW1zWzBdO1xuICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoKCkgPT4gZXJyb3IpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBsb2dpbkd1YXJkKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy51c2VyX2lkIDw9IDApIHtcbiAgICAgICAgICAgIHRoaXMuZXJyb3JIYW5kbGVyLnRocm93RXJyb3IoJ2xvZ2luX3JlcXVpcmVkJywgJ0xvZ2luIGlzIHJlcXVpcmVkJyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHByb2Nlc3NUcmFuc2FjdGlvbnMoXG4gICAgICAgIHJlY29yZHM6IEVzb2x2ZVRyYW5zYWN0aW9uUmVjb3JkW10sXG4gICAgKTogRXNvbHZlVHJhbnNhY3Rpb25bXSB7XG4gICAgICAgIGNvbnN0IHRyYW5zYWN0aW9uczogRXNvbHZlVHJhbnNhY3Rpb25bXSA9IFtdO1xuXG4gICAgICAgIGlmIChyZWNvcmRzKSB7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IHJlY29yZCBvZiByZWNvcmRzKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgdHJhbnNhY3Rpb24gPSBuZXcgRXNvbHZlVHJhbnNhY3Rpb24ocmVjb3JkKTtcblxuICAgICAgICAgICAgICAgIHRyYW5zYWN0aW9ucy5wdXNoKHRyYW5zYWN0aW9uKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0cmFuc2FjdGlvbnM7XG4gICAgfVxufVxuIl19
198
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLXRyYW5zYWN0aW9ucy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9uZy1lc29sdmUtY29ubmVjdC9zcmMvbGliL3RyYW5zYWN0aW9ucy9lc29sdmUtdHJhbnNhY3Rpb25zLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUM5RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVuRCxPQUFPLEVBQWMsR0FBRyxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVuRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDOUMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ2xELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzdELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3hELE9BQU8sRUFBcUIsNEJBQTRCLEVBQXFCLE1BQU0sb0JBQW9CLENBQUM7QUFDeEcsT0FBTyxFQUFFLGlCQUFpQixFQUFFLCtCQUErQixFQUFFLHFCQUFxQixFQUFFLE1BQU0sV0FBVyxDQUFDOztBQVV0RyxNQUFNLE9BQU8seUJBQXlCO0lBU2xDLElBQVcsT0FBTztRQUNkLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN6QixDQUFDO0lBRUQsSUFBVyxPQUFPLENBQUMsS0FBYTtRQUM1QixLQUFLLEdBQUcsS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFOUIsSUFBSSxJQUFJLENBQUMsUUFBUSxLQUFLLEtBQUssRUFBRSxDQUFDO1lBQzFCLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO1FBQzFCLENBQUM7SUFDTCxDQUFDO0lBRUQ7UUFwQmlCLFdBQU0sR0FBRyxNQUFNLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUNyQyxTQUFJLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzFCLG1CQUFjLEdBQUcsTUFBTSxDQUFDLG9CQUFvQixDQUFDLENBQUM7UUFDOUMsaUJBQVksR0FBRyxNQUFNLENBQUMseUJBQXlCLENBQUMsQ0FBQztRQUNqRCxvQkFBZSxHQUFHLE1BQU0sQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO1FBRWhFLGFBQVEsR0FBRyxDQUFDLENBQUM7UUFlakIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRTtZQUNuRCxJQUFJLE9BQU8sQ0FBQyxLQUFLLEtBQUssRUFBRSxFQUFFLENBQUM7Z0JBQ3ZCLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQztZQUNuQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU0sZUFBZSxDQUNsQixVQUFvQyxFQUFFO1FBRXRDLElBQUksQ0FBQztZQUNELElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUVsQixJQUFJLE1BQU0sR0FBRyxJQUFJLFVBQVUsRUFBRSxDQUFDO1lBRTlCLE1BQU0sR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFFN0MsSUFBSSxPQUFPLENBQUMsT0FBTyxJQUFJLE9BQU8sQ0FBQyxPQUFPLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQztnQkFDNUMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDdkMsQ0FBQztZQUVELElBQUksT0FBTyxDQUFDLFVBQVUsRUFBRSxDQUFDO2dCQUNyQixNQUFNLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQzFELENBQUM7WUFFRCxJQUFJLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQztnQkFDZCxNQUFNLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQzVDLENBQUM7WUFFRCxJQUFJLE9BQU8sQ0FBQyxjQUFjLEVBQUUsQ0FBQztnQkFDekIsTUFBTSxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLEVBQUUsT0FBTyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1lBQ2xFLENBQUM7WUFFRCxJQUFJLE9BQU8sQ0FBQyxjQUFjLEVBQUUsQ0FBQztnQkFDekIsTUFBTSxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLEVBQUUsT0FBTyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1lBQ2xFLENBQUM7WUFFRCxJQUFJLE9BQU8sQ0FBQyxXQUFXLEVBQUUsQ0FBQztnQkFDdEIsTUFBTSxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUM1RCxDQUFDO1lBRUQsSUFBSSxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBQ2YsTUFBTSxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUM5QyxDQUFDO1lBRUQsSUFBSSxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBQ2YsTUFBTSxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUM5QyxDQUFDO1lBRUQsSUFBSSxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBQ2YsTUFBTSxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUM5QyxDQUFDO1lBRUQsSUFBSSxPQUFPLENBQUMsU0FBUyxFQUFFLENBQUM7Z0JBQ3BCLE1BQU0sR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLFdBQVcsRUFBRSxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDeEQsQ0FBQztZQUVELElBQUksT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDO2dCQUNsQixNQUFNLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxTQUFTLEVBQUUsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ3BELENBQUM7WUFFRCxJQUFJLE9BQU8sQ0FBQyxXQUFXLEVBQUUsQ0FBQztnQkFDdEIsTUFBTSxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUM1RCxDQUFDO1lBRUQsSUFBSSxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7Z0JBQ2xCLE1BQU0sR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDcEQsQ0FBQztZQUVELElBQUksT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO2dCQUNoQixNQUFNLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ2hELENBQUM7WUFFRCxJQUFJLE9BQU8sQ0FBQyxVQUFVLEVBQUUsQ0FBQztnQkFDckIsTUFBTSxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUMxRCxDQUFDO1lBRUQsSUFBSSxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBQ2YsTUFBTSxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUM5QyxDQUFDO1lBRUQsSUFBSSxPQUFPLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztnQkFDM0IsTUFBTSxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQ2Ysa0JBQWtCLEVBQ2xCLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FDM0IsQ0FBQztZQUNOLENBQUM7WUFFRCxJQUFJLE9BQU8sQ0FBQyxjQUFjLEVBQUUsQ0FBQztnQkFDekIsTUFBTSxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLEVBQUUsT0FBTyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1lBQ2xFLENBQUM7WUFFRCxJQUFJLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztnQkFDZixNQUFNLElBQUksR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDO2dCQUUxQixJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztvQkFDYixNQUFNLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUM1QyxDQUFDO2dCQUVELElBQUksSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO29CQUNiLE1BQU0sR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQzdDLENBQUM7WUFDTCxDQUFDO1lBRUQsSUFBSSxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7Z0JBQ2xCLElBQUksT0FBTyxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUM7Z0JBRTlCLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7b0JBQzFCLE9BQU8sR0FBRyxtQkFBbUIsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUM7Z0JBQ3pELENBQUM7Z0JBRUQsTUFBTSxHQUFHLG1CQUFtQixDQUFDLG1CQUFtQixDQUM1QyxPQUFPLEVBQ1AsTUFBTSxDQUNULENBQUM7WUFDTixDQUFDO1lBRUQsT0FBTyxJQUFJLENBQUMsSUFBSTtpQkFDWCxHQUFHLENBQ0EsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sdUJBQXVCLEVBQzdDO2dCQUNJLE1BQU0sRUFBRSxNQUFNO2FBQ2pCLENBQ0o7aUJBQ0EsSUFBSSxDQUNELEdBQUcsQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFO2dCQUNiLElBQUksUUFBUSxDQUFDLE9BQU8sS0FBSyxTQUFTLEVBQUUsQ0FBQztvQkFDakMsTUFBTSxRQUFRLENBQUM7Z0JBQ25CLENBQUM7Z0JBRUQsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUNsQyxRQUFRLENBQUMsT0FBTyxDQUNuQixDQUFDO2dCQUNGLE1BQU0sS0FBSyxHQUFHLENBQUMsQ0FDWCxRQUFRLENBQUMsZUFBZSxDQUFDLGFBQWEsSUFBSSxDQUFDLENBQzlDLENBQUM7Z0JBQ0YsTUFBTSxJQUFJLEdBQUcsT0FBTyxDQUFDLElBQUksSUFBSSxLQUFLLENBQUM7Z0JBQ25DLE1BQU0sSUFBSSxHQUFHLE9BQU8sQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDO2dCQUUvQixPQUFPLElBQUkscUJBQXFCLENBQzVCLEtBQUssRUFDTCxJQUFJLEVBQ0osSUFBSSxFQUNKLEtBQUssQ0FDUixDQUFDO1lBQ04sQ0FBQyxDQUFDLENBQ0wsQ0FBQztRQUNWLENBQUM7UUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1lBQ2IsT0FBTyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbkMsQ0FBQztJQUNMLENBQUM7SUFFTSxjQUFjLENBQ2pCLEVBQVUsRUFDVixPQUFnQixFQUNoQixVQUFtQjtRQUVuQixJQUFJLENBQUM7WUFDRCxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7WUFFbEIsT0FBTyxJQUFJLENBQUMsSUFBSTtpQkFDWCxHQUFHLENBQ0EsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sdUJBQXVCLEVBQzdDO2dCQUNJLE1BQU0sRUFBRTtvQkFDSixPQUFPLEVBQUUsT0FBTyxJQUFJLElBQUksQ0FBQyxPQUFPO29CQUNoQyxjQUFjLEVBQUUsRUFBRTtvQkFDbEIsVUFBVSxFQUFFLFVBQVUsSUFBSSxDQUFDO2lCQUM5QjthQUNKLENBQ0o7aUJBQ0EsSUFBSSxDQUNELEdBQUcsQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFO2dCQUNiLElBQ0ksUUFBUSxDQUFDLE9BQU8sS0FBSyxTQUFTO29CQUM5QixRQUFRLENBQUMsT0FBTyxDQUFDLE1BQU0sSUFBSSxDQUFDLEVBQzlCLENBQUM7b0JBQ0MsTUFBTSxRQUFRLENBQUM7Z0JBQ25CLENBQUM7Z0JBRUQsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUNsQyxRQUFRLENBQUMsT0FBTyxDQUNuQixDQUFDO2dCQUVGLE9BQU8sS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3BCLENBQUMsQ0FBQyxDQUNMLENBQUM7UUFDVixDQUFDO1FBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztZQUNiLE9BQU8sVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ25DLENBQUM7SUFDTCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSSwwQkFBMEIsQ0FDN0IsY0FBd0M7UUFFeEMsT0FBTyxJQUFJLENBQUMsSUFBSTthQUNYLElBQUksQ0FDRCxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTywrQkFBK0IsRUFDckQsY0FBYyxFQUNkO1lBQ0ksT0FBTyxFQUFFO2dCQUNMLGNBQWMsRUFDVixrREFBa0Q7YUFDekQ7WUFDRCxZQUFZLEVBQUUsTUFBTTtZQUNwQixPQUFPLEVBQUUsTUFBTTtTQUNsQixDQUNKO2FBQ0EsSUFBSSxDQUNELEdBQUcsQ0FBQyxDQUFDLGFBQWEsRUFBRSxFQUFFLENBQ2xCLElBQUksQ0FBQyxlQUFlLENBQUMsMEJBQTBCLENBQzNDLGFBQWEsRUFDYixDQUFDLFFBQVEsRUFBRSxFQUFFO1lBQ1QsSUFBSSxPQUFPLFFBQVEsQ0FBQyxTQUFTLEtBQUssUUFBUSxFQUFFLENBQUM7Z0JBQ3pDLE1BQU0sSUFBSSxLQUFLLENBQUMsc0JBQXNCLENBQUMsQ0FBQztZQUM1QyxDQUFDO1lBRUQsT0FBTyxJQUFJLCtCQUErQixDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3pELENBQUMsQ0FDSixDQUNKLENBQ0osQ0FBQztJQUNWLENBQUM7SUFFTyxVQUFVO1FBQ2QsSUFBSSxJQUFJLENBQUMsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQ3BCLElBQUksQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLGdCQUFnQixFQUFFLG1CQUFtQixDQUFDLENBQUM7UUFDeEUsQ0FBQztJQUNMLENBQUM7SUFFTyxtQkFBbUIsQ0FDdkIsT0FBa0M7UUFFbEMsTUFBTSxZQUFZLEdBQXdCLEVBQUUsQ0FBQztRQUU3QyxJQUFJLE9BQU8sRUFBRSxDQUFDO1lBQ1YsS0FBSyxNQUFNLE1BQU0sSUFBSSxPQUFPLEVBQUUsQ0FBQztnQkFDM0IsTUFBTSxXQUFXLEdBQUcsSUFBSSxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFFbEQsWUFBWSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUNuQyxDQUFDO1FBQ0wsQ0FBQztRQUVELE9BQU8sWUFBWSxDQUFDO0lBQ3hCLENBQUM7OEdBaFJRLHlCQUF5QjtrSEFBekIseUJBQXlCLGNBRnRCLE1BQU07OzJGQUVULHlCQUF5QjtrQkFIckMsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwUGFyYW1zIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IE9ic2VydmFibGUsIG1hcCwgdGhyb3dFcnJvciB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBFc29sdmVDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi4vY29yZSc7XG5pbXBvcnQgeyBFc29sdmVTZXNzaW9uU2VydmljZSB9IGZyb20gJy4uL3Nlc3Npb24nO1xuaW1wb3J0IHsgRXNvbHZlRXJyb3JIYW5kbGVyU2VydmljZSB9IGZyb20gJy4uL3NoYXJlZC9lcnJvcnMnO1xuaW1wb3J0IHsgRXNvbHZlRmlsdGVyRmFjdG9yeSB9IGZyb20gJy4uL3NoYXJlZC9maWx0ZXJzJztcbmltcG9ydCB7IEVzb2x2ZUdldFJlc3BvbnNlLCBFc29sdmVSZXNwb25zZUhhbmRsZXJTZXJ2aWNlLCBFc29sdmVTZXRSZXNwb25zZSB9IGZyb20gJy4uL3NoYXJlZC9yZXNwb25zZSc7XG5pbXBvcnQgeyBFc29sdmVUcmFuc2FjdGlvbiwgRXNvbHZlVHJhbnNhY3Rpb25BcHByb3ZhbFJlc3VsdCwgRXNvbHZlVHJhbnNhY3Rpb25MaXN0IH0gZnJvbSAnLi9jbGFzc2VzJztcbmltcG9ydCB7XG4gICAgRXNvbHZlVHJhbmFjdGlvbkFwcHJvdmFsLFxuICAgIEVzb2x2ZVRyYW5zYWN0aW9uT3B0aW9ucyxcbiAgICBFc29sdmVUcmFuc2FjdGlvblJlY29yZCxcbn0gZnJvbSAnLi9pbnRlcmZhY2VzJztcblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgRXNvbHZlVHJhbnNhY3Rpb25zU2VydmljZSB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBjb25maWcgPSBpbmplY3QoRXNvbHZlQ29uZmlnU2VydmljZSk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBodHRwID0gaW5qZWN0KEh0dHBDbGllbnQpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgc2Vzc2lvblNlcnZpY2UgPSBpbmplY3QoRXNvbHZlU2Vzc2lvblNlcnZpY2UpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZXJyb3JIYW5kbGVyID0gaW5qZWN0KEVzb2x2ZUVycm9ySGFuZGxlclNlcnZpY2UpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgcmVzcG9uc2VIYW5kbGVyID0gaW5qZWN0KEVzb2x2ZVJlc3BvbnNlSGFuZGxlclNlcnZpY2UpO1xuXG4gICAgcHJpdmF0ZSBfdXNlcl9pZCA9IDA7XG5cbiAgICBwdWJsaWMgZ2V0IHVzZXJfaWQoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3VzZXJfaWQ7XG4gICAgfVxuXG4gICAgcHVibGljIHNldCB1c2VyX2lkKHZhbHVlOiBudW1iZXIpIHtcbiAgICAgICAgdmFsdWUgPSB2YWx1ZSA+IDAgPyB2YWx1ZSA6IDA7XG5cbiAgICAgICAgaWYgKHRoaXMuX3VzZXJfaWQgIT09IHZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLl91c2VyX2lkID0gdmFsdWU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgdGhpcy5zZXNzaW9uU2VydmljZS5nZXRTZXNzaW9uKCkuc3Vic2NyaWJlKChzZXNzaW9uKSA9PiB7XG4gICAgICAgICAgICBpZiAoc2Vzc2lvbi50b2tlbiAhPT0gJycpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnVzZXJfaWQgPSBzZXNzaW9uLnVzZXJfaWQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRUcmFuc2FjdGlvbnMoXG4gICAgICAgIG9wdGlvbnM6IEVzb2x2ZVRyYW5zYWN0aW9uT3B0aW9ucyA9IHt9LFxuICAgICk6IE9ic2VydmFibGU8RXNvbHZlVHJhbnNhY3Rpb25MaXN0PiB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICB0aGlzLmxvZ2luR3VhcmQoKTtcblxuICAgICAgICAgICAgbGV0IHBhcmFtcyA9IG5ldyBIdHRwUGFyYW1zKCk7XG5cbiAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ3VzZXJfaWQnLCB0aGlzLnVzZXJfaWQpO1xuXG4gICAgICAgICAgICBpZiAob3B0aW9ucy51c2VyX2lkICYmIG9wdGlvbnMudXNlcl9pZCA9PT0gLTEpIHtcbiAgICAgICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCd1c2VyX2lkJywgLTEpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAob3B0aW9ucy5jbGllbnRzX2lkKSB7XG4gICAgICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldCgnY2xpZW50c19pZCcsIG9wdGlvbnMuY2xpZW50c19pZCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChvcHRpb25zLmtleSkge1xuICAgICAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ2tleScsIG9wdGlvbnMua2V5KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKG9wdGlvbnMuYXBwcm92YWxfc3RhdGUpIHtcbiAgICAgICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdhcHByb3ZhbF9zdGF0ZScsIG9wdGlvbnMuYXBwcm92YWxfc3RhdGUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAob3B0aW9ucy5lcnBfaWRlbnRpZmllcikge1xuICAgICAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ2VycF9pZGVudGlmaWVyJywgb3B0aW9ucy5lcnBfaWRlbnRpZmllcik7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChvcHRpb25zLmxvY2F0aW9uX2lkKSB7XG4gICAgICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldCgnbG9jYXRpb25faWQnLCBvcHRpb25zLmxvY2F0aW9uX2lkKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKG9wdGlvbnMudHlwZSkge1xuICAgICAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ3R5cGUnLCBvcHRpb25zLnR5cGUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAob3B0aW9ucy5wYWdlKSB7XG4gICAgICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldCgncGFnZScsIG9wdGlvbnMucGFnZSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChvcHRpb25zLnJvd3MpIHtcbiAgICAgICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdyb3dzJywgb3B0aW9ucy5yb3dzKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKG9wdGlvbnMuZnJvbV9kYXRlKSB7XG4gICAgICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldCgnZnJvbV9kYXRlJywgb3B0aW9ucy5mcm9tX2RhdGUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAob3B0aW9ucy50b19kYXRlKSB7XG4gICAgICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldCgndG9fZGF0ZScsIG9wdGlvbnMudG9fZGF0ZSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChvcHRpb25zLnBpY2tfc3RhdHVzKSB7XG4gICAgICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldCgncGlja19zdGF0dXMnLCBvcHRpb25zLnBpY2tfc3RhdHVzKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKG9wdGlvbnMuZnJvbV9pZCkge1xuICAgICAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ2Zyb21faWQnLCBvcHRpb25zLmZyb21faWQpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAob3B0aW9ucy50b19pZCkge1xuICAgICAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ3RvX2lkJywgb3B0aW9ucy50b19pZCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChvcHRpb25zLm5vdF9zeW5jZWQpIHtcbiAgICAgICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdub3Rfc3luY2VkJywgb3B0aW9ucy5ub3Rfc3luY2VkKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKG9wdGlvbnMucGFpZCkge1xuICAgICAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ3BhaWQnLCBvcHRpb25zLnBhaWQpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAob3B0aW9ucy5mcm9tX3RhcmdldF9kYXRlKSB7XG4gICAgICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldChcbiAgICAgICAgICAgICAgICAgICAgJ2Zyb21fdGFyZ2V0X2RhdGUnLFxuICAgICAgICAgICAgICAgICAgICBvcHRpb25zLmZyb21fdGFyZ2V0X2RhdGUsXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKG9wdGlvbnMudG9fdGFyZ2V0X2RhdGUpIHtcbiAgICAgICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCd0b190YXJnZXRfZGF0ZScsIG9wdGlvbnMudG9fdGFyZ2V0X2RhdGUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAob3B0aW9ucy5zb3J0KSB7XG4gICAgICAgICAgICAgICAgY29uc3Qgc29ydCA9IG9wdGlvbnMuc29ydDtcblxuICAgICAgICAgICAgICAgIGlmIChzb3J0LmZpZWxkKSB7XG4gICAgICAgICAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ3NvcnQnLCBzb3J0LmZpZWxkKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpZiAoc29ydC5vcmRlcikge1xuICAgICAgICAgICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdvcmRlcicsIHNvcnQub3JkZXIpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKG9wdGlvbnMuZmlsdGVycykge1xuICAgICAgICAgICAgICAgIGxldCBmaWx0ZXJzID0gb3B0aW9ucy5maWx0ZXJzO1xuXG4gICAgICAgICAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KGZpbHRlcnMpKSB7XG4gICAgICAgICAgICAgICAgICAgIGZpbHRlcnMgPSBFc29sdmVGaWx0ZXJGYWN0b3J5LmNvdmVydEZyb21PYmooZmlsdGVycyk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcGFyYW1zID0gRXNvbHZlRmlsdGVyRmFjdG9yeS5jb252ZXJ0VG9IdHRwUGFyYW1zKFxuICAgICAgICAgICAgICAgICAgICBmaWx0ZXJzLFxuICAgICAgICAgICAgICAgICAgICBwYXJhbXMsXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuaHR0cFxuICAgICAgICAgICAgICAgIC5nZXQ8RXNvbHZlR2V0UmVzcG9uc2U8RXNvbHZlVHJhbnNhY3Rpb25SZWNvcmRbXT4+KFxuICAgICAgICAgICAgICAgICAgICBgJHt0aGlzLmNvbmZpZy5hcGlfdXJsfS9nZXQtdHJhbnNhY3Rpb25zLnBocGAsXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtczogcGFyYW1zLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICAgICAgbWFwKChyZXNwb25zZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJlc3BvbnNlLnJlY29yZHMgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IHJlc3BvbnNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBpdGVtcyA9IHRoaXMucHJvY2Vzc1RyYW5zYWN0aW9ucyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNwb25zZS5yZWNvcmRzLFxuICAgICAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHRvdGFsID0gKyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNwb25zZS5hZGRpdGlvbmFsX2RhdGEudG90YWxfcmVjb3JkcyA/PyAwXG4gICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgcm93cyA9IG9wdGlvbnMucm93cyA/PyB0b3RhbDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHBhZ2UgPSBvcHRpb25zLnBhZ2UgfHwgMTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG5ldyBFc29sdmVUcmFuc2FjdGlvbkxpc3QoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbXMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFnZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3dzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvdGFsLFxuICAgICAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+IGVycm9yKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBnZXRUcmFuc2FjdGlvbihcbiAgICAgICAgaWQ6IG51bWJlcixcbiAgICAgICAgdXNlcl9pZD86IG51bWJlcixcbiAgICAgICAgY2xpZW50c19pZD86IG51bWJlcixcbiAgICApOiBPYnNlcnZhYmxlPEVzb2x2ZVRyYW5zYWN0aW9uPiB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICB0aGlzLmxvZ2luR3VhcmQoKTtcblxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuaHR0cFxuICAgICAgICAgICAgICAgIC5nZXQ8RXNvbHZlR2V0UmVzcG9uc2U8RXNvbHZlVHJhbnNhY3Rpb25SZWNvcmRbXT4+KFxuICAgICAgICAgICAgICAgICAgICBgJHt0aGlzLmNvbmZpZy5hcGlfdXJsfS9nZXQtdHJhbnNhY3Rpb25zLnBocGAsXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZXJfaWQ6IHVzZXJfaWQgPz8gdGhpcy51c2VyX2lkLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zYWN0aW9uX2lkOiBpZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGllbnRzX2lkOiBjbGllbnRzX2lkID8/IDAsXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICAgICAgbWFwKChyZXNwb25zZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3BvbnNlLnJlY29yZHMgPT09IHVuZGVmaW5lZCB8fFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3BvbnNlLnJlY29yZHMubGVuZ3RoIDw9IDBcbiAgICAgICAgICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IHJlc3BvbnNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBpdGVtcyA9IHRoaXMucHJvY2Vzc1RyYW5zYWN0aW9ucyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNwb25zZS5yZWNvcmRzLFxuICAgICAgICAgICAgICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGl0ZW1zWzBdO1xuICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoKCkgPT4gZXJyb3IpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2V0cyBkYXRhIHRvIHRoZSBzZXJ2aWNlIG9uIHdlYXRoZXIgdGhlIG9yZGVyIGlzIGFwcHJvdmUgb3Igbm90LlxuICAgICAqXG4gICAgICogQHBhcmFtIGFwcHJvdmFsX3N0YXRlIEl0IGlzIHVzZWQgdG8gaWRlbnRpZnkgdGhlIHNwZWNpZmljIGNhcnQgaXRlbSBmb3Igd2hpY2ggdGhlIGFsdGVybmF0aXZlIGlzIGJlaW5nIHNldFxuICAgICAqIEByZXR1cm5zIGFuIE9ic2VydmFibGUgb2YgdHlwZSBFc29sdmVUcmFuc2FjdGlvbkFwcHJvdmFsUmVzdWx0LlxuICAgICAqL1xuICAgIHB1YmxpYyBzZXRUcmFuYWN0aW9uQXBwcm92YWxTdGF0ZShcbiAgICAgICAgYXBwcm92YWxfc3RhdGU6IEVzb2x2ZVRyYW5hY3Rpb25BcHByb3ZhbCxcbiAgICApOiBPYnNlcnZhYmxlPEVzb2x2ZVRyYW5zYWN0aW9uQXBwcm92YWxSZXN1bHQ+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cFxuICAgICAgICAgICAgLnBvc3Q8RXNvbHZlU2V0UmVzcG9uc2U+KFxuICAgICAgICAgICAgICAgIGAke3RoaXMuY29uZmlnLmFwaV91cmx9L3NldC10cmFuc2FjdGlvbi1hcHByb3ZhbC5waHBgLFxuICAgICAgICAgICAgICAgIGFwcHJvdmFsX3N0YXRlLFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgaGVhZGVyczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgJ0NvbnRlbnQtVHlwZSc6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZDtjaGFyc2V0PXV0Zi04OycsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHJlc3BvbnNlVHlwZTogJ2pzb24nLFxuICAgICAgICAgICAgICAgICAgICBvYnNlcnZlOiAnYm9keScsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcCgoaHR0cF9yZXNwb25zZSkgPT5cbiAgICAgICAgICAgICAgICAgICAgdGhpcy5yZXNwb25zZUhhbmRsZXIudmFsaWRhdGVTaW5nbGVIdHRwUmVzcG9uc2UoXG4gICAgICAgICAgICAgICAgICAgICAgICBodHRwX3Jlc3BvbnNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHR5cGVvZiByZXNwb25zZS5lc29sdmVfaWQgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCByZXNwb25zZSBpZC4nKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbmV3IEVzb2x2ZVRyYW5zYWN0aW9uQXBwcm92YWxSZXN1bHQocmVzcG9uc2UpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGxvZ2luR3VhcmQoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnVzZXJfaWQgPD0gMCkge1xuICAgICAgICAgICAgdGhpcy5lcnJvckhhbmRsZXIudGhyb3dFcnJvcignbG9naW5fcmVxdWlyZWQnLCAnTG9naW4gaXMgcmVxdWlyZWQnKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgcHJvY2Vzc1RyYW5zYWN0aW9ucyhcbiAgICAgICAgcmVjb3JkczogRXNvbHZlVHJhbnNhY3Rpb25SZWNvcmRbXSxcbiAgICApOiBFc29sdmVUcmFuc2FjdGlvbltdIHtcbiAgICAgICAgY29uc3QgdHJhbnNhY3Rpb25zOiBFc29sdmVUcmFuc2FjdGlvbltdID0gW107XG5cbiAgICAgICAgaWYgKHJlY29yZHMpIHtcbiAgICAgICAgICAgIGZvciAoY29uc3QgcmVjb3JkIG9mIHJlY29yZHMpIHtcbiAgICAgICAgICAgICAgICBjb25zdCB0cmFuc2FjdGlvbiA9IG5ldyBFc29sdmVUcmFuc2FjdGlvbihyZWNvcmQpO1xuXG4gICAgICAgICAgICAgICAgdHJhbnNhY3Rpb25zLnB1c2godHJhbnNhY3Rpb24pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRyYW5zYWN0aW9ucztcbiAgICB9XG5cbn1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLXRyYW5zYWN0aW9uLWFwcHJvdmFsLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbmctZXNvbHZlLWNvbm5lY3Qvc3JjL2xpYi90cmFuc2FjdGlvbnMvaW50ZXJmYWNlcy9lc29sdmUtdHJhbnNhY3Rpb24tYXBwcm92YWwuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFc29sdmVUcmFuc2FjdGlvbkFwcHJvdmFsU3RhdGUgfSBmcm9tIFwiLi4vdHlwZXNcIjtcblxuZXhwb3J0IGludGVyZmFjZSBFc29sdmVUcmFuYWN0aW9uQXBwcm92YWwge1xuICAgIGNhcnRfaWQ6IG51bWJlcjtcbiAgICBrZXk6IHN0cmluZztcbiAgICBzdXBlcnZpc29yX2NvbW1lbnQ/OiBzdHJpbmc7XG4gICAgc3RhdGU6IEVzb2x2ZVRyYW5zYWN0aW9uQXBwcm92YWxTdGF0ZTtcbn1cbiJdfQ==
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLXRyYW5zYWN0aW9uLW9wdGlvbnMuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9uZy1lc29sdmUtY29ubmVjdC9zcmMvbGliL3RyYW5zYWN0aW9ucy9pbnRlcmZhY2VzL2Vzb2x2ZS10cmFuc2FjdGlvbi1vcHRpb25zLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRXNvbHZlRmlsdGVyLCBFc29sdmVGaWx0ZXJEZWZpbml0aW9ucyB9IGZyb20gJy4uLy4uL3NoYXJlZC9maWx0ZXJzJztcbmltcG9ydCB7IEVzb2x2ZVNvcnQgfSBmcm9tICcuLi8uLi9zaGFyZWQvc29ydCc7XG5cbmltcG9ydCB7IEVzb2x2ZVRyYW5zYWN0aW9uU29ydEZpZWxkLCBFc29sdmVUcmFuc2FjdGlvblR5cGUgfSBmcm9tICcuLi90eXBlcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRXNvbHZlVHJhbnNhY3Rpb25PcHRpb25zIHtcbiAgICB0eXBlPzogRXNvbHZlVHJhbnNhY3Rpb25UeXBlO1xuICAgIHVzZXJfaWQ/OiBudW1iZXI7XG4gICAgY2xpZW50c19pZD86IG51bWJlcjtcbiAgICBwYWdlPzogbnVtYmVyO1xuICAgIHJvd3M/OiBudW1iZXI7XG4gICAgZnJvbV9kYXRlPzogc3RyaW5nO1xuICAgIHRvX2RhdGU/OiBzdHJpbmc7XG4gICAgZnJvbV90YXJnZXRfZGF0ZT86IHN0cmluZztcbiAgICB0b190YXJnZXRfZGF0ZT86IHN0cmluZztcbiAgICBmcm9tX2lkPzogbnVtYmVyO1xuICAgIHRvX2lkPzogbnVtYmVyO1xuICAgIGVycF9pZGVudGlmaWVyPzogc3RyaW5nO1xuICAgIG5vdF9zeW5jZWQ/OiBib29sZWFuO1xuICAgIGxvY2F0aW9uX2lkPzogbnVtYmVyO1xuICAgIHBhaWQ/OiBib29sZWFuO1xuICAgIHBpY2tfc3RhdHVzPzogc3RyaW5nO1xuICAgIGZpbHRlcnM/OiBFc29sdmVGaWx0ZXJbXSB8IEVzb2x2ZUZpbHRlckRlZmluaXRpb25zO1xuICAgIHNvcnQ/OiBFc29sdmVTb3J0PEVzb2x2ZVRyYW5zYWN0aW9uU29ydEZpZWxkPjtcbn1cbiJdfQ==
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLXRyYW5zYWN0aW9uLW9wdGlvbnMuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9uZy1lc29sdmUtY29ubmVjdC9zcmMvbGliL3RyYW5zYWN0aW9ucy9pbnRlcmZhY2VzL2Vzb2x2ZS10cmFuc2FjdGlvbi1vcHRpb25zLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRXNvbHZlRmlsdGVyLCBFc29sdmVGaWx0ZXJEZWZpbml0aW9ucyB9IGZyb20gJy4uLy4uL3NoYXJlZC9maWx0ZXJzJztcbmltcG9ydCB7IEVzb2x2ZVNvcnQgfSBmcm9tICcuLi8uLi9zaGFyZWQvc29ydCc7XG5cbmltcG9ydCB7XG4gICAgRXNvbHZlVHJhbnNhY3Rpb25Tb3J0RmllbGQsXG4gICAgRXNvbHZlVHJhbnNhY3Rpb25UeXBlLFxuICAgIEVzb2x2ZVRyYW5zYWN0aW9uQXBwcm92YWxTdGF0ZSxcbn0gZnJvbSAnLi4vdHlwZXMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEVzb2x2ZVRyYW5zYWN0aW9uT3B0aW9ucyB7XG4gICAgdHlwZT86IEVzb2x2ZVRyYW5zYWN0aW9uVHlwZTtcbiAgICB1c2VyX2lkPzogbnVtYmVyO1xuICAgIGNsaWVudHNfaWQ/OiBudW1iZXI7XG4gICAgcGFnZT86IG51bWJlcjtcbiAgICByb3dzPzogbnVtYmVyO1xuICAgIGZyb21fZGF0ZT86IHN0cmluZztcbiAgICB0b19kYXRlPzogc3RyaW5nO1xuICAgIGZyb21fdGFyZ2V0X2RhdGU/OiBzdHJpbmc7XG4gICAgdG9fdGFyZ2V0X2RhdGU/OiBzdHJpbmc7XG4gICAgZnJvbV9pZD86IG51bWJlcjtcbiAgICB0b19pZD86IG51bWJlcjtcbiAgICBlcnBfaWRlbnRpZmllcj86IHN0cmluZztcbiAgICBrZXk/OiBzdHJpbmc7XG4gICAgYXBwcm92YWxfc3RhdGU/OiBFc29sdmVUcmFuc2FjdGlvbkFwcHJvdmFsU3RhdGU7XG4gICAgbm90X3N5bmNlZD86IGJvb2xlYW47XG4gICAgbG9jYXRpb25faWQ/OiBudW1iZXI7XG4gICAgcGFpZD86IGJvb2xlYW47XG4gICAgcGlja19zdGF0dXM/OiBzdHJpbmc7XG4gICAgZmlsdGVycz86IEVzb2x2ZUZpbHRlcltdIHwgRXNvbHZlRmlsdGVyRGVmaW5pdGlvbnM7XG4gICAgc29ydD86IEVzb2x2ZVNvcnQ8RXNvbHZlVHJhbnNhY3Rpb25Tb3J0RmllbGQ+O1xufVxuIl19
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLXRyYW5zYWN0aW9uLXJlY29yZC5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL25nLWVzb2x2ZS1jb25uZWN0L3NyYy9saWIvdHJhbnNhY3Rpb25zL2ludGVyZmFjZXMvZXNvbHZlLXRyYW5zYWN0aW9uLXJlY29yZC5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVzb2x2ZUFkZHJlc3NUeXBlIH0gZnJvbSAnLi4vLi4vYWNjb3VudCc7XG5pbXBvcnQgeyBFc29sdmVDYXJ0QWx0ZXJuYXRpdmVSZWNvcmQgfSBmcm9tICcuLi8uLi9jYXJ0JztcblxuaW1wb3J0IHtcbiAgICBFc29sdmVUcmFuc2FjdGlvblR5cGUsXG4gICAgRXNvbHZlVHJhbnNhY3Rpb25Mb2NhdGlvblJlY29yZCxcbiAgICBFc29sdmVQaWNrU3RhdHVzVHlwZSxcbn0gZnJvbSAnLi4vdHlwZXMnO1xuXG5pbXBvcnQgeyBFc29sdmVUcmFuc2FjdGlvbkNsaWVudFJlY29yZCB9IGZyb20gJy4vZXNvbHZlLXRyYW5zYWN0aW9uLWNsaWVudC1yZWNvcmQuaW50ZXJmYWNlJztcbmltcG9ydCB7IEVzb2x2ZVRyYW5zYWN0aW9uSXRlbVJlY29yZCB9IGZyb20gJy4vZXNvbHZlLXRyYW5zYWN0aW9uLWl0ZW0tcmVjb3JkLmludGVyZmFjZSc7XG5pbXBvcnQgeyBFc29sdmVUcmFuc2FjdGlvblBheW1lbnRNZXRob2RSZWNvcmQgfSBmcm9tICcuL2Vzb2x2ZS10cmFuc2FjdGlvbi1wYXltZW50LW1ldGhvZC1yZWNvcmQuaW50ZXJmYWNlJztcbmltcG9ydCB7IEVzb2x2ZVRyYW5zYWN0aW9uU2hpcHBpbmdNZXRob2RSZWNvcmQgfSBmcm9tICcuL2Vzb2x2ZS10cmFuc2FjdGlvbi1zaGlwcGluZy1tZXRob2QtcmVjb3JkLmludGVyZmFjZSc7XG5pbXBvcnQgeyBFc29sdmVUcmFuc2FjdGlvblRpbWVTbG90UmVjb3JkIH0gZnJvbSAnLi9lc29sdmUtdHJhbnNhY3Rpb24tdGltZS1zbG90LXJlY29yZC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgRXNvbHZlVHJhbnNhY3Rpb25Vc2VyUmVjb3JkIH0gZnJvbSAnLi9lc29sdmUtdHJhbnNhY3Rpb24tdXNlci1yZWNvcmQuaW50ZXJmYWNlJztcblxuZXhwb3J0IGludGVyZmFjZSBFc29sdmVUcmFuc2FjdGlvblJlY29yZCB7XG4gICAgaWQ6IG51bWJlcjtcbiAgICB0cmFuc2FjdGlvbl90eXBlOiBFc29sdmVUcmFuc2FjdGlvblR5cGU7XG4gICAgbG95YWx0eW51bWJlcjogc3RyaW5nO1xuICAgIHN0YXR1czogc3RyaW5nO1xuICAgIGNvbW1lbnQ6IHN0cmluZztcblxuICAgIHJlcHNfaWQ6IG51bWJlcjtcbiAgICBwdXJjaGFzZV9vcmRlcl9udW1iZXI6IHN0cmluZztcbiAgICBjbGllbnQ6IEVzb2x2ZVRyYW5zYWN0aW9uQ2xpZW50UmVjb3JkIHwgbnVsbDtcbiAgICB1c2VyOiBFc29sdmVUcmFuc2FjdGlvblVzZXJSZWNvcmQgfCBudWxsO1xuICAgIHdheWJpbGxfbnVtYmVyPzogc3RyaW5nO1xuXG4gICAgLy8gTG9jYXRpb25cbiAgICBlcnBfaWRlbnRpZmllcjogc3RyaW5nO1xuICAgIGxvY2F0aW9uX2RldGFpbHM6IEVzb2x2ZVRyYW5zYWN0aW9uTG9jYXRpb25SZWNvcmQgfCBudWxsO1xuXG4gICAgLy8gRXh0ZXJuYWwgTnVtYmVyc1xuICAgIGV4dGVybmFsX29yZGVyX251bWJlcjogc3RyaW5nO1xuICAgIGV4dGVybmFsX2ludm9pY2VfbnVtYmVyOiBzdHJpbmc7XG4gICAgZXh0ZXJuYWxfb3JkZXJfdG90YWw/OiBudW1iZXI7XG5cbiAgICAvLyBEYXRlc1xuICAgIHR4ZGF0ZTogc3RyaW5nO1xuICAgIHR4ZGF0ZV90aW1lc3RhbXA6IG51bWJlcjtcbiAgICBleHBlY3RlZF9kYXRlOiBzdHJpbmc7XG4gICAgZXhwZWN0ZWRfZGF0ZV90aW1lc3RhbXA6IG51bWJlcjtcblxuICAgIC8vIFRvdGFsc1xuICAgIGludm9pY2VfYW1vdW50OiBudW1iZXI7XG4gICAgdmF0OiBudW1iZXI7XG4gICAgZGlzY291bnQ6IG51bWJlcjtcbiAgICB0b3RhbDogbnVtYmVyO1xuICAgIHNoaXBwaW5nX3RvdGFsOiBudW1iZXI7XG4gICAgaW5zdXJhbmNlX3RvdGFsOiBudW1iZXI7XG4gICAgYWxsb3dhbmNlOiBudW1iZXI7XG5cbiAgICAvLyBQYXltZW50XG4gICAgcGF5bWVudDogbnVtYmVyO1xuICAgIHBheW1lbnRfbWV0aG9kOiBzdHJpbmc7XG4gICAgcGF5bWVudF9tZXRob2RfZGV0YWlsczogRXNvbHZlVHJhbnNhY3Rpb25QYXltZW50TWV0aG9kUmVjb3JkIHwgbnVsbDtcbiAgICBnYXRld2F5X3RyYW5zYWN0aW9uX2lkOiBzdHJpbmc7XG4gICAgcGF5bWVudF9yZWZlcmVuY2U6IHN0cmluZztcbiAgICBwYXltZW50X2Rlc2NyaXB0aW9uOiBzdHJpbmc7XG5cbiAgICAvLyBTaGlwcGluZ1xuICAgIHNoaXBwaW5nX21ldGhvZDogc3RyaW5nO1xuICAgIHNoaXBwaW5nX21ldGhvZF9kZXRhaWxzOiBFc29sdmVUcmFuc2FjdGlvblNoaXBwaW5nTWV0aG9kUmVjb3JkIHwgbnVsbDtcblxuICAgIC8vIEFkZHJlc3MgRGV0YWlsc1xuICAgIGFkZHJlc3NfYWxpYXM6IHN0cmluZztcbiAgICByZWNpcGllbnQ6IHN0cmluZztcbiAgICBhZGRyZXNzX3R5cGU6IEVzb2x2ZUFkZHJlc3NUeXBlO1xuICAgIGFkZHJlc3NfZGVzY3JpcHRpb246IHN0cmluZztcbiAgICBwb2JveDogc3RyaW5nO1xuICAgIHN0cmVldF9udW1iZXI6IHN0cmluZztcbiAgICBzdHJlZXQ6IHN0cmluZztcbiAgICBzdWJ1cmI6IHN0cmluZztcbiAgICBjaXR5OiBzdHJpbmc7XG4gICAgcHJvdmluY2U6IHN0cmluZztcbiAgICBjb3VudHJ5OiBzdHJpbmc7XG4gICAgcG9zdGFsX2NvZGU6IHN0cmluZztcblxuICAgIHRyYW5zYWN0aW9uX2l0ZW1zOiBFc29sdmVUcmFuc2FjdGlvbkl0ZW1SZWNvcmRbXTtcblxuICAgIGFsdGVybmF0aXZlcz86IEVzb2x2ZUNhcnRBbHRlcm5hdGl2ZVJlY29yZFtdO1xuXG4gICAgdGltZV9zbG90PzogRXNvbHZlVHJhbnNhY3Rpb25UaW1lU2xvdFJlY29yZCB8IG51bGw7XG5cbiAgICAvLyBQaWNraW5nXG4gICAgY2FydF9waWNrX2lkPzogbnVtYmVyO1xuICAgIHBpY2tfc3RhdHVzPzogRXNvbHZlUGlja1N0YXR1c1R5cGUgfCBudWxsO1xuICAgIHBpY2tfc3RhcnQ/OiBudW1iZXIgfCBudWxsO1xuICAgIHBpY2tfZW5kPzogbnVtYmVyIHwgbnVsbDtcbiAgICBwaWNrX2JhbGFuY2VkPzogYm9vbGVhbiB8IG51bGw7XG5cbiAgICAvLyBEZWxpdmVyeVxuICAgIGRlbGl2ZXJpZXNfaWQ/OiBudW1iZXI7XG4gICAgZGVsaXZlcmllc19zdGF0dXM/OiBzdHJpbmcgfCBudWxsO1xuICAgIGRlbGl2ZXJ5X3N0YXJ0ZWQ/OiBudW1iZXIgfCBudWxsO1xuICAgIGRlbGl2ZXJ5X2NvbXBsZXRlZD86IG51bWJlciB8IG51bGw7XG4gICAgZGVsaXZlcnlfY2FuY2VsbGVkPzogbnVtYmVyIHwgbnVsbDtcbiAgICByZXR1cm5fc3RhcnRlZD86IG51bWJlciB8IG51bGw7XG4gICAgcmV0dXJuX2NvbXBsZXRlZD86IG51bWJlciB8IG51bGw7XG4gICAgcmV0dXJuX2NhbmNlbGxlZD86IG51bWJlciB8IG51bGw7XG5cbiAgICAvLyBDb3VyaWVyXG4gICAgZHJpdmVyX25hbWU/OiBzdHJpbmc7XG4gICAgZHJpdmVyX3JhdGluZz86IG51bWJlcjtcbiAgICB2ZWhpY2xlX21ha2U/OiBzdHJpbmc7XG4gICAgdmVoaWNsZV9tb2RlbD86IHN0cmluZztcbiAgICB2ZWhpY2xlX2NvbG9yPzogc3RyaW5nO1xuICAgIHZlaGljbGVfdHlwZT86IHN0cmluZztcbn1cbiJdfQ==
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLXRyYW5zYWN0aW9uLXJlY29yZC5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL25nLWVzb2x2ZS1jb25uZWN0L3NyYy9saWIvdHJhbnNhY3Rpb25zL2ludGVyZmFjZXMvZXNvbHZlLXRyYW5zYWN0aW9uLXJlY29yZC5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVzb2x2ZUFkZHJlc3NUeXBlIH0gZnJvbSAnLi4vLi4vYWNjb3VudCc7XG5pbXBvcnQgeyBFc29sdmVDYXJ0QWx0ZXJuYXRpdmVSZWNvcmQgfSBmcm9tICcuLi8uLi9jYXJ0JztcblxuaW1wb3J0IHtcbiAgICBFc29sdmVUcmFuc2FjdGlvblR5cGUsXG4gICAgRXNvbHZlVHJhbnNhY3Rpb25Mb2NhdGlvblJlY29yZCxcbiAgICBFc29sdmVQaWNrU3RhdHVzVHlwZSxcbn0gZnJvbSAnLi4vdHlwZXMnO1xuXG5pbXBvcnQgeyBFc29sdmVUcmFuc2FjdGlvbkNsaWVudFJlY29yZCB9IGZyb20gJy4vZXNvbHZlLXRyYW5zYWN0aW9uLWNsaWVudC1yZWNvcmQuaW50ZXJmYWNlJztcbmltcG9ydCB7IEVzb2x2ZVRyYW5zYWN0aW9uSXRlbVJlY29yZCB9IGZyb20gJy4vZXNvbHZlLXRyYW5zYWN0aW9uLWl0ZW0tcmVjb3JkLmludGVyZmFjZSc7XG5pbXBvcnQgeyBFc29sdmVUcmFuc2FjdGlvblBheW1lbnRNZXRob2RSZWNvcmQgfSBmcm9tICcuL2Vzb2x2ZS10cmFuc2FjdGlvbi1wYXltZW50LW1ldGhvZC1yZWNvcmQuaW50ZXJmYWNlJztcbmltcG9ydCB7IEVzb2x2ZVRyYW5zYWN0aW9uU2hpcHBpbmdNZXRob2RSZWNvcmQgfSBmcm9tICcuL2Vzb2x2ZS10cmFuc2FjdGlvbi1zaGlwcGluZy1tZXRob2QtcmVjb3JkLmludGVyZmFjZSc7XG5pbXBvcnQgeyBFc29sdmVUcmFuc2FjdGlvblRpbWVTbG90UmVjb3JkIH0gZnJvbSAnLi9lc29sdmUtdHJhbnNhY3Rpb24tdGltZS1zbG90LXJlY29yZC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgRXNvbHZlVHJhbnNhY3Rpb25Vc2VyUmVjb3JkIH0gZnJvbSAnLi9lc29sdmUtdHJhbnNhY3Rpb24tdXNlci1yZWNvcmQuaW50ZXJmYWNlJztcblxuZXhwb3J0IGludGVyZmFjZSBFc29sdmVUcmFuc2FjdGlvblJlY29yZCB7XG4gICAgaWQ6IG51bWJlcjtcbiAgICB0cmFuc2FjdGlvbl90eXBlOiBFc29sdmVUcmFuc2FjdGlvblR5cGU7XG4gICAgbG95YWx0eW51bWJlcjogc3RyaW5nO1xuICAgIHN0YXR1czogc3RyaW5nO1xuICAgIGNvbW1lbnQ6IHN0cmluZztcblxuICAgIGtleT86IHN0cmluZztcbiAgICBhcHByb3ZhbF9zdGF0ZT86IHN0cmluZztcblxuICAgIHJlcHNfaWQ6IG51bWJlcjtcbiAgICBwdXJjaGFzZV9vcmRlcl9udW1iZXI6IHN0cmluZztcbiAgICBjbGllbnQ6IEVzb2x2ZVRyYW5zYWN0aW9uQ2xpZW50UmVjb3JkIHwgbnVsbDtcbiAgICB1c2VyOiBFc29sdmVUcmFuc2FjdGlvblVzZXJSZWNvcmQgfCBudWxsO1xuICAgIHdheWJpbGxfbnVtYmVyPzogc3RyaW5nO1xuXG4gICAgLy8gTG9jYXRpb25cbiAgICBlcnBfaWRlbnRpZmllcjogc3RyaW5nO1xuICAgIGxvY2F0aW9uX2RldGFpbHM6IEVzb2x2ZVRyYW5zYWN0aW9uTG9jYXRpb25SZWNvcmQgfCBudWxsO1xuXG4gICAgLy8gRXh0ZXJuYWwgTnVtYmVyc1xuICAgIGV4dGVybmFsX29yZGVyX251bWJlcjogc3RyaW5nO1xuICAgIGV4dGVybmFsX2ludm9pY2VfbnVtYmVyOiBzdHJpbmc7XG4gICAgZXh0ZXJuYWxfb3JkZXJfdG90YWw/OiBudW1iZXI7XG5cbiAgICAvLyBEYXRlc1xuICAgIHR4ZGF0ZTogc3RyaW5nO1xuICAgIHR4ZGF0ZV90aW1lc3RhbXA6IG51bWJlcjtcbiAgICBleHBlY3RlZF9kYXRlOiBzdHJpbmc7XG4gICAgZXhwZWN0ZWRfZGF0ZV90aW1lc3RhbXA6IG51bWJlcjtcblxuICAgIC8vIFRvdGFsc1xuICAgIGludm9pY2VfYW1vdW50OiBudW1iZXI7XG4gICAgdmF0OiBudW1iZXI7XG4gICAgZGlzY291bnQ6IG51bWJlcjtcbiAgICB0b3RhbDogbnVtYmVyO1xuICAgIHNoaXBwaW5nX3RvdGFsOiBudW1iZXI7XG4gICAgaW5zdXJhbmNlX3RvdGFsOiBudW1iZXI7XG4gICAgYWxsb3dhbmNlOiBudW1iZXI7XG5cbiAgICAvLyBQYXltZW50XG4gICAgcGF5bWVudDogbnVtYmVyO1xuICAgIHBheW1lbnRfbWV0aG9kOiBzdHJpbmc7XG4gICAgcGF5bWVudF9tZXRob2RfZGV0YWlsczogRXNvbHZlVHJhbnNhY3Rpb25QYXltZW50TWV0aG9kUmVjb3JkIHwgbnVsbDtcbiAgICBnYXRld2F5X3RyYW5zYWN0aW9uX2lkOiBzdHJpbmc7XG4gICAgcGF5bWVudF9yZWZlcmVuY2U6IHN0cmluZztcbiAgICBwYXltZW50X2Rlc2NyaXB0aW9uOiBzdHJpbmc7XG5cbiAgICAvLyBTaGlwcGluZ1xuICAgIHNoaXBwaW5nX21ldGhvZDogc3RyaW5nO1xuICAgIHNoaXBwaW5nX21ldGhvZF9kZXRhaWxzOiBFc29sdmVUcmFuc2FjdGlvblNoaXBwaW5nTWV0aG9kUmVjb3JkIHwgbnVsbDtcblxuICAgIC8vIEFkZHJlc3MgRGV0YWlsc1xuICAgIGFkZHJlc3NfYWxpYXM6IHN0cmluZztcbiAgICByZWNpcGllbnQ6IHN0cmluZztcbiAgICBhZGRyZXNzX3R5cGU6IEVzb2x2ZUFkZHJlc3NUeXBlO1xuICAgIGFkZHJlc3NfZGVzY3JpcHRpb246IHN0cmluZztcbiAgICBwb2JveDogc3RyaW5nO1xuICAgIHN0cmVldF9udW1iZXI6IHN0cmluZztcbiAgICBzdHJlZXQ6IHN0cmluZztcbiAgICBzdWJ1cmI6IHN0cmluZztcbiAgICBjaXR5OiBzdHJpbmc7XG4gICAgcHJvdmluY2U6IHN0cmluZztcbiAgICBjb3VudHJ5OiBzdHJpbmc7XG4gICAgcG9zdGFsX2NvZGU6IHN0cmluZztcblxuICAgIHRyYW5zYWN0aW9uX2l0ZW1zOiBFc29sdmVUcmFuc2FjdGlvbkl0ZW1SZWNvcmRbXTtcblxuICAgIGFsdGVybmF0aXZlcz86IEVzb2x2ZUNhcnRBbHRlcm5hdGl2ZVJlY29yZFtdO1xuXG4gICAgdGltZV9zbG90PzogRXNvbHZlVHJhbnNhY3Rpb25UaW1lU2xvdFJlY29yZCB8IG51bGw7XG5cbiAgICAvLyBQaWNraW5nXG4gICAgY2FydF9waWNrX2lkPzogbnVtYmVyO1xuICAgIHBpY2tfc3RhdHVzPzogRXNvbHZlUGlja1N0YXR1c1R5cGUgfCBudWxsO1xuICAgIHBpY2tfc3RhcnQ/OiBudW1iZXIgfCBudWxsO1xuICAgIHBpY2tfZW5kPzogbnVtYmVyIHwgbnVsbDtcbiAgICBwaWNrX2JhbGFuY2VkPzogYm9vbGVhbiB8IG51bGw7XG5cbiAgICAvLyBEZWxpdmVyeVxuICAgIGRlbGl2ZXJpZXNfaWQ/OiBudW1iZXI7XG4gICAgZGVsaXZlcmllc19zdGF0dXM/OiBzdHJpbmcgfCBudWxsO1xuICAgIGRlbGl2ZXJ5X3N0YXJ0ZWQ/OiBudW1iZXIgfCBudWxsO1xuICAgIGRlbGl2ZXJ5X2NvbXBsZXRlZD86IG51bWJlciB8IG51bGw7XG4gICAgZGVsaXZlcnlfY2FuY2VsbGVkPzogbnVtYmVyIHwgbnVsbDtcbiAgICByZXR1cm5fc3RhcnRlZD86IG51bWJlciB8IG51bGw7XG4gICAgcmV0dXJuX2NvbXBsZXRlZD86IG51bWJlciB8IG51bGw7XG4gICAgcmV0dXJuX2NhbmNlbGxlZD86IG51bWJlciB8IG51bGw7XG5cbiAgICAvLyBDb3VyaWVyXG4gICAgZHJpdmVyX25hbWU/OiBzdHJpbmc7XG4gICAgZHJpdmVyX3JhdGluZz86IG51bWJlcjtcbiAgICB2ZWhpY2xlX21ha2U/OiBzdHJpbmc7XG4gICAgdmVoaWNsZV9tb2RlbD86IHN0cmluZztcbiAgICB2ZWhpY2xlX2NvbG9yPzogc3RyaW5nO1xuICAgIHZlaGljbGVfdHlwZT86IHN0cmluZztcbn1cbiJdfQ==
@@ -6,4 +6,5 @@ export * from './esolve-transaction-record.interface';
6
6
  export * from './esolve-transaction-shipping-method-record.interface';
7
7
  export * from './esolve-transaction-user-record.interface';
8
8
  export * from './esolve-transaction-time-slot-record.interface';
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL25nLWVzb2x2ZS1jb25uZWN0L3NyYy9saWIvdHJhbnNhY3Rpb25zL2ludGVyZmFjZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyxzREFBc0QsQ0FBQztBQUNyRSxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsdURBQXVELENBQUM7QUFDdEUsY0FBYyw0Q0FBNEMsQ0FBQztBQUMzRCxjQUFjLGlEQUFpRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9lc29sdmUtdHJhbnNhY3Rpb24tY2xpZW50LXJlY29yZC5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9lc29sdmUtdHJhbnNhY3Rpb24taXRlbS1yZWNvcmQuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vZXNvbHZlLXRyYW5zYWN0aW9uLW9wdGlvbnMuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vZXNvbHZlLXRyYW5zYWN0aW9uLXBheW1lbnQtbWV0aG9kLXJlY29yZC5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9lc29sdmUtdHJhbnNhY3Rpb24tcmVjb3JkLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2Vzb2x2ZS10cmFuc2FjdGlvbi1zaGlwcGluZy1tZXRob2QtcmVjb3JkLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2Vzb2x2ZS10cmFuc2FjdGlvbi11c2VyLXJlY29yZC5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9lc29sdmUtdHJhbnNhY3Rpb24tdGltZS1zbG90LXJlY29yZC5pbnRlcmZhY2UnO1xuIl19
9
+ export * from './esolve-transaction-approval.interface';
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL25nLWVzb2x2ZS1jb25uZWN0L3NyYy9saWIvdHJhbnNhY3Rpb25zL2ludGVyZmFjZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyxzREFBc0QsQ0FBQztBQUNyRSxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsdURBQXVELENBQUM7QUFDdEUsY0FBYyw0Q0FBNEMsQ0FBQztBQUMzRCxjQUFjLGlEQUFpRCxDQUFDO0FBQ2hFLGNBQWMseUNBQXlDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2Vzb2x2ZS10cmFuc2FjdGlvbi1jbGllbnQtcmVjb3JkLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2Vzb2x2ZS10cmFuc2FjdGlvbi1pdGVtLXJlY29yZC5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9lc29sdmUtdHJhbnNhY3Rpb24tb3B0aW9ucy5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9lc29sdmUtdHJhbnNhY3Rpb24tcGF5bWVudC1tZXRob2QtcmVjb3JkLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2Vzb2x2ZS10cmFuc2FjdGlvbi1yZWNvcmQuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vZXNvbHZlLXRyYW5zYWN0aW9uLXNoaXBwaW5nLW1ldGhvZC1yZWNvcmQuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vZXNvbHZlLXRyYW5zYWN0aW9uLXVzZXItcmVjb3JkLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2Vzb2x2ZS10cmFuc2FjdGlvbi10aW1lLXNsb3QtcmVjb3JkLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2Vzb2x2ZS10cmFuc2FjdGlvbi1hcHByb3ZhbC5pbnRlcmZhY2UnXG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLXRyYW5zYWN0aW9uLWFwcHJvdmFsLXN0YXRlLnR5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL25nLWVzb2x2ZS1jb25uZWN0L3NyYy9saWIvdHJhbnNhY3Rpb25zL3R5cGVzL2Vzb2x2ZS10cmFuc2FjdGlvbi1hcHByb3ZhbC1zdGF0ZS50eXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgdHlwZSBFc29sdmVUcmFuc2FjdGlvbkFwcHJvdmFsU3RhdGUgPVxuICAgIHwgJ2FwcHJvdmVkJ1xuICAgIHwgJ3JlamVjdGVkJ1xuICAgIHwgJ3BlbmRpbmcnO1xuIl19
@@ -2,4 +2,5 @@ export * from './esolve-transaction-type.type';
2
2
  export * from './esolve-transaction-location-record.type';
3
3
  export * from './esolve-pick-status.type';
4
4
  export * from './esolve-transaction-sort-field.type';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL25nLWVzb2x2ZS1jb25uZWN0L3NyYy9saWIvdHJhbnNhY3Rpb25zL3R5cGVzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsc0NBQXNDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2Vzb2x2ZS10cmFuc2FjdGlvbi10eXBlLnR5cGUnO1xuZXhwb3J0ICogZnJvbSAnLi9lc29sdmUtdHJhbnNhY3Rpb24tbG9jYXRpb24tcmVjb3JkLnR5cGUnO1xuZXhwb3J0ICogZnJvbSAnLi9lc29sdmUtcGljay1zdGF0dXMudHlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2Vzb2x2ZS10cmFuc2FjdGlvbi1zb3J0LWZpZWxkLnR5cGUnO1xuIl19
5
+ export * from './esolve-transaction-approval-state.type';
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL25nLWVzb2x2ZS1jb25uZWN0L3NyYy9saWIvdHJhbnNhY3Rpb25zL3R5cGVzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYywwQ0FBMEMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZXNvbHZlLXRyYW5zYWN0aW9uLXR5cGUudHlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2Vzb2x2ZS10cmFuc2FjdGlvbi1sb2NhdGlvbi1yZWNvcmQudHlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2Vzb2x2ZS1waWNrLXN0YXR1cy50eXBlJztcbmV4cG9ydCAqIGZyb20gJy4vZXNvbHZlLXRyYW5zYWN0aW9uLXNvcnQtZmllbGQudHlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2Vzb2x2ZS10cmFuc2FjdGlvbi1hcHByb3ZhbC1zdGF0ZS50eXBlJztcbiJdfQ==