@colijnit/sharedcomponents 255.1.11 → 255.1.13

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 (24) hide show
  1. package/3rdpartylicenses.txt +1405 -0
  2. package/bundles/colijnit-sharedcomponents.umd.js +24 -5
  3. package/bundles/colijnit-sharedcomponents.umd.js.map +1 -1
  4. package/colijnit-sharedcomponents.metadata.json +1 -1
  5. package/esm2015/lib/components/activity-overview-component/component-activity-overview.component.js +3 -2
  6. package/esm2015/lib/components/activity-overview-component/components/base-activity-overview.component.js +6 -1
  7. package/esm2015/lib/components/modify-task-form/modify-task-form.component.js +8 -2
  8. package/esm2015/lib/components/open-activity-list/component-activity-list.component.js +7 -1
  9. package/esm2015/lib/components/task-modifyer/task-modifier.component.js +7 -1
  10. package/favicon.ico +0 -0
  11. package/fesm2015/colijnit-sharedcomponents.js +26 -2
  12. package/fesm2015/colijnit-sharedcomponents.js.map +1 -1
  13. package/index.html +12 -0
  14. package/lib/components/activity-list/style/_layout.scss +4 -2
  15. package/lib/components/activity-overview-component/components/base-activity-overview.component.d.ts +2 -0
  16. package/lib/components/activity-overview-component/style/_layout.scss +4 -2
  17. package/lib/components/modify-task-form/modify-task-form.component.d.ts +2 -0
  18. package/lib/components/open-activity-list/component-activity-list.component.d.ts +1 -0
  19. package/lib/components/task-modifyer/task-modifier.component.d.ts +2 -0
  20. package/main.e4088c92fb309d6af37a.js +1 -0
  21. package/package.json +2 -2
  22. package/polyfills.907fe9d1887c5de17993.js +1 -0
  23. package/runtime.8aac21847ed3d3829cca.js +1 -0
  24. package/styles.8fce26887e7ff9657567.css +1 -0
@@ -25,6 +25,7 @@ export class TaskModifierComponent {
25
25
  this.showWorkLog = new EventEmitter();
26
26
  this.taskCreated = new EventEmitter();
27
27
  this.taskModified = new EventEmitter();
28
+ this.triggerFired = new EventEmitter();
28
29
  this.showAfterInsert = false;
29
30
  this.showNewForm = false;
30
31
  this.showModificationForm = false;
@@ -177,6 +178,9 @@ export class TaskModifierComponent {
177
178
  updateEditActivity(activity) {
178
179
  this.editActivity = this._boFactory.makeWithRawBackendData(Activity, activity);
179
180
  }
181
+ handleTriggerFired() {
182
+ this.triggerFired.next();
183
+ }
180
184
  }
181
185
  TaskModifierComponent.decorators = [
182
186
  { type: Component, args: [{
@@ -217,6 +221,7 @@ TaskModifierComponent.decorators = [
217
221
  (statusChange)="doHandleStatusChange($event)"
218
222
  (showWorkLog)="showWorkLog.emit()"
219
223
  (activityChange)="updateEditActivity($event)"
224
+ (triggerFired)="handleTriggerFired()"
220
225
  ></co-modify-task-form>
221
226
  </co-form>
222
227
  </div>
@@ -268,9 +273,10 @@ TaskModifierComponent.propDecorators = {
268
273
  showWorkLog: [{ type: Output }],
269
274
  taskCreated: [{ type: Output }],
270
275
  taskModified: [{ type: Output }],
276
+ triggerFired: [{ type: Output }],
271
277
  showClass: [{ type: HostBinding, args: ["class.co-task-modifier",] }]
272
278
  };
273
279
  __decorate([
274
280
  InputBoolean()
275
281
  ], TaskModifierComponent.prototype, "forceReadonly", void 0);
276
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFzay1tb2RpZmllci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWRjb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy90YXNrLW1vZGlmeWVyL3Rhc2stbW9kaWZpZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBYSxNQUFNLEVBQUUsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3BILE9BQU8sRUFDTCxpQkFBaUIsRUFFakIsYUFBYSxFQUNkLE1BQU0sOEJBQThCLENBQUM7QUFDdEMsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLDJDQUEyQyxDQUFDO0FBQ25FLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQztBQUVyRSxPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDMUMsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFDbkUsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sK0RBQStELENBQUM7QUFJcEcsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFDbEUsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0saUNBQWlDLENBQUM7QUFDbkUsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sZ0RBQWdELENBQUM7QUFDdkYsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBbUUzRCxNQUFNLE9BQU8scUJBQXFCO0lBaUg5QixZQUNZLGNBQWlDLEVBQ2pDLFVBQWlDLEVBQ3hCLFdBQThCLEVBQ3hDLFdBQTZCLEVBQzFCLGFBQTRCO1FBSjlCLG1CQUFjLEdBQWQsY0FBYyxDQUFtQjtRQUNqQyxlQUFVLEdBQVYsVUFBVSxD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ZFJlZiwgSG9zdEJpbmRpbmcsIElucHV0LCBPbkRlc3Ryb3ksIE91dHB1dCwgVmlld0NoaWxkfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge1xyXG4gIENvcmVEaWFsb2dTZXJ2aWNlLFxyXG4gIERpYWxvZ1Jlc3BvbnNlSW50ZXJmYWNlLFxyXG4gIEZvcm1Db21wb25lbnRcclxufSBmcm9tIFwiQGNvbGlqbml0L2NvcmVjb21wb25lbnRzX3YxMlwiO1xyXG5pbXBvcnQge0FjdGl2aXR5fSBmcm9tIFwiQGNvbGlqbml0L21haW5hcGkvYnVpbGQvbW9kZWwvYWN0aXZpdHkuYm9cIjtcclxuaW1wb3J0IHtJbnB1dEJvb2xlYW59IGZyb20gXCIuLi8uLi9kZWNvcmF0b3IvaW5wdXQtYm9vbGVhbi5kZWNvcmF0b3JcIjtcclxuaW1wb3J0IHtXb3JrZmxvd0NhdGVnb3J5VHlwZX0gZnJvbSBcIkBjb2xpam5pdC9tYWluYXBpL2J1aWxkL2VudW0vd29ya2Zsb3ctY2F0ZWdvcnkuZW51bVwiO1xyXG5pbXBvcnQge0ljb259IGZyb20gXCIuLi8uLi9lbnVtL2ljb24uZW51bVwiO1xyXG5pbXBvcnQge0RpY3Rpb25hcnlTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vc2VydmljZS9kaWN0aW9uYXJ5LnNlcnZpY2VcIjtcclxuaW1wb3J0IHtCdXNpbmVzc09iamVjdEZhY3Rvcnl9IGZyb20gXCJAY29saWpuaXQvaW9uZWNvbm5lY3Rvci9idWlsZC9zZXJ2aWNlL2J1c2luZXNzLW9iamVjdC1mYWN0b3J5XCI7XHJcbmltcG9ydCB7T3BlcmF0aW9uQ2FsbGJhY2tTaW1wbGVGdW5jdGlvbn0gZnJvbSBcIi4uLy4uL2ludGVyZmFjZS9vcGVyYXRpb24tY2FsbGJhY2stc2ltcGxlLWZ1bmN0aW9uXCI7XHJcbmltcG9ydCB7VGFza30gZnJvbSBcIkBjb2xpam5pdC9tYWluYXBpL2J1aWxkL21vZGVsL3Rhc2suYm9cIjtcclxuaW1wb3J0IHtPcGVyYXRpb25DYWxsYmFja0FjdGl2aXR5fSBmcm9tIFwiLi4vLi4vaW50ZXJmYWNlL29wZXJhdGlvbi1jYWxsYmFjay1hY3Rpdml0eVwiO1xyXG5pbXBvcnQge0ljb25DYWNoZVNlcnZpY2V9IGZyb20gXCIuLi8uLi9zZXJ2aWNlL2ljb24tY2FjaGUuc2VydmljZVwiO1xyXG5pbXBvcnQge0FwcFBvcHVwQnV0dG9uVHlwZX0gZnJvbSBcIi4uLy4uL2VudW0vYXBwLWJ1dHRvbi10eXBlLmVudW1cIjtcclxuaW1wb3J0IHtNb2RpZnlUYXNrRm9ybUNvbXBvbmVudH0gZnJvbSBcIi4uL21vZGlmeS10YXNrLWZvcm0vbW9kaWZ5LXRhc2stZm9ybS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHtTaGFyZWRTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vc2VydmljZS9zaGFyZWQuc2VydmljZVwiO1xyXG5cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6IFwiY28tdGFzay1tb2RpZmllclwiLFxyXG4gICAgdGVtcGxhdGU6IGBcclxuICAgICAgICA8Y28tZGlhbG9nICAqbmdJZj1cInNob3dGb3JtXCJcclxuICAgICAgICAgICAgICAgICAgICAoY2xvc2VDbGljayk9XCJvblBvcHVwQ2xvc2UoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW2hlYWRlclRlbXBsYXRlXT1cImhlYWRlclRlbXBsYXRlXCJcclxuICAgICAgICAgICAgICAgICAgICBbZm9vdGVyVGVtcGxhdGVdPVwiZm9vdGVyVGVtcGxhdGVcIlxyXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidGFzay1wb3B1cFwiXHJcbiAgICAgICAgICAgICAgICAgICAgY3NzSWQ9XCJ0YXNrX21vZGlmaWVyX3BvcHVwXCJcclxuICAgICAgICAgICAgICAgICAgICA+XHJcbjwhLS1cclxuICAgICAgICAgIFtoZWFkZXJdPVwiaGVhZGVyXCJcclxuICAgICAgICAgIFtzdWJIZWFkZXJdPVwic3ViSGVhZGVyXCJcclxuICAgICAgICAgIFtzdWJIZWFkZXJMaW5rXT1cInN1YkhlYWRlckxpbmtcIlxyXG4gICAgICAgICAgW3N1YlN1YkhlYWRlcl09XCJzdWJTdWJIZWFkZXJcIlxyXG4gICAgICAgICAgW2hlYWRlckljb25dPVwiaWNvbnMuVGFza1wiXHJcbiAgICAgICAgICAob3BlbkxpbmspPVwib3BlblJlZmVyZW5jZUluTW9kdWxlKClcIi0tPlxyXG4gICAgICA8IS0tICAgICAgPG5nLXRlbXBsYXRlPi0tPlxyXG4gICAgICAgICAgPG5nLXRlbXBsYXRlICNoZWFkZXJUZW1wbGF0ZT5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImhlYWRlci10aXRsZS13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgPGNvLWljb24gW2ljb25EYXRhXT1cImljb25TZXJ2aWNlLmdldEljb24oaWNvbnMuTGlzdFVsUmVndWxhcilcIj48L2NvLWljb24+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvLWRpYWxvZy1oZWFkZXItdGl0bGVcIiBbdGV4dENvbnRlbnRdPVwiJ1RBU0snIHwgbG9jYWxpemVcIj48L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInBvcHVwLXdyYXBwZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCIoc2hvd05ld0Zvcm0pID8gJ25ldy10YXNrLXBvcHVwJyA6ICcnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0td3JhcHBlciBtaW5pLXNjcm9sbGJhclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8Y28tZm9ybSAjbWFpbkZvcm0gKHZhbGlkU3VibWl0KT1cIm9uVmFsaWQoKVwiPlxyXG48IS0tXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmV3LXRhc2stZm9ybSAqbmdJZj1cInNob3dOZXdGb3JtXCIgW2FjdGl2aXR5XT1cImVkaXRBY3Rpdml0eVwiIFtteUNmZ05hbWVzXT1cInRhc2tDZmdOYW1lc1wiIFt0YXNrS2V5XT1cInJlZmVyZW5jZUlkXCIgW3Rhc2tXb3JrZmxvd0NhdGVnb3J5XT1cIndvcmtmbG93Q2F0ZWdvcnlcIj48L25ldy10YXNrLWZvcm0+XHJcbi0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNvLW1vZGlmeS10YXNrLWZvcm0gI21vZGlmeVRhc2tGb3JtICpuZ0lmPVwic2hvd01vZGlmaWNhdGlvbkZvcm1cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2FjdGl2aXR5XT1cImVkaXRBY3Rpdml0eVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3BvcHVwQ29udGV4dF09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChzdGF0dXNDaGFuZ2UpPVwiZG9IYW5kbGVTdGF0dXNDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoc2hvd1dvcmtMb2cpPVwic2hvd1dvcmtMb2cuZW1pdCgpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChhY3Rpdml0eUNoYW5nZSk9XCJ1cGRhdGVFZGl0QWN0aXZpdHkoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PC9jby1tb2RpZnktdGFzay1mb3JtPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2NvLWZvcm0+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwb3B1cC1idXR0b25zXCIgZnhMYXlvdXQ9XCJjb2x1bW5cIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwic2hvd05ld0Zvcm1cIiBmeExheW91dD1cInJvd1wiIGNsYXNzPVwicG9wdXAtdGh1bWJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gW3RleHRDb250ZW50XT1cIidTSE9XX0FGVEVSX0lOU0VSVCcgfCBsb2NhbGl6ZVwiPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgPCEtLSAgICAgICAgIDx0aHVtYiBbKGFjdGl2ZSldPXNob3dBZnRlckluc2VydFwiPjwvdGh1bWI+LS0+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjZm9vdGVyVGVtcGxhdGU+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjby1kaWFsb2ctZm9vdGVyLWJ1dHRvbi13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgPGNvLWJ1dHRvbiBbZGlzYWJsZWRdPVwicmVhZG9ubHkgfHwgdGFza0VkaXR0aW5nXCIgY2xhc3M9XCJzYXZlLWJ1dHRvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiaGFuZGxlU2F2ZUZvcm0oKVwiIFtpY29uRGF0YV09XCJpY29uU2VydmljZS5nZXRJY29uKGljb25zLkNoZWNrRHVvdG9uZSlcIj48L2NvLWJ1dHRvbj5cclxuICAgICAgICAgICAgICA8Y28tYnV0dG9uICBjbGFzcz1cImNsb3NlLWJ1dHRvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiaGFuZGxlQ2FuY2VsRm9ybSgpXCIgW2ljb25EYXRhXT1cImljb25TZXJ2aWNlLmdldEljb24oaWNvbnMuQ3Jvc3NTa2lubnkpXCI+PC9jby1idXR0b24+XHJcbiAgICAgICAgICAgICAgPGNvLWJ1dHRvbiAqbmdJZj1cInNob3dNb2RpZmljYXRpb25Gb3JtICYmICFyZWFkb25seVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbaWNvbkRhdGFdPVwiaWNvblNlcnZpY2UuZ2V0SWNvbihpY29ucy5UcmFzaGJpbilcIiBjbGFzcz1cImRlbGV0ZS1idXR0b25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cInJlYWRvbmx5IHx8IHRhc2tFZGl0dGluZ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiZGVsZXRlVGFzaygpXCI+PC9jby1idXR0b24+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICA8IS0tIDwvbmctdGVtcGxhdGU+LS0+XHJcbiAgICAgICAgPC9jby1kaWFsb2c+XHJcbiAgICBgLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgVGFza01vZGlmaWVyQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95IHtcclxuICAgIHB1YmxpYyByZWFkb25seSBpY29uczogdHlwZW9mIEljb24gPSBJY29uO1xyXG5cclxuICAgIEBWaWV3Q2hpbGQoRm9ybUNvbXBvbmVudClcclxuICAgIHB1YmxpYyBtYWluRm9ybTogRm9ybUNvbXBvbmVudDtcclxuXHJcbiAgICBAVmlld0NoaWxkKGZvcndhcmRSZWYoKCkgPT4gTW9kaWZ5VGFza0Zvcm1Db21wb25lbnQpKVxyXG4gICAgcHVibGljIG1vZGlmeVRhc2tGb3JtOiBNb2RpZnlUYXNrRm9ybUNvbXBvbmVudDtcclxuXHJcbiAgICBwdWJsaWMgZ2V0IHJlYWRvbmx5KCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIC8vcmV0dXJuIHRoaXMubW9kdWxlU2VydmljZS5yZWFkb25seSAmJlxyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4vKiAgICBASW5wdXQoKVxyXG4gICAgcHVibGljIHRhc2tDZmdOYW1lczogQWN0aXZpdGllc1Rhc2tDb25maWdOYW1lczsqL1xyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBwdWJsaWMgd29ya2Zsb3dDYXRlZ29yeTogV29ya2Zsb3dDYXRlZ29yeVR5cGU7XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIHB1YmxpYyByZWZlcmVuY2U6IHN0cmluZztcclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgcHVibGljIHJlZmVyZW5jZUlkOiBzdHJpbmc7XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIHB1YmxpYyB1c2VyR3JvdXBJZDogbnVtYmVyO1xyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBwdWJsaWMgcmVsYXRpb25JZDogbnVtYmVyO1xyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBwdWJsaWMgY3JlYXRlVGFza09wZXJhdGlvbjogT3BlcmF0aW9uQ2FsbGJhY2tBY3Rpdml0eTtcclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgQElucHV0Qm9vbGVhbigpXHJcbiAgICBwdWJsaWMgZm9yY2VSZWFkb25seTogYm9vbGVhbjtcclxuXHJcbiAgICBAT3V0cHV0KClcclxuICAgIHB1YmxpYyByZWFkb25seSBlZGl0aW5nQ29tcGxldGU6IEV2ZW50RW1pdHRlcjxBY3Rpdml0eT4gPSBuZXcgRXZlbnRFbWl0dGVyPEFjdGl2aXR5PigpO1xyXG5cclxuICAgIEBPdXRwdXQoKVxyXG4gICAgcHVibGljIHJlYWRvbmx5IGFjdGl2aXR5U2F2ZWQ6IEV2ZW50RW1pdHRlcjxBY3Rpdml0eT4gPSBuZXcgRXZlbnRFbWl0dGVyPEFjdGl2aXR5PigpO1xyXG5cclxuICAgIEBPdXRwdXQoKVxyXG4gICAgcHVibGljIHJlYWRvbmx5IGFjdGl2aXR5RGVsZXRlZDogRXZlbnRFbWl0dGVyPEFjdGl2aXR5PiA9IG5ldyBFdmVudEVtaXR0ZXI8QWN0aXZpdHk+KCk7XHJcblxyXG4gICAgQE91dHB1dCgpXHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgY2xvc2VkV2l0aG91dENvbXBsZXRlOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XHJcblxyXG4gICAgQE91dHB1dCgpXHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgc2hvd1dvcmtMb2c6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuXHJcbiAgICBAT3V0cHV0KClcclxuICAgIHB1YmxpYyByZWFkb25seSB0YXNrQ3JlYXRlZDogRXZlbnRFbWl0dGVyPFRhc2s+ID0gbmV3IEV2ZW50RW1pdHRlcjxUYXNrPigpO1xyXG5cclxuICAgIEBPdXRwdXQoKVxyXG4gICAgcHVibGljIHJlYWRvbmx5IHRhc2tNb2RpZmllZDogRXZlbnRFbWl0dGVyPFRhc2s+ID0gbmV3IEV2ZW50RW1pdHRlcjxUYXNrPigpO1xyXG5cclxuICBASG9zdEJpbmRpbmcoXCJjbGFzcy5jby10YXNrLW1vZGlmaWVyXCIpXHJcbiAgICBwdWJsaWMgc2hvd0NsYXNzKCkge1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZ2V0IHNob3dGb3JtKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLnNob3dOZXdGb3JtIHx8IHRoaXMuc2hvd01vZGlmaWNhdGlvbkZvcm07XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGdldCBoZWFkZXIoKTogc3RyaW5nIHtcclxuICAgICAgICByZXR1cm4gKHRoaXMuc2hvd01vZGlmaWNhdGlvbkZvcm0pID8gXCJUQVNLXCIgOiBcIkFERF9UQVNLMlwiO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBnZXQgc3ViSGVhZGVyKCk6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuY3VycmVudEFjdGl2aXR5ID8gdGhpcy5jdXJyZW50QWN0aXZpdHkudGFzay50YXNrSWQgKyBcIlwiIDogXCJcIjtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZ2V0IHN1YlN1YkhlYWRlcigpOiBzdHJpbmcge1xyXG4gICAgICAgIGlmICh0aGlzLmN1cnJlbnRBY3Rpdml0eT8udGFzaz8ubGFzdE1vZGlmaWVkQnkgJiYgdGhpcy5jdXJyZW50QWN0aXZpdHk/LnRhc2s/Lmxhc3RNb2RpZmllZERhdGUpIHtcclxuICAgICAgICAgICAgY29uc3QgbGFiZWwgPSB0aGlzLl9kaWN0aW9uYXJ5LmdldCgnTEFTVF9DSEFOR0UnKTtcclxuICAgICAgICAgICAgY29uc3QgbGFzdE1vZGlmaWVkQnk6IHN0cmluZyA9IHRoaXMuY3VycmVudEFjdGl2aXR5LnRhc2s/Lmxhc3RNb2RpZmllZERpc3BsYXlOYW1lO1xyXG4gICAgICAgICAgICBjb25zdCBsYXN0TW9kaWZpZWREYXRlOiBzdHJpbmcgPSB0aGlzLmN1cnJlbnRBY3Rpdml0eS50YXNrPy5sYXN0TW9kaWZpZWREYXRlLnRvTG9jYWxlU3RyaW5nKCk7XHJcblxyXG4gICAgICAgICAgICByZXR1cm4gbGFiZWwgKyAnOiAnICsgbGFzdE1vZGlmaWVkQnkgKyAnIHwgJyArIGxhc3RNb2RpZmllZERhdGU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBcIlwiO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBnZXQgc3ViSGVhZGVyTGluaygpOiBzdHJpbmcge1xyXG4gICAgICAgIGlmICh0aGlzLnNob3dNb2RpZmljYXRpb25Gb3JtICYmIHRoaXMuY3VycmVudEFjdGl2aXR5ICYmIHRoaXMuY3VycmVudEFjdGl2aXR5LnRhc2spIHtcclxuICAgICAgICAgICAgaWYgKHRoaXMuY3VycmVudEFjdGl2aXR5LnRhc2sud29ya2Zsb3dDYXRlZ29yeSAmJiB0aGlzLmN1cnJlbnRBY3Rpdml0eS50YXNrLnJlZmVyZW5jZSkge1xyXG4gICAgICAgICAgICAgICAgbGV0IGFjdGl2aXR5TmFtZTogc3RyaW5nO1xyXG4gICAgICAgICAgICAgICAgYWN0aXZpdHlOYW1lID0gdGhpcy5fZGljdGlvbmFyeS5nZXQoXCJXT1JLRkxPV19DQVRFR09SWV9cIiArIHRoaXMuY3VycmVudEFjdGl2aXR5LnRhc2sud29ya2Zsb3dDYXRlZ29yeSkgKyBcIiBcIiArIHRoaXMuY3VycmVudEFjdGl2aXR5LnRhc2sucmVmZXJlbmNlICsgXCIpXCI7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gYWN0aXZpdHlOYW1lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBcIlwiO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBnZXQgdXNlcklzVGFza1JlcG9ydGVyKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmVkaXRBY3Rpdml0eSAmJlxyXG4gICAgICAgICAgICAoKHRoaXMuZWRpdEFjdGl2aXR5LnRhc2sucmVwb3J0ZXJVc2VyR3JvdXBJZCAmJiB0aGlzLmVkaXRBY3Rpdml0eS50YXNrLnJlcG9ydGVyVXNlckdyb3VwSWQgPT09IHRoaXMudXNlckdyb3VwSWQpIHx8XHJcbiAgICAgICAgICAgICAgICAodGhpcy5lZGl0QWN0aXZpdHkudGFzay5yZXBvcnRlciAmJiB0aGlzLmVkaXRBY3Rpdml0eS50YXNrLnJlcG9ydGVyLnJlbGF0aW9uSWQgPT09IHRoaXMucmVsYXRpb25JZCkpO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBzaG93QWZ0ZXJJbnNlcnQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIHB1YmxpYyBzaG93TmV3Rm9ybTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgcHVibGljIHNob3dNb2RpZmljYXRpb25Gb3JtOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBwdWJsaWMgY3VycmVudEFjdGl2aXR5OiBBY3Rpdml0eTtcclxuICAgIHB1YmxpYyBlZGl0QWN0aXZpdHk6IEFjdGl2aXR5O1xyXG5cclxuICAgIHB1YmxpYyB0YXNrRWRpdHRpbmc6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwcml2YXRlIF9kaWFsb2dTZXJ2aWNlOiBDb3JlRGlhbG9nU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIF9ib0ZhY3Rvcnk6IEJ1c2luZXNzT2JqZWN0RmFjdG9yeSxcclxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IF9kaWN0aW9uYXJ5OiBEaWN0aW9uYXJ5U2VydmljZSxcclxuICAgICAgICBwdWJsaWMgaWNvblNlcnZpY2U6IEljb25DYWNoZVNlcnZpY2UsXHJcbiAgICAgICAgcHJvdGVjdGVkIHNoYXJlZFNlcnZpY2U6IFNoYXJlZFNlcnZpY2VcclxuICAgICkge1xyXG4gICAgfVxyXG5cclxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBoYW5kbGVTYXZlRm9ybSgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLm1haW5Gb3JtLnN1Ym1pdCgpO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBhc3luYyBvblZhbGlkKCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgICAgIGlmICh0aGlzLmVkaXRBY3Rpdml0eSkge1xyXG4gICAgICAgICAgICBjb25zdCBuZXdBY3Rpdml0eTogYm9vbGVhbiA9IHRoaXMuZWRpdEFjdGl2aXR5LmlzTmV3O1xyXG4gICAgICAgICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCB0aGlzLnNoYXJlZFNlcnZpY2UudXBkYXRlQWN0aXZpdHkodGhpcy5lZGl0QWN0aXZpdHkpO1xyXG4gICAgICAgICAgICBpZiAocmVzdWx0KVxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmFjdGl2aXR5U2F2ZWQubmV4dCh0aGlzLmVkaXRBY3Rpdml0eSk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmVkaXRpbmdDb21wbGV0ZS5uZXh0KHRoaXMuZWRpdEFjdGl2aXR5KTtcclxuICAgICAgICAgICAgICAgIGlmIChuZXdBY3Rpdml0eSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMudGFza0NyZWF0ZWQubmV4dCh0aGlzLmVkaXRBY3Rpdml0eS50YXNrKVxyXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnRhc2tNb2RpZmllZC5uZXh0KHRoaXMuZWRpdEFjdGl2aXR5LnRhc2spO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuc2hvd0FmdGVySW5zZXJ0KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zdGFydE1vZGlmeWluZ1Rhc2sodGhpcy5lZGl0QWN0aXZpdHkpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB0aGlzLmhpZGUoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGhhbmRsZUNhbmNlbEZvcm0oKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fY3JlYXRlQ2xvbmUoKTtcclxuICAgICAgICAvL1RPRE86IGlzIHRoaXMgbmVlZGVkP1xyXG4gICAgICAgIC8vdGhpcy5tb2R1bGVTZXJ2aWNlLmNhbmNlbEVkaXQoKTtcclxuICAgICAgICB0aGlzLmNsb3NlZFdpdGhvdXRDb21wbGV0ZS5uZXh0KHRydWUpO1xyXG4gICAgICAgIHRoaXMuaGlkZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBvblBvcHVwQ2xvc2UoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5mb3JjZVJlYWRvbmx5ID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5oaWRlKCk7XHJcbiAgICAgICAgdGhpcy5jbG9zZWRXaXRob3V0Q29tcGxldGUubmV4dCh0cnVlKTtcclxuICAgIH1cclxuXHJcbiAgICAvL1RPRE8gZmlndXJlIG91dCByb3V0aW5nIGZyb20gZXh0ZXJuYWwgY29tcG9uZW50XHJcbiAgICAvKnB1YmxpYyBvcGVuUmVmZXJlbmNlSW5Nb2R1bGUoKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKHRoaXMuY3VycmVudEFjdGl2aXR5ICYmIHRoaXMuY3VycmVudEFjdGl2aXR5LnRhc2spIHtcclxuICAgICAgICAgICAgaWYgKHRoaXMuY3VycmVudEFjdGl2aXR5LnRhc2sud29ya2Zsb3dDYXRlZ29yeSA9PT0gV29ya2Zsb3dDYXRlZ29yeVR5cGUuQWJzZW5jZUZpbGUgfHwgdGhpcy5jdXJyZW50QWN0aXZpdHkudGFzay53b3JrZmxvd0NhdGVnb3J5ID09PSBXb3JrZmxvd0NhdGVnb3J5VHlwZS5QcmV2ZW50aXZlQWJzZW5jZUZpbGUpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuX2FwcE5hdmlnYXRvci5uYXZpZ2F0ZVRvSU9uZU1vZHVsZShJT25lTW9kdWxlTmFtZS5BYnNlbmNlRmlsZSwgdGhpcy5jdXJyZW50QWN0aXZpdHkudGFzay5yZWZlcmVuY2VJZCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgfSovXHJcblxyXG4gICAgcHVibGljIGhpZGUoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5zaG93TmV3Rm9ybSA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuc2hvd01vZGlmaWNhdGlvbkZvcm0gPSBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgYXN5bmMgZGVsZXRlVGFzaygpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgICAgICBjb25zdCBkb0RlbGV0ZTogRGlhbG9nUmVzcG9uc2VJbnRlcmZhY2UgPSBhd2FpdCB0aGlzLl9kaWFsb2dTZXJ2aWNlLnNob3dZZXNObyhcIkRFTEVURV9UQVNLXCIsXCJERUxFVEVfVEFTS1wiLGZhbHNlKTtcclxuICAgICAgICBpZiAoZG9EZWxldGUuYnV0dG9uID09PSBBcHBQb3B1cEJ1dHRvblR5cGUuWWVzKSB7XHJcbiAgICAgICAgICAgIGF3YWl0IHRoaXMuc2hhcmVkU2VydmljZS5kZWxldGVBY3Rpdml0eSh0aGlzLmVkaXRBY3Rpdml0eSk7XHJcbiAgICAgICAgICAgIHRoaXMuYWN0aXZpdHlEZWxldGVkLm5leHQodGhpcy5lZGl0QWN0aXZpdHkpO1xyXG4gICAgICAgICAgICB0aGlzLmhpZGUoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGFzeW5jIGNyZWF0ZU5ld1Rhc2soc3RhbmRhbG9uZTogYm9vbGVhbiA9IHRydWUpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgICAgICBpZiAodGhpcy5zaG93Rm9ybSkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLnNob3dBZnRlckluc2VydCA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuY3VycmVudEFjdGl2aXR5ID0gYXdhaXQgdGhpcy5jcmVhdGVUYXNrT3BlcmF0aW9uKHtzdGFuZGFsb25lOiBzdGFuZGFsb25lLCB3b3JrZmxvd0NhdGVnb3J5OiB0aGlzLndvcmtmbG93Q2F0ZWdvcnksIHJlZmVyZW5jZTogdGhpcy5yZWZlcmVuY2UsIHJlZmVyZW5jZUlkOiB0aGlzLnJlZmVyZW5jZUlkfSk7XHJcbiAgICAgICAgdGhpcy5fY3JlYXRlQ2xvbmUoKTtcclxuICAgICAgICB0aGlzLnNob3dOZXdGb3JtID0gdHJ1ZTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgYXN5bmMgc3RhcnRNb2RpZnlpbmdUYXNrKGFjdGl2aXR5OiBBY3Rpdml0eSk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgICAgIGlmICh0aGlzLnNob3dGb3JtIHx8ICFhY3Rpdml0eS5Jc1Rhc2spIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5zaG93QWZ0ZXJJbnNlcnQgPSBmYWxzZTtcclxuICAgICAgICBhd2FpdCB0aGlzLnNoYXJlZFNlcnZpY2UubG9ja1Rhc2soYWN0aXZpdHkudGFzay50YXNrSWQpO1xyXG4gICAgICAgIGFjdGl2aXR5LnRhc2sgPSBhY3Rpdml0eS50YXNrO1xyXG4gICAgICAgIHRoaXMuY3VycmVudEFjdGl2aXR5ID0gYWN0aXZpdHk7XHJcbiAgICAgICAgdGhpcy5fY3JlYXRlQ2xvbmUoKTtcclxuICAgICAgICB0aGlzLnNob3dNb2RpZmljYXRpb25Gb3JtID0gdHJ1ZTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgYXN5bmMgc3RhcnRNb2RpZnlpbmdUYXNrQW5kV29ya0xvZyhhY3Rpdml0eTogQWN0aXZpdHkpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgICAgICBhd2FpdCB0aGlzLnN0YXJ0TW9kaWZ5aW5nVGFzayhhY3Rpdml0eSk7XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgIC8qaWYgKHRoaXMubW9kaWZ5VGFza0Zvcm0pIHtcclxuICAgICAgICAgICAgICAgIHRoaXMubW9kaWZ5VGFza0Zvcm0uaGFuZGxlUmVnaXN0ZXJXb3JrKCk7XHJcbiAgICAgICAgICAgIH0qL1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBfY3JlYXRlQ2xvbmUoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5lZGl0QWN0aXZpdHkgPSB0aGlzLl9ib0ZhY3RvcnkubWFrZVdpdGhSYXdCYWNrZW5kRGF0YShBY3Rpdml0eSwgdGhpcy5jdXJyZW50QWN0aXZpdHkpYXMgQWN0aXZpdHk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGRvSGFuZGxlU3RhdHVzQ2hhbmdlKGVkaXR0aW5nOiBib29sZWFuKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy50YXNrRWRpdHRpbmcgPSBlZGl0dGluZztcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgdXBkYXRlRWRpdEFjdGl2aXR5KGFjdGl2aXR5OiBBY3Rpdml0eSk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuZWRpdEFjdGl2aXR5ID0gdGhpcy5fYm9GYWN0b3J5Lm1ha2VXaXRoUmF3QmFja2VuZERhdGEoQWN0aXZpdHksIGFjdGl2aXR5KSBhcyBBY3Rpdml0eTtcclxuICAgIH1cclxuXHJcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IEljb24gPSBJY29uO1xyXG59XHJcbiJdfQ==
282
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFzay1tb2RpZmllci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWRjb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy90YXNrLW1vZGlmeWVyL3Rhc2stbW9kaWZpZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBYSxNQUFNLEVBQUUsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3BILE9BQU8sRUFDTCxpQkFBaUIsRUFFakIsYUFBYSxFQUNkLE1BQU0sOEJBQThCLENBQUM7QUFDdEMsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLDJDQUEyQyxDQUFDO0FBQ25FLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQztBQUVyRSxPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDMUMsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFDbkUsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sK0RBQStELENBQUM7QUFJcEcsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFDbEUsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0saUNBQWlDLENBQUM7QUFDbkUsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sZ0RBQWdELENBQUM7QUFDdkYsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBb0UzRCxNQUFNLE9BQU8scUJBQXFCO0lBb0g5QixZQUNZLGNBQWlDLEVBQ2pDLFVBQWlDLEVBQ3hCLFdBQThCLEVBQ3hDLFdBQTZCLEVBQzFCLGFBQTRCO1FBSjlCLG1CQUFjLEdBQWQsY0FBYyxDQUFtQjtRQUNqQyxlQUFVLEdBQVYsVUFBVSxDQUF1QjtRQUN4QixnQkFBVyxHQUFYLFdBQVcsQ0FBbUI7UUFDeEMsZ0JBQVcsR0FBWCxXQUFXLENBQWtCO1FBQzFCLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBeEgxQixVQUFLLEdBQWdCLElBQUksQ0FBQztRQXVDMUIsb0JBQWUsR0FBMkIsSUFBSSxZQUFZLEVBQVksQ0FBQztRQUd2RSxrQkFBYSxHQUEyQixJQUFJLFlBQVksRUFBWSxDQUFDO1FBR3JFLG9CQUFlLEdBQTJCLElBQUksWUFBWSxFQUFZLENBQUM7UUFHdkUsMEJBQXFCLEdBQTBCLElBQUksWUFBWSxFQUFXLENBQUM7UUFHM0UsZ0JBQVcsR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUczRCxnQkFBVyxHQUF1QixJQUFJLFlBQVksRUFBUSxDQUFDO1FBRzNELGlCQUFZLEdBQXVCLElBQUksWUFBWSxFQUFRLENBQUM7UUFHNUQsaUJBQVksR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQStDckUsb0JBQWUsR0FBWSxLQUFLLENBQUM7UUFDakMsZ0JBQVcsR0FBWSxLQUFLLENBQUM7UUFDN0IseUJBQW9CLEdBQVksS0FBSyxDQUFDO1FBSXRDLGlCQUFZLEdBQVksS0FBSyxDQUFDO1FBK0hwQixTQUFJLEdBQUcsSUFBSSxDQUFDO0lBdEg3QixDQUFDO0lBbEhELElBQVcsUUFBUTtRQUNmLHVDQUF1QztRQUN6QyxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFvRE0sU0FBUztRQUNkLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELElBQVcsUUFBUTtRQUNmLE9BQU8sSUFBSSxDQUFDLFdBQVcsSUFBSSxJQUFJLENBQUMsb0JBQW9CLENBQUM7SUFDekQsQ0FBQztJQUVELElBQVcsTUFBTTtRQUNiLE9BQU8sQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUM7SUFDOUQsQ0FBQztJQUVELElBQVcsU0FBUztRQUNoQixPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUM3RSxDQUFDO0lBRUQsSUFBVyxZQUFZOztRQUNuQixJQUFJLENBQUEsTUFBQSxNQUFBLElBQUksQ0FBQyxlQUFlLDBDQUFFLElBQUksMENBQUUsY0FBYyxNQUFJLE1BQUEsTUFBQSxJQUFJLENBQUMsZUFBZSwwQ0FBRSxJQUFJLDBDQUFFLGdCQUFnQixDQUFBLEVBQUU7WUFDNUYsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLENBQUM7WUFDbEQsTUFBTSxjQUFjLEdBQVcsTUFBQSxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksMENBQUUsdUJBQXVCLENBQUM7WUFDbEYsTUFBTSxnQkFBZ0IsR0FBVyxNQUFBLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSwwQ0FBRSxnQkFBZ0IsQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUU5RixPQUFPLEtBQUssR0FBRyxJQUFJLEdBQUcsY0FBYyxHQUFHLEtBQUssR0FBRyxnQkFBZ0IsQ0FBQztTQUNuRTtRQUNELE9BQU8sRUFBRSxDQUFDO0lBQ2QsQ0FBQztJQUVELElBQVcsYUFBYTtRQUNwQixJQUFJLElBQUksQ0FBQyxvQkFBb0IsSUFBSSxJQUFJLENBQUMsZUFBZSxJQUFJLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxFQUFFO1lBQ2hGLElBQUksSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLElBQUksSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFO2dCQUNuRixJQUFJLFlBQW9CLENBQUM7Z0JBQ3pCLFlBQVksR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxvQkFBb0IsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxTQUFTLEdBQUcsR0FBRyxDQUFDO2dCQUN6SixPQUFPLFlBQVksQ0FBQzthQUN2QjtTQUNKO1FBQ0QsT0FBTyxFQUFFLENBQUM7SUFDZCxDQUFDO0lBRUQsSUFBVyxrQkFBa0I7UUFDekIsT0FBTyxJQUFJLENBQUMsWUFBWTtZQUNwQixDQUFDLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsbUJBQW1CLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsbUJBQW1CLEtBQUssSUFBSSxDQUFDLFdBQVcsQ0FBQztnQkFDNUcsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsS0FBSyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztJQUNqSCxDQUFDO0lBbUJELFdBQVc7SUFDWCxDQUFDO0lBRU0sY0FBYztRQUNqQixJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFWSxPQUFPOztZQUNoQixJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUU7Z0JBQ25CLE1BQU0sV0FBVyxHQUFZLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDO2dCQUNyRCxNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUksQ0FBQyxhQUFhLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztnQkFDMUUsSUFBSSxNQUFNLEVBQ1Y7b0JBQ0ksSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO29CQUMzQyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7b0JBQzdDLElBQUksV0FBVyxFQUFFO3dCQUNiLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUE7cUJBQ2hEO3lCQUFNO3dCQUNILElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUM7cUJBQ2xEO29CQUNELElBQUksSUFBSSxDQUFDLGVBQWUsRUFBRTt3QkFDdEIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztxQkFDOUM7aUJBRUo7Z0JBQ0QsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO2FBQ2Y7UUFDTCxDQUFDO0tBQUE7SUFFTSxnQkFBZ0I7UUFDbkIsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3BCLHVCQUF1QjtRQUN2QixrQ0FBa0M7UUFDbEMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN0QyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDaEIsQ0FBQztJQUVNLFlBQVk7UUFDZixJQUFJLENBQUMsYUFBYSxHQUFHLEtBQUssQ0FBQztRQUMzQixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDWixJQUFJLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFRCxpREFBaUQ7SUFDakQ7Ozs7Ozs7T0FPRztJQUVJLElBQUk7UUFDUCxJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQztRQUN6QixJQUFJLENBQUMsb0JBQW9CLEdBQUcsS0FBSyxDQUFDO0lBQ3RDLENBQUM7SUFFWSxVQUFVOztZQUNuQixNQUFNLFFBQVEsR0FBNEIsTUFBTSxJQUFJLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxhQUFhLEVBQUMsYUFBYSxFQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ2pILElBQUksUUFBUSxDQUFDLE1BQU0sS0FBSyxrQkFBa0IsQ0FBQyxHQUFHLEVBQUU7Z0JBQzVDLE1BQU0sSUFBSSxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO2dCQUMzRCxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7Z0JBQzdDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQzthQUNmO1FBQ0wsQ0FBQztLQUFBO0lBRVksYUFBYSxDQUFDLGFBQXNCLElBQUk7O1lBQ2pELElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtnQkFDZixPQUFPO2FBQ1Y7WUFFRCxJQUFJLENBQUMsZUFBZSxHQUFHLEtBQUssQ0FBQztZQUM3QixJQUFJLENBQUMsZUFBZSxHQUFHLE1BQU0sSUFBSSxDQUFDLG1CQUFtQixDQUFDLEVBQUMsVUFBVSxFQUFFLFVBQVUsRUFBRSxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTLEVBQUUsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXLEVBQUMsQ0FBQyxDQUFDO1lBQ25MLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUNwQixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztRQUM1QixDQUFDO0tBQUE7SUFFWSxrQkFBa0IsQ0FBQyxRQUFrQjs7WUFDOUMsSUFBSSxJQUFJLENBQUMsUUFBUSxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRTtnQkFDbkMsT0FBTzthQUNWO1lBRUQsSUFBSSxDQUFDLGVBQWUsR0FBRyxLQUFLLENBQUM7WUFDN0IsTUFBTSxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ3hELFFBQVEsQ0FBQyxJQUFJLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQztZQUM5QixJQUFJLENBQUMsZUFBZSxHQUFHLFFBQVEsQ0FBQztZQUNoQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDcEIsSUFBSSxDQUFDLG9CQUFvQixHQUFHLElBQUksQ0FBQztRQUNyQyxDQUFDO0tBQUE7SUFFWSw0QkFBNEIsQ0FBQyxRQUFrQjs7WUFDeEQsTUFBTSxJQUFJLENBQUMsa0JBQWtCLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDeEMsVUFBVSxDQUFDLEdBQUcsRUFBRTtnQkFDWjs7bUJBRUc7WUFDUCxDQUFDLENBQUMsQ0FBQztRQUNQLENBQUM7S0FBQTtJQUVNLFlBQVk7UUFDZixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsc0JBQXNCLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxlQUFlLENBQVksQ0FBQztJQUMxRyxDQUFDO0lBRU0sb0JBQW9CLENBQUMsUUFBaUI7UUFDekMsSUFBSSxDQUFDLFlBQVksR0FBRyxRQUFRLENBQUM7SUFDakMsQ0FBQztJQUVNLGtCQUFrQixDQUFDLFFBQWtCO1FBQ3hDLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxzQkFBc0IsQ0FBQyxRQUFRLEVBQUUsUUFBUSxDQUFhLENBQUM7SUFDL0YsQ0FBQztJQUVNLGtCQUFrQjtRQUNyQixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzdCLENBQUM7OztZQWhUSixTQUFTLFNBQUM7Z0JBQ1AsUUFBUSxFQUFFLGtCQUFrQjtnQkFDNUIsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0tBNkRUO2FBQ0o7OztZQW5GQyxpQkFBaUI7WUFTWCxxQkFBcUI7WUFEckIsaUJBQWlCO1lBS2pCLGdCQUFnQjtZQUdoQixhQUFhOzs7dUJBdUVoQixTQUFTLFNBQUMsYUFBYTs2QkFHdkIsU0FBUyxTQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQzsrQkFXbkQsS0FBSzt3QkFHTCxLQUFLOzBCQUdMLEtBQUs7MEJBR0wsS0FBSzt5QkFHTCxLQUFLO2tDQUdMLEtBQUs7NEJBR0wsS0FBSzs4QkFJTCxNQUFNOzRCQUdOLE1BQU07OEJBR04sTUFBTTtvQ0FHTixNQUFNOzBCQUdOLE1BQU07MEJBR04sTUFBTTsyQkFHTixNQUFNOzJCQUdOLE1BQU07d0JBR04sV0FBVyxTQUFDLHdCQUF3Qjs7QUExQnJDO0lBREMsWUFBWSxFQUFFOzREQUNlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgZm9yd2FyZFJlZiwgSG9zdEJpbmRpbmcsIElucHV0LCBPbkRlc3Ryb3ksIE91dHB1dCwgVmlld0NoaWxkfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge1xyXG4gIENvcmVEaWFsb2dTZXJ2aWNlLFxyXG4gIERpYWxvZ1Jlc3BvbnNlSW50ZXJmYWNlLFxyXG4gIEZvcm1Db21wb25lbnRcclxufSBmcm9tIFwiQGNvbGlqbml0L2NvcmVjb21wb25lbnRzX3YxMlwiO1xyXG5pbXBvcnQge0FjdGl2aXR5fSBmcm9tIFwiQGNvbGlqbml0L21haW5hcGkvYnVpbGQvbW9kZWwvYWN0aXZpdHkuYm9cIjtcclxuaW1wb3J0IHtJbnB1dEJvb2xlYW59IGZyb20gXCIuLi8uLi9kZWNvcmF0b3IvaW5wdXQtYm9vbGVhbi5kZWNvcmF0b3JcIjtcclxuaW1wb3J0IHtXb3JrZmxvd0NhdGVnb3J5VHlwZX0gZnJvbSBcIkBjb2xpam5pdC9tYWluYXBpL2J1aWxkL2VudW0vd29ya2Zsb3ctY2F0ZWdvcnkuZW51bVwiO1xyXG5pbXBvcnQge0ljb259IGZyb20gXCIuLi8uLi9lbnVtL2ljb24uZW51bVwiO1xyXG5pbXBvcnQge0RpY3Rpb25hcnlTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vc2VydmljZS9kaWN0aW9uYXJ5LnNlcnZpY2VcIjtcclxuaW1wb3J0IHtCdXNpbmVzc09iamVjdEZhY3Rvcnl9IGZyb20gXCJAY29saWpuaXQvaW9uZWNvbm5lY3Rvci9idWlsZC9zZXJ2aWNlL2J1c2luZXNzLW9iamVjdC1mYWN0b3J5XCI7XHJcbmltcG9ydCB7T3BlcmF0aW9uQ2FsbGJhY2tTaW1wbGVGdW5jdGlvbn0gZnJvbSBcIi4uLy4uL2ludGVyZmFjZS9vcGVyYXRpb24tY2FsbGJhY2stc2ltcGxlLWZ1bmN0aW9uXCI7XHJcbmltcG9ydCB7VGFza30gZnJvbSBcIkBjb2xpam5pdC9tYWluYXBpL2J1aWxkL21vZGVsL3Rhc2suYm9cIjtcclxuaW1wb3J0IHtPcGVyYXRpb25DYWxsYmFja0FjdGl2aXR5fSBmcm9tIFwiLi4vLi4vaW50ZXJmYWNlL29wZXJhdGlvbi1jYWxsYmFjay1hY3Rpdml0eVwiO1xyXG5pbXBvcnQge0ljb25DYWNoZVNlcnZpY2V9IGZyb20gXCIuLi8uLi9zZXJ2aWNlL2ljb24tY2FjaGUuc2VydmljZVwiO1xyXG5pbXBvcnQge0FwcFBvcHVwQnV0dG9uVHlwZX0gZnJvbSBcIi4uLy4uL2VudW0vYXBwLWJ1dHRvbi10eXBlLmVudW1cIjtcclxuaW1wb3J0IHtNb2RpZnlUYXNrRm9ybUNvbXBvbmVudH0gZnJvbSBcIi4uL21vZGlmeS10YXNrLWZvcm0vbW9kaWZ5LXRhc2stZm9ybS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHtTaGFyZWRTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vc2VydmljZS9zaGFyZWQuc2VydmljZVwiO1xyXG5cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6IFwiY28tdGFzay1tb2RpZmllclwiLFxyXG4gICAgdGVtcGxhdGU6IGBcclxuICAgICAgICA8Y28tZGlhbG9nICAqbmdJZj1cInNob3dGb3JtXCJcclxuICAgICAgICAgICAgICAgICAgICAoY2xvc2VDbGljayk9XCJvblBvcHVwQ2xvc2UoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW2hlYWRlclRlbXBsYXRlXT1cImhlYWRlclRlbXBsYXRlXCJcclxuICAgICAgICAgICAgICAgICAgICBbZm9vdGVyVGVtcGxhdGVdPVwiZm9vdGVyVGVtcGxhdGVcIlxyXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidGFzay1wb3B1cFwiXHJcbiAgICAgICAgICAgICAgICAgICAgY3NzSWQ9XCJ0YXNrX21vZGlmaWVyX3BvcHVwXCJcclxuICAgICAgICAgICAgICAgICAgICA+XHJcbjwhLS1cclxuICAgICAgICAgIFtoZWFkZXJdPVwiaGVhZGVyXCJcclxuICAgICAgICAgIFtzdWJIZWFkZXJdPVwic3ViSGVhZGVyXCJcclxuICAgICAgICAgIFtzdWJIZWFkZXJMaW5rXT1cInN1YkhlYWRlckxpbmtcIlxyXG4gICAgICAgICAgW3N1YlN1YkhlYWRlcl09XCJzdWJTdWJIZWFkZXJcIlxyXG4gICAgICAgICAgW2hlYWRlckljb25dPVwiaWNvbnMuVGFza1wiXHJcbiAgICAgICAgICAob3BlbkxpbmspPVwib3BlblJlZmVyZW5jZUluTW9kdWxlKClcIi0tPlxyXG4gICAgICA8IS0tICAgICAgPG5nLXRlbXBsYXRlPi0tPlxyXG4gICAgICAgICAgPG5nLXRlbXBsYXRlICNoZWFkZXJUZW1wbGF0ZT5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImhlYWRlci10aXRsZS13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgPGNvLWljb24gW2ljb25EYXRhXT1cImljb25TZXJ2aWNlLmdldEljb24oaWNvbnMuTGlzdFVsUmVndWxhcilcIj48L2NvLWljb24+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvLWRpYWxvZy1oZWFkZXItdGl0bGVcIiBbdGV4dENvbnRlbnRdPVwiJ1RBU0snIHwgbG9jYWxpemVcIj48L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInBvcHVwLXdyYXBwZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCIoc2hvd05ld0Zvcm0pID8gJ25ldy10YXNrLXBvcHVwJyA6ICcnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0td3JhcHBlciBtaW5pLXNjcm9sbGJhclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8Y28tZm9ybSAjbWFpbkZvcm0gKHZhbGlkU3VibWl0KT1cIm9uVmFsaWQoKVwiPlxyXG48IS0tXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmV3LXRhc2stZm9ybSAqbmdJZj1cInNob3dOZXdGb3JtXCIgW2FjdGl2aXR5XT1cImVkaXRBY3Rpdml0eVwiIFtteUNmZ05hbWVzXT1cInRhc2tDZmdOYW1lc1wiIFt0YXNrS2V5XT1cInJlZmVyZW5jZUlkXCIgW3Rhc2tXb3JrZmxvd0NhdGVnb3J5XT1cIndvcmtmbG93Q2F0ZWdvcnlcIj48L25ldy10YXNrLWZvcm0+XHJcbi0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNvLW1vZGlmeS10YXNrLWZvcm0gI21vZGlmeVRhc2tGb3JtICpuZ0lmPVwic2hvd01vZGlmaWNhdGlvbkZvcm1cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2FjdGl2aXR5XT1cImVkaXRBY3Rpdml0eVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3BvcHVwQ29udGV4dF09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChzdGF0dXNDaGFuZ2UpPVwiZG9IYW5kbGVTdGF0dXNDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoc2hvd1dvcmtMb2cpPVwic2hvd1dvcmtMb2cuZW1pdCgpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChhY3Rpdml0eUNoYW5nZSk9XCJ1cGRhdGVFZGl0QWN0aXZpdHkoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodHJpZ2dlckZpcmVkKT1cImhhbmRsZVRyaWdnZXJGaXJlZCgpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID48L2NvLW1vZGlmeS10YXNrLWZvcm0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvY28tZm9ybT5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInBvcHVwLWJ1dHRvbnNcIiBmeExheW91dD1cImNvbHVtblwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJzaG93TmV3Rm9ybVwiIGZ4TGF5b3V0PVwicm93XCIgY2xhc3M9XCJwb3B1cC10aHVtYlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBbdGV4dENvbnRlbnRdPVwiJ1NIT1dfQUZURVJfSU5TRVJUJyB8IGxvY2FsaXplXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICA8IS0tICAgICAgICAgPHRodW1iIFsoYWN0aXZlKV09c2hvd0FmdGVySW5zZXJ0XCI+PC90aHVtYj4tLT5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPG5nLXRlbXBsYXRlICNmb290ZXJUZW1wbGF0ZT5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvLWRpYWxvZy1mb290ZXItYnV0dG9uLXdyYXBwZXJcIj5cclxuICAgICAgICAgICAgICA8Y28tYnV0dG9uIFtkaXNhYmxlZF09XCJyZWFkb25seSB8fCB0YXNrRWRpdHRpbmdcIiBjbGFzcz1cInNhdmUtYnV0dG9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJoYW5kbGVTYXZlRm9ybSgpXCIgW2ljb25EYXRhXT1cImljb25TZXJ2aWNlLmdldEljb24oaWNvbnMuQ2hlY2tEdW90b25lKVwiPjwvY28tYnV0dG9uPlxyXG4gICAgICAgICAgICAgIDxjby1idXR0b24gIGNsYXNzPVwiY2xvc2UtYnV0dG9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJoYW5kbGVDYW5jZWxGb3JtKClcIiBbaWNvbkRhdGFdPVwiaWNvblNlcnZpY2UuZ2V0SWNvbihpY29ucy5Dcm9zc1NraW5ueSlcIj48L2NvLWJ1dHRvbj5cclxuICAgICAgICAgICAgICA8Y28tYnV0dG9uICpuZ0lmPVwic2hvd01vZGlmaWNhdGlvbkZvcm0gJiYgIXJlYWRvbmx5XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtpY29uRGF0YV09XCJpY29uU2VydmljZS5nZXRJY29uKGljb25zLlRyYXNoYmluKVwiIGNsYXNzPVwiZGVsZXRlLWJ1dHRvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwicmVhZG9ubHkgfHwgdGFza0VkaXR0aW5nXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJkZWxldGVUYXNrKClcIj48L2NvLWJ1dHRvbj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgIDwhLS0gPC9uZy10ZW1wbGF0ZT4tLT5cclxuICAgICAgICA8L2NvLWRpYWxvZz5cclxuICAgIGAsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUYXNrTW9kaWZpZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xyXG4gICAgcHVibGljIHJlYWRvbmx5IGljb25zOiB0eXBlb2YgSWNvbiA9IEljb247XHJcblxyXG4gICAgQFZpZXdDaGlsZChGb3JtQ29tcG9uZW50KVxyXG4gICAgcHVibGljIG1haW5Gb3JtOiBGb3JtQ29tcG9uZW50O1xyXG5cclxuICAgIEBWaWV3Q2hpbGQoZm9yd2FyZFJlZigoKSA9PiBNb2RpZnlUYXNrRm9ybUNvbXBvbmVudCkpXHJcbiAgICBwdWJsaWMgbW9kaWZ5VGFza0Zvcm06IE1vZGlmeVRhc2tGb3JtQ29tcG9uZW50O1xyXG5cclxuICAgIHB1YmxpYyBnZXQgcmVhZG9ubHkoKTogYm9vbGVhbiB7XHJcbiAgICAgICAgLy9yZXR1cm4gdGhpcy5tb2R1bGVTZXJ2aWNlLnJlYWRvbmx5ICYmXHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuXHJcbi8qICAgIEBJbnB1dCgpXHJcbiAgICBwdWJsaWMgdGFza0NmZ05hbWVzOiBBY3Rpdml0aWVzVGFza0NvbmZpZ05hbWVzOyovXHJcblxyXG4gICAgQElucHV0KClcclxuICAgIHB1YmxpYyB3b3JrZmxvd0NhdGVnb3J5OiBXb3JrZmxvd0NhdGVnb3J5VHlwZTtcclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgcHVibGljIHJlZmVyZW5jZTogc3RyaW5nO1xyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBwdWJsaWMgcmVmZXJlbmNlSWQ6IHN0cmluZztcclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgcHVibGljIHVzZXJHcm91cElkOiBudW1iZXI7XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIHB1YmxpYyByZWxhdGlvbklkOiBudW1iZXI7XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIHB1YmxpYyBjcmVhdGVUYXNrT3BlcmF0aW9uOiBPcGVyYXRpb25DYWxsYmFja0FjdGl2aXR5O1xyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBASW5wdXRCb29sZWFuKClcclxuICAgIHB1YmxpYyBmb3JjZVJlYWRvbmx5OiBib29sZWFuO1xyXG5cclxuICAgIEBPdXRwdXQoKVxyXG4gICAgcHVibGljIHJlYWRvbmx5IGVkaXRpbmdDb21wbGV0ZTogRXZlbnRFbWl0dGVyPEFjdGl2aXR5PiA9IG5ldyBFdmVudEVtaXR0ZXI8QWN0aXZpdHk+KCk7XHJcblxyXG4gICAgQE91dHB1dCgpXHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgYWN0aXZpdHlTYXZlZDogRXZlbnRFbWl0dGVyPEFjdGl2aXR5PiA9IG5ldyBFdmVudEVtaXR0ZXI8QWN0aXZpdHk+KCk7XHJcblxyXG4gICAgQE91dHB1dCgpXHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgYWN0aXZpdHlEZWxldGVkOiBFdmVudEVtaXR0ZXI8QWN0aXZpdHk+ID0gbmV3IEV2ZW50RW1pdHRlcjxBY3Rpdml0eT4oKTtcclxuXHJcbiAgICBAT3V0cHV0KClcclxuICAgIHB1YmxpYyByZWFkb25seSBjbG9zZWRXaXRob3V0Q29tcGxldGU6IEV2ZW50RW1pdHRlcjxib29sZWFuPiA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcclxuXHJcbiAgICBAT3V0cHV0KClcclxuICAgIHB1YmxpYyByZWFkb25seSBzaG93V29ya0xvZzogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG5cclxuICAgIEBPdXRwdXQoKVxyXG4gICAgcHVibGljIHJlYWRvbmx5IHRhc2tDcmVhdGVkOiBFdmVudEVtaXR0ZXI8VGFzaz4gPSBuZXcgRXZlbnRFbWl0dGVyPFRhc2s+KCk7XHJcblxyXG4gICAgQE91dHB1dCgpXHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgdGFza01vZGlmaWVkOiBFdmVudEVtaXR0ZXI8VGFzaz4gPSBuZXcgRXZlbnRFbWl0dGVyPFRhc2s+KCk7XHJcblxyXG4gICAgQE91dHB1dCgpXHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgdHJpZ2dlckZpcmVkOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcblxyXG4gICAgQEhvc3RCaW5kaW5nKFwiY2xhc3MuY28tdGFzay1tb2RpZmllclwiKVxyXG4gICAgcHVibGljIHNob3dDbGFzcygpIHtcclxuICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGdldCBzaG93Rm9ybSgpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5zaG93TmV3Rm9ybSB8fCB0aGlzLnNob3dNb2RpZmljYXRpb25Gb3JtO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBnZXQgaGVhZGVyKCk6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuICh0aGlzLnNob3dNb2RpZmljYXRpb25Gb3JtKSA/IFwiVEFTS1wiIDogXCJBRERfVEFTSzJcIjtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZ2V0IHN1YkhlYWRlcigpOiBzdHJpbmcge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmN1cnJlbnRBY3Rpdml0eSA/IHRoaXMuY3VycmVudEFjdGl2aXR5LnRhc2sudGFza0lkICsgXCJcIiA6IFwiXCI7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGdldCBzdWJTdWJIZWFkZXIoKTogc3RyaW5nIHtcclxuICAgICAgICBpZiAodGhpcy5jdXJyZW50QWN0aXZpdHk/LnRhc2s/Lmxhc3RNb2RpZmllZEJ5ICYmIHRoaXMuY3VycmVudEFjdGl2aXR5Py50YXNrPy5sYXN0TW9kaWZpZWREYXRlKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGxhYmVsID0gdGhpcy5fZGljdGlvbmFyeS5nZXQoJ0xBU1RfQ0hBTkdFJyk7XHJcbiAgICAgICAgICAgIGNvbnN0IGxhc3RNb2RpZmllZEJ5OiBzdHJpbmcgPSB0aGlzLmN1cnJlbnRBY3Rpdml0eS50YXNrPy5sYXN0TW9kaWZpZWREaXNwbGF5TmFtZTtcclxuICAgICAgICAgICAgY29uc3QgbGFzdE1vZGlmaWVkRGF0ZTogc3RyaW5nID0gdGhpcy5jdXJyZW50QWN0aXZpdHkudGFzaz8ubGFzdE1vZGlmaWVkRGF0ZS50b0xvY2FsZVN0cmluZygpO1xyXG5cclxuICAgICAgICAgICAgcmV0dXJuIGxhYmVsICsgJzogJyArIGxhc3RNb2RpZmllZEJ5ICsgJyB8ICcgKyBsYXN0TW9kaWZpZWREYXRlO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gXCJcIjtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZ2V0IHN1YkhlYWRlckxpbmsoKTogc3RyaW5nIHtcclxuICAgICAgICBpZiAodGhpcy5zaG93TW9kaWZpY2F0aW9uRm9ybSAmJiB0aGlzLmN1cnJlbnRBY3Rpdml0eSAmJiB0aGlzLmN1cnJlbnRBY3Rpdml0eS50YXNrKSB7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLmN1cnJlbnRBY3Rpdml0eS50YXNrLndvcmtmbG93Q2F0ZWdvcnkgJiYgdGhpcy5jdXJyZW50QWN0aXZpdHkudGFzay5yZWZlcmVuY2UpIHtcclxuICAgICAgICAgICAgICAgIGxldCBhY3Rpdml0eU5hbWU6IHN0cmluZztcclxuICAgICAgICAgICAgICAgIGFjdGl2aXR5TmFtZSA9IHRoaXMuX2RpY3Rpb25hcnkuZ2V0KFwiV09SS0ZMT1dfQ0FURUdPUllfXCIgKyB0aGlzLmN1cnJlbnRBY3Rpdml0eS50YXNrLndvcmtmbG93Q2F0ZWdvcnkpICsgXCIgXCIgKyB0aGlzLmN1cnJlbnRBY3Rpdml0eS50YXNrLnJlZmVyZW5jZSArIFwiKVwiO1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIGFjdGl2aXR5TmFtZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gXCJcIjtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZ2V0IHVzZXJJc1Rhc2tSZXBvcnRlcigpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5lZGl0QWN0aXZpdHkgJiZcclxuICAgICAgICAgICAgKCh0aGlzLmVkaXRBY3Rpdml0eS50YXNrLnJlcG9ydGVyVXNlckdyb3VwSWQgJiYgdGhpcy5lZGl0QWN0aXZpdHkudGFzay5yZXBvcnRlclVzZXJHcm91cElkID09PSB0aGlzLnVzZXJHcm91cElkKSB8fFxyXG4gICAgICAgICAgICAgICAgKHRoaXMuZWRpdEFjdGl2aXR5LnRhc2sucmVwb3J0ZXIgJiYgdGhpcy5lZGl0QWN0aXZpdHkudGFzay5yZXBvcnRlci5yZWxhdGlvbklkID09PSB0aGlzLnJlbGF0aW9uSWQpKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgc2hvd0FmdGVySW5zZXJ0OiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBwdWJsaWMgc2hvd05ld0Zvcm06IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIHB1YmxpYyBzaG93TW9kaWZpY2F0aW9uRm9ybTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgcHVibGljIGN1cnJlbnRBY3Rpdml0eTogQWN0aXZpdHk7XHJcbiAgICBwdWJsaWMgZWRpdEFjdGl2aXR5OiBBY3Rpdml0eTtcclxuXHJcbiAgICBwdWJsaWMgdGFza0VkaXR0aW5nOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHJpdmF0ZSBfZGlhbG9nU2VydmljZTogQ29yZURpYWxvZ1NlcnZpY2UsXHJcbiAgICAgICAgcHJpdmF0ZSBfYm9GYWN0b3J5OiBCdXNpbmVzc09iamVjdEZhY3RvcnksXHJcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBfZGljdGlvbmFyeTogRGljdGlvbmFyeVNlcnZpY2UsXHJcbiAgICAgICAgcHVibGljIGljb25TZXJ2aWNlOiBJY29uQ2FjaGVTZXJ2aWNlLFxyXG4gICAgICAgIHByb3RlY3RlZCBzaGFyZWRTZXJ2aWNlOiBTaGFyZWRTZXJ2aWNlXHJcbiAgICApIHtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgaGFuZGxlU2F2ZUZvcm0oKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5tYWluRm9ybS5zdWJtaXQoKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgYXN5bmMgb25WYWxpZCgpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgICAgICBpZiAodGhpcy5lZGl0QWN0aXZpdHkpIHtcclxuICAgICAgICAgICAgY29uc3QgbmV3QWN0aXZpdHk6IGJvb2xlYW4gPSB0aGlzLmVkaXRBY3Rpdml0eS5pc05ldztcclxuICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5zaGFyZWRTZXJ2aWNlLnVwZGF0ZUFjdGl2aXR5KHRoaXMuZWRpdEFjdGl2aXR5KTtcclxuICAgICAgICAgICAgaWYgKHJlc3VsdClcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5hY3Rpdml0eVNhdmVkLm5leHQodGhpcy5lZGl0QWN0aXZpdHkpO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5lZGl0aW5nQ29tcGxldGUubmV4dCh0aGlzLmVkaXRBY3Rpdml0eSk7XHJcbiAgICAgICAgICAgICAgICBpZiAobmV3QWN0aXZpdHkpIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnRhc2tDcmVhdGVkLm5leHQodGhpcy5lZGl0QWN0aXZpdHkudGFzaylcclxuICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy50YXNrTW9kaWZpZWQubmV4dCh0aGlzLmVkaXRBY3Rpdml0eS50YXNrKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGlmICh0aGlzLnNob3dBZnRlckluc2VydCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc3RhcnRNb2RpZnlpbmdUYXNrKHRoaXMuZWRpdEFjdGl2aXR5KTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdGhpcy5oaWRlKCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBoYW5kbGVDYW5jZWxGb3JtKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuX2NyZWF0ZUNsb25lKCk7XHJcbiAgICAgICAgLy9UT0RPOiBpcyB0aGlzIG5lZWRlZD9cclxuICAgICAgICAvL3RoaXMubW9kdWxlU2VydmljZS5jYW5jZWxFZGl0KCk7XHJcbiAgICAgICAgdGhpcy5jbG9zZWRXaXRob3V0Q29tcGxldGUubmV4dCh0cnVlKTtcclxuICAgICAgICB0aGlzLmhpZGUoKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgb25Qb3B1cENsb3NlKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuZm9yY2VSZWFkb25seSA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuaGlkZSgpO1xyXG4gICAgICAgIHRoaXMuY2xvc2VkV2l0aG91dENvbXBsZXRlLm5leHQodHJ1ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgLy9UT0RPIGZpZ3VyZSBvdXQgcm91dGluZyBmcm9tIGV4dGVybmFsIGNvbXBvbmVudFxyXG4gICAgLypwdWJsaWMgb3BlblJlZmVyZW5jZUluTW9kdWxlKCk6IHZvaWQge1xyXG4gICAgICAgIGlmICh0aGlzLmN1cnJlbnRBY3Rpdml0eSAmJiB0aGlzLmN1cnJlbnRBY3Rpdml0eS50YXNrKSB7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLmN1cnJlbnRBY3Rpdml0eS50YXNrLndvcmtmbG93Q2F0ZWdvcnkgPT09IFdvcmtmbG93Q2F0ZWdvcnlUeXBlLkFic2VuY2VGaWxlIHx8IHRoaXMuY3VycmVudEFjdGl2aXR5LnRhc2sud29ya2Zsb3dDYXRlZ29yeSA9PT0gV29ya2Zsb3dDYXRlZ29yeVR5cGUuUHJldmVudGl2ZUFic2VuY2VGaWxlKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLl9hcHBOYXZpZ2F0b3IubmF2aWdhdGVUb0lPbmVNb2R1bGUoSU9uZU1vZHVsZU5hbWUuQWJzZW5jZUZpbGUsIHRoaXMuY3VycmVudEFjdGl2aXR5LnRhc2sucmVmZXJlbmNlSWQpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgIH0qL1xyXG5cclxuICAgIHB1YmxpYyBoaWRlKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuc2hvd05ld0Zvcm0gPSBmYWxzZTtcclxuICAgICAgICB0aGlzLnNob3dNb2RpZmljYXRpb25Gb3JtID0gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGFzeW5jIGRlbGV0ZVRhc2soKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICAgICAgY29uc3QgZG9EZWxldGU6IERpYWxvZ1Jlc3BvbnNlSW50ZXJmYWNlID0gYXdhaXQgdGhpcy5fZGlhbG9nU2VydmljZS5zaG93WWVzTm8oXCJERUxFVEVfVEFTS1wiLFwiREVMRVRFX1RBU0tcIixmYWxzZSk7XHJcbiAgICAgICAgaWYgKGRvRGVsZXRlLmJ1dHRvbiA9PT0gQXBwUG9wdXBCdXR0b25UeXBlLlllcykge1xyXG4gICAgICAgICAgICBhd2FpdCB0aGlzLnNoYXJlZFNlcnZpY2UuZGVsZXRlQWN0aXZpdHkodGhpcy5lZGl0QWN0aXZpdHkpO1xyXG4gICAgICAgICAgICB0aGlzLmFjdGl2aXR5RGVsZXRlZC5uZXh0KHRoaXMuZWRpdEFjdGl2aXR5KTtcclxuICAgICAgICAgICAgdGhpcy5oaWRlKCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBhc3luYyBjcmVhdGVOZXdUYXNrKHN0YW5kYWxvbmU6IGJvb2xlYW4gPSB0cnVlKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICAgICAgaWYgKHRoaXMuc2hvd0Zvcm0pIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5zaG93QWZ0ZXJJbnNlcnQgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmN1cnJlbnRBY3Rpdml0eSA9IGF3YWl0IHRoaXMuY3JlYXRlVGFza09wZXJhdGlvbih7c3RhbmRhbG9uZTogc3RhbmRhbG9uZSwgd29ya2Zsb3dDYXRlZ29yeTogdGhpcy53b3JrZmxvd0NhdGVnb3J5LCByZWZlcmVuY2U6IHRoaXMucmVmZXJlbmNlLCByZWZlcmVuY2VJZDogdGhpcy5yZWZlcmVuY2VJZH0pO1xyXG4gICAgICAgIHRoaXMuX2NyZWF0ZUNsb25lKCk7XHJcbiAgICAgICAgdGhpcy5zaG93TmV3Rm9ybSA9IHRydWU7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGFzeW5jIHN0YXJ0TW9kaWZ5aW5nVGFzayhhY3Rpdml0eTogQWN0aXZpdHkpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgICAgICBpZiAodGhpcy5zaG93Rm9ybSB8fCAhYWN0aXZpdHkuSXNUYXNrKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoaXMuc2hvd0FmdGVySW5zZXJ0ID0gZmFsc2U7XHJcbiAgICAgICAgYXdhaXQgdGhpcy5zaGFyZWRTZXJ2aWNlLmxvY2tUYXNrKGFjdGl2aXR5LnRhc2sudGFza0lkKTtcclxuICAgICAgICBhY3Rpdml0eS50YXNrID0gYWN0aXZpdHkudGFzaztcclxuICAgICAgICB0aGlzLmN1cnJlbnRBY3Rpdml0eSA9IGFjdGl2aXR5O1xyXG4gICAgICAgIHRoaXMuX2NyZWF0ZUNsb25lKCk7XHJcbiAgICAgICAgdGhpcy5zaG93TW9kaWZpY2F0aW9uRm9ybSA9IHRydWU7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGFzeW5jIHN0YXJ0TW9kaWZ5aW5nVGFza0FuZFdvcmtMb2coYWN0aXZpdHk6IEFjdGl2aXR5KTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICAgICAgYXdhaXQgdGhpcy5zdGFydE1vZGlmeWluZ1Rhc2soYWN0aXZpdHkpO1xyXG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICAvKmlmICh0aGlzLm1vZGlmeVRhc2tGb3JtKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm1vZGlmeVRhc2tGb3JtLmhhbmRsZVJlZ2lzdGVyV29yaygpO1xyXG4gICAgICAgICAgICB9Ki9cclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgX2NyZWF0ZUNsb25lKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuZWRpdEFjdGl2aXR5ID0gdGhpcy5fYm9GYWN0b3J5Lm1ha2VXaXRoUmF3QmFja2VuZERhdGEoQWN0aXZpdHksIHRoaXMuY3VycmVudEFjdGl2aXR5KWFzIEFjdGl2aXR5O1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBkb0hhbmRsZVN0YXR1c0NoYW5nZShlZGl0dGluZzogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgICAgIHRoaXMudGFza0VkaXR0aW5nID0gZWRpdHRpbmc7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIHVwZGF0ZUVkaXRBY3Rpdml0eShhY3Rpdml0eTogQWN0aXZpdHkpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmVkaXRBY3Rpdml0eSA9IHRoaXMuX2JvRmFjdG9yeS5tYWtlV2l0aFJhd0JhY2tlbmREYXRhKEFjdGl2aXR5LCBhY3Rpdml0eSkgYXMgQWN0aXZpdHk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGhhbmRsZVRyaWdnZXJGaXJlZCgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLnRyaWdnZXJGaXJlZC5uZXh0KCk7XHJcbiAgICB9XHJcblxyXG4gIHByb3RlY3RlZCByZWFkb25seSBJY29uID0gSWNvbjtcclxufVxyXG4iXX0=
package/favicon.ico ADDED
Binary file
@@ -12070,6 +12070,7 @@ class ModifyTaskFormComponent {
12070
12070
  this.activityChange = new EventEmitter();
12071
12071
  this.statusChange = new EventEmitter();
12072
12072
  this.showWorkLog = new EventEmitter();
12073
+ this.triggerFired = new EventEmitter();
12073
12074
  this.selectedMenu = 'content-menu1';
12074
12075
  this.activities = [];
12075
12076
  this.table = TableName$1.Tasks;
@@ -12149,6 +12150,9 @@ class ModifyTaskFormComponent {
12149
12150
  handleSaveTags(tags) {
12150
12151
  this.activity.task.tags = tags;
12151
12152
  }
12153
+ handleTriggerFired() {
12154
+ this.triggerFired.next();
12155
+ }
12152
12156
  _updateTaskObject(activity, prop) {
12153
12157
  const cloneActivity = this._boFactory.makeWithRawBackendData(Activity, activity);
12154
12158
  if (cloneActivity.isNew) {
@@ -12219,6 +12223,7 @@ ModifyTaskFormComponent.decorators = [
12219
12223
  [(activity)]="activity"
12220
12224
  (activityChange)="activityChange.emit($event)"
12221
12225
  (showWorkLog)="handleShowWorkLow()"
12226
+ (triggerFired)="handleTriggerFired()"
12222
12227
  noBorder
12223
12228
  ></co-task-details>
12224
12229
  <div class="task-column">
@@ -12327,7 +12332,8 @@ ModifyTaskFormComponent.propDecorators = {
12327
12332
  hidden: [{ type: HostBinding, args: ["class.hidden",] }],
12328
12333
  activityChange: [{ type: Output }],
12329
12334
  statusChange: [{ type: Output }],
12330
- showWorkLog: [{ type: Output }]
12335
+ showWorkLog: [{ type: Output }],
12336
+ triggerFired: [{ type: Output }]
12331
12337
  };
12332
12338
  __decorate([
12333
12339
  InputBoolean()
@@ -12348,6 +12354,7 @@ class TaskModifierComponent {
12348
12354
  this.showWorkLog = new EventEmitter();
12349
12355
  this.taskCreated = new EventEmitter();
12350
12356
  this.taskModified = new EventEmitter();
12357
+ this.triggerFired = new EventEmitter();
12351
12358
  this.showAfterInsert = false;
12352
12359
  this.showNewForm = false;
12353
12360
  this.showModificationForm = false;
@@ -12500,6 +12507,9 @@ class TaskModifierComponent {
12500
12507
  updateEditActivity(activity) {
12501
12508
  this.editActivity = this._boFactory.makeWithRawBackendData(Activity, activity);
12502
12509
  }
12510
+ handleTriggerFired() {
12511
+ this.triggerFired.next();
12512
+ }
12503
12513
  }
12504
12514
  TaskModifierComponent.decorators = [
12505
12515
  { type: Component, args: [{
@@ -12540,6 +12550,7 @@ TaskModifierComponent.decorators = [
12540
12550
  (statusChange)="doHandleStatusChange($event)"
12541
12551
  (showWorkLog)="showWorkLog.emit()"
12542
12552
  (activityChange)="updateEditActivity($event)"
12553
+ (triggerFired)="handleTriggerFired()"
12543
12554
  ></co-modify-task-form>
12544
12555
  </co-form>
12545
12556
  </div>
@@ -12591,6 +12602,7 @@ TaskModifierComponent.propDecorators = {
12591
12602
  showWorkLog: [{ type: Output }],
12592
12603
  taskCreated: [{ type: Output }],
12593
12604
  taskModified: [{ type: Output }],
12605
+ triggerFired: [{ type: Output }],
12594
12606
  showClass: [{ type: HostBinding, args: ["class.co-task-modifier",] }]
12595
12607
  };
12596
12608
  __decorate([
@@ -12627,6 +12639,7 @@ class BaseActivityOverviewComponent {
12627
12639
  this.triggerFired = new EventEmitter();
12628
12640
  this.genericTriggerFired = new EventEmitter();
12629
12641
  this.formCreated = new EventEmitter();
12642
+ this.formTriggerFired = new EventEmitter();
12630
12643
  this.openLink = new EventEmitter();
12631
12644
  this.linkClicked = new EventEmitter();
12632
12645
  this.overDue = false;
@@ -12758,6 +12771,9 @@ class BaseActivityOverviewComponent {
12758
12771
  //this.taskModifier.startModifyingTaskAndWorkLog(this.activity);
12759
12772
  }
12760
12773
  }
12774
+ handleFormTriggerFired() {
12775
+ this.formTriggerFired.next();
12776
+ }
12761
12777
  onSaveActivity(activity) {
12762
12778
  this.activity = activity;
12763
12779
  this.activityChange.next(this.activity);
@@ -12853,6 +12869,7 @@ BaseActivityOverviewComponent.propDecorators = {
12853
12869
  triggerFired: [{ type: Output }],
12854
12870
  genericTriggerFired: [{ type: Output }],
12855
12871
  formCreated: [{ type: Output }],
12872
+ formTriggerFired: [{ type: Output }],
12856
12873
  openLink: [{ type: Output }],
12857
12874
  linkClicked: [{ type: Output }]
12858
12875
  };
@@ -13012,6 +13029,10 @@ class ComponentActivityListComponent extends BaseActivityListComponent {
13012
13029
  this.getTheActivities();
13013
13030
  this.refreshRequested.emit();
13014
13031
  }
13032
+ handleFormTriggerFired() {
13033
+ this.getTheActivities();
13034
+ this.refreshRequested.emit();
13035
+ }
13015
13036
  handleFormCreation() {
13016
13037
  this.formCreated.next();
13017
13038
  }
@@ -13093,6 +13114,7 @@ ComponentActivityListComponent.decorators = [
13093
13114
  (activityChange)="handleChangedActivity(index, $event)"
13094
13115
  (activityDeleted)="deleteActivity($event)"
13095
13116
  (genericTriggerFired)="handleGenericTriggerFired($event)"
13117
+ (formTriggerFired)="handleFormTriggerFired()"
13096
13118
  (triggerFired)="handleTriggerFired($event)"
13097
13119
  (linkClicked)="linkClicked.emit($event)"
13098
13120
  (formCreated)="handleFormCreation()"></co-component-activity-overview>
@@ -13113,6 +13135,7 @@ ComponentActivityListComponent.decorators = [
13113
13135
  (activityChange)="handleChangedActivity(index, $event)"
13114
13136
  (activityDeleted)="deleteActivity($event)"
13115
13137
  (genericTriggerFired)="handleGenericTriggerFired($event)"
13138
+ (formTriggerFired)="handleFormTriggerFired()"
13116
13139
  (triggerFired)="handleTriggerFired($event)"
13117
13140
  (linkClicked)="linkClicked.emit($event)"
13118
13141
  (formCreated)="handleFormCreation()"></co-component-activity-overview>
@@ -13243,7 +13266,7 @@ ComponentActivityOverviewComponent.decorators = [
13243
13266
  <div class="overview-main">
13244
13267
  <div class="label-date-activity">
13245
13268
  <div class="activity-label">
13246
- <span class="label" [textContent]="'CURRENT_STATE' | localize"></span>
13269
+ <span class="label" [textContent]="'NEXT_STATE' | localize"></span>
13247
13270
  </div>
13248
13271
  <div class="overview-wrapper-date">
13249
13272
  <div class="date-wrapper" [class.overdue]="overDue">
@@ -13309,6 +13332,7 @@ ComponentActivityOverviewComponent.decorators = [
13309
13332
  (editingComplete)="onSaveActivity($event)"
13310
13333
  (activityDeleted)="onDeleteActivity($event)"
13311
13334
  (showWorkLog)="showTaskFormAndWorkLog()"
13335
+ (triggerFired)="handleFormTriggerFired()"
13312
13336
  ></co-task-modifier>
13313
13337
 
13314
13338
  `,