vcomply-workflow-engine 2.5.8 → 2.5.11

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.
@@ -56,7 +56,6 @@ export class DefineFrameworkListingComponent {
56
56
  this.fetchFrameworkCategoryList();
57
57
  }
58
58
  fetchFrameworkCount() {
59
- debugger;
60
59
  this.frameworkService.fetchFrameworkCount().subscribe({
61
60
  next: (res) => { this.frameworkCount = res; },
62
61
  error: (err) => {
@@ -82,10 +81,8 @@ export class DefineFrameworkListingComponent {
82
81
  }
83
82
  fetchFrameworkCategoryList() {
84
83
  this.isMainLoader = true;
85
- debugger;
86
84
  this.frameworkListSubscription = this.frameworkService.fetchFrameworkInCategory(this.apiFrameworkPayload).subscribe({
87
85
  next: (res) => {
88
- debugger;
89
86
  console.log("response", res);
90
87
  this.frameworkData = res;
91
88
  this.isMainLoader = false;
@@ -245,4 +242,4 @@ DefineFrameworkListingComponent.propDecorators = {
245
242
  mode: [{ type: Input }],
246
243
  setFramework: [{ type: Input, args: ['selectedFramework',] }]
247
244
  };
248
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmaW5lLWZyYW1ld29yay1saXN0aW5nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Z4LXdvcmtmbG93LWVuZ2luZS9zcmMvbGliL3dvcmtmbG93LXByb2dyYW0vY3JlYXRlLXByb2dyYW0tdWkvZGVmaW5lLWZyYW1ld29yay1saXN0aW5nL2RlZmluZS1mcmFtZXdvcmstbGlzdGluZy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUvRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQU92RCxNQUFNLE9BQU8sK0JBQStCO0lBZ0IxQyxZQUFvQixnQkFBaUM7UUFBakMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFpQjtRQWYzQyxXQUFNLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUM1QixTQUFJLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUMzQixTQUFJLEdBQUcsUUFBUSxDQUFDO1FBV3pCLGNBQVMsR0FBRyxJQUFJLENBQUM7UUFhakIsaUJBQVksR0FBRyxJQUFJLENBQUM7UUFDcEIsbUJBQWMsR0FBTSxJQUFJLENBQUM7UUFVM0IsY0FBUyxHQUFHLEVBQUUsQ0FBQztRQUNiLHdCQUFtQixHQUFHO1lBQ3BCLElBQUksRUFBQyxDQUFDO1lBQ04sTUFBTSxFQUFDLEVBQUU7WUFDVCxJQUFJLEVBQUMsQ0FBQztTQUVOLENBQUE7UUFDRixnQkFBVyxHQUFzQyxvQkFBb0IsQ0FBQztRQUN0RSx3QkFBbUIsR0FBbUUsYUFBYSxDQUFDO1FBRXBHLG1CQUFjLEdBQUc7WUFDZixhQUFhLEVBQUMsQ0FBQztZQUNmLFdBQVcsRUFBQyxDQUFDO1lBQ2IsbUJBQW1CLEVBQUMsQ0FBQztZQUNyQixRQUFRLEVB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QVIsUUFBUSx1QkFBUixRQUFRLENBQUUsR0FBRyxDQUFDLENBQUE7U0FDaEQ7YUFBSTtZQUNILElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFDLENBQUMsQ0FBQyxDQUFBO1NBQzVDO0lBQ0gsQ0FBQztJQUNELFlBQVksQ0FBQyxLQUFVLEVBQUUsR0FBVztRQUNsQyxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQ2YsS0FBSzthQUNGLE1BQU0sQ0FDTCxDQUFDLEdBQVEsRUFBRSxJQUFTLEVBQUUsRUFBRSxDQUFDLENBQ3ZCLElBQUksSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksR0FBRyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsSUFBSSxDQUFDO1lBQzdDLEdBQUcsQ0FDSixFQUNELElBQUksR0FBRyxFQUFFLENBQ1Y7YUFDQSxNQUFNLEVBQUUsQ0FDWixDQUFDO0lBQ0osQ0FBQzs7O1lBeFBGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsOEJBQThCO2dCQUN4Qyxvbm1CQUF3RDs7YUFFekQ7OztZQU5RLGdCQUFnQjs7O3FCQVF0QixNQUFNO21CQUNOLE1BQU07bUJBQ04sS0FBSzsyQkFDTCxLQUFLLFNBQUMsbUJBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiXHJcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IEZyYW1ld29ya1NlcnZpY2UgfSBmcm9tICcuL2ZyYW1ld29yay5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXBwLWRlZmluZS1mcmFtZXdvcmstbGlzdGluZycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2RlZmluZS1mcmFtZXdvcmstbGlzdGluZy5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vZGVmaW5lLWZyYW1ld29yay1saXN0aW5nLmNvbXBvbmVudC5sZXNzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIERlZmluZUZyYW1ld29ya0xpc3RpbmdDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIEBPdXRwdXQoKSBjYW5jZWwgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQE91dHB1dCgpIG5leHQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQElucHV0KCkgbW9kZSA9ICdDUkVBVEUnO1xyXG4gIEBJbnB1dCgnc2VsZWN0ZWRGcmFtZXdvcmsnKSBzZXQgc2V0RnJhbWV3b3JrKHZhbHVlOiBhbnkpIHtcclxuICAgIGlmKHZhbHVlICYmIHZhbHVlPy5faWQpe1xyXG4gICAgICB0aGlzLnNlbGVjdGVkRnJhbWV3b3JrID0gdmFsdWU7XHJcbiAgICAgIHRoaXMuYWN0aXZlRnJhbWV3b3JrVHlwZSA9IFsnT1RIRVJTJywnUkVHVUxBVElPTlMnICwgJ1NUQU5EQVJEUycgLCAnSU5URVJOQUxfQ09OVFJPTFMnXVt2YWx1ZT8udHlwZV0gPz8gMTtcclxuICAgICAgdGhpcy5jdXJyZW50VmlldyA9ICdGUkFNRVdPUksnO1xyXG4gICAgICB0aGlzLmluU2NvcGUgPSB2YWx1ZT8uaW5fc2NvcGU7XHJcbiAgICAgIHRoaXMuaW5TY29wZUlkcyA9IHRoaXMuaW5TY29wZS5tYXAoKGVsZTphbnkpID0+IGVsZT8uX2lkKTtcclxuICAgICAgdGhpcy5sb2FkRnJhbWV3b3JrRGF0YSgpXHJcbiAgICB9XHJcbiAgfVxyXG4gIGFuaW1hdGlvbiA9IHRydWU7XHJcbiAgZnJhbWV3b3JrTGlzdFN1YnNjcmlwdGlvbiAhOlN1YnNjcmlwdGlvbjtcclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGZyYW1ld29ya1NlcnZpY2U6RnJhbWV3b3JrU2VydmljZSkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5hbmltYXRpb24gPSB0cnVlO1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIHRoaXMuYW5pbWF0aW9uID0gZmFsc2U7XHJcbiAgICB9LCAzMDApO1xyXG4gICAgdGhpcy5mZXRjaEZyYW1ld29ya0NvdW50KCk7XHJcbiAgICB0aGlzLmZldGNoRnJhbWV3b3JrQ2F0ZWdvcnlMaXN0KCk7XHJcbiAgfVxyXG5cclxuICBpc01haW5Mb2FkZXIgPSB0cnVlO1xyXG4gIGZyYW1ld29ya0NvdW50OmFueT0gbnVsbDtcclxuICBmZXRjaEZyYW1ld29ya0NvdW50KCl7XHJcbiAgICBkZWJ1Z2dlclxyXG4gICAgdGhpcy5mcmFtZXdvcmtTZXJ2aWNlLmZldGNoRnJhbWV3b3JrQ291bnQoKS5zdWJzY3JpYmUoe1xyXG4gICAgICBuZXh0OihyZXM6YW55KT0+e3RoaXMuZnJhbWV3b3JrQ291bnQgPSByZXN9LFxyXG4gICAgICBlcnJvcjooZXJyOmFueSk9PntcclxuICAgICAgICAvL2hhbmRsZSBlcnJvciBoZXJlXHJcbiAgICAgIH1cclxuICAgIH0pXHJcbiAgfVxyXG5zZWFyY2hLZXkgPSAnJztcclxuICBhcGlGcmFtZXdvcmtQYXlsb2FkID0ge1xyXG4gICAgcGFnZToxLFxyXG4gICAgc2VhcmNoOicnLFxyXG4gICAgdHlwZToxLFxyXG5cclxuICAgfVxyXG4gIGN1cnJlbnRWaWV3IDogJ0ZSQU1FV09SS19DQVRFR09SWScgfCAnRlJBTUVXT1JLJz0nRlJBTUVXT1JLX0NBVEVHT1JZJztcclxuICBhY3RpdmVGcmFtZXdvcmtUeXBlIDonUkVHVUxBVElPTlMnIHwgJ1NUQU5EQVJEUycgfCAnSU5URVJOQUxfQ09OVFJPTFMnIHwnT1RIRVJTJ3xhbnk9ICdSRUdVTEFUSU9OUyc7XHJcblxyXG4gIGZyYW1ld29ya1R5cGVzID0ge1xyXG4gICAgJ1JFR1VMQVRJT05TJzoxLFxyXG4gICAgJ1NUQU5EQVJEUyc6MixcclxuICAgICdJTlRFUk5BTF9DT05UUk9MUyc6MyxcclxuICAgICdPVEhFUlMnOjBcclxuICB9XHJcbiAgXHJcblxyXG5cclxuXHJcbiAgZnJhbWV3b3JrRGF0YTphbnkgPSBbXVxyXG4gIGNoYW5nZVR5cGUodHlwZTonUkVHVUxBVElPTlMnIHwgJ1NUQU5EQVJEUycgfCAnSU5URVJOQUxfQ09OVFJPTFMnIHwnT1RIRVJTJyl7XHJcbiAgICB0aGlzLmFjdGl2ZUZyYW1ld29ya1R5cGUgPSB0eXBlO1xyXG4gICAgdGhpcy5hcGlGcmFtZXdvcmtQYXlsb2FkLnBhZ2UgPSAxO1xyXG4gICAgdGhpcy5hcGlGcmFtZXdvcmtQYXlsb2FkLnR5cGUgPSB0aGlzLmZyYW1ld29ya1R5cGVzW3R5cGVdO1xyXG4gICAgdGhpcy5mcmFtZXdvcmtMaXN0U3Vic2NyaXB0aW9uID8gIHRoaXMuZnJhbWV3b3JrTGlzdFN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpIDpudWxsO1xyXG4gICAgdGhpcy5mZXRjaEZyYW1ld29ya0NhdGVnb3J5TGlzdCgpXHJcbiAgfVxyXG5cclxuICBleGVjdXRlU2VhcmNoKCl7XHJcbiAgICB0aGlzLmFwaUZyYW1ld29ya1BheWxvYWQucGFnZT0xO1xyXG4gICAgdGhpcy5hcGlGcmFtZXdvcmtQYXlsb2FkLnNlYXJjaCA9IHRoaXMuc2VhcmNoS2V5O1xyXG4gICAgdGhpcy5mZXRjaEZyYW1ld29ya0NhdGVnb3J5TGlzdCgpO1xyXG4gIH1cclxuXHJcbiAgcGFnZUNoYW5nZWQoZXZ0OmFueSl7XHJcblxyXG4gICAgdGhpcy5hcGlGcmFtZXdvcmtQYXlsb2FkLnBhZ2UgPSBldnQ7XHJcbiAgICB0aGlzLmZldGNoRnJhbWV3b3JrQ2F0ZWdvcnlMaXN0KClcclxuICB9XHJcblxyXG5cclxuICBmZXRjaEZyYW1ld29ya0NhdGVnb3J5TGlzdCgpe1xyXG4gICAgdGhpcy5pc01haW5Mb2FkZXIgPSB0cnVlO1xyXG5cclxuICAgIGRlYnVnZ2VyXHJcbiAgICB0aGlzLmZyYW1ld29ya0xpc3RTdWJzY3JpcHRpb24gPSB0aGlzLmZyYW1ld29ya1NlcnZpY2UuZmV0Y2hGcmFtZXdvcmtJbkNhdGVnb3J5KHRoaXMuYXBpRnJhbWV3b3JrUGF5bG9hZCkuc3Vic2NyaWJlKHtcclxuICAgIG5leHQ6KHJlczphbnkpPT57XHJcbiAgICAgIGRlYnVnZ2VyXHJcbiAgICAgIGNvbnNvbGUubG9nKFwicmVzcG9uc2VcIixyZXMpO3RoaXMuZnJhbWV3b3JrRGF0YSA9IHJlcyA7IHRoaXMuaXNNYWluTG9hZGVyID0gZmFsc2V9LFxyXG4gICAgZXJyb3I6KCk9Pnt0aGlzLmlzTWFpbkxvYWRlciA9IGZhbHNlfVxyXG4gIH0pXHJcbiAgfVxyXG4gIHNlbGVjdGVkRnJhbWV3b3JrICE6YW55XHJcbiAgc2VsZWN0RnJhbWV3b3JrKGV2dDphbnksZnJhbWV3b3JrOmFueSl7XHJcbiAgICBpZihldnQ/LnRhcmdldD8uY2hlY2tlZCl7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRGcmFtZXdvcmsgID0gZnJhbWV3b3JrO1xyXG4gICAgICBjb25zb2xlLmxvZyh0aGlzLnNlbGVjdGVkRnJhbWV3b3JrKVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZXhwYW5kZWRGcmFtZXdvcmtJZDphbnkgPSAnJztcclxuICBleHBhbmRDb2xsYXBzZUZyYW1ld29yayhmcmFtZXdvcms6YW55KXtcclxuICAgIGlmKHRoaXMuZXhwYW5kZWRGcmFtZXdvcmtJZCA9PT0gZnJhbWV3b3JrPy5faWQpe1xyXG4gICAgICB0aGlzLmV4cGFuZGVkRnJhbWV3b3JrSWQgPSAnJ1xyXG4gICAgfWVsc2V7XHJcbiAgICAgIHRoaXMuZXhwYW5kZWRGcmFtZXdvcmtJZCA9IGZyYW1ld29yaz8uX2lkO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcmVtb3ZlU2VsZWN0ZWRGcmFtZXdvcmsoKXtcclxuICAgIHRoaXMuc2VsZWN0ZWRGcmFtZXdvcmsgPSBudWxsO1xyXG4gICAgdGhpcy5zZWxlY3RlZEZyYW1ld29ya0RhdGEgPSBudWxsO1xyXG4gIH1cclxuXHJcbi8vLy8vLy8vLy8vLy8vLy8vL1xyXG5cclxuc2VhcmNoS2V5Zm9yRnJhbWV3b3JrID0gJyc7XHJcbiAgc2VsZWN0ZWRGcmFtZXdvcmtEYXRhOmFueT0gbnVsbDtcclxuICBhbGxDb250cm9sczphbnkgPSBbXVxyXG4gIGluU2NvcGU6YW55ID0gW107XHJcbiAgb3V0U2NvcGU6YW55ID0gW107XHJcbiAgaW5TY29wZUlkczphbnkgPVtdO1xyXG4gIGFsbENvbnRyb2xzU2VsZWN0ZWQgPSBmYWxzZTtcclxuICBpc3N1YkxvYWRpbmcgPSB0cnVlO1xyXG4gIGxvYWRGcmFtZXdvcmtEYXRhKCl7XHJcbiAgICB0aGlzLmlzc3ViTG9hZGluZyA9IHRydWU7XHJcbiAgICB0aGlzLmZyYW1ld29ya1NlcnZpY2UuZmV0Y2hDYXRlZ29yeUZvckZyYW1ld29yayh0aGlzLnNlbGVjdGVkRnJhbWV3b3JrPy5faWQpLnN1YnNjcmliZSh7XHJcbiAgICAgIG5leHQ6KHJlczphbnkpPT57XHJcbiAgICAgICAgY29uc29sZS5sb2coXCJuZXN0ZWRcIixyZXMpO1xyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRGcmFtZXdvcmtEYXRhID0gcmVzO1xyXG4gICAgICAgIHRoaXMuY2hlY2tBbGxFbGVtZW50cyh0aGlzLm1vZGUgPT09ICdFRElUJyA/IGZhbHNlIDogdHJ1ZSk7XHJcbiAgICAgICAgdGhpcy5pc3N1YkxvYWRpbmcgPSBmYWxzZTtcclxuXHJcbiAgICAgIH0sXHJcbiAgICAgIGVycm9yOigpPT57ICB0aGlzLmlzc3ViTG9hZGluZyA9IGZhbHNlO31cclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICBjaGVja0FsbEVsZW1lbnRzKHBvcHVsYXRlSW5TY29wZTogYW55KXtcclxuICAgIGxldCBhbGxFbGVtZW50OmFueSA9IFtdXHJcbiAgICB0aGlzLnNlbGVjdGVkRnJhbWV3b3JrRGF0YS5kYXRhPy5jaGlsZF9saXN0X2RldGFpbHM/LmZvckVhY2goKGVsZW1lbnQ6YW55KSA9PiB7XHJcbiAgICAgICBlbGVtZW50Py5jb250cm9sc0RhdGEuZm9yRWFjaCgoZWw6YW55KSA9PiB7YWxsRWxlbWVudC5wdXNoKGVsKX0pXHJcbiAgICB9KTtcclxuICAgIHRoaXMuYWxsQ29udHJvbHMgPSB0aGlzLnVuaXF1ZUJ5UHJvcChhbGxFbGVtZW50LCdfaWQnKTtcclxuICAgIGlmKHBvcHVsYXRlSW5TY29wZSl7XHJcbiAgICAgIHRoaXMuaW5TY29wZSA9IHRoaXMudW5pcXVlQnlQcm9wKGFsbEVsZW1lbnQsJ19pZCcpO1xyXG4gICAgfVxyXG4gICBcclxuICAgIHRoaXMuY2hlY2tTZWxlY3RBbGwoKTtcclxuICAgIHRoaXMuc2V0SW5zY29wZUlkcygpO1xyXG4gIH1cclxuXHJcbiAgY2hlY2tTZWxlY3RBbGwoKXtcclxuICAgIGNvbnN0IGFsbElkcyA9IHRoaXMuYWxsQ29udHJvbHMubWFwKChlbGU6YW55KSA9PiBlbGU/Ll9pZCk7XHJcbiAgICBjb25zdCBpblNjb3BlSWRzID0gdGhpcy5pblNjb3BlLm1hcCgoZWxlOmFueSkgPT4gZWxlPy5faWQpO1xyXG4gICAgdGhpcy5hbGxDb250cm9sc1NlbGVjdGVkID0gYWxsSWRzLnNvcnQoKT8udG9TdHJpbmcoKSA9PT0gaW5TY29wZUlkcy5zb3J0KCk/LnRvU3RyaW5nKClcclxuICB9XHJcbiBzZWxlY3RBbGwoZXZ0OmFueSl7XHJcbiAgICBpZihldnQ/LnRhcmdldD8uY2hlY2tlZCl7XHJcbiAgICAgIHRoaXMuY2hlY2tBbGxFbGVtZW50cyh0cnVlKTtcclxuICAgIH1lbHNle1xyXG4gICAgICB0aGlzLmluU2NvcGUgPSBbXTtcclxuICAgICAgdGhpcy5pblNjb3BlSWRzID0gW107XHJcbiAgICB9XHJcbiAgICB0aGlzLmNoZWNrU2VsZWN0QWxsKCk7XHJcbiB9XHJcbiAgc2V0SW5zY29wZUlkcygpe1xyXG4gICAgdGhpcy5pblNjb3BlSWRzID0gdGhpcy5pblNjb3BlLm1hcCgoZWw6YW55KSA9PiBlbD8uX2lkKVxyXG4gIH1cclxuXHJcbiAgc2VsZWN0SXRlbShldnQ6YW55LHBheWxvYWQ6YW55KXtcclxuICAgIGV2dD8udGFyZ2V0Py5jaGVja2VkID09PSB0cnVlID8gdGhpcy5tYW5pcHVsYXRlSXRlbSgnQUREJywgcGF5bG9hZCkgOiB0aGlzLm1hbmlwdWxhdGVJdGVtKCdERUxFVEUnLCBwYXlsb2FkKVxyXG4gIH1cclxuICBtYW5pcHVsYXRlSXRlbShhY3Rpb246ICdBREQnIHwgJ0RFTEVURScsIHBheWxvYWQ6IGFueSkge1xyXG4gICAgaWYgKGFjdGlvbiA9PT0gJ0FERCcpIHtcclxuICAgICAgdGhpcy5pblNjb3BlID0gdGhpcy51bmlxdWVCeVByb3AoWy4uLnRoaXMuaW5TY29wZSwgLi4uW3BheWxvYWRdXSwgJ19pZCcpO1xyXG4gICAgICB0aGlzLmluU2NvcGVJZHMgPSB0aGlzLmluU2NvcGUubWFwKChlbGU6IGFueSkgPT4gZWxlPy5faWQpXHJcbiAgICB9IGVsc2UgaWYgKGFjdGlvbiA9PT0gJ0RFTEVURScpIHtcclxuICAgICAgbGV0IGluZGV4ID0gdGhpcy5pblNjb3BlLmZpbmRJbmRleCgoZWxlOiBhbnkpID0+IGVsZT8uX2lkID09PSBwYXlsb2FkPy5faWQpO1xyXG4gICAgICBpZiAoaW5kZXggPiAtMSkge1xyXG4gICAgICAgIHRoaXMuaW5TY29wZSA9IHRoaXMuaW5TY29wZS5maWx0ZXIoKGVsZTogYW55KSA9PiBlbGU/Ll9pZCAhPT0gcGF5bG9hZD8uX2lkKTtcclxuICAgICAgICB0aGlzLmluU2NvcGVJZHMgPSB0aGlzLmluU2NvcGUubWFwKChlbGU6IGFueSkgPT4gZWxlPy5faWQpXHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgdGhpcy5jaGVja1NlbGVjdEFsbCgpO1xyXG4gIH1cclxuXHJcbiAgc2VsZWN0Q2F0ZWdvcnkoZXZ0OmFueSxwYXlsb2FkOmFueSl7XHJcbiAgICBldnQ/LnRhcmdldD8uY2hlY2tlZCA9PT0gdHJ1ZSA/IHRoaXMubWFuaXB1bGF0ZUNhdGVnb3J5KCdBREQnLCBwYXlsb2FkKSA6IHRoaXMubWFuaXB1bGF0ZUNhdGVnb3J5KCdERUxFVEUnLCBwYXlsb2FkKVxyXG4gIH1cclxuICBtYW5pcHVsYXRlQ2F0ZWdvcnkoYWN0aW9uOiAnQUREJyB8ICdERUxFVEUnLCBwYXlsb2FkOiBhbnkpIHtcclxuICAgIGlmIChhY3Rpb24gPT09ICdBREQnKSB7XHJcbiAgICAgIGNvbnN0IGl0ZW1zVG9iZUFkZGVkID0gcGF5bG9hZD8uY29udHJvbHNEYXRhOyBcclxuICAgICAgdGhpcy5pblNjb3BlID0gdGhpcy51bmlxdWVCeVByb3AoWy4uLnRoaXMuaW5TY29wZSwgLi4uaXRlbXNUb2JlQWRkZWRdLCAnX2lkJyk7XHJcbiAgICAgIHRoaXMuaW5TY29wZUlkcyA9IHRoaXMuaW5TY29wZS5tYXAoKGVsZTogYW55KSA9PiBlbGU/Ll9pZClcclxuICAgIH0gZWxzZSBpZiAoYWN0aW9uID09PSAnREVMRVRFJykge1xyXG4gICAgICBjb25zdCBpdGVtc1RvYmVSZW1vdmVkID0gcGF5bG9hZD8uY29udHJvbHNEYXRhLm1hcCgoZWw6YW55KT0+IGVsLl9pZCk7IFxyXG4gICAgICAgdGhpcy5pblNjb3BlID0gdGhpcy5pblNjb3BlLmZpbHRlcigoZWxlOmFueSk9PiAhaXRlbXNUb2JlUmVtb3ZlZC5pbmNsdWRlcyhlbGUuX2lkKSk7XHJcbiAgICAgICB0aGlzLmluU2NvcGVJZHMgPSB0aGlzLmluU2NvcGUubWFwKChlbGU6IGFueSkgPT4gZWxlPy5faWQpXHJcbiAgICAgXHJcbiAgICB9XHJcbiAgIHRoaXMuY2hlY2tTZWxlY3RBbGwoKTtcclxuICB9XHJcblxyXG4gIG5leHRIYW5kbGVyKCl7XHJcbiAgICBpZih0aGlzLmN1cnJlbnRWaWV3ID09PSAnRlJBTUVXT1JLX0NBVEVHT1JZJyl7XHJcbiAgICAgIHRoaXMuY3VycmVudFZpZXcgPSAnRlJBTUVXT1JLJztcclxuICAgICAgdGhpcy5sb2FkRnJhbWV3b3JrRGF0YSgpO1xyXG4gICAgfVxyXG4gICAgZWxzZXtcclxuICAgICAgdGhpcy5uZXh0LmVtaXQoey4uLnRoaXMuc2VsZWN0ZWRGcmFtZXdvcmssaW5fc2NvcGU6dGhpcy5pblNjb3BlLG91dF9zY29wZTogdGhpcy5hbGxDb250cm9scy5maWx0ZXIoKGVsZTphbnkpPT4gIXRoaXMuaW5TY29wZUlkcy5pbmNsdWRlcyhlbGU/Ll9pZCkpfSk7XHJcbiAgICAgIGNvbnNvbGUubG9nKFwiRmluYWwgcGF5bG9hZFwiLHsuLi50aGlzLnNlbGVjdGVkRnJhbWV3b3JrLGluX3Njb3BlOnRoaXMuaW5TY29wZSxvdXRTY29wZTogdGhpcy5hbGxDb250cm9scy5maWx0ZXIoKGVsZTphbnkpPT4gIXRoaXMuaW5TY29wZUlkcy5pbmNsdWRlcyhlbGU/Ll9pZCkpfSlcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNhbmNlbEhhbmRsZXIoKXtcclxuICAgIGlmKHRoaXMuY3VycmVudFZpZXcgPT09ICdGUkFNRVdPUksnKXtcclxuICAgICAgdGhpcy5jdXJyZW50VmlldyA9ICdGUkFNRVdPUktfQ0FURUdPUlknO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5jYW5jZWwuZW1pdCgpO1xyXG4gICAgfVxyXG4gIH1cclxuICBleHBhbmRlZFN1YkNhdGVnb3J5SWRzOmFueSA9IFtdO1xyXG4gIHN1YkNhdGVnb3J5RXhwYW5kQ29sbGFwc2UoY2F0ZWdvcnk6YW55KXtcclxuICAgIGNvbnNvbGUubG9nKGNhdGVnb3J5KVxyXG4gICAgY29uc3QgaW5kZXggPSB0aGlzLmV4cGFuZGVkU3ViQ2F0ZWdvcnlJZHMuaW5kZXhPZihjYXRlZ29yeT8uX2lkKTtcclxuICAgIGlmKGluZGV4IDwgMCAmJiBjYXRlZ29yeT8uY29udHJvbHNEYXRhPy5sZW5ndGgpe1xyXG4gICAgICB0aGlzLmV4cGFuZGVkU3ViQ2F0ZWdvcnlJZHMucHVzaChjYXRlZ29yeT8uX2lkKVxyXG4gICAgfWVsc2V7XHJcbiAgICAgIHRoaXMuZXhwYW5kZWRTdWJDYXRlZ29yeUlkcy5zcGxpY2UoaW5kZXgsMSlcclxuICAgIH1cclxuICB9XHJcbiAgdW5pcXVlQnlQcm9wKGFycmF5OiBhbnksIGtleTogc3RyaW5nKSB7XHJcbiAgICByZXR1cm4gQXJyYXkuZnJvbShcclxuICAgICAgYXJyYXlcclxuICAgICAgICAucmVkdWNlKFxyXG4gICAgICAgICAgKGFjYzogYW55LCBpdGVtOiBhbnkpID0+IChcclxuICAgICAgICAgICAgaXRlbSAmJiBpdGVtW2tleV0gJiYgYWNjLnNldChpdGVtW2tleV0sIGl0ZW0pLFxyXG4gICAgICAgICAgICBhY2NcclxuICAgICAgICAgICksXHJcbiAgICAgICAgICBuZXcgTWFwKClcclxuICAgICAgICApXHJcbiAgICAgICAgLnZhbHVlcygpXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbn1cclxuIl19
245
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmaW5lLWZyYW1ld29yay1saXN0aW5nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Z4LXdvcmtmbG93LWVuZ2luZS9zcmMvbGliL3dvcmtmbG93LXByb2dyYW0vY3JlYXRlLXByb2dyYW0tdWkvZGVmaW5lLWZyYW1ld29yay1saXN0aW5nL2RlZmluZS1mcmFtZXdvcmstbGlzdGluZy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUvRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQU92RCxNQUFNLE9BQU8sK0JBQStCO0lBZ0IxQyxZQUFvQixnQkFBaUM7UUFBakMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFpQjtRQWYzQyxXQUFNLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUM1QixTQUFJLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUMzQixTQUFJLEdBQUcsUUFBUSxDQUFDO1FBV3pCLGNBQVMsR0FBRyxJQUFJLENBQUM7UUFhakIsaUJBQVksR0FBRyxJQUFJLENBQUM7UUFDcEIsbUJBQWMsR0FBTSxJQUFJLENBQUM7UUFTM0IsY0FBUyxHQUFHLEVBQUUsQ0FBQztRQUNiLHdCQUFtQixHQUFHO1lBQ3BCLElBQUksRUFBQyxDQUFDO1lBQ04sTUFBTSxFQUFDLEVBQUU7WUFDVCxJQUFJLEVBQUMsQ0FBQztTQUVOLENBQUE7UUFDRixnQkFBVyxHQUFzQyxvQkFBb0IsQ0FBQztRQUN0RSx3QkFBbUIsR0FBbUUsYUFBYSxDQUFDO1FBRXBHLG1CQUFjLEdBQUc7WUFDZixhQUFhLEVBQUMsQ0FBQztZQUNmLFdBQVcsRUFBQyxDQUFDO1lBQ2IsbUJBQW1CLEVBQUMsQ0FBQztZQUNyQixRQUFRLEVB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QUFJO1lBQ0gsSUFBSSxDQUFDLHNCQUFzQixDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUMsQ0FBQyxDQUFDLENBQUE7U0FDNUM7SUFDSCxDQUFDO0lBQ0QsWUFBWSxDQUFDLEtBQVUsRUFBRSxHQUFXO1FBQ2xDLE9BQU8sS0FBSyxDQUFDLElBQUksQ0FDZixLQUFLO2FBQ0YsTUFBTSxDQUNMLENBQUMsR0FBUSxFQUFFLElBQVMsRUFBRSxFQUFFLENBQUMsQ0FDdkIsSUFBSSxJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxHQUFHLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxJQUFJLENBQUM7WUFDN0MsR0FBRyxDQUNKLEVBQ0QsSUFBSSxHQUFHLEVBQUUsQ0FDVjthQUNBLE1BQU0sRUFBRSxDQUNaLENBQUM7SUFDSixDQUFDOzs7WUFwUEYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSw4QkFBOEI7Z0JBQ3hDLG9ubUJBQXdEOzthQUV6RDs7O1lBTlEsZ0JBQWdCOzs7cUJBUXRCLE1BQU07bUJBQ04sTUFBTTttQkFDTixLQUFLOzJCQUNMLEtBQUssU0FBQyxtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgRnJhbWV3b3JrU2VydmljZSB9IGZyb20gJy4vZnJhbWV3b3JrLnNlcnZpY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhcHAtZGVmaW5lLWZyYW1ld29yay1saXN0aW5nJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZGVmaW5lLWZyYW1ld29yay1saXN0aW5nLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9kZWZpbmUtZnJhbWV3b3JrLWxpc3RpbmcuY29tcG9uZW50Lmxlc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRGVmaW5lRnJhbWV3b3JrTGlzdGluZ0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgQE91dHB1dCgpIGNhbmNlbCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgbmV4dCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBASW5wdXQoKSBtb2RlID0gJ0NSRUFURSc7XHJcbiAgQElucHV0KCdzZWxlY3RlZEZyYW1ld29yaycpIHNldCBzZXRGcmFtZXdvcmsodmFsdWU6IGFueSkge1xyXG4gICAgaWYodmFsdWUgJiYgdmFsdWU/Ll9pZCl7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRGcmFtZXdvcmsgPSB2YWx1ZTtcclxuICAgICAgdGhpcy5hY3RpdmVGcmFtZXdvcmtUeXBlID0gWydPVEhFUlMnLCdSRUdVTEFUSU9OUycgLCAnU1RBTkRBUkRTJyAsICdJTlRFUk5BTF9DT05UUk9MUyddW3ZhbHVlPy50eXBlXSA/PyAxO1xyXG4gICAgICB0aGlzLmN1cnJlbnRWaWV3ID0gJ0ZSQU1FV09SSyc7XHJcbiAgICAgIHRoaXMuaW5TY29wZSA9IHZhbHVlPy5pbl9zY29wZTtcclxuICAgICAgdGhpcy5pblNjb3BlSWRzID0gdGhpcy5pblNjb3BlLm1hcCgoZWxlOmFueSkgPT4gZWxlPy5faWQpO1xyXG4gICAgICB0aGlzLmxvYWRGcmFtZXdvcmtEYXRhKClcclxuICAgIH1cclxuICB9XHJcbiAgYW5pbWF0aW9uID0gdHJ1ZTtcclxuICBmcmFtZXdvcmtMaXN0U3Vic2NyaXB0aW9uICE6U3Vic2NyaXB0aW9uO1xyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZnJhbWV3b3JrU2VydmljZTpGcmFtZXdvcmtTZXJ2aWNlKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmFuaW1hdGlvbiA9IHRydWU7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgdGhpcy5hbmltYXRpb24gPSBmYWxzZTtcclxuICAgIH0sIDMwMCk7XHJcbiAgICB0aGlzLmZldGNoRnJhbWV3b3JrQ291bnQoKTtcclxuICAgIHRoaXMuZmV0Y2hGcmFtZXdvcmtDYXRlZ29yeUxpc3QoKTtcclxuICB9XHJcblxyXG4gIGlzTWFpbkxvYWRlciA9IHRydWU7XHJcbiAgZnJhbWV3b3JrQ291bnQ6YW55PSBudWxsO1xyXG4gIGZldGNoRnJhbWV3b3JrQ291bnQoKXsgICAgXHJcbiAgICB0aGlzLmZyYW1ld29ya1NlcnZpY2UuZmV0Y2hGcmFtZXdvcmtDb3VudCgpLnN1YnNjcmliZSh7XHJcbiAgICAgIG5leHQ6KHJlczphbnkpPT57dGhpcy5mcmFtZXdvcmtDb3VudCA9IHJlc30sXHJcbiAgICAgIGVycm9yOihlcnI6YW55KT0+e1xyXG4gICAgICAgIC8vaGFuZGxlIGVycm9yIGhlcmVcclxuICAgICAgfVxyXG4gICAgfSlcclxuICB9XHJcbnNlYXJjaEtleSA9ICcnO1xyXG4gIGFwaUZyYW1ld29ya1BheWxvYWQgPSB7XHJcbiAgICBwYWdlOjEsXHJcbiAgICBzZWFyY2g6JycsXHJcbiAgICB0eXBlOjEsXHJcblxyXG4gICB9XHJcbiAgY3VycmVudFZpZXcgOiAnRlJBTUVXT1JLX0NBVEVHT1JZJyB8ICdGUkFNRVdPUksnPSdGUkFNRVdPUktfQ0FURUdPUlknO1xyXG4gIGFjdGl2ZUZyYW1ld29ya1R5cGUgOidSRUdVTEFUSU9OUycgfCAnU1RBTkRBUkRTJyB8ICdJTlRFUk5BTF9DT05UUk9MUycgfCdPVEhFUlMnfGFueT0gJ1JFR1VMQVRJT05TJztcclxuXHJcbiAgZnJhbWV3b3JrVHlwZXMgPSB7XHJcbiAgICAnUkVHVUxBVElPTlMnOjEsXHJcbiAgICAnU1RBTkRBUkRTJzoyLFxyXG4gICAgJ0lOVEVSTkFMX0NPTlRST0xTJzozLFxyXG4gICAgJ09USEVSUyc6MFxyXG4gIH1cclxuICBcclxuXHJcblxyXG5cclxuICBmcmFtZXdvcmtEYXRhOmFueSA9IFtdXHJcbiAgY2hhbmdlVHlwZSh0eXBlOidSRUdVTEFUSU9OUycgfCAnU1RBTkRBUkRTJyB8ICdJTlRFUk5BTF9DT05UUk9MUycgfCdPVEhFUlMnKXtcclxuICAgIHRoaXMuYWN0aXZlRnJhbWV3b3JrVHlwZSA9IHR5cGU7XHJcbiAgICB0aGlzLmFwaUZyYW1ld29ya1BheWxvYWQucGFnZSA9IDE7XHJcbiAgICB0aGlzLmFwaUZyYW1ld29ya1BheWxvYWQudHlwZSA9IHRoaXMuZnJhbWV3b3JrVHlwZXNbdHlwZV07XHJcbiAgICB0aGlzLmZyYW1ld29ya0xpc3RTdWJzY3JpcHRpb24gPyAgdGhpcy5mcmFtZXdvcmtMaXN0U3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCkgOm51bGw7XHJcbiAgICB0aGlzLmZldGNoRnJhbWV3b3JrQ2F0ZWdvcnlMaXN0KClcclxuICB9XHJcblxyXG4gIGV4ZWN1dGVTZWFyY2goKXtcclxuICAgIHRoaXMuYXBpRnJhbWV3b3JrUGF5bG9hZC5wYWdlPTE7XHJcbiAgICB0aGlzLmFwaUZyYW1ld29ya1BheWxvYWQuc2VhcmNoID0gdGhpcy5zZWFyY2hLZXk7XHJcbiAgICB0aGlzLmZldGNoRnJhbWV3b3JrQ2F0ZWdvcnlMaXN0KCk7XHJcbiAgfVxyXG5cclxuICBwYWdlQ2hhbmdlZChldnQ6YW55KXtcclxuXHJcbiAgICB0aGlzLmFwaUZyYW1ld29ya1BheWxvYWQucGFnZSA9IGV2dDtcclxuICAgIHRoaXMuZmV0Y2hGcmFtZXdvcmtDYXRlZ29yeUxpc3QoKVxyXG4gIH1cclxuXHJcblxyXG4gIGZldGNoRnJhbWV3b3JrQ2F0ZWdvcnlMaXN0KCl7XHJcbiAgICB0aGlzLmlzTWFpbkxvYWRlciA9IHRydWU7XHJcbiAgICB0aGlzLmZyYW1ld29ya0xpc3RTdWJzY3JpcHRpb24gPSB0aGlzLmZyYW1ld29ya1NlcnZpY2UuZmV0Y2hGcmFtZXdvcmtJbkNhdGVnb3J5KHRoaXMuYXBpRnJhbWV3b3JrUGF5bG9hZCkuc3Vic2NyaWJlKHtcclxuICAgIG5leHQ6KHJlczphbnkpPT57XHJcbiAgICAgIGNvbnNvbGUubG9nKFwicmVzcG9uc2VcIixyZXMpO3RoaXMuZnJhbWV3b3JrRGF0YSA9IHJlcyA7IHRoaXMuaXNNYWluTG9hZGVyID0gZmFsc2V9LFxyXG4gICAgZXJyb3I6KCk9Pnt0aGlzLmlzTWFpbkxvYWRlciA9IGZhbHNlfVxyXG4gIH0pXHJcbiAgfVxyXG4gIHNlbGVjdGVkRnJhbWV3b3JrICE6YW55XHJcbiAgc2VsZWN0RnJhbWV3b3JrKGV2dDphbnksZnJhbWV3b3JrOmFueSl7XHJcbiAgICBpZihldnQ/LnRhcmdldD8uY2hlY2tlZCl7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRGcmFtZXdvcmsgID0gZnJhbWV3b3JrO1xyXG4gICAgICBjb25zb2xlLmxvZyh0aGlzLnNlbGVjdGVkRnJhbWV3b3JrKVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZXhwYW5kZWRGcmFtZXdvcmtJZDphbnkgPSAnJztcclxuICBleHBhbmRDb2xsYXBzZUZyYW1ld29yayhmcmFtZXdvcms6YW55KXtcclxuICAgIGlmKHRoaXMuZXhwYW5kZWRGcmFtZXdvcmtJZCA9PT0gZnJhbWV3b3JrPy5faWQpe1xyXG4gICAgICB0aGlzLmV4cGFuZGVkRnJhbWV3b3JrSWQgPSAnJ1xyXG4gICAgfWVsc2V7XHJcbiAgICAgIHRoaXMuZXhwYW5kZWRGcmFtZXdvcmtJZCA9IGZyYW1ld29yaz8uX2lkO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcmVtb3ZlU2VsZWN0ZWRGcmFtZXdvcmsoKXtcclxuICAgIHRoaXMuc2VsZWN0ZWRGcmFtZXdvcmsgPSBudWxsO1xyXG4gICAgdGhpcy5zZWxlY3RlZEZyYW1ld29ya0RhdGEgPSBudWxsO1xyXG4gIH1cclxuXHJcbi8vLy8vLy8vLy8vLy8vLy8vL1xyXG5cclxuc2VhcmNoS2V5Zm9yRnJhbWV3b3JrID0gJyc7XHJcbiAgc2VsZWN0ZWRGcmFtZXdvcmtEYXRhOmFueT0gbnVsbDtcclxuICBhbGxDb250cm9sczphbnkgPSBbXVxyXG4gIGluU2NvcGU6YW55ID0gW107XHJcbiAgb3V0U2NvcGU6YW55ID0gW107XHJcbiAgaW5TY29wZUlkczphbnkgPVtdO1xyXG4gIGFsbENvbnRyb2xzU2VsZWN0ZWQgPSBmYWxzZTtcclxuICBpc3N1YkxvYWRpbmcgPSB0cnVlO1xyXG4gIGxvYWRGcmFtZXdvcmtEYXRhKCl7XHJcbiAgICB0aGlzLmlzc3ViTG9hZGluZyA9IHRydWU7XHJcbiAgICB0aGlzLmZyYW1ld29ya1NlcnZpY2UuZmV0Y2hDYXRlZ29yeUZvckZyYW1ld29yayh0aGlzLnNlbGVjdGVkRnJhbWV3b3JrPy5faWQpLnN1YnNjcmliZSh7XHJcbiAgICAgIG5leHQ6KHJlczphbnkpPT57XHJcbiAgICAgICAgY29uc29sZS5sb2coXCJuZXN0ZWRcIixyZXMpO1xyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRGcmFtZXdvcmtEYXRhID0gcmVzO1xyXG4gICAgICAgIHRoaXMuY2hlY2tBbGxFbGVtZW50cyh0aGlzLm1vZGUgPT09ICdFRElUJyA/IGZhbHNlIDogdHJ1ZSk7XHJcbiAgICAgICAgdGhpcy5pc3N1YkxvYWRpbmcgPSBmYWxzZTtcclxuXHJcbiAgICAgIH0sXHJcbiAgICAgIGVycm9yOigpPT57ICB0aGlzLmlzc3ViTG9hZGluZyA9IGZhbHNlO31cclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICBjaGVja0FsbEVsZW1lbnRzKHBvcHVsYXRlSW5TY29wZTogYW55KXtcclxuICAgIGxldCBhbGxFbGVtZW50OmFueSA9IFtdXHJcbiAgICB0aGlzLnNlbGVjdGVkRnJhbWV3b3JrRGF0YS5kYXRhPy5jaGlsZF9saXN0X2RldGFpbHM/LmZvckVhY2goKGVsZW1lbnQ6YW55KSA9PiB7XHJcbiAgICAgICBlbGVtZW50Py5jb250cm9sc0RhdGEuZm9yRWFjaCgoZWw6YW55KSA9PiB7YWxsRWxlbWVudC5wdXNoKGVsKX0pXHJcbiAgICB9KTtcclxuICAgIHRoaXMuYWxsQ29udHJvbHMgPSB0aGlzLnVuaXF1ZUJ5UHJvcChhbGxFbGVtZW50LCdfaWQnKTtcclxuICAgIGlmKHBvcHVsYXRlSW5TY29wZSl7XHJcbiAgICAgIHRoaXMuaW5TY29wZSA9IHRoaXMudW5pcXVlQnlQcm9wKGFsbEVsZW1lbnQsJ19pZCcpO1xyXG4gICAgfVxyXG4gICBcclxuICAgIHRoaXMuY2hlY2tTZWxlY3RBbGwoKTtcclxuICAgIHRoaXMuc2V0SW5zY29wZUlkcygpO1xyXG4gIH1cclxuXHJcbiAgY2hlY2tTZWxlY3RBbGwoKXtcclxuICAgIGNvbnN0IGFsbElkcyA9IHRoaXMuYWxsQ29udHJvbHMubWFwKChlbGU6YW55KSA9PiBlbGU/Ll9pZCk7XHJcbiAgICBjb25zdCBpblNjb3BlSWRzID0gdGhpcy5pblNjb3BlLm1hcCgoZWxlOmFueSkgPT4gZWxlPy5faWQpO1xyXG4gICAgdGhpcy5hbGxDb250cm9sc1NlbGVjdGVkID0gYWxsSWRzLnNvcnQoKT8udG9TdHJpbmcoKSA9PT0gaW5TY29wZUlkcy5zb3J0KCk/LnRvU3RyaW5nKClcclxuICB9XHJcbiBzZWxlY3RBbGwoZXZ0OmFueSl7XHJcbiAgICBpZihldnQ/LnRhcmdldD8uY2hlY2tlZCl7XHJcbiAgICAgIHRoaXMuY2hlY2tBbGxFbGVtZW50cyh0cnVlKTtcclxuICAgIH1lbHNle1xyXG4gICAgICB0aGlzLmluU2NvcGUgPSBbXTtcclxuICAgICAgdGhpcy5pblNjb3BlSWRzID0gW107XHJcbiAgICB9XHJcbiAgICB0aGlzLmNoZWNrU2VsZWN0QWxsKCk7XHJcbiB9XHJcbiAgc2V0SW5zY29wZUlkcygpe1xyXG4gICAgdGhpcy5pblNjb3BlSWRzID0gdGhpcy5pblNjb3BlLm1hcCgoZWw6YW55KSA9PiBlbD8uX2lkKVxyXG4gIH1cclxuXHJcbiAgc2VsZWN0SXRlbShldnQ6YW55LHBheWxvYWQ6YW55KXtcclxuICAgIGV2dD8udGFyZ2V0Py5jaGVja2VkID09PSB0cnVlID8gdGhpcy5tYW5pcHVsYXRlSXRlbSgnQUREJywgcGF5bG9hZCkgOiB0aGlzLm1hbmlwdWxhdGVJdGVtKCdERUxFVEUnLCBwYXlsb2FkKVxyXG4gIH1cclxuICBtYW5pcHVsYXRlSXRlbShhY3Rpb246ICdBREQnIHwgJ0RFTEVURScsIHBheWxvYWQ6IGFueSkge1xyXG4gICAgaWYgKGFjdGlvbiA9PT0gJ0FERCcpIHtcclxuICAgICAgdGhpcy5pblNjb3BlID0gdGhpcy51bmlxdWVCeVByb3AoWy4uLnRoaXMuaW5TY29wZSwgLi4uW3BheWxvYWRdXSwgJ19pZCcpO1xyXG4gICAgICB0aGlzLmluU2NvcGVJZHMgPSB0aGlzLmluU2NvcGUubWFwKChlbGU6IGFueSkgPT4gZWxlPy5faWQpXHJcbiAgICB9IGVsc2UgaWYgKGFjdGlvbiA9PT0gJ0RFTEVURScpIHtcclxuICAgICAgbGV0IGluZGV4ID0gdGhpcy5pblNjb3BlLmZpbmRJbmRleCgoZWxlOiBhbnkpID0+IGVsZT8uX2lkID09PSBwYXlsb2FkPy5faWQpO1xyXG4gICAgICBpZiAoaW5kZXggPiAtMSkge1xyXG4gICAgICAgIHRoaXMuaW5TY29wZSA9IHRoaXMuaW5TY29wZS5maWx0ZXIoKGVsZTogYW55KSA9PiBlbGU/Ll9pZCAhPT0gcGF5bG9hZD8uX2lkKTtcclxuICAgICAgICB0aGlzLmluU2NvcGVJZHMgPSB0aGlzLmluU2NvcGUubWFwKChlbGU6IGFueSkgPT4gZWxlPy5faWQpXHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgdGhpcy5jaGVja1NlbGVjdEFsbCgpO1xyXG4gIH1cclxuXHJcbiAgc2VsZWN0Q2F0ZWdvcnkoZXZ0OmFueSxwYXlsb2FkOmFueSl7XHJcbiAgICBldnQ/LnRhcmdldD8uY2hlY2tlZCA9PT0gdHJ1ZSA/IHRoaXMubWFuaXB1bGF0ZUNhdGVnb3J5KCdBREQnLCBwYXlsb2FkKSA6IHRoaXMubWFuaXB1bGF0ZUNhdGVnb3J5KCdERUxFVEUnLCBwYXlsb2FkKVxyXG4gIH1cclxuICBtYW5pcHVsYXRlQ2F0ZWdvcnkoYWN0aW9uOiAnQUREJyB8ICdERUxFVEUnLCBwYXlsb2FkOiBhbnkpIHtcclxuICAgIGlmIChhY3Rpb24gPT09ICdBREQnKSB7XHJcbiAgICAgIGNvbnN0IGl0ZW1zVG9iZUFkZGVkID0gcGF5bG9hZD8uY29udHJvbHNEYXRhOyBcclxuICAgICAgdGhpcy5pblNjb3BlID0gdGhpcy51bmlxdWVCeVByb3AoWy4uLnRoaXMuaW5TY29wZSwgLi4uaXRlbXNUb2JlQWRkZWRdLCAnX2lkJyk7XHJcbiAgICAgIHRoaXMuaW5TY29wZUlkcyA9IHRoaXMuaW5TY29wZS5tYXAoKGVsZTogYW55KSA9PiBlbGU/Ll9pZClcclxuICAgIH0gZWxzZSBpZiAoYWN0aW9uID09PSAnREVMRVRFJykge1xyXG4gICAgICBjb25zdCBpdGVtc1RvYmVSZW1vdmVkID0gcGF5bG9hZD8uY29udHJvbHNEYXRhLm1hcCgoZWw6YW55KT0+IGVsLl9pZCk7IFxyXG4gICAgICAgdGhpcy5pblNjb3BlID0gdGhpcy5pblNjb3BlLmZpbHRlcigoZWxlOmFueSk9PiAhaXRlbXNUb2JlUmVtb3ZlZC5pbmNsdWRlcyhlbGUuX2lkKSk7XHJcbiAgICAgICB0aGlzLmluU2NvcGVJZHMgPSB0aGlzLmluU2NvcGUubWFwKChlbGU6IGFueSkgPT4gZWxlPy5faWQpXHJcbiAgICAgXHJcbiAgICB9XHJcbiAgIHRoaXMuY2hlY2tTZWxlY3RBbGwoKTtcclxuICB9XHJcblxyXG4gIG5leHRIYW5kbGVyKCl7XHJcbiAgICBpZih0aGlzLmN1cnJlbnRWaWV3ID09PSAnRlJBTUVXT1JLX0NBVEVHT1JZJyl7XHJcbiAgICAgIHRoaXMuY3VycmVudFZpZXcgPSAnRlJBTUVXT1JLJztcclxuICAgICAgdGhpcy5sb2FkRnJhbWV3b3JrRGF0YSgpO1xyXG4gICAgfVxyXG4gICAgZWxzZXtcclxuICAgICAgdGhpcy5uZXh0LmVtaXQoey4uLnRoaXMuc2VsZWN0ZWRGcmFtZXdvcmssaW5fc2NvcGU6dGhpcy5pblNjb3BlLG91dF9zY29wZTogdGhpcy5hbGxDb250cm9scy5maWx0ZXIoKGVsZTphbnkpPT4gIXRoaXMuaW5TY29wZUlkcy5pbmNsdWRlcyhlbGU/Ll9pZCkpfSk7XHJcbiAgICAgIGNvbnNvbGUubG9nKFwiRmluYWwgcGF5bG9hZFwiLHsuLi50aGlzLnNlbGVjdGVkRnJhbWV3b3JrLGluX3Njb3BlOnRoaXMuaW5TY29wZSxvdXRTY29wZTogdGhpcy5hbGxDb250cm9scy5maWx0ZXIoKGVsZTphbnkpPT4gIXRoaXMuaW5TY29wZUlkcy5pbmNsdWRlcyhlbGU/Ll9pZCkpfSlcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNhbmNlbEhhbmRsZXIoKXtcclxuICAgIGlmKHRoaXMuY3VycmVudFZpZXcgPT09ICdGUkFNRVdPUksnKXtcclxuICAgICAgdGhpcy5jdXJyZW50VmlldyA9ICdGUkFNRVdPUktfQ0FURUdPUlknO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5jYW5jZWwuZW1pdCgpO1xyXG4gICAgfVxyXG4gIH1cclxuICBleHBhbmRlZFN1YkNhdGVnb3J5SWRzOmFueSA9IFtdO1xyXG4gIHN1YkNhdGVnb3J5RXhwYW5kQ29sbGFwc2UoY2F0ZWdvcnk6YW55KXtcclxuICAgIGNvbnNvbGUubG9nKGNhdGVnb3J5KVxyXG4gICAgY29uc3QgaW5kZXggPSB0aGlzLmV4cGFuZGVkU3ViQ2F0ZWdvcnlJZHMuaW5kZXhPZihjYXRlZ29yeT8uX2lkKTtcclxuICAgIGlmKGluZGV4IDwgMCAmJiBjYXRlZ29yeT8uY29udHJvbHNEYXRhPy5sZW5ndGgpe1xyXG4gICAgICB0aGlzLmV4cGFuZGVkU3ViQ2F0ZWdvcnlJZHMucHVzaChjYXRlZ29yeT8uX2lkKVxyXG4gICAgfWVsc2V7XHJcbiAgICAgIHRoaXMuZXhwYW5kZWRTdWJDYXRlZ29yeUlkcy5zcGxpY2UoaW5kZXgsMSlcclxuICAgIH1cclxuICB9XHJcbiAgdW5pcXVlQnlQcm9wKGFycmF5OiBhbnksIGtleTogc3RyaW5nKSB7XHJcbiAgICByZXR1cm4gQXJyYXkuZnJvbShcclxuICAgICAgYXJyYXlcclxuICAgICAgICAucmVkdWNlKFxyXG4gICAgICAgICAgKGFjYzogYW55LCBpdGVtOiBhbnkpID0+IChcclxuICAgICAgICAgICAgaXRlbSAmJiBpdGVtW2tleV0gJiYgYWNjLnNldChpdGVtW2tleV0sIGl0ZW0pLFxyXG4gICAgICAgICAgICBhY2NcclxuICAgICAgICAgICksXHJcbiAgICAgICAgICBuZXcgTWFwKClcclxuICAgICAgICApXHJcbiAgICAgICAgLnZhbHVlcygpXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbn1cclxuIl19