tnx-shared 5.3.165 → 5.3.167

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 (45) hide show
  1. package/bundles/tnx-shared.umd.js +37 -13
  2. package/bundles/tnx-shared.umd.js.map +1 -1
  3. package/bundles/tnx-shared.umd.min.js +1 -1
  4. package/bundles/tnx-shared.umd.min.js.map +1 -1
  5. package/classes/base/i-list-component.d.ts +1 -0
  6. package/classes/base/i-list-component.d.ts.map +1 -1
  7. package/classes/base/list-base.d.ts.map +1 -1
  8. package/classes/base/list-component-base.d.ts +1 -0
  9. package/classes/base/list-component-base.d.ts.map +1 -1
  10. package/components/add-news/add-news.component.d.ts.map +1 -1
  11. package/components/entity-picker/entity-picker-dialog/components/entity-picker-data/entity-picker-data.component.d.ts.map +1 -1
  12. package/components/entity-picker/entity-picker-dialog/components/entity-picker-selected/entity-picker-selected.component.d.ts.map +1 -1
  13. package/components/entity-picker/entity-picker-dialog/components/entity-picker-tree-data/entity-picker-tree-data.component.d.ts.map +1 -1
  14. package/components/entity-picker/entity-picker-dialog/components/entity-picker-tree-selected/entity-picker-tree-selected.component.d.ts.map +1 -1
  15. package/components/entity-picker/entity-picker.component.d.ts.map +1 -1
  16. package/components/file-explorer/file-manager/file-manager.component.d.ts.map +1 -1
  17. package/components/file-explorer/file-version-list/file-version-list.component.d.ts.map +1 -1
  18. package/components/file-explorer/ky-so-sim-danh-sach-chu-ky/ky-so-sim-danh-sach-chu-ky.component.d.ts.map +1 -1
  19. package/components/vanban-picker/vanban-den-picker/vanban-den-picker.component.d.ts.map +1 -1
  20. package/components/vanban-picker/vanban-di-picker/vanban-di-picker.component.d.ts.map +1 -1
  21. package/components/vanban-picker/vanban-picker.component.d.ts.map +1 -1
  22. package/enums/common.d.ts +2 -1
  23. package/enums/common.d.ts.map +1 -1
  24. package/esm2015/classes/base/i-list-component.js +1 -1
  25. package/esm2015/classes/base/list-base.js +10 -4
  26. package/esm2015/classes/base/list-component-base.js +6 -2
  27. package/esm2015/components/add-news/add-news.component.js +2 -1
  28. package/esm2015/components/crud/crud-list/crud-list.component.js +2 -2
  29. package/esm2015/components/entity-picker/entity-picker-dialog/components/entity-picker-data/entity-picker-data.component.js +2 -1
  30. package/esm2015/components/entity-picker/entity-picker-dialog/components/entity-picker-selected/entity-picker-selected.component.js +2 -1
  31. package/esm2015/components/entity-picker/entity-picker-dialog/components/entity-picker-tree-data/entity-picker-tree-data.component.js +2 -1
  32. package/esm2015/components/entity-picker/entity-picker-dialog/components/entity-picker-tree-selected/entity-picker-tree-selected.component.js +2 -1
  33. package/esm2015/components/entity-picker/entity-picker.component.js +2 -1
  34. package/esm2015/components/file-explorer/file-manager/file-manager.component.js +2 -1
  35. package/esm2015/components/file-explorer/file-version-list/file-version-list.component.js +2 -1
  36. package/esm2015/components/file-explorer/ky-so-sim-danh-sach-chu-ky/ky-so-sim-danh-sach-chu-ky.component.js +2 -1
  37. package/esm2015/components/settings/settings-authorize-button/settings-authorize-button.component.js +3 -2
  38. package/esm2015/components/vanban-picker/vanban-den-picker/vanban-den-picker.component.js +2 -1
  39. package/esm2015/components/vanban-picker/vanban-di-picker/vanban-di-picker.component.js +2 -1
  40. package/esm2015/components/vanban-picker/vanban-picker.component.js +2 -1
  41. package/esm2015/enums/common.js +2 -1
  42. package/fesm2015/tnx-shared.js +29 -5
  43. package/fesm2015/tnx-shared.js.map +1 -1
  44. package/package.json +2 -2
  45. package/tnx-shared.metadata.json +1 -1
@@ -44,6 +44,7 @@ export class FileVersionListComponent extends DataListBase {
44
44
  this._moduleConfig = this._moduleConfigService.getConfig();
45
45
  }
46
46
  ngOnInit() {
47
+ this.setting.hiddenAuthorizeButton = true;
47
48
  this.setting.baseService = this._fileVersionService;
48
49
  this.loadDetailFromQueryParam = true;
49
50
  this.plusUrl = 'GetListVersionByFileId';
@@ -303,4 +304,4 @@ FileVersionListComponent.propDecorators = {
303
304
  readonly: [{ type: Input }],
304
305
  onSetMajorVersion: [{ type: Output }]
305
306
  };
306
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS12ZXJzaW9uLWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdG54LXNoYXJlZC9zcmMvbGliL2NvbXBvbmVudHMvZmlsZS1leHBsb3Jlci9maWxlLXZlcnNpb24tbGlzdC9maWxlLXZlcnNpb24tbGlzdC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQXFCLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFL0csT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDekYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxXQUFXLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDakYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNyRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDbkUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRXRFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUMzRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFD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InNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbmplY3RvciwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgQ29tcG9uZW50Q29udGV4dFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9hcHAtY29udGV4dC9jb21wb25lbnQtY29udGV4dC5zZXJ2aWNlJztcbmltcG9ydCB7IEVkaXRGaWxlQ29tbWFuZCB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9lZGl0LWZpbGUtY29tbWFuZCc7XG5pbXBvcnQgeyBDb21tYW5kVHlwZSwgVG5DbGllbnRDb21tYW5kIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL3RuLWNsaWVudC1jb21tYW5kJztcbmltcG9ydCB7IEF1dGhlblNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9hdXRoZW4uc2VydmljZSc7XG5pbXBvcnQgeyBNb2R1bGVDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvbW9kdWxlLWNvbmZpZy5zZXJ2aWNlJztcbmltcG9ydCB7IE5vdGlmaWVyU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL25vdGlmaWVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgU2lnbmFsUlNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9zaWduYWxyLnNlcnZpY2UnO1xuaW1wb3J0IHsgVG5DbGllbnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvdG4tY2xpZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgRmlsZVZlcnNpb25EVE8gfSBmcm9tICcuLi9tb2RlbHMvZmlsZS12ZXJzaW9uLWR0byc7XG5pbXBvcnQgeyBHZW5lcmF0ZUxpbmtEb3dubG9hZERUTyB9IGZyb20gJy4uL21vZGVscy9nZW5lcmF0ZS1saW5rLWRvd25sb2FkLWR0byc7XG5pbXBvcnQgeyBGaWxlRXhwbG9yZXJTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvZmlsZS1leHBsb3Jlci5zZXJ2aWNlJztcbmltcG9ydCB7IEZpbGVWZXJzaW9uU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2ZpbGUtdmVyc2lvbi5zZXJ2aWNlJztcbmltcG9ydCB7IERvbVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9kb20uc2VydmljZSc7XG5pbXBvcnQgeyBEYXRhTGlzdEJhc2UgfSBmcm9tICcuLi8uLi8uLi9jbGFzc2VzL2Jhc2UvZGF0YS1saXN0LWJhc2UnO1xuaW1wb3J0IHsgQ29uZmlybWF0aW9uU2VydmljZSwgTWVudUl0ZW0sIE1lc3NhZ2VTZXJ2aWNlIH0gZnJvbSAndG4tY3VzdG9tLXByaW1lbmcvYXBpJztcbmltcG9ydCB7IENvbHVtblNjaGVtYUJhc2UsIEhlaWdodFR5cGUsIE1vZGVsU2NoZW1hLCBPcGVyYXRvciB9IGZyb20gJy4uLy4uLy4uL2NsYXNzZXMvZm9ybS1zY2hlbWEnO1xuaW1wb3J0IHsgRG93bmxvYWRMaW5rU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2Rvd25sb2FkLWxpbmsuc2VydmljZSc7XG5pbXBvcnQgeyBGaWxlRXhwbG9yZXJJdGVtIH0gZnJvbSAnLi4vbW9kZWxzL2ZpbGUtZXhwbG9yZXItaXRlbSc7XG5pbXBvcnQgeyBDb21tb25FcnJvckNvZGUgfSBmcm9tICcuLi8uLi8uLi9jbGFzc2VzL2NvbW1vbi1lcnJvci1jb2RlJztcbmltcG9ydCB7IEdyaWRJbmZvIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL2dyaWQtaW5mbyc7XG5pbXBvcnQgeyBGaWxlT2JqZWN0U2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2ZpbGUtb2JqZWN0LnNlcnZpY2UnO1xuaW1wb3J0IHsgQ29udGV4dE1lbnUgfSBmcm9tICd0bi1jdXN0b20tcHJpbWVuZy9jb250ZXh0bWVudSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZmlsZS12ZXJzaW9uLWxpc3QnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9maWxlLXZlcnNpb24tbGlzdC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZmlsZS12ZXJzaW9uLWxpc3QuY29tcG9uZW50LnNjc3MnXSxcbiAgICBwcm92aWRlcnM6IFtDb21wb25lbnRDb250ZXh0U2VydmljZV1cbn0pXG5cblxuZXhwb3J0IGNsYXNzIEZpbGVWZXJzaW9uTGlzdENvbXBvbmVudCBleHRlbmRzIERhdGFMaXN0QmFzZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgICBAVmlld0NoaWxkKENvbnRleHRNZW51LCB7IHN0YXRpYzogZmFsc2UgfSkgY29udGV4dE1lbnU6IENvbnRleHRNZW51O1xuXG4gICAgQElucHV0KCkgZmlsZUlkO1xuICAgIEBJbnB1dCgpIHJlYWRvbmx5ID0gZmFsc2U7XG5cbiAgICBAT3V0cHV0KCkgb25TZXRNYWpvclZlcnNpb24gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICAgIF9tb2R1bGVDb25maWc6IGFueTtcbiAgICBmb3JtczogYW55ID0ge307XG4gICAgZmlsZU9iamVjdDogYW55ID0ge307XG4gICAgaXNTdXBwb3J0Vmlld09ubGluZSA9IGZhbHNlO1xuICAgIHJlYWR5VG9HZXREYXRhID0gZmFsc2U7XG4gICAgX21lbnVCdXR0b25zOiBNZW51SXRlbVtdID0gW107XG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByb3RlY3RlZCBfZmlsZVZlcnNpb25TZXJ2aWNlOiBGaWxlVmVyc2lvblNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgX2NvbmZpcm1TZXJ2aWNlOiBDb25maXJtYXRpb25TZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIF9tZXNzYWdlU2VydmljZTogTWVzc2FnZVNlcnZpY2UsXG4gICAgICAgIHB1YmxpYyBfZmlsZUV4cGxvcmVyU2VydmljZTogRmlsZUV4cGxvcmVyU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBfdG5DbGllbnRTZXJ2aWNlOiBUbkNsaWVudFNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgX21vZHVsZUNvbmZpZ1NlcnZpY2U6IE1vZHVsZUNvbmZpZ1NlcnZpY2UsXG4gICAgICAgIHByb3RlY3RlZCBfbm90aWZpZXJTZXJ2aWNlOiBOb3RpZmllclNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgX2F1dGhlblNlcnZpY2U6IEF1dGhlblNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgX3NpZ25hbHJTZXJ2aWNlOiBTaWduYWxSU2VydmljZSxcbiAgICAgICAgX2luamVjdG9yOiBJbmplY3RvcixcbiAgICAgICAgcHJvdGVjdGVkIF9kb21TZXJ2aWNlOiBEb21TZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIF9kb3dubG9hZExpbmtTZXJ2aWNlOiBEb3dubG9hZExpbmtTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIF9maWxlT2JqZWN0U2VydmljZTogRmlsZU9iamVjdFNlcnZpY2VcbiAgICApIHtcbiAgICAgICAgc3VwZXIoX2luamVjdG9yKTtcbiAgICAgICAgdGhpcy5fbW9kdWxlQ29uZmlnID0gdGhpcy5fbW9kdWxlQ29uZmlnU2VydmljZS5nZXRDb25maWcoKTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgdGhpcy5zZXR0aW5nLmJhc2VTZXJ2aWNlID0gdGhpcy5fZmlsZVZlcnNpb25TZXJ2aWNlO1xuICAgICAgICB0aGlzLmxvYWREZXRhaWxGcm9tUXVlcnlQYXJhbSA9IHRydWU7XG4gICAgICAgIHRoaXMucGx1c1VybCA9ICdHZXRMaXN0VmVyc2lvbkJ5RmlsZUlkJztcblxuICAgICAgICB0aGlzLnNldHRpbmcubW9kZWxTY2hlbWFzID0gW1xuICAgICAgICAgICAgbmV3IE1vZGVsU2NoZW1hKHtcbiAgICAgICAgICAgICAgICBmaWVsZDogJ3ZlcnNpb25OYW1lJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnUGhpw6puIGLhuqNuJyxcbiAgICAgICAgICAgICAgICBmdWxsTmFtZTogJ1BoacOqbiBi4bqjbicsXG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICdQaGnDqm4gYuG6o24nXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIG5ldyBNb2RlbFNjaGVtYSh7XG4gICAgICAgICAgICAgICAgZmllbGQ6ICdzaXplJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnS8OtY2ggdGjGsOG7m2MnLFxuICAgICAgICAgICAgICAgIGZ1bGxOYW1lOiAnS8OtY2ggdGjGsOG7m2MnLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnS8OtY2ggdGjGsOG7m2MnXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIG5ldyBNb2RlbFNjaGVtYSh7XG4gICAgICAgICAgICAgICAgZmllbGQ6ICdjcmVhdGVkJyxcbiAgICAgICAgICAgICAgICBkYXRhVHlwZTogJ2ludCcsXG4gICAgICAgICAgICAgICAgbmFtZTogJ05nw6B5IHThuqFvJyxcbiAgICAgICAgICAgICAgICBmdWxsTmFtZTogJ05nw6B5IHThuqFvJyxcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogJ05nw6B5IHThuqFvJ1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBuZXcgTW9kZWxTY2hlbWEoe1xuICAgICAgICAgICAgICAgIGZpZWxkOiAnY3JlYXRlZEJ5JyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnTmfGsOG7nWkgdOG6oW8nLFxuICAgICAgICAgICAgICAgIGZ1bGxOYW1lOiAnTmfGsOG7nWkgdOG6oW8nLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnTmfGsOG7nWkgdOG6oW8nXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIG5ldyBNb2RlbFNjaGVtYSh7XG4gICAgICAgICAgICAgICAgZmllbGQ6ICdjb21tZW50JyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnQ2jDuiB0aMOtY2gnLFxuICAgICAgICAgICAgICAgIGZ1bGxOYW1lOiAnQ2jDuiB0aMOtY2gnLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnQ2jDuiB0aMOtY2gnXG4gICAgICAgICAgICB9KVxuICAgICAgICBdO1xuXG4gICAgICAgIHRoaXMuc2V0dGluZy5jb2xzID0gW1xuICAgICAgICAgICAgbmV3IENvbHVtblNjaGVtYUJhc2Uoe1xuICAgICAgICAgICAgICAgIGZpZWxkOiAndmVyc2lvbk5hbWUnLFxuICAgICAgICAgICAgICAgIHdpZHRoOiAnOGVtJ1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBuZXcgQ29sdW1uU2NoZW1hQmFzZSh7XG4gICAgICAgICAgICAgICAgZmllbGQ6ICdzaXplJyxcbiAgICAgICAgICAgICAgICBkYXRhVHlwZTogJ2ZpbGVTaXplJyxcbiAgICAgICAgICAgICAgICB3aWR0aDogJzhlbSdcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgbmV3IENvbHVtblNjaGVtYUJhc2Uoe1xuICAgICAgICAgICAgICAgIGZpZWxkOiAnY3JlYXRlZCcsXG4gICAgICAgICAgICAgICAgZGF0YVR5cGU6ICdkYXRldGltZScsXG4gICAgICAgICAgICAgICAgd2lkdGg6ICc4ZW0nXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIG5ldyBDb2x1bW5TY2hlbWFCYXNlKHtcbiAgICAgICAgICAgICAgICBmaWVsZDogJ2NyZWF0ZWRCeScsXG4gICAgICAgICAgICAgICAgYmFzZVNlcnZpY2U6IHRoaXMuX3VzZXJTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIGRpc3BsYXlGaWVsZDogJ2Z1bGxOYW1lTmV3JyxcbiAgICAgICAgICAgICAgICB3aWR0aDogJzEwZW0nXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIG5ldyBDb2x1bW5TY2hlbWFCYXNlKHtcbiAgICAgICAgICAgICAgICBmaWVsZDogJ2NvbW1lbnQnLFxuICAgICAgICAgICAgICAgIGRhdGFUeXBlOiAnY29tbWVudCdcbiAgICAgICAgICAgIH0pXG4gICAgICAgIF07XG5cbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcblxuICAgICAgICB0aGlzLnJlYWR5VG9HZXREYXRhID0gISF0aGlzLmZpbGVJZDtcbiAgICAgICAgdGhpcy5pbml0Rm9ybXMoKTtcbiAgICAgICAgdGhpcy5pbml0U2V0dGluZygpO1xuICAgICAgICB0aGlzLmdldEZpbGVPYmplY3QoKTtcbiAgICB9XG5cbiAgICBpbml0U2V0dGluZygpIHtcbiAgICAgICAgdGhpcy5zZXR0aW5nLmhlaWdodFR5cGUgPSBIZWlnaHRUeXBlLmR5bmFtaWM7XG4gICAgICAgIHRoaXMuc2V0dGluZy5maXhIZWlnaHRUeXBlSW5EaWFsb2cgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5zZXR0aW5nLmhpZGRlbkZpbHRlclJvdyA9IHRydWU7XG4gICAgICAgIHRoaXMuc2V0dGluZy5oaWRkZW5IZWFkZXIgPSB0cnVlO1xuICAgICAgICB0aGlzLnNldHRpbmcuaGlkZGVuU2V0dGluZyA9IHRydWU7XG4gICAgICAgIHRoaXMuc2V0dGluZy5oaWRkZW5TZXR0aW5nV29ya2Zsb3cgPSB0cnVlO1xuICAgICAgICB0aGlzLnNldHRpbmcuaGlkZGVuU2V0dGluZ1Blcm1pc3Npb24gPSB0cnVlO1xuICAgICAgICB0aGlzLnNldHRpbmcuaGlkZGVuVG9vbGJhciA9IHRydWU7XG4gICAgfVxuXG4gICAgaW5pdEZvcm1zKCkge1xuICAgICAgICB0aGlzLmZvcm1zLmZpbGVWaWV3ZXIgPSB7XG4gICAgICAgICAgICBzaG93OiBmYWxzZSxcbiAgICAgICAgICAgIGZvcm1EYXRhOiB7fVxuICAgICAgICB9O1xuICAgIH1cblxuICAgIGFzeW5jIG1vZGlmeUdyaWRJbmZvKGdyaWRJbmZvOiBHcmlkSW5mbykge1xuICAgICAgICBncmlkSW5mby5maWx0ZXJzLnB1c2godGhpcy5uZXdGaWx0ZXIoJ2ZpbGVJZCcsIE9wZXJhdG9yLmVxdWFsLCB0aGlzLmZpbGVJZCkpO1xuICAgIH1cblxuICAgIGFzeW5jIGdldEZpbGVPYmplY3QoKSB7XG4gICAgICAgIGlmICghdGhpcy5maWxlSWQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuZmlsZU9iamVjdCA9IChhd2FpdCB0aGlzLl9maWxlT2JqZWN0U2VydmljZS5nZXREZXRhaWwodGhpcy5maWxlSWQpKS5kYXRhIHx8IHt9O1xuICAgICAgICB0aGlzLmlzU3VwcG9ydFZpZXdPbmxpbmUgPSB0aGlzLl9maWxlT2JqZWN0U2VydmljZS5pc1N1cHBvcnRlZFZpZXdPbmxpbmUodGhpcy5maWxlT2JqZWN0Lm5hbWUpO1xuICAgIH1cblxuICAgIHNob3dDb250ZXh0TWVudShldnQsIHJvd0RhdGEpIHtcblxuICAgICAgICBpZiAodGhpcy5yZWFkb25seSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5fbWVudUJ1dHRvbnMgPSBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbGFiZWw6ICdDaOG7iW5oIHPhu61hIHBoacOqbiBi4bqjbicsIGljb246ICdwaSBwaS1wZW5jaWwnLCBjb21tYW5kOiAoZXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5lZGl0RmlsZShyb3dEYXRhKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIF07XG5cbiAgICAgICAgaWYgKHRoaXMuZmlsZU9iamVjdC5jdXJyZW50RmlsZVZlcnNpb24gIT09IHJvd0RhdGEudmVyc2lvbk5hbWUpIHtcbiAgICAgICAgICAgIHRoaXMuX21lbnVCdXR0b25zLnB1c2goe1xuICAgICAgICAgICAgICAgIGxhYmVsOiAnTsOibmcgY+G6pXAgcGhpw6puIGLhuqNuJyxcbiAgICAgICAgICAgICAgICBpY29uOiAncGkgcGktY2hlY2snLFxuICAgICAgICAgICAgICAgIGNvbW1hbmQ6IChldmVudCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnNldE1ham9yVmVyc2lvbihyb3dEYXRhKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuY29udGV4dE1lbnUuc2hvdyhldnQpO1xuICAgICAgICBldnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgZXZ0LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIH1cblxuICAgIC8vIFThuqNpIGZpbGUuXG4gICAgZG93bmxvYWRGaWxlVmVyc2lvbihmaWxlOiBGaWxlVmVyc2lvbkRUTykge1xuICAgICAgICBjb25zdCBtb2RlbCA9IG5ldyBHZW5lcmF0ZUxpbmtEb3dubG9hZERUTygpO1xuICAgICAgICBtb2RlbC5maWxlVmVyc2lvbklkID0gZmlsZS5pZDtcblxuICAgICAgICB0aGlzLl9kb3dubG9hZExpbmtTZXJ2aWNlLmRvd25sb2FkTGluayhtb2RlbCk7XG4gICAgfVxuXG4gICAgLy8gWGVtIGZpbGUgdHLhu7FjIHR1eeG6v24uXG4gICAgb3BlbkZpbGVWaWV3ZXIoZXhwbG9yZXJJdGVtOiBGaWxlRXhwbG9yZXJJdGVtKSB7XG4gICAgICAgIHRoaXMuZm9ybXMuZmlsZVZpZXdlci5mb3JtRGF0YS5kYXRhID0ge1xuICAgICAgICAgICAgZmlsZVZlcnNpb25JZDogZXhwbG9yZXJJdGVtLmlkXG4gICAgICAgIH07XG4gICAgICAgIHRoaXMuZm9ybXMuZmlsZVZpZXdlci5zaG93ID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBjbG9zZUZpbGVWaWV3ZXIoKSB7XG4gICAgICAgIHRoaXMuZm9ybXMuZmlsZVZpZXdlci5zaG93ID0gZmFsc2U7XG4gICAgICAgIHRoaXMuX3RyaWdnZXJQcm9jZXNzRGF0YSgpO1xuICAgIH1cblxuICAgIC8vIENo4buJbmggc+G7rWEgYuG6sW5nIHRuY2xpZW50LlxuICAgIGVkaXRGaWxlKGZpbGU6IEZpbGVWZXJzaW9uRFRPKSB7XG4gICAgICAgIHRoaXMuX25vdGlmaWVyU2VydmljZS5zaG93U3VjY2VzcygnxJBhbmcga+G6v3QgbuG7kWkgbeG7nyDhu6luZyBk4bulbmcnKTtcblxuICAgICAgICB0aGlzLl9maWxlVmVyc2lvblNlcnZpY2UuY3JlYXRlTmV3TWlub3JWZXJzaW9uKGZpbGUuZmlsZUlkLCBmaWxlLmlkLCB0cnVlKVxuICAgICAgICAgICAgLnRoZW4ocmVzcG9uc2UgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGZpbGVWZXJzaW9uID0gPEZpbGVWZXJzaW9uRFRPPnJlc3BvbnNlLmRhdGE7XG5cbiAgICAgICAgICAgICAgICBjb25zdCBmaWxlVXJsID0gdGhpcy5fZmlsZVZlcnNpb25TZXJ2aWNlLmdldEZpbGVWZXJzaW9uRG93bmxvYWRVcmwoZmlsZVZlcnNpb24uaWQpO1xuXG4gICAgICAgICAgICAgICAgY29uc3QgY29tbWFuZCA9IG5ldyBUbkNsaWVudENvbW1hbmQoKTtcbiAgICAgICAgICAgICAgICBjb21tYW5kLmNvbW1hbmRUeXBlID0gQ29tbWFuZFR5cGUuRWRpdEZpbGU7XG4gICAgICAgICAgICAgICAgY29tbWFuZC5rZXkgPSB0aGlzLl9tb2R1bGVDb25maWcuZW52aXJvbm1lbnQuc2lnbmFsci5jbGllbnRLZXk7XG5cbiAgICAgICAgICAgICAgICBjb25zdCBlZGl0RmlsZUNvbW1hbmQgPSBuZXcgRWRpdEZpbGVDb21tYW5kKCk7XG4gICAgICAgICAgICAgICAgZWRpdEZpbGVDb21tYW5kLmZpbGVTZXJ2aWNlRW5kcG9pbnQgPSB0aGlzLl9tb2R1bGVDb25maWcuZW52aXJvbm1lbnQuYXBpRG9tYWluLmZpbGVFbmRwb2ludDtcbiAgICAgICAgICAgICAgICBlZGl0RmlsZUNvbW1hbmQudXBsb2FkRmlsZUFwaSA9IHRoaXMuX2ZpbGVWZXJzaW9uU2VydmljZS5nZXRVcGxvYWRGaWxlVmVyc2lvbkFwaVVybCgpO1xuICAgICAgICAgICAgICAgIGVkaXRGaWxlQ29tbWFuZC5yZW1vdmVGaWxlQXBpID0gdGhpcy5fZmlsZVZlcnNpb25TZXJ2aWNlLmdldFJlbW92ZUZpbGVWZXJzaW9uQXBpVXJsKCk7XG4gICAgICAgICAgICAgICAgZWRpdEZpbGVDb21tYW5kLmZpbGVVcmwgPSBmaWxlVXJsO1xuICAgICAgICAgICAgICAgIGVkaXRGaWxlQ29tbWFuZC5pc0RyYWZ0ID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICBlZGl0RmlsZUNvbW1hbmQuZ3JvdXBGaWxlTmFtZSA9IHRoaXMuZmlsZU9iamVjdC5uYW1lO1xuICAgICAgICAgICAgICAgIGVkaXRGaWxlQ29tbWFuZC5maWxlTmFtZSA9IHRoaXMuZmlsZU9iamVjdC5uYW1lO1xuICAgICAgICAgICAgICAgIGVkaXRGaWxlQ29tbWFuZC52ZXJzaW9uID0gZmlsZVZlcnNpb24udmVyc2lvbk5hbWU7XG4gICAgICAgICAgICAgICAgZWRpdEZpbGVDb21tYW5kLmZpbGVWZXJzaW9uSWQgPSBmaWxlVmVyc2lvbi5pZDtcbiAgICAgICAgICAgICAgICBlZGl0RmlsZUNvbW1hbmQuYWNjZXNzVG9rZW4gPSB0aGlzLl9hdXRoZW5TZXJ2aWNlLmdldEFjY2Vzc1Rva2VuKCk7XG4gICAgICAgICAgICAgICAgY29tbWFuZC5kYXRhID0gZWRpdEZpbGVDb21tYW5kO1xuXG4gICAgICAgICAgICAgICAgdGhpcy5fdG5DbGllbnRTZXJ2aWNlLnNlbmRDb21tYW5kKGNvbW1hbmQpO1xuICAgICAgICAgICAgfSwgZXJyb3IgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChDb21tb25FcnJvckNvZGUuRVJST1JfU0VSVklDRV9OT1RfUlVOID09PSBlcnJvci5zdGF0dXMpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fbm90aWZpZXJTZXJ2aWNlLnNob3dSZXNwb25zZUVycm9yKDAsIG51bGwsICdGaWxlJyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl9tZXNzYWdlU2VydmljZS5hZGQoe1xuICAgICAgICAgICAgICAgICAgICAgICAgc2V2ZXJpdHk6ICdlcnJvcicsXG4gICAgICAgICAgICAgICAgICAgICAgICBzdW1tYXJ5OiB0aGlzLl90cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ0ZJTEVfRVhQTE9SRVIuTUVTU0FHRV9FUlJPUl9IRUFERVInKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGRldGFpbDogdGhpcy5fdHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdGSUxFX0VYUExPUkVSLk1FU1NBR0VfRVJST1JfREVUQUlMJyksXG4gICAgICAgICAgICAgICAgICAgICAgICBsaWZlOiA1MDAwXG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8vIE7Dom5nIHZlcnNpb24gbMOqbiBwaGnDqm4gYuG6o24gY2jDrW5oLlxuICAgIHNldE1ham9yVmVyc2lvbihmaWxlOiBGaWxlVmVyc2lvbkRUTykge1xuICAgICAgICB0aGlzLl9maWxlVmVyc2lvblNlcnZpY2UuZ2V0TmV4dE1ham9yVmVyc2lvbih0aGlzLmZpbGVPYmplY3QuaWQpXG4gICAgICAgICAgICAudGhlbihyZXNwb25zZSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKCFyZXNwb25zZS5zdWNjZXNzKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBjb25zdCBoZWFkZXIgPSAnTsOibmcgY+G6pXAgcGhpw6puIGLhuqNuJztcbiAgICAgICAgICAgICAgICBjb25zdCBtc2cgPSBgQuG6oW4gY8OzIG114buRbiBuw6JuZyBj4bqlcCBwaGnDqm4gYuG6o24gdOG7qyAke2ZpbGUudmVyc2lvbk5hbWV9IGzDqm4gJHtyZXNwb25zZS5kYXRhfSBraMO0bmc/YDtcbiAgICAgICAgICAgICAgICB0aGlzLl9ub3RpZmllclNlcnZpY2Uuc2hvd0NvbmZpcm0obXNnLCBoZWFkZXIpXG4gICAgICAgICAgICAgICAgICAgIC50aGVuKHJzID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICghcnMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX2ZpbGVWZXJzaW9uU2VydmljZS5zZXRWZXJzaW9uVG9NYWpvcihmaWxlLmlkKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC50aGVuKChycykgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocnMuc3VjY2Vzcykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5fbm90aWZpZXJTZXJ2aWNlLnNob3dVcGRhdGVEYXRhU3VjY2VzcygpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5nZXRGaWxlT2JqZWN0KCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLl90cmlnZ2VyUHJvY2Vzc0RhdGEoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMub25TZXRNYWpvclZlcnNpb24uZW1pdCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5fY3J1ZFNlcnZpY2UucHJvY2Vzc0Vycm9yUmVzcG9uc2UocnMpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLy8gWMOzYSB2ZXJzaW9uLlxuICAgIGRlbGV0ZVZlcnNpb25GaWxlKGZpbGU6IEZpbGVWZXJzaW9uRFRPKSB7XG4gICAgICAgIHRoaXMuX25vdGlmaWVyU2VydmljZS5zaG93RGVsZXRlQ29uZmlybSgpXG4gICAgICAgICAgICAudGhlbihycyA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKCFycykge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgdGhpcy5fZmlsZVZlcnNpb25TZXJ2aWNlLmRlbGV0ZUZpbGVWZXJzaW9uKGZpbGUuaWQpXG4gICAgICAgICAgICAgICAgICAgIC50aGVuKChycykgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJzLnN1Y2Nlc3MpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLl9ub3RpZmllclNlcnZpY2Uuc2hvd0RlbGV0ZURhdGFTdWNjZXNzKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5fdHJpZ2dlclByb2Nlc3NEYXRhKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLl9jcnVkU2VydmljZS5wcm9jZXNzRXJyb3JSZXNwb25zZShycyk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgdmlld0xpc3RTaWduKGU6IEV2ZW50LCBzaWduYXR1cmVzOiBhbnkpIHtcbiAgICAgICAgLy8gZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgLy8gdGhpcy5kYXRhLnNpZ25hdHVyZURldGFpbC5kYXRhID0gc2lnbmF0dXJlcztcbiAgICAgICAgLy8gdGhpcy5kYXRhLnNpZ25hdHVyZURldGFpbC5zaG93ID0gdHJ1ZTtcbiAgICB9XG59XG5cblxuIl19
307
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS12ZXJzaW9uLWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdG54LXNoYXJlZC9zcmMvbGliL2NvbXBvbmVudHMvZmlsZS1leHBsb3Jlci9maWxlLXZlcnNpb24tbGlzdC9maWxlLXZlcnNpb24tbGlzdC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQXFCLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFL0csT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDekYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxXQUFXLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDakYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNyRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDbkUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRXRFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUMzRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDcEUsT0FBTyxFQUFFLG1CQUFtQixFQUFZLGNBQWMsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3RGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLFFBQVEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ25HLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBRXhFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUVyRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNwRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFVNUQsTUFBTSxPQUFPLHdCQUF5QixTQUFRLFlBQVk7SUFjdEQsWUFDYyxtQkFBdUMsRUFDekMsZUFBb0MsRUFDcEMsZUFBK0IsRUFDaEMsb0JBQXlDLEVBQ3hDLGdCQUFpQyxFQUNqQyxvQkFBeUMsRUFDdkMsZ0JBQWlDLEVBQ25DLGNBQTZCLEVBQzdCLGVBQStCLEVBQ3ZDLFNBQW1CLEVBQ1QsV0FBdUIsRUFDekIsb0JBQXlDLEVBQ3pDLGtCQUFxQztRQUU3QyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUM7UUFkUCx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQW9CO1FBQ3pDLG9CQUFlLEdBQWYsZUFBZSxDQUFxQjtRQUNwQyxvQkFBZSxHQUFmLGVBQWUsQ0FBZ0I7UUFDaEMseUJBQW9CLEdBQXBCLG9CQUFvQixDQUFxQjtRQUN4QyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWlCO1FBQ2pDLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBcUI7UUFDdkMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFpQjtRQUNuQyxtQkFBYyxHQUFkLGNBQWMsQ0FBZTtRQUM3QixvQkFBZSxHQUFmLGVBQWUsQ0FBZ0I7UUFFN0IsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUFDekIseUJBQW9CLEdBQXBCLG9CQUFvQixDQUFxQjtRQUN6Qyx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW1CO1FBdkJ4QyxhQUFRLEdBQUcsS0FBSyxDQUFDO1FBRWhCLHNCQUFpQixHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7UUFHdEQsVUFBSyxHQUFRLEVBQUUsQ0FBQztRQUNoQixlQUFVLEdBQVEsRUFBRSxDQUFDO1FBQ3JCLHdCQUFtQixHQUFHLEtBQUssQ0FBQztRQUM1QixtQkFBYyxHQUFHLEtBQUssQ0FBQztRQUN2QixpQkFBWSxHQUFlLEVBQUUsQ0FBQztRQWlCMUIsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsb0JBQW9CLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDL0QsQ0FBQztJQUVELFFBQVE7UUFDSixJQUFJLENBQUMsT0FBTyxDQUFDLHFCQUFxQixHQUFHLElBQUksQ0FBQztRQUMxQyxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUM7UUFDcEQsSUFBSSxDQUFDLHdCQUF3QixHQUFHLElBQUksQ0FBQztRQUNyQyxJQUFJLENBQUMsT0FBTyxHQUFHLHdCQUF3QixDQUFDO1FBRXhDLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxHQUFHO1lBQ3hCLElBQUksV0FBVyxDQUFDO2dCQUNaLEtBQUssRUFBRSxhQUFhO2dCQUNwQixJQUFJLEVBQUUsV0FBVztnQkFDakIsUUFBUSxFQUFFLFdBQVc7Z0JBQ3JCLFdBQVcsRUFBRSxXQUFXO2FBQzNCLENBQUM7WUFDRixJQUFJLFdBQVcsQ0FBQztnQkFDWixLQUFLLEVBQUUsTUFBTTtnQkFDYixJQUFJLEVBQUUsWUFBWTtnQkFDbEIsUUFBUSxFQUFFLFlBQVk7Z0JBQ3RCLFdBQVcsRUFBRSxZQUFZO2FBQzVCLENBQUM7WUFDRixJQUFJLFdBQVcsQ0FBQztnQkFDWixLQUFLLEVBQUUsU0FBUztnQkFDaEIsUUFBUSxFQUFFLEtBQUs7Z0JBQ2YsSUFBSSxFQUFFLFVBQVU7Z0JBQ2hCLFFBQVEsRUFBRSxVQUFVO2dCQUNwQixXQUFXLEVBQUUsVUFBVTthQUMxQixDQUFDO1lBQ0YsSUFBSSxXQUFXLENBQUM7Z0JBQ1osS0FBSyxFQUFFLFdBQVc7Z0JBQ2xCLElBQUksRUFBRSxXQUFXO2dCQUNqQixRQUFRLEVBQUUsV0FBVztnQkFDckIsV0FBVyxFQUFFLFdBQVc7YUFDM0IsQ0FBQztZQUNGLElBQUksV0FBVyxDQUFDO2dCQUNaLEtBQUssRUFBRSxTQUFTO2dCQUNoQixJQUFJLEVBQUUsV0FBVztnQkFDakIsUUFBUSxFQUFFLFdBQVc7Z0JBQ3JCLFdBQVcsRUFBRSxXQUFXO2FBQzNCLENBQUM7U0FDTCxDQUFDO1FBRUYsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEdBQUc7WUFDaEIsSUFBSSxnQkFBZ0IsQ0FBQztnQkFDakIsS0FBSyxFQUFFLGFBQWE7Z0JBQ3BCLEtBQUssRUFBRSxLQUFLO2FBQ2YsQ0FBQztZQUNGLElBQUksZ0JBQWdCLENBQUM7Z0JBQ2pCLEtBQUssRUFBRSxNQUFNO2dCQUNiLFFBQVEsRUFBRSxVQUFVO2dCQUNwQixLQUFLLEVBQUUsS0FBSzthQUNmLENBQUM7WUFDRixJQUFJLGdCQUFnQixDQUFDO2dCQUNqQixLQUFLLEVBQUUsU0FBUztnQkFDaEIsUUFBUSxFQUFFLFVBQVU7Z0JBQ3BCLEtBQUssRUFBRSxLQUFLO2FBQ2YsQ0FBQztZQUNGLElBQUksZ0JBQWdCLENBQUM7Z0JBQ2pCLEtBQUssRUFBRSxXQUFXO2dCQUNsQixXQUFXLEVBQUUsSUFBSSxDQUFDLFlBQVk7Z0JBQzlCLFlBQVksRUFBRSxhQUFhO2dCQUMzQixLQUFLLEVBQUUsTUFBTTthQUNoQixDQUFDO1lBQ0YsSUFBSSxnQkFBZ0IsQ0FBQztnQkFDakIsS0FBSyxFQUFFLFNBQVM7Z0JBQ2hCLFFBQVEsRUFBRSxTQUFTO2FBQ3RCLENBQUM7U0FDTCxDQUFDO1FBRUYsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBRWpCLElBQUksQ0FBQyxjQUFjLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUM7UUFDcEMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNuQixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDekIsQ0FBQztJQUVELFdBQVc7UUFDUCxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUMsT0FBTyxDQUFDO1FBQzdDLElBQUksQ0FBQyxPQUFPLENBQUMscUJBQXFCLEdBQUcsS0FBSyxDQUFDO1FBQzNDLElBQUksQ0FBQyxPQUFPLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQztRQUNwQyxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUM7UUFDakMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDO1FBQ2xDLElBQUksQ0FBQyxPQUFPLENBQUMscUJBQXFCLEdBQUcsSUFBSSxDQUFDO1FBQzFDLElBQUksQ0FBQyxPQUFPLENBQUMsdUJBQXVCLEdBQUcsSUFBSSxDQUFDO1FBQzVDLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQztJQUN0QyxDQUFDO0lBRUQsU0FBUztRQUNMLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxHQUFHO1lBQ3BCLElBQUksRUFBRSxLQUFLO1lBQ1gsUUFBUSxFQUFFLEVBQUU7U0FDZixDQUFDO0lBQ04sQ0FBQztJQUVLLGNBQWMsQ0FBQyxRQUFrQjs7WUFDbkMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsUUFBUSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztRQUNqRixDQUFDO0tBQUE7SUFFSyxhQUFhOztZQUNmLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFO2dCQUNkLE9BQU87YUFDVjtZQUVELElBQUksQ0FBQyxVQUFVLEdBQUcsQ0FBQyxNQUFNLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUNwRixJQUFJLENBQUMsbUJBQW1CLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbkcsQ0FBQztLQUFBO0lBRUQsZUFBZSxDQUFDLEdBQUcsRUFBRSxPQUFPO1FBRXhCLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNmLE9BQU87U0FDVjtRQUVELElBQUksQ0FBQyxZQUFZLEdBQUc7WUFDaEI7Z0JBQ0ksS0FBSyxFQUFFLHFCQUFxQixFQUFFLElBQUksRUFBRSxjQUFjLEVBQUUsT0FBTyxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUU7b0JBQ25FLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUM7Z0JBQzNCLENBQUM7YUFDSjtTQUNKLENBQUM7UUFFRixJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsa0JBQWtCLEtBQUssT0FBTyxDQUFDLFdBQVcsRUFBRTtZQUM1RCxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQztnQkFDbkIsS0FBSyxFQUFFLG9CQUFvQjtnQkFDM0IsSUFBSSxFQUFFLGFBQWE7Z0JBQ25CLE9BQU8sRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFO29CQUNmLElBQUksQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLENBQUM7Z0JBQ2xDLENBQUM7YUFDSixDQUFDLENBQUM7U0FDTjtRQUVELElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzNCLEdBQUcsQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUNyQixHQUFHLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVELFlBQVk7SUFDWixtQkFBbUIsQ0FBQyxJQUFvQjtRQUNwQyxNQUFNLEtBQUssR0FBRyxJQUFJLHVCQUF1QixFQUFFLENBQUM7UUFDNUMsS0FBSyxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDO1FBRTlCLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVELHVCQUF1QjtJQUN2QixjQUFjLENBQUMsWUFBOEI7UUFDekMsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLElBQUksR0FBRztZQUNsQyxhQUFhLEVBQUUsWUFBWSxDQUFDLEVBQUU7U0FDakMsQ0FBQztRQUNGLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7SUFDdEMsQ0FBQztJQUVELGVBQWU7UUFDWCxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDO1FBQ25DLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO0lBQy9CLENBQUM7SUFFRCwyQkFBMkI7SUFDM0IsUUFBUSxDQUFDLElBQW9CO1FBQ3pCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxXQUFXLENBQUMsMEJBQTBCLENBQUMsQ0FBQztRQUU5RCxJQUFJLENBQUMsbUJBQW1CLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQzthQUNyRSxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDYixNQUFNLFdBQVcsR0FBbUIsUUFBUSxDQUFDLElBQUksQ0FBQztZQUVsRCxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMseUJBQXlCLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBRW5GLE1BQU0sT0FBTyxHQUFHLElBQUksZUFBZSxFQUFFLENBQUM7WUFDdEMsT0FBTyxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUMsUUFBUSxDQUFDO1lBQzNDLE9BQU8sQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQztZQUUvRCxNQUFNLGVBQWUsR0FBRyxJQUFJLGVBQWUsRUFBRSxDQUFDO1lBQzlDLGVBQWUsQ0FBQyxtQkFBbUIsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDO1lBQzVGLGVBQWUsQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLDBCQUEwQixFQUFFLENBQUM7WUFDdEYsZUFBZSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsMEJBQTBCLEVBQUUsQ0FBQztZQUN0RixlQUFlLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztZQUNsQyxlQUFlLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztZQUMvQixlQUFlLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDO1lBQ3JELGVBQWUsQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUM7WUFDaEQsZUFBZSxDQUFDLE9BQU8sR0FBRyxXQUFXLENBQUMsV0FBVyxDQUFDO1lBQ2xELGVBQWUsQ0FBQyxhQUFhLEdBQUcsV0FBVyxDQUFDLEVBQUUsQ0FBQztZQUMvQyxlQUFlLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDbkUsT0FBTyxDQUFDLElBQUksR0FBRyxlQUFlLENBQUM7WUFFL0IsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUMvQyxDQUFDLEVBQUUsS0FBSyxDQUFDLEVBQUU7WUFDUCxJQUFJLGVBQWUsQ0FBQyxxQkFBcUIsS0FBSyxLQUFLLENBQUMsTUFBTSxFQUFFO2dCQUN4RCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQzthQUM1RDtpQkFDSTtnQkFDRCxJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQztvQkFDckIsUUFBUSxFQUFFLE9BQU87b0JBQ2pCLE9BQU8sRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsT0FBTyxDQUFDLG9DQUFvQyxDQUFDO29CQUM3RSxNQUFNLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxvQ0FBb0MsQ0FBQztvQkFDNUUsSUFBSSxFQUFFLElBQUk7aUJBQ2IsQ0FBQyxDQUFDO2FBQ047UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNYLENBQUM7SUFFRCxvQ0FBb0M7SUFDcEMsZUFBZSxDQUFDLElBQW9CO1FBQ2hDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQzthQUMzRCxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDYixJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRTtnQkFDbkIsT0FBTzthQUNWO1lBRUQsTUFBTSxNQUFNLEdBQUcsb0JBQW9CLENBQUM7WUFDcEMsTUFBTSxHQUFHLEdBQUcscUNBQXFDLElBQUksQ0FBQyxXQUFXLFFBQVEsUUFBUSxDQUFDLElBQUksU0FBUyxDQUFDO1lBQ2hHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxXQUFXLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBQztpQkFDekMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxFQUFFO2dCQUNQLElBQUksQ0FBQyxFQUFFLEVBQUU7b0JBQ0wsT0FBTztpQkFDVjtnQkFFRCxJQUFJLENBQUMsbUJBQW1CLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztxQkFDOUMsSUFBSSxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUU7b0JBQ1QsSUFBSSxFQUFFLENBQUMsT0FBTyxFQUFFO3dCQUNaLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO3dCQUM5QyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7d0JBQ3JCLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO3dCQUMzQixJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxFQUFFLENBQUM7cUJBQ2pDO3lCQUNJO3dCQUNELElBQUksQ0FBQyxZQUFZLENBQUMsb0JBQW9CLENBQUMsRUFBRSxDQUFDLENBQUM7cUJBQzlDO2dCQUNMLENBQUMsQ0FBQyxDQUFDO1lBQ1gsQ0FBQyxDQUFDLENBQUM7UUFDWCxDQUFDLENBQUMsQ0FBQztJQUNYLENBQUM7SUFFRCxlQUFlO0lBQ2YsaUJBQWlCLENBQUMsSUFBb0I7UUFDbEMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGlCQUFpQixFQUFFO2FBQ3BDLElBQUksQ0FBQyxFQUFFLENBQUMsRUFBRTtZQUNQLElBQUksQ0FBQyxFQUFFLEVBQUU7Z0JBQ0wsT0FBTzthQUNWO1lBRUQsSUFBSSxDQUFDLG1CQUFtQixDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7aUJBQzlDLElBQUksQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFO2dCQUNULElBQUksRUFBRSxDQUFDLE9BQU8sRUFBRTtvQkFDWixJQUFJLENBQUMsZ0JBQWdCLENBQUMscUJBQXFCLEVBQUUsQ0FBQztvQkFDOUMsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7aUJBQzlCO3FCQUNJO29CQUNELElBQUksQ0FBQyxZQUFZLENBQUMsb0JBQW9CLENBQUMsRUFBRSxDQUFDLENBQUM7aUJBQzlDO1lBQ0wsQ0FBQyxDQUFDLENBQUM7UUFDWCxDQUFDLENBQUMsQ0FBQztJQUNYLENBQUM7SUFFRCxZQUFZLENBQUMsQ0FBUSxFQUFFLFVBQWU7UUFDbEMsdUJBQXVCO1FBQ3ZCLCtDQUErQztRQUMvQyx5Q0FBeUM7SUFDN0MsQ0FBQzs7O1lBelNKLFNBQVMsU0FBQztnQkFDUCxRQUFRLEVBQUUsbUJBQW1CO2dCQUM3Qix1dEZBQWlEO2dCQUVqRCxTQUFTLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQzs7YUFDdkM7OztZQWpCUSxrQkFBa0I7WUFHbEIsbUJBQW1CO1lBQVksY0FBYztZQUo3QyxtQkFBbUI7WUFIbkIsZUFBZTtZQUhmLG1CQUFtQjtZQUNuQixlQUFlO1lBRmYsYUFBYTtZQUdiLGNBQWM7WUFSVyxRQUFRO1lBY2pDLFVBQVU7WUFJVixtQkFBbUI7WUFJbkIsaUJBQWlCOzs7MEJBWXJCLFNBQVMsU0FBQyxXQUFXLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO3FCQUV4QyxLQUFLO3VCQUNMLEtBQUs7Z0NBRUwsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbmplY3RvciwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgQ29tcG9uZW50Q29udGV4dFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9hcHAtY29udGV4dC9jb21wb25lbnQtY29udGV4dC5zZXJ2aWNlJztcbmltcG9ydCB7IEVkaXRGaWxlQ29tbWFuZCB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9lZGl0LWZpbGUtY29tbWFuZCc7XG5pbXBvcnQgeyBDb21tYW5kVHlwZSwgVG5DbGllbnRDb21tYW5kIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL3RuLWNsaWVudC1jb21tYW5kJztcbmltcG9ydCB7IEF1dGhlblNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9hdXRoZW4uc2VydmljZSc7XG5pbXBvcnQgeyBNb2R1bGVDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvbW9kdWxlLWNvbmZpZy5zZXJ2aWNlJztcbmltcG9ydCB7IE5vdGlmaWVyU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL25vdGlmaWVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgU2lnbmFsUlNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9zaWduYWxyLnNlcnZpY2UnO1xuaW1wb3J0IHsgVG5DbGllbnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvdG4tY2xpZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgRmlsZVZlcnNpb25EVE8gfSBmcm9tICcuLi9tb2RlbHMvZmlsZS12ZXJzaW9uLWR0byc7XG5pbXBvcnQgeyBHZW5lcmF0ZUxpbmtEb3dubG9hZERUTyB9IGZyb20gJy4uL21vZGVscy9nZW5lcmF0ZS1saW5rLWRvd25sb2FkLWR0byc7XG5pbXBvcnQgeyBGaWxlRXhwbG9yZXJTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvZmlsZS1leHBsb3Jlci5zZXJ2aWNlJztcbmltcG9ydCB7IEZpbGVWZXJzaW9uU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2ZpbGUtdmVyc2lvbi5zZXJ2aWNlJztcbmltcG9ydCB7IERvbVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9kb20uc2VydmljZSc7XG5pbXBvcnQgeyBEYXRhTGlzdEJhc2UgfSBmcm9tICcuLi8uLi8uLi9jbGFzc2VzL2Jhc2UvZGF0YS1saXN0LWJhc2UnO1xuaW1wb3J0IHsgQ29uZmlybWF0aW9uU2VydmljZSwgTWVudUl0ZW0sIE1lc3NhZ2VTZXJ2aWNlIH0gZnJvbSAndG4tY3VzdG9tLXByaW1lbmcvYXBpJztcbmltcG9ydCB7IENvbHVtblNjaGVtYUJhc2UsIEhlaWdodFR5cGUsIE1vZGVsU2NoZW1hLCBPcGVyYXRvciB9IGZyb20gJy4uLy4uLy4uL2NsYXNzZXMvZm9ybS1zY2hlbWEnO1xuaW1wb3J0IHsgRG93bmxvYWRMaW5rU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2Rvd25sb2FkLWxpbmsuc2VydmljZSc7XG5pbXBvcnQgeyBGaWxlRXhwbG9yZXJJdGVtIH0gZnJvbSAnLi4vbW9kZWxzL2ZpbGUtZXhwbG9yZXItaXRlbSc7XG5pbXBvcnQgeyBDb21tb25FcnJvckNvZGUgfSBmcm9tICcuLi8uLi8uLi9jbGFzc2VzL2NvbW1vbi1lcnJvci1jb2RlJztcbmltcG9ydCB7IEdyaWRJbmZvIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL2dyaWQtaW5mbyc7XG5pbXBvcnQgeyBGaWxlT2JqZWN0U2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2ZpbGUtb2JqZWN0LnNlcnZpY2UnO1xuaW1wb3J0IHsgQ29udGV4dE1lbnUgfSBmcm9tICd0bi1jdXN0b20tcHJpbWVuZy9jb250ZXh0bWVudSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZmlsZS12ZXJzaW9uLWxpc3QnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9maWxlLXZlcnNpb24tbGlzdC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZmlsZS12ZXJzaW9uLWxpc3QuY29tcG9uZW50LnNjc3MnXSxcbiAgICBwcm92aWRlcnM6IFtDb21wb25lbnRDb250ZXh0U2VydmljZV1cbn0pXG5cblxuZXhwb3J0IGNsYXNzIEZpbGVWZXJzaW9uTGlzdENvbXBvbmVudCBleHRlbmRzIERhdGFMaXN0QmFzZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgICBAVmlld0NoaWxkKENvbnRleHRNZW51LCB7IHN0YXRpYzogZmFsc2UgfSkgY29udGV4dE1lbnU6IENvbnRleHRNZW51O1xuXG4gICAgQElucHV0KCkgZmlsZUlkO1xuICAgIEBJbnB1dCgpIHJlYWRvbmx5ID0gZmFsc2U7XG5cbiAgICBAT3V0cHV0KCkgb25TZXRNYWpvclZlcnNpb24gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICAgIF9tb2R1bGVDb25maWc6IGFueTtcbiAgICBmb3JtczogYW55ID0ge307XG4gICAgZmlsZU9iamVjdDogYW55ID0ge307XG4gICAgaXNTdXBwb3J0Vmlld09ubGluZSA9IGZhbHNlO1xuICAgIHJlYWR5VG9HZXREYXRhID0gZmFsc2U7XG4gICAgX21lbnVCdXR0b25zOiBNZW51SXRlbVtdID0gW107XG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByb3RlY3RlZCBfZmlsZVZlcnNpb25TZXJ2aWNlOiBGaWxlVmVyc2lvblNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgX2NvbmZpcm1TZXJ2aWNlOiBDb25maXJtYXRpb25TZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIF9tZXNzYWdlU2VydmljZTogTWVzc2FnZVNlcnZpY2UsXG4gICAgICAgIHB1YmxpYyBfZmlsZUV4cGxvcmVyU2VydmljZTogRmlsZUV4cGxvcmVyU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBfdG5DbGllbnRTZXJ2aWNlOiBUbkNsaWVudFNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgX21vZHVsZUNvbmZpZ1NlcnZpY2U6IE1vZHVsZUNvbmZpZ1NlcnZpY2UsXG4gICAgICAgIHByb3RlY3RlZCBfbm90aWZpZXJTZXJ2aWNlOiBOb3RpZmllclNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgX2F1dGhlblNlcnZpY2U6IEF1dGhlblNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgX3NpZ25hbHJTZXJ2aWNlOiBTaWduYWxSU2VydmljZSxcbiAgICAgICAgX2luamVjdG9yOiBJbmplY3RvcixcbiAgICAgICAgcHJvdGVjdGVkIF9kb21TZXJ2aWNlOiBEb21TZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIF9kb3dubG9hZExpbmtTZXJ2aWNlOiBEb3dubG9hZExpbmtTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIF9maWxlT2JqZWN0U2VydmljZTogRmlsZU9iamVjdFNlcnZpY2VcbiAgICApIHtcbiAgICAgICAgc3VwZXIoX2luamVjdG9yKTtcbiAgICAgICAgdGhpcy5fbW9kdWxlQ29uZmlnID0gdGhpcy5fbW9kdWxlQ29uZmlnU2VydmljZS5nZXRDb25maWcoKTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgdGhpcy5zZXR0aW5nLmhpZGRlbkF1dGhvcml6ZUJ1dHRvbiA9IHRydWU7XG4gICAgICAgIHRoaXMuc2V0dGluZy5iYXNlU2VydmljZSA9IHRoaXMuX2ZpbGVWZXJzaW9uU2VydmljZTtcbiAgICAgICAgdGhpcy5sb2FkRGV0YWlsRnJvbVF1ZXJ5UGFyYW0gPSB0cnVlO1xuICAgICAgICB0aGlzLnBsdXNVcmwgPSAnR2V0TGlzdFZlcnNpb25CeUZpbGVJZCc7XG5cbiAgICAgICAgdGhpcy5zZXR0aW5nLm1vZGVsU2NoZW1hcyA9IFtcbiAgICAgICAgICAgIG5ldyBNb2RlbFNjaGVtYSh7XG4gICAgICAgICAgICAgICAgZmllbGQ6ICd2ZXJzaW9uTmFtZScsXG4gICAgICAgICAgICAgICAgbmFtZTogJ1BoacOqbiBi4bqjbicsXG4gICAgICAgICAgICAgICAgZnVsbE5hbWU6ICdQaGnDqm4gYuG6o24nLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnUGhpw6puIGLhuqNuJ1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBuZXcgTW9kZWxTY2hlbWEoe1xuICAgICAgICAgICAgICAgIGZpZWxkOiAnc2l6ZScsXG4gICAgICAgICAgICAgICAgbmFtZTogJ0vDrWNoIHRoxrDhu5tjJyxcbiAgICAgICAgICAgICAgICBmdWxsTmFtZTogJ0vDrWNoIHRoxrDhu5tjJyxcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogJ0vDrWNoIHRoxrDhu5tjJ1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBuZXcgTW9kZWxTY2hlbWEoe1xuICAgICAgICAgICAgICAgIGZpZWxkOiAnY3JlYXRlZCcsXG4gICAgICAgICAgICAgICAgZGF0YVR5cGU6ICdpbnQnLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdOZ8OgeSB04bqhbycsXG4gICAgICAgICAgICAgICAgZnVsbE5hbWU6ICdOZ8OgeSB04bqhbycsXG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICdOZ8OgeSB04bqhbydcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgbmV3IE1vZGVsU2NoZW1hKHtcbiAgICAgICAgICAgICAgICBmaWVsZDogJ2NyZWF0ZWRCeScsXG4gICAgICAgICAgICAgICAgbmFtZTogJ05nxrDhu51pIHThuqFvJyxcbiAgICAgICAgICAgICAgICBmdWxsTmFtZTogJ05nxrDhu51pIHThuqFvJyxcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogJ05nxrDhu51pIHThuqFvJ1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBuZXcgTW9kZWxTY2hlbWEoe1xuICAgICAgICAgICAgICAgIGZpZWxkOiAnY29tbWVudCcsXG4gICAgICAgICAgICAgICAgbmFtZTogJ0Now7ogdGjDrWNoJyxcbiAgICAgICAgICAgICAgICBmdWxsTmFtZTogJ0Now7ogdGjDrWNoJyxcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogJ0Now7ogdGjDrWNoJ1xuICAgICAgICAgICAgfSlcbiAgICAgICAgXTtcblxuICAgICAgICB0aGlzLnNldHRpbmcuY29scyA9IFtcbiAgICAgICAgICAgIG5ldyBDb2x1bW5TY2hlbWFCYXNlKHtcbiAgICAgICAgICAgICAgICBmaWVsZDogJ3ZlcnNpb25OYW1lJyxcbiAgICAgICAgICAgICAgICB3aWR0aDogJzhlbSdcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgbmV3IENvbHVtblNjaGVtYUJhc2Uoe1xuICAgICAgICAgICAgICAgIGZpZWxkOiAnc2l6ZScsXG4gICAgICAgICAgICAgICAgZGF0YVR5cGU6ICdmaWxlU2l6ZScsXG4gICAgICAgICAgICAgICAgd2lkdGg6ICc4ZW0nXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIG5ldyBDb2x1bW5TY2hlbWFCYXNlKHtcbiAgICAgICAgICAgICAgICBmaWVsZDogJ2NyZWF0ZWQnLFxuICAgICAgICAgICAgICAgIGRhdGFUeXBlOiAnZGF0ZXRpbWUnLFxuICAgICAgICAgICAgICAgIHdpZHRoOiAnOGVtJ1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBuZXcgQ29sdW1uU2NoZW1hQmFzZSh7XG4gICAgICAgICAgICAgICAgZmllbGQ6ICdjcmVhdGVkQnknLFxuICAgICAgICAgICAgICAgIGJhc2VTZXJ2aWNlOiB0aGlzLl91c2VyU2VydmljZSxcbiAgICAgICAgICAgICAgICBkaXNwbGF5RmllbGQ6ICdmdWxsTmFtZU5ldycsXG4gICAgICAgICAgICAgICAgd2lkdGg6ICcxMGVtJ1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBuZXcgQ29sdW1uU2NoZW1hQmFzZSh7XG4gICAgICAgICAgICAgICAgZmllbGQ6ICdjb21tZW50JyxcbiAgICAgICAgICAgICAgICBkYXRhVHlwZTogJ2NvbW1lbnQnXG4gICAgICAgICAgICB9KVxuICAgICAgICBdO1xuXG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XG5cbiAgICAgICAgdGhpcy5yZWFkeVRvR2V0RGF0YSA9ICEhdGhpcy5maWxlSWQ7XG4gICAgICAgIHRoaXMuaW5pdEZvcm1zKCk7XG4gICAgICAgIHRoaXMuaW5pdFNldHRpbmcoKTtcbiAgICAgICAgdGhpcy5nZXRGaWxlT2JqZWN0KCk7XG4gICAgfVxuXG4gICAgaW5pdFNldHRpbmcoKSB7XG4gICAgICAgIHRoaXMuc2V0dGluZy5oZWlnaHRUeXBlID0gSGVpZ2h0VHlwZS5keW5hbWljO1xuICAgICAgICB0aGlzLnNldHRpbmcuZml4SGVpZ2h0VHlwZUluRGlhbG9nID0gZmFsc2U7XG4gICAgICAgIHRoaXMuc2V0dGluZy5oaWRkZW5GaWx0ZXJSb3cgPSB0cnVlO1xuICAgICAgICB0aGlzLnNldHRpbmcuaGlkZGVuSGVhZGVyID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5zZXR0aW5nLmhpZGRlblNldHRpbmcgPSB0cnVlO1xuICAgICAgICB0aGlzLnNldHRpbmcuaGlkZGVuU2V0dGluZ1dvcmtmbG93ID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5zZXR0aW5nLmhpZGRlblNldHRpbmdQZXJtaXNzaW9uID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5zZXR0aW5nLmhpZGRlblRvb2xiYXIgPSB0cnVlO1xuICAgIH1cblxuICAgIGluaXRGb3JtcygpIHtcbiAgICAgICAgdGhpcy5mb3Jtcy5maWxlVmlld2VyID0ge1xuICAgICAgICAgICAgc2hvdzogZmFsc2UsXG4gICAgICAgICAgICBmb3JtRGF0YToge31cbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBhc3luYyBtb2RpZnlHcmlkSW5mbyhncmlkSW5mbzogR3JpZEluZm8pIHtcbiAgICAgICAgZ3JpZEluZm8uZmlsdGVycy5wdXNoKHRoaXMubmV3RmlsdGVyKCdmaWxlSWQnLCBPcGVyYXRvci5lcXVhbCwgdGhpcy5maWxlSWQpKTtcbiAgICB9XG5cbiAgICBhc3luYyBnZXRGaWxlT2JqZWN0KCkge1xuICAgICAgICBpZiAoIXRoaXMuZmlsZUlkKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmZpbGVPYmplY3QgPSAoYXdhaXQgdGhpcy5fZmlsZU9iamVjdFNlcnZpY2UuZ2V0RGV0YWlsKHRoaXMuZmlsZUlkKSkuZGF0YSB8fCB7fTtcbiAgICAgICAgdGhpcy5pc1N1cHBvcnRWaWV3T25saW5lID0gdGhpcy5fZmlsZU9iamVjdFNlcnZpY2UuaXNTdXBwb3J0ZWRWaWV3T25saW5lKHRoaXMuZmlsZU9iamVjdC5uYW1lKTtcbiAgICB9XG5cbiAgICBzaG93Q29udGV4dE1lbnUoZXZ0LCByb3dEYXRhKSB7XG5cbiAgICAgICAgaWYgKHRoaXMucmVhZG9ubHkpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuX21lbnVCdXR0b25zID0gW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGxhYmVsOiAnQ2jhu4luaCBz4butYSBwaGnDqm4gYuG6o24nLCBpY29uOiAncGkgcGktcGVuY2lsJywgY29tbWFuZDogKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZWRpdEZpbGUocm93RGF0YSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICBdO1xuXG4gICAgICAgIGlmICh0aGlzLmZpbGVPYmplY3QuY3VycmVudEZpbGVWZXJzaW9uICE9PSByb3dEYXRhLnZlcnNpb25OYW1lKSB7XG4gICAgICAgICAgICB0aGlzLl9tZW51QnV0dG9ucy5wdXNoKHtcbiAgICAgICAgICAgICAgICBsYWJlbDogJ07Dom5nIGPhuqVwIHBoacOqbiBi4bqjbicsXG4gICAgICAgICAgICAgICAgaWNvbjogJ3BpIHBpLWNoZWNrJyxcbiAgICAgICAgICAgICAgICBjb21tYW5kOiAoZXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXRNYWpvclZlcnNpb24ocm93RGF0YSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmNvbnRleHRNZW51LnNob3coZXZ0KTtcbiAgICAgICAgZXZ0LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIGV2dC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB9XG5cbiAgICAvLyBU4bqjaSBmaWxlLlxuICAgIGRvd25sb2FkRmlsZVZlcnNpb24oZmlsZTogRmlsZVZlcnNpb25EVE8pIHtcbiAgICAgICAgY29uc3QgbW9kZWwgPSBuZXcgR2VuZXJhdGVMaW5rRG93bmxvYWREVE8oKTtcbiAgICAgICAgbW9kZWwuZmlsZVZlcnNpb25JZCA9IGZpbGUuaWQ7XG5cbiAgICAgICAgdGhpcy5fZG93bmxvYWRMaW5rU2VydmljZS5kb3dubG9hZExpbmsobW9kZWwpO1xuICAgIH1cblxuICAgIC8vIFhlbSBmaWxlIHRy4buxYyB0dXnhur9uLlxuICAgIG9wZW5GaWxlVmlld2VyKGV4cGxvcmVySXRlbTogRmlsZUV4cGxvcmVySXRlbSkge1xuICAgICAgICB0aGlzLmZvcm1zLmZpbGVWaWV3ZXIuZm9ybURhdGEuZGF0YSA9IHtcbiAgICAgICAgICAgIGZpbGVWZXJzaW9uSWQ6IGV4cGxvcmVySXRlbS5pZFxuICAgICAgICB9O1xuICAgICAgICB0aGlzLmZvcm1zLmZpbGVWaWV3ZXIuc2hvdyA9IHRydWU7XG4gICAgfVxuXG4gICAgY2xvc2VGaWxlVmlld2VyKCkge1xuICAgICAgICB0aGlzLmZvcm1zLmZpbGVWaWV3ZXIuc2hvdyA9IGZhbHNlO1xuICAgICAgICB0aGlzLl90cmlnZ2VyUHJvY2Vzc0RhdGEoKTtcbiAgICB9XG5cbiAgICAvLyBDaOG7iW5oIHPhu61hIGLhurFuZyB0bmNsaWVudC5cbiAgICBlZGl0RmlsZShmaWxlOiBGaWxlVmVyc2lvbkRUTykge1xuICAgICAgICB0aGlzLl9ub3RpZmllclNlcnZpY2Uuc2hvd1N1Y2Nlc3MoJ8SQYW5nIGvhur90IG7hu5FpIG3hu58g4bupbmcgZOG7pW5nJyk7XG5cbiAgICAgICAgdGhpcy5fZmlsZVZlcnNpb25TZXJ2aWNlLmNyZWF0ZU5ld01pbm9yVmVyc2lvbihmaWxlLmZpbGVJZCwgZmlsZS5pZCwgdHJ1ZSlcbiAgICAgICAgICAgIC50aGVuKHJlc3BvbnNlID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBmaWxlVmVyc2lvbiA9IDxGaWxlVmVyc2lvbkRUTz5yZXNwb25zZS5kYXRhO1xuXG4gICAgICAgICAgICAgICAgY29uc3QgZmlsZVVybCA9IHRoaXMuX2ZpbGVWZXJzaW9uU2VydmljZS5nZXRGaWxlVmVyc2lvbkRvd25sb2FkVXJsKGZpbGVWZXJzaW9uLmlkKTtcblxuICAgICAgICAgICAgICAgIGNvbnN0IGNvbW1hbmQgPSBuZXcgVG5DbGllbnRDb21tYW5kKCk7XG4gICAgICAgICAgICAgICAgY29tbWFuZC5jb21tYW5kVHlwZSA9IENvbW1hbmRUeXBlLkVkaXRGaWxlO1xuICAgICAgICAgICAgICAgIGNvbW1hbmQua2V5ID0gdGhpcy5fbW9kdWxlQ29uZmlnLmVudmlyb25tZW50LnNpZ25hbHIuY2xpZW50S2V5O1xuXG4gICAgICAgICAgICAgICAgY29uc3QgZWRpdEZpbGVDb21tYW5kID0gbmV3IEVkaXRGaWxlQ29tbWFuZCgpO1xuICAgICAgICAgICAgICAgIGVkaXRGaWxlQ29tbWFuZC5maWxlU2VydmljZUVuZHBvaW50ID0gdGhpcy5fbW9kdWxlQ29uZmlnLmVudmlyb25tZW50LmFwaURvbWFpbi5maWxlRW5kcG9pbnQ7XG4gICAgICAgICAgICAgICAgZWRpdEZpbGVDb21tYW5kLnVwbG9hZEZpbGVBcGkgPSB0aGlzLl9maWxlVmVyc2lvblNlcnZpY2UuZ2V0VXBsb2FkRmlsZVZlcnNpb25BcGlVcmwoKTtcbiAgICAgICAgICAgICAgICBlZGl0RmlsZUNvbW1hbmQucmVtb3ZlRmlsZUFwaSA9IHRoaXMuX2ZpbGVWZXJzaW9uU2VydmljZS5nZXRSZW1vdmVGaWxlVmVyc2lvbkFwaVVybCgpO1xuICAgICAgICAgICAgICAgIGVkaXRGaWxlQ29tbWFuZC5maWxlVXJsID0gZmlsZVVybDtcbiAgICAgICAgICAgICAgICBlZGl0RmlsZUNvbW1hbmQuaXNEcmFmdCA9IHRydWU7XG4gICAgICAgICAgICAgICAgZWRpdEZpbGVDb21tYW5kLmdyb3VwRmlsZU5hbWUgPSB0aGlzLmZpbGVPYmplY3QubmFtZTtcbiAgICAgICAgICAgICAgICBlZGl0RmlsZUNvbW1hbmQuZmlsZU5hbWUgPSB0aGlzLmZpbGVPYmplY3QubmFtZTtcbiAgICAgICAgICAgICAgICBlZGl0RmlsZUNvbW1hbmQudmVyc2lvbiA9IGZpbGVWZXJzaW9uLnZlcnNpb25OYW1lO1xuICAgICAgICAgICAgICAgIGVkaXRGaWxlQ29tbWFuZC5maWxlVmVyc2lvbklkID0gZmlsZVZlcnNpb24uaWQ7XG4gICAgICAgICAgICAgICAgZWRpdEZpbGVDb21tYW5kLmFjY2Vzc1Rva2VuID0gdGhpcy5fYXV0aGVuU2VydmljZS5nZXRBY2Nlc3NUb2tlbigpO1xuICAgICAgICAgICAgICAgIGNvbW1hbmQuZGF0YSA9IGVkaXRGaWxlQ29tbWFuZDtcblxuICAgICAgICAgICAgICAgIHRoaXMuX3RuQ2xpZW50U2VydmljZS5zZW5kQ29tbWFuZChjb21tYW5kKTtcbiAgICAgICAgICAgIH0sIGVycm9yID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoQ29tbW9uRXJyb3JDb2RlLkVSUk9SX1NFUlZJQ0VfTk9UX1JVTiA9PT0gZXJyb3Iuc3RhdHVzKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX25vdGlmaWVyU2VydmljZS5zaG93UmVzcG9uc2VFcnJvcigwLCBudWxsLCAnRmlsZScpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fbWVzc2FnZVNlcnZpY2UuYWRkKHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNldmVyaXR5OiAnZXJyb3InLFxuICAgICAgICAgICAgICAgICAgICAgICAgc3VtbWFyeTogdGhpcy5fdHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdGSUxFX0VYUExPUkVSLk1FU1NBR0VfRVJST1JfSEVBREVSJyksXG4gICAgICAgICAgICAgICAgICAgICAgICBkZXRhaWw6IHRoaXMuX3RyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgnRklMRV9FWFBMT1JFUi5NRVNTQUdFX0VSUk9SX0RFVEFJTCcpLFxuICAgICAgICAgICAgICAgICAgICAgICAgbGlmZTogNTAwMFxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvLyBOw6JuZyB2ZXJzaW9uIGzDqm4gcGhpw6puIGLhuqNuIGNow61uaC5cbiAgICBzZXRNYWpvclZlcnNpb24oZmlsZTogRmlsZVZlcnNpb25EVE8pIHtcbiAgICAgICAgdGhpcy5fZmlsZVZlcnNpb25TZXJ2aWNlLmdldE5leHRNYWpvclZlcnNpb24odGhpcy5maWxlT2JqZWN0LmlkKVxuICAgICAgICAgICAgLnRoZW4ocmVzcG9uc2UgPT4ge1xuICAgICAgICAgICAgICAgIGlmICghcmVzcG9uc2Uuc3VjY2Vzcykge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgY29uc3QgaGVhZGVyID0gJ07Dom5nIGPhuqVwIHBoacOqbiBi4bqjbic7XG4gICAgICAgICAgICAgICAgY29uc3QgbXNnID0gYELhuqFuIGPDsyBtdeG7kW4gbsOibmcgY+G6pXAgcGhpw6puIGLhuqNuIHThu6sgJHtmaWxlLnZlcnNpb25OYW1lfSBsw6puICR7cmVzcG9uc2UuZGF0YX0ga2jDtG5nP2A7XG4gICAgICAgICAgICAgICAgdGhpcy5fbm90aWZpZXJTZXJ2aWNlLnNob3dDb25maXJtKG1zZywgaGVhZGVyKVxuICAgICAgICAgICAgICAgICAgICAudGhlbihycyA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoIXJzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLl9maWxlVmVyc2lvblNlcnZpY2Uuc2V0VmVyc2lvblRvTWFqb3IoZmlsZS5pZClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAudGhlbigocnMpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJzLnN1Y2Nlc3MpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX25vdGlmaWVyU2VydmljZS5zaG93VXBkYXRlRGF0YVN1Y2Nlc3MoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZ2V0RmlsZU9iamVjdCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5fdHJpZ2dlclByb2Nlc3NEYXRhKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm9uU2V0TWFqb3JWZXJzaW9uLmVtaXQoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX2NydWRTZXJ2aWNlLnByb2Nlc3NFcnJvclJlc3BvbnNlKHJzKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8vIFjDs2EgdmVyc2lvbi5cbiAgICBkZWxldGVWZXJzaW9uRmlsZShmaWxlOiBGaWxlVmVyc2lvbkRUTykge1xuICAgICAgICB0aGlzLl9ub3RpZmllclNlcnZpY2Uuc2hvd0RlbGV0ZUNvbmZpcm0oKVxuICAgICAgICAgICAgLnRoZW4ocnMgPT4ge1xuICAgICAgICAgICAgICAgIGlmICghcnMpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHRoaXMuX2ZpbGVWZXJzaW9uU2VydmljZS5kZWxldGVGaWxlVmVyc2lvbihmaWxlLmlkKVxuICAgICAgICAgICAgICAgICAgICAudGhlbigocnMpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChycy5zdWNjZXNzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5fbm90aWZpZXJTZXJ2aWNlLnNob3dEZWxldGVEYXRhU3VjY2VzcygpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX3RyaWdnZXJQcm9jZXNzRGF0YSgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5fY3J1ZFNlcnZpY2UucHJvY2Vzc0Vycm9yUmVzcG9uc2UocnMpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIHZpZXdMaXN0U2lnbihlOiBFdmVudCwgc2lnbmF0dXJlczogYW55KSB7XG4gICAgICAgIC8vIGUuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIC8vIHRoaXMuZGF0YS5zaWduYXR1cmVEZXRhaWwuZGF0YSA9IHNpZ25hdHVyZXM7XG4gICAgICAgIC8vIHRoaXMuZGF0YS5zaWduYXR1cmVEZXRhaWwuc2hvdyA9IHRydWU7XG4gICAgfVxufVxuXG5cbiJdfQ==
@@ -11,6 +11,7 @@ export class KySoSimDanhSachChuKyComponent extends DataListBase {
11
11
  this._kySoSimChuKyUserService = _kySoSimChuKyUserService;
12
12
  }
13
13
  ngOnInit() {
14
+ this.setting.hiddenAuthorizeButton = true;
14
15
  this.loadDetailFromQueryParam = true;
15
16
  this.setting.baseService = this._kySoSimChuKyUserService;
16
17
  this.setting.hiddenSettingWorkflow = true;
@@ -102,4 +103,4 @@ KySoSimDanhSachChuKyComponent.ctorParameters = () => [
102
103
  KySoSimDanhSachChuKyComponent.propDecorators = {
103
104
  formData: [{ type: Input }]
104
105
  };
105
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3ktc28tc2ltLWRhbmgtc2FjaC1jaHUta3kuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdG54LXNoYXJlZC9zcmMvbGliL2NvbXBvbmVudHMvZmlsZS1leHBsb3Jlci9reS1zby1zaW0tZGFuaC1zYWNoLWNodS1reS9reS1zby1zaW0tZGFuaC1zYWNoLWNodS1reS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsUUFBUSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUV6RixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDcEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFdBQVcsRUFBRSxRQUFRLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUN2RixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQVFwRixNQUFNLE9BQU8sNkJBQThCLFNBQVEsWUFBWTtJQUUzRCxZQUNjLFVBQW9CLEVBQ3BCLHdCQUFpRDtRQUUzRCxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUM7UUFIUixlQUFVLEdBQVYsVUFBVSxDQUFVO1FBQ3BCLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBeUI7SUFHL0QsQ0FBQztJQUNELFFBQVE7UUFDSixJQUFJLENBQUMsd0JBQXdCLEdBQUcsSUFBSSxDQUFDO1FBQ3JDLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyx3QkFBd0IsQ0FBQztRQUN6RCxJQUFJLENBQUMsT0FBTyxDQUFDLHFCQUFxQixHQUFHLElBQUksQ0FBQztRQUMxQyxJQUFJLENBQUMsT0FBTyxDQUFDLHFCQUFxQixHQUFHLElBQUksQ0FBQztRQUMxQyxJQUFJLENBQUMsT0FBTyxDQUFD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eyBDb21wb25lbnQsIE9uSW5pdCwgSW5qZWN0b3IsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21wb25lbnRDb250ZXh0U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL2FwcC1jb250ZXh0L2NvbXBvbmVudC1jb250ZXh0LnNlcnZpY2UnO1xuaW1wb3J0IHsgR3JpZEluZm8gfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvZ3JpZC1pbmZvJztcbmltcG9ydCB7IERhdGFMaXN0QmFzZSB9IGZyb20gJy4uLy4uLy4uL2NsYXNzZXMvYmFzZS9kYXRhLWxpc3QtYmFzZSc7XG5pbXBvcnQgeyBDb2x1bW5TY2hlbWFCYXNlLCBNb2RlbFNjaGVtYSwgT3BlcmF0b3IgfSBmcm9tICcuLi8uLi8uLi9jbGFzc2VzL2Zvcm0tc2NoZW1hJztcbmltcG9ydCB7IEt5U29TaW1DaHVLeVVzZXJTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMva3ktc28tc2ltLWNodS1reS11c2VyLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2FwcC1reS1zby1zaW0tZGFuaC1zYWNoLWNodS1reScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2t5LXNvLXNpbS1kYW5oLXNhY2gtY2h1LWt5LmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9reS1zby1zaW0tZGFuaC1zYWNoLWNodS1reS5jb21wb25lbnQuc2NzcyddLFxuICAgIHByb3ZpZGVyczogW0NvbXBvbmVudENvbnRleHRTZXJ2aWNlXVxufSlcbmV4cG9ydCBjbGFzcyBLeVNvU2ltRGFuaFNhY2hDaHVLeUNvbXBvbmVudCBleHRlbmRzIERhdGFMaXN0QmFzZSBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgQElucHV0KCkgZm9ybURhdGE6IGFueTtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJvdGVjdGVkIF9pbmplY3Rpb246IEluamVjdG9yLFxuICAgICAgICBwcm90ZWN0ZWQgX2t5U29TaW1DaHVLeVVzZXJTZXJ2aWNlOiBLeVNvU2ltQ2h1S3lVc2VyU2VydmljZVxuICAgICkge1xuICAgICAgICBzdXBlcihfaW5qZWN0aW9uKTtcbiAgICB9XG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIHRoaXMubG9hZERldGFpbEZyb21RdWVyeVBhcmFtID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5zZXR0aW5nLmJhc2VTZXJ2aWNlID0gdGhpcy5fa3lTb1NpbUNodUt5VXNlclNlcnZpY2U7XG4gICAgICAgIHRoaXMuc2V0dGluZy5oaWRkZW5TZXR0aW5nV29ya2Zsb3cgPSB0cnVlO1xuICAgICAgICB0aGlzLnNldHRpbmcuaGlkZGVuU2V0dGluZ1dvcmtmbG93ID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5zZXR0aW5nLmhpZGRlblNldHRpbmdQZXJtaXNzaW9uID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5zZXR0aW5nLmhpZGRlblBhZ2VUaXRsZSA9IHRydWU7XG4gICAgICAgIHRoaXMuc2V0dGluZy5zaG93RWRpdExpbmsgPSBmYWxzZTtcbiAgICAgICAgLy8gdGhpcy5zZXR0aW5nLmhpZGRlbkFkdmFuY2VTZWFyY2ggPSB0cnVlO1xuICAgICAgICB0aGlzLmluaXRHcmlkKCk7XG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XG4gICAgfVxuICAgIGluaXRHcmlkKCkge1xuICAgICAgICB0aGlzLnNldHRpbmcubW9kZWxTY2hlbWFzID0gW1xuICAgICAgICAgICAgbmV3IE1vZGVsU2NoZW1hKHtcbiAgICAgICAgICAgICAgICBmaWVsZDogJ25hbWUnLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdUw6puJyxcbiAgICAgICAgICAgICAgICBmdWxsTmFtZTogJ1TDqm4nLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnVMOqbidcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgbmV3IE1vZGVsU2NoZW1hKHtcbiAgICAgICAgICAgICAgICBmaWVsZDogJ2FuaCcsXG4gICAgICAgICAgICAgICAgbmFtZTogJ0jDrG5oIOG6o25oJyxcbiAgICAgICAgICAgICAgICBmdWxsTmFtZTogJ0jDrG5oIOG6o25oJyxcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogJ0jDrG5oIOG6o25oJ1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBuZXcgTW9kZWxTY2hlbWEoe1xuICAgICAgICAgICAgICAgIGZpZWxkOiAncGhvbmVOdW1iZXInLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdT4buRIMSRaeG7h24gdGhv4bqhaSBrw70nLFxuICAgICAgICAgICAgICAgIGZ1bGxOYW1lOiAnU+G7kSDEkWnhu4duIHRob+G6oWkga8O9JyxcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogJ1Phu5EgxJFp4buHbiB0aG/huqFpIGvDvSdcbiAgICAgICAgICAgIH0pXG4gICAgICAgIF07XG5cbiAgICAgICAgdGhpcy5zZXR0aW5nLmNvbHMgPSBbXG4gICAgICAgICAgICBuZXcgQ29sdW1uU2NoZW1hQmFzZSh7XG4gICAgICAgICAgICAgICAgZmllbGQ6ICduYW1lJyxcbiAgICAgICAgICAgICAgICBzb3J0OiB0cnVlLFxuICAgICAgICAgICAgICAgIHdpZHRoOiAnNDAlJyxcbiAgICAgICAgICAgICAgICBhbGxvd0ZpbHRlcjogZmFsc2UsXG4gICAgICAgICAgICAgICAgZGF0YVR5cGU6ICduYW1lJ1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBuZXcgQ29sdW1uU2NoZW1hQmFzZSh7XG4gICAgICAgICAgICAgICAgZmllbGQ6ICdhbmgnLFxuICAgICAgICAgICAgICAgIHNvcnQ6IHRydWUsXG4gICAgICAgICAgICAgICAgd2lkdGg6ICc0MCUnLFxuICAgICAgICAgICAgICAgIHRleHRBbGlnbjogMSxcbiAgICAgICAgICAgICAgICBhbGxvd0ZpbHRlcjogZmFsc2UsXG4gICAgICAgICAgICAgICAgZGF0YVR5cGU6ICdhbmgnXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIG5ldyBDb2x1bW5TY2hlbWFCYXNlKHtcbiAgICAgICAgICAgICAgICBmaWVsZDogJ3Bob25lTnVtYmVyJyxcbiAgICAgICAgICAgICAgICB3aWR0aDogJzIwJScsXG4gICAgICAgICAgICAgICAgdGV4dEFsaWduOiAxLFxuICAgICAgICAgICAgICAgIGFsbG93RmlsdGVyOiBmYWxzZVxuICAgICAgICAgICAgfSlcbiAgICAgICAgXTtcbiAgICB9XG4gICAgYXN5bmMgbW9kaWZ5R3JpZEluZm8oZ3JpZEluZm86IEdyaWRJbmZvKSB7XG4gICAgICAgIGNvbnN0IHVzZXJJbmZvID0gdGhpcy5fdXNlclNlcnZpY2UuZ2V0Q3VycmVudFVzZXIoKTtcbiAgICAgICAgaWYgKCF1c2VySW5mbykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGdyaWRJbmZvLmZpbHRlcnMucHVzaCh0aGlzLm5ld0ZpbHRlclY0KCd1c2VyTmFtZScsIE9wZXJhdG9yLmVxdWFsLCB1c2VySW5mby51c2VyTmFtZSkpO1xuICAgIH1cbiAgICBvblJvd1NlbGVjdGVkKCRldnQpIHtcbiAgICAgICAgdGhpcy5maXJlRXZlbnRDaG9uQ2h1S3koJGV2dC5kYXRhKTtcbiAgICB9XG4gICAgYnRuQ2hvbkNodUt5KGRhdGEpIHtcbiAgICAgICAgdGhpcy5maXJlRXZlbnRDaG9uQ2h1S3koZGF0YSk7XG4gICAgfVxuICAgIGZpcmVFdmVudENob25DaHVLeShkYXRhKSB7XG4gICAgICAgIHRoaXMucGFyZW50Q29udGV4dC5maXJlRXZlbnQoJ0Nob25DaHVLeVNvJywgZGF0YSk7XG4gICAgICAgIHRoaXMuZm9ybURhdGEuc2hvdyA9IGZhbHNlO1xuICAgIH1cblxufVxuXG4iXX0=
106
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3ktc28tc2ltLWRhbmgtc2FjaC1jaHUta3kuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdG54LXNoYXJlZC9zcmMvbGliL2NvbXBvbmVudHMvZmlsZS1leHBsb3Jlci9reS1zby1zaW0tZGFuaC1zYWNoLWNodS1reS9reS1zby1zaW0tZGFuaC1zYWNoLWNodS1reS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsUUFBUSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUV6RixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDcEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFdBQVcsRUFBRSxRQUFRLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUN2RixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQVFwRixNQUFNLE9BQU8sNkJBQThCLFNBQVEsWUFBWTtJQUUzRCxZQUNjLFVBQW9CLEVBQ3BCLHdCQUFpRDtRQUUzRCxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUM7UUFIUixlQUFVLEdBQVYsVUFBVSxDQUFVO1FBQ3BCLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBeUI7SUFHL0QsQ0FBQztJQUNELFFBQVE7UUFDSixJQUFJLENBQUMsT0FBTyxDQUFDLHFCQUFxQixHQUFHLElBQUksQ0FBQztRQUMxQyxJQUFJLENBQUMsd0JBQXdCLEdBQUcsSUFBSSxDQUFDO1FBQ3JDLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyx3QkFBd0IsQ0FBQztRQUN6RCxJQUFJLENBQUMsT0FBTyxDQUFDLHFCQUFxQixHQUFHLElBQUksQ0FBQztRQUMxQyxJQUFJLENBQUMsT0FBTyxDQUFD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dUJBQXVCOzs7dUJBUzNCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgSW5qZWN0b3IsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21wb25lbnRDb250ZXh0U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL2FwcC1jb250ZXh0L2NvbXBvbmVudC1jb250ZXh0LnNlcnZpY2UnO1xuaW1wb3J0IHsgR3JpZEluZm8gfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvZ3JpZC1pbmZvJztcbmltcG9ydCB7IERhdGFMaXN0QmFzZSB9IGZyb20gJy4uLy4uLy4uL2NsYXNzZXMvYmFzZS9kYXRhLWxpc3QtYmFzZSc7XG5pbXBvcnQgeyBDb2x1bW5TY2hlbWFCYXNlLCBNb2RlbFNjaGVtYSwgT3BlcmF0b3IgfSBmcm9tICcuLi8uLi8uLi9jbGFzc2VzL2Zvcm0tc2NoZW1hJztcbmltcG9ydCB7IEt5U29TaW1DaHVLeVVzZXJTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMva3ktc28tc2ltLWNodS1reS11c2VyLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2FwcC1reS1zby1zaW0tZGFuaC1zYWNoLWNodS1reScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2t5LXNvLXNpbS1kYW5oLXNhY2gtY2h1LWt5LmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9reS1zby1zaW0tZGFuaC1zYWNoLWNodS1reS5jb21wb25lbnQuc2NzcyddLFxuICAgIHByb3ZpZGVyczogW0NvbXBvbmVudENvbnRleHRTZXJ2aWNlXVxufSlcbmV4cG9ydCBjbGFzcyBLeVNvU2ltRGFuaFNhY2hDaHVLeUNvbXBvbmVudCBleHRlbmRzIERhdGFMaXN0QmFzZSBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgQElucHV0KCkgZm9ybURhdGE6IGFueTtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJvdGVjdGVkIF9pbmplY3Rpb246IEluamVjdG9yLFxuICAgICAgICBwcm90ZWN0ZWQgX2t5U29TaW1DaHVLeVVzZXJTZXJ2aWNlOiBLeVNvU2ltQ2h1S3lVc2VyU2VydmljZVxuICAgICkge1xuICAgICAgICBzdXBlcihfaW5qZWN0aW9uKTtcbiAgICB9XG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIHRoaXMuc2V0dGluZy5oaWRkZW5BdXRob3JpemVCdXR0b24gPSB0cnVlO1xuICAgICAgICB0aGlzLmxvYWREZXRhaWxGcm9tUXVlcnlQYXJhbSA9IHRydWU7XG4gICAgICAgIHRoaXMuc2V0dGluZy5iYXNlU2VydmljZSA9IHRoaXMuX2t5U29TaW1DaHVLeVVzZXJTZXJ2aWNlO1xuICAgICAgICB0aGlzLnNldHRpbmcuaGlkZGVuU2V0dGluZ1dvcmtmbG93ID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5zZXR0aW5nLmhpZGRlblNldHRpbmdXb3JrZmxvdyA9IHRydWU7XG4gICAgICAgIHRoaXMuc2V0dGluZy5oaWRkZW5TZXR0aW5nUGVybWlzc2lvbiA9IHRydWU7XG4gICAgICAgIHRoaXMuc2V0dGluZy5oaWRkZW5QYWdlVGl0bGUgPSB0cnVlO1xuICAgICAgICB0aGlzLnNldHRpbmcuc2hvd0VkaXRMaW5rID0gZmFsc2U7XG4gICAgICAgIC8vIHRoaXMuc2V0dGluZy5oaWRkZW5BZHZhbmNlU2VhcmNoID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5pbml0R3JpZCgpO1xuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgIH1cbiAgICBpbml0R3JpZCgpIHtcbiAgICAgICAgdGhpcy5zZXR0aW5nLm1vZGVsU2NoZW1hcyA9IFtcbiAgICAgICAgICAgIG5ldyBNb2RlbFNjaGVtYSh7XG4gICAgICAgICAgICAgICAgZmllbGQ6ICduYW1lJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnVMOqbicsXG4gICAgICAgICAgICAgICAgZnVsbE5hbWU6ICdUw6puJyxcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogJ1TDqm4nXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIG5ldyBNb2RlbFNjaGVtYSh7XG4gICAgICAgICAgICAgICAgZmllbGQ6ICdhbmgnLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdIw6xuaCDhuqNuaCcsXG4gICAgICAgICAgICAgICAgZnVsbE5hbWU6ICdIw6xuaCDhuqNuaCcsXG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICdIw6xuaCDhuqNuaCdcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgbmV3IE1vZGVsU2NoZW1hKHtcbiAgICAgICAgICAgICAgICBmaWVsZDogJ3Bob25lTnVtYmVyJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnU+G7kSDEkWnhu4duIHRob+G6oWkga8O9JyxcbiAgICAgICAgICAgICAgICBmdWxsTmFtZTogJ1Phu5EgxJFp4buHbiB0aG/huqFpIGvDvScsXG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICdT4buRIMSRaeG7h24gdGhv4bqhaSBrw70nXG4gICAgICAgICAgICB9KVxuICAgICAgICBdO1xuXG4gICAgICAgIHRoaXMuc2V0dGluZy5jb2xzID0gW1xuICAgICAgICAgICAgbmV3IENvbHVtblNjaGVtYUJhc2Uoe1xuICAgICAgICAgICAgICAgIGZpZWxkOiAnbmFtZScsXG4gICAgICAgICAgICAgICAgc29ydDogdHJ1ZSxcbiAgICAgICAgICAgICAgICB3aWR0aDogJzQwJScsXG4gICAgICAgICAgICAgICAgYWxsb3dGaWx0ZXI6IGZhbHNlLFxuICAgICAgICAgICAgICAgIGRhdGFUeXBlOiAnbmFtZSdcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgbmV3IENvbHVtblNjaGVtYUJhc2Uoe1xuICAgICAgICAgICAgICAgIGZpZWxkOiAnYW5oJyxcbiAgICAgICAgICAgICAgICBzb3J0OiB0cnVlLFxuICAgICAgICAgICAgICAgIHdpZHRoOiAnNDAlJyxcbiAgICAgICAgICAgICAgICB0ZXh0QWxpZ246IDEsXG4gICAgICAgICAgICAgICAgYWxsb3dGaWx0ZXI6IGZhbHNlLFxuICAgICAgICAgICAgICAgIGRhdGFUeXBlOiAnYW5oJ1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBuZXcgQ29sdW1uU2NoZW1hQmFzZSh7XG4gICAgICAgICAgICAgICAgZmllbGQ6ICdwaG9uZU51bWJlcicsXG4gICAgICAgICAgICAgICAgd2lkdGg6ICcyMCUnLFxuICAgICAgICAgICAgICAgIHRleHRBbGlnbjogMSxcbiAgICAgICAgICAgICAgICBhbGxvd0ZpbHRlcjogZmFsc2VcbiAgICAgICAgICAgIH0pXG4gICAgICAgIF07XG4gICAgfVxuICAgIGFzeW5jIG1vZGlmeUdyaWRJbmZvKGdyaWRJbmZvOiBHcmlkSW5mbykge1xuICAgICAgICBjb25zdCB1c2VySW5mbyA9IHRoaXMuX3VzZXJTZXJ2aWNlLmdldEN1cnJlbnRVc2VyKCk7XG4gICAgICAgIGlmICghdXNlckluZm8pIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBncmlkSW5mby5maWx0ZXJzLnB1c2godGhpcy5uZXdGaWx0ZXJWNCgndXNlck5hbWUnLCBPcGVyYXRvci5lcXVhbCwgdXNlckluZm8udXNlck5hbWUpKTtcbiAgICB9XG4gICAgb25Sb3dTZWxlY3RlZCgkZXZ0KSB7XG4gICAgICAgIHRoaXMuZmlyZUV2ZW50Q2hvbkNodUt5KCRldnQuZGF0YSk7XG4gICAgfVxuICAgIGJ0bkNob25DaHVLeShkYXRhKSB7XG4gICAgICAgIHRoaXMuZmlyZUV2ZW50Q2hvbkNodUt5KGRhdGEpO1xuICAgIH1cbiAgICBmaXJlRXZlbnRDaG9uQ2h1S3koZGF0YSkge1xuICAgICAgICB0aGlzLnBhcmVudENvbnRleHQuZmlyZUV2ZW50KCdDaG9uQ2h1S3lTbycsIGRhdGEpO1xuICAgICAgICB0aGlzLmZvcm1EYXRhLnNob3cgPSBmYWxzZTtcbiAgICB9XG5cbn1cblxuIl19
@@ -107,7 +107,8 @@ export class SettingAuthorizeButtonComponent extends DataListBase {
107
107
  ngOnDestroy() {
108
108
  const buttonSetting = JSON.parse(sessionStorage.getItem(ComCtxConstants.LOCALSTORAGE_KEY.BUTTON_AUTHORIZE) || '{}');
109
109
  this.model.dataSource.forEach(rowData => {
110
- const buttonItem = buttonSetting[this.authorizeButtonKey].find(p => p.code == rowData.code);
110
+ var _a;
111
+ const buttonItem = (_a = buttonSetting[this.authorizeButtonKey]) === null || _a === void 0 ? void 0 : _a.find(p => p.code == rowData.code);
111
112
  if (rowData.isAuthorize && !buttonItem) {
112
113
  buttonSetting[this.authorizeButtonKey].push({
113
114
  id: rowData.id,
@@ -139,4 +140,4 @@ SettingAuthorizeButtonComponent.propDecorators = {
139
140
  authorizeButtonKey: [{ type: Input }],
140
141
  dataSource: [{ type: Input }]
141
142
  };
142
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dGluZ3MtYXV0aG9yaXplLWJ1dHRvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90bngtc2hhcmVkL3NyYy9saWIvY29tcG9uZW50cy9zZXR0aW5ncy9zZXR0aW5ncy1hdXRob3JpemUtYnV0dG9uL3NldHRpbmdzLWF1dGhvcml6ZS1idXR0b24uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxlQUFlLEVBQUUsdUJBQXVCLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBWSxVQUFVLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDakwsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFTakYsTUFBTSxPQUFPLCtCQUFnQyxTQUFRLFlBQVk7SUFLN0QsWUFDYyxTQUFtQixFQUNuQixzQkFBNkMsRUFDN0Msb0JBQXlDO1FBRW5ELEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUpQLGNBQVMsR0FBVCxTQUFTLENBQVU7UUFDbkIsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUF1QjtRQUM3Qyx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXFCO1FBTjlDLHVCQUFrQixHQUFHLEVBQUUsQ0FBQztRQUN4QixlQUFVLEdBQUcsRUFBRSxDQUFDO1FBQ3pCLFlBQU8sR0FBRyxFQUFFLENBQUM7SUFPYixDQUFDO0lBRUQsUUFBUTtRQUNKLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLFNBQVMsRUFBRSxDQUFDLE9BQU8sQ0FBQztRQUM3RCxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsc0JBQXNCLENBQUM7UUFD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LGtCQUFrQixDQUFDLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQzthQUMzRDtRQUNMLENBQUMsQ0FBQyxDQUFDO1FBQ0gsY0FBYyxDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUMsZ0JBQWdCLENBQUMsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDO0lBQzdHLENBQUM7OztZQTlISixTQUFTLFNBQUM7Z0JBQ1AsUUFBUSxFQUFFLDJCQUEyQjtnQkFDckMsc3BDQUF5RDtnQkFFekQsU0FBUyxFQUFFLENBQUMsdUJBQXVCLENBQUM7O2FBQ3ZDOzs7WUFWa0MsUUFBUTtZQUVsQyxxQkFBcUI7WUFEa0csbUJBQW1COzs7aUNBWTlJLEtBQUs7eUJBQ0wsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENvbXBvbmVudCwgSW5qZWN0b3IsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbHVtblNjaGVtYUJhc2UsIENvbUN0eENvbnN0YW50cywgQ29tcG9uZW50Q29udGV4dFNlcnZpY2UsIERhdGFMaXN0QmFzZSwgRGF0YVR5cGUsIEdyaWRJbmZvLCBIZWlnaHRUeXBlLCBNb2RlbFNjaGVtYSwgTW9kdWxlQ29uZmlnU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3B1YmxpYy1hcGknO1xuaW1wb3J0IHsgQmFzZVBlcm1pc3Npb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvYmFzZXBlcm1pc3Npb24uc2VydmljZSc7XG5cblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdzZXR0aW5ncy1hdXRob3JpemUtYnV0dG9uJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vc2V0dGluZ3MtYXV0aG9yaXplLWJ1dHRvbi5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vc2V0dGluZ3MtYXV0aG9yaXplLWJ1dHRvbi5jb21wb25lbnQuc2NzcyddLFxuICAgIHByb3ZpZGVyczogW0NvbXBvbmVudENvbnRleHRTZXJ2aWNlXSxcbn0pXG5leHBvcnQgY2xhc3MgU2V0dGluZ0F1dGhvcml6ZUJ1dHRvbkNvbXBvbmVudCBleHRlbmRzIERhdGFMaXN0QmFzZSBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCB7XG5cbiAgICBASW5wdXQoKSBhdXRob3JpemVCdXR0b25LZXkgPSAnJztcbiAgICBASW5wdXQoKSBkYXRhU291cmNlID0gW107XG4gICAgYXBwQ29kZSA9ICcnO1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcm90ZWN0ZWQgX2luamVjdG9yOiBJbmplY3RvcixcbiAgICAgICAgcHJvdGVjdGVkIF9iYXNlUGVybWlzc2lvblNlcnZpY2U6IEJhc2VQZXJtaXNzaW9uU2VydmljZSxcbiAgICAgICAgcHJvdGVjdGVkIF9tb2R1bGVDb25maWdTZXJ2aWNlOiBNb2R1bGVDb25maWdTZXJ2aWNlXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKF9pbmplY3Rvcik7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIHRoaXMuYXBwQ29kZSA9IHRoaXMuX21vZHVsZUNvbmZpZ1NlcnZpY2UuZ2V0Q29uZmlnKCkuYXBwQ29kZTtcbiAgICAgICAgdGhpcy5zZXR0aW5nLmJhc2VTZXJ2aWNlID0gdGhpcy5fYmFzZVBlcm1pc3Npb25TZXJ2aWNlO1xuICAgICAgICB0aGlzLmN1c3RvbUdldERhdGEgPSB0cnVlO1xuICAgICAgICB0aGlzLnNldHRpbmcuaGlkZGVuQWR2YW5jZVNlYXJjaCA9IHRydWU7XG4gICAgICAgIHRoaXMuc2V0dGluZy5oaWRkZW5IZWFkZXIgPSB0cnVlO1xuICAgICAgICB0aGlzLnNldHRpbmcuaGVpZ2h0VHlwZSA9IEhlaWdodFR5cGUuZHluYW1pYztcbiAgICAgICAgdGhpcy5zZXR0aW5nLmhpZGRlbk9yZGVyQ29sdW1uID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5zZXR0aW5nLmhpZGRlbkZpbHRlclJvdyA9IHRydWU7XG4gICAgICAgIHRoaXMuc2V0dGluZy5oaWRkZW5TZXR0aW5nV29ya2Zsb3cgPSB0cnVlO1xuICAgICAgICB0aGlzLnNldHRpbmcuaGlkZGVuQXV0aG9yaXplQnV0dG9uID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5zZXR0aW5nLmhpZGRlblNldHRpbmdQZXJtaXNzaW9uID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5zZXR0aW5nLmZpeEhlaWdodFR5cGVJbkRpYWxvZyA9IGZhbHNlO1xuICAgICAgICB0aGlzLnNldHRpbmcuaGlkZGVuQ2hlY2tib3ggPSBmYWxzZTtcbiAgICAgICAgdGhpcy5zZXR0aW5nLnNob3dFZGl0TGluayA9IGZhbHNlO1xuICAgICAgICB0aGlzLnNldHRpbmcubW9kZWxTY2hlbWFzID0gW1xuICAgICAgICAgICAgbmV3IE1vZGVsU2NoZW1hKHtcbiAgICAgICAgICAgICAgICBmaWVsZDogJ3Blcm1pc3Npb25Db2RlJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnTcOjJyxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgbmV3IE1vZGVsU2NoZW1hKHtcbiAgICAgICAgICAgICAgICBmaWVsZDogJ3Jhd1RleHQnLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdUw6puJyxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgbmV3IE1vZGVsU2NoZW1hKHtcbiAgICAgICAgICAgICAgICBmaWVsZDogJ2lzQXV0aG9yaXplJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnxJDDoyB04bqhbyBxdXnhu4FuJyxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgbmV3IE1vZGVsU2NoZW1hKHtcbiAgICAgICAgICAgICAgICBmaWVsZDogJ21hMScsXG4gICAgICAgICAgICAgICAgbmFtZTogJ03DoycsXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgXTtcbiAgICAgICAgdGhpcy5zZXR0aW5nLmNvbHMgPSBbXG4gICAgICAgICAgICBuZXcgQ29sdW1uU2NoZW1hQmFzZSh7IGZpZWxkOiAncGVybWlzc2lvbkNvZGUnLCBzb3J0OiBmYWxzZSwgc2hvd0VkaXRMaW5rOiBmYWxzZSB9KSxcbiAgICAgICAgICAgIG5ldyBDb2x1bW5TY2hlbWFCYXNlKHsgZmllbGQ6ICdyYXdUZXh0Jywgd2lkdGg6ICcyMzBweCcsIHNvcnQ6IGZhbHNlIH0pLFxuICAgICAgICAgICAgbmV3IENvbHVtblNjaGVtYUJhc2UoeyBmaWVsZDogJ2lzQXV0aG9yaXplJywgZGF0YVR5cGU6IERhdGFUeXBlLmJvb2xlYW4sIHdpZHRoOiAnMTAwcHgnLCBzb3J0OiBmYWxzZSB9KSxcbiAgICAgICAgXTtcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcbiAgICB9XG5cblxuICAgIGdldERhdGFDdXN0b20oZ3JpZEluZm86IEdyaWRJbmZvKSB7XG4gICAgICAgIHRoaXMubW9kZWwuZGF0YVNvdXJjZSA9IHRoaXMuZGF0YVNvdXJjZTtcbiAgICAgICAgdGhpcy5hZnRlckdldERhdGEoKTtcbiAgICB9XG5cbiAgICBhc3luYyBhZGRCYXNlUGVybWlzc2lvbihyb3dEYXRhKSB7XG4gICAgICAgIGNvbnN0IGluc2VydFJlcyA9IGF3YWl0IHRoaXMuX2Jhc2VQZXJtaXNzaW9uU2VydmljZS5wb3N0KHJvd0RhdGEpO1xuICAgICAgICBpZiAoaW5zZXJ0UmVzLnN1Y2Nlc3MpIHtcbiAgICAgICAgICAgIHRoaXMuX25vdGlmaWVyU2VydmljZS5zaG93U3VjY2VzcygnVGjDqm0gcXV54buBbiB0aMOgbmggY8O0bmcnKTtcbiAgICAgICAgICAgIHRoaXMudXBkYXRlRGF0YVNvdXJjZShpbnNlcnRSZXMuZGF0YSk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5fbm90aWZpZXJTZXJ2aWNlLnNob3dXYXJuaW5nKCdDw7MgbOG7l2kgdHJvbmcgcXXDoSB0csOsbmggeOG7rSBsw70sIHZ1aSBsw7JuZyB0aOG7rSBs4bqhaScpO1xuICAgIH1cblxuICAgIGFzeW5jIGRlbGV0ZUJhc2VQZXJtaXNzaW9uKHJvd0RhdGEpIHtcbiAgICAgICAgdGhpcy5fbm90aWZpZXJTZXJ2aWNlLnNob3dDb25maXJtKCdYw6FjIG5o4bqtbiB4w7NhIHF1eeG7gW4nKS50aGVuKGFzeW5jIHJlcyA9PiB7XG4gICAgICAgICAgICBpZiAoIXJlcykgcmV0dXJuO1xuICAgICAgICAgICAgY29uc3QgZGVsZXRlUmVzID0gYXdhaXQgdGhpcy5fYmFzZVBlcm1pc3Npb25TZXJ2aWNlLmRlbGV0ZShyb3dEYXRhLmlkKTtcbiAgICAgICAgICAgIGlmIChkZWxldGVSZXMuc3VjY2Vzcykge1xuICAgICAgICAgICAgICAgIHRoaXMuX25vdGlmaWVyU2VydmljZS5zaG93U3VjY2VzcygnWMOzYSBxdXnhu4FuIHRow6BuaCBjw7RuZycpO1xuICAgICAgICAgICAgICAgIHRoaXMudXBkYXRlRGF0YVNvdXJjZShyb3dEYXRhLmlkLCB0cnVlKTtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLl9ub3RpZmllclNlcnZpY2Uuc2hvd1dhcm5pbmcoZGVsZXRlUmVzLm1lc3NhZ2UpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICB1cGRhdGVEYXRhU291cmNlKGlkOiBhbnksIGlzRGVsZXRlZCA9IGZhbHNlKSB7XG4gICAgICAgIGNvbnN0IGN1cnJlbnRSb3cgPSB0aGlzLm1vZGVsLmRhdGFTb3VyY2UuZmluZChwID0+IHAuaWQgPT0gaWQpO1xuICAgICAgICBpZiAoIWN1cnJlbnRSb3cpIHJldHVybjtcbiAgICAgICAgaWYgKGlzRGVsZXRlZCkge1xuICAgICAgICAgICAgY3VycmVudFJvdy5pZCA9IHRoaXMuX2NvbW1vblNlcnZpY2UuZ3VpZCgpO1xuICAgICAgICB9XG4gICAgICAgIGN1cnJlbnRSb3cuaXNBdXRob3JpemUgPSAhaXNEZWxldGVkO1xuICAgICAgICB0aGlzLmFmdGVyR2V0RGF0YSgpO1xuICAgIH1cblxuICAgIGFzeW5jIGFmdGVyR2V0RGF0YSgpIHtcbiAgICAgICAgdGhpcy5fdW5tYXJrTG9hZGluZygpO1xuICAgICAgICBpZiAoIXRoaXMubW9kZWwuZGF0YVNvdXJjZS5sZW5ndGgpIHJldHVybjtcbiAgICAgICAgdGhpcy5tb2RlbC5kYXRhU291cmNlLmZvckVhY2goaXRlbSA9PiB7XG4gICAgICAgICAgICBpdGVtLm5hbWUgPSBpdGVtLnJhd1RleHQ7XG4gICAgICAgICAgICBpdGVtLmNvZGUgPSBpdGVtLnBlcm1pc3Npb25Db2RlO1xuICAgICAgICAgICAgaXRlbS5tb2R1bGVDb2RlID0gdGhpcy5hcHBDb2RlO1xuICAgICAgICB9KTtcbiAgICB9XG5cblxuICAgIG5nT25EZXN0cm95KCkge1xuICAgICAgICBjb25zdCBidXR0b25TZXR0aW5nOiBhbnkgPSBKU09OLnBhcnNlKHNlc3Npb25TdG9yYWdlLmdldEl0ZW0oQ29tQ3R4Q29uc3RhbnRzLkxPQ0FMU1RPUkFHRV9LRVkuQlVUVE9OX0FVVEhPUklaRSkgfHwgJ3t9Jyk7XG4gICAgICAgIHRoaXMubW9kZWwuZGF0YVNvdXJjZS5mb3JFYWNoKHJvd0RhdGEgPT4ge1xuICAgICAgICAgICAgY29uc3QgYnV0dG9uSXRlbSA9IGJ1dHRvblNldHRpbmdbdGhpcy5hdXRob3JpemVCdXR0b25LZXldLmZpbmQocCA9PiBwLmNvZGUgPT0gcm93RGF0YS5jb2RlKTtcbiAgICAgICAgICAgIGlmIChyb3dEYXRhLmlzQXV0aG9yaXplICYmICFidXR0b25JdGVtKSB7XG4gICAgICAgICAgICAgICAgYnV0dG9uU2V0dGluZ1t0aGlzLmF1dGhvcml6ZUJ1dHRvbktleV0ucHVzaCh7XG4gICAgICAgICAgICAgICAgICAgIGlkOiByb3dEYXRhLmlkLFxuICAgICAgICAgICAgICAgICAgICBjb2RlOiByb3dEYXRhLmNvZGUsXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmICghcm93RGF0YS5pc0F1dGhvcml6ZSAmJiBidXR0b25JdGVtKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgaW5kZXggPSBidXR0b25TZXR0aW5nW3RoaXMuYXV0aG9yaXplQnV0dG9uS2V5XS5pbmRleE9mKGJ1dHRvbkl0ZW0pO1xuICAgICAgICAgICAgICAgIGJ1dHRvblNldHRpbmdbdGhpcy5hdXRob3JpemVCdXR0b25LZXldLnNwbGljZShpbmRleCwgMSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICBzZXNzaW9uU3RvcmFnZS5zZXRJdGVtKENvbUN0eENvbnN0YW50cy5MT0NBTFNUT1JBR0VfS0VZLkJVVFRPTl9BVVRIT1JJWkUsIEpTT04uc3RyaW5naWZ5KGJ1dHRvblNldHRpbmcpKTtcbiAgICB9XG59XG4iXX0=
143
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dGluZ3MtYXV0aG9yaXplLWJ1dHRvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90bngtc2hhcmVkL3NyYy9saWIvY29tcG9uZW50cy9zZXR0aW5ncy9zZXR0aW5ncy1hdXRob3JpemUtYnV0dG9uL3NldHRpbmdzLWF1dGhvcml6ZS1idXR0b24uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxlQUFlLEVBQUUsdUJBQXVCLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBWSxVQUFVLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDakwsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFTakYsTUFBTSxPQUFPLCtCQUFnQyxTQUFRLFlBQVk7SUFLN0QsWUFDYyxTQUFtQixFQUNuQixzQkFBNkMsRUFDN0Msb0JBQXlDO1FBRW5ELEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUpQLGNBQVMsR0FBVCxTQUFTLENBQVU7UUFDbkIsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUF1QjtRQUM3Qyx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXFCO1FBTjlDLHVCQUFrQixHQUFHLEVBQUUsQ0FBQztRQUN4QixlQUFVLEdBQUcsRUFBRSxDQUFDO1FBQ3pCLFlBQU8sR0FBRyxFQUFFLENBQUM7SUFPYixDQUFDO0lBRUQsUUFBUTtRQUNKLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLFNBQVMsRUFBRSxDQUFDLE9BQU8sQ0FBQztRQUM3RCxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsc0JBQXNCLENBQUM7UUFD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QUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7YUFDM0Q7UUFDTCxDQUFDLENBQUMsQ0FBQztRQUNILGNBQWMsQ0FBQyxPQUFPLENBQUMsZUFBZSxDQUFDLGdCQUFnQixDQUFDLGdCQUFnQixFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQztJQUM3RyxDQUFDOzs7WUE5SEosU0FBUyxTQUFDO2dCQUNQLFFBQVEsRUFBRSwyQkFBMkI7Z0JBQ3JDLHNwQ0FBeUQ7Z0JBRXpELFNBQVMsRUFBRSxDQUFDLHVCQUF1QixDQUFDOzthQUN2Qzs7O1lBVmtDLFFBQVE7WUFFbEMscUJBQXFCO1lBRGtHLG1CQUFtQjs7O2lDQVk5SSxLQUFLO3lCQUNMLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIEluamVjdG9yLCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb2x1bW5TY2hlbWFCYXNlLCBDb21DdHhDb25zdGFudHMsIENvbXBvbmVudENvbnRleHRTZXJ2aWNlLCBEYXRhTGlzdEJhc2UsIERhdGFUeXBlLCBHcmlkSW5mbywgSGVpZ2h0VHlwZSwgTW9kZWxTY2hlbWEsIE1vZHVsZUNvbmZpZ1NlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9wdWJsaWMtYXBpJztcbmltcG9ydCB7IEJhc2VQZXJtaXNzaW9uU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2Jhc2VwZXJtaXNzaW9uLnNlcnZpY2UnO1xuXG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnc2V0dGluZ3MtYXV0aG9yaXplLWJ1dHRvbicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3NldHRpbmdzLWF1dGhvcml6ZS1idXR0b24uY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3NldHRpbmdzLWF1dGhvcml6ZS1idXR0b24uY29tcG9uZW50LnNjc3MnXSxcbiAgICBwcm92aWRlcnM6IFtDb21wb25lbnRDb250ZXh0U2VydmljZV0sXG59KVxuZXhwb3J0IGNsYXNzIFNldHRpbmdBdXRob3JpemVCdXR0b25Db21wb25lbnQgZXh0ZW5kcyBEYXRhTGlzdEJhc2UgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQge1xuXG4gICAgQElucHV0KCkgYXV0aG9yaXplQnV0dG9uS2V5ID0gJyc7XG4gICAgQElucHV0KCkgZGF0YVNvdXJjZSA9IFtdO1xuICAgIGFwcENvZGUgPSAnJztcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJvdGVjdGVkIF9pbmplY3RvcjogSW5qZWN0b3IsXG4gICAgICAgIHByb3RlY3RlZCBfYmFzZVBlcm1pc3Npb25TZXJ2aWNlOiBCYXNlUGVybWlzc2lvblNlcnZpY2UsXG4gICAgICAgIHByb3RlY3RlZCBfbW9kdWxlQ29uZmlnU2VydmljZTogTW9kdWxlQ29uZmlnU2VydmljZVxuICAgICkge1xuICAgICAgICBzdXBlcihfaW5qZWN0b3IpO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICB0aGlzLmFwcENvZGUgPSB0aGlzLl9tb2R1bGVDb25maWdTZXJ2aWNlLmdldENvbmZpZygpLmFwcENvZGU7XG4gICAgICAgIHRoaXMuc2V0dGluZy5iYXNlU2VydmljZSA9IHRoaXMuX2Jhc2VQZXJtaXNzaW9uU2VydmljZTtcbiAgICAgICAgdGhpcy5jdXN0b21HZXREYXRhID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5zZXR0aW5nLmhpZGRlbkFkdmFuY2VTZWFyY2ggPSB0cnVlO1xuICAgICAgICB0aGlzLnNldHRpbmcuaGlkZGVuSGVhZGVyID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5zZXR0aW5nLmhlaWdodFR5cGUgPSBIZWlnaHRUeXBlLmR5bmFtaWM7XG4gICAgICAgIHRoaXMuc2V0dGluZy5oaWRkZW5PcmRlckNvbHVtbiA9IHRydWU7XG4gICAgICAgIHRoaXMuc2V0dGluZy5oaWRkZW5GaWx0ZXJSb3cgPSB0cnVlO1xuICAgICAgICB0aGlzLnNldHRpbmcuaGlkZGVuU2V0dGluZ1dvcmtmbG93ID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5zZXR0aW5nLmhpZGRlbkF1dGhvcml6ZUJ1dHRvbiA9IHRydWU7XG4gICAgICAgIHRoaXMuc2V0dGluZy5oaWRkZW5TZXR0aW5nUGVybWlzc2lvbiA9IHRydWU7XG4gICAgICAgIHRoaXMuc2V0dGluZy5maXhIZWlnaHRUeXBlSW5EaWFsb2cgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5zZXR0aW5nLmhpZGRlbkNoZWNrYm94ID0gZmFsc2U7XG4gICAgICAgIHRoaXMuc2V0dGluZy5zaG93RWRpdExpbmsgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5zZXR0aW5nLm1vZGVsU2NoZW1hcyA9IFtcbiAgICAgICAgICAgIG5ldyBNb2RlbFNjaGVtYSh7XG4gICAgICAgICAgICAgICAgZmllbGQ6ICdwZXJtaXNzaW9uQ29kZScsXG4gICAgICAgICAgICAgICAgbmFtZTogJ03DoycsXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIG5ldyBNb2RlbFNjaGVtYSh7XG4gICAgICAgICAgICAgICAgZmllbGQ6ICdyYXdUZXh0JyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnVMOqbicsXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIG5ldyBNb2RlbFNjaGVtYSh7XG4gICAgICAgICAgICAgICAgZmllbGQ6ICdpc0F1dGhvcml6ZScsXG4gICAgICAgICAgICAgICAgbmFtZTogJ8SQw6MgdOG6oW8gcXV54buBbicsXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIG5ldyBNb2RlbFNjaGVtYSh7XG4gICAgICAgICAgICAgICAgZmllbGQ6ICdtYTEnLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdNw6MnLFxuICAgICAgICAgICAgfSksXG4gICAgICAgIF07XG4gICAgICAgIHRoaXMuc2V0dGluZy5jb2xzID0gW1xuICAgICAgICAgICAgbmV3IENvbHVtblNjaGVtYUJhc2UoeyBmaWVsZDogJ3Blcm1pc3Npb25Db2RlJywgc29ydDogZmFsc2UsIHNob3dFZGl0TGluazogZmFsc2UgfSksXG4gICAgICAgICAgICBuZXcgQ29sdW1uU2NoZW1hQmFzZSh7IGZpZWxkOiAncmF3VGV4dCcsIHdpZHRoOiAnMjMwcHgnLCBzb3J0OiBmYWxzZSB9KSxcbiAgICAgICAgICAgIG5ldyBDb2x1bW5TY2hlbWFCYXNlKHsgZmllbGQ6ICdpc0F1dGhvcml6ZScsIGRhdGFUeXBlOiBEYXRhVHlwZS5ib29sZWFuLCB3aWR0aDogJzEwMHB4Jywgc29ydDogZmFsc2UgfSksXG4gICAgICAgIF07XG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XG4gICAgfVxuXG5cbiAgICBnZXREYXRhQ3VzdG9tKGdyaWRJbmZvOiBHcmlkSW5mbykge1xuICAgICAgICB0aGlzLm1vZGVsLmRhdGFTb3VyY2UgPSB0aGlzLmRhdGFTb3VyY2U7XG4gICAgICAgIHRoaXMuYWZ0ZXJHZXREYXRhKCk7XG4gICAgfVxuXG4gICAgYXN5bmMgYWRkQmFzZVBlcm1pc3Npb24ocm93RGF0YSkge1xuICAgICAgICBjb25zdCBpbnNlcnRSZXMgPSBhd2FpdCB0aGlzLl9iYXNlUGVybWlzc2lvblNlcnZpY2UucG9zdChyb3dEYXRhKTtcbiAgICAgICAgaWYgKGluc2VydFJlcy5zdWNjZXNzKSB7XG4gICAgICAgICAgICB0aGlzLl9ub3RpZmllclNlcnZpY2Uuc2hvd1N1Y2Nlc3MoJ1Row6ptIHF1eeG7gW4gdGjDoG5oIGPDtG5nJyk7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZURhdGFTb3VyY2UoaW5zZXJ0UmVzLmRhdGEpO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuX25vdGlmaWVyU2VydmljZS5zaG93V2FybmluZygnQ8OzIGzhu5dpIHRyb25nIHF1w6EgdHLDrG5oIHjhu60gbMO9LCB2dWkgbMOybmcgdGjhu60gbOG6oWknKTtcbiAgICB9XG5cbiAgICBhc3luYyBkZWxldGVCYXNlUGVybWlzc2lvbihyb3dEYXRhKSB7XG4gICAgICAgIHRoaXMuX25vdGlmaWVyU2VydmljZS5zaG93Q29uZmlybSgnWMOhYyBuaOG6rW4geMOzYSBxdXnhu4FuJykudGhlbihhc3luYyByZXMgPT4ge1xuICAgICAgICAgICAgaWYgKCFyZXMpIHJldHVybjtcbiAgICAgICAgICAgIGNvbnN0IGRlbGV0ZVJlcyA9IGF3YWl0IHRoaXMuX2Jhc2VQZXJtaXNzaW9uU2VydmljZS5kZWxldGUocm93RGF0YS5pZCk7XG4gICAgICAgICAgICBpZiAoZGVsZXRlUmVzLnN1Y2Nlc3MpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9ub3RpZmllclNlcnZpY2Uuc2hvd1N1Y2Nlc3MoJ1jDs2EgcXV54buBbiB0aMOgbmggY8O0bmcnKTtcbiAgICAgICAgICAgICAgICB0aGlzLnVwZGF0ZURhdGFTb3VyY2Uocm93RGF0YS5pZCwgdHJ1ZSk7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5fbm90aWZpZXJTZXJ2aWNlLnNob3dXYXJuaW5nKGRlbGV0ZVJlcy5tZXNzYWdlKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgdXBkYXRlRGF0YVNvdXJjZShpZDogYW55LCBpc0RlbGV0ZWQgPSBmYWxzZSkge1xuICAgICAgICBjb25zdCBjdXJyZW50Um93ID0gdGhpcy5tb2RlbC5kYXRhU291cmNlLmZpbmQocCA9PiBwLmlkID09IGlkKTtcbiAgICAgICAgaWYgKCFjdXJyZW50Um93KSByZXR1cm47XG4gICAgICAgIGlmIChpc0RlbGV0ZWQpIHtcbiAgICAgICAgICAgIGN1cnJlbnRSb3cuaWQgPSB0aGlzLl9jb21tb25TZXJ2aWNlLmd1aWQoKTtcbiAgICAgICAgfVxuICAgICAgICBjdXJyZW50Um93LmlzQXV0aG9yaXplID0gIWlzRGVsZXRlZDtcbiAgICAgICAgdGhpcy5hZnRlckdldERhdGEoKTtcbiAgICB9XG5cbiAgICBhc3luYyBhZnRlckdldERhdGEoKSB7XG4gICAgICAgIHRoaXMuX3VubWFya0xvYWRpbmcoKTtcbiAgICAgICAgaWYgKCF0aGlzLm1vZGVsLmRhdGFTb3VyY2UubGVuZ3RoKSByZXR1cm47XG4gICAgICAgIHRoaXMubW9kZWwuZGF0YVNvdXJjZS5mb3JFYWNoKGl0ZW0gPT4ge1xuICAgICAgICAgICAgaXRlbS5uYW1lID0gaXRlbS5yYXdUZXh0O1xuICAgICAgICAgICAgaXRlbS5jb2RlID0gaXRlbS5wZXJtaXNzaW9uQ29kZTtcbiAgICAgICAgICAgIGl0ZW0ubW9kdWxlQ29kZSA9IHRoaXMuYXBwQ29kZTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG5cbiAgICBuZ09uRGVzdHJveSgpIHtcbiAgICAgICAgY29uc3QgYnV0dG9uU2V0dGluZzogYW55ID0gSlNPTi5wYXJzZShzZXNzaW9uU3RvcmFnZS5nZXRJdGVtKENvbUN0eENvbnN0YW50cy5MT0NBTFNUT1JBR0VfS0VZLkJVVFRPTl9BVVRIT1JJWkUpIHx8ICd7fScpO1xuICAgICAgICB0aGlzLm1vZGVsLmRhdGFTb3VyY2UuZm9yRWFjaChyb3dEYXRhID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGJ1dHRvbkl0ZW0gPSBidXR0b25TZXR0aW5nW3RoaXMuYXV0aG9yaXplQnV0dG9uS2V5XT8uZmluZChwID0+IHAuY29kZSA9PSByb3dEYXRhLmNvZGUpO1xuICAgICAgICAgICAgaWYgKHJvd0RhdGEuaXNBdXRob3JpemUgJiYgIWJ1dHRvbkl0ZW0pIHtcbiAgICAgICAgICAgICAgICBidXR0b25TZXR0aW5nW3RoaXMuYXV0aG9yaXplQnV0dG9uS2V5XS5wdXNoKHtcbiAgICAgICAgICAgICAgICAgICAgaWQ6IHJvd0RhdGEuaWQsXG4gICAgICAgICAgICAgICAgICAgIGNvZGU6IHJvd0RhdGEuY29kZSxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKCFyb3dEYXRhLmlzQXV0aG9yaXplICYmIGJ1dHRvbkl0ZW0pIHtcbiAgICAgICAgICAgICAgICBjb25zdCBpbmRleCA9IGJ1dHRvblNldHRpbmdbdGhpcy5hdXRob3JpemVCdXR0b25LZXldLmluZGV4T2YoYnV0dG9uSXRlbSk7XG4gICAgICAgICAgICAgICAgYnV0dG9uU2V0dGluZ1t0aGlzLmF1dGhvcml6ZUJ1dHRvbktleV0uc3BsaWNlKGluZGV4LCAxKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHNlc3Npb25TdG9yYWdlLnNldEl0ZW0oQ29tQ3R4Q29uc3RhbnRzLkxPQ0FMU1RPUkFHRV9LRVkuQlVUVE9OX0FVVEhPUklaRSwgSlNPTi5zdHJpbmdpZnkoYnV0dG9uU2V0dGluZykpO1xuICAgIH1cbn1cbiJdfQ==
@@ -36,6 +36,7 @@ export class VanbanDenPickerComponent extends DataListBase {
36
36
  this.value.next(value);
37
37
  }
38
38
  ngOnInit() {
39
+ this.setting.hiddenAuthorizeButton = true;
39
40
  this.loadDetailFromQueryParam = true;
40
41
  this.model.ready = false;
41
42
  this.setting.baseService = this._vanBanDenService;
@@ -178,4 +179,4 @@ VanbanDenPickerComponent.propDecorators = {
178
179
  onPicked: [{ type: Output }],
179
180
  onRemoved: [{ type: Output }]
180
181
  };
181
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFuYmFuLWRlbi1waWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdG54LXNoYXJlZC9zcmMvbGliL2NvbXBvbmVudHMvdmFuYmFuLXBpY2tlci92YW5iYW4tZGVuLXBpY2tlci92YW5iYW4tZGVuLXBpY2tlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBaUIsU0FBUyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkgsT0FBTyxFQUFFLGFBQWEsRUFBbUIsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9ELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFLFFBQVEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRXZGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBUWxFLE1BQU0sT0FBTyx3QkFBeUIsU0FBUSxZQUFZO0lBa0N0RCxZQUNjLFNBQW1CLEVBQ25CLGlCQUFtQyxFQUM3QyxvQkFBeUM7UUFFekMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBSlAsY0FBUyxHQUFULFNBQVMsQ0FBVTtRQUNuQixzQkFBaUIsR0FBakIsaUJBQWlCLENBQWtCO1FBN0J4QyxpQkFBWSxHQUFZLEtBQUssQ0FBQztRQUU3QixhQUFRLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUNuQyxjQUFTLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUc5QyxnQkFBVyxHQUFRLEVBQUUsQ0FBQztRQUN0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QXVCO2dCQUNqQyw0c0ZBQWlEO2dCQUVqRCxTQUFTLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQzs7YUFDdkM7OztZQWRnRCxRQUFRO1lBT2hELGdCQUFnQjtZQURoQixtQkFBbUI7OztrQkFZdkIsS0FBSzsyQkFJTCxLQUFLO3VCQUVMLE1BQU07d0JBQ04sTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbmplY3RvciwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGNvbWJpbmVMYXRlc3QsIGZvcmtKb2luLCBtZXJnZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQ29tcG9uZW50Q29udGV4dFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9hcHAtY29udGV4dC9jb21wb25lbnQtY29udGV4dC5zZXJ2aWNlJztcbmltcG9ydCB7IERhdGFMaXN0QmFzZSB9IGZyb20gJy4uLy4uLy4uL2NsYXNzZXMvYmFzZS9kYXRhLWxpc3QtYmFzZSc7XG5pbXBvcnQgeyBDb2x1bW5TY2hlbWFCYXNlLCBNb2RlbFNjaGVtYSwgT3BlcmF0b3IgfSBmcm9tICcuLi8uLi8uLi9jbGFzc2VzL2Zvcm0tc2NoZW1hJztcbmltcG9ydCB7IEdyaWRJbmZvIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL2dyaWQtaW5mbyc7XG5pbXBvcnQgeyBNb2R1bGVDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvbW9kdWxlLWNvbmZpZy5zZXJ2aWNlJztcbmltcG9ydCB7IFZhbkJhbkRlblNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy92YW5iYW4tZGVuLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2FwcC12YW5iYW4tZGVuLXBpY2tlcicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3ZhbmJhbi1kZW4tcGlja2VyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi92YW5iYW4tZGVuLXBpY2tlci5jb21wb25lbnQuY3NzJ10sXG4gICAgcHJvdmlkZXJzOiBbQ29tcG9uZW50Q29udGV4dFNlcnZpY2VdLFxufSlcbmV4cG9ydCBjbGFzcyBWYW5iYW5EZW5QaWNrZXJDb21wb25lbnQgZXh0ZW5kcyBEYXRhTGlzdEJhc2UgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgQWZ0ZXJWaWV3SW5pdCB7XG5cbiAgICBfaWRzOiBzdHJpbmdbXTtcbiAgICBASW5wdXQoKSBzZXQgaWRzKHZhbHVlOiBzdHJpbmdbXSkge1xuICAgICAgICB0aGlzLl9pZHMgPSB2YWx1ZTtcbiAgICAgICAgdGhpcy52YWx1ZS5uZXh0KHZhbHVlKTtcbiAgICB9XG4gICAgQElucHV0KCkgaGlkZGVuUGlja2VyOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICBAT3V0cHV0KCkgb25QaWNrZWQgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgICBAT3V0cHV0KCkgb25SZW1vdmVkID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cblxuICAgIGVudmlyb25tZW50OiBhbnkgPSB7fTtcbiAgICAvKipcbiAgICAgKiBU4bqhbyBzdWJzY3JpcHRpb25cbiAgICAgKi9cbiAgICB2YWx1ZSA9IG5ldyBTdWJqZWN0PHN0cmluZ1tdPigpO1xuICAgIHZhbHVlJCA9IHRoaXMudmFsdWUuYXNPYnNlcnZhYmxlKCk7XG4gICAgcmVhZHkgPSBuZXcgU3ViamVjdDxib29sZWFuPigpO1xuICAgIHJlYWR5JCA9IHRoaXMucmVhZHkuYXNPYnNlcnZhYmxlKCk7XG4gICAgc291cmNlID0gY29tYmluZUxhdGVzdChcbiAgICAgICAgdGhpcy52YWx1ZSQsXG4gICAgICAgIHRoaXMucmVhZHkkXG4gICAgKTtcbiAgICBzdWIgPSB0aGlzLnNvdXJjZS5zdWJzY3JpYmUodmFsdWVzID0+IHtcbiAgICAgICAgdGhpcy5jaGVja0FuZEdldERhdGEoKTtcbiAgICB9KTtcblxuICAgIHNlYXJjaFNjaGVtYTogYW55ID0ge307XG4gICAgc2VhcmNoRGF0YTogYW55ID0ge307XG5cbiAgICBzaG93Rm9ybVBpY2tlcjogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByb3RlY3RlZCBfaW5qZWN0b3I6IEluamVjdG9yLFxuICAgICAgICBwcm90ZWN0ZWQgX3ZhbkJhbkRlblNlcnZpY2U6IFZhbkJhbkRlblNlcnZpY2UsXG4gICAgICAgIF9tb2R1bGVDb25maWdTZXJ2aWNlOiBNb2R1bGVDb25maWdTZXJ2aWNlXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKF9pbmplY3Rvcik7XG4gICAgICAgIHRoaXMuZW52aXJvbm1lbnQgPSBfbW9kdWxlQ29uZmlnU2VydmljZS5nZXRDb25maWcoKS5lbnZpcm9ubWVudDtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgdGhpcy5sb2FkRGV0YWlsRnJvbVF1ZXJ5UGFyYW0gPSB0cnVlO1xuICAgICAgICB0aGlzLm1vZGVsLnJlYWR5ID0gZmFsc2U7XG4gICAgICAgIHRoaXMuc2V0dGluZy5iYXNlU2VydmljZSA9IHRoaXMuX3ZhbkJhbkRlblNlcnZpY2U7XG4gICAgICAgIHRoaXMuc2V0dGluZy5oaWRkZW5TZXR0aW5nUGVybWlzc2lvbiA9IHRydWU7XG4gICAgICAgIHRoaXMuc2V0dGluZy5oaWRkZW5TZXR0aW5nV29ya2Zsb3cgPSB0cnVlO1xuICAgICAgICB0aGlzLnNldHRpbmcuc2hvd0VkaXRMaW5rID0gZmFsc2U7XG4gICAgICAgIGlmICh0aGlzLmhpZGRlblBpY2tlcikge1xuICAgICAgICAgICAgdGhpcy5zZXR0aW5nLmhpZGRlblBhZ2VUaXRsZSA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5zZXR0aW5nLm1vZGVsU2NoZW1hcyA9IFtcbiAgICAgICAgICAgIG5ldyBNb2RlbFNjaGVtYSh7IGZpZWxkOiAnc29EZW4nLCBkYXRhVHlwZTogJ2ludCcsIG5hbWU6ICdT4buRIMSR4bq/bicsIGZ1bGxOYW1lOiAnU+G7kSDEkeG6v24nLCBkZXNjcmlwdGlvbjogJ1Phu5EgxJHhur9uJyB9KSxcbiAgICAgICAgICAgIG5ldyBNb2RlbFNjaGVtYSh7IGZpZWxkOiAnc29LeUhpZXUnLCBuYW1lOiAnU+G7kSwga8O9IGhp4buHdScsIGZ1bGxOYW1lOiAnU+G7kSwga8O9IGhp4buHdScsIGRlc2NyaXB0aW9uOiAnU+G7kSwga8O9IGhp4buHdScgfSksXG4gICAgICAgICAgICBuZXcgTW9kZWxTY2hlbWEoeyBmaWVsZDogJ3RyaWNoWWV1JywgbmFtZTogJ1Ryw61jaCB54bq/dScsIGZ1bGxOYW1lOiAnJywgZGVzY3JpcHRpb246ICcnIH0pLFxuICAgICAgICAgICAgbmV3IE1vZGVsU2NoZW1hKHsgZmllbGQ6ICduZ2F5QmFuSGFuaCcsIGRhdGFUeXBlOiAnZGF0ZScsIG5hbWU6ICdOZ8OgeSBiYW4gaMOgbmgnLCBmdWxsTmFtZTogJycsIGRlc2NyaXB0aW9uOiAnJyB9KSxcbiAgICAgICAgICAgIG5ldyBNb2RlbFNjaGVtYSh7IGZpZWxkOiAnbmdheURlbicsIGRhdGFUeXBlOiAnZGF0ZScsIG5hbWU6ICdOZ8OgeSDEkeG6v24nLCBmdWxsTmFtZTogJycsIGRlc2NyaXB0aW9uOiAnJyB9KVxuICAgICAgICBdO1xuXG4gICAgICAgIHRoaXMuc2V0dGluZy5jb2xzID0gW1xuICAgICAgICAgICAgbmV3IENvbHVtblNjaGVtYUJhc2Uoe1xuICAgICAgICAgICAgICAgIGZpZWxkOiAnc29EZW4nLFxuICAgICAgICAgICAgICAgIHdpZHRoOiAnMTAwcHgnXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIG5ldyBDb2x1bW5TY2hlbWFCYXNlKHtcbiAgICAgICAgICAgICAgICBmaWVsZDogJ3NvS3lIaWV1JyxcbiAgICAgICAgICAgICAgICB3aWR0aDogJzE1MHB4J1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBuZXcgQ29sdW1uU2NoZW1hQmFzZSh7XG4gICAgICAgICAgICAgICAgZmllbGQ6ICd0cmljaFlldSdcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgbmV3IENvbHVtblNjaGVtYUJhc2Uoe1xuICAgICAgICAgICAgICAgIGZpZWxkOiAnbmdheUJhbkhhbmgnLFxuICAgICAgICAgICAgICAgIHdpZHRoOiAnMTI1cHgnXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIG5ldyBDb2x1bW5TY2hlbWFCYXNlKHtcbiAgICAgICAgICAgICAgICBmaWVsZDogJ25nYXlEZW4nLFxuICAgICAgICAgICAgICAgIHdpZHRoOiAnMTIwcHgnXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgXTtcbiAgICAgICAgdGhpcy5zZXR0aW5nLmZpZWxkU2VhcmNoVGV4dCA9IFsnY29kZScsICduYW1lJ107XG4gICAgICAgIHRoaXMuc2V0dGluZy5vYmplY3ROYW1lID0gJyB2xINuIGLhuqNuIMSR4bq/bic7XG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XG4gICAgfVxuXG4gICAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgICAgICB0aGlzLnJlYWR5Lm5leHQodHJ1ZSk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKSB7XG4gICAgICAgIHRoaXMuc3ViLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuXG4gICAgZ2V0UHJvbWlzZUdldERhdGEoZ3JpZEluZm86IEdyaWRJbmZvKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnNldHRpbmcuYmFzZVNlcnZpY2UuZ2V0QnlHcmlkUmVxdWVzdFdpdGhCb2R5T2xkKGdyaWRJbmZvLCAnUGVybWlzc2lvbicpO1xuICAgIH1cblxuICAgIGFzeW5jIG1vZGlmeUdyaWRJbmZvKGdyaWRJbmZvPzogR3JpZEluZm8pIHtcbiAgICAgICAgZ3JpZEluZm8uc29ydHMgPSBbXG4gICAgICAgICAgICB7IGZpZWxkOiAnaWQnLCBkaXI6IC0xIH1cbiAgICAgICAgXTtcblxuICAgICAgICBpZiAodGhpcy5faWRzICYmIHRoaXMuX2lkcy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICBsZXQgb3BlcmF0b3IgPSBPcGVyYXRvci5pbjtcbiAgICAgICAgICAgIGlmICh0aGlzLmhpZGRlblBpY2tlcikge1xuICAgICAgICAgICAgICAgIG9wZXJhdG9yID0gT3BlcmF0b3Iubm90SW47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBncmlkSW5mby5maWx0ZXJzLnVuc2hpZnQoXG4gICAgICAgICAgICAgICAgdGhpcy5uZXdGaWx0ZXIoJ2luc3RhbmNlSWQnLCBvcGVyYXRvciwgdGhpcy5faWRzKVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGNoZWNrQW5kR2V0RGF0YSgpIHtcbiAgICAgICAgaWYgKHRoaXMuX2lkcykge1xuICAgICAgICAgICAgaWYgKHRoaXMuaGlkZGVuUGlja2VyKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5tb2RlbC5yZWFkeSA9IHRydWU7XG4gICAgICAgICAgICAgICAgdGhpcy5yZWxvYWQoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLl9pZHMubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLm1vZGVsLnJlYWR5ID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5yZWxvYWQoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICB0aGlzLm1vZGVsLnJlYWR5ID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBzaG93Rm9ybVBpY2tWYW5CYW4oKSB7XG4gICAgICAgIHRoaXMuYmVmb3JlQWRkKCk7XG4gICAgICAgIHRoaXMuc2V0dGluZy5wb3B1cFNpemUubWF4aW1pemUgPSB0cnVlO1xuICAgICAgICB0aGlzLnNldHRpbmcucG9wdXBIZWFkZXIgPSBgVGjDqm0gbeG7m2kgJHt0aGlzLnNldHRpbmcub2JqZWN0TmFtZX1gO1xuICAgICAgICB0aGlzLnNob3dGb3JtUGlja2VyID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBwaWNrVmFuQmFuU2VsZWN0ZWQoKSB7XG4gICAgICAgIHRoaXMuX3BpY2tWYW5CYW4odGhpcy5tb2RlbC5zZWxlY3RlZEl0ZW1zKTtcbiAgICB9XG5cbiAgICBwaWNrVmFuQmFuKHJvd0RhdGEpIHtcbiAgICAgICAgdGhpcy5fcGlja1ZhbkJhbihbcm93RGF0YV0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgX3BpY2tWYW5CYW4oaXRlbXMpIHtcbiAgICAgICAgdGhpcy5vblBpY2tlZC5lbWl0KHtcbiAgICAgICAgICAgIGlkczogaXRlbXMubWFwKGl0ZW0gPT4gaXRlbS5pbnN0YW5jZUlkKSxcbiAgICAgICAgICAgIGl0ZW1zXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHhvYVZhbkJhblNlbGVjdGVkKCkge1xuICAgICAgICB0aGlzLl94b2FWYW5CYW4odGhpcy5tb2RlbC5zZWxlY3RlZEl0ZW1zKTtcbiAgICB9XG5cbiAgICB4b2FWYW5CYW4ocm93RGF0YSkge1xuICAgICAgICB0aGlzLl94b2FWYW5CYW4oW3Jvd0RhdGFdKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF94b2FWYW5CYW4oaXRlbXMpIHtcbiAgICAgICAgdGhpcy5vblJlbW92ZWQuZW1pdCh7XG4gICAgICAgICAgICBpZHM6IGl0ZW1zLm1hcChpdGVtID0+IGl0ZW0uaW5zdGFuY2VJZCksXG4gICAgICAgICAgICBpdGVtc1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBuYXZpZ2F0ZVRvVmFuQmFuKHJvd0RhdGEpIHtcbiAgICAgICAgd2luZG93Lm9wZW4oYCR7dGhpcy5lbnZpcm9ubWVudC5jbGllbnREb21haW4udmFuYmFuRG9tYWlufS92YW5iYW5kZW4jX2E9MSZfaT0ke3Jvd0RhdGEuaWR9YCwgJ19ibGFuaycpO1xuICAgIH1cblxuICAgIGhhbmRsZVBpY2tlZChkYXRhKSB7XG4gICAgICAgIC8vIGNvbnN0IGlkcyA9IFtcbiAgICAgICAgLy8gICAgIC4uLnRoaXMuX2lkcyxcbiAgICAgICAgLy8gICAgIC4uLmRhdGEuaWRzLmZpbHRlcihxID0+IHRoaXMuX2lkcy5pbmRleE9mKHEpID09IC0xKVxuICAgICAgICAvLyBdXG4gICAgICAgIC8vIHRoaXMuaWRzID0gaWRzO1xuICAgICAgICB0aGlzLm9uUGlja2VkLmVtaXQoZGF0YSk7XG4gICAgfVxufVxuXG4iXX0=
182
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFuYmFuLWRlbi1waWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdG54LXNoYXJlZC9zcmMvbGliL2NvbXBvbmVudHMvdmFuYmFuLXBpY2tlci92YW5iYW4tZGVuLXBpY2tlci92YW5iYW4tZGVuLXBpY2tlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBaUIsU0FBUyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkgsT0FBTyxFQUFFLGFBQWEsRUFBbUIsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9ELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFLFFBQVEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRXZGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBUWxFLE1BQU0sT0FBTyx3QkFBeUIsU0FBUSxZQUFZO0lBa0N0RCxZQUNjLFNBQW1CLEVBQ25CLGlCQUFtQyxFQUM3QyxvQkFBeUM7UUFFekMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBSlAsY0FBUyxHQUFULFNBQVMsQ0FBVTtRQUNuQixzQkFBaUIsR0FBakIsaUJBQWlCLENBQWtCO1FBN0J4QyxpQkFBWSxHQUFZLEtBQUssQ0FBQztRQUU3QixhQUFRLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUNuQyxjQUFTLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUc5QyxnQkFBVyxHQUFRLEVBQUUsQ0FBQztRQUN0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SUFDN0IsQ0FBQzs7O1lBNUxKLFNBQVMsU0FBQztnQkFDUCxRQUFRLEVBQUUsdUJBQXVCO2dCQUNqQyw0c0ZBQWlEO2dCQUVqRCxTQUFTLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQzs7YUFDdkM7OztZQWRnRCxRQUFRO1lBT2hELGdCQUFnQjtZQURoQixtQkFBbUI7OztrQkFZdkIsS0FBSzsyQkFJTCxLQUFLO3VCQUVMLE1BQU07d0JBQ04sTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbmplY3RvciwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGNvbWJpbmVMYXRlc3QsIGZvcmtKb2luLCBtZXJnZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQ29tcG9uZW50Q29udGV4dFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9hcHAtY29udGV4dC9jb21wb25lbnQtY29udGV4dC5zZXJ2aWNlJztcbmltcG9ydCB7IERhdGFMaXN0QmFzZSB9IGZyb20gJy4uLy4uLy4uL2NsYXNzZXMvYmFzZS9kYXRhLWxpc3QtYmFzZSc7XG5pbXBvcnQgeyBDb2x1bW5TY2hlbWFCYXNlLCBNb2RlbFNjaGVtYSwgT3BlcmF0b3IgfSBmcm9tICcuLi8uLi8uLi9jbGFzc2VzL2Zvcm0tc2NoZW1hJztcbmltcG9ydCB7IEdyaWRJbmZvIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL2dyaWQtaW5mbyc7XG5pbXBvcnQgeyBNb2R1bGVDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvbW9kdWxlLWNvbmZpZy5zZXJ2aWNlJztcbmltcG9ydCB7IFZhbkJhbkRlblNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy92YW5iYW4tZGVuLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2FwcC12YW5iYW4tZGVuLXBpY2tlcicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3ZhbmJhbi1kZW4tcGlja2VyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi92YW5iYW4tZGVuLXBpY2tlci5jb21wb25lbnQuY3NzJ10sXG4gICAgcHJvdmlkZXJzOiBbQ29tcG9uZW50Q29udGV4dFNlcnZpY2VdLFxufSlcbmV4cG9ydCBjbGFzcyBWYW5iYW5EZW5QaWNrZXJDb21wb25lbnQgZXh0ZW5kcyBEYXRhTGlzdEJhc2UgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgQWZ0ZXJWaWV3SW5pdCB7XG5cbiAgICBfaWRzOiBzdHJpbmdbXTtcbiAgICBASW5wdXQoKSBzZXQgaWRzKHZhbHVlOiBzdHJpbmdbXSkge1xuICAgICAgICB0aGlzLl9pZHMgPSB2YWx1ZTtcbiAgICAgICAgdGhpcy52YWx1ZS5uZXh0KHZhbHVlKTtcbiAgICB9XG4gICAgQElucHV0KCkgaGlkZGVuUGlja2VyOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICBAT3V0cHV0KCkgb25QaWNrZWQgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgICBAT3V0cHV0KCkgb25SZW1vdmVkID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cblxuICAgIGVudmlyb25tZW50OiBhbnkgPSB7fTtcbiAgICAvKipcbiAgICAgKiBU4bqhbyBzdWJzY3JpcHRpb25cbiAgICAgKi9cbiAgICB2YWx1ZSA9IG5ldyBTdWJqZWN0PHN0cmluZ1tdPigpO1xuICAgIHZhbHVlJCA9IHRoaXMudmFsdWUuYXNPYnNlcnZhYmxlKCk7XG4gICAgcmVhZHkgPSBuZXcgU3ViamVjdDxib29sZWFuPigpO1xuICAgIHJlYWR5JCA9IHRoaXMucmVhZHkuYXNPYnNlcnZhYmxlKCk7XG4gICAgc291cmNlID0gY29tYmluZUxhdGVzdChcbiAgICAgICAgdGhpcy52YWx1ZSQsXG4gICAgICAgIHRoaXMucmVhZHkkXG4gICAgKTtcbiAgICBzdWIgPSB0aGlzLnNvdXJjZS5zdWJzY3JpYmUodmFsdWVzID0+IHtcbiAgICAgICAgdGhpcy5jaGVja0FuZEdldERhdGEoKTtcbiAgICB9KTtcblxuICAgIHNlYXJjaFNjaGVtYTogYW55ID0ge307XG4gICAgc2VhcmNoRGF0YTogYW55ID0ge307XG5cbiAgICBzaG93Rm9ybVBpY2tlcjogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByb3RlY3RlZCBfaW5qZWN0b3I6IEluamVjdG9yLFxuICAgICAgICBwcm90ZWN0ZWQgX3ZhbkJhbkRlblNlcnZpY2U6IFZhbkJhbkRlblNlcnZpY2UsXG4gICAgICAgIF9tb2R1bGVDb25maWdTZXJ2aWNlOiBNb2R1bGVDb25maWdTZXJ2aWNlXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKF9pbmplY3Rvcik7XG4gICAgICAgIHRoaXMuZW52aXJvbm1lbnQgPSBfbW9kdWxlQ29uZmlnU2VydmljZS5nZXRDb25maWcoKS5lbnZpcm9ubWVudDtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgdGhpcy5zZXR0aW5nLmhpZGRlbkF1dGhvcml6ZUJ1dHRvbiA9IHRydWU7XG4gICAgICAgIHRoaXMubG9hZERldGFpbEZyb21RdWVyeVBhcmFtID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5tb2RlbC5yZWFkeSA9IGZhbHNlO1xuICAgICAgICB0aGlzLnNldHRpbmcuYmFzZVNlcnZpY2UgPSB0aGlzLl92YW5CYW5EZW5TZXJ2aWNlO1xuICAgICAgICB0aGlzLnNldHRpbmcuaGlkZGVuU2V0dGluZ1Blcm1pc3Npb24gPSB0cnVlO1xuICAgICAgICB0aGlzLnNldHRpbmcuaGlkZGVuU2V0dGluZ1dvcmtmbG93ID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5zZXR0aW5nLnNob3dFZGl0TGluayA9IGZhbHNlO1xuICAgICAgICBpZiAodGhpcy5oaWRkZW5QaWNrZXIpIHtcbiAgICAgICAgICAgIHRoaXMuc2V0dGluZy5oaWRkZW5QYWdlVGl0bGUgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuc2V0dGluZy5tb2RlbFNjaGVtYXMgPSBbXG4gICAgICAgICAgICBuZXcgTW9kZWxTY2hlbWEoeyBmaWVsZDogJ3NvRGVuJywgZGF0YVR5cGU6ICdpbnQnLCBuYW1lOiAnU+G7kSDEkeG6v24nLCBmdWxsTmFtZTogJ1Phu5EgxJHhur9uJywgZGVzY3JpcHRpb246ICdT4buRIMSR4bq/bicgfSksXG4gICAgICAgICAgICBuZXcgTW9kZWxTY2hlbWEoeyBmaWVsZDogJ3NvS3lIaWV1JywgbmFtZTogJ1Phu5EsIGvDvSBoaeG7h3UnLCBmdWxsTmFtZTogJ1Phu5EsIGvDvSBoaeG7h3UnLCBkZXNjcmlwdGlvbjogJ1Phu5EsIGvDvSBoaeG7h3UnIH0pLFxuICAgICAgICAgICAgbmV3IE1vZGVsU2NoZW1hKHsgZmllbGQ6ICd0cmljaFlldScsIG5hbWU6ICdUcsOtY2ggeeG6v3UnLCBmdWxsTmFtZTogJycsIGRlc2NyaXB0aW9uOiAnJyB9KSxcbiAgICAgICAgICAgIG5ldyBNb2RlbFNjaGVtYSh7IGZpZWxkOiAnbmdheUJhbkhhbmgnLCBkYXRhVHlwZTogJ2RhdGUnLCBuYW1lOiAnTmfDoHkgYmFuIGjDoG5oJywgZnVsbE5hbWU6ICcnLCBkZXNjcmlwdGlvbjogJycgfSksXG4gICAgICAgICAgICBuZXcgTW9kZWxTY2hlbWEoeyBmaWVsZDogJ25nYXlEZW4nLCBkYXRhVHlwZTogJ2RhdGUnLCBuYW1lOiAnTmfDoHkgxJHhur9uJywgZnVsbE5hbWU6ICcnLCBkZXNjcmlwdGlvbjogJycgfSlcbiAgICAgICAgXTtcblxuICAgICAgICB0aGlzLnNldHRpbmcuY29scyA9IFtcbiAgICAgICAgICAgIG5ldyBDb2x1bW5TY2hlbWFCYXNlKHtcbiAgICAgICAgICAgICAgICBmaWVsZDogJ3NvRGVuJyxcbiAgICAgICAgICAgICAgICB3aWR0aDogJzEwMHB4J1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBuZXcgQ29sdW1uU2NoZW1hQmFzZSh7XG4gICAgICAgICAgICAgICAgZmllbGQ6ICdzb0t5SGlldScsXG4gICAgICAgICAgICAgICAgd2lkdGg6ICcxNTBweCdcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgbmV3IENvbHVtblNjaGVtYUJhc2Uoe1xuICAgICAgICAgICAgICAgIGZpZWxkOiAndHJpY2hZZXUnXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIG5ldyBDb2x1bW5TY2hlbWFCYXNlKHtcbiAgICAgICAgICAgICAgICBmaWVsZDogJ25nYXlCYW5IYW5oJyxcbiAgICAgICAgICAgICAgICB3aWR0aDogJzEyNXB4J1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBuZXcgQ29sdW1uU2NoZW1hQmFzZSh7XG4gICAgICAgICAgICAgICAgZmllbGQ6ICduZ2F5RGVuJyxcbiAgICAgICAgICAgICAgICB3aWR0aDogJzEyMHB4J1xuICAgICAgICAgICAgfSksXG4gICAgICAgIF07XG4gICAgICAgIHRoaXMuc2V0dGluZy5maWVsZFNlYXJjaFRleHQgPSBbJ2NvZGUnLCAnbmFtZSddO1xuICAgICAgICB0aGlzLnNldHRpbmcub2JqZWN0TmFtZSA9ICcgdsSDbiBi4bqjbiDEkeG6v24nO1xuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgIH1cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICAgICAgdGhpcy5yZWFkeS5uZXh0KHRydWUpO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCkge1xuICAgICAgICB0aGlzLnN1Yi51bnN1YnNjcmliZSgpO1xuICAgIH1cblxuICAgIGdldFByb21pc2VHZXREYXRhKGdyaWRJbmZvOiBHcmlkSW5mbykge1xuICAgICAgICByZXR1cm4gdGhpcy5zZXR0aW5nLmJhc2VTZXJ2aWNlLmdldEJ5R3JpZFJlcXVlc3RXaXRoQm9keU9sZChncmlkSW5mbywgJ1Blcm1pc3Npb24nKTtcbiAgICB9XG5cbiAgICBhc3luYyBtb2RpZnlHcmlkSW5mbyhncmlkSW5mbz86IEdyaWRJbmZvKSB7XG4gICAgICAgIGdyaWRJbmZvLnNvcnRzID0gW1xuICAgICAgICAgICAgeyBmaWVsZDogJ2lkJywgZGlyOiAtMSB9XG4gICAgICAgIF07XG5cbiAgICAgICAgaWYgKHRoaXMuX2lkcyAmJiB0aGlzLl9pZHMubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgbGV0IG9wZXJhdG9yID0gT3BlcmF0b3IuaW47XG4gICAgICAgICAgICBpZiAodGhpcy5oaWRkZW5QaWNrZXIpIHtcbiAgICAgICAgICAgICAgICBvcGVyYXRvciA9IE9wZXJhdG9yLm5vdEluO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZ3JpZEluZm8uZmlsdGVycy51bnNoaWZ0KFxuICAgICAgICAgICAgICAgIHRoaXMubmV3RmlsdGVyKCdpbnN0YW5jZUlkJywgb3BlcmF0b3IsIHRoaXMuX2lkcylcbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBjaGVja0FuZEdldERhdGEoKSB7XG4gICAgICAgIGlmICh0aGlzLl9pZHMpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLmhpZGRlblBpY2tlcikge1xuICAgICAgICAgICAgICAgIHRoaXMubW9kZWwucmVhZHkgPSB0cnVlO1xuICAgICAgICAgICAgICAgIHRoaXMucmVsb2FkKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5faWRzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5tb2RlbC5yZWFkeSA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucmVsb2FkKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5tb2RlbC5yZWFkeSA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgc2hvd0Zvcm1QaWNrVmFuQmFuKCkge1xuICAgICAgICB0aGlzLmJlZm9yZUFkZCgpO1xuICAgICAgICB0aGlzLnNldHRpbmcucG9wdXBTaXplLm1heGltaXplID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5zZXR0aW5nLnBvcHVwSGVhZGVyID0gYFRow6ptIG3hu5tpICR7dGhpcy5zZXR0aW5nLm9iamVjdE5hbWV9YDtcbiAgICAgICAgdGhpcy5zaG93Rm9ybVBpY2tlciA9IHRydWU7XG4gICAgfVxuXG4gICAgcGlja1ZhbkJhblNlbGVjdGVkKCkge1xuICAgICAgICB0aGlzLl9waWNrVmFuQmFuKHRoaXMubW9kZWwuc2VsZWN0ZWRJdGVtcyk7XG4gICAgfVxuXG4gICAgcGlja1ZhbkJhbihyb3dEYXRhKSB7XG4gICAgICAgIHRoaXMuX3BpY2tWYW5CYW4oW3Jvd0RhdGFdKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9waWNrVmFuQmFuKGl0ZW1zKSB7XG4gICAgICAgIHRoaXMub25QaWNrZWQuZW1pdCh7XG4gICAgICAgICAgICBpZHM6IGl0ZW1zLm1hcChpdGVtID0+IGl0ZW0uaW5zdGFuY2VJZCksXG4gICAgICAgICAgICBpdGVtc1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICB4b2FWYW5CYW5TZWxlY3RlZCgpIHtcbiAgICAgICAgdGhpcy5feG9hVmFuQmFuKHRoaXMubW9kZWwuc2VsZWN0ZWRJdGVtcyk7XG4gICAgfVxuXG4gICAgeG9hVmFuQmFuKHJvd0RhdGEpIHtcbiAgICAgICAgdGhpcy5feG9hVmFuQmFuKFtyb3dEYXRhXSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfeG9hVmFuQmFuKGl0ZW1zKSB7XG4gICAgICAgIHRoaXMub25SZW1vdmVkLmVtaXQoe1xuICAgICAgICAgICAgaWRzOiBpdGVtcy5tYXAoaXRlbSA9PiBpdGVtLmluc3RhbmNlSWQpLFxuICAgICAgICAgICAgaXRlbXNcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmF2aWdhdGVUb1ZhbkJhbihyb3dEYXRhKSB7XG4gICAgICAgIHdpbmRvdy5vcGVuKGAke3RoaXMuZW52aXJvbm1lbnQuY2xpZW50RG9tYWluLnZhbmJhbkRvbWFpbn0vdmFuYmFuZGVuI19hPTEmX2k9JHtyb3dEYXRhLmlkfWAsICdfYmxhbmsnKTtcbiAgICB9XG5cbiAgICBoYW5kbGVQaWNrZWQoZGF0YSkge1xuICAgICAgICAvLyBjb25zdCBpZHMgPSBbXG4gICAgICAgIC8vICAgICAuLi50aGlzLl9pZHMsXG4gICAgICAgIC8vICAgICAuLi5kYXRhLmlkcy5maWx0ZXIocSA9PiB0aGlzLl9pZHMuaW5kZXhPZihxKSA9PSAtMSlcbiAgICAgICAgLy8gXVxuICAgICAgICAvLyB0aGlzLmlkcyA9IGlkcztcbiAgICAgICAgdGhpcy5vblBpY2tlZC5lbWl0KGRhdGEpO1xuICAgIH1cbn1cblxuIl19
@@ -36,6 +36,7 @@ export class VanbanDiPickerComponent extends DataListBase {
36
36
  this.value.next(value);
37
37
  }
38
38
  ngOnInit() {
39
+ this.setting.hiddenAuthorizeButton = true;
39
40
  this.loadDetailFromQueryParam = true;
40
41
  this.model.ready = false;
41
42
  this.setting.baseService = this._vanBanDiService;
@@ -173,4 +174,4 @@ VanbanDiPickerComponent.propDecorators = {
173
174
  onPicked: [{ type: Output }],
174
175
  onRemoved: [{ type: Output }]
175
176
  };
176
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFuYmFuLWRpLXBpY2tlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90bngtc2hhcmVkL3NyYy9saWIvY29tcG9uZW50cy92YW5iYW4tcGlja2VyL3ZhbmJhbi1kaS1waWNrZXIvdmFuYmFuLWRpLXBpY2tlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBaUIsU0FBUyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkgsT0FBTyxFQUFFLGFBQWEsRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDOUMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDekYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxXQUFXLEVBQUUsUUFBUSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFFdkYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDOUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBUWhFLE1BQU0sT0FBTyx1QkFBd0IsU0FBUSxZQUFZO0lBaUNyRCxZQUNjLFNBQW1CLEVBQ25CLGdCQUFpQyxFQUMzQyxvQkFBeUM7UUFFekMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBSlAsY0FBUyxHQUFULFNBQVMsQ0FBVTtRQUNuQixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWlCO1FBNUJ0QyxpQkFBWSxHQUFZLEtBQUssQ0FBQztRQUU3QixhQUFRLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUNuQyxjQUFTLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUU5QyxnQkFBVyxHQUFRLEVBQUUsQ0FBQztRQUN0Qjs7V0FF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QUs7U0FDUixDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsaUJBQWlCO1FBQ2IsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFFRCxTQUFTLENBQUMsT0FBTztRQUNiLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFTyxVQUFVLENBQUMsS0FBSztRQUNwQixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQztZQUNoQixHQUFHLEVBQUUsS0FBSyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUM7WUFDdkMsS0FBSztTQUNSLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxPQUFPO1FBQ3BCLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQyxZQUFZLHFCQUFxQixPQUFPLENBQUMsRUFBRSxFQUFFLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDMUcsQ0FBQztJQUVELFlBQVksQ0FBQyxJQUFJO1FBQ2IsZ0JBQWdCO1FBQ2hCLG9CQUFvQjtRQUNwQiwwREFBMEQ7UUFDMUQsSUFBSTtRQUNKLGtCQUFrQjtRQUNsQixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM3QixDQUFDOzs7WUFwTEosU0FBUyxTQUFDO2dCQUNQLFFBQVEsRUFBRSxzQkFBc0I7Z0JBQ2hDLHlzRkFBZ0Q7Z0JBRWhELFNBQVMsRUFBRSxDQUFDLHVCQUF1QixDQUFDOzthQUN2Qzs7O1lBZGdELFFBQVE7WUFPaEQsZUFBZTtZQURmLG1CQUFtQjs7O2tCQVl2QixLQUFLOzJCQUlMLEtBQUs7dUJBRUwsTUFBTTt3QkFDTixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIEluamVjdG9yLCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgY29tYmluZUxhdGVzdCwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQ29tcG9uZW50Q29udGV4dFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9hcHAtY29udGV4dC9jb21wb25lbnQtY29udGV4dC5zZXJ2aWNlJztcbmltcG9ydCB7IERhdGFMaXN0QmFzZSB9IGZyb20gJy4uLy4uLy4uL2NsYXNzZXMvYmFzZS9kYXRhLWxpc3QtYmFzZSc7XG5pbXBvcnQgeyBDb2x1bW5TY2hlbWFCYXNlLCBNb2RlbFNjaGVtYSwgT3BlcmF0b3IgfSBmcm9tICcuLi8uLi8uLi9jbGFzc2VzL2Zvcm0tc2NoZW1hJztcbmltcG9ydCB7IEdyaWRJbmZvIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL2dyaWQtaW5mbyc7XG5pbXBvcnQgeyBNb2R1bGVDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvbW9kdWxlLWNvbmZpZy5zZXJ2aWNlJztcbmltcG9ydCB7IFZhbkJhbkRpU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL3ZhbmJhbi1kaS5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdhcHAtdmFuYmFuLWRpLXBpY2tlcicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3ZhbmJhbi1kaS1waWNrZXIuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3ZhbmJhbi1kaS1waWNrZXIuY29tcG9uZW50LmNzcyddLFxuICAgIHByb3ZpZGVyczogW0NvbXBvbmVudENvbnRleHRTZXJ2aWNlXSxcbn0pXG5leHBvcnQgY2xhc3MgVmFuYmFuRGlQaWNrZXJDb21wb25lbnQgZXh0ZW5kcyBEYXRhTGlzdEJhc2UgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgQWZ0ZXJWaWV3SW5pdCB7XG5cbiAgICBfaWRzOiBzdHJpbmdbXTtcbiAgICBASW5wdXQoKSBzZXQgaWRzKHZhbHVlOiBzdHJpbmdbXSkge1xuICAgICAgICB0aGlzLl9pZHMgPSB2YWx1ZTtcbiAgICAgICAgdGhpcy52YWx1ZS5uZXh0KHZhbHVlKTtcbiAgICB9XG4gICAgQElucHV0KCkgaGlkZGVuUGlja2VyOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICBAT3V0cHV0KCkgb25QaWNrZWQgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgICBAT3V0cHV0KCkgb25SZW1vdmVkID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgICBlbnZpcm9ubWVudDogYW55ID0ge307XG4gICAgLyoqXG4gICAgICogVOG6oW8gc3Vic2NyaXB0aW9uXG4gICAgICovXG4gICAgdmFsdWUgPSBuZXcgU3ViamVjdDxzdHJpbmdbXT4oKTtcbiAgICB2YWx1ZSQgPSB0aGlzLnZhbHVlLmFzT2JzZXJ2YWJsZSgpO1xuICAgIHJlYWR5ID0gbmV3IFN1YmplY3Q8Ym9vbGVhbj4oKTtcbiAgICByZWFkeSQgPSB0aGlzLnJlYWR5LmFzT2JzZXJ2YWJsZSgpO1xuICAgIHNvdXJjZSA9IGNvbWJpbmVMYXRlc3QoXG4gICAgICAgIHRoaXMudmFsdWUkLFxuICAgICAgICB0aGlzLnJlYWR5JFxuICAgICk7XG4gICAgc3ViID0gdGhpcy5zb3VyY2Uuc3Vic2NyaWJlKHZhbHVlcyA9PiB7XG4gICAgICAgIHRoaXMuY2hlY2tBbmRHZXREYXRhKCk7XG4gICAgfSk7XG5cbiAgICBzZWFyY2hTY2hlbWE6IGFueSA9IHt9O1xuICAgIHNlYXJjaERhdGE6IGFueSA9IHt9O1xuXG4gICAgc2hvd0Zvcm1QaWNrZXI6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcm90ZWN0ZWQgX2luamVjdG9yOiBJbmplY3RvcixcbiAgICAgICAgcHJvdGVjdGVkIF92YW5CYW5EaVNlcnZpY2U6IFZhbkJhbkRpU2VydmljZSxcbiAgICAgICAgX21vZHVsZUNvbmZpZ1NlcnZpY2U6IE1vZHVsZUNvbmZpZ1NlcnZpY2VcbiAgICApIHtcbiAgICAgICAgc3VwZXIoX2luamVjdG9yKTtcbiAgICAgICAgdGhpcy5lbnZpcm9ubWVudCA9IF9tb2R1bGVDb25maWdTZXJ2aWNlLmdldENvbmZpZygpLmVudmlyb25tZW50O1xuICAgIH1cblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICB0aGlzLmxvYWREZXRhaWxGcm9tUXVlcnlQYXJhbSA9IHRydWU7XG4gICAgICAgIHRoaXMubW9kZWwucmVhZHkgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5zZXR0aW5nLmJhc2VTZXJ2aWNlID0gdGhpcy5fdmFuQmFuRGlTZXJ2aWNlO1xuICAgICAgICB0aGlzLnNldHRpbmcuaGlkZGVuU2V0dGluZ1Blcm1pc3Npb24gPSB0cnVlO1xuICAgICAgICB0aGlzLnNldHRpbmcuaGlkZGVuU2V0dGluZ1dvcmtmbG93ID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5zZXR0aW5nLnNob3dFZGl0TGluayA9IGZhbHNlO1xuICAgICAgICBpZiAodGhpcy5oaWRkZW5QaWNrZXIpIHtcbiAgICAgICAgICAgIHRoaXMuc2V0dGluZy5oaWRkZW5QYWdlVGl0bGUgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuc2V0dGluZy5tb2RlbFNjaGVtYXMgPSBbXG4gICAgICAgICAgICBuZXcgTW9kZWxTY2hlbWEoeyBmaWVsZDogJ3NvRGknLCBkYXRhVHlwZTogJ2ludCcsIG5hbWU6ICdT4buRIMSRaScsIGZ1bGxOYW1lOiAnU+G7kSDEkWknLCBkZXNjcmlwdGlvbjogJ1Phu5EgxJFpJyB9KSxcbiAgICAgICAgICAgIG5ldyBNb2RlbFNjaGVtYSh7IGZpZWxkOiAnc29LeUhpZXUnLCBuYW1lOiAnU+G7kSwga8O9IGhp4buHdScsIGZ1bGxOYW1lOiAnU+G7kSwga8O9IGhp4buHdScsIGRlc2NyaXB0aW9uOiAnU+G7kSwga8O9IGhp4buHdScgfSksXG4gICAgICAgICAgICBuZXcgTW9kZWxTY2hlbWEoeyBmaWVsZDogJ3RyaWNoWWV1JywgbmFtZTogJ1Ryw61jaCB54bq/dScsIGZ1bGxOYW1lOiAnJywgZGVzY3JpcHRpb246ICcnIH0pLFxuICAgICAgICAgICAgbmV3IE1vZGVsU2NoZW1hKHsgZmllbGQ6ICduZ2F5QmFuSGFuaCcsIGRhdGFUeXBlOiAnZGF0ZScsIG5hbWU6ICdOZ8OgeSBiYW4gaMOgbmgnLCBmdWxsTmFtZTogJycsIGRlc2NyaXB0aW9uOiAnJyB9KSxcbiAgICAgICAgXTtcblxuICAgICAgICB0aGlzLnNldHRpbmcuY29scyA9IFtcbiAgICAgICAgICAgIG5ldyBDb2x1bW5TY2hlbWFCYXNlKHtcbiAgICAgICAgICAgICAgICBmaWVsZDogJ3NvRGknLFxuICAgICAgICAgICAgICAgIHdpZHRoOiAnMTAwcHgnXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIG5ldyBDb2x1bW5TY2hlbWFCYXNlKHtcbiAgICAgICAgICAgICAgICBmaWVsZDogJ3NvS3lIaWV1JyxcbiAgICAgICAgICAgICAgICB3aWR0aDogJzE1MHB4J1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBuZXcgQ29sdW1uU2NoZW1hQmFzZSh7XG4gICAgICAgICAgICAgICAgZmllbGQ6ICd0cmljaFlldSdcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgbmV3IENvbHVtblNjaGVtYUJhc2Uoe1xuICAgICAgICAgICAgICAgIGZpZWxkOiAnbmdheUJhbkhhbmgnLFxuICAgICAgICAgICAgICAgIHdpZHRoOiAnMTI1cHgnXG4gICAgICAgICAgICB9KVxuICAgICAgICBdO1xuICAgICAgICB0aGlzLnNldHRpbmcuZmllbGRTZWFyY2hUZXh0ID0gWydjb2RlJywgJ25hbWUnXTtcbiAgICAgICAgdGhpcy5zZXR0aW5nLm9iamVjdE5hbWUgPSAnIHbEg24gYuG6o24gxJFpJztcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcbiAgICB9XG5cbiAgICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgICAgIHRoaXMucmVhZHkubmV4dCh0cnVlKTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpIHtcbiAgICAgICAgdGhpcy5zdWIudW5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbiAgICBnZXRQcm9taXNlR2V0RGF0YShncmlkSW5mbzogR3JpZEluZm8pIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2V0dGluZy5iYXNlU2VydmljZS5nZXRCeUdyaWRSZXF1ZXN0V2l0aEJvZHlPbGQoZ3JpZEluZm8sICdQZXJtaXNzaW9uJyk7XG4gICAgfVxuXG4gICAgYXN5bmMgbW9kaWZ5R3JpZEluZm8oZ3JpZEluZm8/OiBHcmlkSW5mbykge1xuICAgICAgICBncmlkSW5mby5zb3J0cyA9IFtcbiAgICAgICAgICAgIHsgZmllbGQ6ICdpZCcsIGRpcjogLTEgfVxuICAgICAgICBdO1xuICAgICAgICBpZiAodGhpcy5faWRzICYmIHRoaXMuX2lkcy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICBsZXQgb3BlcmF0b3IgPSBPcGVyYXRvci5pbjtcbiAgICAgICAgICAgIGlmICh0aGlzLmhpZGRlblBpY2tlcikge1xuICAgICAgICAgICAgICAgIG9wZXJhdG9yID0gT3BlcmF0b3Iubm90SW47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBncmlkSW5mby5maWx0ZXJzLnVuc2hpZnQoXG4gICAgICAgICAgICAgICAgdGhpcy5uZXdGaWx0ZXIoJ2luc3RhbmNlSWQnLCBvcGVyYXRvciwgdGhpcy5faWRzKVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGNoZWNrQW5kR2V0RGF0YSgpIHtcbiAgICAgICAgaWYgKHRoaXMuX2lkcykge1xuICAgICAgICAgICAgaWYgKHRoaXMuaGlkZGVuUGlja2VyKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5tb2RlbC5yZWFkeSA9IHRydWU7XG4gICAgICAgICAgICAgICAgdGhpcy5yZWxvYWQoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLl9pZHMubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLm1vZGVsLnJlYWR5ID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5yZWxvYWQoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICB0aGlzLm1vZGVsLnJlYWR5ID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBzaG93Rm9ybVBpY2tWYW5CYW4oKSB7XG4gICAgICAgIHRoaXMuYmVmb3JlQWRkKCk7XG4gICAgICAgIHRoaXMuc2V0dGluZy5wb3B1cFNpemUubWF4aW1pemUgPSB0cnVlO1xuICAgICAgICB0aGlzLnNldHRpbmcucG9wdXBIZWFkZXIgPSBgVGjDqm0gbeG7m2kgJHt0aGlzLnNldHRpbmcub2JqZWN0TmFtZX1gO1xuICAgICAgICB0aGlzLnNob3dGb3JtUGlja2VyID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBwaWNrVmFuQmFuU2VsZWN0ZWQoKSB7XG4gICAgICAgIHRoaXMuX3BpY2tWYW5CYW4odGhpcy5tb2RlbC5zZWxlY3RlZEl0ZW1zKTtcbiAgICB9XG5cbiAgICBwaWNrVmFuQmFuKHJvd0RhdGEpIHtcbiAgICAgICAgdGhpcy5fcGlja1ZhbkJhbihbcm93RGF0YV0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgX3BpY2tWYW5CYW4oaXRlbXMpIHtcbiAgICAgICAgdGhpcy5vblBpY2tlZC5lbWl0KHtcbiAgICAgICAgICAgIGlkczogaXRlbXMubWFwKGl0ZW0gPT4gaXRlbS5pbnN0YW5jZUlkKSxcbiAgICAgICAgICAgIGl0ZW1zXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHhvYVZhbkJhblNlbGVjdGVkKCkge1xuICAgICAgICB0aGlzLl94b2FWYW5CYW4odGhpcy5tb2RlbC5zZWxlY3RlZEl0ZW1zKTtcbiAgICB9XG5cbiAgICB4b2FWYW5CYW4ocm93RGF0YSkge1xuICAgICAgICB0aGlzLl94b2FWYW5CYW4oW3Jvd0RhdGFdKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF94b2FWYW5CYW4oaXRlbXMpIHtcbiAgICAgICAgdGhpcy5vblJlbW92ZWQuZW1pdCh7XG4gICAgICAgICAgICBpZHM6IGl0ZW1zLm1hcChpdGVtID0+IGl0ZW0uaW5zdGFuY2VJZCksXG4gICAgICAgICAgICBpdGVtc1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBuYXZpZ2F0ZVRvVmFuQmFuKHJvd0RhdGEpIHtcbiAgICAgICAgd2luZG93Lm9wZW4oYCR7dGhpcy5lbnZpcm9ubWVudC5jbGllbnREb21haW4udmFuYmFuRG9tYWlufS92YW5iYW5kaSNfYT0xJl9pPSR7cm93RGF0YS5pZH1gLCAnX2JsYW5rJyk7XG4gICAgfVxuXG4gICAgaGFuZGxlUGlja2VkKGRhdGEpIHtcbiAgICAgICAgLy8gY29uc3QgaWRzID0gW1xuICAgICAgICAvLyAgICAgLi4udGhpcy5faWRzLFxuICAgICAgICAvLyAgICAgLi4uZGF0YS5pZHMuZmlsdGVyKHEgPT4gdGhpcy5faWRzLmluZGV4T2YocSkgPT0gLTEpXG4gICAgICAgIC8vIF1cbiAgICAgICAgLy8gdGhpcy5pZHMgPSBpZHM7XG4gICAgICAgIHRoaXMub25QaWNrZWQuZW1pdChkYXRhKTtcbiAgICB9XG59XG5cbiJdfQ==
177
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFuYmFuLWRpLXBpY2tlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90bngtc2hhcmVkL3NyYy9saWIvY29tcG9uZW50cy92YW5iYW4tcGlja2VyL3ZhbmJhbi1kaS1waWNrZXIvdmFuYmFuLWRpLXBpY2tlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBaUIsU0FBUyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkgsT0FBTyxFQUFFLGFBQWEsRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDOUMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDekYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxXQUFXLEVBQUUsUUFBUSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFFdkYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDOUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBUWhFLE1BQU0sT0FBTyx1QkFBd0IsU0FBUSxZQUFZO0lBaUNyRCxZQUNjLFNBQW1CLEVBQ25CLGdCQUFpQyxFQUMzQyxvQkFBeUM7UUFFekMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBSlAsY0FBUyxHQUFULFNBQVMsQ0FBVTtRQUNuQixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWlCO1FBNUJ0QyxpQkFBWSxHQUFZLEtBQUssQ0FBQztRQUU3QixhQUFRLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUNuQyxjQUFTLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUU5QyxnQkFBVyxHQUFRLEVBQUUsQ0FBQztRQUN0Qjs7V0FF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b3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIEluamVjdG9yLCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgY29tYmluZUxhdGVzdCwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQ29tcG9uZW50Q29udGV4dFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9hcHAtY29udGV4dC9jb21wb25lbnQtY29udGV4dC5zZXJ2aWNlJztcbmltcG9ydCB7IERhdGFMaXN0QmFzZSB9IGZyb20gJy4uLy4uLy4uL2NsYXNzZXMvYmFzZS9kYXRhLWxpc3QtYmFzZSc7XG5pbXBvcnQgeyBDb2x1bW5TY2hlbWFCYXNlLCBNb2RlbFNjaGVtYSwgT3BlcmF0b3IgfSBmcm9tICcuLi8uLi8uLi9jbGFzc2VzL2Zvcm0tc2NoZW1hJztcbmltcG9ydCB7IEdyaWRJbmZvIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL2dyaWQtaW5mbyc7XG5pbXBvcnQgeyBNb2R1bGVDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvbW9kdWxlLWNvbmZpZy5zZXJ2aWNlJztcbmltcG9ydCB7IFZhbkJhbkRpU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL3ZhbmJhbi1kaS5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdhcHAtdmFuYmFuLWRpLXBpY2tlcicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3ZhbmJhbi1kaS1waWNrZXIuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3ZhbmJhbi1kaS1waWNrZXIuY29tcG9uZW50LmNzcyddLFxuICAgIHByb3ZpZGVyczogW0NvbXBvbmVudENvbnRleHRTZXJ2aWNlXSxcbn0pXG5leHBvcnQgY2xhc3MgVmFuYmFuRGlQaWNrZXJDb21wb25lbnQgZXh0ZW5kcyBEYXRhTGlzdEJhc2UgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgQWZ0ZXJWaWV3SW5pdCB7XG5cbiAgICBfaWRzOiBzdHJpbmdbXTtcbiAgICBASW5wdXQoKSBzZXQgaWRzKHZhbHVlOiBzdHJpbmdbXSkge1xuICAgICAgICB0aGlzLl9pZHMgPSB2YWx1ZTtcbiAgICAgICAgdGhpcy52YWx1ZS5uZXh0KHZhbHVlKTtcbiAgICB9XG4gICAgQElucHV0KCkgaGlkZGVuUGlja2VyOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICBAT3V0cHV0KCkgb25QaWNrZWQgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgICBAT3V0cHV0KCkgb25SZW1vdmVkID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgICBlbnZpcm9ubWVudDogYW55ID0ge307XG4gICAgLyoqXG4gICAgICogVOG6oW8gc3Vic2NyaXB0aW9uXG4gICAgICovXG4gICAgdmFsdWUgPSBuZXcgU3ViamVjdDxzdHJpbmdbXT4oKTtcbiAgICB2YWx1ZSQgPSB0aGlzLnZhbHVlLmFzT2JzZXJ2YWJsZSgpO1xuICAgIHJlYWR5ID0gbmV3IFN1YmplY3Q8Ym9vbGVhbj4oKTtcbiAgICByZWFkeSQgPSB0aGlzLnJlYWR5LmFzT2JzZXJ2YWJsZSgpO1xuICAgIHNvdXJjZSA9IGNvbWJpbmVMYXRlc3QoXG4gICAgICAgIHRoaXMudmFsdWUkLFxuICAgICAgICB0aGlzLnJlYWR5JFxuICAgICk7XG4gICAgc3ViID0gdGhpcy5zb3VyY2Uuc3Vic2NyaWJlKHZhbHVlcyA9PiB7XG4gICAgICAgIHRoaXMuY2hlY2tBbmRHZXREYXRhKCk7XG4gICAgfSk7XG5cbiAgICBzZWFyY2hTY2hlbWE6IGFueSA9IHt9O1xuICAgIHNlYXJjaERhdGE6IGFueSA9IHt9O1xuXG4gICAgc2hvd0Zvcm1QaWNrZXI6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcm90ZWN0ZWQgX2luamVjdG9yOiBJbmplY3RvcixcbiAgICAgICAgcHJvdGVjdGVkIF92YW5CYW5EaVNlcnZpY2U6IFZhbkJhbkRpU2VydmljZSxcbiAgICAgICAgX21vZHVsZUNvbmZpZ1NlcnZpY2U6IE1vZHVsZUNvbmZpZ1NlcnZpY2VcbiAgICApIHtcbiAgICAgICAgc3VwZXIoX2luamVjdG9yKTtcbiAgICAgICAgdGhpcy5lbnZpcm9ubWVudCA9IF9tb2R1bGVDb25maWdTZXJ2aWNlLmdldENvbmZpZygpLmVudmlyb25tZW50O1xuICAgIH1cblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICB0aGlzLnNldHRpbmcuaGlkZGVuQXV0aG9yaXplQnV0dG9uID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5sb2FkRGV0YWlsRnJvbVF1ZXJ5UGFyYW0gPSB0cnVlO1xuICAgICAgICB0aGlzLm1vZGVsLnJlYWR5ID0gZmFsc2U7XG4gICAgICAgIHRoaXMuc2V0dGluZy5iYXNlU2VydmljZSA9IHRoaXMuX3ZhbkJhbkRpU2VydmljZTtcbiAgICAgICAgdGhpcy5zZXR0aW5nLmhpZGRlblNldHRpbmdQZXJtaXNzaW9uID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5zZXR0aW5nLmhpZGRlblNldHRpbmdXb3JrZmxvdyA9IHRydWU7XG4gICAgICAgIHRoaXMuc2V0dGluZy5zaG93RWRpdExpbmsgPSBmYWxzZTtcbiAgICAgICAgaWYgKHRoaXMuaGlkZGVuUGlja2VyKSB7XG4gICAgICAgICAgICB0aGlzLnNldHRpbmcuaGlkZGVuUGFnZVRpdGxlID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnNldHRpbmcubW9kZWxTY2hlbWFzID0gW1xuICAgICAgICAgICAgbmV3IE1vZGVsU2NoZW1hKHsgZmllbGQ6ICdzb0RpJywgZGF0YVR5cGU6ICdpbnQnLCBuYW1lOiAnU+G7kSDEkWknLCBmdWxsTmFtZTogJ1Phu5EgxJFpJywgZGVzY3JpcHRpb246ICdT4buRIMSRaScgfSksXG4gICAgICAgICAgICBuZXcgTW9kZWxTY2hlbWEoeyBmaWVsZDogJ3NvS3lIaWV1JywgbmFtZTogJ1Phu5EsIGvDvSBoaeG7h3UnLCBmdWxsTmFtZTogJ1Phu5EsIGvDvSBoaeG7h3UnLCBkZXNjcmlwdGlvbjogJ1Phu5EsIGvDvSBoaeG7h3UnIH0pLFxuICAgICAgICAgICAgbmV3IE1vZGVsU2NoZW1hKHsgZmllbGQ6ICd0cmljaFlldScsIG5hbWU6ICdUcsOtY2ggeeG6v3UnLCBmdWxsTmFtZTogJycsIGRlc2NyaXB0aW9uOiAnJyB9KSxcbiAgICAgICAgICAgIG5ldyBNb2RlbFNjaGVtYSh7IGZpZWxkOiAnbmdheUJhbkhhbmgnLCBkYXRhVHlwZTogJ2RhdGUnLCBuYW1lOiAnTmfDoHkgYmFuIGjDoG5oJywgZnVsbE5hbWU6ICcnLCBkZXNjcmlwdGlvbjogJycgfSksXG4gICAgICAgIF07XG5cbiAgICAgICAgdGhpcy5zZXR0aW5nLmNvbHMgPSBbXG4gICAgICAgICAgICBuZXcgQ29sdW1uU2NoZW1hQmFzZSh7XG4gICAgICAgICAgICAgICAgZmllbGQ6ICdzb0RpJyxcbiAgICAgICAgICAgICAgICB3aWR0aDogJzEwMHB4J1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBuZXcgQ29sdW1uU2NoZW1hQmFzZSh7XG4gICAgICAgICAgICAgICAgZmllbGQ6ICdzb0t5SGlldScsXG4gICAgICAgICAgICAgICAgd2lkdGg6ICcxNTBweCdcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgbmV3IENvbHVtblNjaGVtYUJhc2Uoe1xuICAgICAgICAgICAgICAgIGZpZWxkOiAndHJpY2hZZXUnXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIG5ldyBDb2x1bW5TY2hlbWFCYXNlKHtcbiAgICAgICAgICAgICAgICBmaWVsZDogJ25nYXlCYW5IYW5oJyxcbiAgICAgICAgICAgICAgICB3aWR0aDogJzEyNXB4J1xuICAgICAgICAgICAgfSlcbiAgICAgICAgXTtcbiAgICAgICAgdGhpcy5zZXR0aW5nLmZpZWxkU2VhcmNoVGV4dCA9IFsnY29kZScsICduYW1lJ107XG4gICAgICAgIHRoaXMuc2V0dGluZy5vYmplY3ROYW1lID0gJyB2xINuIGLhuqNuIMSRaSc7XG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XG4gICAgfVxuXG4gICAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgICAgICB0aGlzLnJlYWR5Lm5leHQodHJ1ZSk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKSB7XG4gICAgICAgIHRoaXMuc3ViLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuXG4gICAgZ2V0UHJvbWlzZUdldERhdGEoZ3JpZEluZm86IEdyaWRJbmZvKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnNldHRpbmcuYmFzZVNlcnZpY2UuZ2V0QnlHcmlkUmVxdWVzdFdpdGhCb2R5T2xkKGdyaWRJbmZvLCAnUGVybWlzc2lvbicpO1xuICAgIH1cblxuICAgIGFzeW5jIG1vZGlmeUdyaWRJbmZvKGdyaWRJbmZvPzogR3JpZEluZm8pIHtcbiAgICAgICAgZ3JpZEluZm8uc29ydHMgPSBbXG4gICAgICAgICAgICB7IGZpZWxkOiAnaWQnLCBkaXI6IC0xIH1cbiAgICAgICAgXTtcbiAgICAgICAgaWYgKHRoaXMuX2lkcyAmJiB0aGlzLl9pZHMubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgbGV0IG9wZXJhdG9yID0gT3BlcmF0b3IuaW47XG4gICAgICAgICAgICBpZiAodGhpcy5oaWRkZW5QaWNrZXIpIHtcbiAgICAgICAgICAgICAgICBvcGVyYXRvciA9IE9wZXJhdG9yLm5vdEluO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZ3JpZEluZm8uZmlsdGVycy51bnNoaWZ0KFxuICAgICAgICAgICAgICAgIHRoaXMubmV3RmlsdGVyKCdpbnN0YW5jZUlkJywgb3BlcmF0b3IsIHRoaXMuX2lkcylcbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBjaGVja0FuZEdldERhdGEoKSB7XG4gICAgICAgIGlmICh0aGlzLl9pZHMpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLmhpZGRlblBpY2tlcikge1xuICAgICAgICAgICAgICAgIHRoaXMubW9kZWwucmVhZHkgPSB0cnVlO1xuICAgICAgICAgICAgICAgIHRoaXMucmVsb2FkKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5faWRzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5tb2RlbC5yZWFkeSA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucmVsb2FkKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5tb2RlbC5yZWFkeSA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgc2hvd0Zvcm1QaWNrVmFuQmFuKCkge1xuICAgICAgICB0aGlzLmJlZm9yZUFkZCgpO1xuICAgICAgICB0aGlzLnNldHRpbmcucG9wdXBTaXplLm1heGltaXplID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5zZXR0aW5nLnBvcHVwSGVhZGVyID0gYFRow6ptIG3hu5tpICR7dGhpcy5zZXR0aW5nLm9iamVjdE5hbWV9YDtcbiAgICAgICAgdGhpcy5zaG93Rm9ybVBpY2tlciA9IHRydWU7XG4gICAgfVxuXG4gICAgcGlja1ZhbkJhblNlbGVjdGVkKCkge1xuICAgICAgICB0aGlzLl9waWNrVmFuQmFuKHRoaXMubW9kZWwuc2VsZWN0ZWRJdGVtcyk7XG4gICAgfVxuXG4gICAgcGlja1ZhbkJhbihyb3dEYXRhKSB7XG4gICAgICAgIHRoaXMuX3BpY2tWYW5CYW4oW3Jvd0RhdGFdKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9waWNrVmFuQmFuKGl0ZW1zKSB7XG4gICAgICAgIHRoaXMub25QaWNrZWQuZW1pdCh7XG4gICAgICAgICAgICBpZHM6IGl0ZW1zLm1hcChpdGVtID0+IGl0ZW0uaW5zdGFuY2VJZCksXG4gICAgICAgICAgICBpdGVtc1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICB4b2FWYW5CYW5TZWxlY3RlZCgpIHtcbiAgICAgICAgdGhpcy5feG9hVmFuQmFuKHRoaXMubW9kZWwuc2VsZWN0ZWRJdGVtcyk7XG4gICAgfVxuXG4gICAgeG9hVmFuQmFuKHJvd0RhdGEpIHtcbiAgICAgICAgdGhpcy5feG9hVmFuQmFuKFtyb3dEYXRhXSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfeG9hVmFuQmFuKGl0ZW1zKSB7XG4gICAgICAgIHRoaXMub25SZW1vdmVkLmVtaXQoe1xuICAgICAgICAgICAgaWRzOiBpdGVtcy5tYXAoaXRlbSA9PiBpdGVtLmluc3RhbmNlSWQpLFxuICAgICAgICAgICAgaXRlbXNcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmF2aWdhdGVUb1ZhbkJhbihyb3dEYXRhKSB7XG4gICAgICAgIHdpbmRvdy5vcGVuKGAke3RoaXMuZW52aXJvbm1lbnQuY2xpZW50RG9tYWluLnZhbmJhbkRvbWFpbn0vdmFuYmFuZGkjX2E9MSZfaT0ke3Jvd0RhdGEuaWR9YCwgJ19ibGFuaycpO1xuICAgIH1cblxuICAgIGhhbmRsZVBpY2tlZChkYXRhKSB7XG4gICAgICAgIC8vIGNvbnN0IGlkcyA9IFtcbiAgICAgICAgLy8gICAgIC4uLnRoaXMuX2lkcyxcbiAgICAgICAgLy8gICAgIC4uLmRhdGEuaWRzLmZpbHRlcihxID0+IHRoaXMuX2lkcy5pbmRleE9mKHEpID09IC0xKVxuICAgICAgICAvLyBdXG4gICAgICAgIC8vIHRoaXMuaWRzID0gaWRzO1xuICAgICAgICB0aGlzLm9uUGlja2VkLmVtaXQoZGF0YSk7XG4gICAgfVxufVxuXG4iXX0=
@@ -25,6 +25,7 @@ export class VanBanPickerComponent extends DataListBase {
25
25
  this.environment = _moduleConfigService.getConfig().environment;
26
26
  }
27
27
  ngOnInit() {
28
+ this.setting.hiddenAuthorizeButton = true;
28
29
  this.loadDetailFromQueryParam = true;
29
30
  this.model.ready = false;
30
31
  this.setting.baseService = this._vanBanDenService;
@@ -293,4 +294,4 @@ VanBanPickerComponent.propDecorators = {
293
294
  onChanged: [{ type: Output }],
294
295
  onReady: [{ type: Output }]
295
296
  };
296
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFuYmFuLXBpY2tlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90bngtc2hhcmVkL3NyYy9saWIvY29tcG9uZW50cy92YW5iYW4tcGlja2VyL3ZhbmJhbi1waWNrZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckcsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQ3RGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNqRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFLFFBQVEsRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQy9HLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUVsRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUMzRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNwRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNqRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFlL0QsTUFBTSxPQUFPLHFCQUFzQixTQUFRLFlBQVk7SUF3Qm5ELFlBQ0ksU0FBbUIsRUFDVCxpQkFBbUMsRUFDbkMsZ0JBQWlDLEVBQzNDLG9CQUF5QztRQUV6QyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUM7UUFKUCxzQkFBaUIsR0FBakIsaUJBQWlCLENBQWtCO1FBQ25DLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FB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Q0FBQyxXQUFXLEdBQUcsR0FBRyxDQUFDLFdBQVcsQ0FBQztZQUNuQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7WUFDeEIsSUFBSSxJQUFJLENBQUMsUUFBUTtnQkFBRSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7U0FDcEM7SUFDTCxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsRUFBTztRQUNwQixJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRUQsaUJBQWlCLENBQUMsRUFBTztRQUNyQixJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRUQsZ0JBQWdCLENBQUUsVUFBbUI7UUFDakMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEdBQUcsVUFBVSxDQUFDO0lBQ3ZDLENBQUM7OztZQXJUSixTQUFTLFNBQUM7Z0JBQ1AsUUFBUSxFQUFFLGVBQWU7Z0JBQ3pCLDJnRUFBNkM7Z0JBRTdDLFNBQVMsRUFBRTtvQkFDUCx1QkFBdUI7b0JBQ3ZCO3dCQUNJLE9BQU8sRUFBRSxpQkFBaUI7d0JBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMscUJBQXFCLENBQUM7d0JBQ3BELEtBQUssRUFBRSxJQUFJO3FCQUNkO2lCQUNKOzthQUNKOzs7WUF4QjZDLFFBQVE7WUFTN0MsZ0JBQWdCO1lBQ2hCLGVBQWU7WUFIZixtQkFBbUI7Ozt5QkF1QnZCLEtBQUs7dUJBQ0wsS0FBSztzQkFDTCxLQUFLO3FCQUVMLE1BQU07d0JBQ04sTUFBTTtzQkFDTixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIGZvcndhcmRSZWYsIEluamVjdG9yLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IENvbXBvbmVudENvbnRleHRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vYXBwLWNvbnRleHQvY29tcG9uZW50LWNvbnRleHQuc2VydmljZSc7XG5pbXBvcnQgeyBEYXRhTGlzdEJhc2UgfSBmcm9tICcuLi8uLi9jbGFzc2VzL2Jhc2UvZGF0YS1saXN0LWJhc2UnO1xuaW1wb3J0IHsgQ29sdW1uU2NoZW1hQmFzZSwgTW9kZWxTY2hlbWEsIE9wZXJhdG9yLCBWYW5CYW5QaWNrZXJDb250cm9sU2NoZW1hIH0gZnJvbSAnLi4vLi4vY2xhc3Nlcy9mb3JtLXNjaGVtYSc7XG5pbXBvcnQgeyBHcmlkSW5mbyB9IGZyb20gJy4uLy4uL21vZGVscy9ncmlkLWluZm8nO1xuaW1wb3J0IHsgUmVzcG9uc2VSZXN1bHQgfSBmcm9tICcuLi8uLi9tb2RlbHMvcmVzcG9uc2UtcmVzdWx0JztcbmltcG9ydCB7IE1vZHVsZUNvbmZpZ1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9tb2R1bGUtY29uZmlnLnNlcnZpY2UnO1xuaW1wb3J0IHsgRW51bUxvYWlWYW5CYW5CYXNlIH0gZnJvbSAnLi9tb2RlbHMvZW51bXMnO1xuaW1wb3J0IHsgVmFuQmFuRGVuU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvdmFuYmFuLWRlbi5zZXJ2aWNlJztcbmltcG9ydCB7IFZhbkJhbkRpU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvdmFuYmFuLWRpLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3ZhbmJhbi1waWNrZXInLFxuICAgIHRlbXBsYXRlVXJsOiAnLi92YW5iYW4tcGlja2VyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi92YW5iYW4tcGlja2VyLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIENvbXBvbmVudENvbnRleHRTZXJ2aWNlLFxuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFZhbkJhblBpY2tlckNvbXBvbmVudCksXG4gICAgICAgICAgICBtdWx0aTogdHJ1ZVxuICAgICAgICB9XG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBWYW5CYW5QaWNrZXJDb21wb25lbnQgZXh0ZW5kcyBEYXRhTGlzdEJhc2UgaW1wbGVtZW50cyBPbkluaXQsIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcblxuICAgIG9uQ2hhbmdlOiBGdW5jdGlvbjtcbiAgICBvblRvdWNoZWQ6IEZ1bmN0aW9uO1xuXG4gICAgQElucHV0KCkgbG9haVZhbkJhbjogbnVtYmVyO1xuICAgIEBJbnB1dCgpIHJlYWRPbmx5OiBib29sZWFuO1xuICAgIEBJbnB1dCgpIGNvbnRyb2w6IFZhbkJhblBpY2tlckNvbnRyb2xTY2hlbWE7XG5cbiAgICBAT3V0cHV0KCkgb25Jbml0ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG4gICAgQE91dHB1dCgpIG9uQ2hhbmdlZDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgICBAT3V0cHV0KCkgb25SZWFkeSA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gICAgZW52aXJvbm1lbnQ6IGFueSA9IHt9O1xuXG4gICAgaWRWYW5CYW5EZW5zOiBzdHJpbmdbXTtcbiAgICBpZFZhbkJhbkRpczogc3RyaW5nW107XG5cbiAgICBjdXJyZW50VGFiSW5kZXg6IG51bWJlciA9IDA7XG5cbiAgICB1c2VBbGw6IGJvb2xlYW4gPSB0cnVlO1xuICAgIHNob3dGb3JtUGlja2VyOiBib29sZWFuID0gZmFsc2U7XG4gICAgZGlydHk6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBfaW5qZWN0b3I6IEluamVjdG9yLFxuICAgICAgICBwcm90ZWN0ZWQgX3ZhbkJhbkRlblNlcnZpY2U6IFZhbkJhbkRlblNlcnZpY2UsXG4gICAgICAgIHByb3RlY3RlZCBfdmFuQmFuRGlTZXJ2aWNlOiBWYW5CYW5EaVNlcnZpY2UsXG4gICAgICAgIF9tb2R1bGVDb25maWdTZXJ2aWNlOiBNb2R1bGVDb25maWdTZXJ2aWNlXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKF9pbmplY3Rvcik7XG4gICAgICAgIHRoaXMuZW52aXJvbm1lbnQgPSBfbW9kdWxlQ29uZmlnU2VydmljZS5nZXRDb25maWcoKS5lbnZpcm9ubWVudDtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgdGhpcy5sb2FkRGV0YWlsRnJvbVF1ZXJ5UGFyYW0gPSB0cnVlO1xuICAgICAgICB0aGlzLm1vZGVsLnJlYWR5ID0gZmFsc2U7XG4gICAgICAgIHRoaXMuc2V0dGluZy5iYXNlU2VydmljZSA9IHRoaXMuX3ZhbkJhbkRlblNlcnZpY2U7XG4gICAgICAgIHRoaXMuc2V0dGluZy5oaWRkZW5TZXR0aW5nUGVybWlzc2lvbiA9IHRydWU7XG4gICAgICAgIHRoaXMuc2V0dGluZy5oaWRkZW5TZXR0aW5nV29ya2Zsb3cgPSB0cnVlO1xuICAgICAgICB0aGlzLnNldHRpbmcuc2hvd0VkaXRMaW5rID0gZmFsc2U7XG4gICAgICAgIHRoaXMuc2V0dGluZy5oaWRkZW5TZXR0aW5nV29ya2Zsb3cgPSB0cnVlO1xuXG4gICAgICAgIC8vIFJlZE9ubHlcbiAgICAgICAgdGhpcy5zZXR0aW5nLmhpZGRlblRvb2xiYXIgPSB0aGlzLnJlYWRPbmx5O1xuXG4gICAgICAgIHRoaXMuc2V0dGluZy5tb2RlbFNjaGVtYXMgPSBbXG4gICAgICAgICAgICBuZXcgTW9kZWxTY2hlbWEoeyBmaWVsZDogJ3NvRGVuRGknLCBkYXRhVHlwZTogJ2ludCcsIG5hbWU6ICdT4buRIMSR4bq/bi/EkWknLCBmdWxsTmFtZTogJ1Phu5EgxJHhur9uL8SRaScsIGRlc2NyaXB0aW9uOiAnU+G7kSDEkeG6v24vxJFpJyB9KSxcbiAgICAgICAgICAgIG5ldyBNb2RlbFNjaGVtYSh7IGZpZWxkOiAnc29LeUhpZXUnLCBuYW1lOiAnU+G7kSwga8O9IGhp4buHdScsIGZ1bGxOYW1lOiAnU+G7kSwga8O9IGhp4buHdScsIGRlc2NyaXB0aW9uOiAnU+G7kSwga8O9IGhp4buHdScgfSksXG4gICAgICAgICAgICBuZXcgTW9kZWxTY2hlbWEoeyBmaWVsZDogJ3RyaWNoWWV1JywgbmFtZTogJ1Ryw61jaCB54bq/dScsIGZ1bGxOYW1lOiAnJywgZGVzY3JpcHRpb246ICcnIH0pLFxuICAgICAgICAgICAgbmV3IE1vZGVsU2NoZW1hKHsgZmllbGQ6ICduZ2F5QmFuSGFuaCcsIGRhdGFUeXBlOiAnZGF0ZScsIG5hbWU6ICdOZ8OgeSBiYW4gaMOgbmgnLCBmdWxsTmFtZTogJycsIGRlc2NyaXB0aW9uOiAnJyB9KVxuICAgICAgICBdO1xuXG4gICAgICAgIHRoaXMuc2V0dGluZy5jb2xzID0gW1xuICAgICAgICAgICAgbmV3IENvbHVtblNjaGVtYUJhc2Uoe1xuICAgICAgICAgICAgICAgIGZpZWxkOiAnc29EZW5EaScsXG4gICAgICAgICAgICAgICAgd2lkdGg6ICcxMDBweCdcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgbmV3IENvbHVtblNjaGVtYUJhc2Uoe1xuICAgICAgICAgICAgICAgIGZpZWxkOiAnc29LeUhpZXUnLFxuICAgICAgICAgICAgICAgIHdpZHRoOiAnMTUwcHgnXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIG5ldyBDb2x1bW5TY2hlbWFCYXNlKHtcbiAgICAgICAgICAgICAgICBmaWVsZDogJ3RyaWNoWWV1J1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBuZXcgQ29sdW1uU2NoZW1hQmFzZSh7XG4gICAgICAgICAgICAgICAgZmllbGQ6ICduZ2F5QmFuSGFuaCcsXG4gICAgICAgICAgICAgICAgd2lkdGg6ICcxMjVweCdcbiAgICAgICAgICAgIH0pXG4gICAgICAgIF07XG4gICAgICAgIHRoaXMuc2V0dGluZy5maWVsZFNlYXJjaFRleHQgPSBbJ2NvZGUnLCAnbmFtZSddO1xuICAgICAgICB0aGlzLnNldHRpbmcub2JqZWN0TmFtZSA9ICcgdsSDbiBi4bqjbic7XG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XG4gICAgICAgIHRoaXMub25Jbml0LmVtaXQodGhpcyk7XG4gICAgfVxuXG4gICAgZ2V0VmFuQmFuRGVuKG9yaWdpbkdyaWRJbmZvOiBHcmlkSW5mbyk6IFByb21pc2U8UmVzcG9uc2VSZXN1bHQ+IHtcbiAgICAgICAgY29uc3QgZ3JpZEluZm8gPSBuZXcgR3JpZEluZm8oe1xuICAgICAgICAgICAgLi4ub3JpZ2luR3JpZEluZm8sXG4gICAgICAgICAgICBmaWx0ZXJzOiBbLi4ub3JpZ2luR3JpZEluZm8uZmlsdGVycy5tYXAocSA9PiAoeyAuLi5xIH0pKV1cbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICAgICAgICBpZiAoIXRoaXMuaWRWYW5CYW5EZW5zIHx8IHRoaXMuaWRWYW5CYW5EZW5zLmxlbmd0aCA9PSAwKSB7XG4gICAgICAgICAgICAgICAgcmVzb2x2ZSg8UmVzcG9uc2VSZXN1bHQ+e1xuICAgICAgICAgICAgICAgICAgICBzdWNjZXNzOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICBkYXRhOiBbXVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGdyaWRJbmZvLmZpbHRlcnMucHVzaChcbiAgICAgICAgICAgICAgICB0aGlzLm5ld0ZpbHRlcignaWQnLCBPcGVyYXRvci5pbiwgdGhpcy5pZFZhbkJhbkRlbnMpXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgdGhpcy5fdmFuQmFuRGVuU2VydmljZS5nZXRCeUdyaWRSZXF1ZXN0V2l0aEJvZHlPbGQoZ3JpZEluZm8sICdQZXJtaXNzaW9uJylcbiAgICAgICAgICAgICAgICAudGhlbihhc3luYyByZXNwb25zZSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChyZXNwb25zZS5zdWNjZXNzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXNvbHZlKHJlc3BvbnNlKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX25vdGlmaWVyU2VydmljZS5zaG93V2FybmluZyhyZXNwb25zZS5tZXNzYWdlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlc29sdmUocmVzcG9uc2UpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSwgZXJyb3IgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl9ub3RpZmllclNlcnZpY2Uuc2hvd0h0dHBVbmtub3dFcnJvcigpO1xuICAgICAgICAgICAgICAgICAgICByZXNvbHZlKDxSZXNwb25zZVJlc3VsdD57XG4gICAgICAgICAgICAgICAgICAgICAgICBzdWNjZXNzOiBmYWxzZVxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgZGVRdXlSZW5hbWVTb0RlbihmaWx0ZXJzKSB7XG4gICAgICAgIGlmIChmaWx0ZXJzKSB7XG4gICAgICAgICAgICBmaWx0ZXJzLmZvckVhY2goZmlsdGVyID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoZmlsdGVyLmZpZWxkID09ICdzb0RlbicpIGZpbHRlci5maWVsZCA9ICdzb0RpJztcbiAgICAgICAgICAgICAgICBlbHNlIGlmIChmaWx0ZXIuZmlsdGVycyAmJiBmaWx0ZXIuZmlsdGVycy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZGVRdXlSZW5hbWVTb0RlbihmaWx0ZXIuZmlsdGVycyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBnZXRWYW5CYW5EaShvcmlnaW5HcmlkSW5mbzogR3JpZEluZm8pOiBQcm9taXNlPFJlc3BvbnNlUmVzdWx0PiB7XG4gICAgICAgIGNvbnN0IGdyaWRJbmZvID0gbmV3IEdyaWRJbmZvKHtcbiAgICAgICAgICAgIC4uLm9yaWdpbkdyaWRJbmZvLFxuICAgICAgICAgICAgZmlsdGVyczogWy4uLm9yaWdpbkdyaWRJbmZvLmZpbHRlcnMubWFwKHEgPT4gKHsgLi4ucSB9KSldXG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLmRlUXV5UmVuYW1lU29EZW4oZ3JpZEluZm8uZmlsdGVycyk7XG4gICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICAgICAgICBpZiAoIXRoaXMuaWRWYW5CYW5EaXMgfHwgdGhpcy5pZFZhbkJhbkRpcy5sZW5ndGggPT0gMCkge1xuICAgICAgICAgICAgICAgIHJlc29sdmUoPFJlc3BvbnNlUmVzdWx0PntcbiAgICAgICAgICAgICAgICAgICAgc3VjY2VzczogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgZGF0YTogW11cbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBncmlkSW5mby5maWx0ZXJzLnB1c2goXG4gICAgICAgICAgICAgICAgdGhpcy5uZXdGaWx0ZXIoJ2lkJywgT3BlcmF0b3IuaW4sIHRoaXMuaWRWYW5CYW5EaXMpXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgdGhpcy5wbHVzVXJsID0gJ0dldERhdGFCeVBlcm1pc3Npb24nO1xuICAgICAgICAgICAgdGhpcy5fdmFuQmFuRGlTZXJ2aWNlLmdldEJ5R3JpZFJlcXVlc3QoZ3JpZEluZm8sIHRoaXMucGx1c1VybClcbiAgICAgICAgICAgICAgICAudGhlbihhc3luYyByZXNwb25zZSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChyZXNwb25zZS5zdWNjZXNzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXNvbHZlKHJlc3BvbnNlKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX25vdGlmaWVyU2VydmljZS5zaG93V2FybmluZyhyZXNwb25zZS5tZXNzYWdlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlc29sdmUocmVzcG9uc2UpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSwgZXJyb3IgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl9ub3RpZmllclNlcnZpY2Uuc2hvd0h0dHBVbmtub3dFcnJvcigpO1xuICAgICAgICAgICAgICAgICAgICByZXNvbHZlKDxSZXNwb25zZVJlc3VsdD57XG4gICAgICAgICAgICAgICAgICAgICAgICBzdWNjZXNzOiBmYWxzZVxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgYXN5bmMgZ2V0UHJvbWlzZUdldERhdGEoZ3JpZEluZm86IEdyaWRJbmZvKTogUHJvbWlzZTxSZXNwb25zZVJlc3VsdD4ge1xuICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlcywgcmVqKSA9PiB7XG4gICAgICAgICAgICBQcm9taXNlLmFsbChbXG4gICAgICAgICAgICAgICAgdGhpcy5nZXRWYW5CYW5EZW4oZ3JpZEluZm8pLFxuICAgICAgICAgICAgICAgIHRoaXMuZ2V0VmFuQmFuRGkoZ3JpZEluZm8pXG4gICAgICAgICAgICBdKS50aGVuKGFyclJlcyA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0gPGFueT57XG4gICAgICAgICAgICAgICAgICAgIHN1Y2Nlc3M6IGFyclJlc1swXS5zdWNjZXNzIHx8IGFyclJlc1sxXS5zdWNjZXNzLFxuICAgICAgICAgICAgICAgICAgICBkYXRhOiBbXVxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgaWYgKGFyclJlc1swXS5zdWNjZXNzKSB7XG4gICAgICAgICAgICAgICAgICAgIHJlc3VsdC5kYXRhLnB1c2goLi4uYXJyUmVzWzBdLmRhdGEubWFwKHEgPT4gKHsgLi4ucSwgdHlwZTogRW51bUxvYWlWYW5CYW5CYXNlLlZCX0RFTiB9KSkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAoYXJyUmVzWzFdLnN1Y2Nlc3MpIHtcbiAgICAgICAgICAgICAgICAgICAgcmVzdWx0LmRhdGEucHVzaCguLi5hcnJSZXNbMV0uZGF0YS5tYXAocSA9PiAoeyAuLi5xLCB0eXBlOiBFbnVtTG9haVZhbkJhbkJhc2UuVkJfREkgfSkpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmVzKHJlc3VsdCk7XG4gICAgICAgICAgICB9KS5jYXRjaChlcnIgPT4gcmVzKGVycikpO1xuICAgICAgICB9KTtcbiAgICB9XG4gICAgYXN5bmMgYmVmb3JlUmVuZGVyRGF0YVNvdXJjZShkYXRhc291cmNlKSB7XG4gICAgICAgIGRhdGFzb3VyY2UuZm9yRWFjaChlbGVtZW50ID0+IHtcbiAgICAgICAgICAgIGlmIChlbGVtZW50LnR5cGUgPT0gRW51bUxvYWlWYW5CYW5CYXNlLlZCX0RFTikge1xuICAgICAgICAgICAgICAgIGVsZW1lbnQuc29EZW5EaSA9IGVsZW1lbnQuc29EZW47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICBlbGVtZW50LnNvRGVuRGkgPSBlbGVtZW50LnNvRGk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG5hdmlnYXRlVG9WYW5CYW4ocm93RGF0YSkge1xuICAgICAgICBpZiAocm93RGF0YS50eXBlID09IEVudW1Mb2FpVmFuQmFuQmFzZS5WQl9ERU4pIHtcbiAgICAgICAgICAgIHRoaXMubmF2aWdhdGVUb1ZhbkJhbkRlbihyb3dEYXRhKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMubmF2aWdhdGVUb1ZhbkJhbkRpKHJvd0RhdGEpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmF2aWdhdGVUb1ZhbkJhbkRlbihyb3dEYXRhKSB7XG4gICAgICAgIHdpbmRvdy5vcGVuKGAke3RoaXMuZW52aXJvbm1lbnQuY2xpZW50RG9tYWluLnZhbmJhbn0vdHJhY3V1LXZhbmJhbmRlbiNpPSR7cm93RGF0YS5pZH1gLCAnX2JsYW5rJyk7XG4gICAgfVxuXG4gICAgbmF2aWdhdGVUb1ZhbkJhbkRpKHJvd0RhdGEpIHtcbiAgICAgICAgd2luZG93Lm9wZW4oYCR7dGhpcy5lbnZpcm9ubWVudC5jbGllbnREb21haW4udmFuYmFufS90cmFjdXUtdmFuYmFuZGkjaT0ke3Jvd0RhdGEuaWR9YCwgJ19ibGFuaycpO1xuICAgIH1cblxuICAgIHNob3dGb3JtUGlja1ZhbkJhbigpIHtcbiAgICAgICAgdGhpcy5iZWZvcmVBZGQoKTtcbiAgICAgICAgdGhpcy5zZXR0aW5nLnBvcHVwU2l6ZS5tYXhpbWl6ZSA9IHRydWU7XG4gICAgICAgIHRoaXMuc2V0dGluZy5wb3B1cEhlYWRlciA9IGBUaMOqbSBt4bubaSAke3RoaXMuc2V0dGluZy5vYmplY3ROYW1lfWA7XG4gICAgICAgIHRoaXMuc2hvd0Zvcm1QaWNrZXIgPSB0cnVlO1xuICAgIH1cblxuICAgIHhvYVZhbkJhbihyb3dEYXRhKSB7XG4gICAgICAgIHRoaXMuX3hvYVZhbkJhbihbcm93RGF0YV0pO1xuICAgIH1cblxuICAgIHhvYVZhbkJhblNlbGVjdGVkKCkge1xuICAgICAgICB0aGlzLl94b2FWYW5CYW4odGhpcy5tb2RlbC5zZWxlY3RlZEl0ZW1zKTtcbiAgICB9XG5cbiAgICBfeG9hVmFuQmFuKHJvd0RhdGFzKSB7XG4gICAgICAgIGlmICghcm93RGF0YXMgfHwgcm93RGF0YXMubGVuZ3RoID09IDApIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLl9ub3RpZmllclNlcnZpY2Uuc2hvd1dhcm5pbmcoJ0LhuqFuIGNoxrBhIGNo4buNbiB2xINuIGLhuqNuIG114buRbiB4w7NhJyk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5fbm90aWZpZXJTZXJ2aWNlLnNob3dDb25maXJtKCdC4bqhbiBjw7MgY2jhuq9jIGNo4bqvbiBtdeG7kW4geMOzYSBjw6FjIHbEg24gYuG6o24gxJHDoyBjaOG7jW4nKVxuICAgICAgICAgICAgLnRoZW4ocmVzID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoIXJlcykgcmV0dXJuO1xuICAgICAgICAgICAgICAgIGNvbnN0IGlkVmFuQmFuRGVucyA9IFtdLCBpZFZhbkJhbkRpcyA9IFtdO1xuICAgICAgICAgICAgICAgIHJvd0RhdGFzLmZvckVhY2goaXRlbSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChpdGVtLnR5cGUgPT0gRW51bUxvYWlWYW5CYW5CYXNlLlZCX0RFTikge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWRWYW5CYW5EZW5zLnB1c2goaXRlbS5pZCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZFZhbkJhbkRpcy5wdXNoKGl0ZW0uaWQpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgaWYgKGlkVmFuQmFuRGVucy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaWRWYW5CYW5EZW5zID0gdGhpcy5pZFZhbkJhbkRlbnMuZmlsdGVyKHEgPT4gaWRWYW5CYW5EZW5zLmluZGV4T2YocSkgPT0gLTEpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAoaWRWYW5CYW5EaXMubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmlkVmFuQmFuRGlzID0gdGhpcy5pZFZhbkJhbkRpcy5maWx0ZXIocSA9PiBpZFZhbkJhbkRpcy5pbmRleE9mKHEpID09IC0xKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgdGhpcy5maXJlRXZlbnQoKTtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIGZpcmVFdmVudCgpIHtcbiAgICAgICAgY29uc3QgdmFsdWUgPSB7XG4gICAgICAgICAgICBpZFZhbkJhbkRlbnM6IHRoaXMuaWRWYW5CYW5EZW5zLFxuICAgICAgICAgICAgaWRWYW5CYW5EaXM6IHRoaXMuaWRWYW5CYW5EaXNcbiAgICAgICAgfTtcbiAgICAgICAgdGhpcy5vbkNoYW5nZWQuZW1pdCh2YWx1ZSk7XG4gICAgICAgIHRoaXMub25DaGFuZ2UodmFsdWUpO1xuICAgIH1cblxuICAgIGhhbmRsZUNoYW5nZVZhbHVlKHZhbHVlKSB7XG4gICAgICAgIHRoaXMuaWRWYW5CYW5EZW5zID0gdmFsdWUuaWRWYW5CYW5EZW5zO1xuICAgICAgICB0aGlzLmlkVmFuQmFuRGlzID0gdmFsdWUuaWRWYW5CYW5EaXM7XG4gICAgICAgIHRoaXMuZGlydHkgPSB0cnVlO1xuICAgICAgICB0aGlzLmZpcmVFdmVudCgpO1xuICAgIH1cblxuICAgIG9uQmVmb3JlQ2FuY2VsKCkge1xuICAgICAgICB0aGlzLnNob3dGb3JtUGlja2VyID0gZmFsc2U7XG4gICAgICAgIGlmICh0aGlzLmRpcnR5KSB7XG4gICAgICAgICAgICB0aGlzLmRpcnR5ID0gZmFsc2U7XG4gICAgICAgICAgICB0aGlzLm1vZGVsLnJlYWR5ID0gdHJ1ZTtcbiAgICAgICAgICAgIHRoaXMucmVsb2FkKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB3cml0ZVZhbHVlKG9iajogYW55KTogdm9pZCB7XG4gICAgICAgIGlmIChvYmogPT0gbnVsbCkge1xuICAgICAgICAgICAgdGhpcy5pZFZhbkJhbkRlbnMgPSBbXTtcbiAgICAgICAgICAgIHRoaXMuaWRWYW5CYW5EaXMgPSBbXTtcbiAgICAgICAgICAgIHRoaXMubW9kZWwuZGF0YVNvdXJjZSA9IFtdO1xuICAgICAgICAgICAgdGhpcy5tb2RlbC5yZWFkeSA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5pZFZhbkJhbkRlbnMgPSBvYmouaWRWYW5CYW5EZW5zO1xuICAgICAgICAgICAgdGhpcy5pZFZhbkJhbkRpcyA9IG9iai5pZFZhbkJhbkRpcztcbiAgICAgICAgICAgIHRoaXMubW9kZWwucmVhZHkgPSB0cnVlO1xuICAgICAgICAgICAgaWYgKHRoaXMuY3J1ZExpc3QpIHRoaXMucmVsb2FkKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xuICAgIH1cblxuICAgIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcbiAgICB9XG5cbiAgICBzZXREaXNhYmxlZFN0YXRlPyhpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY29udHJvbC5kaXNhYmxlZCA9IGlzRGlzYWJsZWQ7XG4gICAgfVxufVxuIl19
297
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFuYmFuLXBpY2tlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90bngtc2hhcmVkL3NyYy9saWIvY29tcG9uZW50cy92YW5iYW4tcGlja2VyL3ZhbmJhbi1waWNrZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckcsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQ3RGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNqRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFLFFBQVEsRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQy9HLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUVsRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUMzRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNwRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNqRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFlL0QsTUFBTSxPQUFPLHFCQUFzQixTQUFRLFlBQVk7SUF3Qm5ELFlBQ0ksU0FBbUIsRUFDVCxpQkFBbUMsRUFDbkMsZ0JBQWlDLEVBQzNDLG9CQUF5QztRQUV6QyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUM7UUFKUCxzQkFBaUIsR0FBakIsaUJBQWlCLENBQWtCO1FBQ25DLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FB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SSxDQUFDLFlBQVksR0FBRyxHQUFHLENBQUMsWUFBWSxDQUFDO1lBQ3JDLElBQUksQ0FBQyxXQUFXLEdBQUcsR0FBRyxDQUFDLFdBQVcsQ0FBQztZQUNuQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7WUFDeEIsSUFBSSxJQUFJLENBQUMsUUFBUTtnQkFBRSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7U0FDcEM7SUFDTCxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsRUFBTztRQUNwQixJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRUQsaUJBQWlCLENBQUMsRUFBTztRQUNyQixJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRUQsZ0JBQWdCLENBQUUsVUFBbUI7UUFDakMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEdBQUcsVUFBVSxDQUFDO0lBQ3ZDLENBQUM7OztZQXRUSixTQUFTLFNBQUM7Z0JBQ1AsUUFBUSxFQUFFLGVBQWU7Z0JBQ3pCLDJnRUFBNkM7Z0JBRTdDLFNBQVMsRUFBRTtvQkFDUCx1QkFBdUI7b0JBQ3ZCO3dCQUNJLE9BQU8sRUFBRSxpQkFBaUI7d0JBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMscUJBQXFCLENBQUM7d0JBQ3BELEtBQUssRUFBRSxJQUFJO3FCQUNkO2lCQUNKOzthQUNKOzs7WUF4QjZDLFFBQVE7WUFTN0MsZ0JBQWdCO1lBQ2hCLGVBQWU7WUFIZixtQkFBbUI7Ozt5QkF1QnZCLEtBQUs7dUJBQ0wsS0FBSztzQkFDTCxLQUFLO3FCQUVMLE1BQU07d0JBQ04sTUFBTTtzQkFDTixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIGZvcndhcmRSZWYsIEluamVjdG9yLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IENvbXBvbmVudENvbnRleHRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vYXBwLWNvbnRleHQvY29tcG9uZW50LWNvbnRleHQuc2VydmljZSc7XG5pbXBvcnQgeyBEYXRhTGlzdEJhc2UgfSBmcm9tICcuLi8uLi9jbGFzc2VzL2Jhc2UvZGF0YS1saXN0LWJhc2UnO1xuaW1wb3J0IHsgQ29sdW1uU2NoZW1hQmFzZSwgTW9kZWxTY2hlbWEsIE9wZXJhdG9yLCBWYW5CYW5QaWNrZXJDb250cm9sU2NoZW1hIH0gZnJvbSAnLi4vLi4vY2xhc3Nlcy9mb3JtLXNjaGVtYSc7XG5pbXBvcnQgeyBHcmlkSW5mbyB9IGZyb20gJy4uLy4uL21vZGVscy9ncmlkLWluZm8nO1xuaW1wb3J0IHsgUmVzcG9uc2VSZXN1bHQgfSBmcm9tICcuLi8uLi9tb2RlbHMvcmVzcG9uc2UtcmVzdWx0JztcbmltcG9ydCB7IE1vZHVsZUNvbmZpZ1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9tb2R1bGUtY29uZmlnLnNlcnZpY2UnO1xuaW1wb3J0IHsgRW51bUxvYWlWYW5CYW5CYXNlIH0gZnJvbSAnLi9tb2RlbHMvZW51bXMnO1xuaW1wb3J0IHsgVmFuQmFuRGVuU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvdmFuYmFuLWRlbi5zZXJ2aWNlJztcbmltcG9ydCB7IFZhbkJhbkRpU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvdmFuYmFuLWRpLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3ZhbmJhbi1waWNrZXInLFxuICAgIHRlbXBsYXRlVXJsOiAnLi92YW5iYW4tcGlja2VyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi92YW5iYW4tcGlja2VyLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIENvbXBvbmVudENvbnRleHRTZXJ2aWNlLFxuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFZhbkJhblBpY2tlckNvbXBvbmVudCksXG4gICAgICAgICAgICBtdWx0aTogdHJ1ZVxuICAgICAgICB9XG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBWYW5CYW5QaWNrZXJDb21wb25lbnQgZXh0ZW5kcyBEYXRhTGlzdEJhc2UgaW1wbGVtZW50cyBPbkluaXQsIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcblxuICAgIG9uQ2hhbmdlOiBGdW5jdGlvbjtcbiAgICBvblRvdWNoZWQ6IEZ1bmN0aW9uO1xuXG4gICAgQElucHV0KCkgbG9haVZhbkJhbjogbnVtYmVyO1xuICAgIEBJbnB1dCgpIHJlYWRPbmx5OiBib29sZWFuO1xuICAgIEBJbnB1dCgpIGNvbnRyb2w6IFZhbkJhblBpY2tlckNvbnRyb2xTY2hlbWE7XG5cbiAgICBAT3V0cHV0KCkgb25Jbml0ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG4gICAgQE91dHB1dCgpIG9uQ2hhbmdlZDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgICBAT3V0cHV0KCkgb25SZWFkeSA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gICAgZW52aXJvbm1lbnQ6IGFueSA9IHt9O1xuXG4gICAgaWRWYW5CYW5EZW5zOiBzdHJpbmdbXTtcbiAgICBpZFZhbkJhbkRpczogc3RyaW5nW107XG5cbiAgICBjdXJyZW50VGFiSW5kZXg6IG51bWJlciA9IDA7XG5cbiAgICB1c2VBbGw6IGJvb2xlYW4gPSB0cnVlO1xuICAgIHNob3dGb3JtUGlja2VyOiBib29sZWFuID0gZmFsc2U7XG4gICAgZGlydHk6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBfaW5qZWN0b3I6IEluamVjdG9yLFxuICAgICAgICBwcm90ZWN0ZWQgX3ZhbkJhbkRlblNlcnZpY2U6IFZhbkJhbkRlblNlcnZpY2UsXG4gICAgICAgIHByb3RlY3RlZCBfdmFuQmFuRGlTZXJ2aWNlOiBWYW5CYW5EaVNlcnZpY2UsXG4gICAgICAgIF9tb2R1bGVDb25maWdTZXJ2aWNlOiBNb2R1bGVDb25maWdTZXJ2aWNlXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKF9pbmplY3Rvcik7XG4gICAgICAgIHRoaXMuZW52aXJvbm1lbnQgPSBfbW9kdWxlQ29uZmlnU2VydmljZS5nZXRDb25maWcoKS5lbnZpcm9ubWVudDtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgdGhpcy5zZXR0aW5nLmhpZGRlbkF1dGhvcml6ZUJ1dHRvbiA9IHRydWU7XG4gICAgICAgIHRoaXMubG9hZERldGFpbEZyb21RdWVyeVBhcmFtID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5tb2RlbC5yZWFkeSA9IGZhbHNlO1xuICAgICAgICB0aGlzLnNldHRpbmcuYmFzZVNlcnZpY2UgPSB0aGlzLl92YW5CYW5EZW5TZXJ2aWNlO1xuICAgICAgICB0aGlzLnNldHRpbmcuaGlkZGVuU2V0dGluZ1Blcm1pc3Npb24gPSB0cnVlO1xuICAgICAgICB0aGlzLnNldHRpbmcuaGlkZGVuU2V0dGluZ1dvcmtmbG93ID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5zZXR0aW5nLnNob3dFZGl0TGluayA9IGZhbHNlO1xuICAgICAgICB0aGlzLnNldHRpbmcuaGlkZGVuU2V0dGluZ1dvcmtmbG93ID0gdHJ1ZTtcblxuICAgICAgICAvLyBSZWRPbmx5XG4gICAgICAgIHRoaXMuc2V0dGluZy5oaWRkZW5Ub29sYmFyID0gdGhpcy5yZWFkT25seTtcblxuICAgICAgICB0aGlzLnNldHRpbmcubW9kZWxTY2hlbWFzID0gW1xuICAgICAgICAgICAgbmV3IE1vZGVsU2NoZW1hKHsgZmllbGQ6ICdzb0RlbkRpJywgZGF0YVR5cGU6ICdpbnQnLCBuYW1lOiAnU+G7kSDEkeG6v24vxJFpJywgZnVsbE5hbWU6ICdT4buRIMSR4bq/bi/EkWknLCBkZXNjcmlwdGlvbjogJ1Phu5EgxJHhur9uL8SRaScgfSksXG4gICAgICAgICAgICBuZXcgTW9kZWxTY2hlbWEoeyBmaWVsZDogJ3NvS3lIaWV1JywgbmFtZTogJ1Phu5EsIGvDvSBoaeG7h3UnLCBmdWxsTmFtZTogJ1Phu5EsIGvDvSBoaeG7h3UnLCBkZXNjcmlwdGlvbjogJ1Phu5EsIGvDvSBoaeG7h3UnIH0pLFxuICAgICAgICAgICAgbmV3IE1vZGVsU2NoZW1hKHsgZmllbGQ6ICd0cmljaFlldScsIG5hbWU6ICdUcsOtY2ggeeG6v3UnLCBmdWxsTmFtZTogJycsIGRlc2NyaXB0aW9uOiAnJyB9KSxcbiAgICAgICAgICAgIG5ldyBNb2RlbFNjaGVtYSh7IGZpZWxkOiAnbmdheUJhbkhhbmgnLCBkYXRhVHlwZTogJ2RhdGUnLCBuYW1lOiAnTmfDoHkgYmFuIGjDoG5oJywgZnVsbE5hbWU6ICcnLCBkZXNjcmlwdGlvbjogJycgfSlcbiAgICAgICAgXTtcblxuICAgICAgICB0aGlzLnNldHRpbmcuY29scyA9IFtcbiAgICAgICAgICAgIG5ldyBDb2x1bW5TY2hlbWFCYXNlKHtcbiAgICAgICAgICAgICAgICBmaWVsZDogJ3NvRGVuRGknLFxuICAgICAgICAgICAgICAgIHdpZHRoOiAnMTAwcHgnXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIG5ldyBDb2x1bW5TY2hlbWFCYXNlKHtcbiAgICAgICAgICAgICAgICBmaWVsZDogJ3NvS3lIaWV1JyxcbiAgICAgICAgICAgICAgICB3aWR0aDogJzE1MHB4J1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBuZXcgQ29sdW1uU2NoZW1hQmFzZSh7XG4gICAgICAgICAgICAgICAgZmllbGQ6ICd0cmljaFlldSdcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgbmV3IENvbHVtblNjaGVtYUJhc2Uoe1xuICAgICAgICAgICAgICAgIGZpZWxkOiAnbmdheUJhbkhhbmgnLFxuICAgICAgICAgICAgICAgIHdpZHRoOiAnMTI1cHgnXG4gICAgICAgICAgICB9KVxuICAgICAgICBdO1xuICAgICAgICB0aGlzLnNldHRpbmcuZmllbGRTZWFyY2hUZXh0ID0gWydjb2RlJywgJ25hbWUnXTtcbiAgICAgICAgdGhpcy5zZXR0aW5nLm9iamVjdE5hbWUgPSAnIHbEg24gYuG6o24nO1xuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgICAgICB0aGlzLm9uSW5pdC5lbWl0KHRoaXMpO1xuICAgIH1cblxuICAgIGdldFZhbkJhbkRlbihvcmlnaW5HcmlkSW5mbzogR3JpZEluZm8pOiBQcm9taXNlPFJlc3BvbnNlUmVzdWx0PiB7XG4gICAgICAgIGNvbnN0IGdyaWRJbmZvID0gbmV3IEdyaWRJbmZvKHtcbiAgICAgICAgICAgIC4uLm9yaWdpbkdyaWRJbmZvLFxuICAgICAgICAgICAgZmlsdGVyczogWy4uLm9yaWdpbkdyaWRJbmZvLmZpbHRlcnMubWFwKHEgPT4gKHsgLi4ucSB9KSldXG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgICAgICAgaWYgKCF0aGlzLmlkVmFuQmFuRGVucyB8fCB0aGlzLmlkVmFuQmFuRGVucy5sZW5ndGggPT0gMCkge1xuICAgICAgICAgICAgICAgIHJlc29sdmUoPFJlc3BvbnNlUmVzdWx0PntcbiAgICAgICAgICAgICAgICAgICAgc3VjY2VzczogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgZGF0YTogW11cbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBncmlkSW5mby5maWx0ZXJzLnB1c2goXG4gICAgICAgICAgICAgICAgdGhpcy5uZXdGaWx0ZXIoJ2lkJywgT3BlcmF0b3IuaW4sIHRoaXMuaWRWYW5CYW5EZW5zKVxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIHRoaXMuX3ZhbkJhbkRlblNlcnZpY2UuZ2V0QnlHcmlkUmVxdWVzdFdpdGhCb2R5T2xkKGdyaWRJbmZvLCAnUGVybWlzc2lvbicpXG4gICAgICAgICAgICAgICAgLnRoZW4oYXN5bmMgcmVzcG9uc2UgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAocmVzcG9uc2Uuc3VjY2Vzcykge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZShyZXNwb25zZSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLl9ub3RpZmllclNlcnZpY2Uuc2hvd1dhcm5pbmcocmVzcG9uc2UubWVzc2FnZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXNvbHZlKHJlc3BvbnNlKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0sIGVycm9yID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fbm90aWZpZXJTZXJ2aWNlLnNob3dIdHRwVW5rbm93RXJyb3IoKTtcbiAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZSg8UmVzcG9uc2VSZXN1bHQ+e1xuICAgICAgICAgICAgICAgICAgICAgICAgc3VjY2VzczogZmFsc2VcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGRlUXV5UmVuYW1lU29EZW4oZmlsdGVycykge1xuICAgICAgICBpZiAoZmlsdGVycykge1xuICAgICAgICAgICAgZmlsdGVycy5mb3JFYWNoKGZpbHRlciA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKGZpbHRlci5maWVsZCA9PSAnc29EZW4nKSBmaWx0ZXIuZmllbGQgPSAnc29EaSc7XG4gICAgICAgICAgICAgICAgZWxzZSBpZiAoZmlsdGVyLmZpbHRlcnMgJiYgZmlsdGVyLmZpbHRlcnMubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmRlUXV5UmVuYW1lU29EZW4oZmlsdGVyLmZpbHRlcnMpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0VmFuQmFuRGkob3JpZ2luR3JpZEluZm86IEdyaWRJbmZvKTogUHJvbWlzZTxSZXNwb25zZVJlc3VsdD4ge1xuICAgICAgICBjb25zdCBncmlkSW5mbyA9IG5ldyBHcmlkSW5mbyh7XG4gICAgICAgICAgICAuLi5vcmlnaW5HcmlkSW5mbyxcbiAgICAgICAgICAgIGZpbHRlcnM6IFsuLi5vcmlnaW5HcmlkSW5mby5maWx0ZXJzLm1hcChxID0+ICh7IC4uLnEgfSkpXVxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5kZVF1eVJlbmFtZVNvRGVuKGdyaWRJbmZvLmZpbHRlcnMpO1xuICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgICAgICAgaWYgKCF0aGlzLmlkVmFuQmFuRGlzIHx8IHRoaXMuaWRWYW5CYW5EaXMubGVuZ3RoID09IDApIHtcbiAgICAgICAgICAgICAgICByZXNvbHZlKDxSZXNwb25zZVJlc3VsdD57XG4gICAgICAgICAgICAgICAgICAgIHN1Y2Nlc3M6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgIGRhdGE6IFtdXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZ3JpZEluZm8uZmlsdGVycy5wdXNoKFxuICAgICAgICAgICAgICAgIHRoaXMubmV3RmlsdGVyKCdpZCcsIE9wZXJhdG9yLmluLCB0aGlzLmlkVmFuQmFuRGlzKVxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIHRoaXMucGx1c1VybCA9ICdHZXREYXRhQnlQZXJtaXNzaW9uJztcbiAgICAgICAgICAgIHRoaXMuX3ZhbkJhbkRpU2VydmljZS5nZXRCeUdyaWRSZXF1ZXN0KGdyaWRJbmZvLCB0aGlzLnBsdXNVcmwpXG4gICAgICAgICAgICAgICAgLnRoZW4oYXN5bmMgcmVzcG9uc2UgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAocmVzcG9uc2Uuc3VjY2Vzcykge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZShyZXNwb25zZSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLl9ub3RpZmllclNlcnZpY2Uuc2hvd1dhcm5pbmcocmVzcG9uc2UubWVzc2FnZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXNvbHZlKHJlc3BvbnNlKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0sIGVycm9yID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fbm90aWZpZXJTZXJ2aWNlLnNob3dIdHRwVW5rbm93RXJyb3IoKTtcbiAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZSg8UmVzcG9uc2VSZXN1bHQ+e1xuICAgICAgICAgICAgICAgICAgICAgICAgc3VjY2VzczogZmFsc2VcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGFzeW5jIGdldFByb21pc2VHZXREYXRhKGdyaWRJbmZvOiBHcmlkSW5mbyk6IFByb21pc2U8UmVzcG9uc2VSZXN1bHQ+IHtcbiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXMsIHJlaikgPT4ge1xuICAgICAgICAgICAgUHJvbWlzZS5hbGwoW1xuICAgICAgICAgICAgICAgIHRoaXMuZ2V0VmFuQmFuRGVuKGdyaWRJbmZvKSxcbiAgICAgICAgICAgICAgICB0aGlzLmdldFZhbkJhbkRpKGdyaWRJbmZvKVxuICAgICAgICAgICAgXSkudGhlbihhcnJSZXMgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IDxhbnk+e1xuICAgICAgICAgICAgICAgICAgICBzdWNjZXNzOiBhcnJSZXNbMF0uc3VjY2VzcyB8fCBhcnJSZXNbMV0uc3VjY2VzcyxcbiAgICAgICAgICAgICAgICAgICAgZGF0YTogW11cbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIGlmIChhcnJSZXNbMF0uc3VjY2Vzcykge1xuICAgICAgICAgICAgICAgICAgICByZXN1bHQuZGF0YS5wdXNoKC4uLmFyclJlc1swXS5kYXRhLm1hcChxID0+ICh7IC4uLnEsIHR5cGU6IEVudW1Mb2FpVmFuQmFuQmFzZS5WQl9ERU4gfSkpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKGFyclJlc1sxXS5zdWNjZXNzKSB7XG4gICAgICAgICAgICAgICAgICAgIHJlc3VsdC5kYXRhLnB1c2goLi4uYXJyUmVzWzFdLmRhdGEubWFwKHEgPT4gKHsgLi4ucSwgdHlwZTogRW51bUxvYWlWYW5CYW5CYXNlLlZCX0RJIH0pKSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJlcyhyZXN1bHQpO1xuICAgICAgICAgICAgfSkuY2F0Y2goZXJyID0+IHJlcyhlcnIpKTtcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIGFzeW5jIGJlZm9yZVJlbmRlckRhdGFTb3VyY2UoZGF0YXNvdXJjZSkge1xuICAgICAgICBkYXRhc291cmNlLmZvckVhY2goZWxlbWVudCA9PiB7XG4gICAgICAgICAgICBpZiAoZWxlbWVudC50eXBlID09IEVudW1Mb2FpVmFuQmFuQmFzZS5WQl9ERU4pIHtcbiAgICAgICAgICAgICAgICBlbGVtZW50LnNvRGVuRGkgPSBlbGVtZW50LnNvRGVuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgZWxlbWVudC5zb0RlbkRpID0gZWxlbWVudC5zb0RpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBuYXZpZ2F0ZVRvVmFuQmFuKHJvd0RhdGEpIHtcbiAgICAgICAgaWYgKHJvd0RhdGEudHlwZSA9PSBFbnVtTG9haVZhbkJhbkJhc2UuVkJfREVOKSB7XG4gICAgICAgICAgICB0aGlzLm5hdmlnYXRlVG9WYW5CYW5EZW4ocm93RGF0YSk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICB0aGlzLm5hdmlnYXRlVG9WYW5CYW5EaShyb3dEYXRhKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5hdmlnYXRlVG9WYW5CYW5EZW4ocm93RGF0YSkge1xuICAgICAgICB3aW5kb3cub3BlbihgJHt0aGlzLmVudmlyb25tZW50LmNsaWVudERvbWFpbi52YW5iYW59L3RyYWN1dS12YW5iYW5kZW4jaT0ke3Jvd0RhdGEuaWR9YCwgJ19ibGFuaycpO1xuICAgIH1cblxuICAgIG5hdmlnYXRlVG9WYW5CYW5EaShyb3dEYXRhKSB7XG4gICAgICAgIHdpbmRvdy5vcGVuKGAke3RoaXMuZW52aXJvbm1lbnQuY2xpZW50RG9tYWluLnZhbmJhbn0vdHJhY3V1LXZhbmJhbmRpI2k9JHtyb3dEYXRhLmlkfWAsICdfYmxhbmsnKTtcbiAgICB9XG5cbiAgICBzaG93Rm9ybVBpY2tWYW5CYW4oKSB7XG4gICAgICAgIHRoaXMuYmVmb3JlQWRkKCk7XG4gICAgICAgIHRoaXMuc2V0dGluZy5wb3B1cFNpemUubWF4aW1pemUgPSB0cnVlO1xuICAgICAgICB0aGlzLnNldHRpbmcucG9wdXBIZWFkZXIgPSBgVGjDqm0gbeG7m2kgJHt0aGlzLnNldHRpbmcub2JqZWN0TmFtZX1gO1xuICAgICAgICB0aGlzLnNob3dGb3JtUGlja2VyID0gdHJ1ZTtcbiAgICB9XG5cbiAgICB4b2FWYW5CYW4ocm93RGF0YSkge1xuICAgICAgICB0aGlzLl94b2FWYW5CYW4oW3Jvd0RhdGFdKTtcbiAgICB9XG5cbiAgICB4b2FWYW5CYW5TZWxlY3RlZCgpIHtcbiAgICAgICAgdGhpcy5feG9hVmFuQmFuKHRoaXMubW9kZWwuc2VsZWN0ZWRJdGVtcyk7XG4gICAgfVxuXG4gICAgX3hvYVZhbkJhbihyb3dEYXRhcykge1xuICAgICAgICBpZiAoIXJvd0RhdGFzIHx8IHJvd0RhdGFzLmxlbmd0aCA9PSAwKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5fbm90aWZpZXJTZXJ2aWNlLnNob3dXYXJuaW5nKCdC4bqhbiBjaMawYSBjaOG7jW4gdsSDbiBi4bqjbiBtdeG7kW4geMOzYScpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuX25vdGlmaWVyU2VydmljZS5zaG93Q29uZmlybSgnQuG6oW4gY8OzIGNo4bqvYyBjaOG6r24gbXXhu5FuIHjDs2EgY8OhYyB2xINuIGLhuqNuIMSRw6MgY2jhu41uJylcbiAgICAgICAgICAgIC50aGVuKHJlcyA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKCFyZXMpIHJldHVybjtcbiAgICAgICAgICAgICAgICBjb25zdCBpZFZhbkJhbkRlbnMgPSBbXSwgaWRWYW5CYW5EaXMgPSBbXTtcbiAgICAgICAgICAgICAgICByb3dEYXRhcy5mb3JFYWNoKGl0ZW0gPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAoaXRlbS50eXBlID09IEVudW1Mb2FpVmFuQmFuQmFzZS5WQl9ERU4pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlkVmFuQmFuRGVucy5wdXNoKGl0ZW0uaWQpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWRWYW5CYW5EaXMucHVzaChpdGVtLmlkKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIGlmIChpZFZhbkJhbkRlbnMubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmlkVmFuQmFuRGVucyA9IHRoaXMuaWRWYW5CYW5EZW5zLmZpbHRlcihxID0+IGlkVmFuQmFuRGVucy5pbmRleE9mKHEpID09IC0xKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKGlkVmFuQmFuRGlzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pZFZhbkJhbkRpcyA9IHRoaXMuaWRWYW5CYW5EaXMuZmlsdGVyKHEgPT4gaWRWYW5CYW5EaXMuaW5kZXhPZihxKSA9PSAtMSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHRoaXMuZmlyZUV2ZW50KCk7XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBmaXJlRXZlbnQoKSB7XG4gICAgICAgIGNvbnN0IHZhbHVlID0ge1xuICAgICAgICAgICAgaWRWYW5CYW5EZW5zOiB0aGlzLmlkVmFuQmFuRGVucyxcbiAgICAgICAgICAgIGlkVmFuQmFuRGlzOiB0aGlzLmlkVmFuQmFuRGlzXG4gICAgICAgIH07XG4gICAgICAgIHRoaXMub25DaGFuZ2VkLmVtaXQodmFsdWUpO1xuICAgICAgICB0aGlzLm9uQ2hhbmdlKHZhbHVlKTtcbiAgICB9XG5cbiAgICBoYW5kbGVDaGFuZ2VWYWx1ZSh2YWx1ZSkge1xuICAgICAgICB0aGlzLmlkVmFuQmFuRGVucyA9IHZhbHVlLmlkVmFuQmFuRGVucztcbiAgICAgICAgdGhpcy5pZFZhbkJhbkRpcyA9IHZhbHVlLmlkVmFuQmFuRGlzO1xuICAgICAgICB0aGlzLmRpcnR5ID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5maXJlRXZlbnQoKTtcbiAgICB9XG5cbiAgICBvbkJlZm9yZUNhbmNlbCgpIHtcbiAgICAgICAgdGhpcy5zaG93Rm9ybVBpY2tlciA9IGZhbHNlO1xuICAgICAgICBpZiAodGhpcy5kaXJ0eSkge1xuICAgICAgICAgICAgdGhpcy5kaXJ0eSA9IGZhbHNlO1xuICAgICAgICAgICAgdGhpcy5tb2RlbC5yZWFkeSA9IHRydWU7XG4gICAgICAgICAgICB0aGlzLnJlbG9hZCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgd3JpdGVWYWx1ZShvYmo6IGFueSk6IHZvaWQge1xuICAgICAgICBpZiAob2JqID09IG51bGwpIHtcbiAgICAgICAgICAgIHRoaXMuaWRWYW5CYW5EZW5zID0gW107XG4gICAgICAgICAgICB0aGlzLmlkVmFuQmFuRGlzID0gW107XG4gICAgICAgICAgICB0aGlzLm1vZGVsLmRhdGFTb3VyY2UgPSBbXTtcbiAgICAgICAgICAgIHRoaXMubW9kZWwucmVhZHkgPSBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuaWRWYW5CYW5EZW5zID0gb2JqLmlkVmFuQmFuRGVucztcbiAgICAgICAgICAgIHRoaXMuaWRWYW5CYW5EaXMgPSBvYmouaWRWYW5CYW5EaXM7XG4gICAgICAgICAgICB0aGlzLm1vZGVsLnJlYWR5ID0gdHJ1ZTtcbiAgICAgICAgICAgIGlmICh0aGlzLmNydWRMaXN0KSB0aGlzLnJlbG9hZCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XG4gICAgICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcbiAgICB9XG5cbiAgICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XG4gICAgICAgIHRoaXMub25Ub3VjaGVkID0gZm47XG4gICAgfVxuXG4gICAgc2V0RGlzYWJsZWRTdGF0ZT8oaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLmNvbnRyb2wuZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xuICAgIH1cbn1cbiJdfQ==