@pega/angular-sdk-components 0.23.5 → 0.24.1

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 (46) hide show
  1. package/esm2022/lib/_bridge/angular-pconnect.mjs +14 -2
  2. package/esm2022/lib/_bridge/helpers/sdk-pega-component-map.mjs +3 -1
  3. package/esm2022/lib/_components/designSystemExtension/material-case-summary/material-case-summary.component.mjs +6 -3
  4. package/esm2022/lib/_components/designSystemExtension/operator/operator.component.mjs +9 -5
  5. package/esm2022/lib/_components/field/auto-complete/auto-complete.component.mjs +2 -2
  6. package/esm2022/lib/_components/field/check-box/check-box.component.mjs +107 -42
  7. package/esm2022/lib/_components/field/group/group.component.mjs +6 -3
  8. package/esm2022/lib/_components/field/multiselect/multiselect.component.mjs +311 -0
  9. package/esm2022/lib/_components/field/multiselect/utils.mjs +187 -0
  10. package/esm2022/lib/_components/field/rich-text/rich-text.component.mjs +3 -3
  11. package/esm2022/lib/_components/field/time/time.component.mjs +5 -3
  12. package/esm2022/lib/_components/field/url/url.component.mjs +5 -3
  13. package/esm2022/lib/_components/infra/Containers/view-container/view-container.component.mjs +6 -6
  14. package/esm2022/lib/_components/infra/multi-step/multi-step.component.mjs +3 -3
  15. package/esm2022/lib/_components/infra/navbar/navbar.component.mjs +6 -3
  16. package/esm2022/lib/_components/template/case-summary/case-summary.component.mjs +33 -4
  17. package/esm2022/lib/_components/template/field-value-list/field-value-list.component.mjs +8 -3
  18. package/esm2022/lib/_components/template/list-view/list-view.component.mjs +23 -25
  19. package/esm2022/lib/_components/template/list-view/utils.mjs +5 -3
  20. package/esm2022/lib/_components/template/simple-table-manual/helpers.mjs +2 -2
  21. package/esm2022/lib/_components/template/simple-table-manual/simple-table-manual.component.mjs +41 -12
  22. package/esm2022/lib/_components/template/wss-nav-bar/wss-nav-bar.component.mjs +5 -3
  23. package/esm2022/lib/_components/widget/attachment/attachment.component.mjs +7 -3
  24. package/esm2022/lib/_helpers/instructions-utils.mjs +36 -0
  25. package/esm2022/lib/_helpers/utils.mjs +2 -2
  26. package/fesm2022/pega-angular-sdk-components.mjs +782 -114
  27. package/fesm2022/pega-angular-sdk-components.mjs.map +1 -1
  28. package/lib/_bridge/angular-pconnect.d.ts +2 -0
  29. package/lib/_bridge/helpers/sdk-pega-component-map.d.ts +2 -0
  30. package/lib/_components/designSystemExtension/material-case-summary/material-case-summary.component.d.ts +2 -0
  31. package/lib/_components/designSystemExtension/operator/operator.component.d.ts +2 -1
  32. package/lib/_components/field/check-box/check-box.component.d.ts +18 -0
  33. package/lib/_components/field/multiselect/multiselect.component.d.ts +64 -0
  34. package/lib/_components/field/multiselect/utils.d.ts +8 -0
  35. package/lib/_components/field/time/time.component.d.ts +1 -0
  36. package/lib/_components/field/url/url.component.d.ts +1 -0
  37. package/lib/_components/infra/navbar/navbar.component.d.ts +2 -0
  38. package/lib/_components/template/case-summary/case-summary.component.d.ts +2 -0
  39. package/lib/_components/template/field-value-list/field-value-list.component.d.ts +2 -1
  40. package/lib/_components/template/list-view/list-view.component.d.ts +0 -2
  41. package/lib/_components/template/simple-table-manual/simple-table-manual.component.d.ts +2 -0
  42. package/lib/_components/template/wss-nav-bar/wss-nav-bar.component.d.ts +2 -0
  43. package/lib/_components/widget/attachment/attachment.component.d.ts +4 -0
  44. package/lib/_helpers/instructions-utils.d.ts +4 -0
  45. package/lib/doc/KeyReleaseUpdates.md +63 -0
  46. package/package.json +1 -1
@@ -214,13 +214,25 @@ export class AngularPConnectService {
214
214
  }
215
215
  else {
216
216
  returnObject.compID = theCompID;
217
- returnObject.unsubscribeFn = theUnsub;
217
+ returnObject.unsubscribeFn = () => {
218
+ this.removeFormField(inComp);
219
+ theUnsub();
220
+ };
218
221
  }
219
222
  // initialize this components entry in the componentPropsArr
220
223
  this.componentPropsArr[theCompID] = {};
224
+ this.addFormField(inComp);
221
225
  // return object with compID and unsubscribe...
222
226
  return returnObject;
223
227
  }
228
+ addFormField(inComp) {
229
+ inComp.pConn$?.addFormField();
230
+ }
231
+ removeFormField(inComp) {
232
+ if (inComp.pConn$?.removeFormField) {
233
+ inComp.pConn$?.removeFormField();
234
+ }
235
+ }
224
236
  // Returns true if the component's entry in ___componentPropsArr___ is
225
237
  // the same as the inCompProps passed in.
226
238
  // As a side effect, update the component's entry in componentPropsArr
@@ -413,4 +425,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
413
425
  providedIn: 'root'
414
426
  }]
415
427
  }], ctorParameters: function () { return [{ type: i1.ProgressSpinnerService }, { type: i2.ErrorMessagesService }, { type: i3.Utils }]; } });
416
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhci1wY29ubmVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItc2RrLWNvbXBvbmVudHMvc3JjL2xpYi9fYnJpZGdlL2FuZ3VsYXItcGNvbm5lY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2hDLE9BQU8sT0FBTyxNQUFNLGlCQUFpQixDQUFDO0FBR3RDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7Ozs7QUFlMUMsTUFBTSxPQUFPLHNCQUFzQjtJQW1CakMsNENBQTRDO2FBQzdCLGFBQVEsR0FBRyxLQUFLLENBQUM7SUFFaEMsWUFDVSxTQUFpQyxFQUNqQyxTQUErQixFQUMvQixLQUFZO1FBRlosY0FBUyxHQUFULFNBQVMsQ0FBd0I7UUFDakMsY0FBUyxHQUFULFNBQVMsQ0FBc0I7UUFDL0IsVUFBSyxHQUFMLEtBQUssQ0FBTztRQXhCdEI7O1dBRUc7UUFDSyxhQUFRLEdBQVEsSUFBSSxDQUFDO1FBRTdCOztXQUVHO1FBQ0ssdUJBQWtCLEdBQUcsQ0FBQyxDQUFDO1FBRS9COzs7OztXQUtHO1FBQ0ssc0JBQWlCLEdBQWEsRUFBRSxDQUFDO1FBVXZDLHlEQUF5RDtRQUN6RCw0REFBNEQ7UUFDNUQsb0RBQW9EO1FBQ3BELGtEQUFrRDtRQUNsRCwrQ0FBK0M7UUFDL0MsS0FBSyxDQUFDLG1CQUFtQixDQUFDLHVCQUF1QixFQUFFLEtBQUssQ0FBQyxDQUFDO1FBRTFELDZEQUE2RDtRQUM3RCwrQkFBK0I7UUFDL0IsK0RBQStEO1FBQy9ELFdBQVc7UUFDWCxrRUFBa0U7UUFDbEUsSUFBSTtJQUNOLENBQUM7SUFFRDs7Ozs7OztPQU9HO0lBQ0ssa0JBQWtCO1FBQ3hCLElBQUksQ0FBQyxrQkFBa0IsSUFBSSxD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LENBQUM7U0FDeEU7UUFDRCxPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDO0lBRUQsNERBQTREO0lBQzVEOzs7T0FHRztJQUNLLGNBQWMsQ0FBQyxNQUFNO1FBQzNCLE1BQU0sUUFBUSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUM7UUFDL0IsSUFBSSxTQUFTLEtBQUssUUFBUSxFQUFFO1lBQzFCLE9BQU8sQ0FBQyxLQUFLLENBQUMsd0RBQXdELFFBQVEsb0JBQW9CLE1BQU0sQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztZQUM3SCxPQUFPO1NBQ1I7UUFFRCxJQUFJLE1BQU0sQ0FBQyxNQUFNLENBQUMsVUFBVSxFQUFFLEVBQUU7WUFDOUIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7WUFDbkUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7U0FDakU7SUFDSCxDQUFDOytHQS9jVSxzQkFBc0I7bUhBQXRCLHNCQUFzQixjQUZyQixNQUFNOzs0RkFFUCxzQkFBc0I7a0JBSGxDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgaW50ZXJ2YWwgfSBmcm9tICdyeGpzJztcbmltcG9ydCBpc0VxdWFsIGZyb20gJ2Zhc3QtZGVlcC1lcXVhbCc7XG5pbXBvcnQgeyBQcm9ncmVzc1NwaW5uZXJTZXJ2aWNlIH0gZnJvbSAnLi4vX21lc3NhZ2VzL3Byb2dyZXNzLXNwaW5uZXIuc2VydmljZSc7XG5pbXBvcnQgeyBFcnJvck1lc3NhZ2VzU2VydmljZSB9IGZyb20gJy4uL19tZXNzYWdlcy9lcnJvci1tZXNzYWdlcy5zZXJ2aWNlJztcbmltcG9ydCB7IFV0aWxzIH0gZnJvbSAnLi4vX2hlbHBlcnMvdXRpbHMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFuZ3VsYXJQQ29ubmVjdERhdGEge1xuICBjb21wSUQ/OiBzdHJpbmc7XG4gIHVuc3Vic2NyaWJlRm4/OiBGdW5jdGlvbjtcbiAgdmFsaWRhdGVNZXNzYWdlPzogc3RyaW5nO1xuICBhY3Rpb25zPzoge1xuICAgIG9uQ2hhbmdlOiBGdW5jdGlvbjtcbiAgICBvbkJsdXI6IEZ1bmN0aW9uO1xuICB9O1xufVxuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBBbmd1bGFyUENvbm5lY3RTZXJ2aWNlIHtcbiAgLyoqXG4gICAqIExvY2FsIHZhcmlhYmxlIGZvciBhY2Nlc3MgdG8gdGhlIHN0b3JlIG9uY2UgdGhlIHNlcnZpY2UgaXMgY29ubmVjdGVkIHRvIGl0LlxuICAgKi9cbiAgcHJpdmF0ZSB0aGVTdG9yZTogYW55ID0gbnVsbDtcblxuICAvKipcbiAgICogTG9jYWwgdmFyaWFibGUgdXNlZCB0byBjb21wdXRlIHRoZSBuZXh0IGNvbXBvbmVudElEXG4gICAqL1xuICBwcml2YXRlIGNvdW50ZXJDb21wb25lbnRJRCA9IDA7XG5cbiAgLyoqXG4gICAqIExvY2FsIGFycmF5IHVzZWQgdG8gc3RvcmUgdGhlIGFzc29jaWF0aW9uIG9mIGFuIGNvbXBvbmVudCB0byBpdHMgbW9zdCByZWNlbnQgXCJwcm9wc1wiXG4gICAqICB3aGVyZSBcInByb3BzXCIgaXMgdGhlIG9iamVjdCBjb250YWluaW5nIHRoZSBjb21wb25lbnQncyBnZXRDb25maWdQcm9wcyBhbG9uZyB3aXRoXG4gICAqIGFueXRoaW5nIGFkZGVkIGJ5IHBvcHVsYXRlQWRkaXRpb25hbFByb3BzLlxuICAgKiBFYWNoIGVudHJ5IGlzOiB7IF9fY29tcG9uZW50SURfXzogX3RoZSBjb21wb25lbnQncyBtb3N0IHJlY2VudCBwcm9wc18gfVxuICAgKi9cbiAgcHJpdmF0ZSBjb21wb25lbnRQcm9wc0FycjogT2JqZWN0W10gPSBbXTtcblxuICAvKiBVc2VkIHRvIHRvZ2dsZSBzb21lIGNsYXNzLXdpZGUgbG9nZ2luZyAqL1xuICBwcml2YXRlIHN0YXRpYyBiTG9nZ2luZyA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcHNTZXJ2aWNlOiBQcm9ncmVzc1NwaW5uZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgZXJTZXJ2aWNlOiBFcnJvck1lc3NhZ2VzU2VydmljZSxcbiAgICBwcml2YXRlIHV0aWxzOiBVdGlsc1xuICApIHtcbiAgICAvLyBFc3RhYmxpc2ggbmVjZXNzYXJ5IG92ZXJyaWRlIGZsYWdzIGZvciBvdXIgdXNlIG9mIENvcmVcbiAgICAvLyBjb25zdCBjb3JlT3ZlcnJpZGVzID0geyBcImR5bmFtaWNMb2FkQ29tcG9uZW50c1wiOiBmYWxzZSB9O1xuICAgIC8vIGxldCBjb3JlT3ZlcnJpZGVzID0gUENvcmUuZ2V0QmVoYXZpb3JPdmVycmlkZXMoKTtcbiAgICAvLyBjb3JlT3ZlcnJpZGVzW1wiZHluYW1pY0xvYWRDb21wb25lbnRzXCJdID0gZmFsc2U7XG4gICAgLy8gUENvcmUuc2V0QmVoYXZpb3JPdmVycmlkZXMoIGNvcmVPdmVycmlkZXMgKTtcbiAgICBQQ29yZS5zZXRCZWhhdmlvck92ZXJyaWRlKCdkeW5hbWljTG9hZENvbXBvbmVudHMnLCBmYWxzZSk7XG5cbiAgICAvLyBBbHdheXMgYmVzdCB0byB1c2UgZGVlcCBvYmplY3QgY29tcGFyZSB3aGVuIGl0J3MgYXZhaWxhYmxlXG4gICAgLy8gaWYgKGlzRXF1YWwgIT09IHVuZGVmaW5lZCkge1xuICAgIC8vIGNvbnNvbGUubG9nKGBBbmd1bGFyUENvbm5lY3QgaXMgdXNpbmcgZGVlcCBvYmplY3QgY29tcGFyZWApO1xuICAgIC8vIH0gZWxzZSB7XG4gICAgLy8gY29uc29sZS5sb2coYEFuZ3VsYXJQQ29ubmVjdCBpcyB1c2luZyBKU09OLnN0cmluZ2lmeSBjb21wYXJlYCk7XG4gICAgLy8gfVxuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgYSB1bmlxdWUgKGZvciB0aGlzIHNlc3Npb24pIENvbXBvbmVudElEIHRoYXQgc2hvdWxkXG4gICAqIGJlIHVzZWQgZm9yIHRoYXQgY29tcG9uZW50IHRvIHVwZGF0ZSBpdHMgbW9zdCByZWNlbnQgcHJvcHNcbiAgICogKHdoaWNoIGNhbiBhbHNvIGJlIGNvbXBhcmVkIGFnYWluc3QgaXRzIHByZXZpb3VzIHZhbHVlXG4gICAqIGJlZm9yZSB1cGRhdGluZykuIE5vdGUgdGhhdCB0aGlzIHJldHVybnMgYSBzdHJpbmcgc28gd2UgY2FuIHVzZVxuICAgKiBpdCBhcyBhIGtleSBpbiBhbiBhc3NvY2lhdGl2ZSBhcnJheVxuICAgKiBAcmV0dXJucyB0aGUgbmV4dCBjb21wb25lbnRJRFxuICAgKi9cbiAgcHJpdmF0ZSBnZXROZXh0Q29tcG9uZW50SWQoKTogc3RyaW5nIHtcbiAgICB0aGlzLmNvdW50ZXJDb21wb25lbnRJRCArPSAxO1xuICAgIC8vIE5vdGUgdGhhdCB3ZSB1c2UgdGhlIHN0cmluZyB2ZXJzaW9uIG9mIHRoZSBudW1iZXIgc28gd2UgaGF2ZSBhblxuICAgIC8vICBhc3NvY2lhdGl2ZSBhcnJheSB0aGF0IHdlIGNhbiBjbGVhbiB1cCBsYXRlciwgaWYgbmVlZGVkLlxuICAgIHJldHVybiB0aGlzLmNvdW50ZXJDb21wb25lbnRJRC50b1N0cmluZygpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBDYWxsaW5nIG9iamVjdCAoaW5Db21wKSBzdWJzY3JpYmVzIHRvIHN0b3JlIGNoYW5nZXMuXG4gICAqIEBwYXJhbSBpbkNvbXAgVGhlIGNvbXBvbmVudCB0aGF0J3Mgc3Vic2NyaWJpbmcgdG8gdGhlIHN0b3JlXG4gICAqIEBwYXJhbSBpbkNhbGxiYWNrIFRoZSBjb21wb25lbnQncyBjYWxsYmFjayBmdW5jdGlvbiAodHlwaWNhbGx5IGNhbGxlZCBvblN0YXRlQ2hhbmdlKSB0aGF0IHdpbGxcbiAgICogYmUgY2FsbGVkIHdoZW4gdGhlIHN0b3JlIGNoYW5nZXMuXG4gICAqIEByZXR1cm5zIFRoZSAqKnVuc3Vic2NyaWJlKiogZnVuY3Rpb24gdGhhdCBzaG91bGQgYmUgY2FsbGVkIHdoZW4gdGhlIGNvbXBvbmVudCBuZWVkc1xuICAgKiB0byB1bnN1YnNjcmliZSBmcm9tIHRoZSBzdG9yZS4gKFR5cGljYWxseSBkdXJpbmcgbmdPbkRlc3Ryb3kpXG4gICAqL1xuICBwcml2YXRlIHN1YnNjcmliZVRvU3RvcmUoaW5Db21wOiBhbnkgPSBudWxsLCBpbkNhbGxiYWNrOiBGdW5jdGlvbiB8IG51bGwgPSBudWxsKTogRnVuY3Rpb24ge1xuICAgIC8vIGNvbnN0IHRoZUNvbXBOYW1lOiBzdHJpbmcgPSBpbkNvbXAgPyBgJHtpbkNvbXAuY29uc3RydWN0b3IubmFtZX1gIDogJ25vIGNvbXBvbmVudCBwcm92aWRlZCc7XG4gICAgbGV0IGZuVW5zdWJzY3JpYmU7XG4gICAgLy8gY29uc29sZS5sb2coIGBCcmlkZ2Ugc3Vic2NyaWJpbmc6ICR7dGhlQ29tcE5hbWV9IGApO1xuICAgIGlmIChpbkNvbXApIHtcbiAgICAgIGZuVW5zdWJzY3JpYmUgPSB0aGlzLmdldFN0b3JlKCkuc3Vic2NyaWJlKGluQ2FsbGJhY2spO1xuICAgIH1cbiAgICByZXR1cm4gZm5VbnN1YnNjcmliZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBDb21wb25lbnQncyBwcm9wZXJ0aWVzIHRoYXQgYXJlIHVzZWQgKGEpIHRvIHBvcHVsYXRlIGNvbXBvbmVudFByb3BzQXJyXG4gIC8vICBhbmQgKGIpIHRvIGRldGVybWluZSB3aGV0aGVyIHRoZSBjb21wb25lbnQgc2hvdWxkIHVwZGF0ZSBpdHNlbGYgKHJlLXJlbmRlcilcbiAgICogQHBhcmFtIGluQ29tcCBUaGUgY29tcG9uZW50IHdob3NlIHByb3BlcnRpZXMgYXJlIGJlaW5nIG9idGFpbmVkXG4gICAqL1xuICBwcml2YXRlIGdldENvbXBvbmVudFByb3BzKGluQ29tcDogYW55ID0gbnVsbCk6IE9iamVjdCB7XG4gICAgbGV0IGNvbXBQcm9wczogYW55ID0ge307XG4gICAgbGV0IGFkZFByb3BzID0ge307XG5cbiAgICBpZiAoaW5Db21wID09PSBudWxsKSB7XG4gICAgICBjb25zb2xlLmVycm9yKGBBbmd1bGFyUENvbm5lY3Q6IGdldENvbXBvbmVudFByb3BzIGNhbGxlZCB3aXRoIGJhZCBjb21wb25lbnQ6ICR7aW5Db21wfWApO1xuICAgIH1cblxuICAgIC8vIGlmICgoaW5Db21wLmNvbnN0cnVjdG9yLm5hbWUgPT09IFwiRmxvd0NvbnRhaW5lckNvbXBvbmVudFwiKSB8fCAoaW5Db21wLmNvbnN0cnVjdG9yLm5hbWUgPT09IFwiVmlld0NvbnRhaW5lckNvbXBvbmVudFwiKVxuICAgIC8vICAgICB8fCAoaW5Db21wLmNvbnN0cnVjdG9yLm5hbWUgPT09IFwiVmlld0NvbXBvbmVudFwiKSB8fCAoaW5Db21wLmNvbnN0cnVjdG9yLm5hbWUgPT09IFwiRGVmZXJMb2FkQ29tcG9uZW50XCIpKSB7XG4gICAgLy8gICBjb25zb2xlLmxvZyhgLS0+IEFuZ3VsYXJQQ29ubmVjdCBnZXRDb21wb25lbnRQcm9wczogJHtpbkNvbXAuY29uc3RydWN0b3IubmFtZX1gKTtcbiAgICAvLyB9XG5cbiAgICBpZiAoaW5Db21wLmFkZGl0aW9uYWxQcm9wcyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBpZiAodHlwZW9mIGluQ29tcC5hZGRpdGlvbmFsUHJvcHMgPT09ICdvYmplY3QnKSB7XG4gICAgICAgIGFkZFByb3BzID0gaW5Db21wLnBDb25uJC5yZXNvbHZlQ29uZmlnUHJvcHMoaW5Db21wLmFkZGl0aW9uYWxQcm9wcyk7XG4gICAgICB9IGVsc2UgaWYgKHR5cGVvZiBpbkNvbXAuYWRkaXRpb25hbFByb3BzID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIGNvbnN0IHByb3BzVG9BZGQgPSBpbkNvbXAuYWRkaXRpb25hbFByb3BzKFBDb3JlLmdldFN0b3JlKCkuZ2V0U3RhdGUoKSwgaW5Db21wLnBDb25uJCk7XG4gICAgICAgIGFkZFByb3BzID0gaW5Db21wLnBDb25uJC5yZXNvbHZlQ29uZmlnUHJvcHMocHJvcHNUb0FkZCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29tcFByb3BzID0gaW5Db21wLnBDb25uJC5nZXRDb25maWdQcm9wcygpO1xuXG4gICAgLy8gY29uc3QgY29tcG9uZW50TmFtZSA9IGluQ29tcC5jb25zdHJ1Y3Rvci5uYW1lO1xuXG4gICAgLy8gVGhlIGZvbGxvd2luZyBjb21tZW50IGlzIGZyb20gdGhlIE5lYnVsYS9Db25zdGVsbGF0aW9uIHZlcnNpb24gb2YgdGhpcyBjb2RlLiBNZWFudCBhcyBhIHJlbWluZGVyIHRvIGNoZWNrIHRoaXMgb2NjYXNpb25hbGx5XG4gICAgLy8gcG9wdWxhdGUgYWRkaXRpb25hbCBwcm9wcyB3aGljaCBhcmUgY29tcG9uZW50IHNwZWNpZmljIGFuZCBub3QgcHJlc2VudCBpbiBjb25maWd1cmF0aW9uc1xuICAgIC8vIFRoaXMgYmxvY2sgY2FuIGJlIHJlbW92ZWQgb25jZSBhbGwgdGhlc2UgcHJvcHMgd2lsbCBiZSBhZGRlZCBhcyBwYXJ0IG9mIGNvbmZpZ3NcbiAgICBpbkNvbXAucENvbm4kLnBvcHVsYXRlQWRkaXRpb25hbFByb3BzKGNvbXBQcm9wcyk7XG5cbiAgICBjb21wUHJvcHMgPSBpbkNvbXAucENvbm4kLnJlc29sdmVDb25maWdQcm9wcyhjb21wUHJvcHMpO1xuXG4gICAgaWYgKGNvbXBQcm9wcyAmJiB1bmRlZmluZWQgIT09IGNvbXBQcm9wcy52YWxpZGF0ZW1lc3NhZ2UgJiYgY29tcFByb3BzLnZhbGlkYXRlbWVzc2FnZSAhPSAnJykge1xuICAgICAgLy8gY29uc29sZS5sb2coIGAgICB2YWxpZGF0ZW1lc3NhZ2UgZm9yICR7aW5Db21wLmNvbnN0cnVjdG9yLm5hbWV9ICR7aW5Db21wLmFuZ3VsYXJQQ29ubmVjdERhdGEuY29tcElEfTogJHtjb21wUHJvcHMudmFsaWRhdGVtZXNzYWdlfWApO1xuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICAuLi5jb21wUHJvcHMsXG4gICAgICAuLi5hZGRQcm9wc1xuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgdW5pcXVlIGlkIGZvciBnaXZlbiBjb21wb25lbnQgY3JlYXRlZCB3aGVuIHJlZ2lzdGVyaW5nXG4gICAqIE90aGVyd2lzZSwgcmV0dXJuIHVuZGVmaW5lZC5cbiAgICogQHBhcmFtIGluQ29tcCBUaGUgY29tcG9uZW50IHdob3NlIHByb3BlcnR5IGlzIGJlaW5nIHJlcXVlc3RlZC5cbiAgICovXG4gIHB1YmxpYyBnZXRDb21wb25lbnRJRChpbkNvbXApOiBzdHJpbmcge1xuICAgIHJldHVybiBpbkNvbXAuYnJpZGdlQ29tcG9uZW50SUQgfHwgaW5Db21wLmFuZ3VsYXJQQ29ubmVjdERhdGEuY29tcElEO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHJlcXVlc3RlZCBwcm9wZXJ0eSBmb3IgdGhlIGNvbXBvbmVudCBpZiBpdCBleGlzdHMuXG4gICAqIE90aGVyd2lzZSwgcmV0dXJuIHVuZGVmaW5lZC5cbiAgICogQHBhcmFtIGluQ29tcCBUaGUgY29tcG9uZW50IHdob3NlIHByb3BlcnR5IGlzIGJlaW5nIHJlcXVlc3RlZC5cbiAgICogQHBhcmFtIGluUHJvcCBUaGUgcHJvcGVydHkgYmVpbmcgcmVxdWVzdGVkLlxuICAgKi9cbiAgcHVibGljIGdldENvbXBvbmVudFByb3AoaW5Db21wOiBhbnkgPSBudWxsLCBpblByb3AgPSAnJykge1xuICAgIGlmIChpbkNvbXAgPT09IG51bGwpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoYEFuZ3VsYXJQQ29ubmVjdDogZ2V0Q29tcG9uZW50UHJvcCBjYWxsZWQgd2l0aCBiYWQgY29tcG9uZW50OiAke2luQ29tcH1gKTtcbiAgICB9XG5cbiAgICBjb25zdCBjb21wSUQgPSBpbkNvbXAuYW5ndWxhclBDb25uZWN0RGF0YS5jb21wSUQ7XG5cbiAgICAvLyBMb29rIHVwIHByb3BlcnR5IGluIHRoZSBjb21wb25lbnQncyBlbnRyeSBpbiBjb21wb25lbnRQcm9wQXJyYXkgKHdoaWNoIHNob3VsZCBoYXZlIHRoZSBtb3N0IHJlY2VudCB2YWx1ZSlcbiAgICByZXR1cm4gdGhpcy5jb21wb25lbnRQcm9wc0Fycltjb21wSURdW2luUHJvcF07XG4gIH1cblxuICAvKipcbiAgICpcbiAgICogQHJldHVybnMgVGhlIGN1cnJlbnQgY29tcGxldGUgc2V0IG9mIHJlc29sdmVkIHByb3BlcnRpZXMgdGhhdCBhcmUgYXNzb2NpYXRlZCB3aXRoXG4gICAqIHRoaXMgY29tcG9uZW50LlxuICAgKiBUaGlzIGlzIHRoZSBmdWxsIHNldCBvZiBwcm9wZXJ0aWVzIHRoYXQgYXJlIHRyYWNrZWQgaW4gUmVkdXggZm9yIHRoaXMgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIGdldEN1cnJlbnRDb21wbGV0ZVByb3BzKGluQ29tcDogYW55ID0gbnVsbCkge1xuICAgIGlmIChpbkNvbXAgPT09IG51bGwpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoYEFuZ3VsYXJQQ29ubmVjdDogZ2V0Q3VycmVudENvbXBsZXRlUHJvcHMgY2FsbGVkIHdpdGggYmFkIGNvbXBvbmVudDogJHtpbkNvbXB9YCk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmNvbXBvbmVudFByb3BzQXJyW2luQ29tcC5hbmd1bGFyUENvbm5lY3REYXRhLmNvbXBJRF07XG4gIH1cblxuICAvKipcbiAgICogUmVnaXN0ZXJzIHRoZSBjb21wb25lbnQgYW5kIGl0cyBjYWxsYmFjayBmdW5jdGlvbi4gV2hlbiBhIGNvbXBvbmVudCBjYWxscyB0aGlzIG1ldGhvZFxuICAgKiAodHlwaWNhbGx5IGZyb20gaXRzIG5nT25Jbml0KSwgdGhlIGNvbXBvbmVudCBpcyBnaXZlbiBhIHVuaXF1ZSBjb21wb25lbnRJRCAoZm9yIHRoaXMgc2Vzc2lvbilcbiAgICogYW5kIHN1YnNjcmliZXMgdGhlIGNvbXBvbmVudCB0byB0aGUgc3RvcmUuIEFzIGEgc2lkZSBlZmZlY3QsIGl0IGFsc28gYXNzaWducyB0aGUgY29tcG9uZW50J3NcbiAgICogYWN0aW9ucyAoZnJvbSBpdHMgbWV0YWRhdGEpIHRvIHRoZSBjb21wb25lbnQncyBfX19hY3Rpb25zX19fIGFuZCBiaW5kcyB0aGUgY29tcG9uZW50J3MgY2FsbGJhY2tcbiAgICogKHBhc3NlZCBpbiBhcyBfX19pbkNhbGxiYWNrX19fKSB0byB0aGUgY29tcG9uZW50LiBJZiBhIHByb2JsZW0gaXMgZW5jb3VudGVyZWQsIGFuIGVtcHR5IG9iamVjdCxcbiAgICoge30sIGlzIHJldHVybmVkLlxuICAgKiBAcGFyYW0gaW5Db21wIFRoZSBjb21wb25lbnQgYmVpbmcgcmVnaXN0ZXJlZCBhbmQgc3Vic2NyaWJlZFxuICAgKiBAcGFyYW0gaW5DYWxsYmFjayBUaGUgY29tcG9uZW50J3MgY2FsbGJhY2sgZnVuY3Rpb24gKHR5cGljYWxseSBjYWxsZWQgb25TdGF0ZUNoYW5nZSkgdGhhdFxuICAgKiB3aWxsIGJlIGNhbGxlZCB3aGVuZXZlciB0aGUgc3RhdGUgY2hhbmdlcy5cbiAgICogQHJldHVybnMgQSBKU09OIG9iamVjdCB3aXRoIHRoZSBmb2xsb3dpbmcga2V5czpcbiAgICogY29tcElEOiB0aGUgdW5pcXVlIElEIGFzc29jaWF0ZWQgd2l0aCB0aGlzIGNvbXBvbmVudCxcbiAgICogdW5zdWJzY3JpYmVGbjogdGhlIGZ1bmN0aW9uIHRvIGJlIGNhbGxlZCB3aGVuIHRoZSBjb21wb25lbnQgbmVlZHMgdG8gdW5zdWJzY3JpYmUgZnJvbSB0aGUgc3RvcmUsXG4gICAqIHZhbGlkYXRlTWVzc2FnZTogYW55IHZhbGlkYXRpb24vZXJyb3IgbWVzc2FnZSB0aGF0IGdldHMgZ2VuZXJhdGVkIGZvciB0aGlzIG9iamVjdCxcbiAgICogYWN0aW9uczogYW55IGFjdGlvbnMgdGhhdCBhcmUgZGVmaW5lZCBmb3IgdGhpcyBvYmplY3RcbiAgICovXG4gIHJlZ2lzdGVyQW5kU3Vic2NyaWJlQ29tcG9uZW50KGluQ29tcCwgaW5DYWxsYmFjazogRnVuY3Rpb24gfCBudWxsID0gbnVsbCk6IEFuZ3VsYXJQQ29ubmVjdERhdGEge1xuICAgIC8vIENyZWF0ZSBhbiBpbml0aWFsIG9iamVjdCB0byBiZSByZXR1cm5lZC5cbiAgICBjb25zdCByZXR1cm5PYmplY3Q6IEFuZ3VsYXJQQ29ubmVjdERhdGEgPSB7XG4gICAgICBjb21wSUQ6ICcnLFxuICAgICAgdW5zdWJzY3JpYmVGbjogdW5kZWZpbmVkLFxuICAgICAgdmFsaWRhdGVNZXNzYWdlOiAnJyxcbiAgICAgIGFjdGlvbnM6IHVuZGVmaW5lZFxuICAgIH07XG5cbiAgICBpZiAoaW5Db21wID09PSBudWxsIHx8IGluQ2FsbGJhY2sgPT09IG51bGwpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoYEFuZ3VsYXJQQ29ubmVjdDogYmFkIGNhbGwgdG8gcmVnaXN0ZXJBbmRTdWJzY3JpYmU6IGluQ29tcDogJHtpbkNvbXB9IGluQ2FsbGJhY2s6ICR7aW5DYWxsYmFja31gKTtcbiAgICAgIHJldHVybiByZXR1cm5PYmplY3Q7XG4gICAgfVxuXG4gICAgY29uc3QgY29tcFR5cGUgPSBpbkNvbXAuY29uc3RydWN0b3IubmFtZTtcblxuICAgIGlmIChBbmd1bGFyUENvbm5lY3RTZXJ2aWNlLmJMb2dnaW5nKSB7XG4gICAgICBjb25zb2xlLmxvZyhgcmVnaXN0ZXJBbmRTdWJzY3JpYmVDb21wb25lbnQ6ICR7Y29tcFR5cGV9YCk7XG4gICAgfVxuXG4gICAgaWYgKHVuZGVmaW5lZCAhPT0gaW5Db21wLmJyaWRnZUNvbXBvbmVudElEKSB7XG4gICAgICBjb25zb2xlLmVycm9yKGBPTEQgU0NIT09MOiAke2NvbXBUeXBlfWApO1xuICAgIH1cblxuICAgIGlmICh1bmRlZmluZWQgPT09IGluQ29tcC5hY3Rpb25zICYmIHVuZGVmaW5lZCA9PT0gaW5Db21wLmFuZ3VsYXJQQ29ubmVjdERhdGEpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoYEFuZ3VsYXJQQ29ubmVjdDogYmFkIGNhbGwgdG8gcmVnaXN0ZXJBbmRTdWJzY3JpYmUgZnJvbSAke2NvbXBUeXBlfTogYWN0aW9ucyBub3QgZGVmaW5lZCBhcyBhIGNsYXNzIHZhcmlhYmxlIGZvciBpbkNvbXBgKTtcbiAgICAgIHJldHVybiByZXR1cm5PYmplY3Q7XG4gICAgfVxuICAgIGlmICh1bmRlZmluZWQgPT09IGluQ29tcC5icmlkZ2VDb21wb25lbnRJRCAmJiB1bmRlZmluZWQgPT09IGluQ29tcC5hbmd1bGFyUENvbm5lY3REYXRhKSB7XG4gICAgICBjb25zb2xlLmVycm9yKFxuICAgICAgICBgQW5ndWxhclBDb25uZWN0OiBiYWQgY2FsbCB0byByZWdpc3RlckFuZFN1YnNjcmliZSBmcm9tICR7Y29tcFR5cGV9OiBicmlkZ2VDb21wb25lbnRJRCBub3QgZGVmaW5lZCBhcyBhIGNsYXNzIHZhcmlhYmxlIGZvciBpbkNvbXBgXG4gICAgICApO1xuICAgICAgcmV0dXJuIHJldHVybk9iamVjdDtcbiAgICB9XG4gICAgaWYgKHVuZGVmaW5lZCA9PT0gaW5Db21wLnVuc3Vic2NyaWJlU3RvcmUgJiYgdW5kZWZpbmVkID09PSBpbkNvbXAuYW5ndWxhclBDb25uZWN0RGF0YSkge1xuICAgICAgY29uc29sZS5lcnJvcihcbiAgICAgICAgYEFuZ3VsYXJQQ29ubmVjdDogYmFkIGNhbGwgdG8gcmVnaXN0ZXJBbmRTdWJzY3JpYmUgZnJvbSAke2NvbXBUeXBlfTogdW5zdWJzY3JpYmVTdG9yZSBub3QgZGVmaW5lZCBhcyBhIGNsYXNzIHZhcmlhYmxlIGZvciBpbkNvbXBgXG4gICAgICApO1xuICAgICAgcmV0dXJuIHJldHVybk9iamVjdDtcbiAgICB9XG4gICAgaWYgKHVuZGVmaW5lZCA9PT0gaW5Db21wLnZhbGlkYXRlTWVzc2FnZSAmJiB1bmRlZmluZWQgPT09IGluQ29tcC5hbmd1bGFyUENvbm5lY3REYXRhKSB7XG4gICAgICBjb25zb2xlLmVycm9yKGBBbmd1bGFyUENvbm5lY3Q6IGJhZCBjYWxsIHRvIHJlZ2lzdGVyQW5kU3Vic2NyaWJlIGZyb20gJHtjb21wVHlwZX06IHZhbGlkYXRlTWVzc2FnZSBub3QgZGVmaW5lZCBhcyBhIGNsYXNzIHZhcmlhYmxlIGZvciBpbkNvbXBgKTtcbiAgICAgIHJldHVybiByZXR1cm5PYmplY3Q7XG4gICAgfVxuXG4gICAgLy8gY2FsbCBwcm9jZXNzQWN0aW9ucyB0byBwb3B1bGF0ZSBtZXRhZGF0YSB3aXRoIGFjdGlvbnMgYXMgaW4gUENvbm5lY3RIT1IgaW5pdGlhbGl6ZVxuICAgIHRoaXMucHJvY2Vzc0FjdGlvbnMoaW5Db21wKTtcbiAgICBpZiAodW5kZWZpbmVkID09PSBpbkNvbXAuYWN0aW9ucykge1xuICAgICAgcmV0dXJuT2JqZWN0LmFjdGlvbnMgPSBpbkNvbXAucENvbm4kLmdldEFjdGlvbnMoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgaW5Db21wLmFjdGlvbnMgPSBpbkNvbXAucENvbm4kLmdldEFjdGlvbnMoKTtcbiAgICB9XG5cbiAgICAvLyBiaW5kIHRoZSBwcm92aWRlZCBjYWxsYmFjayB0byB0aGUgY29tcG9uZW50IGl0J3MgYXNzb2NpYXRlZCB3aXRoXG4gICAgaW5DYWxsYmFjayA9IGluQ2FsbGJhY2suYmluZChpbkNvbXApO1xuXG4gICAgLy8gTm93IHByb2NlZWQgdG8gcmVnaXN0ZXIgYW5kIHN1YnNjcmliZS4uLlxuICAgIGNvbnN0IHRoZUNvbXBJRDogc3RyaW5nID0gdGhpcy5nZXROZXh0Q29tcG9uZW50SWQoKTtcbiAgICBjb25zdCB0aGVVbnN1YjogRnVuY3Rpb24gfCBudWxsID0gdGhpcy5zdWJzY3JpYmVUb1N0b3JlKGluQ29tcCwgaW5DYWxsYmFjayk7XG5cbiAgICBpZiAodW5kZWZpbmVkID09PSBpbkNvbXAuYW5ndWxhclBDb25uZWN0RGF0YSkge1xuICAgICAgaW5Db21wLmJyaWRnZUNvbXBvbmVudElEID0gdGhlQ29tcElEO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm5PYmplY3QuY29tcElEID0gdGhlQ29tcElEO1xuICAgICAgcmV0dXJuT2JqZWN0LnVuc3Vic2NyaWJlRm4gPSB0aGVVbnN1YjtcbiAgICB9XG5cbiAgICAvLyBpbml0aWFsaXplIHRoaXMgY29tcG9uZW50cyBlbnRyeSBpbiB0aGUgY29tcG9uZW50UHJvcHNBcnJcbiAgICB0aGlzLmNvbXBvbmVudFByb3BzQXJyW3RoZUNvbXBJRF0gPSB7fTtcblxuICAgIC8vIHJldHVybiBvYmplY3Qgd2l0aCBjb21wSUQgYW5kIHVuc3Vic2NyaWJlLi4uXG4gICAgcmV0dXJuIHJldHVybk9iamVjdDtcbiAgfVxuXG4gIC8vIFJldHVybnMgdHJ1ZSBpZiB0aGUgY29tcG9uZW50J3MgZW50cnkgaW4gX19fY29tcG9uZW50UHJvcHNBcnJfX18gaXNcbiAgLy8gIHRoZSBzYW1lIGFzIHRoZSBpbkNvbXBQcm9wcyBwYXNzZWQgaW4uXG4gIC8vICBBcyBhIHNpZGUgZWZmZWN0LCB1cGRhdGUgdGhlIGNvbXBvbmVudCdzIGVudHJ5IGluIGNvbXBvbmVudFByb3BzQXJyXG4gIC8vICBOT1RFOiBJdCBpcyBhc3N1bWVkIHRoYXQgdGhlIGluY29taW5nIGNvbXBvbmVudCBoYXMgdGhlIGZvbGxvd2luZzpcbiAgLy8gICogYSBicmlkZ2VDb21wb25lbnRJRCA8c3RyaW5nPiBwcm9wZXJ0eSAtIHVzZWQgYXMgbG9va3VwIGtleSBpbiBjb21wb25lbnRQcm9wc0FyclxuICAvLyAgKiBhIHBDb25uJCA8Pz4gcHJvcGVydHkgLSB1c2VkIHRvIGFjY2VzcyBmdW5jdGlvbnMgYWNjZXNzZWQgaW4gZ2V0Q29tcG9uZW50UHJvcHNcbiAgLy8gUmV0dXJuIHRydWU6IG1lYW5zIHRoZSBjb21wb25lbnQgcHJvcHMgYXJlIGRpZmZlcmVudCBhbmQgdGhlIGNvbXBvbmVudCBzaG91bGQgdXBkYXRlIGl0c2VsZiAocmUtcmVuZGVyKVxuICAvLyBSZXR1cm4gZmFsc2U6IG1lYW5zIHRoZSBjb21wb25lbnQgcHJvcHMgYXJlIHRoZSBzYW1lIGFuZCB0aGUgY29tcG9uZW50IGRvZXNuJ3QgbmVlZCB0byB1cGRhdGUgKHJlLXJlbmRlcilcbiAgLy8gIE9uIGJhZCBpbnB1dCwgcmV0dXJuIGZhbHNlO1xuICAvKipcbiAgICogUmV0dXJucyAqKnRydWUqKiBpZiB0aGUgY29tcG9uZW50J3MgZW50cnkgaW4gX19fY29tcG9uZW50UHJvcHNBcnJfX18gaXNcbiAgICogdGhlIHNhbWUgYXMgdGhlIHByb3BlcnRpZXMgdGhhdCBhcmUgY3VycmVudCBhc3NvY2lhdGVkIHdpdGggdGhlIGNvbXBvbmVudCAoX19faW5Db21wX19fKSBwYXNzZWQgaW4uXG4gICAqIEFzIGEgc2lkZSBlZmZlY3QsIHRoZSBjb21wb25lbnQncyBlbnRyeSBpbiBfX19jb21wb25lbnRQcm9wc0Fycl9fXyBpcyB1cGRhdGVkLlxuICAgKiAqKk5vdGUqKjogSXQgaXMgYXNzdW1lZCB0aGF0IHRoZSBpbmNvbWluZyBjb21wb25lbnQgaGFzIHRoZSBmb2xsb3dpbmc6XG4gICAqIChhKSBhIGJyaWRnZUNvbXBvbmVudElEIF9zdHJpbmdfIHByb3BlcnR5IHVzZWQgYXMgbG9va3VwIGtleSBpbiBfX19jb21wb25lbnRQcm9wc0Fycl9fX1xuICAgKiBhbmQgKGIpIGEgX19fcENvbm4kX19fIHByb3BlcnR5IHVzZWQgdG8gYWNjZXNzIGZ1bmN0aW9ucyBjYWxsZWQgaW4gX19fZ2V0Q29tcG9uZW50UHJvcHNfX19cbiAgICpcbiAgICogQHBhcmFtIGluQ29tcCBUaGUgY29tcG9uZW50IGFza2luZyBpZiBpdCBzaG91bGQgdXBkYXRlIGl0c2VsZlxuICAgKiBAcmV0dXJucyBSZXR1cm4gKip0cnVlKio6IG1lYW5zIHRoZSBjb21wb25lbnQgcHJvcHMgYXJlIGRpZmZlcmVudCBhbmQgdGhlIGNvbXBvbmVudCBzaG91bGQgdXBkYXRlIGl0c2VsZiAocmUtcmVuZGVyKS5cbiAgICogUmV0dXJuICoqZmFsc2UqKjogbWVhbnMgdGhlIGNvbXBvbmVudCBwcm9wcyBhcmUgdGhlIHNhbWUgYW5kIHRoZSBjb21wb25lbnQgZG9lc24ndCBuZWVkIHRvIHVwZGF0ZSAocmUtcmVuZGVyKS5cbiAgICogSWYgdGhlICoqKmluQ29tcCoqKiBpbnB1dCBpcyBiYWQsIGZhbHNlIGlzIGFsc28gcmV0dXJuZWQuXG4gICAqL1xuICBzaG91bGRDb21wb25lbnRVcGRhdGUoaW5Db21wKTogYm9vbGVhbiB7XG4gICAgLy8gY29uc3QgYlNob3dMb2dnaW5nID0gZmFsc2U7XG4gICAgbGV0IGJSZXQgPSBmYWxzZTtcbiAgICAvLyBjaGVjayBmb3IgcmVhc29uYWJsZSBpbnB1dFxuICAgIGlmIChVdGlscy5pc0VtcHR5T2JqZWN0KGluQ29tcCkpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoYEFuZ3VsYXJQQ29ubmVjdDogYmFkIGNhbGwgdG8gc2hvdWxkQ29tcG9uZW50VXBkYXRlOiBpbkNvbXA6ICR7SlNPTi5zdHJpbmdpZnkoaW5Db21wKX1gKTtcbiAgICAgIHJldHVybiBiUmV0O1xuICAgIH1cbiAgICBpZiAodW5kZWZpbmVkID09PSBpbkNvbXAudmFsaWRhdGVNZXNzYWdlICYmIHVuZGVmaW5lZCA9PT0gaW5Db21wLmFuZ3VsYXJQQ29ubmVjdERhdGEpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoYEFuZ3VsYXJQQ29ubmVjdDogYmFkIGNhbGwgdG8gc2hvdWxkQ29tcG9uZW50VXBkYXRlOiAke2luQ29tcC5jb25zdHJ1Y3Rvci5uYW1lfSBkb2VzIG5vdCBoYXZlIGEgdmFsaWRhdGVNZXNzYWdlIHByb3BlcnR5LmApO1xuICAgIH1cblxuICAgIGNvbnN0IGNvbXBJRCA9IHRoaXMuZ2V0Q29tcG9uZW50SUQoaW5Db21wKTtcblxuICAgIGNvbnN0IGN1cnJlbnRQcm9wczogYW55ID0gdGhpcy5jb21wb25lbnRQcm9wc0Fycltjb21wSURdO1xuICAgIGNvbnN0IGN1cnJlbnRQcm9wc0FzU3RyOiBzdHJpbmcgPSBKU09OLnN0cmluZ2lmeShjdXJyZW50UHJvcHMpO1xuXG4gICAgY29uc3QgaW5jb21pbmdQcm9wczogYW55ID0gdGhpcy5nZXRDb21wb25lbnRQcm9wcyhpbkNvbXApO1xuXG4gICAgLy8gaWYgaGF2ZSBwYWdlTWVzc2FnZXMsIGFuZCBpdCBpcyBibGFuaywgcmVtb3ZlIGl0LiAgVGhpcyBjYXVzZXMgaXNzdWVzIG9mIG1ha2luZyBpdCBhcHBlYXJcbiAgICAvLyB0aGF0IGEgd2lsbCBjYXVzZSBhbiB1cGRhdGUsIHdoZW4gdGhlcmUgaXMgbm8gY2hhbmdlXG4gICAgaWYgKHRoaXMuaXNQYWdlTWVzc2FnZXNFbXB0eShpbmNvbWluZ1Byb3BzKSkge1xuICAgICAgaW5Db21wLmFuZ3VsYXJQQ29ubmVjdERhdGEucGFnZU1lc3NhZ2VzID0gaW5jb21pbmdQcm9wcy5wYWdlTWVzc2FnZXM7XG4gICAgICBkZWxldGUgaW5jb21pbmdQcm9wcy5wYWdlTWVzc2FnZXM7XG4gICAgfVxuXG4gICAgaWYgKGluY29taW5nUHJvcHMuaHR0cE1lc3NhZ2VzKSB7XG4gICAgICBpbkNvbXAuYW5ndWxhclBDb25uZWN0RGF0YS5odHRwTWVzc2FnZXMgPSBpbmNvbWluZ1Byb3BzLmh0dHBNZXNzYWdlcztcbiAgICAgIGluY29taW5nUHJvcHMuaHR0cE1lc3NhZ2VzID0gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIGNvbnN0IGluY29taW5nUHJvcHNBc1N0cjogc3RyaW5nID0gSlNPTi5zdHJpbmdpZnkoaW5jb21pbmdQcm9wcyk7XG5cbiAgICBiUmV0ID0gaXNFcXVhbCA/ICFpc0VxdWFsKGN1cnJlbnRQcm9wcywgaW5jb21pbmdQcm9wcykgOiBjdXJyZW50UHJvcHNBc1N0ciAhPSBpbmNvbWluZ1Byb3BzQXNTdHI7XG5cbiAgICAvLyBCZWxvdyBwaWVjZSBvZiBjb2RlIGlzIG5lZWRlZCB0byByZS1yZW5kZXIgdGhlIGNvbXBvbmVudCBzaW5jZSB3ZSB3YW5uYSBldmFsdWF0ZSB0aGUgVmlzaWJpbGl0eSBleHByZXNzaW9uIHdpdGhpbiBWaWV3IGNvbXBvbmVudCBpbiBzdWNoIGNhc2VzXG4gICAgaWYgKGluQ29tcC5wQ29ubiQubWV0YS5jb25maWcuY29udGV4dD8ubGVuZ3RoID4gMCAmJiBpbkNvbXAucENvbm4kLmdldFBhZ2VSZWZlcmVuY2UoKS5sZW5ndGggPiAnY2FzZUluZm8uY29udGVudCcubGVuZ3RoKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICAvLyBOb3cgdXBkYXRlIHRoZSBlbnRyeSBpbiBjb21wb25lbnRQcm9wc0FyciB3aXRoIHRoZSBpbmNvbWluZyB2YWx1ZSBzb1xuICAgIC8vICB3ZSBjYW4gY29tcGFyZSBhZ2FpbnN0IHRoYXQgbmV4dCB0aW1lLi4uXG4gICAgdGhpcy5jb21wb25lbnRQcm9wc0Fycltjb21wSURdID0gaW5jb21pbmdQcm9wcztcbiAgICBjb25zdCB2YWxpZGF0ZW1lc3NhZ2UgPSBpbmNvbWluZ1Byb3BzLnZhbGlkYXRlbWVzc2FnZSA9PT0gdW5kZWZpbmVkID8gJycgOiB0aGlzLnV0aWxzLmh0bWxEZWNvZGUoaW5jb21pbmdQcm9wcy52YWxpZGF0ZW1lc3NhZ2UpO1xuICAgIC8vIGFuZCB1cGRhdGUgdGhlIGNvbXBvbmVudCdzIHZhbGlkYXRpb24gbWVzc2FnZSAoaWYgdW5kZWZpbmVkLCBpdCBzaG91bGQgYmUgc2V0IHRvIFwiXCIpXG4gICAgaWYgKHVuZGVmaW5lZCAhPT0gaW5Db21wLmFuZ3VsYXJQQ29ubmVjdERhdGEpIHtcbiAgICAgIGluQ29tcC5hbmd1bGFyUENvbm5lY3REYXRhLnZhbGlkYXRlTWVzc2FnZSA9IHZhbGlkYXRlbWVzc2FnZTtcblxuICAgICAgaWYgKGluQ29tcC5hbmd1bGFyUENvbm5lY3REYXRhLnZhbGlkYXRlTWVzc2FnZSAhPSAnJykge1xuICAgICAgICAvLyBpZiBoYXZlIGEgdmFsaWRhdGUgbWVzc2FnZSwgdHVybiBvZmYgc3Bpbm5lclxuICAgICAgICBjb25zdCB0aW1lciA9IGludGVydmFsKDEwMCkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICB0aGlzLnBzU2VydmljZS5zZW5kTWVzc2FnZShmYWxzZSk7XG5cbiAgICAgICAgICB0aW1lci51bnN1YnNjcmliZSgpO1xuICAgICAgICB9KTtcblxuICAgICAgICBsZXQgc0Vycm9yTWVzc2FnZSA9IGN1cnJlbnRQcm9wcyAmJiBjdXJyZW50UHJvcHMubGFiZWwgPyBjdXJyZW50UHJvcHMubGFiZWwuY29uY2F0KCcgLSAnKSA6ICcnO1xuICAgICAgICBzRXJyb3JNZXNzYWdlID0gc0Vycm9yTWVzc2FnZS5jb25jYXQoaW5Db21wLmFuZ3VsYXJQQ29ubmVjdERhdGEudmFsaWRhdGVNZXNzYWdlKTtcbiAgICAgICAgdGhpcy5lclNlcnZpY2Uuc2VuZE1lc3NhZ2UoJ3VwZGF0ZScsIHNFcnJvck1lc3NhZ2UpO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBpbkNvbXAudmFsaWRhdGVNZXNzYWdlID0gdmFsaWRhdGVtZXNzYWdlO1xuICAgIH1cblxuICAgIGlmIChiUmV0ICYmIGNvbXBJRCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICBiUmV0ID0gZmFsc2U7XG4gICAgfVxuXG4gICAgLy8gY29uc29sZS5sb2coIGBBbmd1bGFyUENvbm5lY3QgY29tcG9uZW50ICR7Y29tcElEfSAtICR7aW5Db21wLmNvbnN0cnVjdG9yLm5hbWV9IC0gc2hvdWxkQ29tcG9uZW50VXBkYXRlOiAke2JSZXR9YCk7XG4gICAgLy8gY29uc29sZS5sb2coXCJjdXJyZW50IHByb3BzOiBcIiArIGN1cnJlbnRQcm9wc0FzU3RyKTtcblxuICAgIGlmIChiUmV0KSB7XG4gICAgICAvLyBjb25zb2xlLmxvZyhgKioqKiBjaGFuZ2UgZm9yOiAke2luQ29tcC5jb25zdHJ1Y3Rvci5uYW1lfWApO1xuICAgICAgLy8gY29uc29sZS5sb2coXCJjdXJyZW50IHByb3BzOiBcIiArIGN1cnJlbnRQcm9wc0FzU3RyKTtcbiAgICAgIC8vIGNvbnNvbGUubG9nKFwiaW5jb21pbmcgcHJvcHM6IFwiICsgaW5jb21pbmdQcm9wc0FzU3RyKTtcbiAgICAgIC8vIGNvbnNvbGUubG9nKGAgICAgJHtpbkNvbXAuY29uc3RydWN0b3IubmFtZX06IHNob3VsZENvbXBvbmVudFVwZGF0ZSByZXR1cm5pbmc6ICR7YlJldH0sIGNvbXBJZDogJHtjb21wSUR9YCApO1xuICAgICAgLy8gY29uc29sZS5sb2coIGAgICAgVXBkYXRpbmcgd2l0aCBjb21wb25lbnRQcm9wcyBmb3IgJHtpbkNvbXAuY29uc3RydWN0b3IubmFtZX06ICR7SlNPTi5zdHJpbmdpZnkodGhpcy5jb21wb25lbnRQcm9wc0Fycltjb21wSURdKX1gKTtcbiAgICAgIC8vIGNvbnNvbGUubG9nKCBgICAgICAgICAgIGFuZCB2YWxpZGF0ZU1lc3NhZ2U6ICR7aW5Db21wLnZhbGlkYXRlTWVzc2FnZX1gKTtcbiAgICB9XG4gICAgLy8gZWxzZSBpZiAoaW5Db21wLmNvbnN0cnVjdG9yLm5hbWUuaW5kZXhPZihcIlZpZXdcIikgPj0gMCB8fCBpbkNvbXAuY29uc3RydWN0b3IubmFtZS5pbmRleE9mKFwiUm9vdFwiKSA+PSAwKSB7XG4gICAgLy8gICBjb25zb2xlLmxvZyhcIm5vIGNoYW5nZVwiKTtcbiAgICAvLyAgIGNvbnNvbGUubG9nKFwiY3VycmVudCBwcm9wczogXCIgKyBjdXJyZW50UHJvcHNBc1N0cik7XG4gICAgLy8gICBjb25zb2xlLmxvZyhcImluY29taW5nIHByb3BzOiBcIiArIGluY29taW5nUHJvcHNBc1N0cik7XG4gICAgLy8gICBjb25zb2xlLmxvZyhgICAgICR7aW5Db21wLmNvbnN0cnVjdG9yLm5hbWV9OiBzaG91bGRDb21wb25lbnRVcGRhdGUgcmV0dXJuaW5nOiAke2JSZXR9LCBjb21wSWQ6ICR7Y29tcElEfWAgKTtcblxuICAgIC8vIH1cblxuICAgIC8vIGNvbnNvbGUubG9nKGAgICAgJHtpbkNvbXAuY29uc3RydWN0b3IubmFtZX06IHNob3VsZENvbXBvbmVudFVwZGF0ZSByZXR1cm5pbmc6ICR7YlJldH1gKTtcblxuICAgIHJldHVybiBiUmV0O1xuICB9XG5cbiAgaXNQYWdlTWVzc2FnZXNFbXB0eShpbmNvbWluZ1Byb3BzKSB7XG4gICAgcmV0dXJuIGluY29taW5nUHJvcHMucGFnZU1lc3NhZ2VzICYmIGluY29taW5nUHJvcHMucGFnZU1lc3NhZ2VzLmxlbmd0aCA9PT0gMDtcbiAgfVxuXG4gIC8qKlxuICAgKiBDYW4gYmUgY2FsbGVkIHdoZW4gdGhlIGNvbXBvbmVudCBoYXMgZW5jb3VudGVyZWQgYSBjaGFuZ2UgZXZlbnRcbiAgICogQHBhcmFtIGluQ29tcCBUaGUgY29tcG9uZW50IGNhbGxpbmcgdGhlIGNoYW5nZSBldmVudFxuICAgKiBAcGFyYW0gZXZlbnQgVGhlIGV2ZW50XG4gICAqL1xuICBjaGFuZ2VIYW5kbGVyKGluQ29tcCwgZXZlbnQpIHtcbiAgICBjb25zdCBiTG9nZ2luZyA9IGZhbHNlO1xuICAgIGlmIChiTG9nZ2luZykge1xuICAgICAgLy8gY29uc29sZS5sb2coYEFuZ3VsYXJQQ29ubmVjdC5jaGFuZ2VIYW5kbGVyYCk7XG4gICAgfVxuICAgIC8vIGNoZWNrIGZvciByZWFzb25hYmxlIGlucHV0XG4gICAgaWYgKHVuZGVmaW5lZCA9PT0gaW5Db21wIHx8IFV0aWxzLmlzRW1wdHlPYmplY3QoaW5Db21wKSkge1xuICAgICAgY29uc29sZS5lcnJvcihgQW5ndWxhclBDb25uZWN0OiBiYWQgY2FsbCB0byBjaGFuZ2VIYW5kbGVyOiBpbkNvbXA6ICR7SlNPTi5zdHJpbmdpZnkoaW5Db21wKX1gKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBwQ29ubmVjdCA9IGluQ29tcC5wQ29ubiQ7XG4gICAgaWYgKHVuZGVmaW5lZCA9PT0gcENvbm5lY3QpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoYEFuZ3VsYXJQQ29ubmVjdDogYmFkIGNhbGwgdG8gY2hhbmdlSGFuZGxlcjogaW5Db21wLnBDb25uJDogJHtwQ29ubmVjdH1gKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvLyBjbGVhciBvdXQgZXJyb3JzXG4gICAgdGhpcy5lclNlcnZpY2Uuc2VuZE1lc3NhZ2UoJ2Rpc21pc3MnLCAnJyk7XG5cbiAgICBwQ29ubmVjdC5nZXRBY3Rpb25zQXBpKCkuY2hhbmdlSGFuZGxlcihwQ29ubmVjdCwgZXZlbnQpO1xuICB9XG5cbiAgLyoqXG4gICAqIENhbiBiZSBjYWxsZWQgd2hlbiB0aGUgY29tcG9uZW50IGhhcyBlbmNvdW50ZXJlZCBhbiBldmVudCAoc3VjaCBhcyBibHVyKVxuICAgKiBAcGFyYW0gaW5Db21wIFRoZSBjb21wb25lbnQgY2FsbGluZyB0aGUgZXZlbnRcbiAgICogQHBhcmFtIGV2ZW50IFRoZSBldmVudFxuICAgKi9cbiAgZXZlbnRIYW5kbGVyKGluQ29tcCwgZXZlbnQpIHtcbiAgICBjb25zdCBiTG9nZ2luZyA9IGZhbHNlO1xuICAgIGlmIChiTG9nZ2luZykge1xuICAgICAgLy8gY29uc29sZS5sb2coYEFuZ3VsYXJQQ29ubmVjdC5ldmVudEhhbmRsZXJgKTtcbiAgICB9XG4gICAgLy8gY2hlY2sgZm9yIHJlYXNvbmFibGUgaW5wdXRcbiAgICBpZiAodW5kZWZpbmVkID09PSBpbkNvbXAgfHwgVXRpbHMuaXNFbXB0eU9iamVjdChpbkNvbXApKSB7XG4gICAgICBjb25zb2xlLmVycm9yKGBBbmd1bGFyUENvbm5lY3Q6IGJhZCBjYWxsIHRvIGV2ZW50SGFuZGxlcjogaW5Db21wOiAke0pTT04uc3RyaW5naWZ5KGluQ29tcCl9YCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgcENvbm5lY3QgPSBpbkNvbXAucENvbm4kO1xuICAgIGlmICh1bmRlZmluZWQgPT09IHBDb25uZWN0KSB7XG4gICAgICBjb25zb2xlLmVycm9yKGBBbmd1bGFyUENvbm5lY3Q6IGJhZCBjYWxsIHRvIGV2ZW50SGFuZGxlcjogaW5Db21wLnBDb25uJDogJHtwQ29ubmVjdH1gKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBwQ29ubmVjdC5nZXRBY3Rpb25zQXBpKCkuZXZlbnRIYW5kbGVyKHBDb25uZWN0LCBldmVudCk7XG4gIH1cblxuICAvKipcbiAgICogQHJldHVybnMgQSBoYW5kbGUgdG8gdGhlIGFwcGxpY2F0aW9uJ3Mgc3RvcmVcbiAgICovXG4gIGdldFN0b3JlKCkge1xuICAgIGlmICh0aGlzLnRoZVN0b3JlID09PSBudWxsKSB7XG4gICAgICB0aGlzLnRoZVN0b3JlID0gUENvcmUuZ2V0U3RvcmUoKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMudGhlU3RvcmU7XG4gIH1cblxuICAvKipcbiAgICogQHBhcmFtIGJMb2dNc2cgSWYgdHJ1ZSwgd2lsbCB3cml0ZSB0aGUgc3RyaW5naWZpZWQgc3RhdGUgdG8gdGhlIHN0b3JlIGZvciBkZWJ1Z2dpbmcvaW5zcGVjdGlvblxuICAgKiBAcGFyYW0gaW5Db21wIElmIHN1cHBsaWVkLCB0aGUgY29tcG9uZW50IHRoYXQgaXMgcmVxdWVzdGluZyB0aGUgc3RvcmUncyBzdGF0ZVxuICAgKiBAcmV0dXJucyBBIGhhbmRsZSB0byB0aGUgX19zdGF0ZV9fIG9mIGFwcGxpY2F0aW9uJ3Mgc3RvcmVcbiAgICovXG4gIGdldFN0YXRlKGJMb2dNc2c6IGJvb2xlYW4gPSBmYWxzZSwgaW5Db21wOiBhbnkgPSBudWxsKSB7XG4gICAgY29uc3QgdGhlU3RhdGU6IG9iamVjdCA9IHRoaXMuZ2V0U3RvcmUoKS5nZXRTdGF0ZSgpO1xuICAgIGlmIChiTG9nTXNnKSB7XG4gICAgICBjb25zdCB0aGVDb21wTmFtZTogc3RyaW5nID0gaW5Db21wID8gYCR7aW5Db21wLmNvbnN0cnVjdG9yLm5hbWV9OiBgIDogJyc7XG4gICAgICBjb25zb2xlLmxvZyhgJHt0aGVDb21wTmFtZX0gU3RvcmUgc3RhdGU6ICR7SlNPTi5zdHJpbmdpZnkodGhlU3RhdGUpfWApO1xuICAgIH1cbiAgICByZXR1cm4gdGhlU3RhdGU7XG4gIH1cblxuICAvLyBwcm9jZXNzQWN0aW9ucyAtIGNhcnJpZWQgb3ZlciBmcm9tIFBDb25uZWN0SE9DIGluaXRpYWxpemVcbiAgLyoqXG4gICAqICBwcm9jZXNzQWN0aW9ucyBleHBvc2VzIGFsbCBhY3Rpb25zIGluIHRoZSBtZXRhZGF0YS5cbiAgICogIEF0dGFjaGVzIGNvbW1vbiBoYW5kbGVyIChldmVudEhhbmRsZXIpIGZvciBhbGwgYWN0aW9ucy5cbiAgICovXG4gIHByaXZhdGUgcHJvY2Vzc0FjdGlvbnMoaW5Db21wKSB7XG4gICAgY29uc3QgcENvbm5lY3QgPSBpbkNvbXAucENvbm4kO1xuICAgIGlmICh1bmRlZmluZWQgPT09IHBDb25uZWN0KSB7XG4gICAgICBjb25zb2xlLmVycm9yKGBBbmd1bGFyUENvbm5lY3Q6IGJhZCBjYWxsIHRvIHByb2Nlc3NBY3Rpb25zOiBwQ29ubiQ6ICR7cENvbm5lY3R9IGZyb20gY29tcG9uZW50OiAke2luQ29tcC5jb25zdHJ1Y3Rvci5uYW1lfWApO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmIChpbkNvbXAucENvbm4kLmlzRWRpdGFibGUoKSkge1xuICAgICAgaW5Db21wLnBDb25uJC5zZXRBY3Rpb24oJ29uQ2hhbmdlJywgdGhpcy5jaGFuZ2VIYW5kbGVyLmJpbmQodGhpcykpO1xuICAgICAgaW5Db21wLnBDb25uJC5zZXRBY3Rpb24oJ29uQmx1cicsIHRoaXMuZXZlbnRIYW5kbGVyLmJpbmQodGhpcykpO1xuICAgIH1cbiAgfVxufVxuIl19
428
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhci1wY29ubmVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItc2RrLWNvbXBvbmVudHMvc3JjL2xpYi9fYnJpZGdlL2FuZ3VsYXItcGNvbm5lY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2hDLE9BQU8sT0FBTyxNQUFNLGlCQUFpQixDQUFDO0FBR3RDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7Ozs7QUFlMUMsTUFBTSxPQUFPLHNCQUFzQjtJQW1CakMsNENBQTRDO2FBQzdCLGFBQVEsR0FBRyxLQUFLLENBQUM7SUFFaEMsWUFDVSxTQUFpQyxFQUNqQyxTQUErQixFQUMvQixLQUFZO1FBRlosY0FBUyxHQUFULFNBQVMsQ0FBd0I7UUFDakMsY0FBUyxHQUFULFNBQVMsQ0FBc0I7UUFDL0IsVUFBSyxHQUFMLEtBQUssQ0FBTztRQXhCdEI7O1dBRUc7UUFDSyxhQUFRLEdBQVEsSUFBSSxDQUFDO1FBRTdCOztXQUVHO1FBQ0ssdUJBQWtCLEdBQUcsQ0FBQyxDQUFDO1FBRS9COzs7OztXQUtHO1FBQ0ssc0JBQWlCLEdBQWEsRUFBRSxDQUFDO1FBVXZDLHlEQUF5RDtRQUN6RCw0REFBNEQ7UUFDNUQsb0RBQW9EO1FBQ3BELGtEQUFrRDtRQUNsRCwrQ0FBK0M7UUFDL0MsS0FBSyxDQUFDLG1CQUFtQixDQUFDLHVCQUF1QixFQUFFLEtBQUssQ0FBQyxDQUFDO1FBRTFELDZEQUE2RDtRQUM3RCwrQkFBK0I7UUFDL0IsK0RBQStEO1FBQy9ELFdBQVc7UUFDWCxrRUFBa0U7UUFDbEUsSUFBSTtJQUNOLENBQUM7SUFFRDs7Ozs7OztPQU9HO0lBQ0ssa0JBQWtCO1FBQ3hCLElBQUksQ0FBQyxrQkFBa0IsSUFBSSxD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VUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgaW50ZXJ2YWwgfSBmcm9tICdyeGpzJztcbmltcG9ydCBpc0VxdWFsIGZyb20gJ2Zhc3QtZGVlcC1lcXVhbCc7XG5pbXBvcnQgeyBQcm9ncmVzc1NwaW5uZXJTZXJ2aWNlIH0gZnJvbSAnLi4vX21lc3NhZ2VzL3Byb2dyZXNzLXNwaW5uZXIuc2VydmljZSc7XG5pbXBvcnQgeyBFcnJvck1lc3NhZ2VzU2VydmljZSB9IGZyb20gJy4uL19tZXNzYWdlcy9lcnJvci1tZXNzYWdlcy5zZXJ2aWNlJztcbmltcG9ydCB7IFV0aWxzIH0gZnJvbSAnLi4vX2hlbHBlcnMvdXRpbHMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFuZ3VsYXJQQ29ubmVjdERhdGEge1xuICBjb21wSUQ/OiBzdHJpbmc7XG4gIHVuc3Vic2NyaWJlRm4/OiBGdW5jdGlvbjtcbiAgdmFsaWRhdGVNZXNzYWdlPzogc3RyaW5nO1xuICBhY3Rpb25zPzoge1xuICAgIG9uQ2hhbmdlOiBGdW5jdGlvbjtcbiAgICBvbkJsdXI6IEZ1bmN0aW9uO1xuICB9O1xufVxuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBBbmd1bGFyUENvbm5lY3RTZXJ2aWNlIHtcbiAgLyoqXG4gICAqIExvY2FsIHZhcmlhYmxlIGZvciBhY2Nlc3MgdG8gdGhlIHN0b3JlIG9uY2UgdGhlIHNlcnZpY2UgaXMgY29ubmVjdGVkIHRvIGl0LlxuICAgKi9cbiAgcHJpdmF0ZSB0aGVTdG9yZTogYW55ID0gbnVsbDtcblxuICAvKipcbiAgICogTG9jYWwgdmFyaWFibGUgdXNlZCB0byBjb21wdXRlIHRoZSBuZXh0IGNvbXBvbmVudElEXG4gICAqL1xuICBwcml2YXRlIGNvdW50ZXJDb21wb25lbnRJRCA9IDA7XG5cbiAgLyoqXG4gICAqIExvY2FsIGFycmF5IHVzZWQgdG8gc3RvcmUgdGhlIGFzc29jaWF0aW9uIG9mIGFuIGNvbXBvbmVudCB0byBpdHMgbW9zdCByZWNlbnQgXCJwcm9wc1wiXG4gICAqICB3aGVyZSBcInByb3BzXCIgaXMgdGhlIG9iamVjdCBjb250YWluaW5nIHRoZSBjb21wb25lbnQncyBnZXRDb25maWdQcm9wcyBhbG9uZyB3aXRoXG4gICAqIGFueXRoaW5nIGFkZGVkIGJ5IHBvcHVsYXRlQWRkaXRpb25hbFByb3BzLlxuICAgKiBFYWNoIGVudHJ5IGlzOiB7IF9fY29tcG9uZW50SURfXzogX3RoZSBjb21wb25lbnQncyBtb3N0IHJlY2VudCBwcm9wc18gfVxuICAgKi9cbiAgcHJpdmF0ZSBjb21wb25lbnRQcm9wc0FycjogT2JqZWN0W10gPSBbXTtcblxuICAvKiBVc2VkIHRvIHRvZ2dsZSBzb21lIGNsYXNzLXdpZGUgbG9nZ2luZyAqL1xuICBwcml2YXRlIHN0YXRpYyBiTG9nZ2luZyA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcHNTZXJ2aWNlOiBQcm9ncmVzc1NwaW5uZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgZXJTZXJ2aWNlOiBFcnJvck1lc3NhZ2VzU2VydmljZSxcbiAgICBwcml2YXRlIHV0aWxzOiBVdGlsc1xuICApIHtcbiAgICAvLyBFc3RhYmxpc2ggbmVjZXNzYXJ5IG92ZXJyaWRlIGZsYWdzIGZvciBvdXIgdXNlIG9mIENvcmVcbiAgICAvLyBjb25zdCBjb3JlT3ZlcnJpZGVzID0geyBcImR5bmFtaWNMb2FkQ29tcG9uZW50c1wiOiBmYWxzZSB9O1xuICAgIC8vIGxldCBjb3JlT3ZlcnJpZGVzID0gUENvcmUuZ2V0QmVoYXZpb3JPdmVycmlkZXMoKTtcbiAgICAvLyBjb3JlT3ZlcnJpZGVzW1wiZHluYW1pY0xvYWRDb21wb25lbnRzXCJdID0gZmFsc2U7XG4gICAgLy8gUENvcmUuc2V0QmVoYXZpb3JPdmVycmlkZXMoIGNvcmVPdmVycmlkZXMgKTtcbiAgICBQQ29yZS5zZXRCZWhhdmlvck92ZXJyaWRlKCdkeW5hbWljTG9hZENvbXBvbmVudHMnLCBmYWxzZSk7XG5cbiAgICAvLyBBbHdheXMgYmVzdCB0byB1c2UgZGVlcCBvYmplY3QgY29tcGFyZSB3aGVuIGl0J3MgYXZhaWxhYmxlXG4gICAgLy8gaWYgKGlzRXF1YWwgIT09IHVuZGVmaW5lZCkge1xuICAgIC8vIGNvbnNvbGUubG9nKGBBbmd1bGFyUENvbm5lY3QgaXMgdXNpbmcgZGVlcCBvYmplY3QgY29tcGFyZWApO1xuICAgIC8vIH0gZWxzZSB7XG4gICAgLy8gY29uc29sZS5sb2coYEFuZ3VsYXJQQ29ubmVjdCBpcyB1c2luZyBKU09OLnN0cmluZ2lmeSBjb21wYXJlYCk7XG4gICAgLy8gfVxuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgYSB1bmlxdWUgKGZvciB0aGlzIHNlc3Npb24pIENvbXBvbmVudElEIHRoYXQgc2hvdWxkXG4gICAqIGJlIHVzZWQgZm9yIHRoYXQgY29tcG9uZW50IHRvIHVwZGF0ZSBpdHMgbW9zdCByZWNlbnQgcHJvcHNcbiAgICogKHdoaWNoIGNhbiBhbHNvIGJlIGNvbXBhcmVkIGFnYWluc3QgaXRzIHByZXZpb3VzIHZhbHVlXG4gICAqIGJlZm9yZSB1cGRhdGluZykuIE5vdGUgdGhhdCB0aGlzIHJldHVybnMgYSBzdHJpbmcgc28gd2UgY2FuIHVzZVxuICAgKiBpdCBhcyBhIGtleSBpbiBhbiBhc3NvY2lhdGl2ZSBhcnJheVxuICAgKiBAcmV0dXJucyB0aGUgbmV4dCBjb21wb25lbnRJRFxuICAgKi9cbiAgcHJpdmF0ZSBnZXROZXh0Q29tcG9uZW50SWQoKTogc3RyaW5nIHtcbiAgICB0aGlzLmNvdW50ZXJDb21wb25lbnRJRCArPSAxO1xuICAgIC8vIE5vdGUgdGhhdCB3ZSB1c2UgdGhlIHN0cmluZyB2ZXJzaW9uIG9mIHRoZSBudW1iZXIgc28gd2UgaGF2ZSBhblxuICAgIC8vICBhc3NvY2lhdGl2ZSBhcnJheSB0aGF0IHdlIGNhbiBjbGVhbiB1cCBsYXRlciwgaWYgbmVlZGVkLlxuICAgIHJldHVybiB0aGlzLmNvdW50ZXJDb21wb25lbnRJRC50b1N0cmluZygpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBDYWxsaW5nIG9iamVjdCAoaW5Db21wKSBzdWJzY3JpYmVzIHRvIHN0b3JlIGNoYW5nZXMuXG4gICAqIEBwYXJhbSBpbkNvbXAgVGhlIGNvbXBvbmVudCB0aGF0J3Mgc3Vic2NyaWJpbmcgdG8gdGhlIHN0b3JlXG4gICAqIEBwYXJhbSBpbkNhbGxiYWNrIFRoZSBjb21wb25lbnQncyBjYWxsYmFjayBmdW5jdGlvbiAodHlwaWNhbGx5IGNhbGxlZCBvblN0YXRlQ2hhbmdlKSB0aGF0IHdpbGxcbiAgICogYmUgY2FsbGVkIHdoZW4gdGhlIHN0b3JlIGNoYW5nZXMuXG4gICAqIEByZXR1cm5zIFRoZSAqKnVuc3Vic2NyaWJlKiogZnVuY3Rpb24gdGhhdCBzaG91bGQgYmUgY2FsbGVkIHdoZW4gdGhlIGNvbXBvbmVudCBuZWVkc1xuICAgKiB0byB1bnN1YnNjcmliZSBmcm9tIHRoZSBzdG9yZS4gKFR5cGljYWxseSBkdXJpbmcgbmdPbkRlc3Ryb3kpXG4gICAqL1xuICBwcml2YXRlIHN1YnNjcmliZVRvU3RvcmUoaW5Db21wOiBhbnkgPSBudWxsLCBpbkNhbGxiYWNrOiBGdW5jdGlvbiB8IG51bGwgPSBudWxsKTogRnVuY3Rpb24ge1xuICAgIC8vIGNvbnN0IHRoZUNvbXBOYW1lOiBzdHJpbmcgPSBpbkNvbXAgPyBgJHtpbkNvbXAuY29uc3RydWN0b3IubmFtZX1gIDogJ25vIGNvbXBvbmVudCBwcm92aWRlZCc7XG4gICAgbGV0IGZuVW5zdWJzY3JpYmU7XG4gICAgLy8gY29uc29sZS5sb2coIGBCcmlkZ2Ugc3Vic2NyaWJpbmc6ICR7dGhlQ29tcE5hbWV9IGApO1xuICAgIGlmIChpbkNvbXApIHtcbiAgICAgIGZuVW5zdWJzY3JpYmUgPSB0aGlzLmdldFN0b3JlKCkuc3Vic2NyaWJlKGluQ2FsbGJhY2spO1xuICAgIH1cbiAgICByZXR1cm4gZm5VbnN1YnNjcmliZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBDb21wb25lbnQncyBwcm9wZXJ0aWVzIHRoYXQgYXJlIHVzZWQgKGEpIHRvIHBvcHVsYXRlIGNvbXBvbmVudFByb3BzQXJyXG4gIC8vICBhbmQgKGIpIHRvIGRldGVybWluZSB3aGV0aGVyIHRoZSBjb21wb25lbnQgc2hvdWxkIHVwZGF0ZSBpdHNlbGYgKHJlLXJlbmRlcilcbiAgICogQHBhcmFtIGluQ29tcCBUaGUgY29tcG9uZW50IHdob3NlIHByb3BlcnRpZXMgYXJlIGJlaW5nIG9idGFpbmVkXG4gICAqL1xuICBwcml2YXRlIGdldENvbXBvbmVudFByb3BzKGluQ29tcDogYW55ID0gbnVsbCk6IE9iamVjdCB7XG4gICAgbGV0IGNvbXBQcm9wczogYW55ID0ge307XG4gICAgbGV0IGFkZFByb3BzID0ge307XG5cbiAgICBpZiAoaW5Db21wID09PSBudWxsKSB7XG4gICAgICBjb25zb2xlLmVycm9yKGBBbmd1bGFyUENvbm5lY3Q6IGdldENvbXBvbmVudFByb3BzIGNhbGxlZCB3aXRoIGJhZCBjb21wb25lbnQ6ICR7aW5Db21wfWApO1xuICAgIH1cblxuICAgIC8vIGlmICgoaW5Db21wLmNvbnN0cnVjdG9yLm5hbWUgPT09IFwiRmxvd0NvbnRhaW5lckNvbXBvbmVudFwiKSB8fCAoaW5Db21wLmNvbnN0cnVjdG9yLm5hbWUgPT09IFwiVmlld0NvbnRhaW5lckNvbXBvbmVudFwiKVxuICAgIC8vICAgICB8fCAoaW5Db21wLmNvbnN0cnVjdG9yLm5hbWUgPT09IFwiVmlld0NvbXBvbmVudFwiKSB8fCAoaW5Db21wLmNvbnN0cnVjdG9yLm5hbWUgPT09IFwiRGVmZXJMb2FkQ29tcG9uZW50XCIpKSB7XG4gICAgLy8gICBjb25zb2xlLmxvZyhgLS0+IEFuZ3VsYXJQQ29ubmVjdCBnZXRDb21wb25lbnRQcm9wczogJHtpbkNvbXAuY29uc3RydWN0b3IubmFtZX1gKTtcbiAgICAvLyB9XG5cbiAgICBpZiAoaW5Db21wLmFkZGl0aW9uYWxQcm9wcyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBpZiAodHlwZW9mIGluQ29tcC5hZGRpdGlvbmFsUHJvcHMgPT09ICdvYmplY3QnKSB7XG4gICAgICAgIGFkZFByb3BzID0gaW5Db21wLnBDb25uJC5yZXNvbHZlQ29uZmlnUHJvcHMoaW5Db21wLmFkZGl0aW9uYWxQcm9wcyk7XG4gICAgICB9IGVsc2UgaWYgKHR5cGVvZiBpbkNvbXAuYWRkaXRpb25hbFByb3BzID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIGNvbnN0IHByb3BzVG9BZGQgPSBpbkNvbXAuYWRkaXRpb25hbFByb3BzKFBDb3JlLmdldFN0b3JlKCkuZ2V0U3RhdGUoKSwgaW5Db21wLnBDb25uJCk7XG4gICAgICAgIGFkZFByb3BzID0gaW5Db21wLnBDb25uJC5yZXNvbHZlQ29uZmlnUHJvcHMocHJvcHNUb0FkZCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29tcFByb3BzID0gaW5Db21wLnBDb25uJC5nZXRDb25maWdQcm9wcygpO1xuXG4gICAgLy8gY29uc3QgY29tcG9uZW50TmFtZSA9IGluQ29tcC5jb25zdHJ1Y3Rvci5uYW1lO1xuXG4gICAgLy8gVGhlIGZvbGxvd2luZyBjb21tZW50IGlzIGZyb20gdGhlIE5lYnVsYS9Db25zdGVsbGF0aW9uIHZlcnNpb24gb2YgdGhpcyBjb2RlLiBNZWFudCBhcyBhIHJlbWluZGVyIHRvIGNoZWNrIHRoaXMgb2NjYXNpb25hbGx5XG4gICAgLy8gcG9wdWxhdGUgYWRkaXRpb25hbCBwcm9wcyB3aGljaCBhcmUgY29tcG9uZW50IHNwZWNpZmljIGFuZCBub3QgcHJlc2VudCBpbiBjb25maWd1cmF0aW9uc1xuICAgIC8vIFRoaXMgYmxvY2sgY2FuIGJlIHJlbW92ZWQgb25jZSBhbGwgdGhlc2UgcHJvcHMgd2lsbCBiZSBhZGRlZCBhcyBwYXJ0IG9mIGNvbmZpZ3NcbiAgICBpbkNvbXAucENvbm4kLnBvcHVsYXRlQWRkaXRpb25hbFByb3BzKGNvbXBQcm9wcyk7XG5cbiAgICBjb21wUHJvcHMgPSBpbkNvbXAucENvbm4kLnJlc29sdmVDb25maWdQcm9wcyhjb21wUHJvcHMpO1xuXG4gICAgaWYgKGNvbXBQcm9wcyAmJiB1bmRlZmluZWQgIT09IGNvbXBQcm9wcy52YWxpZGF0ZW1lc3NhZ2UgJiYgY29tcFByb3BzLnZhbGlkYXRlbWVzc2FnZSAhPSAnJykge1xuICAgICAgLy8gY29uc29sZS5sb2coIGAgICB2YWxpZGF0ZW1lc3NhZ2UgZm9yICR7aW5Db21wLmNvbnN0cnVjdG9yLm5hbWV9ICR7aW5Db21wLmFuZ3VsYXJQQ29ubmVjdERhdGEuY29tcElEfTogJHtjb21wUHJvcHMudmFsaWRhdGVtZXNzYWdlfWApO1xuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICAuLi5jb21wUHJvcHMsXG4gICAgICAuLi5hZGRQcm9wc1xuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgdW5pcXVlIGlkIGZvciBnaXZlbiBjb21wb25lbnQgY3JlYXRlZCB3aGVuIHJlZ2lzdGVyaW5nXG4gICAqIE90aGVyd2lzZSwgcmV0dXJuIHVuZGVmaW5lZC5cbiAgICogQHBhcmFtIGluQ29tcCBUaGUgY29tcG9uZW50IHdob3NlIHByb3BlcnR5IGlzIGJlaW5nIHJlcXVlc3RlZC5cbiAgICovXG4gIHB1YmxpYyBnZXRDb21wb25lbnRJRChpbkNvbXApOiBzdHJpbmcge1xuICAgIHJldHVybiBpbkNvbXAuYnJpZGdlQ29tcG9uZW50SUQgfHwgaW5Db21wLmFuZ3VsYXJQQ29ubmVjdERhdGEuY29tcElEO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHJlcXVlc3RlZCBwcm9wZXJ0eSBmb3IgdGhlIGNvbXBvbmVudCBpZiBpdCBleGlzdHMuXG4gICAqIE90aGVyd2lzZSwgcmV0dXJuIHVuZGVmaW5lZC5cbiAgICogQHBhcmFtIGluQ29tcCBUaGUgY29tcG9uZW50IHdob3NlIHByb3BlcnR5IGlzIGJlaW5nIHJlcXVlc3RlZC5cbiAgICogQHBhcmFtIGluUHJvcCBUaGUgcHJvcGVydHkgYmVpbmcgcmVxdWVzdGVkLlxuICAgKi9cbiAgcHVibGljIGdldENvbXBvbmVudFByb3AoaW5Db21wOiBhbnkgPSBudWxsLCBpblByb3AgPSAnJykge1xuICAgIGlmIChpbkNvbXAgPT09IG51bGwpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoYEFuZ3VsYXJQQ29ubmVjdDogZ2V0Q29tcG9uZW50UHJvcCBjYWxsZWQgd2l0aCBiYWQgY29tcG9uZW50OiAke2luQ29tcH1gKTtcbiAgICB9XG5cbiAgICBjb25zdCBjb21wSUQgPSBpbkNvbXAuYW5ndWxhclBDb25uZWN0RGF0YS5jb21wSUQ7XG5cbiAgICAvLyBMb29rIHVwIHByb3BlcnR5IGluIHRoZSBjb21wb25lbnQncyBlbnRyeSBpbiBjb21wb25lbnRQcm9wQXJyYXkgKHdoaWNoIHNob3VsZCBoYXZlIHRoZSBtb3N0IHJlY2VudCB2YWx1ZSlcbiAgICByZXR1cm4gdGhpcy5jb21wb25lbnRQcm9wc0Fycltjb21wSURdW2luUHJvcF07XG4gIH1cblxuICAvKipcbiAgICpcbiAgICogQHJldHVybnMgVGhlIGN1cnJlbnQgY29tcGxldGUgc2V0IG9mIHJlc29sdmVkIHByb3BlcnRpZXMgdGhhdCBhcmUgYXNzb2NpYXRlZCB3aXRoXG4gICAqIHRoaXMgY29tcG9uZW50LlxuICAgKiBUaGlzIGlzIHRoZSBmdWxsIHNldCBvZiBwcm9wZXJ0aWVzIHRoYXQgYXJlIHRyYWNrZWQgaW4gUmVkdXggZm9yIHRoaXMgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIGdldEN1cnJlbnRDb21wbGV0ZVByb3BzKGluQ29tcDogYW55ID0gbnVsbCkge1xuICAgIGlmIChpbkNvbXAgPT09IG51bGwpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoYEFuZ3VsYXJQQ29ubmVjdDogZ2V0Q3VycmVudENvbXBsZXRlUHJvcHMgY2FsbGVkIHdpdGggYmFkIGNvbXBvbmVudDogJHtpbkNvbXB9YCk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmNvbXBvbmVudFByb3BzQXJyW2luQ29tcC5hbmd1bGFyUENvbm5lY3REYXRhLmNvbXBJRF07XG4gIH1cblxuICAvKipcbiAgICogUmVnaXN0ZXJzIHRoZSBjb21wb25lbnQgYW5kIGl0cyBjYWxsYmFjayBmdW5jdGlvbi4gV2hlbiBhIGNvbXBvbmVudCBjYWxscyB0aGlzIG1ldGhvZFxuICAgKiAodHlwaWNhbGx5IGZyb20gaXRzIG5nT25Jbml0KSwgdGhlIGNvbXBvbmVudCBpcyBnaXZlbiBhIHVuaXF1ZSBjb21wb25lbnRJRCAoZm9yIHRoaXMgc2Vzc2lvbilcbiAgICogYW5kIHN1YnNjcmliZXMgdGhlIGNvbXBvbmVudCB0byB0aGUgc3RvcmUuIEFzIGEgc2lkZSBlZmZlY3QsIGl0IGFsc28gYXNzaWducyB0aGUgY29tcG9uZW50J3NcbiAgICogYWN0aW9ucyAoZnJvbSBpdHMgbWV0YWRhdGEpIHRvIHRoZSBjb21wb25lbnQncyBfX19hY3Rpb25zX19fIGFuZCBiaW5kcyB0aGUgY29tcG9uZW50J3MgY2FsbGJhY2tcbiAgICogKHBhc3NlZCBpbiBhcyBfX19pbkNhbGxiYWNrX19fKSB0byB0aGUgY29tcG9uZW50LiBJZiBhIHByb2JsZW0gaXMgZW5jb3VudGVyZWQsIGFuIGVtcHR5IG9iamVjdCxcbiAgICoge30sIGlzIHJldHVybmVkLlxuICAgKiBAcGFyYW0gaW5Db21wIFRoZSBjb21wb25lbnQgYmVpbmcgcmVnaXN0ZXJlZCBhbmQgc3Vic2NyaWJlZFxuICAgKiBAcGFyYW0gaW5DYWxsYmFjayBUaGUgY29tcG9uZW50J3MgY2FsbGJhY2sgZnVuY3Rpb24gKHR5cGljYWxseSBjYWxsZWQgb25TdGF0ZUNoYW5nZSkgdGhhdFxuICAgKiB3aWxsIGJlIGNhbGxlZCB3aGVuZXZlciB0aGUgc3RhdGUgY2hhbmdlcy5cbiAgICogQHJldHVybnMgQSBKU09OIG9iamVjdCB3aXRoIHRoZSBmb2xsb3dpbmcga2V5czpcbiAgICogY29tcElEOiB0aGUgdW5pcXVlIElEIGFzc29jaWF0ZWQgd2l0aCB0aGlzIGNvbXBvbmVudCxcbiAgICogdW5zdWJzY3JpYmVGbjogdGhlIGZ1bmN0aW9uIHRvIGJlIGNhbGxlZCB3aGVuIHRoZSBjb21wb25lbnQgbmVlZHMgdG8gdW5zdWJzY3JpYmUgZnJvbSB0aGUgc3RvcmUsXG4gICAqIHZhbGlkYXRlTWVzc2FnZTogYW55IHZhbGlkYXRpb24vZXJyb3IgbWVzc2FnZSB0aGF0IGdldHMgZ2VuZXJhdGVkIGZvciB0aGlzIG9iamVjdCxcbiAgICogYWN0aW9uczogYW55IGFjdGlvbnMgdGhhdCBhcmUgZGVmaW5lZCBmb3IgdGhpcyBvYmplY3RcbiAgICovXG4gIHJlZ2lzdGVyQW5kU3Vic2NyaWJlQ29tcG9uZW50KGluQ29tcCwgaW5DYWxsYmFjazogRnVuY3Rpb24gfCBudWxsID0gbnVsbCk6IEFuZ3VsYXJQQ29ubmVjdERhdGEge1xuICAgIC8vIENyZWF0ZSBhbiBpbml0aWFsIG9iamVjdCB0byBiZSByZXR1cm5lZC5cbiAgICBjb25zdCByZXR1cm5PYmplY3Q6IEFuZ3VsYXJQQ29ubmVjdERhdGEgPSB7XG4gICAgICBjb21wSUQ6ICcnLFxuICAgICAgdW5zdWJzY3JpYmVGbjogdW5kZWZpbmVkLFxuICAgICAgdmFsaWRhdGVNZXNzYWdlOiAnJyxcbiAgICAgIGFjdGlvbnM6IHVuZGVmaW5lZFxuICAgIH07XG5cbiAgICBpZiAoaW5Db21wID09PSBudWxsIHx8IGluQ2FsbGJhY2sgPT09IG51bGwpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoYEFuZ3VsYXJQQ29ubmVjdDogYmFkIGNhbGwgdG8gcmVnaXN0ZXJBbmRTdWJzY3JpYmU6IGluQ29tcDogJHtpbkNvbXB9IGluQ2FsbGJhY2s6ICR7aW5DYWxsYmFja31gKTtcbiAgICAgIHJldHVybiByZXR1cm5PYmplY3Q7XG4gICAgfVxuXG4gICAgY29uc3QgY29tcFR5cGUgPSBpbkNvbXAuY29uc3RydWN0b3IubmFtZTtcblxuICAgIGlmIChBbmd1bGFyUENvbm5lY3RTZXJ2aWNlLmJMb2dnaW5nKSB7XG4gICAgICBjb25zb2xlLmxvZyhgcmVnaXN0ZXJBbmRTdWJzY3JpYmVDb21wb25lbnQ6ICR7Y29tcFR5cGV9YCk7XG4gICAgfVxuXG4gICAgaWYgKHVuZGVmaW5lZCAhPT0gaW5Db21wLmJyaWRnZUNvbXBvbmVudElEKSB7XG4gICAgICBjb25zb2xlLmVycm9yKGBPTEQgU0NIT09MOiAke2NvbXBUeXBlfWApO1xuICAgIH1cblxuICAgIGlmICh1bmRlZmluZWQgPT09IGluQ29tcC5hY3Rpb25zICYmIHVuZGVmaW5lZCA9PT0gaW5Db21wLmFuZ3VsYXJQQ29ubmVjdERhdGEpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoYEFuZ3VsYXJQQ29ubmVjdDogYmFkIGNhbGwgdG8gcmVnaXN0ZXJBbmRTdWJzY3JpYmUgZnJvbSAke2NvbXBUeXBlfTogYWN0aW9ucyBub3QgZGVmaW5lZCBhcyBhIGNsYXNzIHZhcmlhYmxlIGZvciBpbkNvbXBgKTtcbiAgICAgIHJldHVybiByZXR1cm5PYmplY3Q7XG4gICAgfVxuICAgIGlmICh1bmRlZmluZWQgPT09IGluQ29tcC5icmlkZ2VDb21wb25lbnRJRCAmJiB1bmRlZmluZWQgPT09IGluQ29tcC5hbmd1bGFyUENvbm5lY3REYXRhKSB7XG4gICAgICBjb25zb2xlLmVycm9yKFxuICAgICAgICBgQW5ndWxhclBDb25uZWN0OiBiYWQgY2FsbCB0byByZWdpc3RlckFuZFN1YnNjcmliZSBmcm9tICR7Y29tcFR5cGV9OiBicmlkZ2VDb21wb25lbnRJRCBub3QgZGVmaW5lZCBhcyBhIGNsYXNzIHZhcmlhYmxlIGZvciBpbkNvbXBgXG4gICAgICApO1xuICAgICAgcmV0dXJuIHJldHVybk9iamVjdDtcbiAgICB9XG4gICAgaWYgKHVuZGVmaW5lZCA9PT0gaW5Db21wLnVuc3Vic2NyaWJlU3RvcmUgJiYgdW5kZWZpbmVkID09PSBpbkNvbXAuYW5ndWxhclBDb25uZWN0RGF0YSkge1xuICAgICAgY29uc29sZS5lcnJvcihcbiAgICAgICAgYEFuZ3VsYXJQQ29ubmVjdDogYmFkIGNhbGwgdG8gcmVnaXN0ZXJBbmRTdWJzY3JpYmUgZnJvbSAke2NvbXBUeXBlfTogdW5zdWJzY3JpYmVTdG9yZSBub3QgZGVmaW5lZCBhcyBhIGNsYXNzIHZhcmlhYmxlIGZvciBpbkNvbXBgXG4gICAgICApO1xuICAgICAgcmV0dXJuIHJldHVybk9iamVjdDtcbiAgICB9XG4gICAgaWYgKHVuZGVmaW5lZCA9PT0gaW5Db21wLnZhbGlkYXRlTWVzc2FnZSAmJiB1bmRlZmluZWQgPT09IGluQ29tcC5hbmd1bGFyUENvbm5lY3REYXRhKSB7XG4gICAgICBjb25zb2xlLmVycm9yKGBBbmd1bGFyUENvbm5lY3Q6IGJhZCBjYWxsIHRvIHJlZ2lzdGVyQW5kU3Vic2NyaWJlIGZyb20gJHtjb21wVHlwZX06IHZhbGlkYXRlTWVzc2FnZSBub3QgZGVmaW5lZCBhcyBhIGNsYXNzIHZhcmlhYmxlIGZvciBpbkNvbXBgKTtcbiAgICAgIHJldHVybiByZXR1cm5PYmplY3Q7XG4gICAgfVxuXG4gICAgLy8gY2FsbCBwcm9jZXNzQWN0aW9ucyB0byBwb3B1bGF0ZSBtZXRhZGF0YSB3aXRoIGFjdGlvbnMgYXMgaW4gUENvbm5lY3RIT1IgaW5pdGlhbGl6ZVxuICAgIHRoaXMucHJvY2Vzc0FjdGlvbnMoaW5Db21wKTtcbiAgICBpZiAodW5kZWZpbmVkID09PSBpbkNvbXAuYWN0aW9ucykge1xuICAgICAgcmV0dXJuT2JqZWN0LmFjdGlvbnMgPSBpbkNvbXAucENvbm4kLmdldEFjdGlvbnMoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgaW5Db21wLmFjdGlvbnMgPSBpbkNvbXAucENvbm4kLmdldEFjdGlvbnMoKTtcbiAgICB9XG5cbiAgICAvLyBiaW5kIHRoZSBwcm92aWRlZCBjYWxsYmFjayB0byB0aGUgY29tcG9uZW50IGl0J3MgYXNzb2NpYXRlZCB3aXRoXG4gICAgaW5DYWxsYmFjayA9IGluQ2FsbGJhY2suYmluZChpbkNvbXApO1xuXG4gICAgLy8gTm93IHByb2NlZWQgdG8gcmVnaXN0ZXIgYW5kIHN1YnNjcmliZS4uLlxuICAgIGNvbnN0IHRoZUNvbXBJRDogc3RyaW5nID0gdGhpcy5nZXROZXh0Q29tcG9uZW50SWQoKTtcbiAgICBjb25zdCB0aGVVbnN1YjogRnVuY3Rpb24gfCBudWxsID0gdGhpcy5zdWJzY3JpYmVUb1N0b3JlKGluQ29tcCwgaW5DYWxsYmFjayk7XG5cbiAgICBpZiAodW5kZWZpbmVkID09PSBpbkNvbXAuYW5ndWxhclBDb25uZWN0RGF0YSkge1xuICAgICAgaW5Db21wLmJyaWRnZUNvbXBvbmVudElEID0gdGhlQ29tcElEO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm5PYmplY3QuY29tcElEID0gdGhlQ29tcElEO1xuICAgICAgcmV0dXJuT2JqZWN0LnVuc3Vic2NyaWJlRm4gPSAoKSA9PiB7XG4gICAgICAgIHRoaXMucmVtb3ZlRm9ybUZpZWxkKGluQ29tcCk7XG4gICAgICAgIHRoZVVuc3ViKCk7XG4gICAgICB9O1xuICAgIH1cblxuICAgIC8vIGluaXRpYWxpemUgdGhpcyBjb21wb25lbnRzIGVudHJ5IGluIHRoZSBjb21wb25lbnRQcm9wc0FyclxuICAgIHRoaXMuY29tcG9uZW50UHJvcHNBcnJbdGhlQ29tcElEXSA9IHt9O1xuXG4gICAgdGhpcy5hZGRGb3JtRmllbGQoaW5Db21wKTtcblxuICAgIC8vIHJldHVybiBvYmplY3Qgd2l0aCBjb21wSUQgYW5kIHVuc3Vic2NyaWJlLi4uXG4gICAgcmV0dXJuIHJldHVybk9iamVjdDtcbiAgfVxuXG4gIGFkZEZvcm1GaWVsZChpbkNvbXApIHtcbiAgICBpbkNvbXAucENvbm4kPy5hZGRGb3JtRmllbGQoKTtcbiAgfVxuXG4gIHJlbW92ZUZvcm1GaWVsZChpbkNvbXApIHtcbiAgICBpZiAoaW5Db21wLnBDb25uJD8ucmVtb3ZlRm9ybUZpZWxkKSB7XG4gICAgICBpbkNvbXAucENvbm4kPy5yZW1vdmVGb3JtRmllbGQoKTtcbiAgICB9XG4gIH1cblxuICAvLyBSZXR1cm5zIHRydWUgaWYgdGhlIGNvbXBvbmVudCdzIGVudHJ5IGluIF9fX2NvbXBvbmVudFByb3BzQXJyX19fIGlzXG4gIC8vICB0aGUgc2FtZSBhcyB0aGUgaW5Db21wUHJvcHMgcGFzc2VkIGluLlxuICAvLyAgQXMgYSBzaWRlIGVmZmVjdCwgdXBkYXRlIHRoZSBjb21wb25lbnQncyBlbnRyeSBpbiBjb21wb25lbnRQcm9wc0FyclxuICAvLyAgTk9URTogSXQgaXMgYXNzdW1lZCB0aGF0IHRoZSBpbmNvbWluZyBjb21wb25lbnQgaGFzIHRoZSBmb2xsb3dpbmc6XG4gIC8vICAqIGEgYnJpZGdlQ29tcG9uZW50SUQgPHN0cmluZz4gcHJvcGVydHkgLSB1c2VkIGFzIGxvb2t1cCBrZXkgaW4gY29tcG9uZW50UHJvcHNBcnJcbiAgLy8gICogYSBwQ29ubiQgPD8+IHByb3BlcnR5IC0gdXNlZCB0byBhY2Nlc3MgZnVuY3Rpb25zIGFjY2Vzc2VkIGluIGdldENvbXBvbmVudFByb3BzXG4gIC8vIFJldHVybiB0cnVlOiBtZWFucyB0aGUgY29tcG9uZW50IHByb3BzIGFyZSBkaWZmZXJlbnQgYW5kIHRoZSBjb21wb25lbnQgc2hvdWxkIHVwZGF0ZSBpdHNlbGYgKHJlLXJlbmRlcilcbiAgLy8gUmV0dXJuIGZhbHNlOiBtZWFucyB0aGUgY29tcG9uZW50IHByb3BzIGFyZSB0aGUgc2FtZSBhbmQgdGhlIGNvbXBvbmVudCBkb2Vzbid0IG5lZWQgdG8gdXBkYXRlIChyZS1yZW5kZXIpXG4gIC8vICBPbiBiYWQgaW5wdXQsIHJldHVybiBmYWxzZTtcbiAgLyoqXG4gICAqIFJldHVybnMgKip0cnVlKiogaWYgdGhlIGNvbXBvbmVudCdzIGVudHJ5IGluIF9fX2NvbXBvbmVudFByb3BzQXJyX19fIGlzXG4gICAqIHRoZSBzYW1lIGFzIHRoZSBwcm9wZXJ0aWVzIHRoYXQgYXJlIGN1cnJlbnQgYXNzb2NpYXRlZCB3aXRoIHRoZSBjb21wb25lbnQgKF9fX2luQ29tcF9fXykgcGFzc2VkIGluLlxuICAgKiBBcyBhIHNpZGUgZWZmZWN0LCB0aGUgY29tcG9uZW50J3MgZW50cnkgaW4gX19fY29tcG9uZW50UHJvcHNBcnJfX18gaXMgdXBkYXRlZC5cbiAgICogKipOb3RlKio6IEl0IGlzIGFzc3VtZWQgdGhhdCB0aGUgaW5jb21pbmcgY29tcG9uZW50IGhhcyB0aGUgZm9sbG93aW5nOlxuICAgKiAoYSkgYSBicmlkZ2VDb21wb25lbnRJRCBfc3RyaW5nXyBwcm9wZXJ0eSB1c2VkIGFzIGxvb2t1cCBrZXkgaW4gX19fY29tcG9uZW50UHJvcHNBcnJfX19cbiAgICogYW5kIChiKSBhIF9fX3BDb25uJF9fXyBwcm9wZXJ0eSB1c2VkIHRvIGFjY2VzcyBmdW5jdGlvbnMgY2FsbGVkIGluIF9fX2dldENvbXBvbmVudFByb3BzX19fXG4gICAqXG4gICAqIEBwYXJhbSBpbkNvbXAgVGhlIGNvbXBvbmVudCBhc2tpbmcgaWYgaXQgc2hvdWxkIHVwZGF0ZSBpdHNlbGZcbiAgICogQHJldHVybnMgUmV0dXJuICoqdHJ1ZSoqOiBtZWFucyB0aGUgY29tcG9uZW50IHByb3BzIGFyZSBkaWZmZXJlbnQgYW5kIHRoZSBjb21wb25lbnQgc2hvdWxkIHVwZGF0ZSBpdHNlbGYgKHJlLXJlbmRlcikuXG4gICAqIFJldHVybiAqKmZhbHNlKio6IG1lYW5zIHRoZSBjb21wb25lbnQgcHJvcHMgYXJlIHRoZSBzYW1lIGFuZCB0aGUgY29tcG9uZW50IGRvZXNuJ3QgbmVlZCB0byB1cGRhdGUgKHJlLXJlbmRlcikuXG4gICAqIElmIHRoZSAqKippbkNvbXAqKiogaW5wdXQgaXMgYmFkLCBmYWxzZSBpcyBhbHNvIHJldHVybmVkLlxuICAgKi9cbiAgc2hvdWxkQ29tcG9uZW50VXBkYXRlKGluQ29tcCk6IGJvb2xlYW4ge1xuICAgIC8vIGNvbnN0IGJTaG93TG9nZ2luZyA9IGZhbHNlO1xuICAgIGxldCBiUmV0ID0gZmFsc2U7XG4gICAgLy8gY2hlY2sgZm9yIHJlYXNvbmFibGUgaW5wdXRcbiAgICBpZiAoVXRpbHMuaXNFbXB0eU9iamVjdChpbkNvbXApKSB7XG4gICAgICBjb25zb2xlLmVycm9yKGBBbmd1bGFyUENvbm5lY3Q6IGJhZCBjYWxsIHRvIHNob3VsZENvbXBvbmVudFVwZGF0ZTogaW5Db21wOiAke0pTT04uc3RyaW5naWZ5KGluQ29tcCl9YCk7XG4gICAgICByZXR1cm4gYlJldDtcbiAgICB9XG4gICAgaWYgKHVuZGVmaW5lZCA9PT0gaW5Db21wLnZhbGlkYXRlTWVzc2FnZSAmJiB1bmRlZmluZWQgPT09IGluQ29tcC5hbmd1bGFyUENvbm5lY3REYXRhKSB7XG4gICAgICBjb25zb2xlLmVycm9yKGBBbmd1bGFyUENvbm5lY3Q6IGJhZCBjYWxsIHRvIHNob3VsZENvbXBvbmVudFVwZGF0ZTogJHtpbkNvbXAuY29uc3RydWN0b3IubmFtZX0gZG9lcyBub3QgaGF2ZSBhIHZhbGlkYXRlTWVzc2FnZSBwcm9wZXJ0eS5gKTtcbiAgICB9XG5cbiAgICBjb25zdCBjb21wSUQgPSB0aGlzLmdldENvbXBvbmVudElEKGluQ29tcCk7XG5cbiAgICBjb25zdCBjdXJyZW50UHJvcHM6IGFueSA9IHRoaXMuY29tcG9uZW50UHJvcHNBcnJbY29tcElEXTtcbiAgICBjb25zdCBjdXJyZW50UHJvcHNBc1N0cjogc3RyaW5nID0gSlNPTi5zdHJpbmdpZnkoY3VycmVudFByb3BzKTtcblxuICAgIGNvbnN0IGluY29taW5nUHJvcHM6IGFueSA9IHRoaXMuZ2V0Q29tcG9uZW50UHJvcHMoaW5Db21wKTtcblxuICAgIC8vIGlmIGhhdmUgcGFnZU1lc3NhZ2VzLCBhbmQgaXQgaXMgYmxhbmssIHJlbW92ZSBpdC4gIFRoaXMgY2F1c2VzIGlzc3VlcyBvZiBtYWtpbmcgaXQgYXBwZWFyXG4gICAgLy8gdGhhdCBhIHdpbGwgY2F1c2UgYW4gdXBkYXRlLCB3aGVuIHRoZXJlIGlzIG5vIGNoYW5nZVxuICAgIGlmICh0aGlzLmlzUGFnZU1lc3NhZ2VzRW1wdHkoaW5jb21pbmdQcm9wcykpIHtcbiAgICAgIGluQ29tcC5hbmd1bGFyUENvbm5lY3REYXRhLnBhZ2VNZXNzYWdlcyA9IGluY29taW5nUHJvcHMucGFnZU1lc3NhZ2VzO1xuICAgICAgZGVsZXRlIGluY29taW5nUHJvcHMucGFnZU1lc3NhZ2VzO1xuICAgIH1cblxuICAgIGlmIChpbmNvbWluZ1Byb3BzLmh0dHBNZXNzYWdlcykge1xuICAgICAgaW5Db21wLmFuZ3VsYXJQQ29ubmVjdERhdGEuaHR0cE1lc3NhZ2VzID0gaW5jb21pbmdQcm9wcy5odHRwTWVzc2FnZXM7XG4gICAgICBpbmNvbWluZ1Byb3BzLmh0dHBNZXNzYWdlcyA9IHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICBjb25zdCBpbmNvbWluZ1Byb3BzQXNTdHI6IHN0cmluZyA9IEpTT04uc3RyaW5naWZ5KGluY29taW5nUHJvcHMpO1xuXG4gICAgYlJldCA9IGlzRXF1YWwgPyAhaXNFcXVhbChjdXJyZW50UHJvcHMsIGluY29taW5nUHJvcHMpIDogY3VycmVudFByb3BzQXNTdHIgIT0gaW5jb21pbmdQcm9wc0FzU3RyO1xuXG4gICAgLy8gQmVsb3cgcGllY2Ugb2YgY29kZSBpcyBuZWVkZWQgdG8gcmUtcmVuZGVyIHRoZSBjb21wb25lbnQgc2luY2Ugd2Ugd2FubmEgZXZhbHVhdGUgdGhlIFZpc2liaWxpdHkgZXhwcmVzc2lvbiB3aXRoaW4gVmlldyBjb21wb25lbnQgaW4gc3VjaCBjYXNlc1xuICAgIGlmIChpbkNvbXAucENvbm4kLm1ldGEuY29uZmlnLmNvbnRleHQ/Lmxlbmd0aCA+IDAgJiYgaW5Db21wLnBDb25uJC5nZXRQYWdlUmVmZXJlbmNlKCkubGVuZ3RoID4gJ2Nhc2VJbmZvLmNvbnRlbnQnLmxlbmd0aCkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgLy8gTm93IHVwZGF0ZSB0aGUgZW50cnkgaW4gY29tcG9uZW50UHJvcHNBcnIgd2l0aCB0aGUgaW5jb21pbmcgdmFsdWUgc29cbiAgICAvLyAgd2UgY2FuIGNvbXBhcmUgYWdhaW5zdCB0aGF0IG5leHQgdGltZS4uLlxuICAgIHRoaXMuY29tcG9uZW50UHJvcHNBcnJbY29tcElEXSA9IGluY29taW5nUHJvcHM7XG4gICAgY29uc3QgdmFsaWRhdGVtZXNzYWdlID0gaW5jb21pbmdQcm9wcy52YWxpZGF0ZW1lc3NhZ2UgPT09IHVuZGVmaW5lZCA/ICcnIDogdGhpcy51dGlscy5odG1sRGVjb2RlKGluY29taW5nUHJvcHMudmFsaWRhdGVtZXNzYWdlKTtcbiAgICAvLyBhbmQgdXBkYXRlIHRoZSBjb21wb25lbnQncyB2YWxpZGF0aW9uIG1lc3NhZ2UgKGlmIHVuZGVmaW5lZCwgaXQgc2hvdWxkIGJlIHNldCB0byBcIlwiKVxuICAgIGlmICh1bmRlZmluZWQgIT09IGluQ29tcC5hbmd1bGFyUENvbm5lY3REYXRhKSB7XG4gICAgICBpbkNvbXAuYW5ndWxhclBDb25uZWN0RGF0YS52YWxpZGF0ZU1lc3NhZ2UgPSB2YWxpZGF0ZW1lc3NhZ2U7XG5cbiAgICAgIGlmIChpbkNvbXAuYW5ndWxhclBDb25uZWN0RGF0YS52YWxpZGF0ZU1lc3NhZ2UgIT0gJycpIHtcbiAgICAgICAgLy8gaWYgaGF2ZSBhIHZhbGlkYXRlIG1lc3NhZ2UsIHR1cm4gb2ZmIHNwaW5uZXJcbiAgICAgICAgY29uc3QgdGltZXIgPSBpbnRlcnZhbCgxMDApLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgdGhpcy5wc1NlcnZpY2Uuc2VuZE1lc3NhZ2UoZmFsc2UpO1xuXG4gICAgICAgICAgdGltZXIudW5zdWJzY3JpYmUoKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgbGV0IHNFcnJvck1lc3NhZ2UgPSBjdXJyZW50UHJvcHMgJiYgY3VycmVudFByb3BzLmxhYmVsID8gY3VycmVudFByb3BzLmxhYmVsLmNvbmNhdCgnIC0gJykgOiAnJztcbiAgICAgICAgc0Vycm9yTWVzc2FnZSA9IHNFcnJvck1lc3NhZ2UuY29uY2F0KGluQ29tcC5hbmd1bGFyUENvbm5lY3REYXRhLnZhbGlkYXRlTWVzc2FnZSk7XG4gICAgICAgIHRoaXMuZXJTZXJ2aWNlLnNlbmRNZXNzYWdlKCd1cGRhdGUnLCBzRXJyb3JNZXNzYWdlKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgaW5Db21wLnZhbGlkYXRlTWVzc2FnZSA9IHZhbGlkYXRlbWVzc2FnZTtcbiAgICB9XG5cbiAgICBpZiAoYlJldCAmJiBjb21wSUQgPT09IHVuZGVmaW5lZCkge1xuICAgICAgYlJldCA9IGZhbHNlO1xuICAgIH1cblxuICAgIC8vIGNvbnNvbGUubG9nKCBgQW5ndWxhclBDb25uZWN0IGNvbXBvbmVudCAke2NvbXBJRH0gLSAke2luQ29tcC5jb25zdHJ1Y3Rvci5uYW1lfSAtIHNob3VsZENvbXBvbmVudFVwZGF0ZTogJHtiUmV0fWApO1xuICAgIC8vIGNvbnNvbGUubG9nKFwiY3VycmVudCBwcm9wczogXCIgKyBjdXJyZW50UHJvcHNBc1N0cik7XG5cbiAgICBpZiAoYlJldCkge1xuICAgICAgLy8gY29uc29sZS5sb2coYCoqKiogY2hhbmdlIGZvcjogJHtpbkNvbXAuY29uc3RydWN0b3IubmFtZX1gKTtcbiAgICAgIC8vIGNvbnNvbGUubG9nKFwiY3VycmVudCBwcm9wczogXCIgKyBjdXJyZW50UHJvcHNBc1N0cik7XG4gICAgICAvLyBjb25zb2xlLmxvZyhcImluY29taW5nIHByb3BzOiBcIiArIGluY29taW5nUHJvcHNBc1N0cik7XG4gICAgICAvLyBjb25zb2xlLmxvZyhgICAgICR7aW5Db21wLmNvbnN0cnVjdG9yLm5hbWV9OiBzaG91bGRDb21wb25lbnRVcGRhdGUgcmV0dXJuaW5nOiAke2JSZXR9LCBjb21wSWQ6ICR7Y29tcElEfWAgKTtcbiAgICAgIC8vIGNvbnNvbGUubG9nKCBgICAgIFVwZGF0aW5nIHdpdGggY29tcG9uZW50UHJvcHMgZm9yICR7aW5Db21wLmNvbnN0cnVjdG9yLm5hbWV9OiAke0pTT04uc3RyaW5naWZ5KHRoaXMuY29tcG9uZW50UHJvcHNBcnJbY29tcElEXSl9YCk7XG4gICAgICAvLyBjb25zb2xlLmxvZyggYCAgICAgICAgICBhbmQgdmFsaWRhdGVNZXNzYWdlOiAke2luQ29tcC52YWxpZGF0ZU1lc3NhZ2V9YCk7XG4gICAgfVxuICAgIC8vIGVsc2UgaWYgKGluQ29tcC5jb25zdHJ1Y3Rvci5uYW1lLmluZGV4T2YoXCJWaWV3XCIpID49IDAgfHwgaW5Db21wLmNvbnN0cnVjdG9yLm5hbWUuaW5kZXhPZihcIlJvb3RcIikgPj0gMCkge1xuICAgIC8vICAgY29uc29sZS5sb2coXCJubyBjaGFuZ2VcIik7XG4gICAgLy8gICBjb25zb2xlLmxvZyhcImN1cnJlbnQgcHJvcHM6IFwiICsgY3VycmVudFByb3BzQXNTdHIpO1xuICAgIC8vICAgY29uc29sZS5sb2coXCJpbmNvbWluZyBwcm9wczogXCIgKyBpbmNvbWluZ1Byb3BzQXNTdHIpO1xuICAgIC8vICAgY29uc29sZS5sb2coYCAgICAke2luQ29tcC5jb25zdHJ1Y3Rvci5uYW1lfTogc2hvdWxkQ29tcG9uZW50VXBkYXRlIHJldHVybmluZzogJHtiUmV0fSwgY29tcElkOiAke2NvbXBJRH1gICk7XG5cbiAgICAvLyB9XG5cbiAgICAvLyBjb25zb2xlLmxvZyhgICAgICR7aW5Db21wLmNvbnN0cnVjdG9yLm5hbWV9OiBzaG91bGRDb21wb25lbnRVcGRhdGUgcmV0dXJuaW5nOiAke2JSZXR9YCk7XG5cbiAgICByZXR1cm4gYlJldDtcbiAgfVxuXG4gIGlzUGFnZU1lc3NhZ2VzRW1wdHkoaW5jb21pbmdQcm9wcykge1xuICAgIHJldHVybiBpbmNvbWluZ1Byb3BzLnBhZ2VNZXNzYWdlcyAmJiBpbmNvbWluZ1Byb3BzLnBhZ2VNZXNzYWdlcy5sZW5ndGggPT09IDA7XG4gIH1cblxuICAvKipcbiAgICogQ2FuIGJlIGNhbGxlZCB3aGVuIHRoZSBjb21wb25lbnQgaGFzIGVuY291bnRlcmVkIGEgY2hhbmdlIGV2ZW50XG4gICAqIEBwYXJhbSBpbkNvbXAgVGhlIGNvbXBvbmVudCBjYWxsaW5nIHRoZSBjaGFuZ2UgZXZlbnRcbiAgICogQHBhcmFtIGV2ZW50IFRoZSBldmVudFxuICAgKi9cbiAgY2hhbmdlSGFuZGxlcihpbkNvbXAsIGV2ZW50KSB7XG4gICAgY29uc3QgYkxvZ2dpbmcgPSBmYWxzZTtcbiAgICBpZiAoYkxvZ2dpbmcpIHtcbiAgICAgIC8vIGNvbnNvbGUubG9nKGBBbmd1bGFyUENvbm5lY3QuY2hhbmdlSGFuZGxlcmApO1xuICAgIH1cbiAgICAvLyBjaGVjayBmb3IgcmVhc29uYWJsZSBpbnB1dFxuICAgIGlmICh1bmRlZmluZWQgPT09IGluQ29tcCB8fCBVdGlscy5pc0VtcHR5T2JqZWN0KGluQ29tcCkpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoYEFuZ3VsYXJQQ29ubmVjdDogYmFkIGNhbGwgdG8gY2hhbmdlSGFuZGxlcjogaW5Db21wOiAke0pTT04uc3RyaW5naWZ5KGluQ29tcCl9YCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgcENvbm5lY3QgPSBpbkNvbXAucENvbm4kO1xuICAgIGlmICh1bmRlZmluZWQgPT09IHBDb25uZWN0KSB7XG4gICAgICBjb25zb2xlLmVycm9yKGBBbmd1bGFyUENvbm5lY3Q6IGJhZCBjYWxsIHRvIGNoYW5nZUhhbmRsZXI6IGluQ29tcC5wQ29ubiQ6ICR7cENvbm5lY3R9YCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gY2xlYXIgb3V0IGVycm9yc1xuICAgIHRoaXMuZXJTZXJ2aWNlLnNlbmRNZXNzYWdlKCdkaXNtaXNzJywgJycpO1xuXG4gICAgcENvbm5lY3QuZ2V0QWN0aW9uc0FwaSgpLmNoYW5nZUhhbmRsZXIocENvbm5lY3QsIGV2ZW50KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDYW4gYmUgY2FsbGVkIHdoZW4gdGhlIGNvbXBvbmVudCBoYXMgZW5jb3VudGVyZWQgYW4gZXZlbnQgKHN1Y2ggYXMgYmx1cilcbiAgICogQHBhcmFtIGluQ29tcCBUaGUgY29tcG9uZW50IGNhbGxpbmcgdGhlIGV2ZW50XG4gICAqIEBwYXJhbSBldmVudCBUaGUgZXZlbnRcbiAgICovXG4gIGV2ZW50SGFuZGxlcihpbkNvbXAsIGV2ZW50KSB7XG4gICAgY29uc3QgYkxvZ2dpbmcgPSBmYWxzZTtcbiAgICBpZiAoYkxvZ2dpbmcpIHtcbiAgICAgIC8vIGNvbnNvbGUubG9nKGBBbmd1bGFyUENvbm5lY3QuZXZlbnRIYW5kbGVyYCk7XG4gICAgfVxuICAgIC8vIGNoZWNrIGZvciByZWFzb25hYmxlIGlucHV0XG4gICAgaWYgKHVuZGVmaW5lZCA9PT0gaW5Db21wIHx8IFV0aWxzLmlzRW1wdHlPYmplY3QoaW5Db21wKSkge1xuICAgICAgY29uc29sZS5lcnJvcihgQW5ndWxhclBDb25uZWN0OiBiYWQgY2FsbCB0byBldmVudEhhbmRsZXI6IGluQ29tcDogJHtKU09OLnN0cmluZ2lmeShpbkNvbXApfWApO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHBDb25uZWN0ID0gaW5Db21wLnBDb25uJDtcbiAgICBpZiAodW5kZWZpbmVkID09PSBwQ29ubmVjdCkge1xuICAgICAgY29uc29sZS5lcnJvcihgQW5ndWxhclBDb25uZWN0OiBiYWQgY2FsbCB0byBldmVudEhhbmRsZXI6IGluQ29tcC5wQ29ubiQ6ICR7cENvbm5lY3R9YCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgcENvbm5lY3QuZ2V0QWN0aW9uc0FwaSgpLmV2ZW50SGFuZGxlcihwQ29ubmVjdCwgZXZlbnQpO1xuICB9XG5cbiAgLyoqXG4gICAqIEByZXR1cm5zIEEgaGFuZGxlIHRvIHRoZSBhcHBsaWNhdGlvbidzIHN0b3JlXG4gICAqL1xuICBnZXRTdG9yZSgpIHtcbiAgICBpZiAodGhpcy50aGVTdG9yZSA9PT0gbnVsbCkge1xuICAgICAgdGhpcy50aGVTdG9yZSA9IFBDb3JlLmdldFN0b3JlKCk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLnRoZVN0b3JlO1xuICB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSBiTG9nTXNnIElmIHRydWUsIHdpbGwgd3JpdGUgdGhlIHN0cmluZ2lmaWVkIHN0YXRlIHRvIHRoZSBzdG9yZSBmb3IgZGVidWdnaW5nL2luc3BlY3Rpb25cbiAgICogQHBhcmFtIGluQ29tcCBJZiBzdXBwbGllZCwgdGhlIGNvbXBvbmVudCB0aGF0IGlzIHJlcXVlc3RpbmcgdGhlIHN0b3JlJ3Mgc3RhdGVcbiAgICogQHJldHVybnMgQSBoYW5kbGUgdG8gdGhlIF9fc3RhdGVfXyBvZiBhcHBsaWNhdGlvbidzIHN0b3JlXG4gICAqL1xuICBnZXRTdGF0ZShiTG9nTXNnOiBib29sZWFuID0gZmFsc2UsIGluQ29tcDogYW55ID0gbnVsbCkge1xuICAgIGNvbnN0IHRoZVN0YXRlOiBvYmplY3QgPSB0aGlzLmdldFN0b3JlKCkuZ2V0U3RhdGUoKTtcbiAgICBpZiAoYkxvZ01zZykge1xuICAgICAgY29uc3QgdGhlQ29tcE5hbWU6IHN0cmluZyA9IGluQ29tcCA/IGAke2luQ29tcC5jb25zdHJ1Y3Rvci5uYW1lfTogYCA6ICcnO1xuICAgICAgY29uc29sZS5sb2coYCR7dGhlQ29tcE5hbWV9IFN0b3JlIHN0YXRlOiAke0pTT04uc3RyaW5naWZ5KHRoZVN0YXRlKX1gKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoZVN0YXRlO1xuICB9XG5cbiAgLy8gcHJvY2Vzc0FjdGlvbnMgLSBjYXJyaWVkIG92ZXIgZnJvbSBQQ29ubmVjdEhPQyBpbml0aWFsaXplXG4gIC8qKlxuICAgKiAgcHJvY2Vzc0FjdGlvbnMgZXhwb3NlcyBhbGwgYWN0aW9ucyBpbiB0aGUgbWV0YWRhdGEuXG4gICAqICBBdHRhY2hlcyBjb21tb24gaGFuZGxlciAoZXZlbnRIYW5kbGVyKSBmb3IgYWxsIGFjdGlvbnMuXG4gICAqL1xuICBwcml2YXRlIHByb2Nlc3NBY3Rpb25zKGluQ29tcCkge1xuICAgIGNvbnN0IHBDb25uZWN0ID0gaW5Db21wLnBDb25uJDtcbiAgICBpZiAodW5kZWZpbmVkID09PSBwQ29ubmVjdCkge1xuICAgICAgY29uc29sZS5lcnJvcihgQW5ndWxhclBDb25uZWN0OiBiYWQgY2FsbCB0byBwcm9jZXNzQWN0aW9uczogcENvbm4kOiAke3BDb25uZWN0fSBmcm9tIGNvbXBvbmVudDogJHtpbkNvbXAuY29uc3RydWN0b3IubmFtZX1gKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoaW5Db21wLnBDb25uJC5pc0VkaXRhYmxlKCkpIHtcbiAgICAgIGluQ29tcC5wQ29ubiQuc2V0QWN0aW9uKCdvbkNoYW5nZScsIHRoaXMuY2hhbmdlSGFuZGxlci5iaW5kKHRoaXMpKTtcbiAgICAgIGluQ29tcC5wQ29ubiQuc2V0QWN0aW9uKCdvbkJsdXInLCB0aGlzLmV2ZW50SGFuZGxlci5iaW5kKHRoaXMpKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -66,6 +66,7 @@ import { InlineDashboardPageComponent } from '../../_components/template/inline-
66
66
  import { ListPageComponent } from '../../_components/template/list-page/list-page.component';
67
67
  import { ListViewComponent } from '../../_components/template/list-view/list-view.component';
68
68
  import { MultiReferenceReadonlyComponent } from '../../_components/template/multi-reference-readonly/multi-reference-readonly.component';
69
+ import { MultiselectComponent } from '../../_components/field/multiselect/multiselect.component';
69
70
  import { NarrowWideFormComponent } from '../../_components/template/narrow-wide-form/narrow-wide-form.component';
70
71
  import { OneColumnComponent } from '../../_components/template/one-column/one-column.component';
71
72
  import { OneColumnPageComponent } from '../../_components/template/one-column-page/one-column-page.component';
@@ -178,6 +179,7 @@ const pegaSdkComponentMap = {
178
179
  MaterialUtility: MaterialUtilityComponent,
179
180
  ModalViewContainer: ModalViewContainerComponent,
180
181
  MultiReferenceReadOnly: MultiReferenceReadonlyComponent,
182
+ Multiselect: MultiselectComponent,
181
183
  MultiStep: MultiStepComponent,
182
184
  // 'NarrowWide': NarrowWideFormComponent,
183
185
  NarrowWideDetails: DetailsNarrowWideComponent,
@@ -234,4 +236,4 @@ const pegaSdkComponentMap = {
234
236
  WssQuickCreate: WssQuickCreateComponent
235
237
  };
236
238
  export default pegaSdkComponentMap;
237
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2RrLXBlZ2EtY29tcG9uZW50LW1hcC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItc2RrLWNvbXBvbmVudHMvc3JjL2xpYi9fYnJpZGdlL2hlbHBlcnMvc2RrLXBlZ2EtY29tcG9uZW50LW1hcC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxtQkFBbUI7QUFDbkIsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0saUVBQWlFLENBQUM7QUFDekcsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sbUVBQW1FLENBQUM7QUFDNUcsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seURBQXlELENBQUM7QUFDOUYsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0scUVBQXFFLENBQUM7QUFDL0csT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0seURBQXlELENBQUM7QUFDN0YsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0saUVBQWlFLENBQUM7QUFDekcsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNEVBQTRFLENBQUM7QUFDcEgsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sd0ZBQXdGLENBQUM7QUFDckksT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0seURBQXlELENBQUM7QUFDN0YsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBQzNGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxpREFBaUQsQ0FBQztBQUNsRixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxpRUFBaUUsQ0FBQztBQUN6RyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0saURBQWlELENBQUM7QUFDbEYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0RBQXdELENBQUM7QUFDMUYsT0FBTyxFQUFFLGFB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QUN6QyxXQUFXLEVBQUUsNEJBQTRCO0lBQ3pDLElBQUksRUFBRSxhQUFhO0lBQ25CLFFBQVEsRUFBRSxpQkFBaUI7SUFDM0IsV0FBVyxFQUFFLG9CQUFvQjtJQUNqQyxTQUFTLEVBQUUsa0JBQWtCO0lBQzdCLFdBQVcsRUFBRSxvQkFBb0I7SUFDakMsZUFBZSxFQUFFLHdCQUF3QjtJQUN6QyxJQUFJLEVBQUUsYUFBYTtJQUNuQixJQUFJLEVBQUUsYUFBYTtJQUNuQixTQUFTLEVBQUUsa0JBQWtCO0lBQzdCLGFBQWEsRUFBRSxzQkFBc0I7SUFDckMsWUFBWSxFQUFFLHFCQUFxQjtJQUNuQyxHQUFHLEVBQUUsWUFBWTtJQUNqQixhQUFhLEVBQUUsc0JBQXNCO0lBQ3JDLFlBQVksRUFBRSw2QkFBNkI7SUFDM0MsSUFBSSxFQUFFLGFBQWE7SUFDbkIsYUFBYSxFQUFFLHNCQUFzQjtJQUNyQyw4QkFBOEI7SUFDOUIsaUJBQWlCLEVBQUUsMEJBQTBCO0lBQzdDLGNBQWMsRUFBRSx1QkFBdUI7SUFDdkMsY0FBYyxFQUFFLHVCQUF1QjtJQUN2QyxTQUFTLEVBQUUsa0JBQWtCO0lBQzdCLGNBQWMsRUFBRSx1QkFBdUI7Q0FDeEMsQ0FBQztBQUVGLGVBQWUsbUJBQW1CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBJbmZyYSBjb21wb25lbnRzXG5pbXBvcnQgeyBBY3Rpb25CdXR0b25zQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvaW5mcmEvYWN0aW9uLWJ1dHRvbnMvYWN0aW9uLWJ1dHRvbnMuY29tcG9uZW50JztcbmltcG9ydCB7IEFzc2lnbm1lbnRDYXJkQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvaW5mcmEvYXNzaWdubWVudC1jYXJkL2Fzc2lnbm1lbnQtY2FyZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQXNzaWdubWVudENvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL2luZnJhL2Fzc2lnbm1lbnQvYXNzaWdubWVudC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGFzaGJvYXJkRmlsdGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvaW5mcmEvZGFzaGJvYXJkLWZpbHRlci9kYXNoYm9hcmQtZmlsdGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEZWZlckxvYWRDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy9pbmZyYS9kZWZlci1sb2FkL2RlZmVyLWxvYWQuY29tcG9uZW50JztcbmltcG9ydCB7IEVycm9yQm91bmRhcnlDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy9pbmZyYS9lcnJvci1ib3VuZGFyeS9lcnJvci1ib3VuZGFyeS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRmxvd0NvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL2luZnJhL0NvbnRhaW5lcnMvZmxvdy1jb250YWluZXIvZmxvdy1jb250YWluZXIuY29tcG9uZW50JztcbmltcG9ydCB7IE1vZGFsVmlld0NvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL2luZnJhL0NvbnRhaW5lcnMvbW9kYWwtdmlldy1jb250YWluZXIvbW9kYWwtdmlldy1jb250YWluZXIuY29tcG9uZW50JztcbmltcG9ydCB7IE11bHRpU3RlcENvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL2luZnJhL211bHRpLXN0ZXAvbXVsdGktc3RlcC5jb21wb25lbnQnO1xuaW1wb3J0IHsgTmF2YmFyQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvaW5mcmEvbmF2YmFyL25hdmJhci5jb21wb25lbnQnO1xuaW1wb3J0IHsgUmVmZXJlbmNlQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvaW5mcmEvcmVmZXJlbmNlL3JlZmVyZW5jZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgUmVnaW9uQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvaW5mcmEvcmVnaW9uL3JlZ2lvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgUm9vdENvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL2luZnJhL3Jvb3QtY29udGFpbmVyL3Jvb3QtY29udGFpbmVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTdGFnZXNDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy9pbmZyYS9zdGFnZXMvc3RhZ2VzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTdWJUYWJzQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvdGVtcGxhdGUvc3ViLXRhYnMvc3ViLXRhYnMuY29tcG9uZW50JztcbmltcG9ydCB7IFZpZXdDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy9pbmZyYS92aWV3L3ZpZXcuY29tcG9uZW50JztcbmltcG9ydCB7IFZpZXdDb250YWluZXJDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy9pbmZyYS9Db250YWluZXJzL3ZpZXctY29udGFpbmVyL3ZpZXctY29udGFpbmVyLmNvbXBvbmVudCc7XG5cbi8vIEZpZWxkIGNvbXBvbmVudHNcbmltcG9ydCB7IEF1dG9Db21wbGV0ZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL2ZpZWxkL2F1dG8tY29tcGxldGUvYXV0by1jb21wbGV0ZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ2FuY2VsQWxlcnRDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy9maWVsZC9jYW5jZWwtYWxlcnQvY2FuY2VsLWFsZXJ0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDaGVja0JveENvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL2ZpZWxkL2NoZWNrLWJveC9jaGVjay1ib3guY29tcG9uZW50JztcbmltcG9ydCB7IEN1cnJlbmN5Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvZmllbGQvY3VycmVuY3kvY3VycmVuY3kuY29tcG9uZW50JztcbmltcG9ydCB7IERhdGVDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy9maWVsZC9kYXRlL2RhdGUuY29tcG9uZW50JztcbmltcG9ydCB7IERhdGVUaW1lQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvZmllbGQvZGF0ZS10aW1lL2RhdGUtdGltZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGVjaW1hbENvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL2ZpZWxkL2RlY2ltYWwvZGVjaW1hbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRHJvcGRvd25Db21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy9maWVsZC9kcm9wZG93bi9kcm9wZG93bi5jb21wb25lbnQnO1xuaW1wb3J0IHsgRW1haWxDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy9maWVsZC9lbWFpbC9lbWFpbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgR3JvdXBDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy9maWVsZC9ncm91cC9ncm91cC5jb21wb25lbnQnO1xuaW1wb3J0IHsgSW50ZWdlckNvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL2ZpZWxkL2ludGVnZXIvaW50ZWdlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgTGlzdFZpZXdBY3Rpb25CdXR0b25zQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvZmllbGQvbGlzdC12aWV3LWFjdGlvbi1idXR0b25zL2xpc3Qtdmlldy1hY3Rpb24tYnV0dG9ucy5jb21wb25lbnQnO1xuaW1wb3J0IHsgUGVyY2VudGFnZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL2ZpZWxkL3BlcmNlbnRhZ2UvcGVyY2VudGFnZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgUGhvbmVDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy9maWVsZC9waG9uZS9waG9uZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgUmFkaW9CdXR0b25zQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvZmllbGQvcmFkaW8tYnV0dG9ucy9yYWRpby1idXR0b25zLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTZW1hbnRpY0xpbmtDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy9maWVsZC9zZW1hbnRpYy1saW5rL3NlbWFudGljLWxpbmsuY29tcG9uZW50JztcbmltcG9ydCB7IFRleHRBcmVhQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvZmllbGQvdGV4dC1hcmVhL3RleHQtYXJlYS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGV4dENvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL2ZpZWxkL3RleHQvdGV4dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGV4dENvbnRlbnRDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy9maWVsZC90ZXh0LWNvbnRlbnQvdGV4dC1jb250ZW50LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUZXh0SW5wdXRDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy9maWVsZC90ZXh0LWlucHV0L3RleHQtaW5wdXQuY29tcG9uZW50JztcbmltcG9ydCB7IFRpbWVDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy9maWVsZC90aW1lL3RpbWUuY29tcG9uZW50JztcbmltcG9ydCB7IFVybENvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL2ZpZWxkL3VybC91cmwuY29tcG9uZW50JztcbmltcG9ydCB7IFVzZXJSZWZlcmVuY2VDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy9maWVsZC91c2VyLXJlZmVyZW5jZS91c2VyLXJlZmVyZW5jZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2NhbGFyTGlzdENvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL2ZpZWxkL3NjYWxhci1saXN0L3NjYWxhci1saXN0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBSaWNoVGV4dENvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL2ZpZWxkL3JpY2gtdGV4dC9yaWNoLXRleHQuY29tcG9uZW50JztcblxuLy8gVGVtcGxhdGUgY29tcG9uZW50c1xuaW1wb3J0IHsgQXBwU2hlbGxDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy90ZW1wbGF0ZS9hcHAtc2hlbGwvYXBwLXNoZWxsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCYW5uZXJQYWdlQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvdGVtcGxhdGUvYmFubmVyLXBhZ2UvYmFubmVyLXBhZ2UuY29tcG9uZW50JztcbmltcG9ydCB7IENhc2VTdW1tYXJ5Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvdGVtcGxhdGUvY2FzZS1zdW1tYXJ5L2Nhc2Utc3VtbWFyeS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ2FzZVZpZXdDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy90ZW1wbGF0ZS9jYXNlLXZpZXcvY2FzZS12aWV3LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb25maXJtYXRpb25Db21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy90ZW1wbGF0ZS9jb25maXJtYXRpb24vY29uZmlybWF0aW9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEYXRhUmVmZXJlbmNlQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvdGVtcGxhdGUvZGF0YS1yZWZlcmVuY2UvZGF0YS1yZWZlcmVuY2UuY29tcG9uZW50JztcbmltcG9ydCB7IERlZmF1bHRGb3JtQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvdGVtcGxhdGUvZGVmYXVsdC1mb3JtL2RlZmF1bHQtZm9ybS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGV0YWlsc0NvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL3RlbXBsYXRlL2RldGFpbHMvZGV0YWlscy5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGV0YWlsc05hcnJvd1dpZGVDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy90ZW1wbGF0ZS9kZXRhaWxzLW5hcnJvdy13aWRlL2RldGFpbHMtbmFycm93LXdpZGUuY29tcG9uZW50JztcbmltcG9ydCB7IERldGFpbHNPbmVDb2x1bW5Db21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy90ZW1wbGF0ZS9kZXRhaWxzLW9uZS1jb2x1bW4vZGV0YWlscy1vbmUtY29sdW1uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEZXRhaWxzU3ViVGFic0NvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL3RlbXBsYXRlL2RldGFpbHMtc3ViLXRhYnMvZGV0YWlscy1zdWItdGFicy5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGV0YWlsc1RocmVlQ29sdW1uQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvdGVtcGxhdGUvZGV0YWlscy10aHJlZS1jb2x1bW4vZGV0YWlscy10aHJlZS1jb2x1bW4uY29tcG9uZW50JztcbmltcG9ydCB7IERldGFpbHNUd29Db2x1bW5Db21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy90ZW1wbGF0ZS9kZXRhaWxzLXR3by1jb2x1bW4vZGV0YWlscy10d28tY29sdW1uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEZXRhaWxzV2lkZU5hcnJvd0NvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL3RlbXBsYXRlL2RldGFpbHMtd2lkZS1uYXJyb3cvZGV0YWlscy13aWRlLW5hcnJvdy5jb21wb25lbnQnO1xuaW1wb3J0IHsgRHluYW1pY1RhYnNDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy90ZW1wbGF0ZS9keW5hbWljLXRhYnMvZHluYW1pYy10YWJzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGaWVsZEdyb3VwTGlzdENvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL3RlbXBsYXRlL2ZpZWxkLWdyb3VwLWxpc3QvZmllbGQtZ3JvdXAtbGlzdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRmllbGRHcm91cFRlbXBsYXRlQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvdGVtcGxhdGUvZmllbGQtZ3JvdXAtdGVtcGxhdGUvZmllbGQtZ3JvdXAtdGVtcGxhdGUuY29tcG9uZW50JztcbmltcG9ydCB7IEZpZWxkVmFsdWVMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvdGVtcGxhdGUvZmllbGQtdmFsdWUtbGlzdC9maWVsZC12YWx1ZS1saXN0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJbmxpbmVEYXNoYm9hcmRDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy90ZW1wbGF0ZS9pbmxpbmUtZGFzaGJvYXJkL2lubGluZS1kYXNoYm9hcmQuY29tcG9uZW50JztcbmltcG9ydCB7IElubGluZURhc2hib2FyZFBhZ2VDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy90ZW1wbGF0ZS9pbmxpbmUtZGFzaGJvYXJkLXBhZ2UvaW5saW5lLWRhc2hib2FyZC1wYWdlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBMaXN0UGFnZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL3RlbXBsYXRlL2xpc3QtcGFnZS9saXN0LXBhZ2UuY29tcG9uZW50JztcbmltcG9ydCB7IExpc3RWaWV3Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvdGVtcGxhdGUvbGlzdC12aWV3L2xpc3Qtdmlldy5jb21wb25lbnQnO1xuaW1wb3J0IHsgTXVsdGlSZWZlcmVuY2VSZWFkb25seUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL3RlbXBsYXRlL211bHRpLXJlZmVyZW5jZS1yZWFkb25seS9tdWx0aS1yZWZlcmVuY2UtcmVhZG9ubHkuY29tcG9uZW50JztcbmltcG9ydCB7IE5hcnJvd1dpZGVGb3JtQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvdGVtcGxhdGUvbmFycm93LXdpZGUtZm9ybS9uYXJyb3ctd2lkZS1mb3JtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBPbmVDb2x1bW5Db21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy90ZW1wbGF0ZS9vbmUtY29sdW1uL29uZS1jb2x1bW4uY29tcG9uZW50JztcbmltcG9ydCB7IE9uZUNvbHVtblBhZ2VDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy90ZW1wbGF0ZS9vbmUtY29sdW1uLXBhZ2Uvb25lLWNvbHVtbi1wYWdlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBPbmVDb2x1bW5UYWJDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy90ZW1wbGF0ZS9vbmUtY29sdW1uLXRhYi9vbmUtY29sdW1uLXRhYi5jb21wb25lbnQnO1xuaW1wb3J0IHsgUGFnZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL3RlbXBsYXRlL3BhZ2UvcGFnZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgUHJvbW90ZWRGaWx0ZXJzQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvdGVtcGxhdGUvcHJvbW90ZWQtZmlsdGVycy9wcm9tb3RlZC1maWx0ZXJzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTaW1wbGVUYWJsZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL3RlbXBsYXRlL3NpbXBsZS10YWJsZS9zaW1wbGUtdGFibGUuY29tcG9uZW50JztcbmltcG9ydCB7IFNpbXBsZVRhYmxlTWFudWFsQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvdGVtcGxhdGUvc2ltcGxlLXRhYmxlLW1hbnVhbC9zaW1wbGUtdGFibGUtbWFudWFsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTaW1wbGVUYWJsZVNlbGVjdENvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL3RlbXBsYXRlL3NpbXBsZS10YWJsZS1zZWxlY3Qvc2ltcGxlLXRhYmxlLXNlbGVjdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2luZ2xlUmVmZXJlbmNlUmVhZG9ubHlDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy90ZW1wbGF0ZS9zaW5nbGUtcmVmZXJlbmNlLXJlYWRvbmx5L3NpbmdsZS1yZWZlcmVuY2UtcmVhZG9ubHkuY29tcG9uZW50JztcbmltcG9ydCB7IFRocmVlQ29sdW1uQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvdGVtcGxhdGUvdGhyZWUtY29sdW1uL3RocmVlLWNvbHVtbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGhyZWVDb2x1bW5QYWdlQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvdGVtcGxhdGUvdGhyZWUtY29sdW1uLXBhZ2UvdGhyZWUtY29sdW1uLXBhZ2UuY29tcG9uZW50JztcbmltcG9ydCB7IFR3b0NvbHVtbkNvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL3RlbXBsYXRlL3R3by1jb2x1bW4vdHdvLWNvbHVtbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgVHdvQ29sdW1uUGFnZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL3RlbXBsYXRlL3R3by1jb2x1bW4tcGFnZS90d28tY29sdW1uLXBhZ2UuY29tcG9uZW50JztcbmltcG9ydCB7IFR3b0NvbHVtblRhYkNvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL3RlbXBsYXRlL3R3by1jb2x1bW4tdGFiL3R3by1jb2x1bW4tdGFiLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBXaWRlTmFycm93Rm9ybUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL3RlbXBsYXRlL3dpZGUtbmFycm93LWZvcm0vd2lkZS1uYXJyb3ctZm9ybS5jb21wb25lbnQnO1xuaW1wb3J0IHsgV2lkZU5hcnJvd1BhZ2VDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy90ZW1wbGF0ZS93aWRlLW5hcnJvdy1wYWdlL3dpZGUtbmFycm93LXBhZ2UuY29tcG9uZW50JztcbmltcG9ydCB7IFdzc05hdkJhckNvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL3RlbXBsYXRlL3dzcy1uYXYtYmFyL3dzcy1uYXYtYmFyLmNvbXBvbmVudCc7XG5cbi8vIFdpZGdldCBjb21wb25lbnRzXG5pbXBvcnQgeyBBcHBBbm5vdW5jZW1lbnRDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy93aWRnZXQvYXBwLWFubm91bmNlbWVudC9hcHAtYW5ub3VuY2VtZW50LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBdHRhY2htZW50Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvd2lkZ2V0L2F0dGFjaG1lbnQvYXR0YWNobWVudC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ2FzZUhpc3RvcnlDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy93aWRnZXQvY2FzZS1oaXN0b3J5L2Nhc2UtaGlzdG9yeS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRmlsZVV0aWxpdHlDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy93aWRnZXQvZmlsZS11dGlsaXR5L2ZpbGUtdXRpbGl0eS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRmVlZENvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL3dpZGdldC9mZWVkLWNvbnRhaW5lci9mZWVkLWNvbnRhaW5lci5jb21wb25lbnQnO1xuaW1wb3J0IHsgTGlzdFV0aWxpdHlDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy93aWRnZXQvbGlzdC11dGlsaXR5L2xpc3QtdXRpbGl0eS5jb21wb25lbnQnO1xuaW1wb3J0IHsgUXVpY2tDcmVhdGVDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy93aWRnZXQvcXVpY2stY3JlYXRlL3F1aWNrLWNyZWF0ZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVG9kb0NvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL3dpZGdldC90b2RvL3RvZG8uY29tcG9uZW50JztcblxuLy8gRGVzaWduIFN5c3RlbSBjb21wb25lbnRzXG5pbXBvcnQgeyBBbGVydEJhbm5lckNvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL2Rlc2lnblN5c3RlbUV4dGVuc2lvbi9hbGVydC1iYW5uZXIvYWxlcnQtYmFubmVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBbGVydENvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL2Rlc2lnblN5c3RlbUV4dGVuc2lvbi9hbGVydC9hbGVydC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFubmVyQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvZGVzaWduU3lzdGVtRXh0ZW5zaW9uL2Jhbm5lci9iYW5uZXIuY29tcG9uZW50JztcbmltcG9ydCB7IENhc2VDcmVhdGVTdGFnZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL2Rlc2lnblN5c3RlbUV4dGVuc2lvbi9jYXNlLWNyZWF0ZS1zdGFnZS9jYXNlLWNyZWF0ZS1zdGFnZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRmllbGRHcm91cENvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL2Rlc2lnblN5c3RlbUV4dGVuc2lvbi9maWVsZC1ncm91cC9maWVsZC1ncm91cC5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWF0ZXJpYWxDYXNlU3VtbWFyeUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL2Rlc2lnblN5c3RlbUV4dGVuc2lvbi9tYXRlcmlhbC1jYXNlLXN1bW1hcnkvbWF0ZXJpYWwtY2FzZS1zdW1tYXJ5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNYXRlcmlhbERldGFpbHNDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy9kZXNpZ25TeXN0ZW1FeHRlbnNpb24vbWF0ZXJpYWwtZGV0YWlscy9tYXRlcmlhbC1kZXRhaWxzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNYXRlcmlhbERldGFpbHNGaWVsZHNDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy9kZXNpZ25TeXN0ZW1FeHRlbnNpb24vbWF0ZXJpYWwtZGV0YWlscy1maWVsZHMvbWF0ZXJpYWwtZGV0YWlscy1maWVsZHMuY29tcG9uZW50JztcbmltcG9ydCB7IE1hdGVyaWFsU3VtbWFyeUl0ZW1Db21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy9kZXNpZ25TeXN0ZW1FeHRlbnNpb24vbWF0ZXJpYWwtc3VtbWFyeS1pdGVtL21hdGVyaWFsLXN1bW1hcnktaXRlbS5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWF0ZXJpYWxTdW1tYXJ5TGlzdENvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL2Rlc2lnblN5c3RlbUV4dGVuc2lvbi9tYXRlcmlhbC1zdW1tYXJ5LWxpc3QvbWF0ZXJpYWwtc3VtbWFyeS1saXN0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNYXRlcmlhbFV0aWxpdHlDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy9kZXNpZ25TeXN0ZW1FeHRlbnNpb24vbWF0ZXJpYWwtdXRpbGl0eS9tYXRlcmlhbC11dGlsaXR5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNYXRlcmlhbFZlcnRpY2FsVGFic0NvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL2Rlc2lnblN5c3RlbUV4dGVuc2lvbi9tYXRlcmlhbC12ZXJ0aWNhbC10YWJzL21hdGVyaWFsLXZlcnRpY2FsLXRhYnMuY29tcG9uZW50JztcbmltcG9ydCB7IE9wZXJhdG9yQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvZGVzaWduU3lzdGVtRXh0ZW5zaW9uL29wZXJhdG9yL29wZXJhdG9yLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQdWxzZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL2Rlc2lnblN5c3RlbUV4dGVuc2lvbi9wdWxzZS9wdWxzZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgUmljaFRleHRFZGl0b3JDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy9kZXNpZ25TeXN0ZW1FeHRlbnNpb24vcmljaC10ZXh0LWVkaXRvci9yaWNoLXRleHQtZWRpdG9yLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBXc3NRdWlja0NyZWF0ZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL2Rlc2lnblN5c3RlbUV4dGVuc2lvbi93c3MtcXVpY2stY3JlYXRlL3dzcy1xdWljay1jcmVhdGUuY29tcG9uZW50JztcblxuLy8gcGVnYVNka0NvbXBvbmVudE1hcCBpcyB0aGUgSlNPTiBvYmplY3Qgd2hlcmUgd2UnbGwgc3RvcmUgdGhlIGNvbXBvbmVudHMgdGhhdCBhcmVcbi8vIHRoZSBkZWZhdWx0IGltcGxlbWVudGF0aW9ucyBwcm92aWRlZCBieSB0aGUgU0RLLiBUaGVzZSB3aWxsIGJlIHVzZWQgaWYgdGhlcmUgaXNuJ3Rcbi8vIGFuIGVudHJ5IGluIHRoZSBsb2NhbFNka0NvbXBvbmVudE1hcFxuXG4vLyBOT1RFOiBBIGZldyBjb21wb25lbnRzIGhhdmUgbm9uLXN0YW5kYXJkIGNhcGl0YWxpemF0aW9uOlxuLy8gICdyZWZlcmVuY2UnIGlzIHdoYXQncyBpbiB0aGUgbWV0YWRhdGEsIG5vdCBSZWZlcmVuY2Vcbi8vICAnVG9kbycgaXMgd2hhdCdzIGluIHRoZSBtZXRhZGF0YSwgbm90IFRvRG9cbi8vICBBbHNvLCBub3RlIHRoYXQgXCJDaGVja2JveFwiIGNvbXBvbmVudCBpcyBuYW1lZC9leHBvcnRlZCBhcyBDaGVja2JveENvbXBvbmVudFxuXG5jb25zdCBwZWdhU2RrQ29tcG9uZW50TWFwID0ge1xuICBBY3Rpb25CdXR0b25zOiBBY3Rpb25CdXR0b25zQ29tcG9uZW50LFxuICBBbGVydDogQWxlcnRDb21wb25lbnQsXG4gIEFsZXJ0QmFubmVyOiBBbGVydEJhbm5lckNvbXBvbmVudCxcbiAgLy8gICAnQWN0aW9uQnV0dG9uc0ZvckZpbGVVdGlsJzogQWN0aW9uQnV0dG9uc0ZvckZpbGVVdGlsLFxuICBBcHBBbm5vdW5jZW1lbnQ6IEFwcEFubm91bmNlbWVudENvbXBvbmVudCxcbiAgQXBwU2hlbGw6IEFwcFNoZWxsQ29tcG9uZW50LFxuICBBc3NpZ25tZW50OiBBc3NpZ25tZW50Q29tcG9uZW50LFxuICBBc3NpZ25tZW50Q2FyZDogQXNzaWdubWVudENhcmRDb21wb25lbnQsXG4gIEF0dGFjaG1lbnQ6IEF0dGFjaG1lbnRDb21wb25lbnQsXG4gIEF1dG9Db21wbGV0ZTogQXV0b0NvbXBsZXRlQ29tcG9uZW50LFxuICBCYW5uZXI6IEJhbm5lckNvbXBvbmVudCxcbiAgQmFubmVyUGFnZTogQmFubmVyUGFnZUNvbXBvbmVudCxcbiAgQ2FuY2VsQWxlcnQ6IENhbmNlbEFsZXJ0Q29tcG9uZW50LFxuICBDYXNlQ3JlYXRlU3RhZ2U6IENhc2VDcmVhdGVTdGFnZUNvbXBvbmVudCxcbiAgQ2FzZUhpc3Rvcnk6IENhc2VIaXN0b3J5Q29tcG9uZW50LFxuICBDYXNlU3VtbWFyeTogQ2FzZVN1bW1hcnlDb21wb25lbnQsXG4gIENhc2VTdW1tYXJ5RmllbGRzOiBNYXRlcmlhbENhc2VTdW1tYXJ5Q29tcG9uZW50LFxuICBDYXNlVmlldzogQ2FzZVZpZXdDb21wb25lbnQsXG4gIC8vICAgJ0Nhc2VWaWV3QWN0aW9uc01lbnUnOiBDYXNlVmlld0FjdGlvbnNNZW51LFxuICBDaGVja2JveDogQ2hlY2tCb3hDb21wb25lbnQsXG4gIENvbmZpcm1hdGlvbjogQ29uZmlybWF0aW9uQ29tcG9uZW50LFxuICBDdXJyZW5jeTogQ3VycmVuY3lDb21wb25lbnQsXG4gIERhc2hib2FyZEZpbHRlcjogRGFzaGJvYXJkRmlsdGVyQ29tcG9uZW50LFxuICBEYXRhUmVmZXJlbmNlOiBEYXRhUmVmZXJlbmNlQ29tcG9uZW50LFxuICBEYXRlOiBEYXRlQ29tcG9uZW50LFxuICBEYXRlVGltZTogRGF0ZVRpbWVDb21wb25lbnQsXG4gIERlY2ltYWw6IERlY2ltYWxDb21wb25lbnQsXG4gIERlZmF1bHRGb3JtOiBEZWZhdWx0Rm9ybUNvbXBvbmVudCxcbiAgRGVmZXJMb2FkOiBEZWZlckxvYWRDb21wb25lbnQsXG4gIERldGFpbHM6IERldGFpbHNDb21wb25lbnQsXG4gIERldGFpbHNGaWVsZHM6IE1hdGVyaWFsRGV0YWlsc0ZpZWxkc0NvbXBvbmVudCxcbiAgRGV0YWlsc09uZUNvbHVtbjogRGV0YWlsc09uZUNvbHVtbkNvbXBvbmVudCxcbiAgRGV0YWlsc1N1YlRhYnM6IERldGFpbHNTdWJUYWJzQ29tcG9uZW50LFxuICBEZXRhaWxzVGhyZWVDb2x1bW46IERldGFpbHNUaHJlZUNvbHVtbkNvbXBvbmVudCxcbiAgRGV0YWlsc1R3b0NvbHVtbjogRGV0YWlsc1R3b0NvbHVtbkNvbXBvbmVudCxcbiAgRHJvcGRvd246IERyb3Bkb3duQ29tcG9uZW50LFxuICBEeW5hbWljVGFiczogRHluYW1pY1RhYnNDb21wb25lbnQsXG4gIEVtYWlsOiBFbWFpbENvbXBvbmVudCxcbiAgRXJyb3JCb3VuZGFyeTogRXJyb3JCb3VuZGFyeUNvbXBvbmVudCxcbiAgRmVlZENvbnRhaW5lcjogRmVlZENvbnRhaW5lckNvbXBvbmVudCxcbiAgRmllbGRHcm91cDogRmllbGRHcm91cENvbXBvbmVudCxcbiAgRmllbGRHcm91cExpc3Q6IEZpZWxkR3JvdXBMaXN0Q29tcG9uZW50LFxuICBGaWVsZEdyb3VwVGVtcGxhdGU6IEZpZWxkR3JvdXBUZW1wbGF0ZUNvbXBvbmVudCxcbiAgRmllbGRWYWx1ZUxpc3Q6IEZpZWxkVmFsdWVMaXN0Q29tcG9uZW50LFxuICBGaWxlVXRpbGl0eTogRmlsZVV0aWxpdHlDb21wb25lbnQsXG4gIEZsb3dDb250YWluZXI6IEZsb3dDb250YWluZXJDb21wb25lbnQsXG4gIEdyb3VwOiBHcm91cENvbXBvbmVudCxcbiAgLy8gICAnRm9sbG93ZXJzJzogRm9sbG93ZXJzLFxuICBJbmxpbmVEYXNoYm9hcmQ6IElubGluZURhc2hib2FyZENvbXBvbmVudCxcbiAgSW5saW5lRGFzaGJvYXJkUGFnZTogSW5saW5lRGFzaGJvYXJkUGFnZUNvbXBvbmVudCxcbiAgSW50ZWdlcjogSW50ZWdlckNvbXBvbmVudCxcbiAgLy8gICAnTGVmdEFsaWduVmVydGljYWxUYWJzJzogTGVmdEFsaWduVmVydGljYWxUYWJzLFxuICBMaXN0UGFnZTogTGlzdFBhZ2VDb21wb25lbnQsXG4gIExpc3RVdGlsaXR5OiBMaXN0VXRpbGl0eUNvbXBvbmVudCxcbiAgTGlzdFZpZXc6IExpc3RWaWV3Q29tcG9uZW50LFxuICBMaXN0Vmlld0FjdGlvbkJ1dHRvbnM6IExpc3RWaWV3QWN0aW9uQnV0dG9uc0NvbXBvbmVudCxcbiAgTWF0ZXJpYWxEZXRhaWxzOiBNYXRlcmlhbERldGFpbHNDb21wb25lbnQsXG4gIE1hdGVyaWFsVXRpbGl0eTogTWF0ZXJpYWxVdGlsaXR5Q29tcG9uZW50LFxuICBNb2RhbFZpZXdDb250YWluZXI6IE1vZGFsVmlld0NvbnRhaW5lckNvbXBvbmVudCxcbiAgTXVsdGlSZWZlcmVuY2VSZWFkT25seTogTXVsdGlSZWZlcmVuY2VSZWFkb25seUNvbXBvbmVudCxcbiAgTXVsdGlTdGVwOiBNdWx0aVN0ZXBDb21wb25lbnQsXG4gIC8vICAgJ05hcnJvd1dpZGUnOiBOYXJyb3dXaWRlRm9ybUNvbXBvbmVudCxcbiAgTmFycm93V2lkZURldGFpbHM6IERldGFpbHNOYXJyb3dXaWRlQ29tcG9uZW50LFxuICBOYXJyb3dXaWRlRm9ybTogTmFycm93V2lkZUZvcm1Db21wb25lbnQsXG4gIC8vICAgJ05hcnJvd1dpZGVQYWdlJzogTmFycm93V2lkZVBhZ2UsXG4gIE5hdkJhcjogTmF2YmFyQ29tcG9uZW50LFxuICBPbmVDb2x1bW46IE9uZUNvbHVtbkNvbXBvbmVudCxcbiAgT25lQ29sdW1uUGFnZTogT25lQ29sdW1uUGFnZUNvbXBvbmVudCxcbiAgT25lQ29sdW1uVGFiOiBPbmVDb2x1bW5UYWJDb21wb25lbnQsXG4gIE9wZXJhdG9yOiBPcGVyYXRvckNvbXBvbmVudCxcbiAgUGFnZTogUGFnZUNvbXBvbmVudCxcbiAgUGVyY2VudGFnZTogUGVyY2VudGFnZUNvbXBvbmVudCxcbiAgUGhvbmU6IFBob25lQ29tcG9uZW50LFxuICBQcm9tb3RlZEZpbHRlcnM6IFByb21vdGVkRmlsdGVyc0NvbXBvbmVudCxcbiAgUHVsc2U6IFB1bHNlQ29tcG9uZW50LFxuICBRdWlja0NyZWF0ZTogUXVpY2tDcmVhdGVDb21wb25lbnQsXG4gIHJlZmVyZW5jZTogUmVmZXJlbmNlQ29tcG9uZW50LFxuICBSYWRpb0J1dHRvbnM6IFJhZGlvQnV0dG9uc0NvbXBvbmVudCxcbiAgUmVnaW9uOiBSZWdpb25Db21wb25lbnQsXG4gIFJpY2hUZXh0OiBSaWNoVGV4dENvbXBvbmVudCxcbiAgUmljaFRleHRFZGl0b3I6IFJpY2hUZXh0RWRpdG9yQ29tcG9uZW50LFxuICBSb290Q29udGFpbmVyOiBSb290Q29udGFpbmVyQ29tcG9uZW50LFxuICBTY2FsYXJMaXN0OiBTY2FsYXJMaXN0Q29tcG9uZW50LFxuICBTZW1hbnRpY0xpbms6IFNlbWFudGljTGlua0NvbXBvbmVudCxcbiAgU2ltcGxlVGFibGU6IFNpbXBsZVRhYmxlQ29tcG9uZW50LFxuICBTaW1wbGVUYWJsZU1hbnVhbDogU2ltcGxlVGFibGVNYW51YWxDb21wb25lbnQsXG4gIFNpbXBsZVRhYmxlU2VsZWN0OiBTaW1wbGVUYWJsZVNlbGVjdENvbXBvbmVudCxcbiAgU2luZ2xlUmVmZXJlbmNlUmVhZE9ubHk6IFNpbmdsZVJlZmVyZW5jZVJlYWRvbmx5Q29tcG9uZW50LFxuICBTdGFnZXM6IFN0YWdlc0NvbXBvbmVudCxcbiAgU3ViVGFiczogU3ViVGFic0NvbXBvbmVudCxcbiAgU3VtbWFyeUl0ZW06IE1hdGVyaWFsU3VtbWFyeUl0ZW1Db21wb25lbnQsXG4gIFN1bW1hcnlMaXN0OiBNYXRlcmlhbFN1bW1hcnlMaXN0Q29tcG9uZW50LFxuICBUZXh0OiBUZXh0Q29tcG9uZW50LFxuICBUZXh0QXJlYTogVGV4dEFyZWFDb21wb25lbnQsXG4gIFRleHRDb250ZW50OiBUZXh0Q29udGVudENvbXBvbmVudCxcbiAgVGV4dElucHV0OiBUZXh0SW5wdXRDb21wb25lbnQsXG4gIFRocmVlQ29sdW1uOiBUaHJlZUNvbHVtbkNvbXBvbmVudCxcbiAgVGhyZWVDb2x1bW5QYWdlOiBUaHJlZUNvbHVtblBhZ2VDb21wb25lbnQsXG4gIFRpbWU6IFRpbWVDb21wb25lbnQsXG4gIFRvZG86IFRvZG9Db21wb25lbnQsXG4gIFR3b0NvbHVtbjogVHdvQ29sdW1uQ29tcG9uZW50LFxuICBUd29Db2x1bW5QYWdlOiBUd29Db2x1bW5QYWdlQ29tcG9uZW50LFxuICBUd29Db2x1bW5UYWI6IFR3b0NvbHVtblRhYkNvbXBvbmVudCxcbiAgVVJMOiBVcmxDb21wb25lbnQsXG4gIFVzZXJSZWZlcmVuY2U6IFVzZXJSZWZlcmVuY2VDb21wb25lbnQsXG4gIFZlcnRpY2FsVGFiczogTWF0ZXJpYWxWZXJ0aWNhbFRhYnNDb21wb25lbnQsXG4gIFZpZXc6IFZpZXdDb21wb25lbnQsXG4gIFZpZXdDb250YWluZXI6IFZpZXdDb250YWluZXJDb21wb25lbnQsXG4gIC8vICAgJ1dpZGVOYXJyb3cnOiBXaWRlTmFycm93LFxuICBXaWRlTmFycm93RGV0YWlsczogRGV0YWlsc1dpZGVOYXJyb3dDb21wb25lbnQsXG4gIFdpZGVOYXJyb3dGb3JtOiBXaWRlTmFycm93Rm9ybUNvbXBvbmVudCxcbiAgV2lkZU5hcnJvd1BhZ2U6IFdpZGVOYXJyb3dQYWdlQ29tcG9uZW50LFxuICBXc3NOYXZCYXI6IFdzc05hdkJhckNvbXBvbmVudCxcbiAgV3NzUXVpY2tDcmVhdGU6IFdzc1F1aWNrQ3JlYXRlQ29tcG9uZW50XG59O1xuXG5leHBvcnQgZGVmYXVsdCBwZWdhU2RrQ29tcG9uZW50TWFwO1xuIl19
239
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2RrLXBlZ2EtY29tcG9uZW50LW1hcC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItc2RrLWNvbXBvbmVudHMvc3JjL2xpYi9fYnJpZGdlL2hlbHBlcnMvc2RrLXBlZ2EtY29tcG9uZW50LW1hcC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxtQkFBbUI7QUFDbkIsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0saUVBQWlFLENBQUM7QUFDekcsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sbUVBQW1FLENBQUM7QUFDNUcsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seURBQXlELENBQUM7QUFDOUYsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0scUVBQXFFLENBQUM7QUFDL0csT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0seURBQXlELENBQUM7QUFDN0YsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0saUVBQWlFLENBQUM7QUFDekcsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNEVBQTRFLENBQUM7QUFDcEgsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sd0ZBQXdGLENBQUM7QUFDckksT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0seURBQXlELENBQUM7QUFDN0YsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBQzNGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxpREFBaUQsQ0FBQztBQUNsRixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxpRUFBaUUsQ0FBQztBQUN6RyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0saURBQWlELENBQUM7QUFDbEYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0RBQXdELENBQUM7QUFDMUYsT0FBTyxFQUFFLGFB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SUFDekQsTUFBTSxFQUFFLGVBQWU7SUFDdkIsT0FBTyxFQUFFLGdCQUFnQjtJQUN6QixXQUFXLEVBQUUsNEJBQTRCO0lBQ3pDLFdBQVcsRUFBRSw0QkFBNEI7SUFDekMsSUFBSSxFQUFFLGFBQWE7SUFDbkIsUUFBUSxFQUFFLGlCQUFpQjtJQUMzQixXQUFXLEVBQUUsb0JBQW9CO0lBQ2pDLFNBQVMsRUFBRSxrQkFBa0I7SUFDN0IsV0FBVyxFQUFFLG9CQUFvQjtJQUNqQyxlQUFlLEVBQUUsd0JBQXdCO0lBQ3pDLElBQUksRUFBRSxhQUFhO0lBQ25CLElBQUksRUFBRSxhQUFhO0lBQ25CLFNBQVMsRUFBRSxrQkFBa0I7SUFDN0IsYUFBYSxFQUFFLHNCQUFzQjtJQUNyQyxZQUFZLEVBQUUscUJBQXFCO0lBQ25DLEdBQUcsRUFBRSxZQUFZO0lBQ2pCLGFBQWEsRUFBRSxzQkFBc0I7SUFDckMsWUFBWSxFQUFFLDZCQUE2QjtJQUMzQyxJQUFJLEVBQUUsYUFBYTtJQUNuQixhQUFhLEVBQUUsc0JBQXNCO0lBQ3JDLDhCQUE4QjtJQUM5QixpQkFBaUIsRUFBRSwwQkFBMEI7SUFDN0MsY0FBYyxFQUFFLHVCQUF1QjtJQUN2QyxjQUFjLEVBQUUsdUJBQXVCO0lBQ3ZDLFNBQVMsRUFBRSxrQkFBa0I7SUFDN0IsY0FBYyxFQUFFLHVCQUF1QjtDQUN4QyxDQUFDO0FBRUYsZUFBZSxtQkFBbUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIEluZnJhIGNvbXBvbmVudHNcbmltcG9ydCB7IEFjdGlvbkJ1dHRvbnNDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy9pbmZyYS9hY3Rpb24tYnV0dG9ucy9hY3Rpb24tYnV0dG9ucy5jb21wb25lbnQnO1xuaW1wb3J0IHsgQXNzaWdubWVudENhcmRDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy9pbmZyYS9hc3NpZ25tZW50LWNhcmQvYXNzaWdubWVudC1jYXJkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBc3NpZ25tZW50Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvaW5mcmEvYXNzaWdubWVudC9hc3NpZ25tZW50LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEYXNoYm9hcmRGaWx0ZXJDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy9pbmZyYS9kYXNoYm9hcmQtZmlsdGVyL2Rhc2hib2FyZC1maWx0ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IERlZmVyTG9hZENvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL2luZnJhL2RlZmVyLWxvYWQvZGVmZXItbG9hZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRXJyb3JCb3VuZGFyeUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL2luZnJhL2Vycm9yLWJvdW5kYXJ5L2Vycm9yLWJvdW5kYXJ5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGbG93Q29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvaW5mcmEvQ29udGFpbmVycy9mbG93LWNvbnRhaW5lci9mbG93LWNvbnRhaW5lci5jb21wb25lbnQnO1xuaW1wb3J0IHsgTW9kYWxWaWV3Q29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvaW5mcmEvQ29udGFpbmVycy9tb2RhbC12aWV3LWNvbnRhaW5lci9tb2RhbC12aWV3LWNvbnRhaW5lci5jb21wb25lbnQnO1xuaW1wb3J0IHsgTXVsdGlTdGVwQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvaW5mcmEvbXVsdGktc3RlcC9tdWx0aS1zdGVwLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBOYXZiYXJDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy9pbmZyYS9uYXZiYXIvbmF2YmFyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBSZWZlcmVuY2VDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy9pbmZyYS9yZWZlcmVuY2UvcmVmZXJlbmNlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBSZWdpb25Db21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy9pbmZyYS9yZWdpb24vcmVnaW9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBSb290Q29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvaW5mcmEvcm9vdC1jb250YWluZXIvcm9vdC1jb250YWluZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFN0YWdlc0NvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL2luZnJhL3N0YWdlcy9zdGFnZXMuY29tcG9uZW50JztcbmltcG9ydCB7IFN1YlRhYnNDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy90ZW1wbGF0ZS9zdWItdGFicy9zdWItdGFicy5jb21wb25lbnQnO1xuaW1wb3J0IHsgVmlld0NvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL2luZnJhL3ZpZXcvdmlldy5jb21wb25lbnQnO1xuaW1wb3J0IHsgVmlld0NvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL2luZnJhL0NvbnRhaW5lcnMvdmlldy1jb250YWluZXIvdmlldy1jb250YWluZXIuY29tcG9uZW50JztcblxuLy8gRmllbGQgY29tcG9uZW50c1xuaW1wb3J0IHsgQXV0b0NvbXBsZXRlQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvZmllbGQvYXV0by1jb21wbGV0ZS9hdXRvLWNvbXBsZXRlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDYW5jZWxBbGVydENvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL2ZpZWxkL2NhbmNlbC1hbGVydC9jYW5jZWwtYWxlcnQuY29tcG9uZW50JztcbmltcG9ydCB7IENoZWNrQm94Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvZmllbGQvY2hlY2stYm94L2NoZWNrLWJveC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ3VycmVuY3lDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy9maWVsZC9jdXJyZW5jeS9jdXJyZW5jeS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGF0ZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL2ZpZWxkL2RhdGUvZGF0ZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGF0ZVRpbWVDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy9maWVsZC9kYXRlLXRpbWUvZGF0ZS10aW1lLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEZWNpbWFsQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvZmllbGQvZGVjaW1hbC9kZWNpbWFsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEcm9wZG93bkNvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL2ZpZWxkL2Ryb3Bkb3duL2Ryb3Bkb3duLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBFbWFpbENvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL2ZpZWxkL2VtYWlsL2VtYWlsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHcm91cENvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL2ZpZWxkL2dyb3VwL2dyb3VwLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJbnRlZ2VyQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvZmllbGQvaW50ZWdlci9pbnRlZ2VyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBMaXN0Vmlld0FjdGlvbkJ1dHRvbnNDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy9maWVsZC9saXN0LXZpZXctYWN0aW9uLWJ1dHRvbnMvbGlzdC12aWV3LWFjdGlvbi1idXR0b25zLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQZXJjZW50YWdlQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvZmllbGQvcGVyY2VudGFnZS9wZXJjZW50YWdlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQaG9uZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL2ZpZWxkL3Bob25lL3Bob25lLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBSYWRpb0J1dHRvbnNDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy9maWVsZC9yYWRpby1idXR0b25zL3JhZGlvLWJ1dHRvbnMuY29tcG9uZW50JztcbmltcG9ydCB7IFNlbWFudGljTGlua0NvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL2ZpZWxkL3NlbWFudGljLWxpbmsvc2VtYW50aWMtbGluay5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGV4dEFyZWFDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy9maWVsZC90ZXh0LWFyZWEvdGV4dC1hcmVhLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUZXh0Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvZmllbGQvdGV4dC90ZXh0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUZXh0Q29udGVudENvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL2ZpZWxkL3RleHQtY29udGVudC90ZXh0LWNvbnRlbnQuY29tcG9uZW50JztcbmltcG9ydCB7IFRleHRJbnB1dENvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL2ZpZWxkL3RleHQtaW5wdXQvdGV4dC1pbnB1dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGltZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL2ZpZWxkL3RpbWUvdGltZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVXJsQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvZmllbGQvdXJsL3VybC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVXNlclJlZmVyZW5jZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL2ZpZWxkL3VzZXItcmVmZXJlbmNlL3VzZXItcmVmZXJlbmNlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTY2FsYXJMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvZmllbGQvc2NhbGFyLWxpc3Qvc2NhbGFyLWxpc3QuY29tcG9uZW50JztcbmltcG9ydCB7IFJpY2hUZXh0Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvZmllbGQvcmljaC10ZXh0L3JpY2gtdGV4dC5jb21wb25lbnQnO1xuXG4vLyBUZW1wbGF0ZSBjb21wb25lbnRzXG5pbXBvcnQgeyBBcHBTaGVsbENvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL3RlbXBsYXRlL2FwcC1zaGVsbC9hcHAtc2hlbGwuY29tcG9uZW50JztcbmltcG9ydCB7IEJhbm5lclBhZ2VDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy90ZW1wbGF0ZS9iYW5uZXItcGFnZS9iYW5uZXItcGFnZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ2FzZVN1bW1hcnlDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy90ZW1wbGF0ZS9jYXNlLXN1bW1hcnkvY2FzZS1zdW1tYXJ5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDYXNlVmlld0NvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL3RlbXBsYXRlL2Nhc2Utdmlldy9jYXNlLXZpZXcuY29tcG9uZW50JztcbmltcG9ydCB7IENvbmZpcm1hdGlvbkNvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL3RlbXBsYXRlL2NvbmZpcm1hdGlvbi9jb25maXJtYXRpb24uY29tcG9uZW50JztcbmltcG9ydCB7IERhdGFSZWZlcmVuY2VDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy90ZW1wbGF0ZS9kYXRhLXJlZmVyZW5jZS9kYXRhLXJlZmVyZW5jZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGVmYXVsdEZvcm1Db21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy90ZW1wbGF0ZS9kZWZhdWx0LWZvcm0vZGVmYXVsdC1mb3JtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEZXRhaWxzQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvdGVtcGxhdGUvZGV0YWlscy9kZXRhaWxzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEZXRhaWxzTmFycm93V2lkZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL3RlbXBsYXRlL2RldGFpbHMtbmFycm93LXdpZGUvZGV0YWlscy1uYXJyb3ctd2lkZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGV0YWlsc09uZUNvbHVtbkNvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL3RlbXBsYXRlL2RldGFpbHMtb25lLWNvbHVtbi9kZXRhaWxzLW9uZS1jb2x1bW4uY29tcG9uZW50JztcbmltcG9ydCB7IERldGFpbHNTdWJUYWJzQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvdGVtcGxhdGUvZGV0YWlscy1zdWItdGFicy9kZXRhaWxzLXN1Yi10YWJzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEZXRhaWxzVGhyZWVDb2x1bW5Db21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy90ZW1wbGF0ZS9kZXRhaWxzLXRocmVlLWNvbHVtbi9kZXRhaWxzLXRocmVlLWNvbHVtbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGV0YWlsc1R3b0NvbHVtbkNvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL3RlbXBsYXRlL2RldGFpbHMtdHdvLWNvbHVtbi9kZXRhaWxzLXR3by1jb2x1bW4uY29tcG9uZW50JztcbmltcG9ydCB7IERldGFpbHNXaWRlTmFycm93Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvdGVtcGxhdGUvZGV0YWlscy13aWRlLW5hcnJvdy9kZXRhaWxzLXdpZGUtbmFycm93LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEeW5hbWljVGFic0NvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL3RlbXBsYXRlL2R5bmFtaWMtdGFicy9keW5hbWljLXRhYnMuY29tcG9uZW50JztcbmltcG9ydCB7IEZpZWxkR3JvdXBMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvdGVtcGxhdGUvZmllbGQtZ3JvdXAtbGlzdC9maWVsZC1ncm91cC1saXN0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGaWVsZEdyb3VwVGVtcGxhdGVDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy90ZW1wbGF0ZS9maWVsZC1ncm91cC10ZW1wbGF0ZS9maWVsZC1ncm91cC10ZW1wbGF0ZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRmllbGRWYWx1ZUxpc3RDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy90ZW1wbGF0ZS9maWVsZC12YWx1ZS1saXN0L2ZpZWxkLXZhbHVlLWxpc3QuY29tcG9uZW50JztcbmltcG9ydCB7IElubGluZURhc2hib2FyZENvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL3RlbXBsYXRlL2lubGluZS1kYXNoYm9hcmQvaW5saW5lLWRhc2hib2FyZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgSW5saW5lRGFzaGJvYXJkUGFnZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL3RlbXBsYXRlL2lubGluZS1kYXNoYm9hcmQtcGFnZS9pbmxpbmUtZGFzaGJvYXJkLXBhZ2UuY29tcG9uZW50JztcbmltcG9ydCB7IExpc3RQYWdlQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvdGVtcGxhdGUvbGlzdC1wYWdlL2xpc3QtcGFnZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgTGlzdFZpZXdDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy90ZW1wbGF0ZS9saXN0LXZpZXcvbGlzdC12aWV3LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNdWx0aVJlZmVyZW5jZVJlYWRvbmx5Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvdGVtcGxhdGUvbXVsdGktcmVmZXJlbmNlLXJlYWRvbmx5L211bHRpLXJlZmVyZW5jZS1yZWFkb25seS5jb21wb25lbnQnO1xuaW1wb3J0IHsgTXVsdGlzZWxlY3RDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy9maWVsZC9tdWx0aXNlbGVjdC9tdWx0aXNlbGVjdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgTmFycm93V2lkZUZvcm1Db21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy90ZW1wbGF0ZS9uYXJyb3ctd2lkZS1mb3JtL25hcnJvdy13aWRlLWZvcm0uY29tcG9uZW50JztcbmltcG9ydCB7IE9uZUNvbHVtbkNvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL3RlbXBsYXRlL29uZS1jb2x1bW4vb25lLWNvbHVtbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgT25lQ29sdW1uUGFnZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL3RlbXBsYXRlL29uZS1jb2x1bW4tcGFnZS9vbmUtY29sdW1uLXBhZ2UuY29tcG9uZW50JztcbmltcG9ydCB7IE9uZUNvbHVtblRhYkNvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL3RlbXBsYXRlL29uZS1jb2x1bW4tdGFiL29uZS1jb2x1bW4tdGFiLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQYWdlQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvdGVtcGxhdGUvcGFnZS9wYWdlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQcm9tb3RlZEZpbHRlcnNDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy90ZW1wbGF0ZS9wcm9tb3RlZC1maWx0ZXJzL3Byb21vdGVkLWZpbHRlcnMuY29tcG9uZW50JztcbmltcG9ydCB7IFNpbXBsZVRhYmxlQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvdGVtcGxhdGUvc2ltcGxlLXRhYmxlL3NpbXBsZS10YWJsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2ltcGxlVGFibGVNYW51YWxDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy90ZW1wbGF0ZS9zaW1wbGUtdGFibGUtbWFudWFsL3NpbXBsZS10YWJsZS1tYW51YWwuY29tcG9uZW50JztcbmltcG9ydCB7IFNpbXBsZVRhYmxlU2VsZWN0Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvdGVtcGxhdGUvc2ltcGxlLXRhYmxlLXNlbGVjdC9zaW1wbGUtdGFibGUtc2VsZWN0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTaW5nbGVSZWZlcmVuY2VSZWFkb25seUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL3RlbXBsYXRlL3NpbmdsZS1yZWZlcmVuY2UtcmVhZG9ubHkvc2luZ2xlLXJlZmVyZW5jZS1yZWFkb25seS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGhyZWVDb2x1bW5Db21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy90ZW1wbGF0ZS90aHJlZS1jb2x1bW4vdGhyZWUtY29sdW1uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUaHJlZUNvbHVtblBhZ2VDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy90ZW1wbGF0ZS90aHJlZS1jb2x1bW4tcGFnZS90aHJlZS1jb2x1bW4tcGFnZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVHdvQ29sdW1uQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvdGVtcGxhdGUvdHdvLWNvbHVtbi90d28tY29sdW1uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUd29Db2x1bW5QYWdlQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvdGVtcGxhdGUvdHdvLWNvbHVtbi1wYWdlL3R3by1jb2x1bW4tcGFnZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVHdvQ29sdW1uVGFiQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvdGVtcGxhdGUvdHdvLWNvbHVtbi10YWIvdHdvLWNvbHVtbi10YWIuY29tcG9uZW50JztcbmltcG9ydCB7IFdpZGVOYXJyb3dGb3JtQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvdGVtcGxhdGUvd2lkZS1uYXJyb3ctZm9ybS93aWRlLW5hcnJvdy1mb3JtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBXaWRlTmFycm93UGFnZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL3RlbXBsYXRlL3dpZGUtbmFycm93LXBhZ2Uvd2lkZS1uYXJyb3ctcGFnZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgV3NzTmF2QmFyQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvdGVtcGxhdGUvd3NzLW5hdi1iYXIvd3NzLW5hdi1iYXIuY29tcG9uZW50JztcblxuLy8gV2lkZ2V0IGNvbXBvbmVudHNcbmltcG9ydCB7IEFwcEFubm91bmNlbWVudENvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL3dpZGdldC9hcHAtYW5ub3VuY2VtZW50L2FwcC1hbm5vdW5jZW1lbnQuY29tcG9uZW50JztcbmltcG9ydCB7IEF0dGFjaG1lbnRDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy93aWRnZXQvYXR0YWNobWVudC9hdHRhY2htZW50LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDYXNlSGlzdG9yeUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL3dpZGdldC9jYXNlLWhpc3RvcnkvY2FzZS1oaXN0b3J5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGaWxlVXRpbGl0eUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL3dpZGdldC9maWxlLXV0aWxpdHkvZmlsZS11dGlsaXR5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGZWVkQ29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvd2lkZ2V0L2ZlZWQtY29udGFpbmVyL2ZlZWQtY29udGFpbmVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBMaXN0VXRpbGl0eUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL3dpZGdldC9saXN0LXV0aWxpdHkvbGlzdC11dGlsaXR5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBRdWlja0NyZWF0ZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL3dpZGdldC9xdWljay1jcmVhdGUvcXVpY2stY3JlYXRlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUb2RvQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvd2lkZ2V0L3RvZG8vdG9kby5jb21wb25lbnQnO1xuXG4vLyBEZXNpZ24gU3lzdGVtIGNvbXBvbmVudHNcbmltcG9ydCB7IEFsZXJ0QmFubmVyQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvZGVzaWduU3lzdGVtRXh0ZW5zaW9uL2FsZXJ0LWJhbm5lci9hbGVydC1iYW5uZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEFsZXJ0Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvZGVzaWduU3lzdGVtRXh0ZW5zaW9uL2FsZXJ0L2FsZXJ0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCYW5uZXJDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy9kZXNpZ25TeXN0ZW1FeHRlbnNpb24vYmFubmVyL2Jhbm5lci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ2FzZUNyZWF0ZVN0YWdlQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvZGVzaWduU3lzdGVtRXh0ZW5zaW9uL2Nhc2UtY3JlYXRlLXN0YWdlL2Nhc2UtY3JlYXRlLXN0YWdlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGaWVsZEdyb3VwQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvZGVzaWduU3lzdGVtRXh0ZW5zaW9uL2ZpZWxkLWdyb3VwL2ZpZWxkLWdyb3VwLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNYXRlcmlhbENhc2VTdW1tYXJ5Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvZGVzaWduU3lzdGVtRXh0ZW5zaW9uL21hdGVyaWFsLWNhc2Utc3VtbWFyeS9tYXRlcmlhbC1jYXNlLXN1bW1hcnkuY29tcG9uZW50JztcbmltcG9ydCB7IE1hdGVyaWFsRGV0YWlsc0NvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL2Rlc2lnblN5c3RlbUV4dGVuc2lvbi9tYXRlcmlhbC1kZXRhaWxzL21hdGVyaWFsLWRldGFpbHMuY29tcG9uZW50JztcbmltcG9ydCB7IE1hdGVyaWFsRGV0YWlsc0ZpZWxkc0NvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL2Rlc2lnblN5c3RlbUV4dGVuc2lvbi9tYXRlcmlhbC1kZXRhaWxzLWZpZWxkcy9tYXRlcmlhbC1kZXRhaWxzLWZpZWxkcy5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWF0ZXJpYWxTdW1tYXJ5SXRlbUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL2Rlc2lnblN5c3RlbUV4dGVuc2lvbi9tYXRlcmlhbC1zdW1tYXJ5LWl0ZW0vbWF0ZXJpYWwtc3VtbWFyeS1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNYXRlcmlhbFN1bW1hcnlMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvZGVzaWduU3lzdGVtRXh0ZW5zaW9uL21hdGVyaWFsLXN1bW1hcnktbGlzdC9tYXRlcmlhbC1zdW1tYXJ5LWxpc3QuY29tcG9uZW50JztcbmltcG9ydCB7IE1hdGVyaWFsVXRpbGl0eUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL2Rlc2lnblN5c3RlbUV4dGVuc2lvbi9tYXRlcmlhbC11dGlsaXR5L21hdGVyaWFsLXV0aWxpdHkuY29tcG9uZW50JztcbmltcG9ydCB7IE1hdGVyaWFsVmVydGljYWxUYWJzQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvZGVzaWduU3lzdGVtRXh0ZW5zaW9uL21hdGVyaWFsLXZlcnRpY2FsLXRhYnMvbWF0ZXJpYWwtdmVydGljYWwtdGFicy5jb21wb25lbnQnO1xuaW1wb3J0IHsgT3BlcmF0b3JDb21wb25lbnQgfSBmcm9tICcuLi8uLi9fY29tcG9uZW50cy9kZXNpZ25TeXN0ZW1FeHRlbnNpb24vb3BlcmF0b3Ivb3BlcmF0b3IuY29tcG9uZW50JztcbmltcG9ydCB7IFB1bHNlQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvZGVzaWduU3lzdGVtRXh0ZW5zaW9uL3B1bHNlL3B1bHNlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBSaWNoVGV4dEVkaXRvckNvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL2Rlc2lnblN5c3RlbUV4dGVuc2lvbi9yaWNoLXRleHQtZWRpdG9yL3JpY2gtdGV4dC1lZGl0b3IuY29tcG9uZW50JztcbmltcG9ydCB7IFdzc1F1aWNrQ3JlYXRlQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vX2NvbXBvbmVudHMvZGVzaWduU3lzdGVtRXh0ZW5zaW9uL3dzcy1xdWljay1jcmVhdGUvd3NzLXF1aWNrLWNyZWF0ZS5jb21wb25lbnQnO1xuXG4vLyBwZWdhU2RrQ29tcG9uZW50TWFwIGlzIHRoZSBKU09OIG9iamVjdCB3aGVyZSB3ZSdsbCBzdG9yZSB0aGUgY29tcG9uZW50cyB0aGF0IGFyZVxuLy8gdGhlIGRlZmF1bHQgaW1wbGVtZW50YXRpb25zIHByb3ZpZGVkIGJ5IHRoZSBTREsuIFRoZXNlIHdpbGwgYmUgdXNlZCBpZiB0aGVyZSBpc24ndFxuLy8gYW4gZW50cnkgaW4gdGhlIGxvY2FsU2RrQ29tcG9uZW50TWFwXG5cbi8vIE5PVEU6IEEgZmV3IGNvbXBvbmVudHMgaGF2ZSBub24tc3RhbmRhcmQgY2FwaXRhbGl6YXRpb246XG4vLyAgJ3JlZmVyZW5jZScgaXMgd2hhdCdzIGluIHRoZSBtZXRhZGF0YSwgbm90IFJlZmVyZW5jZVxuLy8gICdUb2RvJyBpcyB3aGF0J3MgaW4gdGhlIG1ldGFkYXRhLCBub3QgVG9Eb1xuLy8gIEFsc28sIG5vdGUgdGhhdCBcIkNoZWNrYm94XCIgY29tcG9uZW50IGlzIG5hbWVkL2V4cG9ydGVkIGFzIENoZWNrYm94Q29tcG9uZW50XG5cbmNvbnN0IHBlZ2FTZGtDb21wb25lbnRNYXAgPSB7XG4gIEFjdGlvbkJ1dHRvbnM6IEFjdGlvbkJ1dHRvbnNDb21wb25lbnQsXG4gIEFsZXJ0OiBBbGVydENvbXBvbmVudCxcbiAgQWxlcnRCYW5uZXI6IEFsZXJ0QmFubmVyQ29tcG9uZW50LFxuICAvLyAgICdBY3Rpb25CdXR0b25zRm9yRmlsZVV0aWwnOiBBY3Rpb25CdXR0b25zRm9yRmlsZVV0aWwsXG4gIEFwcEFubm91bmNlbWVudDogQXBwQW5ub3VuY2VtZW50Q29tcG9uZW50LFxuICBBcHBTaGVsbDogQXBwU2hlbGxDb21wb25lbnQsXG4gIEFzc2lnbm1lbnQ6IEFzc2lnbm1lbnRDb21wb25lbnQsXG4gIEFzc2lnbm1lbnRDYXJkOiBBc3NpZ25tZW50Q2FyZENvbXBvbmVudCxcbiAgQXR0YWNobWVudDogQXR0YWNobWVudENvbXBvbmVudCxcbiAgQXV0b0NvbXBsZXRlOiBBdXRvQ29tcGxldGVDb21wb25lbnQsXG4gIEJhbm5lcjogQmFubmVyQ29tcG9uZW50LFxuICBCYW5uZXJQYWdlOiBCYW5uZXJQYWdlQ29tcG9uZW50LFxuICBDYW5jZWxBbGVydDogQ2FuY2VsQWxlcnRDb21wb25lbnQsXG4gIENhc2VDcmVhdGVTdGFnZTogQ2FzZUNyZWF0ZVN0YWdlQ29tcG9uZW50LFxuICBDYXNlSGlzdG9yeTogQ2FzZUhpc3RvcnlDb21wb25lbnQsXG4gIENhc2VTdW1tYXJ5OiBDYXNlU3VtbWFyeUNvbXBvbmVudCxcbiAgQ2FzZVN1bW1hcnlGaWVsZHM6IE1hdGVyaWFsQ2FzZVN1bW1hcnlDb21wb25lbnQsXG4gIENhc2VWaWV3OiBDYXNlVmlld0NvbXBvbmVudCxcbiAgLy8gICAnQ2FzZVZpZXdBY3Rpb25zTWVudSc6IENhc2VWaWV3QWN0aW9uc01lbnUsXG4gIENoZWNrYm94OiBDaGVja0JveENvbXBvbmVudCxcbiAgQ29uZmlybWF0aW9uOiBDb25maXJtYXRpb25Db21wb25lbnQsXG4gIEN1cnJlbmN5OiBDdXJyZW5jeUNvbXBvbmVudCxcbiAgRGFzaGJvYXJkRmlsdGVyOiBEYXNoYm9hcmRGaWx0ZXJDb21wb25lbnQsXG4gIERhdGFSZWZlcmVuY2U6IERhdGFSZWZlcmVuY2VDb21wb25lbnQsXG4gIERhdGU6IERhdGVDb21wb25lbnQsXG4gIERhdGVUaW1lOiBEYXRlVGltZUNvbXBvbmVudCxcbiAgRGVjaW1hbDogRGVjaW1hbENvbXBvbmVudCxcbiAgRGVmYXVsdEZvcm06IERlZmF1bHRGb3JtQ29tcG9uZW50LFxuICBEZWZlckxvYWQ6IERlZmVyTG9hZENvbXBvbmVudCxcbiAgRGV0YWlsczogRGV0YWlsc0NvbXBvbmVudCxcbiAgRGV0YWlsc0ZpZWxkczogTWF0ZXJpYWxEZXRhaWxzRmllbGRzQ29tcG9uZW50LFxuICBEZXRhaWxzT25lQ29sdW1uOiBEZXRhaWxzT25lQ29sdW1uQ29tcG9uZW50LFxuICBEZXRhaWxzU3ViVGFiczogRGV0YWlsc1N1YlRhYnNDb21wb25lbnQsXG4gIERldGFpbHNUaHJlZUNvbHVtbjogRGV0YWlsc1RocmVlQ29sdW1uQ29tcG9uZW50LFxuICBEZXRhaWxzVHdvQ29sdW1uOiBEZXRhaWxzVHdvQ29sdW1uQ29tcG9uZW50LFxuICBEcm9wZG93bjogRHJvcGRvd25Db21wb25lbnQsXG4gIER5bmFtaWNUYWJzOiBEeW5hbWljVGFic0NvbXBvbmVudCxcbiAgRW1haWw6IEVtYWlsQ29tcG9uZW50LFxuICBFcnJvckJvdW5kYXJ5OiBFcnJvckJvdW5kYXJ5Q29tcG9uZW50LFxuICBGZWVkQ29udGFpbmVyOiBGZWVkQ29udGFpbmVyQ29tcG9uZW50LFxuICBGaWVsZEdyb3VwOiBGaWVsZEdyb3VwQ29tcG9uZW50LFxuICBGaWVsZEdyb3VwTGlzdDogRmllbGRHcm91cExpc3RDb21wb25lbnQsXG4gIEZpZWxkR3JvdXBUZW1wbGF0ZTogRmllbGRHcm91cFRlbXBsYXRlQ29tcG9uZW50LFxuICBGaWVsZFZhbHVlTGlzdDogRmllbGRWYWx1ZUxpc3RDb21wb25lbnQsXG4gIEZpbGVVdGlsaXR5OiBGaWxlVXRpbGl0eUNvbXBvbmVudCxcbiAgRmxvd0NvbnRhaW5lcjogRmxvd0NvbnRhaW5lckNvbXBvbmVudCxcbiAgR3JvdXA6IEdyb3VwQ29tcG9uZW50LFxuICAvLyAgICdGb2xsb3dlcnMnOiBGb2xsb3dlcnMsXG4gIElubGluZURhc2hib2FyZDogSW5saW5lRGFzaGJvYXJkQ29tcG9uZW50LFxuICBJbmxpbmVEYXNoYm9hcmRQYWdlOiBJbmxpbmVEYXNoYm9hcmRQYWdlQ29tcG9uZW50LFxuICBJbnRlZ2VyOiBJbnRlZ2VyQ29tcG9uZW50LFxuICAvLyAgICdMZWZ0QWxpZ25WZXJ0aWNhbFRhYnMnOiBMZWZ0QWxpZ25WZXJ0aWNhbFRhYnMsXG4gIExpc3RQYWdlOiBMaXN0UGFnZUNvbXBvbmVudCxcbiAgTGlzdFV0aWxpdHk6IExpc3RVdGlsaXR5Q29tcG9uZW50LFxuICBMaXN0VmlldzogTGlzdFZpZXdDb21wb25lbnQsXG4gIExpc3RWaWV3QWN0aW9uQnV0dG9uczogTGlzdFZpZXdBY3Rpb25CdXR0b25zQ29tcG9uZW50LFxuICBNYXRlcmlhbERldGFpbHM6IE1hdGVyaWFsRGV0YWlsc0NvbXBvbmVudCxcbiAgTWF0ZXJpYWxVdGlsaXR5OiBNYXRlcmlhbFV0aWxpdHlDb21wb25lbnQsXG4gIE1vZGFsVmlld0NvbnRhaW5lcjogTW9kYWxWaWV3Q29udGFpbmVyQ29tcG9uZW50LFxuICBNdWx0aVJlZmVyZW5jZVJlYWRPbmx5OiBNdWx0aVJlZmVyZW5jZVJlYWRvbmx5Q29tcG9uZW50LFxuICBNdWx0aXNlbGVjdDogTXVsdGlzZWxlY3RDb21wb25lbnQsXG4gIE11bHRpU3RlcDogTXVsdGlTdGVwQ29tcG9uZW50LFxuICAvLyAgICdOYXJyb3dXaWRlJzogTmFycm93V2lkZUZvcm1Db21wb25lbnQsXG4gIE5hcnJvd1dpZGVEZXRhaWxzOiBEZXRhaWxzTmFycm93V2lkZUNvbXBvbmVudCxcbiAgTmFycm93V2lkZUZvcm06IE5hcnJvd1dpZGVGb3JtQ29tcG9uZW50LFxuICAvLyAgICdOYXJyb3dXaWRlUGFnZSc6IE5hcnJvd1dpZGVQYWdlLFxuICBOYXZCYXI6IE5hdmJhckNvbXBvbmVudCxcbiAgT25lQ29sdW1uOiBPbmVDb2x1bW5Db21wb25lbnQsXG4gIE9uZUNvbHVtblBhZ2U6IE9uZUNvbHVtblBhZ2VDb21wb25lbnQsXG4gIE9uZUNvbHVtblRhYjogT25lQ29sdW1uVGFiQ29tcG9uZW50LFxuICBPcGVyYXRvcjogT3BlcmF0b3JDb21wb25lbnQsXG4gIFBhZ2U6IFBhZ2VDb21wb25lbnQsXG4gIFBlcmNlbnRhZ2U6IFBlcmNlbnRhZ2VDb21wb25lbnQsXG4gIFBob25lOiBQaG9uZUNvbXBvbmVudCxcbiAgUHJvbW90ZWRGaWx0ZXJzOiBQcm9tb3RlZEZpbHRlcnNDb21wb25lbnQsXG4gIFB1bHNlOiBQdWxzZUNvbXBvbmVudCxcbiAgUXVpY2tDcmVhdGU6IFF1aWNrQ3JlYXRlQ29tcG9uZW50LFxuICByZWZlcmVuY2U6IFJlZmVyZW5jZUNvbXBvbmVudCxcbiAgUmFkaW9CdXR0b25zOiBSYWRpb0J1dHRvbnNDb21wb25lbnQsXG4gIFJlZ2lvbjogUmVnaW9uQ29tcG9uZW50LFxuICBSaWNoVGV4dDogUmljaFRleHRDb21wb25lbnQsXG4gIFJpY2hUZXh0RWRpdG9yOiBSaWNoVGV4dEVkaXRvckNvbXBvbmVudCxcbiAgUm9vdENvbnRhaW5lcjogUm9vdENvbnRhaW5lckNvbXBvbmVudCxcbiAgU2NhbGFyTGlzdDogU2NhbGFyTGlzdENvbXBvbmVudCxcbiAgU2VtYW50aWNMaW5rOiBTZW1hbnRpY0xpbmtDb21wb25lbnQsXG4gIFNpbXBsZVRhYmxlOiBTaW1wbGVUYWJsZUNvbXBvbmVudCxcbiAgU2ltcGxlVGFibGVNYW51YWw6IFNpbXBsZVRhYmxlTWFudWFsQ29tcG9uZW50LFxuICBTaW1wbGVUYWJsZVNlbGVjdDogU2ltcGxlVGFibGVTZWxlY3RDb21wb25lbnQsXG4gIFNpbmdsZVJlZmVyZW5jZVJlYWRPbmx5OiBTaW5nbGVSZWZlcmVuY2VSZWFkb25seUNvbXBvbmVudCxcbiAgU3RhZ2VzOiBTdGFnZXNDb21wb25lbnQsXG4gIFN1YlRhYnM6IFN1YlRhYnNDb21wb25lbnQsXG4gIFN1bW1hcnlJdGVtOiBNYXRlcmlhbFN1bW1hcnlJdGVtQ29tcG9uZW50LFxuICBTdW1tYXJ5TGlzdDogTWF0ZXJpYWxTdW1tYXJ5TGlzdENvbXBvbmVudCxcbiAgVGV4dDogVGV4dENvbXBvbmVudCxcbiAgVGV4dEFyZWE6IFRleHRBcmVhQ29tcG9uZW50LFxuICBUZXh0Q29udGVudDogVGV4dENvbnRlbnRDb21wb25lbnQsXG4gIFRleHRJbnB1dDogVGV4dElucHV0Q29tcG9uZW50LFxuICBUaHJlZUNvbHVtbjogVGhyZWVDb2x1bW5Db21wb25lbnQsXG4gIFRocmVlQ29sdW1uUGFnZTogVGhyZWVDb2x1bW5QYWdlQ29tcG9uZW50LFxuICBUaW1lOiBUaW1lQ29tcG9uZW50LFxuICBUb2RvOiBUb2RvQ29tcG9uZW50LFxuICBUd29Db2x1bW46IFR3b0NvbHVtbkNvbXBvbmVudCxcbiAgVHdvQ29sdW1uUGFnZTogVHdvQ29sdW1uUGFnZUNvbXBvbmVudCxcbiAgVHdvQ29sdW1uVGFiOiBUd29Db2x1bW5UYWJDb21wb25lbnQsXG4gIFVSTDogVXJsQ29tcG9uZW50LFxuICBVc2VyUmVmZXJlbmNlOiBVc2VyUmVmZXJlbmNlQ29tcG9uZW50LFxuICBWZXJ0aWNhbFRhYnM6IE1hdGVyaWFsVmVydGljYWxUYWJzQ29tcG9uZW50LFxuICBWaWV3OiBWaWV3Q29tcG9uZW50LFxuICBWaWV3Q29udGFpbmVyOiBWaWV3Q29udGFpbmVyQ29tcG9uZW50LFxuICAvLyAgICdXaWRlTmFycm93JzogV2lkZU5hcnJvdyxcbiAgV2lkZU5hcnJvd0RldGFpbHM6IERldGFpbHNXaWRlTmFycm93Q29tcG9uZW50LFxuICBXaWRlTmFycm93Rm9ybTogV2lkZU5hcnJvd0Zvcm1Db21wb25lbnQsXG4gIFdpZGVOYXJyb3dQYWdlOiBXaWRlTmFycm93UGFnZUNvbXBvbmVudCxcbiAgV3NzTmF2QmFyOiBXc3NOYXZCYXJDb21wb25lbnQsXG4gIFdzc1F1aWNrQ3JlYXRlOiBXc3NRdWlja0NyZWF0ZUNvbXBvbmVudFxufTtcblxuZXhwb3J0IGRlZmF1bHQgcGVnYVNka0NvbXBvbmVudE1hcDtcbiJdfQ==
@@ -7,6 +7,8 @@ import * as i2 from "@angular/common";
7
7
  export class MaterialCaseSummaryComponent {
8
8
  constructor(utils) {
9
9
  this.utils = utils;
10
+ this.localizedVal = PCore.getLocaleUtils().getLocaleValue;
11
+ this.localeCategory = 'ModalContainer';
10
12
  }
11
13
  ngOnInit() {
12
14
  this.updatePrimaryWithStatus();
@@ -49,6 +51,7 @@ export class MaterialCaseSummaryComponent {
49
51
  updatePrimaryWithStatus() {
50
52
  this.primaryFieldsWithStatus$ = [];
51
53
  for (const prim of this.primaryFields$) {
54
+ prim.config.value = this.localizedVal(prim.config.value, this.localeCategory);
52
55
  this.primaryFieldsWithStatus$.push(prim);
53
56
  }
54
57
  if (this.bShowStatus$) {
@@ -63,11 +66,11 @@ export class MaterialCaseSummaryComponent {
63
66
  }
64
67
  }
65
68
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MaterialCaseSummaryComponent, deps: [{ token: i1.Utils }], target: i0.ɵɵFactoryTarget.Component }); }
66
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: MaterialCaseSummaryComponent, isStandalone: true, selector: "app-material-case-summary", inputs: { status$: "status$", bShowStatus$: "bShowStatus$", primaryFields$: "primaryFields$", secondaryFields$: "secondaryFields$" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"psdk-case-summary-fields\">\n <dl class=\"psdk-case-summary-fields-primary\">\n <div *ngFor=\"let field of primaryFieldsWithStatus$\" class=\"psdk-csf-primary-field\">\n <dt class=\"psdk-csf-primary-field-header\">\n {{ field.config.label }}\n </dt>\n <dd *ngIf=\"field.config.value === ''; else hasValue\" class=\"psdk-csf-primary-field-data\">\n <ng-container [ngSwitch]=\"field.type.toLowerCase()\">\n <label *ngSwitchCase=\"'caseoperator'\">operator</label>\n <span *ngSwitchDefault class=\"psdk-csf-text-style\">---</span>\n </ng-container>\n </dd>\n <ng-template #hasValue>\n <dd class=\"psdk-csf-primary-field-data\" [ngSwitch]=\"field.type.toLowerCase()\">\n <span *ngSwitchCase=\"'textinput'\" class=\"psdk-csf-text-style\">{{ field.config.value }}</span>\n <span *ngSwitchCase=\"'status'\" class=\"psdk-csf-status-style\">{{ field.config.value }}</span>\n <a *ngSwitchCase=\"'phone'\" as=\"a\" href=\"tel: {{ field.config.value }}\">{{ field.config.value }}</a>\n <a *ngSwitchCase=\"'email'\" href=\"mailto: {{ field.config.value }}\">{{ field.config.value }}</a>\n <span *ngSwitchCase=\"'date'\" class=\"psdk-csf-text-style\">{{ field.config.value }}</span>\n <label *ngSwitchCase=\"'caseoperator'\">operator</label>\n <span *ngSwitchDefault class=\"psdk-csf-text-style\">{{ field.config.value }}</span>\n </dd>\n </ng-template>\n </div>\n </dl>\n</div>\n<div class=\"psdk-case-summary-fields\">\n <dl *ngFor=\"let field of secondaryFields$\" class=\"psdk-case-summary-fields-secondary\">\n <div\n *ngIf=\"\n field.config?.label?.toLowerCase() == 'create operator' || field.config?.label?.toLowerCase() == 'update operator';\n else hasSecondaryValue\n \"\n >\n <component-mapper name=\"Operator\" [props]=\"{ pConn$: field?.kid }\"></component-mapper>\n </div>\n <ng-template #hasSecondaryValue>\n <div class=\"psdk-csf-secondary-field\">\n <dt class=\"psdk-csf-secondary-field-header\">\n {{ field.config.displayLabel || field.config.label }}\n </dt>\n <dd class=\"psdk-csf-secondary-field-data\">\n <div [ngSwitch]=\"field.type\">\n <label *ngSwitchCase=\"'UserReference'\" class=\"psdk-secondary-value\">{{ field.config.value.userName || '---' }}</label>\n <label *ngSwitchCase=\"'Checkbox'\" class=\"psdk-secondary-value\">{{ field.config.falseLabel || '---' }}</label>\n <label *ngSwitchDefault class=\"psdk-secondary-value\">{{ field.config.value || '---' }}</label>\n </div>\n </dd>\n </div>\n </ng-template>\n </dl>\n</div>\n", styles: [".psdk-case-summary{display:block;margin:.625rem}.psdk-case-summary-primary,.psdk-case-summary-secondary,.psdk-case-summary-status{text-align:left;margin-bottom:.75rem}.psdk-case-summary-status-data{display:block;background-color:var(--app-primary-lightest-color);color:var(--app-primary-color);padding:0rem .625rem;display:inline;font-size:.75rem;font-weight:700;text-transform:uppercase;line-height:1.5rem}.psdk-case-summary-primary .label{font-weight:600}.psdk-case-summary-primary .data{font-weight:600;font-size:1.625rem}.psdk-case-summary-secondary .label{font-weight:600}.psdk-case-summary-secondary .data{font-weight:600;padding-left:1.25rem}.psdk-case-summary-fields{padding:1rem;display:grid;grid-row-gap:1rem}.psdk-case-summary-fields-primary{grid-template-columns:20ch 1fr;display:grid;grid-column-gap:1rem;grid-row-gap:1rem}.psdk-csf-primary-field{display:grid;grid-template-columns:1fr;grid-column-gap:0rem}.psdk-csf-primary-field-header{word-break:break-word;grid-column-start:1;grid-row-start:1;max-width:max-content;font-size:.8125rem;font-weight:400;color:var(--app-field-header-color)}.psdk-csf-primary-field-data{word-break:break-word;grid-column-start:1;grid-row-start:2;margin-inline-start:unset}.psdk-case-summary-fields-secondary{width:100%;display:grid;grid-template-columns:1fr;grid-column-gap:1rem;grid-row-gap:.5rem}.psdk-csf-secondary-field{display:grid;grid-template-columns:auto;grid-column-gap:1rem}.psdk-csf-secondary-field-header{word-break:break-word;grid-column-start:1;grid-row-start:1;max-width:max-content;font-size:.8125rem;font-weight:400;color:var(--app-field-header-color);align-items:center;display:flex}.psdk-csf-secondary-field-data{word-break:break-word;grid-column-start:2;grid-row-start:1;margin-inline-start:unset}span.psdk-csf-text-style{font-size:1.125rem;font-weight:600}span.psdk-csf-status-style{background-color:var(--app-details-status-background);border-radius:.125rem;color:var(--app-details-status-color);display:inline-block;font-size:.75rem;font-weight:700;line-height:1.25rem;height:1.25rem;padding:0 .5rem;text-transform:uppercase}.psdk-secondary-value{font-size:1rem}\n"], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(function () { return CommonModule; }) }, { kind: "directive", type: i0.forwardRef(function () { return i2.NgForOf; }), selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i0.forwardRef(function () { return i2.NgIf; }), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i0.forwardRef(function () { return i2.NgSwitch; }), selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i0.forwardRef(function () { return i2.NgSwitchCase; }), selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i0.forwardRef(function () { return i2.NgSwitchDefault; }), selector: "[ngSwitchDefault]" }, { kind: "component", type: i0.forwardRef(function () { return ComponentMapperComponent; }), selector: "component-mapper", inputs: ["name", "props", "errorMsg", "outputEvents", "parent"] }] }); }
69
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: MaterialCaseSummaryComponent, isStandalone: true, selector: "app-material-case-summary", inputs: { status$: "status$", bShowStatus$: "bShowStatus$", primaryFields$: "primaryFields$", secondaryFields$: "secondaryFields$" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"psdk-case-summary-fields\">\n <dl class=\"psdk-case-summary-fields-primary\">\n <div *ngFor=\"let field of primaryFieldsWithStatus$\" class=\"psdk-csf-primary-field\">\n <dt class=\"psdk-csf-primary-field-header\">\n {{ field.config.label }}\n </dt>\n <dd *ngIf=\"field.config.value === ''; else hasValue\" class=\"psdk-csf-primary-field-data\">\n <ng-container [ngSwitch]=\"field.type.toLowerCase()\">\n <label *ngSwitchCase=\"'caseoperator'\">operator</label>\n <span *ngSwitchDefault class=\"psdk-csf-text-style\">---</span>\n </ng-container>\n </dd>\n <ng-template #hasValue>\n <dd class=\"psdk-csf-primary-field-data\" [ngSwitch]=\"field.type.toLowerCase()\">\n <span *ngSwitchCase=\"'textinput'\" class=\"psdk-csf-text-style\">{{ field.config.value }}</span>\n <span *ngSwitchCase=\"'status'\" class=\"psdk-csf-status-style\">{{ field.config.value }}</span>\n <a *ngSwitchCase=\"'phone'\" as=\"a\" href=\"tel: {{ field.config.value }}\">{{ field.config.value }}</a>\n <a *ngSwitchCase=\"'email'\" href=\"mailto: {{ field.config.value }}\">{{ field.config.value }}</a>\n <span *ngSwitchCase=\"'date'\" class=\"psdk-csf-text-style\">{{ field.config.value }}</span>\n <label *ngSwitchCase=\"'caseoperator'\">operator</label>\n <span *ngSwitchDefault class=\"psdk-csf-text-style\">{{ field.config.value }}</span>\n </dd>\n </ng-template>\n </div>\n </dl>\n</div>\n<div class=\"psdk-case-summary-fields\">\n <dl *ngFor=\"let field of secondaryFields$\" class=\"psdk-case-summary-fields-secondary\">\n <div\n *ngIf=\"\n field.config?.label?.toLowerCase() == 'create operator' ||\n field.displayLabel.toLowerCase() == 'create operator' ||\n field.config?.label?.toLowerCase() == 'update operator' ||\n field.displayLabel.toLowerCase() == 'update operator';\n else hasSecondaryValue\n \"\n >\n <component-mapper name=\"Operator\" [props]=\"{ pConn$: field?.kid, displayLabel: field?.displayLabel }\"></component-mapper>\n </div>\n <ng-template #hasSecondaryValue>\n <div class=\"psdk-csf-secondary-field\">\n <dt class=\"psdk-csf-secondary-field-header\">\n {{ field.config.displayLabel || field.config.label }}\n </dt>\n <dd class=\"psdk-csf-secondary-field-data\">\n <div [ngSwitch]=\"field.type\">\n <label *ngSwitchCase=\"'UserReference'\" class=\"psdk-secondary-value\">{{ field.config.value.userName || '---' }}</label>\n <label *ngSwitchCase=\"'Checkbox'\" class=\"psdk-secondary-value\">{{ field.config.falseLabel || '---' }}</label>\n <label *ngSwitchDefault class=\"psdk-secondary-value\">{{ field.config.value || '---' }}</label>\n </div>\n </dd>\n </div>\n </ng-template>\n </dl>\n</div>\n", styles: [".psdk-case-summary{display:block;margin:.625rem}.psdk-case-summary-primary,.psdk-case-summary-secondary,.psdk-case-summary-status{text-align:left;margin-bottom:.75rem}.psdk-case-summary-status-data{display:block;background-color:var(--app-primary-lightest-color);color:var(--app-primary-color);padding:0rem .625rem;display:inline;font-size:.75rem;font-weight:700;text-transform:uppercase;line-height:1.5rem}.psdk-case-summary-primary .label{font-weight:600}.psdk-case-summary-primary .data{font-weight:600;font-size:1.625rem}.psdk-case-summary-secondary .label{font-weight:600}.psdk-case-summary-secondary .data{font-weight:600;padding-left:1.25rem}.psdk-case-summary-fields{padding:1rem;display:grid;grid-row-gap:1rem}.psdk-case-summary-fields-primary{grid-template-columns:20ch 1fr;display:grid;grid-column-gap:1rem;grid-row-gap:1rem}.psdk-csf-primary-field{display:grid;grid-template-columns:1fr;grid-column-gap:0rem}.psdk-csf-primary-field-header{word-break:break-word;grid-column-start:1;grid-row-start:1;max-width:max-content;font-size:.8125rem;font-weight:400;color:var(--app-field-header-color)}.psdk-csf-primary-field-data{word-break:break-word;grid-column-start:1;grid-row-start:2;margin-inline-start:unset}.psdk-case-summary-fields-secondary{width:100%;display:grid;grid-template-columns:1fr;grid-column-gap:1rem;grid-row-gap:.5rem}.psdk-csf-secondary-field{display:grid;grid-template-columns:auto;grid-column-gap:1rem}.psdk-csf-secondary-field-header{word-break:break-word;grid-column-start:1;grid-row-start:1;max-width:max-content;font-size:.8125rem;font-weight:400;color:var(--app-field-header-color);align-items:center;display:flex}.psdk-csf-secondary-field-data{word-break:break-word;grid-column-start:2;grid-row-start:1;margin-inline-start:unset}span.psdk-csf-text-style{font-size:1.125rem;font-weight:600}span.psdk-csf-status-style{background-color:var(--app-details-status-background);border-radius:.125rem;color:var(--app-details-status-color);display:inline-block;font-size:.75rem;font-weight:700;line-height:1.25rem;height:1.25rem;padding:0 .5rem;text-transform:uppercase}.psdk-secondary-value{font-size:1rem}\n"], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(function () { return CommonModule; }) }, { kind: "directive", type: i0.forwardRef(function () { return i2.NgForOf; }), selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i0.forwardRef(function () { return i2.NgIf; }), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i0.forwardRef(function () { return i2.NgSwitch; }), selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i0.forwardRef(function () { return i2.NgSwitchCase; }), selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i0.forwardRef(function () { return i2.NgSwitchDefault; }), selector: "[ngSwitchDefault]" }, { kind: "component", type: i0.forwardRef(function () { return ComponentMapperComponent; }), selector: "component-mapper", inputs: ["name", "props", "errorMsg", "outputEvents", "parent"] }] }); }
67
70
  }
68
71
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MaterialCaseSummaryComponent, decorators: [{
69
72
  type: Component,
70
- args: [{ selector: 'app-material-case-summary', standalone: true, imports: [CommonModule, forwardRef(() => ComponentMapperComponent)], template: "<div class=\"psdk-case-summary-fields\">\n <dl class=\"psdk-case-summary-fields-primary\">\n <div *ngFor=\"let field of primaryFieldsWithStatus$\" class=\"psdk-csf-primary-field\">\n <dt class=\"psdk-csf-primary-field-header\">\n {{ field.config.label }}\n </dt>\n <dd *ngIf=\"field.config.value === ''; else hasValue\" class=\"psdk-csf-primary-field-data\">\n <ng-container [ngSwitch]=\"field.type.toLowerCase()\">\n <label *ngSwitchCase=\"'caseoperator'\">operator</label>\n <span *ngSwitchDefault class=\"psdk-csf-text-style\">---</span>\n </ng-container>\n </dd>\n <ng-template #hasValue>\n <dd class=\"psdk-csf-primary-field-data\" [ngSwitch]=\"field.type.toLowerCase()\">\n <span *ngSwitchCase=\"'textinput'\" class=\"psdk-csf-text-style\">{{ field.config.value }}</span>\n <span *ngSwitchCase=\"'status'\" class=\"psdk-csf-status-style\">{{ field.config.value }}</span>\n <a *ngSwitchCase=\"'phone'\" as=\"a\" href=\"tel: {{ field.config.value }}\">{{ field.config.value }}</a>\n <a *ngSwitchCase=\"'email'\" href=\"mailto: {{ field.config.value }}\">{{ field.config.value }}</a>\n <span *ngSwitchCase=\"'date'\" class=\"psdk-csf-text-style\">{{ field.config.value }}</span>\n <label *ngSwitchCase=\"'caseoperator'\">operator</label>\n <span *ngSwitchDefault class=\"psdk-csf-text-style\">{{ field.config.value }}</span>\n </dd>\n </ng-template>\n </div>\n </dl>\n</div>\n<div class=\"psdk-case-summary-fields\">\n <dl *ngFor=\"let field of secondaryFields$\" class=\"psdk-case-summary-fields-secondary\">\n <div\n *ngIf=\"\n field.config?.label?.toLowerCase() == 'create operator' || field.config?.label?.toLowerCase() == 'update operator';\n else hasSecondaryValue\n \"\n >\n <component-mapper name=\"Operator\" [props]=\"{ pConn$: field?.kid }\"></component-mapper>\n </div>\n <ng-template #hasSecondaryValue>\n <div class=\"psdk-csf-secondary-field\">\n <dt class=\"psdk-csf-secondary-field-header\">\n {{ field.config.displayLabel || field.config.label }}\n </dt>\n <dd class=\"psdk-csf-secondary-field-data\">\n <div [ngSwitch]=\"field.type\">\n <label *ngSwitchCase=\"'UserReference'\" class=\"psdk-secondary-value\">{{ field.config.value.userName || '---' }}</label>\n <label *ngSwitchCase=\"'Checkbox'\" class=\"psdk-secondary-value\">{{ field.config.falseLabel || '---' }}</label>\n <label *ngSwitchDefault class=\"psdk-secondary-value\">{{ field.config.value || '---' }}</label>\n </div>\n </dd>\n </div>\n </ng-template>\n </dl>\n</div>\n", styles: [".psdk-case-summary{display:block;margin:.625rem}.psdk-case-summary-primary,.psdk-case-summary-secondary,.psdk-case-summary-status{text-align:left;margin-bottom:.75rem}.psdk-case-summary-status-data{display:block;background-color:var(--app-primary-lightest-color);color:var(--app-primary-color);padding:0rem .625rem;display:inline;font-size:.75rem;font-weight:700;text-transform:uppercase;line-height:1.5rem}.psdk-case-summary-primary .label{font-weight:600}.psdk-case-summary-primary .data{font-weight:600;font-size:1.625rem}.psdk-case-summary-secondary .label{font-weight:600}.psdk-case-summary-secondary .data{font-weight:600;padding-left:1.25rem}.psdk-case-summary-fields{padding:1rem;display:grid;grid-row-gap:1rem}.psdk-case-summary-fields-primary{grid-template-columns:20ch 1fr;display:grid;grid-column-gap:1rem;grid-row-gap:1rem}.psdk-csf-primary-field{display:grid;grid-template-columns:1fr;grid-column-gap:0rem}.psdk-csf-primary-field-header{word-break:break-word;grid-column-start:1;grid-row-start:1;max-width:max-content;font-size:.8125rem;font-weight:400;color:var(--app-field-header-color)}.psdk-csf-primary-field-data{word-break:break-word;grid-column-start:1;grid-row-start:2;margin-inline-start:unset}.psdk-case-summary-fields-secondary{width:100%;display:grid;grid-template-columns:1fr;grid-column-gap:1rem;grid-row-gap:.5rem}.psdk-csf-secondary-field{display:grid;grid-template-columns:auto;grid-column-gap:1rem}.psdk-csf-secondary-field-header{word-break:break-word;grid-column-start:1;grid-row-start:1;max-width:max-content;font-size:.8125rem;font-weight:400;color:var(--app-field-header-color);align-items:center;display:flex}.psdk-csf-secondary-field-data{word-break:break-word;grid-column-start:2;grid-row-start:1;margin-inline-start:unset}span.psdk-csf-text-style{font-size:1.125rem;font-weight:600}span.psdk-csf-status-style{background-color:var(--app-details-status-background);border-radius:.125rem;color:var(--app-details-status-color);display:inline-block;font-size:.75rem;font-weight:700;line-height:1.25rem;height:1.25rem;padding:0 .5rem;text-transform:uppercase}.psdk-secondary-value{font-size:1rem}\n"] }]
73
+ args: [{ selector: 'app-material-case-summary', standalone: true, imports: [CommonModule, forwardRef(() => ComponentMapperComponent)], template: "<div class=\"psdk-case-summary-fields\">\n <dl class=\"psdk-case-summary-fields-primary\">\n <div *ngFor=\"let field of primaryFieldsWithStatus$\" class=\"psdk-csf-primary-field\">\n <dt class=\"psdk-csf-primary-field-header\">\n {{ field.config.label }}\n </dt>\n <dd *ngIf=\"field.config.value === ''; else hasValue\" class=\"psdk-csf-primary-field-data\">\n <ng-container [ngSwitch]=\"field.type.toLowerCase()\">\n <label *ngSwitchCase=\"'caseoperator'\">operator</label>\n <span *ngSwitchDefault class=\"psdk-csf-text-style\">---</span>\n </ng-container>\n </dd>\n <ng-template #hasValue>\n <dd class=\"psdk-csf-primary-field-data\" [ngSwitch]=\"field.type.toLowerCase()\">\n <span *ngSwitchCase=\"'textinput'\" class=\"psdk-csf-text-style\">{{ field.config.value }}</span>\n <span *ngSwitchCase=\"'status'\" class=\"psdk-csf-status-style\">{{ field.config.value }}</span>\n <a *ngSwitchCase=\"'phone'\" as=\"a\" href=\"tel: {{ field.config.value }}\">{{ field.config.value }}</a>\n <a *ngSwitchCase=\"'email'\" href=\"mailto: {{ field.config.value }}\">{{ field.config.value }}</a>\n <span *ngSwitchCase=\"'date'\" class=\"psdk-csf-text-style\">{{ field.config.value }}</span>\n <label *ngSwitchCase=\"'caseoperator'\">operator</label>\n <span *ngSwitchDefault class=\"psdk-csf-text-style\">{{ field.config.value }}</span>\n </dd>\n </ng-template>\n </div>\n </dl>\n</div>\n<div class=\"psdk-case-summary-fields\">\n <dl *ngFor=\"let field of secondaryFields$\" class=\"psdk-case-summary-fields-secondary\">\n <div\n *ngIf=\"\n field.config?.label?.toLowerCase() == 'create operator' ||\n field.displayLabel.toLowerCase() == 'create operator' ||\n field.config?.label?.toLowerCase() == 'update operator' ||\n field.displayLabel.toLowerCase() == 'update operator';\n else hasSecondaryValue\n \"\n >\n <component-mapper name=\"Operator\" [props]=\"{ pConn$: field?.kid, displayLabel: field?.displayLabel }\"></component-mapper>\n </div>\n <ng-template #hasSecondaryValue>\n <div class=\"psdk-csf-secondary-field\">\n <dt class=\"psdk-csf-secondary-field-header\">\n {{ field.config.displayLabel || field.config.label }}\n </dt>\n <dd class=\"psdk-csf-secondary-field-data\">\n <div [ngSwitch]=\"field.type\">\n <label *ngSwitchCase=\"'UserReference'\" class=\"psdk-secondary-value\">{{ field.config.value.userName || '---' }}</label>\n <label *ngSwitchCase=\"'Checkbox'\" class=\"psdk-secondary-value\">{{ field.config.falseLabel || '---' }}</label>\n <label *ngSwitchDefault class=\"psdk-secondary-value\">{{ field.config.value || '---' }}</label>\n </div>\n </dd>\n </div>\n </ng-template>\n </dl>\n</div>\n", styles: [".psdk-case-summary{display:block;margin:.625rem}.psdk-case-summary-primary,.psdk-case-summary-secondary,.psdk-case-summary-status{text-align:left;margin-bottom:.75rem}.psdk-case-summary-status-data{display:block;background-color:var(--app-primary-lightest-color);color:var(--app-primary-color);padding:0rem .625rem;display:inline;font-size:.75rem;font-weight:700;text-transform:uppercase;line-height:1.5rem}.psdk-case-summary-primary .label{font-weight:600}.psdk-case-summary-primary .data{font-weight:600;font-size:1.625rem}.psdk-case-summary-secondary .label{font-weight:600}.psdk-case-summary-secondary .data{font-weight:600;padding-left:1.25rem}.psdk-case-summary-fields{padding:1rem;display:grid;grid-row-gap:1rem}.psdk-case-summary-fields-primary{grid-template-columns:20ch 1fr;display:grid;grid-column-gap:1rem;grid-row-gap:1rem}.psdk-csf-primary-field{display:grid;grid-template-columns:1fr;grid-column-gap:0rem}.psdk-csf-primary-field-header{word-break:break-word;grid-column-start:1;grid-row-start:1;max-width:max-content;font-size:.8125rem;font-weight:400;color:var(--app-field-header-color)}.psdk-csf-primary-field-data{word-break:break-word;grid-column-start:1;grid-row-start:2;margin-inline-start:unset}.psdk-case-summary-fields-secondary{width:100%;display:grid;grid-template-columns:1fr;grid-column-gap:1rem;grid-row-gap:.5rem}.psdk-csf-secondary-field{display:grid;grid-template-columns:auto;grid-column-gap:1rem}.psdk-csf-secondary-field-header{word-break:break-word;grid-column-start:1;grid-row-start:1;max-width:max-content;font-size:.8125rem;font-weight:400;color:var(--app-field-header-color);align-items:center;display:flex}.psdk-csf-secondary-field-data{word-break:break-word;grid-column-start:2;grid-row-start:1;margin-inline-start:unset}span.psdk-csf-text-style{font-size:1.125rem;font-weight:600}span.psdk-csf-status-style{background-color:var(--app-details-status-background);border-radius:.125rem;color:var(--app-details-status-color);display:inline-block;font-size:.75rem;font-weight:700;line-height:1.25rem;height:1.25rem;padding:0 .5rem;text-transform:uppercase}.psdk-secondary-value{font-size:1rem}\n"] }]
71
74
  }], ctorParameters: function () { return [{ type: i1.Utils }]; }, propDecorators: { status$: [{
72
75
  type: Input
73
76
  }], bShowStatus$: [{
@@ -77,4 +80,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
77
80
  }], secondaryFields$: [{
78
81
  type: Input
79
82
  }] } });
80
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0ZXJpYWwtY2FzZS1zdW1tYXJ5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItc2RrLWNvbXBvbmVudHMvc3JjL2xpYi9fY29tcG9uZW50cy9kZXNpZ25TeXN0ZW1FeHRlbnNpb24vbWF0ZXJpYWwtY2FzZS1zdW1tYXJ5L21hdGVyaWFsLWNhc2Utc3VtbWFyeS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLXNkay1jb21wb25lbnRzL3NyYy9saWIvX2NvbXBvbmVudHMvZGVzaWduU3lzdGVtRXh0ZW5zaW9uL21hdGVyaWFsLWNhc2Utc3VtbWFyeS9tYXRlcmlhbC1jYXNlLXN1bW1hcnkuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxLQUFLLEVBQUUsVUFBVSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw4REFBOEQsQ0FBQzs7OztBQVN4RyxNQUFNLE9BQU8sNEJBQTRCO0lBUXZDLFlBQW9CLEtBQVk7UUFBWixVQUFLLEdBQUwsS0FBSyxDQUFPO0lBQUcsQ0FBQztJQUVwQyxRQUFRO1FBQ04sSUFBSSxDQUFDLHVCQUF1QixFQUFFLENBQUM7UUFDL0IsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO1FBQ3ZELElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBRUQsMERBQTBEO0lBQzFELFdBQVc7UUFDVCxJQUFJLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztRQUMvQixJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFD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LCBPbkNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBVdGlscyB9IGZyb20gJy4uLy4uLy4uL19oZWxwZXJzL3V0aWxzJztcbmltcG9ydCB7IENvbXBvbmVudE1hcHBlckNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL19icmlkZ2UvY29tcG9uZW50LW1hcHBlci9jb21wb25lbnQtbWFwcGVyLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1tYXRlcmlhbC1jYXNlLXN1bW1hcnknLFxuICB0ZW1wbGF0ZVVybDogJy4vbWF0ZXJpYWwtY2FzZS1zdW1tYXJ5LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbWF0ZXJpYWwtY2FzZS1zdW1tYXJ5LmNvbXBvbmVudC5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIGZvcndhcmRSZWYoKCkgPT4gQ29tcG9uZW50TWFwcGVyQ29tcG9uZW50KV1cbn0pXG5leHBvcnQgY2xhc3MgTWF0ZXJpYWxDYXNlU3VtbWFyeUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcbiAgQElucHV0KCkgc3RhdHVzJDogc3RyaW5nO1xuICBASW5wdXQoKSBiU2hvd1N0YXR1cyQ6IGJvb2xlYW47XG4gIEBJbnB1dCgpIHByaW1hcnlGaWVsZHMkOiBhbnlbXTtcbiAgQElucHV0KCkgc2Vjb25kYXJ5RmllbGRzJDogYW55W107XG5cbiAgcHJpbWFyeUZpZWxkc1dpdGhTdGF0dXMkOiBhbnlbXTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHV0aWxzOiBVdGlscykge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnVwZGF0ZVByaW1hcnlXaXRoU3RhdHVzKCk7XG4gICAgdGhpcy51cGRhdGVMYWJlbEFuZERhdGUodGhpcy5wcmltYXJ5RmllbGRzV2l0aFN0YXR1cyQpO1xuICAgIHRoaXMudXBkYXRlTGFiZWxBbmREYXRlKHRoaXMuc2Vjb25kYXJ5RmllbGRzJCk7XG4gIH1cblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc29uYXJqcy9uby1pZGVudGljYWwtZnVuY3Rpb25zXG4gIG5nT25DaGFuZ2VzKCkge1xuICAgIHRoaXMudXBkYXRlUHJpbWFyeVdpdGhTdGF0dXMoKTtcbiAgICB0aGlzLnVwZGF0ZUxhYmVsQW5kRGF0ZSh0aGlzLnByaW1hcnlGaWVsZHNXaXRoU3RhdHVzJCk7XG4gICAgdGhpcy51cGRhdGVMYWJlbEFuZERhdGUodGhpcy5zZWNvbmRhcnlGaWVsZHMkKTtcbiAgfVxuXG4gIHVwZGF0ZUxhYmVsQW5kRGF0ZShhckRhdGE6IGFueVtdKSB7XG4gICAgZm9yIChjb25zdCBmaWVsZCBvZiBhckRhdGEpIHtcbiAgICAgIHN3aXRjaCAoZmllbGQudHlwZS50b0xvd2VyQ2FzZSgpKSB7XG4gICAgICAgIGNhc2UgJ2Nhc2VvcGVyYXRvcic6XG4gICAgICAgICAgaWYgKGZpZWxkLmNvbmZpZy5sYWJlbC50b0xvd2VyQ2FzZSgpID09ICdjcmVhdGUgb3BlcmF0b3InKSB7XG4gICAgICAgICAgICBmaWVsZC5jb25maWcuZGlzcGxheUxhYmVsID0gZmllbGQuY29uZmlnLmNyZWF0ZUxhYmVsO1xuICAgICAgICAgIH0gZWxzZSBpZiAoZmllbGQuY29uZmlnLmxhYmVsLnRvTG93ZXJDYXNlKCkgPT0gJ3VwZGF0ZSBvcGVyYXRvcicpIHtcbiAgICAgICAgICAgIGZpZWxkLmNvbmZpZy5kaXNwbGF5TGFiZWwgPSBmaWVsZC5jb25maWcudXBkYXRlTGFiZWw7XG4gICAgICAgICAgfVxuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICdkYXRlJzpcbiAgICAgICAgICBmaWVsZC5jb25maWcudmFsdWUgPSB0aGlzLnV0aWxzLmdlbmVyYXRlRGF0ZShmaWVsZC5jb25maWcudmFsdWUsICdEYXRlLUxvbmcnKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAndXNlcnJlZmVyZW5jZSc6XG4gICAgICAgIGNhc2UgJ2RlY2ltYWwnOlxuICAgICAgICBjYXNlICdkcm9wZG93bic6XG4gICAgICAgICAgZmllbGQuY29uZmlnLmRpc3BsYXlMYWJlbCA9IGZpZWxkLmNvbmZpZy5sYWJlbDtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAnY2hlY2tib3gnOlxuICAgICAgICAgIGZpZWxkLmNvbmZpZy5kaXNwbGF5TGFiZWwgPSBmaWVsZC5jb25maWcuY2FwdGlvbjtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICB1cGRhdGVQcmltYXJ5V2l0aFN0YXR1cygpIHtcbiAgICB0aGlzLnByaW1hcnlGaWVsZHNXaXRoU3RhdHVzJCA9IFtdO1xuICAgIGZvciAoY29uc3QgcHJpbSBvZiB0aGlzLnByaW1hcnlGaWVsZHMkKSB7XG4gICAgICB0aGlzLnByaW1hcnlGaWVsZHNXaXRoU3RhdHVzJC5wdXNoKHByaW0pO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmJTaG93U3RhdHVzJCkge1xuICAgICAgY29uc3Qgb1N0YXR1cyA9IHsgdHlwZTogJ3N0YXR1cycsIGNvbmZpZzogeyB2YWx1ZTogdGhpcy5zdGF0dXMkLCBsYWJlbDogJ1N0YXR1cycgfSB9O1xuXG4gICAgICBjb25zdCBjb3VudCA9IHRoaXMucHJpbWFyeUZpZWxkc1dpdGhTdGF0dXMkLmxlbmd0aDtcbiAgICAgIGlmIChjb3VudCA8IDIpIHtcbiAgICAgICAgdGhpcy5wcmltYXJ5RmllbGRzV2l0aFN0YXR1cyQucHVzaChvU3RhdHVzKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMucHJpbWFyeUZpZWxkc1dpdGhTdGF0dXMkLnNwbGljZSgxLCAwLCBvU3RhdHVzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJwc2RrLWNhc2Utc3VtbWFyeS1maWVsZHNcIj5cbiAgPGRsIGNsYXNzPVwicHNkay1jYXNlLXN1bW1hcnktZmllbGRzLXByaW1hcnlcIj5cbiAgICA8ZGl2ICpuZ0Zvcj1cImxldCBmaWVsZCBvZiBwcmltYXJ5RmllbGRzV2l0aFN0YXR1cyRcIiBjbGFzcz1cInBzZGstY3NmLXByaW1hcnktZmllbGRcIj5cbiAgICAgIDxkdCBjbGFzcz1cInBzZGstY3NmLXByaW1hcnktZmllbGQtaGVhZGVyXCI+XG4gICAgICAgIHt7IGZpZWxkLmNvbmZpZy5sYWJlbCB9fVxuICAgICAgPC9kdD5cbiAgICAgIDxkZCAqbmdJZj1cImZpZWxkLmNvbmZpZy52YWx1ZSA9PT0gJyc7IGVsc2UgaGFzVmFsdWVcIiBjbGFzcz1cInBzZGstY3NmLXByaW1hcnktZmllbGQtZGF0YVwiPlxuICAgICAgICA8bmctY29udGFpbmVyIFtuZ1N3aXRjaF09XCJmaWVsZC50eXBlLnRvTG93ZXJDYXNlKClcIj5cbiAgICAgICAgICA8bGFiZWwgKm5nU3dpdGNoQ2FzZT1cIidjYXNlb3BlcmF0b3InXCI+b3BlcmF0b3I8L2xhYmVsPlxuICAgICAgICAgIDxzcGFuICpuZ1N3aXRjaERlZmF1bHQgY2xhc3M9XCJwc2RrLWNzZi10ZXh0LXN0eWxlXCI+LS0tPC9zcGFuPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvZGQ+XG4gICAgICA8bmctdGVtcGxhdGUgI2hhc1ZhbHVlPlxuICAgICAgICA8ZGQgY2xhc3M9XCJwc2RrLWNzZi1wcmltYXJ5LWZpZWxkLWRhdGFcIiBbbmdTd2l0Y2hdPVwiZmllbGQudHlwZS50b0xvd2VyQ2FzZSgpXCI+XG4gICAgICAgICAgPHNwYW4gKm5nU3dpdGNoQ2FzZT1cIid0ZXh0aW5wdXQnXCIgY2xhc3M9XCJwc2RrLWNzZi10ZXh0LXN0eWxlXCI+e3sgZmllbGQuY29uZmlnLnZhbHVlIH19PC9zcGFuPlxuICAgICAgICAgIDxzcGFuICpuZ1N3aXRjaENhc2U9XCInc3RhdHVzJ1wiIGNsYXNzPVwicHNkay1jc2Ytc3RhdHVzLXN0eWxlXCI+e3sgZmllbGQuY29uZmlnLnZhbHVlIH19PC9zcGFuPlxuICAgICAgICAgIDxhICpuZ1N3aXRjaENhc2U9XCIncGhvbmUnXCIgYXM9XCJhXCIgaHJlZj1cInRlbDoge3sgZmllbGQuY29uZmlnLnZhbHVlIH19XCI+e3sgZmllbGQuY29uZmlnLnZhbHVlIH19PC9hPlxuICAgICAgICAgIDxhICpuZ1N3aXRjaENhc2U9XCInZW1haWwnXCIgaHJlZj1cIm1haWx0bzoge3sgZmllbGQuY29uZmlnLnZhbHVlIH19XCI+e3sgZmllbGQuY29uZmlnLnZhbHVlIH19PC9hPlxuICAgICAgICAgIDxzcGFuICpuZ1N3aXRjaENhc2U9XCInZGF0ZSdcIiBjbGFzcz1cInBzZGstY3NmLXRleHQtc3R5bGVcIj57eyBmaWVsZC5jb25maWcudmFsdWUgfX08L3NwYW4+XG4gICAgICAgICAgPGxhYmVsICpuZ1N3aXRjaENhc2U9XCInY2FzZW9wZXJhdG9yJ1wiPm9wZXJhdG9yPC9sYWJlbD5cbiAgICAgICAgICA8c3BhbiAqbmdTd2l0Y2hEZWZhdWx0IGNsYXNzPVwicHNkay1jc2YtdGV4dC1zdHlsZVwiPnt7IGZpZWxkLmNvbmZpZy52YWx1ZSB9fTwvc3Bhbj5cbiAgICAgICAgPC9kZD5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPC9kaXY+XG4gIDwvZGw+XG48L2Rpdj5cbjxkaXYgY2xhc3M9XCJwc2RrLWNhc2Utc3VtbWFyeS1maWVsZHNcIj5cbiAgPGRsICpuZ0Zvcj1cImxldCBmaWVsZCBvZiBzZWNvbmRhcnlGaWVsZHMkXCIgY2xhc3M9XCJwc2RrLWNhc2Utc3VtbWFyeS1maWVsZHMtc2Vjb25kYXJ5XCI+XG4gICAgPGRpdlxuICAgICAgKm5nSWY9XCJcbiAgICAgICAgZmllbGQuY29uZmlnPy5sYWJlbD8udG9Mb3dlckNhc2UoKSA9PSAnY3JlYXRlIG9wZXJhdG9yJyB8fCBmaWVsZC5jb25maWc/LmxhYmVsPy50b0xvd2VyQ2FzZSgpID09ICd1cGRhdGUgb3BlcmF0b3InO1xuICAgICAgICBlbHNlIGhhc1NlY29uZGFyeVZhbHVlXG4gICAgICBcIlxuICAgID5cbiAgICAgIDxjb21wb25lbnQtbWFwcGVyIG5hbWU9XCJPcGVyYXRvclwiIFtwcm9wc109XCJ7IHBDb25uJDogZmllbGQ/LmtpZCB9XCI+PC9jb21wb25lbnQtbWFwcGVyPlxuICAgIDwvZGl2PlxuICAgIDxuZy10ZW1wbGF0ZSAjaGFzU2Vjb25kYXJ5VmFsdWU+XG4gICAgICA8ZGl2IGNsYXNzPVwicHNkay1jc2Ytc2Vjb25kYXJ5LWZpZWxkXCI+XG4gICAgICAgIDxkdCBjbGFzcz1cInBzZGstY3NmLXNlY29uZGFyeS1maWVsZC1oZWFkZXJcIj5cbiAgICAgICAgICB7eyBmaWVsZC5jb25maWcuZGlzcGxheUxhYmVsIHx8IGZpZWxkLmNvbmZpZy5sYWJlbCB9fVxuICAgICAgICA8L2R0PlxuICAgICAgICA8ZGQgY2xhc3M9XCJwc2RrLWNzZi1zZWNvbmRhcnktZmllbGQtZGF0YVwiPlxuICAgICAgICAgIDxkaXYgW25nU3dpdGNoXT1cImZpZWxkLnR5cGVcIj5cbiAgICAgICAgICAgIDxsYWJlbCAqbmdTd2l0Y2hDYXNlPVwiJ1VzZXJSZWZlcmVuY2UnXCIgY2xhc3M9XCJwc2RrLXNlY29uZGFyeS12YWx1ZVwiPnt7IGZpZWxkLmNvbmZpZy52YWx1ZS51c2VyTmFtZSB8fCAnLS0tJyB9fTwvbGFiZWw+XG4gICAgICAgICAgICA8bGFiZWwgKm5nU3dpdGNoQ2FzZT1cIidDaGVja2JveCdcIiBjbGFzcz1cInBzZGstc2Vjb25kYXJ5LXZhbHVlXCI+e3sgZmllbGQuY29uZmlnLmZhbHNlTGFiZWwgfHwgJy0tLScgfX08L2xhYmVsPlxuICAgICAgICAgICAgPGxhYmVsICpuZ1N3aXRjaERlZmF1bHQgY2xhc3M9XCJwc2RrLXNlY29uZGFyeS12YWx1ZVwiPnt7IGZpZWxkLmNvbmZpZy52YWx1ZSB8fCAnLS0tJyB9fTwvbGFiZWw+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGQ+XG4gICAgICA8L2Rpdj5cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L2RsPlxuPC9kaXY+XG4iXX0=
83
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0ZXJpYWwtY2FzZS1zdW1tYXJ5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItc2RrLWNvbXBvbmVudHMvc3JjL2xpYi9fY29tcG9uZW50cy9kZXNpZ25TeXN0ZW1FeHRlbnNpb24vbWF0ZXJpYWwtY2FzZS1zdW1tYXJ5L21hdGVyaWFsLWNhc2Utc3VtbWFyeS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLXNkay1jb21wb25lbnRzL3NyYy9saWIvX2NvbXBvbmVudHMvZGVzaWduU3lzdGVtRXh0ZW5zaW9uL21hdGVyaWFsLWNhc2Utc3VtbWFyeS9tYXRlcmlhbC1jYXNlLXN1bW1hcnkuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxLQUFLLEVBQUUsVUFBVSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw4REFBOEQsQ0FBQzs7OztBQVN4RyxNQUFNLE9BQU8sNEJBQTRCO0lBUXZDLFlBQW9CLEtBQVk7UUFBWixVQUFLLEdBQUwsS0FBSyxDQUFPO1FBQ2hDLGlCQUFZLEdBQUcsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDLGNBQWMsQ0FBQztRQUNyRCxtQkFBYyxHQUFHLGdCQUFnQixDQUFDO0lBRkMsQ0FBQztJQUdwQyxRQUFRO1FBQ04sSUFBSSxDQUFDLHVCQUF1QixFQUFFLENBQUM7UUFDL0IsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO1FBQ3ZELElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBRUQsMERBQTBE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LEdBQUcsRUFBRSxDQUFDLHdCQUF3QixDQUFDLENBQUM7NEZBRzFELE9BQU87c0JBQWYsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIElucHV0LCBmb3J3YXJkUmVmLCBPbkNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBVdGlscyB9IGZyb20gJy4uLy4uLy4uL19oZWxwZXJzL3V0aWxzJztcbmltcG9ydCB7IENvbXBvbmVudE1hcHBlckNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL19icmlkZ2UvY29tcG9uZW50LW1hcHBlci9jb21wb25lbnQtbWFwcGVyLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1tYXRlcmlhbC1jYXNlLXN1bW1hcnknLFxuICB0ZW1wbGF0ZVVybDogJy4vbWF0ZXJpYWwtY2FzZS1zdW1tYXJ5LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbWF0ZXJpYWwtY2FzZS1zdW1tYXJ5LmNvbXBvbmVudC5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIGZvcndhcmRSZWYoKCkgPT4gQ29tcG9uZW50TWFwcGVyQ29tcG9uZW50KV1cbn0pXG5leHBvcnQgY2xhc3MgTWF0ZXJpYWxDYXNlU3VtbWFyeUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcbiAgQElucHV0KCkgc3RhdHVzJDogc3RyaW5nO1xuICBASW5wdXQoKSBiU2hvd1N0YXR1cyQ6IGJvb2xlYW47XG4gIEBJbnB1dCgpIHByaW1hcnlGaWVsZHMkOiBhbnlbXTtcbiAgQElucHV0KCkgc2Vjb25kYXJ5RmllbGRzJDogYW55W107XG5cbiAgcHJpbWFyeUZpZWxkc1dpdGhTdGF0dXMkOiBhbnlbXTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHV0aWxzOiBVdGlscykge31cbiAgbG9jYWxpemVkVmFsID0gUENvcmUuZ2V0TG9jYWxlVXRpbHMoKS5nZXRMb2NhbGVWYWx1ZTtcbiAgbG9jYWxlQ2F0ZWdvcnkgPSAnTW9kYWxDb250YWluZXInO1xuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnVwZGF0ZVByaW1hcnlXaXRoU3RhdHVzKCk7XG4gICAgdGhpcy51cGRhdGVMYWJlbEFuZERhdGUodGhpcy5wcmltYXJ5RmllbGRzV2l0aFN0YXR1cyQpO1xuICAgIHRoaXMudXBkYXRlTGFiZWxBbmREYXRlKHRoaXMuc2Vjb25kYXJ5RmllbGRzJCk7XG4gIH1cblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc29uYXJqcy9uby1pZGVudGljYWwtZnVuY3Rpb25zXG4gIG5nT25DaGFuZ2VzKCkge1xuICAgIHRoaXMudXBkYXRlUHJpbWFyeVdpdGhTdGF0dXMoKTtcbiAgICB0aGlzLnVwZGF0ZUxhYmVsQW5kRGF0ZSh0aGlzLnByaW1hcnlGaWVsZHNXaXRoU3RhdHVzJCk7XG4gICAgdGhpcy51cGRhdGVMYWJlbEFuZERhdGUodGhpcy5zZWNvbmRhcnlGaWVsZHMkKTtcbiAgfVxuXG4gIHVwZGF0ZUxhYmVsQW5kRGF0ZShhckRhdGE6IGFueVtdKSB7XG4gICAgZm9yIChjb25zdCBmaWVsZCBvZiBhckRhdGEpIHtcbiAgICAgIHN3aXRjaCAoZmllbGQudHlwZS50b0xvd2VyQ2FzZSgpKSB7XG4gICAgICAgIGNhc2UgJ2Nhc2VvcGVyYXRvcic6XG4gICAgICAgICAgaWYgKGZpZWxkLmNvbmZpZy5sYWJlbC50b0xvd2VyQ2FzZSgpID09ICdjcmVhdGUgb3BlcmF0b3InKSB7XG4gICAgICAgICAgICBmaWVsZC5jb25maWcuZGlzcGxheUxhYmVsID0gZmllbGQuY29uZmlnLmNyZWF0ZUxhYmVsO1xuICAgICAgICAgIH0gZWxzZSBpZiAoZmllbGQuY29uZmlnLmxhYmVsLnRvTG93ZXJDYXNlKCkgPT0gJ3VwZGF0ZSBvcGVyYXRvcicpIHtcbiAgICAgICAgICAgIGZpZWxkLmNvbmZpZy5kaXNwbGF5TGFiZWwgPSBmaWVsZC5jb25maWcudXBkYXRlTGFiZWw7XG4gICAgICAgICAgfVxuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICdkYXRlJzpcbiAgICAgICAgICBmaWVsZC5jb25maWcudmFsdWUgPSB0aGlzLnV0aWxzLmdlbmVyYXRlRGF0ZShmaWVsZC5jb25maWcudmFsdWUsICdEYXRlLUxvbmcnKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAndXNlcnJlZmVyZW5jZSc6XG4gICAgICAgIGNhc2UgJ2RlY2ltYWwnOlxuICAgICAgICBjYXNlICdkcm9wZG93bic6XG4gICAgICAgICAgZmllbGQuY29uZmlnLmRpc3BsYXlMYWJlbCA9IGZpZWxkLmNvbmZpZy5sYWJlbDtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAnY2hlY2tib3gnOlxuICAgICAgICAgIGZpZWxkLmNvbmZpZy5kaXNwbGF5TGFiZWwgPSBmaWVsZC5jb25maWcuY2FwdGlvbjtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICB1cGRhdGVQcmltYXJ5V2l0aFN0YXR1cygpIHtcbiAgICB0aGlzLnByaW1hcnlGaWVsZHNXaXRoU3RhdHVzJCA9IFtdO1xuICAgIGZvciAoY29uc3QgcHJpbSBvZiB0aGlzLnByaW1hcnlGaWVsZHMkKSB7XG4gICAgICBwcmltLmNvbmZpZy52YWx1ZSA9IHRoaXMubG9jYWxpemVkVmFsKHByaW0uY29uZmlnLnZhbHVlLCB0aGlzLmxvY2FsZUNhdGVnb3J5KTtcbiAgICAgIHRoaXMucHJpbWFyeUZpZWxkc1dpdGhTdGF0dXMkLnB1c2gocHJpbSk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuYlNob3dTdGF0dXMkKSB7XG4gICAgICBjb25zdCBvU3RhdHVzID0geyB0eXBlOiAnc3RhdHVzJywgY29uZmlnOiB7IHZhbHVlOiB0aGlzLnN0YXR1cyQsIGxhYmVsOiAnU3RhdHVzJyB9IH07XG5cbiAgICAgIGNvbnN0IGNvdW50ID0gdGhpcy5wcmltYXJ5RmllbGRzV2l0aFN0YXR1cyQubGVuZ3RoO1xuICAgICAgaWYgKGNvdW50IDwgMikge1xuICAgICAgICB0aGlzLnByaW1hcnlGaWVsZHNXaXRoU3RhdHVzJC5wdXNoKG9TdGF0dXMpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5wcmltYXJ5RmllbGRzV2l0aFN0YXR1cyQuc3BsaWNlKDEsIDAsIG9TdGF0dXMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInBzZGstY2FzZS1zdW1tYXJ5LWZpZWxkc1wiPlxuICA8ZGwgY2xhc3M9XCJwc2RrLWNhc2Utc3VtbWFyeS1maWVsZHMtcHJpbWFyeVwiPlxuICAgIDxkaXYgKm5nRm9yPVwibGV0IGZpZWxkIG9mIHByaW1hcnlGaWVsZHNXaXRoU3RhdHVzJFwiIGNsYXNzPVwicHNkay1jc2YtcHJpbWFyeS1maWVsZFwiPlxuICAgICAgPGR0IGNsYXNzPVwicHNkay1jc2YtcHJpbWFyeS1maWVsZC1oZWFkZXJcIj5cbiAgICAgICAge3sgZmllbGQuY29uZmlnLmxhYmVsIH19XG4gICAgICA8L2R0PlxuICAgICAgPGRkICpuZ0lmPVwiZmllbGQuY29uZmlnLnZhbHVlID09PSAnJzsgZWxzZSBoYXNWYWx1ZVwiIGNsYXNzPVwicHNkay1jc2YtcHJpbWFyeS1maWVsZC1kYXRhXCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cImZpZWxkLnR5cGUudG9Mb3dlckNhc2UoKVwiPlxuICAgICAgICAgIDxsYWJlbCAqbmdTd2l0Y2hDYXNlPVwiJ2Nhc2VvcGVyYXRvcidcIj5vcGVyYXRvcjwvbGFiZWw+XG4gICAgICAgICAgPHNwYW4gKm5nU3dpdGNoRGVmYXVsdCBjbGFzcz1cInBzZGstY3NmLXRleHQtc3R5bGVcIj4tLS08L3NwYW4+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPC9kZD5cbiAgICAgIDxuZy10ZW1wbGF0ZSAjaGFzVmFsdWU+XG4gICAgICAgIDxkZCBjbGFzcz1cInBzZGstY3NmLXByaW1hcnktZmllbGQtZGF0YVwiIFtuZ1N3aXRjaF09XCJmaWVsZC50eXBlLnRvTG93ZXJDYXNlKClcIj5cbiAgICAgICAgICA8c3BhbiAqbmdTd2l0Y2hDYXNlPVwiJ3RleHRpbnB1dCdcIiBjbGFzcz1cInBzZGstY3NmLXRleHQtc3R5bGVcIj57eyBmaWVsZC5jb25maWcudmFsdWUgfX08L3NwYW4+XG4gICAgICAgICAgPHNwYW4gKm5nU3dpdGNoQ2FzZT1cIidzdGF0dXMnXCIgY2xhc3M9XCJwc2RrLWNzZi1zdGF0dXMtc3R5bGVcIj57eyBmaWVsZC5jb25maWcudmFsdWUgfX08L3NwYW4+XG4gICAgICAgICAgPGEgKm5nU3dpdGNoQ2FzZT1cIidwaG9uZSdcIiBhcz1cImFcIiBocmVmPVwidGVsOiB7eyBmaWVsZC5jb25maWcudmFsdWUgfX1cIj57eyBmaWVsZC5jb25maWcudmFsdWUgfX08L2E+XG4gICAgICAgICAgPGEgKm5nU3dpdGNoQ2FzZT1cIidlbWFpbCdcIiBocmVmPVwibWFpbHRvOiB7eyBmaWVsZC5jb25maWcudmFsdWUgfX1cIj57eyBmaWVsZC5jb25maWcudmFsdWUgfX08L2E+XG4gICAgICAgICAgPHNwYW4gKm5nU3dpdGNoQ2FzZT1cIidkYXRlJ1wiIGNsYXNzPVwicHNkay1jc2YtdGV4dC1zdHlsZVwiPnt7IGZpZWxkLmNvbmZpZy52YWx1ZSB9fTwvc3Bhbj5cbiAgICAgICAgICA8bGFiZWwgKm5nU3dpdGNoQ2FzZT1cIidjYXNlb3BlcmF0b3InXCI+b3BlcmF0b3I8L2xhYmVsPlxuICAgICAgICAgIDxzcGFuICpuZ1N3aXRjaERlZmF1bHQgY2xhc3M9XCJwc2RrLWNzZi10ZXh0LXN0eWxlXCI+e3sgZmllbGQuY29uZmlnLnZhbHVlIH19PC9zcGFuPlxuICAgICAgICA8L2RkPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L2Rpdj5cbiAgPC9kbD5cbjwvZGl2PlxuPGRpdiBjbGFzcz1cInBzZGstY2FzZS1zdW1tYXJ5LWZpZWxkc1wiPlxuICA8ZGwgKm5nRm9yPVwibGV0IGZpZWxkIG9mIHNlY29uZGFyeUZpZWxkcyRcIiBjbGFzcz1cInBzZGstY2FzZS1zdW1tYXJ5LWZpZWxkcy1zZWNvbmRhcnlcIj5cbiAgICA8ZGl2XG4gICAgICAqbmdJZj1cIlxuICAgICAgICBmaWVsZC5jb25maWc/LmxhYmVsPy50b0xvd2VyQ2FzZSgpID09ICdjcmVhdGUgb3BlcmF0b3InIHx8XG4gICAgICAgICAgZmllbGQuZGlzcGxheUxhYmVsLnRvTG93ZXJDYXNlKCkgPT0gJ2NyZWF0ZSBvcGVyYXRvcicgfHxcbiAgICAgICAgICBmaWVsZC5jb25maWc/LmxhYmVsPy50b0xvd2VyQ2FzZSgpID09ICd1cGRhdGUgb3BlcmF0b3InIHx8XG4gICAgICAgICAgZmllbGQuZGlzcGxheUxhYmVsLnRvTG93ZXJDYXNlKCkgPT0gJ3VwZGF0ZSBvcGVyYXRvcic7XG4gICAgICAgIGVsc2UgaGFzU2Vjb25kYXJ5VmFsdWVcbiAgICAgIFwiXG4gICAgPlxuICAgICAgPGNvbXBvbmVudC1tYXBwZXIgbmFtZT1cIk9wZXJhdG9yXCIgW3Byb3BzXT1cInsgcENvbm4kOiBmaWVsZD8ua2lkLCBkaXNwbGF5TGFiZWw6IGZpZWxkPy5kaXNwbGF5TGFiZWwgfVwiPjwvY29tcG9uZW50LW1hcHBlcj5cbiAgICA8L2Rpdj5cbiAgICA8bmctdGVtcGxhdGUgI2hhc1NlY29uZGFyeVZhbHVlPlxuICAgICAgPGRpdiBjbGFzcz1cInBzZGstY3NmLXNlY29uZGFyeS1maWVsZFwiPlxuICAgICAgICA8ZHQgY2xhc3M9XCJwc2RrLWNzZi1zZWNvbmRhcnktZmllbGQtaGVhZGVyXCI+XG4gICAgICAgICAge3sgZmllbGQuY29uZmlnLmRpc3BsYXlMYWJlbCB8fCBmaWVsZC5jb25maWcubGFiZWwgfX1cbiAgICAgICAgPC9kdD5cbiAgICAgICAgPGRkIGNsYXNzPVwicHNkay1jc2Ytc2Vjb25kYXJ5LWZpZWxkLWRhdGFcIj5cbiAgICAgICAgICA8ZGl2IFtuZ1N3aXRjaF09XCJmaWVsZC50eXBlXCI+XG4gICAgICAgICAgICA8bGFiZWwgKm5nU3dpdGNoQ2FzZT1cIidVc2VyUmVmZXJlbmNlJ1wiIGNsYXNzPVwicHNkay1zZWNvbmRhcnktdmFsdWVcIj57eyBmaWVsZC5jb25maWcudmFsdWUudXNlck5hbWUgfHwgJy0tLScgfX08L2xhYmVsPlxuICAgICAgICAgICAgPGxhYmVsICpuZ1N3aXRjaENhc2U9XCInQ2hlY2tib3gnXCIgY2xhc3M9XCJwc2RrLXNlY29uZGFyeS12YWx1ZVwiPnt7IGZpZWxkLmNvbmZpZy5mYWxzZUxhYmVsIHx8ICctLS0nIH19PC9sYWJlbD5cbiAgICAgICAgICAgIDxsYWJlbCAqbmdTd2l0Y2hEZWZhdWx0IGNsYXNzPVwicHNkay1zZWNvbmRhcnktdmFsdWVcIj57eyBmaWVsZC5jb25maWcudmFsdWUgfHwgJy0tLScgfX08L2xhYmVsPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2RkPlxuICAgICAgPC9kaXY+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgPC9kbD5cbjwvZGl2PlxuIl19