vcomply-workflow-engine 6.0.94 → 6.0.95

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 (106) hide show
  1. package/esm2022/lib/add-multiple-responsibility-with-tab/add-multiple-responsibility-with-tab.component.mjs +30 -7
  2. package/esm2022/lib/constants/api.constants.mjs +1 -6
  3. package/esm2022/lib/constants/policy.constant.mjs +6 -0
  4. package/esm2022/lib/constants/regix.constants.mjs +4 -0
  5. package/esm2022/lib/constants/responsibility.mjs +8 -0
  6. package/esm2022/lib/interfaces/policy.interface.mjs +2 -0
  7. package/esm2022/lib/interfaces/responsibilty.interface.mjs +1 -1
  8. package/esm2022/lib/more-option/more-option.component.mjs +193 -13
  9. package/esm2022/lib/report-a-case/services/report-a-case.service.mjs +2 -3
  10. package/esm2022/lib/report-a-case/workflow-case/workflow-case.component.mjs +7 -4
  11. package/esm2022/lib/services/common.service.mjs +1 -40
  12. package/esm2022/lib/services/iframe.service.mjs +1 -14
  13. package/esm2022/lib/sharedComponents/bulk-responsibility-view/bulk-responsibility-view.component.mjs +6 -3
  14. package/esm2022/lib/sharedComponents/format-and-evidence/format-and-evidence.component.mjs +21 -10
  15. package/esm2022/lib/sharedComponents/frequency/frequency-annual/frequency-annual.component.mjs +1 -5
  16. package/esm2022/lib/sharedComponents/frequency/frequency-biannual/frequency-biannual.component.mjs +1 -5
  17. package/esm2022/lib/sharedComponents/frequency/frequency-container/frequency-container.component.mjs +5 -5
  18. package/esm2022/lib/sharedComponents/frequency/frequency-daily/frequency-daily.component.mjs +1 -2
  19. package/esm2022/lib/sharedComponents/frequency/frequency-monthly/frequency-monthly.component.mjs +2 -6
  20. package/esm2022/lib/sharedComponents/frequency/frequency-one-time/frequency-one-time.component.mjs +2 -3
  21. package/esm2022/lib/sharedComponents/frequency/frequency-ongoing/frequency-ongoing.component.mjs +1 -3
  22. package/esm2022/lib/sharedComponents/frequency/frequency-quarterly/frequency-quarterly.component.mjs +1 -5
  23. package/esm2022/lib/sharedComponents/frequency/frequency-random/frequency-random.component.mjs +2 -9
  24. package/esm2022/lib/sharedComponents/frequency/frequency-weekly/frequency-weekly.component.mjs +2 -4
  25. package/esm2022/lib/sharedComponents/frequency/frequency.service.mjs +5 -267
  26. package/esm2022/lib/sharedComponents/link-responsibility/link-responsibility.component.mjs +16 -48
  27. package/esm2022/lib/sharedComponents/link-responsibility/link-responsibility.module.mjs +4 -8
  28. package/esm2022/lib/sharedComponents/pipes/risk-class.pipe.mjs +19 -0
  29. package/esm2022/lib/workflow/grc-object/grc-object-container/grc-object-container.component.mjs +17 -45
  30. package/esm2022/lib/workflow/shared/components/grc-category-listing/grc-category-listing.component.mjs +10 -13
  31. package/esm2022/lib/workflow/shared/components/program-responsibility-listing/program-responsibility-listing.component.mjs +35 -62
  32. package/esm2022/lib/workflow/shared/services/grc.service.mjs +2 -15
  33. package/esm2022/lib/workflow/shared/workflow-pipes/workflow-pipes.module.mjs +3 -8
  34. package/esm2022/lib/workflow-compliance/workflow-compliance.component.mjs +453 -294
  35. package/esm2022/lib/workflow-engine-container/api-constants.mjs +2 -3
  36. package/esm2022/lib/workflow-engine-container/workflow-engine-container.component.mjs +53 -32
  37. package/esm2022/lib/workflow-engine.module.mjs +7 -11
  38. package/esm2022/lib/workflow-policy/workflow-policy.component.mjs +29 -46
  39. package/esm2022/lib/workflow-program/constants.mjs +3 -3
  40. package/esm2022/lib/workflow-program/create-program-ui/user-group-list/user-group-list.component.mjs +9 -13
  41. package/esm2022/lib/workflow-program/workflow-program.component.mjs +365 -327
  42. package/esm2022/lib/workflow-services/policy.service.mjs +9 -8
  43. package/esm2022/lib/workflow-services/programs.service.mjs +114 -26
  44. package/esm2022/lib/workflow-services/responsibility.service.mjs +55 -60
  45. package/fesm2022/vcomply-workflow-engine.mjs +14037 -14469
  46. package/fesm2022/vcomply-workflow-engine.mjs.map +1 -1
  47. package/lib/add-multiple-responsibility-with-tab/add-multiple-responsibility-with-tab.component.d.ts +3 -0
  48. package/lib/constants/api.constants.d.ts +0 -5
  49. package/lib/constants/policy.constant.d.ts +2 -0
  50. package/lib/constants/regix.constants.d.ts +3 -0
  51. package/lib/constants/responsibility.d.ts +7 -0
  52. package/lib/interfaces/policy.interface.d.ts +5 -0
  53. package/lib/interfaces/responsibilty.interface.d.ts +13 -13
  54. package/lib/services/common.service.d.ts +0 -28
  55. package/lib/services/iframe.service.d.ts +0 -6
  56. package/lib/sharedComponents/bulk-responsibility-view/bulk-responsibility-view.component.d.ts +6 -0
  57. package/lib/sharedComponents/format-and-evidence/format-and-evidence.component.d.ts +4 -1
  58. package/lib/sharedComponents/frequency/frequency-random/frequency-random.component.d.ts +0 -1
  59. package/lib/sharedComponents/frequency/frequency.service.d.ts +2 -92
  60. package/lib/sharedComponents/link-responsibility/link-responsibility.component.d.ts +1 -2
  61. package/lib/sharedComponents/link-responsibility/link-responsibility.module.d.ts +1 -2
  62. package/lib/sharedComponents/pipes/risk-class.pipe.d.ts +7 -0
  63. package/lib/workflow/grc-object/grc-object-container/grc-object-container.component.d.ts +1 -5
  64. package/lib/workflow/shared/components/grc-category-listing/grc-category-listing.component.d.ts +1 -3
  65. package/lib/workflow/shared/components/program-responsibility-listing/program-responsibility-listing.component.d.ts +2 -6
  66. package/lib/workflow/shared/services/grc.service.d.ts +0 -1
  67. package/lib/workflow/shared/workflow-pipes/workflow-pipes.module.d.ts +2 -3
  68. package/lib/workflow-compliance/workflow-compliance.component.d.ts +10 -32
  69. package/lib/workflow-engine-container/api-constants.d.ts +0 -1
  70. package/lib/workflow-engine-container/workflow-engine-container.component.d.ts +2 -5
  71. package/lib/workflow-engine.module.d.ts +2 -3
  72. package/lib/workflow-policy/workflow-policy.component.d.ts +0 -9
  73. package/lib/workflow-program/workflow-program.component.d.ts +9 -9
  74. package/lib/workflow-risk/workflow-risk.component.d.ts +1 -1
  75. package/lib/workflow-services/policy.service.d.ts +1 -1
  76. package/lib/workflow-services/programs.service.d.ts +54 -13
  77. package/lib/workflow-services/responsibility.service.d.ts +4 -17
  78. package/package.json +1 -1
  79. package/esm2022/lib/interfaces/frequency.interface.mjs +0 -2
  80. package/esm2022/lib/interfaces/iframe-type.mjs +0 -7
  81. package/esm2022/lib/sharedComponents/list-container/list-container.component.mjs +0 -52
  82. package/esm2022/lib/sharedComponents/program-list/constant.mjs +0 -27
  83. package/esm2022/lib/sharedComponents/program-list/interfaces/data-source.interface.mjs +0 -2
  84. package/esm2022/lib/sharedComponents/program-list/interfaces/list-item.interface.mjs +0 -2
  85. package/esm2022/lib/sharedComponents/program-list/pipes/check-selected-items.pipes.mjs +0 -23
  86. package/esm2022/lib/sharedComponents/program-list/program-list/program-list.component.mjs +0 -273
  87. package/esm2022/lib/sharedComponents/program-list/program-list.module.mjs +0 -51
  88. package/esm2022/lib/sharedComponents/program-list/services/list-utils.service.mjs +0 -27
  89. package/esm2022/lib/sharedComponents/program-list/services/program-list-api.service.mjs +0 -32
  90. package/esm2022/lib/ui-kit/loaders/loaders.module.mjs +0 -24
  91. package/esm2022/lib/ui-kit/loaders/table-loader/table-loader.component.mjs +0 -19
  92. package/esm2022/lib/workflow/shared/workflow-pipes/get-user-details.pipe.mjs +0 -26
  93. package/lib/interfaces/frequency.interface.d.ts +0 -37
  94. package/lib/interfaces/iframe-type.d.ts +0 -5
  95. package/lib/sharedComponents/list-container/list-container.component.d.ts +0 -9
  96. package/lib/sharedComponents/program-list/constant.d.ts +0 -20
  97. package/lib/sharedComponents/program-list/interfaces/data-source.interface.d.ts +0 -4
  98. package/lib/sharedComponents/program-list/interfaces/list-item.interface.d.ts +0 -5
  99. package/lib/sharedComponents/program-list/pipes/check-selected-items.pipes.d.ts +0 -7
  100. package/lib/sharedComponents/program-list/program-list/program-list.component.d.ts +0 -126
  101. package/lib/sharedComponents/program-list/program-list.module.d.ts +0 -15
  102. package/lib/sharedComponents/program-list/services/list-utils.service.d.ts +0 -7
  103. package/lib/sharedComponents/program-list/services/program-list-api.service.d.ts +0 -14
  104. package/lib/ui-kit/loaders/loaders.module.d.ts +0 -8
  105. package/lib/ui-kit/loaders/table-loader/table-loader.component.d.ts +0 -9
  106. package/lib/workflow/shared/workflow-pipes/get-user-details.pipe.d.ts +0 -7
@@ -1,7 +1,6 @@
1
1
  import { HttpHeaders, HttpParams } from '@angular/common/http';
2
2
  import { Injectable, Optional } from '@angular/core';
3
3
  import { retry } from 'rxjs';
4
- import dayjs from 'dayjs';
5
4
  import * as i0 from "@angular/core";
6
5
  import * as i1 from "@angular/common/http";
7
6
  import * as i2 from "../../../workflow-services/auth.service";
@@ -64,18 +63,6 @@ export class GrcService {
64
63
  this.env = config.envConfig;
65
64
  }
66
65
  }
67
- getAllResponsibilities(pageNo) {
68
- const businessCycle = this.getBusinessCycle();
69
- const formattedCycle = businessCycle.selected_cycle
70
- ? dayjs(businessCycle.selected_cycle.split('-')[0]).format('YYYY-MM-DD') +
71
- ':' +
72
- dayjs(businessCycle.selected_cycle.split('-')[1]).format('YYYY-MM-DD')
73
- : '';
74
- const headers = new HttpHeaders()
75
- .set('token', this.authService.getAuthorizationToken())
76
- .set('biz_cycle', formattedCycle);
77
- return this.http.get(this.env.complianceGet + `sailsResponsibilitiesList&page=${pageNo}&limit=30`, { headers });
78
- }
79
66
  getGRCList(event) {
80
67
  const headers = new HttpHeaders().set('token', this.authService.getAuthorizationToken());
81
68
  let params = new HttpParams();
@@ -293,7 +280,7 @@ export class GrcService {
293
280
  (payload?.searchText ? '&q=' + encodeURI(payload?.searchText) : '') +
294
281
  (payload?.name ? '&sortBy=' + payload?.name : '') +
295
282
  (payload?.sortingCount ? '&sortValue=' + payload?.sortingCount : '') +
296
- ('&page=' + payload?.page), { headers })
283
+ ('&page=' + payload?.page ?? 1), { headers })
297
284
  .pipe(retry(1));
298
285
  }
299
286
  getResponsibilityByCategoryId(req, payload, filterPolicyData) {
@@ -320,4 +307,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
320
307
  }], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: i2.AuthService }, { type: i3.Configurations, decorators: [{
321
308
  type: Optional
322
309
  }] }]; } });
323
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JjLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92eC13b3JrZmxvdy1lbmdpbmUvc3JjL2xpYi93b3JrZmxvdy9zaGFyZWQvc2VydmljZXMvZ3JjLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFjLFdBQVcsRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUMzRSxPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUdyRCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTdCLE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQzs7Ozs7QUFLMUIsTUFBTSxPQUFPLFVBQVU7YUFFRSxrQkFBYSxHQUFHO1FBQ3JDLElBQUksRUFBRSxPQUFPO1FBQ2IsWUFBWSxFQUFFLElBQUk7UUFDbEIsSUFBSSxFQUFFLElBQUk7UUFDVixFQUFFLEVBQUUsaUJBQWlCO1FBQ3JCLFdBQVcsRUFBRSx1Q0FBdUM7S0FDckQsQ0FBQztJQTZDRixZQUNVLElBQWdCLEVBQ2hCLFdBQXdCLEVBQ3BCLE1BQXVCO1FBRjNCLFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUE5Q2xCLGdCQUFXLEdBQVc7WUFDcEMsSUFBSSxFQUFFLEVBQUU7WUFDUixJQUFJLEVBQUUsQ0FBQztZQUNQLEtBQUssRUFBRSxDQUFDO1lBQ1IsY0FBYyxFQUFFLEVBQUU7WUFDbEIsTUFBTSxFQUFFLEVBQUU7WUFDViw2QkFBNkIsRUFBRSxFQUFFO1lBQ2pDLFdBQVcsRUFBRSxFQUFFO1lBQ2YsU0FBUyxFQUFFLEVBQUU7WUFDYixVQUFVLEVBQUUsRUFBRTtZQUNkLE1BQU0sRUFBRSxFQUFFO1lBQ1Ysb0JBQW9CLEVBQUUsRUFBRTtZQUN4QixpQkFBaUIsRUFBRSxFQUFFO1lBQ3JCLGNBQWMsRUFBRSxF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QyxDQUFDLGFBQWEsR0FBRyxPQUFPLEVBQUUsWUFBWSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDcEUsQ0FBQyxRQUFRLEdBQUcsT0FBTyxFQUFFLElBQUksQ0FBQyxFQUM1QixFQUFFLE9BQU8sRUFBRSxDQUNaO2FBQ0EsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3BCLENBQUM7SUFFRCw2QkFBNkIsQ0FDM0IsR0FBUSxFQUNSLE9BQWEsRUFDYixnQkFBc0I7UUFFdEIsb0RBQW9EO1FBQ3BELElBQUksV0FBVyxHQUFRLEVBQUUsQ0FBQztRQUMxQixXQUFXLENBQUMsTUFBTSxHQUFHLEdBQUcsQ0FBQztRQUN6QixJQUFJLE9BQU8sR0FBRyxJQUFJLFdBQVcsRUFBRSxDQUFDO1FBQ2hDLHdFQUF3RTtRQUN4RSxPQUFPLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7UUFDcEUsT0FBTyxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMscUJBQXFCLEVBQUUsQ0FBQyxDQUFDO1FBQzVFLFdBQVcsQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBQzlCLE9BQU8sSUFBSSxDQUFDLElBQUk7YUFDYixHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxlQUFlLEdBQUcscUJBQXFCLEVBQUUsV0FBVyxDQUFDO2FBQ25FLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNwQixDQUFDOytHQXhYVSxVQUFVO21IQUFWLFVBQVUsY0FGVCxNQUFNOzs0RkFFUCxVQUFVO2tCQUh0QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBeURJLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwSGVhZGVycywgSHR0cFBhcmFtcyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEluamVjdGFibGUsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBdXRoU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3dvcmtmbG93LXNlcnZpY2VzL2F1dGguc2VydmljZSc7XG5pbXBvcnQgeyBDb25maWd1cmF0aW9ucyB9IGZyb20gJy4uLy4uLy4uL2NvbmZpZ3VyYXRpb25zJztcbmltcG9ydCB7IHJldHJ5IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBBZGRHcmMsIEF0dHJpYnV0ZXNEZXRhaWxzLCBMaXN0T2JqZWN0IH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9hZGQtZ3JjJztcbmltcG9ydCBkYXlqcyBmcm9tICdkYXlqcyc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBHcmNTZXJ2aWNlIHtcbiAgZW52ITogYW55O1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IEVESVRPUl9DT05GSUcgPSB7XG4gICAgbW9kZTogJ3ByaW1lJyxcbiAgICBjb2xvclBhbGV0dGU6IHRydWUsXG4gICAgbGluazogdHJ1ZSxcbiAgICBpZDogJ2dyY19kZXNjcmlwdGlvbicsXG4gICAgcGxhY2Vob2xkZXI6ICdBZGQgYSBkZXNjcmlwdGlvbiBmb3IgdGhpcyBHUkMgT2JqZWN0JyxcbiAgfTtcbiAgcHVibGljIHJlYWRvbmx5IEdSQ19QQVlMT0FEOiBBZGRHcmMgPSB7XG4gICAgbmFtZTogJycsXG4gICAgdHlwZTogMywgLy9Bc3NldHMtIDAsIEludmVudG9yeS0gMSwgUHJvY2Vzc2VzIC0gMiwgVmVuZG9ycy0gM1xuICAgIHN0YXRlOiAwLFxuICAgIHBhcmVudF9ncmNfaWRzOiBbXSxcbiAgICBvd25lcnM6IFtdLFxuICAgIGVtYWlsX25vdGlmaWNhdGlvbl9tZW1iZXJfaWRzOiBbXSxcbiAgICBkZXNjcmlwdGlvbjogJycsXG4gICAgZnJlcXVlbmN5OiAnJyxcbiAgICBhdHRyaWJ1dGVzOiBbXSxcbiAgICByY19pZHM6IFtdLFxuICAgIHByb2dyYW1fY2F0ZWdvcnlfaWRzOiBbXSxcbiAgICByaXNrX2NhdGVnb3J5X2lkczogW10sXG4gICAgbGlua2VkX0dSQ19pZHM6IFtdLFxuICB9O1xuXG4gIHB1YmxpYyByZWFkb25seSBMSVNUX09CSkVDVDogTGlzdE9iamVjdCA9IHtcbiAgICBSQzoge1xuICAgICAgaXNMb2FkaW5nOiBmYWxzZSxcbiAgICAgIGRhdGE6IFtdLFxuICAgICAgc2VsZWN0ZWREYXRhOiBbXSxcbiAgICB9LFxuICAgIE9XTkVSOiB7XG4gICAgICBpc0xvYWRpbmc6IGZhbHNlLFxuICAgICAgZGF0YTogW10sXG4gICAgICBzZWxlY3RlZERhdGE6IFtdLFxuICAgICAgZGlzYWJsZWRJZHM6IFtdLFxuICAgIH0sXG4gICAgT1RIRVJfR1JDX09CSkVDVFM6IHtcbiAgICAgIGlzTG9hZGluZzogZmFsc2UsXG4gICAgICBkYXRhOiB7fSxcbiAgICAgIHNlbGVjdGVkRGF0YTogW10sXG4gICAgfSxcbiAgICBSSVNLX0NBVEVHT1JZOiB7XG4gICAgICBpc0xvYWRpbmc6IGZhbHNlLFxuICAgICAgZGF0YToge30sXG4gICAgICBzZWxlY3RlZERhdGE6IFtdLFxuICAgIH0sXG4gICAgUFJPR1JBTV9SRVNQT05TSUJJTElUWToge1xuICAgICAgaXNMb2FkaW5nOiBmYWxzZSxcbiAgICAgIGRhdGE6IHt9LFxuICAgICAgc2VsZWN0ZWREYXRhOiBbXSxcbiAgICB9LFxuICB9O1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsXG4gICAgcHJpdmF0ZSBhdXRoU2VydmljZTogQXV0aFNlcnZpY2UsXG4gICAgQE9wdGlvbmFsKCkgY29uZmlnPzogQ29uZmlndXJhdGlvbnNcbiAgKSB7XG4gICAgaWYgKGNvbmZpZykge1xuICAgICAgdGhpcy5lbnYgPSBjb25maWcuZW52Q29uZmlnO1xuICAgIH1cbiAgfVxuXG4gIGdldEFsbFJlc3BvbnNpYmlsaXRpZXMocGFnZU5vOiBudW1iZXIpIHtcbiAgICBjb25zdCBidXNpbmVzc0N5Y2xlID0gdGhpcy5nZXRCdXNpbmVzc0N5Y2xlKCk7XG4gICAgY29uc3QgZm9ybWF0dGVkQ3ljbGUgPSBidXNpbmVzc0N5Y2xlLnNlbGVjdGVkX2N5Y2xlXG4gICAgICA/IGRheWpzKGJ1c2luZXNzQ3ljbGUuc2VsZWN0ZWRfY3ljbGUuc3BsaXQoJy0nKVswXSkuZm9ybWF0KCdZWVlZLU1NLUREJykgKyBcbiAgICAgICAgJzonICsgXG4gICAgICAgIGRheWpzKGJ1c2luZXNzQ3ljbGUuc2VsZWN0ZWRfY3ljbGUuc3BsaXQoJy0nKVsxXSkuZm9ybWF0KCdZWVlZLU1NLUREJylcbiAgICAgIDogJyc7XG4gICAgXG4gICAgY29uc3QgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpXG4gICAgICAuc2V0KCd0b2tlbicsIHRoaXMuYXV0aFNlcnZpY2UuZ2V0QXV0aG9yaXphdGlvblRva2VuKCkpXG4gICAgICAuc2V0KCdiaXpfY3ljbGUnLCBmb3JtYXR0ZWRDeWNsZSk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8YW55W10+KFxuICAgICAgdGhpcy5lbnYuY29tcGxpYW5jZUdldCArIGBzYWlsc1Jlc3BvbnNpYmlsaXRpZXNMaXN0JnBhZ2U9JHtwYWdlTm99JmxpbWl0PTMwYCxcbiAgICAgIHsgaGVhZGVycyB9XG4gICAgKTtcbiAgfVxuXG4gIGdldEdSQ0xpc3QoZXZlbnQ/OiBhbnkpIHtcbiAgICBjb25zdCBoZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKCkuc2V0KFxuICAgICAgJ3Rva2VuJyxcbiAgICAgIHRoaXMuYXV0aFNlcnZpY2UuZ2V0QXV0aG9yaXphdGlvblRva2VuKClcbiAgICApO1xuICAgIGxldCBwYXJhbXMgPSBuZXcgSHR0cFBhcmFtcygpO1xuICAgIHBhcmFtcyA9IHBhcmFtcy5hcHBlbmQoJ3N0YXRlJywgZXZlbnQ/LnN0YXRlID8/IDEpO1xuICAgIHBhcmFtcyA9IHBhcmFtcy5hcHBlbmQoJ2dyY1R5cGUnLCBldmVudD8udHlwZSA/PyAwKTtcbiAgICBwYXJhbXMgPSBwYXJhbXMuYXBwZW5kKCdwYWdlJywgZXZlbnQ/LnBhZ2VObyA/PyAxKTtcbiAgICBwYXJhbXMgPSBwYXJhbXMuYXBwZW5kKCdyY0lkcycsIGV2ZW50Py5yY19pZHMgPz8gJycpO1xuICAgIHBhcmFtcyA9IGV2ZW50Py5zZWFyY2hTdHJpbmdcbiAgICAgID8gcGFyYW1zLmFwcGVuZCgnbmFtZScsIGV2ZW50Py5zZWFyY2hTdHJpbmcgPz8gJycpXG4gICAgICA6IHBhcmFtcztcbiAgICByZXR1cm4gdGhpcy5odHRwXG4gICAgICAuZ2V0PGFueVtdPih0aGlzLmVudj8uZ3JjX2dldCArICdncmMvZ2V0R1JDTGlzdCcsIHtcbiAgICAgICAgcGFyYW1zLFxuICAgICAgICBoZWFkZXJzLFxuICAgICAgfSlcbiAgICAgIC5waXBlKHJldHJ5KDEpKTtcbiAgfVxuXG4gIGdldEdSQ1RhYnNDb3VudChldmVudD86IGFueSkge1xuICAgIGNvbnN0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoKS5zZXQoXG4gICAgICAndG9rZW4nLFxuICAgICAgdGhpcy5hdXRoU2VydmljZS5nZXRBdXRob3JpemF0aW9uVG9rZW4oKVxuICAgICk7XG4gICAgbGV0IHBhcmFtcyA9IG5ldyBIdHRwUGFyYW1zKCk7XG4gICAgcGFyYW1zID0gZXZlbnQ/LnNlYXJjaFN0cmluZ1xuICAgICAgPyBwYXJhbXMuYXBwZW5kKCduYW1lJywgZXZlbnQ/LnNlYXJjaFN0cmluZyA/PyAnJylcbiAgICAgIDogcGFyYW1zO1xuICAgIGlmIChldmVudD8ucmNfaWRzKSB7XG4gICAgICBwYXJhbXMgPSBwYXJhbXMuYXBwZW5kKCdyY0lkcycsIGV2ZW50Py5yY19pZHMpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5odHRwXG4gICAgICAuZ2V0PGFueVtdPih0aGlzLmVudj8uZ3JjX2dldCArICdncmMvZ2V0R1JDQ291bnQnLCB7XG4gICAgICAgIHBhcmFtcyxcbiAgICAgICAgaGVhZGVycyxcbiAgICAgIH0pXG4gICAgICAucGlwZShyZXRyeSgxKSk7XG4gIH1cblxuICBwdWJsaWMgY2hlY2tWYWxpZGF0aW9uKGdyY1BheWxvYWQ6IEFkZEdyYywgaXNBdHRyaWJ1dGVzU2VsZWN0ZWQ6IGJvb2xlYW4pIHtcbiAgICBjb25zdCBpc1ZhbGlkRGF0YSA9XG4gICAgICBncmNQYXlsb2FkLm5hbWUudHJpbSgpICE9PSAnJyAmJlxuICAgICAgZ3JjUGF5bG9hZC50eXBlID4gLTEgJiZcbiAgICAgIGdyY1BheWxvYWQub3duZXJzLmxlbmd0aCAmJlxuICAgICAgZ3JjUGF5bG9hZC5yY19pZHMubGVuZ3RoO1xuICAgIHJldHVybiAoXG4gICAgICBpc1ZhbGlkRGF0YSAmJlxuICAgICAgKCFpc0F0dHJpYnV0ZXNTZWxlY3RlZCB8fFxuICAgICAgICB0aGlzLmNoZWNrQXR0cmlidXRlVmFsaWRhdGlvbihncmNQYXlsb2FkLmF0dHJpYnV0ZXMpKVxuICAgICk7XG4gIH1cblxuICBjaGVja0F0dHJpYnV0ZVZhbGlkYXRpb24oYXR0cmlidXRlczogQXR0cmlidXRlc0RldGFpbHNbXSk6IGJvb2xlYW4ge1xuICAgIGZvciAoY29uc3Qgb2JqIG9mIGF0dHJpYnV0ZXMpIHtcbiAgICAgIGlmIChvYmouaXNSZXF1aXJlZCkge1xuICAgICAgICBpZiAob2JqLnR5cGUgPT09ICdzaW5nbGUtdGV4dGJveCcgfHwgb2JqLnR5cGUgPT09ICdkYXRlLXRpbWUnKSB7XG4gICAgICAgICAgY29uc3QgY2hvaWNlID0gb2JqLmNob2ljZXNbMF07XG4gICAgICAgICAgaWYgKHR5cGVvZiBjaG9pY2UudmFsdWUgPT09ICdzdHJpbmcnICYmIGNob2ljZS52YWx1ZS50cmltKCkgPT09ICcnKSB7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2UgaWYgKG9iai50eXBlID09PSAnY2hlY2tib3gnIHx8IG9iai50eXBlID09PSAnZHJvcGRvd24nKSB7XG4gICAgICAgICAgbGV0IGlzQ2hvaWNlU2VsZWN0ZWQgPSBmYWxzZTtcbiAgICAgICAgICBpZiAob2JqLmhhc090aGVyICYmIG9iaj8uaXNfb3RoZXJfc2VsZWN0ZWQpIHtcbiAgICAgICAgICAgIGlzQ2hvaWNlU2VsZWN0ZWQgPSB0cnVlO1xuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAoIWlzQ2hvaWNlU2VsZWN0ZWQpIHtcbiAgICAgICAgICAgIGZvciAoY29uc3QgY2hvaWNlIG9mIG9iai5jaG9pY2VzKSB7XG4gICAgICAgICAgICAgIGlmIChjaG9pY2UuaXNfc2VsZWN0ZWQpIHtcbiAgICAgICAgICAgICAgICBpc0Nob2ljZVNlbGVjdGVkID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmICghaXNDaG9pY2VTZWxlY3RlZCkge1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIGNoZWNrQXR0cmlidXRlc1NlbGVjdGVkKGF0dHJpYnV0ZXM6IEF0dHJpYnV0ZXNEZXRhaWxzW10pOiBib29sZWFuIHtcbiAgICBmb3IgKGNvbnN0IG9iaiBvZiBhdHRyaWJ1dGVzKSB7XG4gICAgICBpZiAob2JqLnR5cGUgPT09ICdzaW5nbGUtdGV4dGJveCcgfHwgb2JqLnR5cGUgPT09ICdkYXRlLXRpbWUnKSB7XG4gICAgICAgIGNvbnN0IGNob2ljZSA9IG9iai5jaG9pY2VzWzBdO1xuICAgICAgICBpZiAodHlwZW9mIGNob2ljZS52YWx1ZSA9PT0gJ3N0cmluZycgJiYgY2hvaWNlLnZhbHVlLnRyaW0oKSA9PT0gJycpIHtcbiAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSBpZiAob2JqLnR5cGUgPT09ICdjaGVja2JveCcgfHwgb2JqLnR5cGUgPT09ICdkcm9wZG93bicpIHtcbiAgICAgICAgbGV0IGlzQ2hvaWNlU2VsZWN0ZWQgPSBmYWxzZTtcbiAgICAgICAgZm9yIChjb25zdCBjaG9pY2Ugb2Ygb2JqLmNob2ljZXMpIHtcbiAgICAgICAgICBpZiAoY2hvaWNlLmlzX3NlbGVjdGVkKSB7XG4gICAgICAgICAgICBpc0Nob2ljZVNlbGVjdGVkID0gdHJ1ZTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAoIWlzQ2hvaWNlU2VsZWN0ZWQpIHtcbiAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICBjaGVja0VhY2hBdHRyaWJ1dGVWYWxpZGF0aW9uKGF0dHJpYnV0ZTogQXR0cmlidXRlc0RldGFpbHMpOiBib29sZWFuIHtcbiAgICBpZiAoYXR0cmlidXRlLmlzUmVxdWlyZWQpIHtcbiAgICAgIGlmIChcbiAgICAgICAgYXR0cmlidXRlLnR5cGUgPT09ICdzaW5nbGUtdGV4dGJveCcgfHxcbiAgICAgICAgYXR0cmlidXRlLnR5cGUgPT09ICdkYXRlLXRpbWUnXG4gICAgICApIHtcbiAgICAgICAgY29uc3QgY2hvaWNlID0gYXR0cmlidXRlLmNob2ljZXNbMF07XG4gICAgICAgIGlmICh0eXBlb2YgY2hvaWNlLnZhbHVlID09PSAnc3RyaW5nJyAmJiBjaG9pY2UudmFsdWUudHJpbSgpID09PSAnJykge1xuICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIGlmIChcbiAgICAgICAgYXR0cmlidXRlLnR5cGUgPT09ICdjaGVja2JveCcgfHxcbiAgICAgICAgYXR0cmlidXRlLnR5cGUgPT09ICdkcm9wZG93bidcbiAgICAgICkge1xuICAgICAgICBsZXQgaXNDaG9pY2VTZWxlY3RlZCA9IGZhbHNlO1xuICAgICAgICBmb3IgKGNvbnN0IGNob2ljZSBvZiBhdHRyaWJ1dGUuY2hvaWNlcykge1xuICAgICAgICAgIGlmIChjaG9pY2UuaXNfc2VsZWN0ZWQpIHtcbiAgICAgICAgICAgIGlzQ2hvaWNlU2VsZWN0ZWQgPSB0cnVlO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlmICghaXNDaG9pY2VTZWxlY3RlZCkge1xuICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuICBnZXRSaXNrQ2F0ZWdvcmllcyhldmVudD86IGFueSkge1xuICAgIGNvbnN0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoKS5zZXQoXG4gICAgICAndG9rZW4nLFxuICAgICAgdGhpcy5hdXRoU2VydmljZS5nZXRBdXRob3JpemF0aW9uVG9rZW4oKVxuICAgICk7XG4gICAgbGV0IHBhcmFtcyA9IG5ldyBIdHRwUGFyYW1zKCk7XG4gICAgcGFyYW1zID0gcGFyYW1zLmFwcGVuZCgncmV0dXJuVHlwZScsIDEpO1xuICAgIHBhcmFtcyA9IHBhcmFtcy5hcHBlbmQoJ2NhdGVnb3J5VHlwZScsIGV2ZW50Py50eXBlID8/IDEpO1xuICAgIHBhcmFtcyA9IHBhcmFtcy5hcHBlbmQoJ3BhZ2UnLCBldmVudD8ucGFnZU5vID8/IDEpO1xuICAgIHBhcmFtcyA9IGV2ZW50Py50eXBlID09PSAwID8gcGFyYW1zLmFwcGVuZCgncmlza0ZsYWcnLCAxKSA6IHBhcmFtcztcbiAgICBwYXJhbXMgPSBldmVudD8uc2VhcmNoU3RyaW5nXG4gICAgICA/IHBhcmFtcy5hcHBlbmQoJ3EnLCBldmVudD8uc2VhcmNoU3RyaW5nID8/ICcnKVxuICAgICAgOiBwYXJhbXM7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8YW55W10+KHRoaXMuZW52Py5yaXNrICsgJ2NhdGVnb3J5L2xpc3QnLCB7XG4gICAgICBwYXJhbXMsXG4gICAgICBoZWFkZXJzLFxuICAgIH0pO1xuICB9XG5cbiAgZ2V0Umlza0NhdGVnb3JpZXNDb3VudChldmVudD86IGFueSkge1xuICAgIGNvbnN0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoKS5zZXQoXG4gICAgICAndG9rZW4nLFxuICAgICAgdGhpcy5hdXRoU2VydmljZS5nZXRBdXRob3JpemF0aW9uVG9rZW4oKVxuICAgICk7XG4gICAgbGV0IHBhcmFtcyA9IG5ldyBIdHRwUGFyYW1zKCk7XG4gICAgcGFyYW1zID0gZXZlbnQ/LnNlYXJjaFN0cmluZ1xuICAgICAgPyBwYXJhbXMuYXBwZW5kKCdxJywgZXZlbnQ/LnNlYXJjaFN0cmluZyA/PyAnJylcbiAgICAgIDogcGFyYW1zO1xuICAgIGlmIChldmVudD8ucmNfaWRzPy5sZW5ndGgpIHtcbiAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ3JjX2lkcycsIGV2ZW50LnJjX2lkcy5qb2luKCcsJykpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxhbnlbXT4odGhpcy5lbnY/LnJpc2sgKyAnY2F0ZWdvcnkvY291bnQnLCB7XG4gICAgICBwYXJhbXMsXG4gICAgICBoZWFkZXJzLFxuICAgIH0pO1xuICB9XG5cbiAgZ2V0Umlza3MocGF5bG9hZD86IGFueSkge1xuICAgIGNvbnN0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoKS5zZXQoXG4gICAgICAndG9rZW4nLFxuICAgICAgdGhpcy5hdXRoU2VydmljZS5nZXRBdXRob3JpemF0aW9uVG9rZW4oKVxuICAgICk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PGFueVtdPihcbiAgICAgIHRoaXMuZW52Py5yaXNrICsgJ2NhdGVnb3J5L3Jpc2tsaXN0JyxcbiAgICAgIHBheWxvYWQsXG4gICAgICB7XG4gICAgICAgIGhlYWRlcnMsXG4gICAgICB9XG4gICAgKTtcbiAgfVxuXG4gIGdldEJ1c2luZXNzQ3ljbGUoKSB7XG4gICAgbGV0IGJ1c2luZXNzQ3ljbGUgPSBKU09OLnBhcnNlKFxuICAgICAgbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ2J1c2luZXNzQ3ljbGUnKSA/PyAne30nXG4gICAgKTtcbiAgICBsZXQgY3VycmVudEJ1c2luZXNzQ3ljbGUgPSB7XG4gICAgICBzZWxlY3RlZF9jeWNsZTogYnVzaW5lc3NDeWNsZVxuICAgICAgICA/IGJ1c2luZXNzQ3ljbGU/LnNlbGVjdGVkQ3ljbGU/LnN0YXJ0X2RhdGUgK1xuICAgICAgICAgICctJyArXG4gICAgICAgICAgYnVzaW5lc3NDeWNsZT8uc2VsZWN0ZWRDeWNsZT8uZW5kX2RhdGVcbiAgICAgICAgOiAnJyxcbiAgICAgIHN0YXJ0X2RhdGU6IGJ1c2luZXNzQ3ljbGUgPyBidXNpbmVzc0N5Y2xlPy5zZWxlY3RlZEN5Y2xlPy5zdGFydF9kYXRlIDogJycsXG4gICAgICBlbmRfZGF0ZTogYnVzaW5lc3NDeWNsZSA/IGJ1c2luZXNzQ3ljbGU/LnNlbGVjdGVkQ3ljbGU/LmVuZF9kYXRlIDogJycsXG4gICAgICBzZWxlY3RlZF9jeWNsZV9hcnI6IGJ1c2luZXNzQ3ljbGVcbiAgICAgICAgPyBidXNpbmVzc0N5Y2xlPy5zZWxlY3RlZEN5Y2xlPy5zZWxlY3RlZF9jeWNsZV9hcnJcbiAgICAgICAgOiBbXSxcbiAgICB9O1xuICAgIHJldHVybiBjdXJyZW50QnVzaW5lc3NDeWNsZTtcbiAgfVxuXG4gIGdldFByb2dyYW1zTGlzdChyZXE6IGFueSkge1xuICAgIC8vIHRoaXMuZ2V0VXNlckRldGFpbHMoKTtcbiAgICBsZXQgaHR0cE9wdGlvbnM6IGFueSA9IHt9O1xuICAgIGlmIChyZXE/LnBhcmFtcykge1xuICAgICAgaHR0cE9wdGlvbnMucGFyYW1zID0gcmVxLnBhcmFtcztcbiAgICB9XG4gICAgaWYgKHJlcT8uaGVhZGVycykge1xuICAgICAgbGV0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoKTtcbiAgICAgIGh0dHBPcHRpb25zLmhlYWRlcnMgPSBoZWFkZXJzLmFwcGVuZChcbiAgICAgICAgJ3BheWxvYWQtb2JqZWN0JyxcbiAgICAgICAgSlNPTi5zdHJpbmdpZnkocmVxLmhlYWRlcnMpXG4gICAgICApO1xuICAgICAgaHR0cE9wdGlvbnMuaGVhZGVycyA9IGh0dHBPcHRpb25zLmhlYWRlcnMuYXBwZW5kKFxuICAgICAgICAndG9rZW4nLFxuICAgICAgICB0aGlzLmF1dGhTZXJ2aWNlLmdldEF1dGhvcml6YXRpb25Ub2tlbigpXG4gICAgICApO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgIC5nZXQ8YW55W10+KFxuICAgICAgICB0aGlzLmVudj8ucHJvZ3JhbUVuZHBvaW50ICsgJy9jYXRlZ29yaWVzTGlzdD9vd25lcl9saXN0PTEnLFxuICAgICAgICBodHRwT3B0aW9uc1xuICAgICAgKVxuICAgICAgLnBpcGUocmV0cnkoMikpO1xuICB9XG5cbiAgZ2V0UHJvZ3JhbXNMaXN0Q291bnQocmVxOiBhbnkpIHtcbiAgICBsZXQgaHR0cE9wdGlvbnM6IGFueSA9IHt9O1xuICAgIGlmIChyZXE/LnBhcmFtcykge1xuICAgICAgaHR0cE9wdGlvbnMucGFyYW1zID0gcmVxLnBhcmFtcztcbiAgICB9XG4gICAgaWYgKHJlcT8uaGVhZGVycykge1xuICAgICAgbGV0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoKTtcbiAgICAgIGh0dHBPcHRpb25zLmhlYWRlcnMgPSBoZWFkZXJzLmFwcGVuZChcbiAgICAgICAgJ3BheWxvYWQtb2JqZWN0JyxcbiAgICAgICAgSlNPTi5zdHJpbmdpZnkocmVxPy5oZWFkZXJzKVxuICAgICAgKTtcbiAgICAgIGh0dHBPcHRpb25zLmhlYWRlcnMgPSBodHRwT3B0aW9ucy5oZWFkZXJzLmFwcGVuZChcbiAgICAgICAgJ3Rva2VuJyxcbiAgICAgICAgdGhpcy5hdXRoU2VydmljZS5nZXRBdXRob3JpemF0aW9uVG9rZW4oKVxuICAgICAgKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuaHR0cFxuICAgICAgLmdldDxhbnlbXT4odGhpcy5lbnY/LnByb2dyYW1FbmRwb2ludCArICcvb3ZlcnZpZXctY291bnQnLCBodHRwT3B0aW9ucylcbiAgICAgIC5waXBlKHJldHJ5KDIpKTtcbiAgfVxuXG4gIGdldFN1YkNhdGVnb3J5TGlzdChwYXlsb2FkOiBhbnkpIHtcbiAgICBpZiAocGF5bG9hZD8uc2NvcGVUeXBlID09PSAnbm90X2NvbXBsZXRlZCcpIHtcbiAgICAgIHBheWxvYWQuc2NvcGVUeXBlID0gJ25vdENvbXBsZXRlZCc7XG4gICAgfVxuICAgIGxldCBoZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKCk7XG4gICAgaGVhZGVycyA9IGhlYWRlcnMuYXBwZW5kKFxuICAgICAgJ3BheWxvYWQtb2JqZWN0JyxcbiAgICAgIEpTT04uc3RyaW5naWZ5KHBheWxvYWQ/LmJ1c2luZXNzQ3ljbGUpXG4gICAgKTtcbiAgICBoZWFkZXJzID0gaGVhZGVycy5hcHBlbmQoJ3Rva2VuJywgdGhpcy5hdXRoU2VydmljZS5nZXRBdXRob3JpemF0aW9uVG9rZW4oKSk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cFxuICAgICAgLmdldDxhbnk+KFxuICAgICAgICB0aGlzLmVudj8ucHJvZ3JhbUVuZHBvaW50ICtcbiAgICAgICAgICAnL3N1YkNhdGVnb3JpZXM/aXNCdXNpbmVzc0N5Y2xlPXRydWUmcGFyZW50SWQ9JyArXG4gICAgICAgICAgcGF5bG9hZD8uaWQgK1xuICAgICAgICAgICcmdHlwZT0nICtcbiAgICAgICAgICBwYXlsb2FkPy5zY29wZVR5cGUgK1xuICAgICAgICAgICcmY2FsbEZyb209Z3JjJyArXG4gICAgICAgICAgKHBheWxvYWQ/LnNlYXJjaFRleHQgPyAnJnE9JyArIGVuY29kZVVSSShwYXlsb2FkPy5zZWFyY2hUZXh0KSA6ICcnKSArXG4gICAgICAgICAgKHBheWxvYWQ/Lm5hbWUgPyAnJnNvcnRCeT0nICsgcGF5bG9hZD8ubmFtZSA6ICcnKSArXG4gICAgICAgICAgKHBheWxvYWQ/LnNvcnRpbmdDb3VudCA/ICcmc29ydFZhbHVlPScgKyBwYXlsb2FkPy5zb3J0aW5nQ291bnQgOiAnJykgK1xuICAgICAgICAgICgnJnBhZ2U9JyArIHBheWxvYWQ/LnBhZ2UpLFxuICAgICAgICB7IGhlYWRlcnMgfVxuICAgICAgKVxuICAgICAgLnBpcGUocmV0cnkoMSkpO1xuICB9XG5cbiAgZ2V0UmVzcG9uc2liaWxpdHlCeUNhdGVnb3J5SWQoXG4gICAgcmVxOiBhbnksXG4gICAgcGF5bG9hZD86IGFueSxcbiAgICBmaWx0ZXJQb2xpY3lEYXRhPzogYW55XG4gICkge1xuICAgIC8vIGh0dHBzOi8vZGV2YXBpLnYtY29tcGx5LmNvbS9jYXRlZ29yeS9lZGl0Q2F0ZWdvcnlcbiAgICBsZXQgaHR0cE9wdGlvbnM6IGFueSA9IHt9O1xuICAgIGh0dHBPcHRpb25zLnBhcmFtcyA9IHJlcTtcbiAgICBsZXQgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpO1xuICAgIC8vIGhlYWRlcnMgPSBoZWFkZXJzLmFwcGVuZCgneC1idXNpbmVzcy1jeWNsZScsSlNPTi5zdHJpbmdpZnkocGF5bG9hZCkpO1xuICAgIGhlYWRlcnMgPSBoZWFkZXJzLmFwcGVuZCgncGF5bG9hZC1vYmplY3QnLCBKU09OLnN0cmluZ2lmeShwYXlsb2FkKSk7XG4gICAgaGVhZGVycyA9IGhlYWRlcnMuYXBwZW5kKCd0b2tlbicsIHRoaXMuYXV0aFNlcnZpY2UuZ2V0QXV0aG9yaXphdGlvblRva2VuKCkpO1xuICAgIGh0dHBPcHRpb25zLmhlYWRlcnMgPSBoZWFkZXJzO1xuICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgIC5nZXQodGhpcy5lbnY/LnByb2dyYW1FbmRwb2ludCArICcvcmVzcG9uc2liaWxpdHlMaXN0JywgaHR0cE9wdGlvbnMpXG4gICAgICAucGlwZShyZXRyeSgxKSk7XG4gIH1cbn1cbiJdfQ==
310
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JjLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92eC13b3JrZmxvdy1lbmdpbmUvc3JjL2xpYi93b3JrZmxvdy9zaGFyZWQvc2VydmljZXMvZ3JjLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFjLFdBQVcsRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUMzRSxPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUdyRCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7OztBQU03QixNQUFNLE9BQU8sVUFBVTthQUVFLGtCQUFhLEdBQUc7UUFDckMsSUFBSSxFQUFFLE9BQU87UUFDYixZQUFZLEVBQUUsSUFBSTtRQUNsQixJQUFJLEVBQUUsSUFBSTtRQUNWLEVBQUUsRUFBRSxpQkFBaUI7UUFDckIsV0FBVyxFQUFFLHVDQUF1QztLQUNyRCxDQUFDO0lBNkNGLFlBQ1UsSUFBZ0IsRUFDaEIsV0FBd0IsRUFDcEIsTUFBdUI7UUFGM0IsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUNoQixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQTlDbEIsZ0JBQVcsR0FBVztZQUNwQyxJQUFJLEVBQUUsRUFBRTtZQUNSLElBQUksRUFBRSxDQUFDO1lBQ1AsS0FBSyxFQUFFLENBQUM7WUFDUixjQUFjLEVBQUUsRUFBRTtZQUNsQixNQUFNLEVBQUUsRUFBRTtZQUNWLDZCQUE2QixFQUFFLEVBQUU7WUFDakMsV0FBVyxFQUFFLEVBQUU7WUFDZixTQUFTLEVBQUUsRUFBRTtZQUNiLFVBQVUsRUFBRSxFQUFFO1lBQ2QsTUFBTSxFQUFFLEVBQUU7WUFDVixvQkFBb0IsRUFBRSxFQUFFO1lBQ3hCLGlCQUFpQixFQUFFLEVBQUU7WUFDckIsY0FBYyxFQUFFLEVBQUU7U0FDbkIsQ0FBQztRQUVjLGdCQUFXLEdBQWU7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cUIsRUFBRSxXQUFXLENBQUM7YUFDbkUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3BCLENBQUM7K0dBdldVLFVBQVU7bUhBQVYsVUFBVSxjQUZULE1BQU07OzRGQUVQLFVBQVU7a0JBSHRCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkF5REksUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQsIEh0dHBIZWFkZXJzLCBIdHRwUGFyYW1zIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vd29ya2Zsb3ctc2VydmljZXMvYXV0aC5zZXJ2aWNlJztcbmltcG9ydCB7IENvbmZpZ3VyYXRpb25zIH0gZnJvbSAnLi4vLi4vLi4vY29uZmlndXJhdGlvbnMnO1xuaW1wb3J0IHsgcmV0cnkgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEFkZEdyYywgQXR0cmlidXRlc0RldGFpbHMsIExpc3RPYmplY3QgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2FkZC1ncmMnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgR3JjU2VydmljZSB7XG4gIGVudiE6IGFueTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBFRElUT1JfQ09ORklHID0ge1xuICAgIG1vZGU6ICdwcmltZScsXG4gICAgY29sb3JQYWxldHRlOiB0cnVlLFxuICAgIGxpbms6IHRydWUsXG4gICAgaWQ6ICdncmNfZGVzY3JpcHRpb24nLFxuICAgIHBsYWNlaG9sZGVyOiAnQWRkIGEgZGVzY3JpcHRpb24gZm9yIHRoaXMgR1JDIE9iamVjdCcsXG4gIH07XG4gIHB1YmxpYyByZWFkb25seSBHUkNfUEFZTE9BRDogQWRkR3JjID0ge1xuICAgIG5hbWU6ICcnLFxuICAgIHR5cGU6IDMsIC8vQXNzZXRzLSAwLCBJbnZlbnRvcnktIDEsIFByb2Nlc3NlcyAtIDIsIFZlbmRvcnMtIDNcbiAgICBzdGF0ZTogMCxcbiAgICBwYXJlbnRfZ3JjX2lkczogW10sXG4gICAgb3duZXJzOiBbXSxcbiAgICBlbWFpbF9ub3RpZmljYXRpb25fbWVtYmVyX2lkczogW10sXG4gICAgZGVzY3JpcHRpb246ICcnLFxuICAgIGZyZXF1ZW5jeTogJycsXG4gICAgYXR0cmlidXRlczogW10sXG4gICAgcmNfaWRzOiBbXSxcbiAgICBwcm9ncmFtX2NhdGVnb3J5X2lkczogW10sXG4gICAgcmlza19jYXRlZ29yeV9pZHM6IFtdLFxuICAgIGxpbmtlZF9HUkNfaWRzOiBbXSxcbiAgfTtcblxuICBwdWJsaWMgcmVhZG9ubHkgTElTVF9PQkpFQ1Q6IExpc3RPYmplY3QgPSB7XG4gICAgUkM6IHtcbiAgICAgIGlzTG9hZGluZzogZmFsc2UsXG4gICAgICBkYXRhOiBbXSxcbiAgICAgIHNlbGVjdGVkRGF0YTogW10sXG4gICAgfSxcbiAgICBPV05FUjoge1xuICAgICAgaXNMb2FkaW5nOiBmYWxzZSxcbiAgICAgIGRhdGE6IFtdLFxuICAgICAgc2VsZWN0ZWREYXRhOiBbXSxcbiAgICAgIGRpc2FibGVkSWRzOiBbXSxcbiAgICB9LFxuICAgIE9USEVSX0dSQ19PQkpFQ1RTOiB7XG4gICAgICBpc0xvYWRpbmc6IGZhbHNlLFxuICAgICAgZGF0YToge30sXG4gICAgICBzZWxlY3RlZERhdGE6IFtdLFxuICAgIH0sXG4gICAgUklTS19DQVRFR09SWToge1xuICAgICAgaXNMb2FkaW5nOiBmYWxzZSxcbiAgICAgIGRhdGE6IHt9LFxuICAgICAgc2VsZWN0ZWREYXRhOiBbXSxcbiAgICB9LFxuICAgIFBST0dSQU1fUkVTUE9OU0lCSUxJVFk6IHtcbiAgICAgIGlzTG9hZGluZzogZmFsc2UsXG4gICAgICBkYXRhOiB7fSxcbiAgICAgIHNlbGVjdGVkRGF0YTogW10sXG4gICAgfSxcbiAgfTtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxuICAgIHByaXZhdGUgYXV0aFNlcnZpY2U6IEF1dGhTZXJ2aWNlLFxuICAgIEBPcHRpb25hbCgpIGNvbmZpZz86IENvbmZpZ3VyYXRpb25zXG4gICkge1xuICAgIGlmIChjb25maWcpIHtcbiAgICAgIHRoaXMuZW52ID0gY29uZmlnLmVudkNvbmZpZztcbiAgICB9XG4gIH1cblxuICBnZXRHUkNMaXN0KGV2ZW50PzogYW55KSB7XG4gICAgY29uc3QgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpLnNldChcbiAgICAgICd0b2tlbicsXG4gICAgICB0aGlzLmF1dGhTZXJ2aWNlLmdldEF1dGhvcml6YXRpb25Ub2tlbigpXG4gICAgKTtcbiAgICBsZXQgcGFyYW1zID0gbmV3IEh0dHBQYXJhbXMoKTtcbiAgICBwYXJhbXMgPSBwYXJhbXMuYXBwZW5kKCdzdGF0ZScsIGV2ZW50Py5zdGF0ZSA/PyAxKTtcbiAgICBwYXJhbXMgPSBwYXJhbXMuYXBwZW5kKCdncmNUeXBlJywgZXZlbnQ/LnR5cGUgPz8gMCk7XG4gICAgcGFyYW1zID0gcGFyYW1zLmFwcGVuZCgncGFnZScsIGV2ZW50Py5wYWdlTm8gPz8gMSk7XG4gICAgcGFyYW1zID0gcGFyYW1zLmFwcGVuZCgncmNJZHMnLCBldmVudD8ucmNfaWRzID8/ICcnKTtcbiAgICBwYXJhbXMgPSBldmVudD8uc2VhcmNoU3RyaW5nXG4gICAgICA/IHBhcmFtcy5hcHBlbmQoJ25hbWUnLCBldmVudD8uc2VhcmNoU3RyaW5nID8/ICcnKVxuICAgICAgOiBwYXJhbXM7XG4gICAgcmV0dXJuIHRoaXMuaHR0cFxuICAgICAgLmdldDxhbnlbXT4odGhpcy5lbnY/LmdyY19nZXQgKyAnZ3JjL2dldEdSQ0xpc3QnLCB7XG4gICAgICAgIHBhcmFtcyxcbiAgICAgICAgaGVhZGVycyxcbiAgICAgIH0pXG4gICAgICAucGlwZShyZXRyeSgxKSk7XG4gIH1cblxuICBnZXRHUkNUYWJzQ291bnQoZXZlbnQ/OiBhbnkpIHtcbiAgICBjb25zdCBoZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKCkuc2V0KFxuICAgICAgJ3Rva2VuJyxcbiAgICAgIHRoaXMuYXV0aFNlcnZpY2UuZ2V0QXV0aG9yaXphdGlvblRva2VuKClcbiAgICApO1xuICAgIGxldCBwYXJhbXMgPSBuZXcgSHR0cFBhcmFtcygpO1xuICAgIHBhcmFtcyA9IGV2ZW50Py5zZWFyY2hTdHJpbmdcbiAgICAgID8gcGFyYW1zLmFwcGVuZCgnbmFtZScsIGV2ZW50Py5zZWFyY2hTdHJpbmcgPz8gJycpXG4gICAgICA6IHBhcmFtcztcbiAgICBpZiAoZXZlbnQ/LnJjX2lkcykge1xuICAgICAgcGFyYW1zID0gcGFyYW1zLmFwcGVuZCgncmNJZHMnLCBldmVudD8ucmNfaWRzKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuaHR0cFxuICAgICAgLmdldDxhbnlbXT4odGhpcy5lbnY/LmdyY19nZXQgKyAnZ3JjL2dldEdSQ0NvdW50Jywge1xuICAgICAgICBwYXJhbXMsXG4gICAgICAgIGhlYWRlcnMsXG4gICAgICB9KVxuICAgICAgLnBpcGUocmV0cnkoMSkpO1xuICB9XG5cbiAgcHVibGljIGNoZWNrVmFsaWRhdGlvbihncmNQYXlsb2FkOiBBZGRHcmMsIGlzQXR0cmlidXRlc1NlbGVjdGVkOiBib29sZWFuKSB7XG4gICAgY29uc3QgaXNWYWxpZERhdGEgPVxuICAgICAgZ3JjUGF5bG9hZC5uYW1lLnRyaW0oKSAhPT0gJycgJiZcbiAgICAgIGdyY1BheWxvYWQudHlwZSA+IC0xICYmXG4gICAgICBncmNQYXlsb2FkLm93bmVycy5sZW5ndGggJiZcbiAgICAgIGdyY1BheWxvYWQucmNfaWRzLmxlbmd0aDtcbiAgICByZXR1cm4gKFxuICAgICAgaXNWYWxpZERhdGEgJiZcbiAgICAgICghaXNBdHRyaWJ1dGVzU2VsZWN0ZWQgfHxcbiAgICAgICAgdGhpcy5jaGVja0F0dHJpYnV0ZVZhbGlkYXRpb24oZ3JjUGF5bG9hZC5hdHRyaWJ1dGVzKSlcbiAgICApO1xuICB9XG5cbiAgY2hlY2tBdHRyaWJ1dGVWYWxpZGF0aW9uKGF0dHJpYnV0ZXM6IEF0dHJpYnV0ZXNEZXRhaWxzW10pOiBib29sZWFuIHtcbiAgICBmb3IgKGNvbnN0IG9iaiBvZiBhdHRyaWJ1dGVzKSB7XG4gICAgICBpZiAob2JqLmlzUmVxdWlyZWQpIHtcbiAgICAgICAgaWYgKG9iai50eXBlID09PSAnc2luZ2xlLXRleHRib3gnIHx8IG9iai50eXBlID09PSAnZGF0ZS10aW1lJykge1xuICAgICAgICAgIGNvbnN0IGNob2ljZSA9IG9iai5jaG9pY2VzWzBdO1xuICAgICAgICAgIGlmICh0eXBlb2YgY2hvaWNlLnZhbHVlID09PSAnc3RyaW5nJyAmJiBjaG9pY2UudmFsdWUudHJpbSgpID09PSAnJykge1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIGlmIChvYmoudHlwZSA9PT0gJ2NoZWNrYm94JyB8fCBvYmoudHlwZSA9PT0gJ2Ryb3Bkb3duJykge1xuICAgICAgICAgIGxldCBpc0Nob2ljZVNlbGVjdGVkID0gZmFsc2U7XG4gICAgICAgICAgaWYgKG9iai5oYXNPdGhlciAmJiBvYmo/LmlzX290aGVyX3NlbGVjdGVkKSB7XG4gICAgICAgICAgICBpc0Nob2ljZVNlbGVjdGVkID0gdHJ1ZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKCFpc0Nob2ljZVNlbGVjdGVkKSB7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IGNob2ljZSBvZiBvYmouY2hvaWNlcykge1xuICAgICAgICAgICAgICBpZiAoY2hvaWNlLmlzX3NlbGVjdGVkKSB7XG4gICAgICAgICAgICAgICAgaXNDaG9pY2VTZWxlY3RlZCA9IHRydWU7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAoIWlzQ2hvaWNlU2VsZWN0ZWQpIHtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICBjaGVja0F0dHJpYnV0ZXNTZWxlY3RlZChhdHRyaWJ1dGVzOiBBdHRyaWJ1dGVzRGV0YWlsc1tdKTogYm9vbGVhbiB7XG4gICAgZm9yIChjb25zdCBvYmogb2YgYXR0cmlidXRlcykge1xuICAgICAgaWYgKG9iai50eXBlID09PSAnc2luZ2xlLXRleHRib3gnIHx8IG9iai50eXBlID09PSAnZGF0ZS10aW1lJykge1xuICAgICAgICBjb25zdCBjaG9pY2UgPSBvYmouY2hvaWNlc1swXTtcbiAgICAgICAgaWYgKHR5cGVvZiBjaG9pY2UudmFsdWUgPT09ICdzdHJpbmcnICYmIGNob2ljZS52YWx1ZS50cmltKCkgPT09ICcnKSB7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICB9IGVsc2UgaWYgKG9iai50eXBlID09PSAnY2hlY2tib3gnIHx8IG9iai50eXBlID09PSAnZHJvcGRvd24nKSB7XG4gICAgICAgIGxldCBpc0Nob2ljZVNlbGVjdGVkID0gZmFsc2U7XG4gICAgICAgIGZvciAoY29uc3QgY2hvaWNlIG9mIG9iai5jaG9pY2VzKSB7XG4gICAgICAgICAgaWYgKGNob2ljZS5pc19zZWxlY3RlZCkge1xuICAgICAgICAgICAgaXNDaG9pY2VTZWxlY3RlZCA9IHRydWU7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCFpc0Nob2ljZVNlbGVjdGVkKSB7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgY2hlY2tFYWNoQXR0cmlidXRlVmFsaWRhdGlvbihhdHRyaWJ1dGU6IEF0dHJpYnV0ZXNEZXRhaWxzKTogYm9vbGVhbiB7XG4gICAgaWYgKGF0dHJpYnV0ZS5pc1JlcXVpcmVkKSB7XG4gICAgICBpZiAoXG4gICAgICAgIGF0dHJpYnV0ZS50eXBlID09PSAnc2luZ2xlLXRleHRib3gnIHx8XG4gICAgICAgIGF0dHJpYnV0ZS50eXBlID09PSAnZGF0ZS10aW1lJ1xuICAgICAgKSB7XG4gICAgICAgIGNvbnN0IGNob2ljZSA9IGF0dHJpYnV0ZS5jaG9pY2VzWzBdO1xuICAgICAgICBpZiAodHlwZW9mIGNob2ljZS52YWx1ZSA9PT0gJ3N0cmluZycgJiYgY2hvaWNlLnZhbHVlLnRyaW0oKSA9PT0gJycpIHtcbiAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSBpZiAoXG4gICAgICAgIGF0dHJpYnV0ZS50eXBlID09PSAnY2hlY2tib3gnIHx8XG4gICAgICAgIGF0dHJpYnV0ZS50eXBlID09PSAnZHJvcGRvd24nXG4gICAgICApIHtcbiAgICAgICAgbGV0IGlzQ2hvaWNlU2VsZWN0ZWQgPSBmYWxzZTtcbiAgICAgICAgZm9yIChjb25zdCBjaG9pY2Ugb2YgYXR0cmlidXRlLmNob2ljZXMpIHtcbiAgICAgICAgICBpZiAoY2hvaWNlLmlzX3NlbGVjdGVkKSB7XG4gICAgICAgICAgICBpc0Nob2ljZVNlbGVjdGVkID0gdHJ1ZTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAoIWlzQ2hvaWNlU2VsZWN0ZWQpIHtcbiAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cbiAgZ2V0Umlza0NhdGVnb3JpZXMoZXZlbnQ/OiBhbnkpIHtcbiAgICBjb25zdCBoZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKCkuc2V0KFxuICAgICAgJ3Rva2VuJyxcbiAgICAgIHRoaXMuYXV0aFNlcnZpY2UuZ2V0QXV0aG9yaXphdGlvblRva2VuKClcbiAgICApO1xuICAgIGxldCBwYXJhbXMgPSBuZXcgSHR0cFBhcmFtcygpO1xuICAgIHBhcmFtcyA9IHBhcmFtcy5hcHBlbmQoJ3JldHVyblR5cGUnLCAxKTtcbiAgICBwYXJhbXMgPSBwYXJhbXMuYXBwZW5kKCdjYXRlZ29yeVR5cGUnLCBldmVudD8udHlwZSA/PyAxKTtcbiAgICBwYXJhbXMgPSBwYXJhbXMuYXBwZW5kKCdwYWdlJywgZXZlbnQ/LnBhZ2VObyA/PyAxKTtcbiAgICBwYXJhbXMgPSBldmVudD8udHlwZSA9PT0gMCA/IHBhcmFtcy5hcHBlbmQoJ3Jpc2tGbGFnJywgMSkgOiBwYXJhbXM7XG4gICAgcGFyYW1zID0gZXZlbnQ/LnNlYXJjaFN0cmluZ1xuICAgICAgPyBwYXJhbXMuYXBwZW5kKCdxJywgZXZlbnQ/LnNlYXJjaFN0cmluZyA/PyAnJylcbiAgICAgIDogcGFyYW1zO1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PGFueVtdPih0aGlzLmVudj8ucmlzayArICdjYXRlZ29yeS9saXN0Jywge1xuICAgICAgcGFyYW1zLFxuICAgICAgaGVhZGVycyxcbiAgICB9KTtcbiAgfVxuXG4gIGdldFJpc2tDYXRlZ29yaWVzQ291bnQoZXZlbnQ/OiBhbnkpIHtcbiAgICBjb25zdCBoZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKCkuc2V0KFxuICAgICAgJ3Rva2VuJyxcbiAgICAgIHRoaXMuYXV0aFNlcnZpY2UuZ2V0QXV0aG9yaXphdGlvblRva2VuKClcbiAgICApO1xuICAgIGxldCBwYXJhbXMgPSBuZXcgSHR0cFBhcmFtcygpO1xuICAgIHBhcmFtcyA9IGV2ZW50Py5zZWFyY2hTdHJpbmdcbiAgICAgID8gcGFyYW1zLmFwcGVuZCgncScsIGV2ZW50Py5zZWFyY2hTdHJpbmcgPz8gJycpXG4gICAgICA6IHBhcmFtcztcbiAgICBpZiAoZXZlbnQ/LnJjX2lkcz8ubGVuZ3RoKSB7XG4gICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdyY19pZHMnLCBldmVudC5yY19pZHMuam9pbignLCcpKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8YW55W10+KHRoaXMuZW52Py5yaXNrICsgJ2NhdGVnb3J5L2NvdW50Jywge1xuICAgICAgcGFyYW1zLFxuICAgICAgaGVhZGVycyxcbiAgICB9KTtcbiAgfVxuXG4gIGdldFJpc2tzKHBheWxvYWQ/OiBhbnkpIHtcbiAgICBjb25zdCBoZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKCkuc2V0KFxuICAgICAgJ3Rva2VuJyxcbiAgICAgIHRoaXMuYXV0aFNlcnZpY2UuZ2V0QXV0aG9yaXphdGlvblRva2VuKClcbiAgICApO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxhbnlbXT4oXG4gICAgICB0aGlzLmVudj8ucmlzayArICdjYXRlZ29yeS9yaXNrbGlzdCcsXG4gICAgICBwYXlsb2FkLFxuICAgICAge1xuICAgICAgICBoZWFkZXJzLFxuICAgICAgfVxuICAgICk7XG4gIH1cblxuICBnZXRCdXNpbmVzc0N5Y2xlKCkge1xuICAgIGxldCBidXNpbmVzc0N5Y2xlID0gSlNPTi5wYXJzZShcbiAgICAgIGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdidXNpbmVzc0N5Y2xlJykgPz8gJ3t9J1xuICAgICk7XG4gICAgbGV0IGN1cnJlbnRCdXNpbmVzc0N5Y2xlID0ge1xuICAgICAgc2VsZWN0ZWRfY3ljbGU6IGJ1c2luZXNzQ3ljbGVcbiAgICAgICAgPyBidXNpbmVzc0N5Y2xlPy5zZWxlY3RlZEN5Y2xlPy5zdGFydF9kYXRlICtcbiAgICAgICAgICAnLScgK1xuICAgICAgICAgIGJ1c2luZXNzQ3ljbGU/LnNlbGVjdGVkQ3ljbGU/LmVuZF9kYXRlXG4gICAgICAgIDogJycsXG4gICAgICBzdGFydF9kYXRlOiBidXNpbmVzc0N5Y2xlID8gYnVzaW5lc3NDeWNsZT8uc2VsZWN0ZWRDeWNsZT8uc3RhcnRfZGF0ZSA6ICcnLFxuICAgICAgZW5kX2RhdGU6IGJ1c2luZXNzQ3ljbGUgPyBidXNpbmVzc0N5Y2xlPy5zZWxlY3RlZEN5Y2xlPy5lbmRfZGF0ZSA6ICcnLFxuICAgICAgc2VsZWN0ZWRfY3ljbGVfYXJyOiBidXNpbmVzc0N5Y2xlXG4gICAgICAgID8gYnVzaW5lc3NDeWNsZT8uc2VsZWN0ZWRDeWNsZT8uc2VsZWN0ZWRfY3ljbGVfYXJyXG4gICAgICAgIDogW10sXG4gICAgfTtcbiAgICByZXR1cm4gY3VycmVudEJ1c2luZXNzQ3ljbGU7XG4gIH1cblxuICBnZXRQcm9ncmFtc0xpc3QocmVxOiBhbnkpIHtcbiAgICAvLyB0aGlzLmdldFVzZXJEZXRhaWxzKCk7XG4gICAgbGV0IGh0dHBPcHRpb25zOiBhbnkgPSB7fTtcbiAgICBpZiAocmVxPy5wYXJhbXMpIHtcbiAgICAgIGh0dHBPcHRpb25zLnBhcmFtcyA9IHJlcS5wYXJhbXM7XG4gICAgfVxuICAgIGlmIChyZXE/LmhlYWRlcnMpIHtcbiAgICAgIGxldCBoZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKCk7XG4gICAgICBodHRwT3B0aW9ucy5oZWFkZXJzID0gaGVhZGVycy5hcHBlbmQoXG4gICAgICAgICdwYXlsb2FkLW9iamVjdCcsXG4gICAgICAgIEpTT04uc3RyaW5naWZ5KHJlcS5oZWFkZXJzKVxuICAgICAgKTtcbiAgICAgIGh0dHBPcHRpb25zLmhlYWRlcnMgPSBodHRwT3B0aW9ucy5oZWFkZXJzLmFwcGVuZChcbiAgICAgICAgJ3Rva2VuJyxcbiAgICAgICAgdGhpcy5hdXRoU2VydmljZS5nZXRBdXRob3JpemF0aW9uVG9rZW4oKVxuICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5odHRwXG4gICAgICAuZ2V0PGFueVtdPihcbiAgICAgICAgdGhpcy5lbnY/LnByb2dyYW1FbmRwb2ludCArICcvY2F0ZWdvcmllc0xpc3Q/b3duZXJfbGlzdD0xJyxcbiAgICAgICAgaHR0cE9wdGlvbnNcbiAgICAgIClcbiAgICAgIC5waXBlKHJldHJ5KDIpKTtcbiAgfVxuXG4gIGdldFByb2dyYW1zTGlzdENvdW50KHJlcTogYW55KSB7XG4gICAgbGV0IGh0dHBPcHRpb25zOiBhbnkgPSB7fTtcbiAgICBpZiAocmVxPy5wYXJhbXMpIHtcbiAgICAgIGh0dHBPcHRpb25zLnBhcmFtcyA9IHJlcS5wYXJhbXM7XG4gICAgfVxuICAgIGlmIChyZXE/LmhlYWRlcnMpIHtcbiAgICAgIGxldCBoZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKCk7XG4gICAgICBodHRwT3B0aW9ucy5oZWFkZXJzID0gaGVhZGVycy5hcHBlbmQoXG4gICAgICAgICdwYXlsb2FkLW9iamVjdCcsXG4gICAgICAgIEpTT04uc3RyaW5naWZ5KHJlcT8uaGVhZGVycylcbiAgICAgICk7XG4gICAgICBodHRwT3B0aW9ucy5oZWFkZXJzID0gaHR0cE9wdGlvbnMuaGVhZGVycy5hcHBlbmQoXG4gICAgICAgICd0b2tlbicsXG4gICAgICAgIHRoaXMuYXV0aFNlcnZpY2UuZ2V0QXV0aG9yaXphdGlvblRva2VuKClcbiAgICAgICk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgIC5nZXQ8YW55W10+KHRoaXMuZW52Py5wcm9ncmFtRW5kcG9pbnQgKyAnL292ZXJ2aWV3LWNvdW50JywgaHR0cE9wdGlvbnMpXG4gICAgICAucGlwZShyZXRyeSgyKSk7XG4gIH1cblxuICBnZXRTdWJDYXRlZ29yeUxpc3QocGF5bG9hZDogYW55KSB7XG4gICAgaWYgKHBheWxvYWQ/LnNjb3BlVHlwZSA9PT0gJ25vdF9jb21wbGV0ZWQnKSB7XG4gICAgICBwYXlsb2FkLnNjb3BlVHlwZSA9ICdub3RDb21wbGV0ZWQnO1xuICAgIH1cbiAgICBsZXQgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpO1xuICAgIGhlYWRlcnMgPSBoZWFkZXJzLmFwcGVuZChcbiAgICAgICdwYXlsb2FkLW9iamVjdCcsXG4gICAgICBKU09OLnN0cmluZ2lmeShwYXlsb2FkPy5idXNpbmVzc0N5Y2xlKVxuICAgICk7XG4gICAgaGVhZGVycyA9IGhlYWRlcnMuYXBwZW5kKCd0b2tlbicsIHRoaXMuYXV0aFNlcnZpY2UuZ2V0QXV0aG9yaXphdGlvblRva2VuKCkpO1xuICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgIC5nZXQ8YW55PihcbiAgICAgICAgdGhpcy5lbnY/LnByb2dyYW1FbmRwb2ludCArXG4gICAgICAgICAgJy9zdWJDYXRlZ29yaWVzP2lzQnVzaW5lc3NDeWNsZT10cnVlJnBhcmVudElkPScgK1xuICAgICAgICAgIHBheWxvYWQ/LmlkICtcbiAgICAgICAgICAnJnR5cGU9JyArXG4gICAgICAgICAgcGF5bG9hZD8uc2NvcGVUeXBlICtcbiAgICAgICAgICAnJmNhbGxGcm9tPWdyYycgK1xuICAgICAgICAgIChwYXlsb2FkPy5zZWFyY2hUZXh0ID8gJyZxPScgKyBlbmNvZGVVUkkocGF5bG9hZD8uc2VhcmNoVGV4dCkgOiAnJykgK1xuICAgICAgICAgIChwYXlsb2FkPy5uYW1lID8gJyZzb3J0Qnk9JyArIHBheWxvYWQ/Lm5hbWUgOiAnJykgK1xuICAgICAgICAgIChwYXlsb2FkPy5zb3J0aW5nQ291bnQgPyAnJnNvcnRWYWx1ZT0nICsgcGF5bG9hZD8uc29ydGluZ0NvdW50IDogJycpICtcbiAgICAgICAgICAoJyZwYWdlPScgKyBwYXlsb2FkPy5wYWdlID8/IDEpLFxuICAgICAgICB7IGhlYWRlcnMgfVxuICAgICAgKVxuICAgICAgLnBpcGUocmV0cnkoMSkpO1xuICB9XG5cbiAgZ2V0UmVzcG9uc2liaWxpdHlCeUNhdGVnb3J5SWQoXG4gICAgcmVxOiBhbnksXG4gICAgcGF5bG9hZD86IGFueSxcbiAgICBmaWx0ZXJQb2xpY3lEYXRhPzogYW55XG4gICkge1xuICAgIC8vIGh0dHBzOi8vZGV2YXBpLnYtY29tcGx5LmNvbS9jYXRlZ29yeS9lZGl0Q2F0ZWdvcnlcbiAgICBsZXQgaHR0cE9wdGlvbnM6IGFueSA9IHt9O1xuICAgIGh0dHBPcHRpb25zLnBhcmFtcyA9IHJlcTtcbiAgICBsZXQgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpO1xuICAgIC8vIGhlYWRlcnMgPSBoZWFkZXJzLmFwcGVuZCgneC1idXNpbmVzcy1jeWNsZScsSlNPTi5zdHJpbmdpZnkocGF5bG9hZCkpO1xuICAgIGhlYWRlcnMgPSBoZWFkZXJzLmFwcGVuZCgncGF5bG9hZC1vYmplY3QnLCBKU09OLnN0cmluZ2lmeShwYXlsb2FkKSk7XG4gICAgaGVhZGVycyA9IGhlYWRlcnMuYXBwZW5kKCd0b2tlbicsIHRoaXMuYXV0aFNlcnZpY2UuZ2V0QXV0aG9yaXphdGlvblRva2VuKCkpO1xuICAgIGh0dHBPcHRpb25zLmhlYWRlcnMgPSBoZWFkZXJzO1xuICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgIC5nZXQodGhpcy5lbnY/LnByb2dyYW1FbmRwb2ludCArICcvcmVzcG9uc2liaWxpdHlMaXN0JywgaHR0cE9wdGlvbnMpXG4gICAgICAucGlwZShyZXRyeSgxKSk7XG4gIH1cbn1cbiJdfQ==
@@ -3,17 +3,14 @@ import { CommonModule } from '@angular/common';
3
3
  import { GetSelectedValuePipe } from './get-selected-value.pipe';
4
4
  import { IsAttributesValidPipe } from './is-attributes-valid.pipe';
5
5
  import { UniqueResponsibilitiesPipe } from './unique-responsibilities.pipe';
6
- import { GetUserDetailsPipe } from './get-user-details.pipe';
7
6
  import * as i0 from "@angular/core";
8
7
  export class WorkflowPipesModule {
9
8
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: WorkflowPipesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
10
9
  static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: WorkflowPipesModule, declarations: [GetSelectedValuePipe,
11
10
  IsAttributesValidPipe,
12
- UniqueResponsibilitiesPipe,
13
- GetUserDetailsPipe], imports: [CommonModule], exports: [GetSelectedValuePipe,
11
+ UniqueResponsibilitiesPipe], imports: [CommonModule], exports: [GetSelectedValuePipe,
14
12
  IsAttributesValidPipe,
15
- UniqueResponsibilitiesPipe,
16
- GetUserDetailsPipe] }); }
13
+ UniqueResponsibilitiesPipe] }); }
17
14
  static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: WorkflowPipesModule, imports: [CommonModule] }); }
18
15
  }
19
16
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: WorkflowPipesModule, decorators: [{
@@ -23,15 +20,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
23
20
  GetSelectedValuePipe,
24
21
  IsAttributesValidPipe,
25
22
  UniqueResponsibilitiesPipe,
26
- GetUserDetailsPipe
27
23
  ],
28
24
  imports: [CommonModule],
29
25
  exports: [
30
26
  GetSelectedValuePipe,
31
27
  IsAttributesValidPipe,
32
28
  UniqueResponsibilitiesPipe,
33
- GetUserDetailsPipe
34
29
  ],
35
30
  }]
36
31
  }] });
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya2Zsb3ctcGlwZXMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdngtd29ya2Zsb3ctZW5naW5lL3NyYy9saWIvd29ya2Zsb3cvc2hhcmVkL3dvcmtmbG93LXBpcGVzL3dvcmtmbG93LXBpcGVzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNqRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUM1RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7QUFpQjdELE1BQU0sT0FBTyxtQkFBbUI7K0dBQW5CLG1CQUFtQjtnSEFBbkIsbUJBQW1CLGlCQWI1QixvQkFBb0I7WUFDcEIscUJBQXFCO1lBQ3JCLDBCQUEwQjtZQUMxQixrQkFBa0IsYUFFVixZQUFZLGFBRXBCLG9CQUFvQjtZQUNwQixxQkFBcUI7WUFDckIsMEJBQTBCO1lBQzFCLGtCQUFrQjtnSEFHVCxtQkFBbUIsWUFScEIsWUFBWTs7NEZBUVgsbUJBQW1CO2tCQWYvQixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRTt3QkFDWixvQkFBb0I7d0JBQ3BCLHFCQUFxQjt3QkFDckIsMEJBQTBCO3dCQUMxQixrQkFBa0I7cUJBQ25CO29CQUNELE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQztvQkFDdkIsT0FBTyxFQUFFO3dCQUNQLG9CQUFvQjt3QkFDcEIscUJBQXFCO3dCQUNyQiwwQkFBMEI7d0JBQzFCLGtCQUFrQjtxQkFDbkI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEdldFNlbGVjdGVkVmFsdWVQaXBlIH0gZnJvbSAnLi9nZXQtc2VsZWN0ZWQtdmFsdWUucGlwZSc7XG5pbXBvcnQgeyBJc0F0dHJpYnV0ZXNWYWxpZFBpcGUgfSBmcm9tICcuL2lzLWF0dHJpYnV0ZXMtdmFsaWQucGlwZSc7XG5pbXBvcnQgeyBVbmlxdWVSZXNwb25zaWJpbGl0aWVzUGlwZSB9IGZyb20gJy4vdW5pcXVlLXJlc3BvbnNpYmlsaXRpZXMucGlwZSc7XG5pbXBvcnQgeyBHZXRVc2VyRGV0YWlsc1BpcGUgfSBmcm9tICcuL2dldC11c2VyLWRldGFpbHMucGlwZSc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIEdldFNlbGVjdGVkVmFsdWVQaXBlLFxuICAgIElzQXR0cmlidXRlc1ZhbGlkUGlwZSxcbiAgICBVbmlxdWVSZXNwb25zaWJpbGl0aWVzUGlwZSxcbiAgICBHZXRVc2VyRGV0YWlsc1BpcGVcbiAgXSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXG4gIGV4cG9ydHM6IFtcbiAgICBHZXRTZWxlY3RlZFZhbHVlUGlwZSxcbiAgICBJc0F0dHJpYnV0ZXNWYWxpZFBpcGUsXG4gICAgVW5pcXVlUmVzcG9uc2liaWxpdGllc1BpcGUsXG4gICAgR2V0VXNlckRldGFpbHNQaXBlXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIFdvcmtmbG93UGlwZXNNb2R1bGUge31cbiJdfQ==
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya2Zsb3ctcGlwZXMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdngtd29ya2Zsb3ctZW5naW5lL3NyYy9saWIvd29ya2Zsb3cvc2hhcmVkL3dvcmtmbG93LXBpcGVzL3dvcmtmbG93LXBpcGVzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNqRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQzs7QUFlNUUsTUFBTSxPQUFPLG1CQUFtQjsrR0FBbkIsbUJBQW1CO2dIQUFuQixtQkFBbUIsaUJBWDVCLG9CQUFvQjtZQUNwQixxQkFBcUI7WUFDckIsMEJBQTBCLGFBRWxCLFlBQVksYUFFcEIsb0JBQW9CO1lBQ3BCLHFCQUFxQjtZQUNyQiwwQkFBMEI7Z0hBR2pCLG1CQUFtQixZQVBwQixZQUFZOzs0RkFPWCxtQkFBbUI7a0JBYi9CLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLG9CQUFvQjt3QkFDcEIscUJBQXFCO3dCQUNyQiwwQkFBMEI7cUJBQzNCO29CQUNELE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQztvQkFDdkIsT0FBTyxFQUFFO3dCQUNQLG9CQUFvQjt3QkFDcEIscUJBQXFCO3dCQUNyQiwwQkFBMEI7cUJBQzNCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBHZXRTZWxlY3RlZFZhbHVlUGlwZSB9IGZyb20gJy4vZ2V0LXNlbGVjdGVkLXZhbHVlLnBpcGUnO1xuaW1wb3J0IHsgSXNBdHRyaWJ1dGVzVmFsaWRQaXBlIH0gZnJvbSAnLi9pcy1hdHRyaWJ1dGVzLXZhbGlkLnBpcGUnO1xuaW1wb3J0IHsgVW5pcXVlUmVzcG9uc2liaWxpdGllc1BpcGUgfSBmcm9tICcuL3VuaXF1ZS1yZXNwb25zaWJpbGl0aWVzLnBpcGUnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBHZXRTZWxlY3RlZFZhbHVlUGlwZSxcbiAgICBJc0F0dHJpYnV0ZXNWYWxpZFBpcGUsXG4gICAgVW5pcXVlUmVzcG9uc2liaWxpdGllc1BpcGUsXG4gIF0sXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICBleHBvcnRzOiBbXG4gICAgR2V0U2VsZWN0ZWRWYWx1ZVBpcGUsXG4gICAgSXNBdHRyaWJ1dGVzVmFsaWRQaXBlLFxuICAgIFVuaXF1ZVJlc3BvbnNpYmlsaXRpZXNQaXBlLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBXb3JrZmxvd1BpcGVzTW9kdWxlIHt9XG4iXX0=