vcomply-workflow-engine 6.0.13 → 6.0.14

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 (48) hide show
  1. package/esm2022/lib/add-multiple-responsibility/add-multiple-responsibility.component.mjs +11 -13
  2. package/esm2022/lib/add-multiple-responsibility-with-tab/add-multiple-responsibility-with-tab.component.mjs +11 -13
  3. package/esm2022/lib/add-multiple-risk/add-multiple-risk.component.mjs +13 -15
  4. package/esm2022/lib/create-documents/create-documents.component.mjs +7 -12
  5. package/esm2022/lib/interfaces/frequency.interface.mjs +2 -0
  6. package/esm2022/lib/interfaces/responsibilty.interface.mjs +2 -0
  7. package/esm2022/lib/log-an-issue/log-an-issue.component.mjs +27 -29
  8. package/esm2022/lib/report-a-case/components/report-date/report-date.component.mjs +8 -8
  9. package/esm2022/lib/report-a-case/constants/report-case.constants.mjs +3 -3
  10. package/esm2022/lib/report-a-case/workflow-case/workflow-case.component.mjs +38 -39
  11. package/esm2022/lib/sharedComponents/document-section/document-section.component.mjs +11 -13
  12. package/esm2022/lib/sharedComponents/frequency/frequency-annual/frequency-annual.component.mjs +2 -1
  13. package/esm2022/lib/sharedComponents/frequency/frequency-biannual/frequency-biannual.component.mjs +2 -1
  14. package/esm2022/lib/sharedComponents/frequency/frequency-quarterly/frequency-quarterly.component.mjs +2 -1
  15. package/esm2022/lib/sharedComponents/frequency/frequency-random/frequency-random.component.mjs +2 -1
  16. package/esm2022/lib/sharedComponents/frequency/frequency.service.mjs +58 -1
  17. package/esm2022/lib/workflow/grc-object/grc-object-container/grc-object-container.component.mjs +20 -20
  18. package/esm2022/lib/workflow-assessment/import-an-assessment/import-an-assessment.component.mjs +12 -14
  19. package/esm2022/lib/workflow-assessment/workflow-assessment.component.mjs +22 -26
  20. package/esm2022/lib/workflow-compliance/workflow-compliance.component.mjs +46 -39
  21. package/esm2022/lib/workflow-policy/workflow-policy.component.mjs +35 -37
  22. package/esm2022/lib/workflow-program/workflow-program.component.mjs +32 -34
  23. package/esm2022/lib/workflow-risk/workflow-risk.component.mjs +29 -31
  24. package/esm2022/lib/workflow-services/responsibility.service.mjs +61 -1
  25. package/fesm2022/vcomply-workflow-engine.mjs +215 -130
  26. package/fesm2022/vcomply-workflow-engine.mjs.map +1 -1
  27. package/lib/add-multiple-responsibility/add-multiple-responsibility.component.d.ts +1 -3
  28. package/lib/add-multiple-responsibility-with-tab/add-multiple-responsibility-with-tab.component.d.ts +1 -3
  29. package/lib/add-multiple-risk/add-multiple-risk.component.d.ts +1 -3
  30. package/lib/create-documents/create-documents.component.d.ts +1 -3
  31. package/lib/interfaces/frequency.interface.d.ts +36 -0
  32. package/lib/interfaces/responsibilty.interface.d.ts +61 -0
  33. package/lib/log-an-issue/log-an-issue.component.d.ts +1 -3
  34. package/lib/report-a-case/constants/report-case.constants.d.ts +1 -1
  35. package/lib/report-a-case/workflow-case/workflow-case.component.d.ts +1 -3
  36. package/lib/sharedComponents/document-section/document-section.component.d.ts +1 -3
  37. package/lib/sharedComponents/frequency/frequency.service.d.ts +9 -7
  38. package/lib/workflow/grc-object/grc-object-container/grc-object-container.component.d.ts +1 -3
  39. package/lib/workflow-assessment/import-an-assessment/import-an-assessment.component.d.ts +1 -3
  40. package/lib/workflow-assessment/workflow-assessment.component.d.ts +2 -4
  41. package/lib/workflow-compliance/workflow-compliance.component.d.ts +5 -3
  42. package/lib/workflow-policy/workflow-policy.component.d.ts +1 -3
  43. package/lib/workflow-program/workflow-program.component.d.ts +1 -3
  44. package/lib/workflow-risk/workflow-risk.component.d.ts +3 -5
  45. package/lib/workflow-services/responsibility.service.d.ts +3 -0
  46. package/package.json +1 -1
  47. package/esm2022/lib/services/iframe.service.mjs +0 -31
  48. package/lib/services/iframe.service.d.ts +0 -6
@@ -137,6 +137,7 @@ export class FrequencyAnnualComponent {
137
137
  this.frequencyInfo.window = this.yearlyWindow;
138
138
  this.frequencyInfo.timeIn12hr = this.yearlyInterval;
139
139
  this.frequencyInfo.timeIn24Hr = this.frequencyService.timeFrom12hTo24h(this.yearlyInterval);
140
+ this.frequencyInfo.selectedMonth = [this.yearlySelected];
140
141
  this.frequencyInfo.lifecycleDetails = this.lifecycleDetails;
141
142
  this.frequencyInfo.startFrom = this.startDate;
142
143
  this.frequencyInfo.reportId = 0;
@@ -294,4 +295,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
294
295
  }], frequencyDetails: [{
295
296
  type: Output
296
297
  }] } });
297
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJlcXVlbmN5LWFubnVhbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92eC13b3JrZmxvdy1lbmdpbmUvc3JjL2xpYi9zaGFyZWRDb21wb25lbnRzL2ZyZXF1ZW5jeS9mcmVxdWVuY3ktYW5udWFsL2ZyZXF1ZW5jeS1hbm51YWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdngtd29ya2Zsb3ctZW5naW5lL3NyYy9saWIvc2hhcmVkQ29tcG9uZW50cy9mcmVxdWVuY3kvZnJlcXVlbmN5LWFubnVhbC9mcmVxdWVuY3ktYW5udWFsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsS0FBSyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFL0UsT0FBTyxNQUFNLE1BQU0sZUFBZSxDQUFDO0FBQ25DLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQzs7Ozs7OztBQU9qRSxNQUFNLE9BQU8sd0JBQXdCO0lBNEJuQyxZQUFvQixnQkFBa0M7UUFBbEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQTNCdEQsY0FBUyxHQUFlLEVBQUUsQ0FBQztRQUUzQixtQkFBYyxHQUFXLFlBQVksQ0FBQztRQUN0QyxnQkFBVyxHQUFXLENBQUMsQ0FBQztRQUN4QixpQkFBWSxHQUFXLENBQUMsQ0FBQztRQUN6QixpQkFBWSxHQUFXLEVBQUUsQ0FBQztRQUMxQixjQUFTLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNqQyx5QkFBb0IsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO1FBQ2xDLDJCQUFzQixHQUFHLElBQUksSUFBSSxDQUMvQixJQUFJLENBQUMsb0JBQW9CLENBQUMsT0FBTyxFQUFFLEdBQUcsUUFBUSxDQUMv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QUNOLElBQUksQ0FBQyxjQUFjLENBQUM7U0FDdkI7UUFDRCxJQUFJLElBQUksQ0FBQyxTQUFTLEtBQUssRUFBRSxFQUFFO1lBQ3pCLFdBQVc7Z0JBQ1QsSUFBSSxDQUFDLFNBQVM7b0JBQ2QsY0FBYztvQkFDZCxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUM7b0JBQ3BDLE1BQU07b0JBQ04sSUFBSSxDQUFDLGNBQWMsQ0FBQztTQUN2QjtRQUNELElBQUksSUFBSSxDQUFDLFNBQVMsS0FBSyxFQUFFLEVBQUU7WUFDekIsV0FBVztnQkFDVCxJQUFJLENBQUMsU0FBUztvQkFDZCxjQUFjO29CQUNkLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQztvQkFDcEMsTUFBTTtvQkFDTixJQUFJLENBQUMsY0FBYyxDQUFDO1NBQ3ZCO1FBQ0QsT0FBTyxXQUFXLENBQUM7SUFDckIsQ0FBQzsrR0F2U1Usd0JBQXdCO21HQUF4Qix3QkFBd0IsdU5DVnJDLHd2Q0F1Q0E7OzRGRDdCYSx3QkFBd0I7a0JBTHBDLFNBQVM7K0JBQ0Usc0JBQXNCO3VHQXdCdkIsUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFFRyxTQUFTO3NCQUFqQixLQUFLO2dCQUVJLGdCQUFnQjtzQkFBekIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBJbnB1dCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZyZXF1ZW5jeVNlcnZpY2UgfSBmcm9tICcuLi9mcmVxdWVuY3kuc2VydmljZSc7XG5pbXBvcnQgbW9tZW50IGZyb20gJ21vbWVudC9tb21lbnQnO1xuaW1wb3J0IHsgREVGQVVMVF9USU1FIH0gZnJvbSAnLi4vLi4vLi4vY29uc3RhbnRzL3RpbWUuY29uc3RhbnRzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLWZyZXF1ZW5jeS1hbm51YWwnLFxuICB0ZW1wbGF0ZVVybDogJy4vZnJlcXVlbmN5LWFubnVhbC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ZyZXF1ZW5jeS1hbm51YWwuY29tcG9uZW50Lmxlc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgRnJlcXVlbmN5QW5udWFsQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgbW9udGhMaXN0OiBBcnJheTxhbnk+ID0gW107XG5cbiAgeWVhcmx5SW50ZXJ2YWw6IHN0cmluZyA9IERFRkFVTFRfVElNRTtcbiAgeWVhcmx5SW5wdXQ6IG51bWJlciA9IDE7XG4gIHllYXJseUZhaWxlZDogbnVtYmVyID0gNTtcbiAgeWVhcmx5V2luZG93OiBudW1iZXIgPSAzMDtcbiAgeWVhcmx5RGF5ID0gbmV3IERhdGUoKS5nZXREYXRlKCk7XG4gIHllYXJseUxpZmVDeWNsZVN0YXJ0ID0gbmV3IERhdGUoKTtcbiAgeWVhcmx5TGlmZUN5Y2xlRW5kVGltZSA9IG5ldyBEYXRlKFxuICAgIHRoaXMueWVhcmx5TGlmZUN5Y2xlU3RhcnQuZ2V0VGltZSgpICsgODY0MDAwMDBcbiAgKTtcbiAgeWVhcmx5TGlmZWN5Y2xlT2NjdXJhbmNlOiBudW1iZXIgPSAxMDtcbiAgeWVhcmx5U2VsZXRlZExpZmVjeWNsZVR5cGU6IG51bWJlciA9IDI7XG4gIHllYXJseVNlbGVjdGVkID0gbmV3IERhdGUoKS5nZXRNb250aCgpO1xuICBsaWZlY3ljbGVEZXRhaWxzOiBhbnkgPSAnMDAwMC0wMC0wMH5+MCc7XG4gIHByZXZpb3VzU3RhcnREYXRlID0gTWF0aC5mbG9vcihEYXRlLm5vdygpIC8gMTAwMCk7XG4gIGZyZXF1ZW5jeUluZm86IGFueTtcbiAgc2hvcnRNb250aDogQXJyYXk8c3RyaW5nPiA9IFtdO1xuXG4gIEBJbnB1dCgpIHBhZ2VUeXBlOiAncmVzcG9uc2liaWxpdHknIHwgJ3BvbGljeScgPSAncmVzcG9uc2liaWxpdHknO1xuICBASW5wdXQoKSBmcmVxdWVuY3lEYXRhOiBhbnk7XG4gIEBJbnB1dCgpIG1vZGU6IGFueSA9ICcnO1xuXG4gIEBJbnB1dCgpIHN0YXJ0RGF0ZSA9IE1hdGguZmxvb3IoRGF0ZS5ub3coKSAvIDEwMDApO1xuXG4gIEBPdXRwdXQoKSBmcmVxdWVuY3lEZXRhaWxzID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBmcmVxdWVuY3lTZXJ2aWNlOiBGcmVxdWVuY3lTZXJ2aWNlKSB7fVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMubW9udGhMaXN0ID0gdGhpcy5mcmVxdWVuY3lTZXJ2aWNlLm1vbnRoQXJyYXk7XG4gICAgdGhpcy5mcmVxdWVuY3lJbmZvID0gT2JqZWN0LmFzc2lnbih0aGlzLmZyZXF1ZW5jeVNlcnZpY2UuZnJlcXVlbmN5SW5mbyk7XG4gICAgdGhpcy5zaG9ydE1vbnRoID0gdGhpcy5mcmVxdWVuY3lTZXJ2aWNlLm1vbnRoQXJyYXkubWFwKChtb250aCkgPT5cbiAgICAgIG1vbnRoLnN1YnN0cmluZygwLCAzKVxuICAgICk7XG4gICAgaWYgKFxuICAgICAgdGhpcy5mcmVxdWVuY3lEYXRhLnBhdHRlcm4gIT0gJycgJiZcbiAgICAgIHBhcnNlSW50KHRoaXMuZnJlcXVlbmN5RGF0YS5wYXR0ZXJuLnNwbGl0KCd+JylbMF0pID09PSA0XG4gICAgKSB7XG4gICAgICB0aGlzLnBvcHVsYXRlRnJlcXVlbmN5KCk7XG4gICAgfVxuICAgIHRoaXMuZ2V0QW5udWFsRnJlcXVlbmN5KCk7XG4gIH1cblxuICBwb3B1bGF0ZUZyZXF1ZW5jeSgpIHtcbiAgICBjb25zdCBwYXR0ZXJuSW5mbyA9IHRoaXMuZnJlcXVlbmN5RGF0YS5wYXR0ZXJuLnNwbGl0KCd+JykubWFwKE51bWJlcik7XG4gICAgdGhpcy55ZWFybHlTZWxlY3RlZCA9IHBhdHRlcm5JbmZvWzJdIC0gMTtcbiAgICBjb25zdCBsaWZlY3ljbGVJbmZvID0gdGhpcy5mcmVxdWVuY3lEYXRhLmxpZmVjeWNsZS5zcGxpdCgnfn4nKTtcbiAgICB0aGlzLnllYXJseUludGVydmFsID0gdGhpcy5mcmVxdWVuY3lEYXRhLmZhaWxlZFRpbWU7XG4gICAgdGhpcy55ZWFybHlXaW5kb3cgPSB0aGlzLmZyZXF1ZW5jeURhdGEud2luZG93O1xuICAgIHRoaXMueWVhcmx5SW5wdXQgPSBwYXR0ZXJuSW5mb1szXTtcbiAgICB0aGlzLnllYXJseURheSA9IHBhdHRlcm5JbmZvWzFdO1xuICAgIGlmIChOdW1iZXIobGlmZWN5Y2xlSW5mb1sxXSkgPiAwKSB7XG4gICAgICB0aGlzLnllYXJseUxpZmVjeWNsZU9jY3VyYW5jZSA9IE51bWJlcihsaWZlY3ljbGVJbmZvWzFdKTtcbiAgICB9XG5cbiAgICB0aGlzLnllYXJseUxpZmVDeWNsZVN0YXJ0ID0gbmV3IERhdGUodGhpcy5mcmVxdWVuY3lEYXRhLnN0YXJ0RGF0ZSAqIDEwMDApO1xuICAgIHRoaXMuc3RhcnREYXRlID1cbiAgICAgIHRoaXMuZnJlcXVlbmN5RGF0YS5zdGFydEZyb20gPz8gdGhpcy5mcmVxdWVuY3lEYXRhLnN0YXJ0RGF0ZTtcbiAgICB0aGlzLnllYXJseUZhaWxlZCA9IHRoaXMuZnJlcXVlbmN5RGF0YS5mYWlsZWQ7XG4gICAgaWYgKGxpZmVjeWNsZUluZm9bMF0gIT09ICcwMDAwLTAwLTAwJykge1xuICAgICAgY29uc3QgZGF0ZVNlbGVjdGVkID0gbW9tZW50KFxuICAgICAgICBsaWZlY3ljbGVJbmZvWzBdICsgJyAnICsgREVGQVVMVF9USU1FLFxuICAgICAgICAnREQtTU1NTS1ZWVlZIEhIOm1tIGEnXG4gICAgICApLnVuaXgoKTtcbiAgICAgIHRoaXMueWVhcmx5TGlmZUN5Y2xlRW5kVGltZSA9IG5ldyBEYXRlKGRhdGVTZWxlY3RlZCAqIDEwMDApO1xuICAgIH1cbiAgICB0aGlzLmxpZmVjeWNsZURldGFpbHMgPSB0aGlzLmZyZXF1ZW5jeURhdGEubGlmZWN5Y2xlO1xuICAgIGlmICh0aGlzLmZyZXF1ZW5jeURhdGEubGlmZWN5Y2xlID09ICcwMDAwLTAwLTAwfn4wJykge1xuICAgICAgdGhpcy55ZWFybHlTZWxldGVkTGlmZWN5Y2xlVHlwZSA9IDI7XG4gICAgfSBlbHNlIGlmIChsaWZlY3ljbGVJbmZvWzBdICE9PSAnMDAwMC0wMC0wMCcpIHtcbiAgICAgIHRoaXMueWVhcmx5U2VsZXRlZExpZmVjeWNsZVR5cGUgPSAwO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnllYXJseVNlbGV0ZWRMaWZlY3ljbGVUeXBlID0gMTtcbiAgICB9XG4gIH1cblxuICBvblRpbWVDaGFuZ2VkKGV2ZW50OiBzdHJpbmcpIHtcbiAgICB0aGlzLnllYXJseUludGVydmFsID0gZXZlbnQ7XG4gICAgdGhpcy5nZXRBbm51YWxGcmVxdWVuY3koKTtcbiAgfVxuXG4gIGRhdGVDaGFuZ2UoZXZlbnQ6IG51bWJlcikge1xuICAgIHRoaXMueWVhcmx5RGF5ID0gZXZlbnQ7XG4gICAgdGhpcy5nZXRBbm51YWxGcmVxdWVuY3koKTtcbiAgfVxuXG4gIHZhbHVlQ2hhbmdlZEZpcnN0KGV2ZW50OiBhbnkpIHtcbiAgICB0aGlzLnllYXJseUlucHV0ID0gZXZlbnQudmFsdWU7XG4gICAgdGhpcy5nZXRBbm51YWxGcmVxdWVuY3koKTtcbiAgfVxuXG4gIHNlbGVjdGVkTW9udGgoZXZlbnQ6IGFueSkge1xuICAgIHRoaXMueWVhcmx5U2VsZWN0ZWQgPSBwYXJzZUludChldmVudC50YXJnZXQudmFsdWUpO1xuICAgIHRoaXMuZ2V0QW5udWFsRnJlcXVlbmN5KCk7XG4gIH1cblxuICBsaWZlY3ljbGVDaGFuZ2UoZXZlbnQ6IGFueSkge1xuICAgIHN3aXRjaCAoZXZlbnQudHlwZSkge1xuICAgICAgY2FzZSAwOlxuICAgICAgICB0aGlzLmxpZmVjeWNsZURldGFpbHMgPSBldmVudC5lbmRzQnkgKyAnfn4wJztcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIDE6XG4gICAgICAgIHRoaXMubGlmZWN5Y2xlRGV0YWlscyA9ICcwMDAwLTAwLTAwfn4nICsgZXZlbnQuZW5kYWZ0ZXI7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAyOlxuICAgICAgICB0aGlzLmxpZmVjeWNsZURldGFpbHMgPSAnMDAwMC0wMC0wMH5+MCc7XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgICBpZiAoZXZlbnQuc3RhcnRGcm9tLnRvU3RyaW5nKCkubGVuZ3RoID4gMTApIHtcbiAgICAgIHRoaXMuc3RhcnREYXRlID0gTWF0aC5mbG9vcihldmVudC5zdGFydEZyb20gLyAxMDAwKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zdGFydERhdGUgPSBNYXRoLmZsb29yKGV2ZW50LnN0YXJ0RnJvbSk7XG4gICAgfVxuICAgIGxldCBlbmRCeURhdGUgPSBNYXRoLmZsb29yKG5ldyBEYXRlKCkuZ2V0VGltZSgpIC8gMTAwMCArIDg2NDAwMDAwKTtcbiAgICBpZiAoZXZlbnQudHlwZSA9PT0gMCkge1xuICAgICAgZW5kQnlEYXRlID0gZXZlbnQuZW5kc0J5XG4gICAgICAgID8gbW9tZW50KGV2ZW50LmVuZHNCeSArICcgMDA6MDA6MDAnLCAnREQtTU1NLVlZWVkgSEg6bW06c3MnKS51bml4KClcbiAgICAgICAgOiBlbmRCeURhdGU7XG4gICAgfVxuICAgIHRoaXMuZnJlcXVlbmN5SW5mby5mYWlsZWRfdGltZV91dGMgPSBlbmRCeURhdGU7XG4gICAgdGhpcy5nZXRBbm51YWxGcmVxdWVuY3koKTtcbiAgfVxuXG4gIG9uVmFsdWVDaGFuZ2UoZXZlbnQ6IGFueSkge1xuICAgIGlmIChldmVudC50eXBlID09PSAnY29tcGxldGVkJykge1xuICAgICAgdGhpcy55ZWFybHlXaW5kb3cgPSBldmVudC52YWx1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy55ZWFybHlGYWlsZWQgPSBldmVudC52YWx1ZTtcbiAgICB9XG4gICAgdGhpcy5nZXRBbm51YWxGcmVxdWVuY3koKTtcbiAgfVxuXG4gIC8vIGZyZXF1ZW5jeSBwYXR0ZXJuIGFuZCBkZXRhaWxzIGluZm9cbiAgZ2V0QW5udWFsRnJlcXVlbmN5KCkge1xuICAgIHRoaXMuZnJlcXVlbmN5SW5mby5wbGFjZWhvbGRlciA9IHRoaXMuZ2V0RnJlcXVlbmN5UGxhY2Vob2xkZXIoXG4gICAgICBOdW1iZXIodGhpcy55ZWFybHlJbnB1dClcbiAgICApO1xuICAgIHRoaXMuZnJlcXVlbmN5SW5mby5wYXR0ZXJuID1cbiAgICAgIDQgK1xuICAgICAgJ34nICtcbiAgICAgIHRoaXMueWVhcmx5RGF5ICtcbiAgICAgICd+JyArXG4gICAgICAodGhpcy55ZWFybHlTZWxlY3RlZCArIDEpICtcbiAgICAgICd+JyArXG4gICAgICB0aGlzLnllYXJseUlucHV0O1xuICAgIHRoaXMuZnJlcXVlbmN5SW5mby5jYXNlID0gJ3llYXJseSc7XG4gICAgdGhpcy5mcmVxdWVuY3lJbmZvLmZhaWxlZEFmdGVyID0gdGhpcy55ZWFybHlGYWlsZWQ7XG4gICAgdGhpcy5mcmVxdWVuY3lJbmZvLndpbmRvdyA9IHRoaXMueWVhcmx5V2luZG93O1xuICAgIHRoaXMuZnJlcXVlbmN5SW5mby50aW1lSW4xMmhyID0gdGhpcy55ZWFybHlJbnRlcnZhbDtcbiAgICB0aGlzLmZyZXF1ZW5jeUluZm8udGltZUluMjRIciA9IHRoaXMuZnJlcXVlbmN5U2VydmljZS50aW1lRnJvbTEyaFRvMjRoKFxuICAgICAgdGhpcy55ZWFybHlJbnRlcnZhbFxuICAgICk7XG4gICAgdGhpcy5mcmVxdWVuY3lJbmZvLmxpZmVjeWNsZURldGFpbHMgPSB0aGlzLmxpZmVjeWNsZURldGFpbHM7XG4gICAgdGhpcy5mcmVxdWVuY3lJbmZvLnN0YXJ0RnJvbSA9IHRoaXMuc3RhcnREYXRlO1xuICAgIHRoaXMuZnJlcXVlbmN5SW5mby5yZXBvcnRJZCA9IDA7XG4gICAgdGhpcy5mcmVxdWVuY3lEZXRhaWxzLmVtaXQodGhpcy5mcmVxdWVuY3lJbmZvKTtcbiAgfVxuXG4gIGdldEZyZXF1ZW5jeVBsYWNlaG9sZGVyKHllYXJseUlucHV0OiBhbnkpIHtcbiAgICBsZXQgcGxhY2Vob2xkZXIgPSAnJztcbiAgICBpZiAoeWVhcmx5SW5wdXQgPT09IDEpIHtcbiAgICAgIHBsYWNlaG9sZGVyID0gdGhpcy5nZXRQbGFjZWhvbGRlckZvclN0MigpO1xuICAgIH0gZWxzZSB7XG4gICAgICBwbGFjZWhvbGRlciA9IHRoaXMuZ2V0UGxhY2Vob2xkZXJGb3JHdDEoKTtcbiAgICB9XG4gICAgcmV0dXJuIHBsYWNlaG9sZGVyO1xuICB9XG5cbiAgLy8gaWYgeWVhcmx5SW5wdXQgaXMgc21hbGxlciB0aGFuIDIgdGhlbiB0aGlzIGZ1bmN0aW9uIHdpbGwgY2FsbGVkXG4gIGdldFBsYWNlaG9sZGVyRm9yU3QyKCkge1xuICAgIGxldCBwbGFjZWhvbGRlciA9ICcnO1xuICAgIGlmICh0aGlzLnllYXJseURheSA9PT0gMSkge1xuICAgICAgcGxhY2Vob2xkZXIgPVxuICAgICAgICAnMXN0IG9mIGV2ZXJ5ICcgK1xuICAgICAgICB0aGlzLnNob3J0TW9udGhbdGhpcy55ZWFybHlTZWxlY3RlZF0gK1xuICAgICAgICAnIGJ5ICcgK1xuICAgICAgICB0aGlzLnllYXJseUludGVydmFsO1xuICAgIH1cbiAgICBpZiAodGhpcy55ZWFybHlEYXkgPT09IDIpIHtcbiAgICAgIHBsYWNlaG9sZGVyID1cbiAgICAgICAgJzJuZCBvZiBldmVyeSAnICtcbiAgICAgICAgdGhpcy5zaG9ydE1vbnRoW3RoaXMueWVhcmx5U2VsZWN0ZWRdICtcbiAgICAgICAgJyBieSAnICtcbiAgICAgICAgdGhpcy55ZWFybHlJbnRlcnZhbDtcbiAgICB9XG4gICAgaWYgKHRoaXMueWVhcmx5RGF5ID09PSAzKSB7XG4gICAgICBwbGFjZWhvbGRlciA9XG4gICAgICAgICczcmQgb2YgZXZlcnkgJyArXG4gICAgICAgIHRoaXMuc2hvcnRNb250aFt0aGlzLnllYXJseVNlbGVjdGVkXSArXG4gICAgICAgICcgYnkgJyArXG4gICAgICAgIHRoaXMueWVhcmx5SW50ZXJ2YWw7XG4gICAgfVxuICAgIGlmICh0aGlzLnllYXJseURheSA+IDMpIHtcbiAgICAgIHBsYWNlaG9sZGVyID1cbiAgICAgICAgdGhpcy55ZWFybHlEYXkgK1xuICAgICAgICAndGggb2YgZXZlcnkgJyArXG4gICAgICAgIHRoaXMuc2hvcnRNb250aFt0aGlzLnllYXJseVNlbGVjdGVkXSArXG4gICAgICAgICcgYnkgJyArXG4gICAgICAgIHRoaXMueWVhcmx5SW50ZXJ2YWw7XG4gICAgfVxuICAgIGlmICh0aGlzLnllYXJseURheSA9PT0gMzEgfHwgdGhpcy55ZWFybHlEYXkgPT09IDIxKSB7XG4gICAgICBwbGFjZWhvbGRlciA9XG4gICAgICAgIHRoaXMueWVhcmx5RGF5ICtcbiAgICAgICAgJ3N0IG9mIGV2ZXJ5ICcgK1xuICAgICAgICB0aGlzLnNob3J0TW9udGhbdGhpcy55ZWFybHlTZWxlY3RlZF0gK1xuICAgICAgICAnIGJ5ICcgK1xuICAgICAgICB0aGlzLnllYXJseUludGVydmFsO1xuICAgIH1cbiAgICBpZiAodGhpcy55ZWFybHlEYXkgPT09IDIyKSB7XG4gICAgICBwbGFjZWhvbGRlciA9XG4gICAgICAgIHRoaXMueWVhcmx5RGF5ICtcbiAgICAgICAgJ25kIG9mIGV2ZXJ5ICcgK1xuICAgICAgICB0aGlzLnNob3J0TW9udGhbdGhpcy55ZWFybHlTZWxlY3RlZF0gK1xuICAgICAgICAnIGJ5ICcgK1xuICAgICAgICB0aGlzLnllYXJseUludGVydmFsO1xuICAgIH1cbiAgICBpZiAodGhpcy55ZWFybHlEYXkgPT09IDIzKSB7XG4gICAgICBwbGFjZWhvbGRlciA9XG4gICAgICAgIHRoaXMueWVhcmx5RGF5ICtcbiAgICAgICAgJ3JkIG9mIGV2ZXJ5ICcgK1xuICAgICAgICB0aGlzLnNob3J0TW9udGhbdGhpcy55ZWFybHlTZWxlY3RlZF0gK1xuICAgICAgICAnIGJ5ICcgK1xuICAgICAgICB0aGlzLnllYXJseUludGVydmFsO1xuICAgIH1cbiAgICByZXR1cm4gcGxhY2Vob2xkZXI7XG4gIH1cblxuICAvLyBpZiB5ZWFybHlJbnB1dCBpcyBncmVhdGVyIHRoYW4gMSB0aGVuIHRoaXMgZnVuY3Rpb24gd2lsbCBjYWxsZWRcbiAgZ2V0UGxhY2Vob2xkZXJGb3JHdDEoKSB7XG4gICAgbGV0IHBsYWNlaG9sZGVyID0gJyc7XG4gICAgaWYgKHRoaXMueWVhcmx5RGF5ID09PSAxKSB7XG4gICAgICBwbGFjZWhvbGRlciA9XG4gICAgICAgICcxc3QgJyArXG4gICAgICAgIHRoaXMuc2hvcnRNb250aFt0aGlzLnllYXJseVNlbGVjdGVkXSArXG4gICAgICAgICcsIEludGVydmFsOiBldmVyeSAnICtcbiAgICAgICAgdGhpcy55ZWFybHlJbnB1dCArXG4gICAgICAgICcgeWVhcnMgYnkgJyArXG4gICAgICAgIHRoaXMueWVhcmx5SW50ZXJ2YWw7XG4gICAgfVxuICAgIGlmICh0aGlzLnllYXJseURheSA9PT0gMikge1xuICAgICAgcGxhY2Vob2xkZXIgPVxuICAgICAgICAnMm5kICcgK1xuICAgICAgICB0aGlzLnNob3J0TW9udGhbdGhpcy55ZWFybHlTZWxlY3RlZF0gK1xuICAgICAgICAnLCBJbnRlcnZhbDogZXZlcnkgJyArXG4gICAgICAgIHRoaXMueWVhcmx5SW5wdXQgK1xuICAgICAgICAnIHllYXJzIGJ5ICcgK1xuICAgICAgICB0aGlzLnllYXJseUludGVydmFsO1xuICAgIH1cbiAgICBpZiAodGhpcy55ZWFybHlEYXkgPT09IDMpIHtcbiAgICAgIHBsYWNlaG9sZGVyID1cbiAgICAgICAgJzNyZCAnICtcbiAgICAgICAgdGhpcy5zaG9ydE1vbnRoW3RoaXMueWVhcmx5U2VsZWN0ZWRdICtcbiAgICAgICAgJywgSW50ZXJ2YWw6IGV2ZXJ5ICcgK1xuICAgICAgICB0aGlzLnllYXJseUlucHV0ICtcbiAgICAgICAgJyB5ZWFycyBieSAnICtcbiAgICAgICAgdGhpcy55ZWFybHlJbnRlcnZhbDtcbiAgICB9XG4gICAgaWYgKHRoaXMueWVhcmx5RGF5ID4gMykge1xuICAgICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOiBtYXgtbGluZS1sZW5ndGhcbiAgICAgIHBsYWNlaG9sZGVyID1cbiAgICAgICAgdGhpcy55ZWFybHlEYXkgK1xuICAgICAgICAndGggb2YgICcgK1xuICAgICAgICB0aGlzLnNob3J0TW9udGhbdGhpcy55ZWFybHlTZWxlY3RlZF0gK1xuICAgICAgICAnLCBJbnRlcnZhbDogZXZlcnkgJyArXG4gICAgICAgIHRoaXMueWVhcmx5SW5wdXQgK1xuICAgICAgICAnIHllYXJzIGJ5ICcgK1xuICAgICAgICB0aGlzLnllYXJseUludGVydmFsO1xuICAgIH1cbiAgICBpZiAodGhpcy55ZWFybHlEYXkgPT09IDMxIHx8IHRoaXMueWVhcmx5RGF5ID09PSAyMSkge1xuICAgICAgcGxhY2Vob2xkZXIgPVxuICAgICAgICB0aGlzLnllYXJseURheSArXG4gICAgICAgICdzdCBvZiBldmVyeSAnICtcbiAgICAgICAgdGhpcy5zaG9ydE1vbnRoW3RoaXMueWVhcmx5U2VsZWN0ZWRdICtcbiAgICAgICAgJyBieSAnICtcbiAgICAgICAgdGhpcy55ZWFybHlJbnRlcnZhbDtcbiAgICB9XG4gICAgaWYgKHRoaXMueWVhcmx5RGF5ID09PSAyMikge1xuICAgICAgcGxhY2Vob2xkZXIgPVxuICAgICAgICB0aGlzLnllYXJseURheSArXG4gICAgICAgICduZCBvZiBldmVyeSAnICtcbiAgICAgICAgdGhpcy5zaG9ydE1vbnRoW3RoaXMueWVhcmx5U2VsZWN0ZWRdICtcbiAgICAgICAgJyBieSAnICtcbiAgICAgICAgdGhpcy55ZWFybHlJbnRlcnZhbDtcbiAgICB9XG4gICAgaWYgKHRoaXMueWVhcmx5RGF5ID09PSAyMykge1xuICAgICAgcGxhY2Vob2xkZXIgPVxuICAgICAgICB0aGlzLnllYXJseURheSArXG4gICAgICAgICdyZCBvZiBldmVyeSAnICtcbiAgICAgICAgdGhpcy5zaG9ydE1vbnRoW3RoaXMueWVhcmx5U2VsZWN0ZWRdICtcbiAgICAgICAgJyBieSAnICtcbiAgICAgICAgdGhpcy55ZWFybHlJbnRlcnZhbDtcbiAgICB9XG4gICAgcmV0dXJuIHBsYWNlaG9sZGVyO1xuICB9XG59XG4iLCI8IS0tIDxwPmZyZXF1ZW5jeS1hbm51YWwgd29ya3MhPC9wPiAtLT5cbjxkaXYgY2xhc3M9XCJmcmVxdWVuY3ktYW5udWFsXCI+XG4gIDxhcHAtZnJlcXVlbmN5LXRvcFxuICAgIFtpZF09XCI1XCJcbiAgICBbaW5wdXRUaW1lXT1cInllYXJseUludGVydmFsXCJcbiAgICBbb2NjdXJyZW5jZUZpcnN0XT1cInllYXJseUlucHV0XCJcbiAgICBbeWVhcmx5RGF5XT1cInllYXJseURheVwiXG4gICAgW2ZyZXF1ZW5jeVR5cGVdPVwiMlwiXG4gICAgKHRpbWVDaGFuZ2VkKT1cIm9uVGltZUNoYW5nZWQoJGV2ZW50KVwiXG4gICAgKHZhbHVlQ2hhbmdlZEZpcnN0KT1cInZhbHVlQ2hhbmdlZEZpcnN0KCRldmVudClcIlxuICAgICh5ZWFybHlEYXRlQ2hhbmdlZCk9XCJkYXRlQ2hhbmdlKCRldmVudClcIlxuICAgIFttb2RlXT1cIm1vZGVcIlxuICA+PC9hcHAtZnJlcXVlbmN5LXRvcD5cbiAgPGFwcC1mcmVxdWVuY3ktcmFkaW8tbGlzdFxuICAgIFtyYWRpb0xpc3RdPVwibW9udGhMaXN0XCJcbiAgICBbc2VsZWN0ZWRJbmRleF09XCJ5ZWFybHlTZWxlY3RlZFwiXG4gICAgKHNlbGVjdGVkUmFkaW8pPVwic2VsZWN0ZWRNb250aCgkZXZlbnQpXCJcbiAgICBbbW9kZV09XCJtb2RlXCJcbiAgPlxuICA8L2FwcC1mcmVxdWVuY3ktcmFkaW8tbGlzdD5cbiAgPGFwcC1mcmVxdWVuY3ktZHVlLWRhdGVcbiAgICBbcGFnZU5hbWVdPVwiJ3llYXJseSdcIlxuICAgIFttb2RlXT1cIm1vZGVcIlxuICAgIFtpZF09XCI1XCJcbiAgICBbcGFnZVR5cGVdPVwicGFnZVR5cGVcIlxuICAgIFtjb21wbGV0ZWRWYWx1ZV09XCJ5ZWFybHlXaW5kb3dcIlxuICAgIFtub3RDb21wbGV0ZWRWYWx1ZV09XCJ5ZWFybHlGYWlsZWRcIlxuICAgICh2YWx1ZUNoYW5nZSk9XCJvblZhbHVlQ2hhbmdlKCRldmVudClcIlxuICA+PC9hcHAtZnJlcXVlbmN5LWR1ZS1kYXRlPlxuICA8YXBwLWZyZXF1ZW5jeS1saWZlY3ljbGVcbiAgICBbaWRdPVwiNVwiXG4gICAgW3N0YXJ0RGF0ZV09XCJ5ZWFybHlMaWZlQ3ljbGVTdGFydFwiXG4gICAgW2VuZERhdGVdPVwieWVhcmx5TGlmZUN5Y2xlRW5kVGltZVwiXG4gICAgW29jY3VycmFuY2VdPVwieWVhcmx5TGlmZWN5Y2xlT2NjdXJhbmNlXCJcbiAgICBbc2VsZWN0ZWRMaWZlY3ljbGVUeXBlXT1cInllYXJseVNlbGV0ZWRMaWZlY3ljbGVUeXBlXCJcbiAgICAoc2VsZWN0ZWRPY2N1cmFuY2UpPVwibGlmZWN5Y2xlQ2hhbmdlKCRldmVudClcIlxuICAgIFttb2RlXT1cIm1vZGVcIlxuICA+PC9hcHAtZnJlcXVlbmN5LWxpZmVjeWNsZT5cbjwvZGl2PlxuIl19
298
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJlcXVlbmN5LWFubnVhbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92eC13b3JrZmxvdy1lbmdpbmUvc3JjL2xpYi9zaGFyZWRDb21wb25lbnRzL2ZyZXF1ZW5jeS9mcmVxdWVuY3ktYW5udWFsL2ZyZXF1ZW5jeS1hbm51YWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdngtd29ya2Zsb3ctZW5naW5lL3NyYy9saWIvc2hhcmVkQ29tcG9uZW50cy9mcmVxdWVuY3kvZnJlcXVlbmN5LWFubnVhbC9mcmVxdWVuY3ktYW5udWFsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsS0FBSyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFL0UsT0FBTyxNQUFNLE1BQU0sZUFBZSxDQUFDO0FBQ25DLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQzs7Ozs7OztBQU9qRSxNQUFNLE9BQU8sd0JBQXdCO0lBNEJuQyxZQUFvQixnQkFBa0M7UUFBbEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQTNCdEQsY0FBUyxHQUFlLEVBQUUsQ0FBQztRQUUzQixtQkFBYyxHQUFXLFlBQVksQ0FBQztRQUN0QyxnQkFBVyxHQUFXLENBQUMsQ0FBQztRQUN4QixpQkFBWSxHQUFXLENBQUMsQ0FBQztRQUN6QixpQkFBWSxHQUFXLEVBQUUsQ0FBQztRQUMxQixjQUFTLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNqQyx5QkFBb0IsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO1FBQ2xDLDJCQUFzQixHQUFHLElBQUksSUFBSSxDQUMvQixJQUFJLENBQUMsb0JBQW9CLENBQUMsT0FBTyxFQUFFLEdBQUcsUUFBUSxDQUMv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LGNBQWM7b0JBQ2QsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDO29CQUNwQyxNQUFNO29CQUNOLElBQUksQ0FBQyxjQUFjLENBQUM7U0FDdkI7UUFDRCxJQUFJLElBQUksQ0FBQyxTQUFTLEtBQUssRUFBRSxFQUFFO1lBQ3pCLFdBQVc7Z0JBQ1QsSUFBSSxDQUFDLFNBQVM7b0JBQ2QsY0FBYztvQkFDZCxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUM7b0JBQ3BDLE1BQU07b0JBQ04sSUFBSSxDQUFDLGNBQWMsQ0FBQztTQUN2QjtRQUNELElBQUksSUFBSSxDQUFDLFNBQVMsS0FBSyxFQUFFLEVBQUU7WUFDekIsV0FBVztnQkFDVCxJQUFJLENBQUMsU0FBUztvQkFDZCxjQUFjO29CQUNkLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQztvQkFDcEMsTUFBTTtvQkFDTixJQUFJLENBQUMsY0FBYyxDQUFDO1NBQ3ZCO1FBQ0QsT0FBTyxXQUFXLENBQUM7SUFDckIsQ0FBQzsrR0F4U1Usd0JBQXdCO21HQUF4Qix3QkFBd0IsdU5DVnJDLHd2Q0F1Q0E7OzRGRDdCYSx3QkFBd0I7a0JBTHBDLFNBQVM7K0JBQ0Usc0JBQXNCO3VHQXdCdkIsUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFFRyxTQUFTO3NCQUFqQixLQUFLO2dCQUVJLGdCQUFnQjtzQkFBekIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBJbnB1dCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZyZXF1ZW5jeVNlcnZpY2UgfSBmcm9tICcuLi9mcmVxdWVuY3kuc2VydmljZSc7XG5pbXBvcnQgbW9tZW50IGZyb20gJ21vbWVudC9tb21lbnQnO1xuaW1wb3J0IHsgREVGQVVMVF9USU1FIH0gZnJvbSAnLi4vLi4vLi4vY29uc3RhbnRzL3RpbWUuY29uc3RhbnRzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLWZyZXF1ZW5jeS1hbm51YWwnLFxuICB0ZW1wbGF0ZVVybDogJy4vZnJlcXVlbmN5LWFubnVhbC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ZyZXF1ZW5jeS1hbm51YWwuY29tcG9uZW50Lmxlc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgRnJlcXVlbmN5QW5udWFsQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgbW9udGhMaXN0OiBBcnJheTxhbnk+ID0gW107XG5cbiAgeWVhcmx5SW50ZXJ2YWw6IHN0cmluZyA9IERFRkFVTFRfVElNRTtcbiAgeWVhcmx5SW5wdXQ6IG51bWJlciA9IDE7XG4gIHllYXJseUZhaWxlZDogbnVtYmVyID0gNTtcbiAgeWVhcmx5V2luZG93OiBudW1iZXIgPSAzMDtcbiAgeWVhcmx5RGF5ID0gbmV3IERhdGUoKS5nZXREYXRlKCk7XG4gIHllYXJseUxpZmVDeWNsZVN0YXJ0ID0gbmV3IERhdGUoKTtcbiAgeWVhcmx5TGlmZUN5Y2xlRW5kVGltZSA9IG5ldyBEYXRlKFxuICAgIHRoaXMueWVhcmx5TGlmZUN5Y2xlU3RhcnQuZ2V0VGltZSgpICsgODY0MDAwMDBcbiAgKTtcbiAgeWVhcmx5TGlmZWN5Y2xlT2NjdXJhbmNlOiBudW1iZXIgPSAxMDtcbiAgeWVhcmx5U2VsZXRlZExpZmVjeWNsZVR5cGU6IG51bWJlciA9IDI7XG4gIHllYXJseVNlbGVjdGVkID0gbmV3IERhdGUoKS5nZXRNb250aCgpO1xuICBsaWZlY3ljbGVEZXRhaWxzOiBhbnkgPSAnMDAwMC0wMC0wMH5+MCc7XG4gIHByZXZpb3VzU3RhcnREYXRlID0gTWF0aC5mbG9vcihEYXRlLm5vdygpIC8gMTAwMCk7XG4gIGZyZXF1ZW5jeUluZm86IGFueTtcbiAgc2hvcnRNb250aDogQXJyYXk8c3RyaW5nPiA9IFtdO1xuXG4gIEBJbnB1dCgpIHBhZ2VUeXBlOiAncmVzcG9uc2liaWxpdHknIHwgJ3BvbGljeScgPSAncmVzcG9uc2liaWxpdHknO1xuICBASW5wdXQoKSBmcmVxdWVuY3lEYXRhOiBhbnk7XG4gIEBJbnB1dCgpIG1vZGU6IGFueSA9ICcnO1xuXG4gIEBJbnB1dCgpIHN0YXJ0RGF0ZSA9IE1hdGguZmxvb3IoRGF0ZS5ub3coKSAvIDEwMDApO1xuXG4gIEBPdXRwdXQoKSBmcmVxdWVuY3lEZXRhaWxzID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBmcmVxdWVuY3lTZXJ2aWNlOiBGcmVxdWVuY3lTZXJ2aWNlKSB7fVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMubW9udGhMaXN0ID0gdGhpcy5mcmVxdWVuY3lTZXJ2aWNlLm1vbnRoQXJyYXk7XG4gICAgdGhpcy5mcmVxdWVuY3lJbmZvID0gT2JqZWN0LmFzc2lnbih0aGlzLmZyZXF1ZW5jeVNlcnZpY2UuZnJlcXVlbmN5SW5mbyk7XG4gICAgdGhpcy5zaG9ydE1vbnRoID0gdGhpcy5mcmVxdWVuY3lTZXJ2aWNlLm1vbnRoQXJyYXkubWFwKChtb250aCkgPT5cbiAgICAgIG1vbnRoLnN1YnN0cmluZygwLCAzKVxuICAgICk7XG4gICAgaWYgKFxuICAgICAgdGhpcy5mcmVxdWVuY3lEYXRhLnBhdHRlcm4gIT0gJycgJiZcbiAgICAgIHBhcnNlSW50KHRoaXMuZnJlcXVlbmN5RGF0YS5wYXR0ZXJuLnNwbGl0KCd+JylbMF0pID09PSA0XG4gICAgKSB7XG4gICAgICB0aGlzLnBvcHVsYXRlRnJlcXVlbmN5KCk7XG4gICAgfVxuICAgIHRoaXMuZ2V0QW5udWFsRnJlcXVlbmN5KCk7XG4gIH1cblxuICBwb3B1bGF0ZUZyZXF1ZW5jeSgpIHtcbiAgICBjb25zdCBwYXR0ZXJuSW5mbyA9IHRoaXMuZnJlcXVlbmN5RGF0YS5wYXR0ZXJuLnNwbGl0KCd+JykubWFwKE51bWJlcik7XG4gICAgdGhpcy55ZWFybHlTZWxlY3RlZCA9IHBhdHRlcm5JbmZvWzJdIC0gMTtcbiAgICBjb25zdCBsaWZlY3ljbGVJbmZvID0gdGhpcy5mcmVxdWVuY3lEYXRhLmxpZmVjeWNsZS5zcGxpdCgnfn4nKTtcbiAgICB0aGlzLnllYXJseUludGVydmFsID0gdGhpcy5mcmVxdWVuY3lEYXRhLmZhaWxlZFRpbWU7XG4gICAgdGhpcy55ZWFybHlXaW5kb3cgPSB0aGlzLmZyZXF1ZW5jeURhdGEud2luZG93O1xuICAgIHRoaXMueWVhcmx5SW5wdXQgPSBwYXR0ZXJuSW5mb1szXTtcbiAgICB0aGlzLnllYXJseURheSA9IHBhdHRlcm5JbmZvWzFdO1xuICAgIGlmIChOdW1iZXIobGlmZWN5Y2xlSW5mb1sxXSkgPiAwKSB7XG4gICAgICB0aGlzLnllYXJseUxpZmVjeWNsZU9jY3VyYW5jZSA9IE51bWJlcihsaWZlY3ljbGVJbmZvWzFdKTtcbiAgICB9XG5cbiAgICB0aGlzLnllYXJseUxpZmVDeWNsZVN0YXJ0ID0gbmV3IERhdGUodGhpcy5mcmVxdWVuY3lEYXRhLnN0YXJ0RGF0ZSAqIDEwMDApO1xuICAgIHRoaXMuc3RhcnREYXRlID1cbiAgICAgIHRoaXMuZnJlcXVlbmN5RGF0YS5zdGFydEZyb20gPz8gdGhpcy5mcmVxdWVuY3lEYXRhLnN0YXJ0RGF0ZTtcbiAgICB0aGlzLnllYXJseUZhaWxlZCA9IHRoaXMuZnJlcXVlbmN5RGF0YS5mYWlsZWQ7XG4gICAgaWYgKGxpZmVjeWNsZUluZm9bMF0gIT09ICcwMDAwLTAwLTAwJykge1xuICAgICAgY29uc3QgZGF0ZVNlbGVjdGVkID0gbW9tZW50KFxuICAgICAgICBsaWZlY3ljbGVJbmZvWzBdICsgJyAnICsgREVGQVVMVF9USU1FLFxuICAgICAgICAnREQtTU1NTS1ZWVlZIEhIOm1tIGEnXG4gICAgICApLnVuaXgoKTtcbiAgICAgIHRoaXMueWVhcmx5TGlmZUN5Y2xlRW5kVGltZSA9IG5ldyBEYXRlKGRhdGVTZWxlY3RlZCAqIDEwMDApO1xuICAgIH1cbiAgICB0aGlzLmxpZmVjeWNsZURldGFpbHMgPSB0aGlzLmZyZXF1ZW5jeURhdGEubGlmZWN5Y2xlO1xuICAgIGlmICh0aGlzLmZyZXF1ZW5jeURhdGEubGlmZWN5Y2xlID09ICcwMDAwLTAwLTAwfn4wJykge1xuICAgICAgdGhpcy55ZWFybHlTZWxldGVkTGlmZWN5Y2xlVHlwZSA9IDI7XG4gICAgfSBlbHNlIGlmIChsaWZlY3ljbGVJbmZvWzBdICE9PSAnMDAwMC0wMC0wMCcpIHtcbiAgICAgIHRoaXMueWVhcmx5U2VsZXRlZExpZmVjeWNsZVR5cGUgPSAwO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnllYXJseVNlbGV0ZWRMaWZlY3ljbGVUeXBlID0gMTtcbiAgICB9XG4gIH1cblxuICBvblRpbWVDaGFuZ2VkKGV2ZW50OiBzdHJpbmcpIHtcbiAgICB0aGlzLnllYXJseUludGVydmFsID0gZXZlbnQ7XG4gICAgdGhpcy5nZXRBbm51YWxGcmVxdWVuY3koKTtcbiAgfVxuXG4gIGRhdGVDaGFuZ2UoZXZlbnQ6IG51bWJlcikge1xuICAgIHRoaXMueWVhcmx5RGF5ID0gZXZlbnQ7XG4gICAgdGhpcy5nZXRBbm51YWxGcmVxdWVuY3koKTtcbiAgfVxuXG4gIHZhbHVlQ2hhbmdlZEZpcnN0KGV2ZW50OiBhbnkpIHtcbiAgICB0aGlzLnllYXJseUlucHV0ID0gZXZlbnQudmFsdWU7XG4gICAgdGhpcy5nZXRBbm51YWxGcmVxdWVuY3koKTtcbiAgfVxuXG4gIHNlbGVjdGVkTW9udGgoZXZlbnQ6IGFueSkge1xuICAgIHRoaXMueWVhcmx5U2VsZWN0ZWQgPSBwYXJzZUludChldmVudC50YXJnZXQudmFsdWUpO1xuICAgIHRoaXMuZ2V0QW5udWFsRnJlcXVlbmN5KCk7XG4gIH1cblxuICBsaWZlY3ljbGVDaGFuZ2UoZXZlbnQ6IGFueSkge1xuICAgIHN3aXRjaCAoZXZlbnQudHlwZSkge1xuICAgICAgY2FzZSAwOlxuICAgICAgICB0aGlzLmxpZmVjeWNsZURldGFpbHMgPSBldmVudC5lbmRzQnkgKyAnfn4wJztcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIDE6XG4gICAgICAgIHRoaXMubGlmZWN5Y2xlRGV0YWlscyA9ICcwMDAwLTAwLTAwfn4nICsgZXZlbnQuZW5kYWZ0ZXI7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAyOlxuICAgICAgICB0aGlzLmxpZmVjeWNsZURldGFpbHMgPSAnMDAwMC0wMC0wMH5+MCc7XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgICBpZiAoZXZlbnQuc3RhcnRGcm9tLnRvU3RyaW5nKCkubGVuZ3RoID4gMTApIHtcbiAgICAgIHRoaXMuc3RhcnREYXRlID0gTWF0aC5mbG9vcihldmVudC5zdGFydEZyb20gLyAxMDAwKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zdGFydERhdGUgPSBNYXRoLmZsb29yKGV2ZW50LnN0YXJ0RnJvbSk7XG4gICAgfVxuICAgIGxldCBlbmRCeURhdGUgPSBNYXRoLmZsb29yKG5ldyBEYXRlKCkuZ2V0VGltZSgpIC8gMTAwMCArIDg2NDAwMDAwKTtcbiAgICBpZiAoZXZlbnQudHlwZSA9PT0gMCkge1xuICAgICAgZW5kQnlEYXRlID0gZXZlbnQuZW5kc0J5XG4gICAgICAgID8gbW9tZW50KGV2ZW50LmVuZHNCeSArICcgMDA6MDA6MDAnLCAnREQtTU1NLVlZWVkgSEg6bW06c3MnKS51bml4KClcbiAgICAgICAgOiBlbmRCeURhdGU7XG4gICAgfVxuICAgIHRoaXMuZnJlcXVlbmN5SW5mby5mYWlsZWRfdGltZV91dGMgPSBlbmRCeURhdGU7XG4gICAgdGhpcy5nZXRBbm51YWxGcmVxdWVuY3koKTtcbiAgfVxuXG4gIG9uVmFsdWVDaGFuZ2UoZXZlbnQ6IGFueSkge1xuICAgIGlmIChldmVudC50eXBlID09PSAnY29tcGxldGVkJykge1xuICAgICAgdGhpcy55ZWFybHlXaW5kb3cgPSBldmVudC52YWx1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy55ZWFybHlGYWlsZWQgPSBldmVudC52YWx1ZTtcbiAgICB9XG4gICAgdGhpcy5nZXRBbm51YWxGcmVxdWVuY3koKTtcbiAgfVxuXG4gIC8vIGZyZXF1ZW5jeSBwYXR0ZXJuIGFuZCBkZXRhaWxzIGluZm9cbiAgZ2V0QW5udWFsRnJlcXVlbmN5KCkge1xuICAgIHRoaXMuZnJlcXVlbmN5SW5mby5wbGFjZWhvbGRlciA9IHRoaXMuZ2V0RnJlcXVlbmN5UGxhY2Vob2xkZXIoXG4gICAgICBOdW1iZXIodGhpcy55ZWFybHlJbnB1dClcbiAgICApO1xuICAgIHRoaXMuZnJlcXVlbmN5SW5mby5wYXR0ZXJuID1cbiAgICAgIDQgK1xuICAgICAgJ34nICtcbiAgICAgIHRoaXMueWVhcmx5RGF5ICtcbiAgICAgICd+JyArXG4gICAgICAodGhpcy55ZWFybHlTZWxlY3RlZCArIDEpICtcbiAgICAgICd+JyArXG4gICAgICB0aGlzLnllYXJseUlucHV0O1xuICAgIHRoaXMuZnJlcXVlbmN5SW5mby5jYXNlID0gJ3llYXJseSc7XG4gICAgdGhpcy5mcmVxdWVuY3lJbmZvLmZhaWxlZEFmdGVyID0gdGhpcy55ZWFybHlGYWlsZWQ7XG4gICAgdGhpcy5mcmVxdWVuY3lJbmZvLndpbmRvdyA9IHRoaXMueWVhcmx5V2luZG93O1xuICAgIHRoaXMuZnJlcXVlbmN5SW5mby50aW1lSW4xMmhyID0gdGhpcy55ZWFybHlJbnRlcnZhbDtcbiAgICB0aGlzLmZyZXF1ZW5jeUluZm8udGltZUluMjRIciA9IHRoaXMuZnJlcXVlbmN5U2VydmljZS50aW1lRnJvbTEyaFRvMjRoKFxuICAgICAgdGhpcy55ZWFybHlJbnRlcnZhbFxuICAgICk7XG4gICAgdGhpcy5mcmVxdWVuY3lJbmZvLnNlbGVjdGVkTW9udGggPSBbdGhpcy55ZWFybHlTZWxlY3RlZF07XG4gICAgdGhpcy5mcmVxdWVuY3lJbmZvLmxpZmVjeWNsZURldGFpbHMgPSB0aGlzLmxpZmVjeWNsZURldGFpbHM7XG4gICAgdGhpcy5mcmVxdWVuY3lJbmZvLnN0YXJ0RnJvbSA9IHRoaXMuc3RhcnREYXRlO1xuICAgIHRoaXMuZnJlcXVlbmN5SW5mby5yZXBvcnRJZCA9IDA7XG4gICAgdGhpcy5mcmVxdWVuY3lEZXRhaWxzLmVtaXQodGhpcy5mcmVxdWVuY3lJbmZvKTtcbiAgfVxuXG4gIGdldEZyZXF1ZW5jeVBsYWNlaG9sZGVyKHllYXJseUlucHV0OiBhbnkpIHtcbiAgICBsZXQgcGxhY2Vob2xkZXIgPSAnJztcbiAgICBpZiAoeWVhcmx5SW5wdXQgPT09IDEpIHtcbiAgICAgIHBsYWNlaG9sZGVyID0gdGhpcy5nZXRQbGFjZWhvbGRlckZvclN0MigpO1xuICAgIH0gZWxzZSB7XG4gICAgICBwbGFjZWhvbGRlciA9IHRoaXMuZ2V0UGxhY2Vob2xkZXJGb3JHdDEoKTtcbiAgICB9XG4gICAgcmV0dXJuIHBsYWNlaG9sZGVyO1xuICB9XG5cbiAgLy8gaWYgeWVhcmx5SW5wdXQgaXMgc21hbGxlciB0aGFuIDIgdGhlbiB0aGlzIGZ1bmN0aW9uIHdpbGwgY2FsbGVkXG4gIGdldFBsYWNlaG9sZGVyRm9yU3QyKCkge1xuICAgIGxldCBwbGFjZWhvbGRlciA9ICcnO1xuICAgIGlmICh0aGlzLnllYXJseURheSA9PT0gMSkge1xuICAgICAgcGxhY2Vob2xkZXIgPVxuICAgICAgICAnMXN0IG9mIGV2ZXJ5ICcgK1xuICAgICAgICB0aGlzLnNob3J0TW9udGhbdGhpcy55ZWFybHlTZWxlY3RlZF0gK1xuICAgICAgICAnIGJ5ICcgK1xuICAgICAgICB0aGlzLnllYXJseUludGVydmFsO1xuICAgIH1cbiAgICBpZiAodGhpcy55ZWFybHlEYXkgPT09IDIpIHtcbiAgICAgIHBsYWNlaG9sZGVyID1cbiAgICAgICAgJzJuZCBvZiBldmVyeSAnICtcbiAgICAgICAgdGhpcy5zaG9ydE1vbnRoW3RoaXMueWVhcmx5U2VsZWN0ZWRdICtcbiAgICAgICAgJyBieSAnICtcbiAgICAgICAgdGhpcy55ZWFybHlJbnRlcnZhbDtcbiAgICB9XG4gICAgaWYgKHRoaXMueWVhcmx5RGF5ID09PSAzKSB7XG4gICAgICBwbGFjZWhvbGRlciA9XG4gICAgICAgICczcmQgb2YgZXZlcnkgJyArXG4gICAgICAgIHRoaXMuc2hvcnRNb250aFt0aGlzLnllYXJseVNlbGVjdGVkXSArXG4gICAgICAgICcgYnkgJyArXG4gICAgICAgIHRoaXMueWVhcmx5SW50ZXJ2YWw7XG4gICAgfVxuICAgIGlmICh0aGlzLnllYXJseURheSA+IDMpIHtcbiAgICAgIHBsYWNlaG9sZGVyID1cbiAgICAgICAgdGhpcy55ZWFybHlEYXkgK1xuICAgICAgICAndGggb2YgZXZlcnkgJyArXG4gICAgICAgIHRoaXMuc2hvcnRNb250aFt0aGlzLnllYXJseVNlbGVjdGVkXSArXG4gICAgICAgICcgYnkgJyArXG4gICAgICAgIHRoaXMueWVhcmx5SW50ZXJ2YWw7XG4gICAgfVxuICAgIGlmICh0aGlzLnllYXJseURheSA9PT0gMzEgfHwgdGhpcy55ZWFybHlEYXkgPT09IDIxKSB7XG4gICAgICBwbGFjZWhvbGRlciA9XG4gICAgICAgIHRoaXMueWVhcmx5RGF5ICtcbiAgICAgICAgJ3N0IG9mIGV2ZXJ5ICcgK1xuICAgICAgICB0aGlzLnNob3J0TW9udGhbdGhpcy55ZWFybHlTZWxlY3RlZF0gK1xuICAgICAgICAnIGJ5ICcgK1xuICAgICAgICB0aGlzLnllYXJseUludGVydmFsO1xuICAgIH1cbiAgICBpZiAodGhpcy55ZWFybHlEYXkgPT09IDIyKSB7XG4gICAgICBwbGFjZWhvbGRlciA9XG4gICAgICAgIHRoaXMueWVhcmx5RGF5ICtcbiAgICAgICAgJ25kIG9mIGV2ZXJ5ICcgK1xuICAgICAgICB0aGlzLnNob3J0TW9udGhbdGhpcy55ZWFybHlTZWxlY3RlZF0gK1xuICAgICAgICAnIGJ5ICcgK1xuICAgICAgICB0aGlzLnllYXJseUludGVydmFsO1xuICAgIH1cbiAgICBpZiAodGhpcy55ZWFybHlEYXkgPT09IDIzKSB7XG4gICAgICBwbGFjZWhvbGRlciA9XG4gICAgICAgIHRoaXMueWVhcmx5RGF5ICtcbiAgICAgICAgJ3JkIG9mIGV2ZXJ5ICcgK1xuICAgICAgICB0aGlzLnNob3J0TW9udGhbdGhpcy55ZWFybHlTZWxlY3RlZF0gK1xuICAgICAgICAnIGJ5ICcgK1xuICAgICAgICB0aGlzLnllYXJseUludGVydmFsO1xuICAgIH1cbiAgICByZXR1cm4gcGxhY2Vob2xkZXI7XG4gIH1cblxuICAvLyBpZiB5ZWFybHlJbnB1dCBpcyBncmVhdGVyIHRoYW4gMSB0aGVuIHRoaXMgZnVuY3Rpb24gd2lsbCBjYWxsZWRcbiAgZ2V0UGxhY2Vob2xkZXJGb3JHdDEoKSB7XG4gICAgbGV0IHBsYWNlaG9sZGVyID0gJyc7XG4gICAgaWYgKHRoaXMueWVhcmx5RGF5ID09PSAxKSB7XG4gICAgICBwbGFjZWhvbGRlciA9XG4gICAgICAgICcxc3QgJyArXG4gICAgICAgIHRoaXMuc2hvcnRNb250aFt0aGlzLnllYXJseVNlbGVjdGVkXSArXG4gICAgICAgICcsIEludGVydmFsOiBldmVyeSAnICtcbiAgICAgICAgdGhpcy55ZWFybHlJbnB1dCArXG4gICAgICAgICcgeWVhcnMgYnkgJyArXG4gICAgICAgIHRoaXMueWVhcmx5SW50ZXJ2YWw7XG4gICAgfVxuICAgIGlmICh0aGlzLnllYXJseURheSA9PT0gMikge1xuICAgICAgcGxhY2Vob2xkZXIgPVxuICAgICAgICAnMm5kICcgK1xuICAgICAgICB0aGlzLnNob3J0TW9udGhbdGhpcy55ZWFybHlTZWxlY3RlZF0gK1xuICAgICAgICAnLCBJbnRlcnZhbDogZXZlcnkgJyArXG4gICAgICAgIHRoaXMueWVhcmx5SW5wdXQgK1xuICAgICAgICAnIHllYXJzIGJ5ICcgK1xuICAgICAgICB0aGlzLnllYXJseUludGVydmFsO1xuICAgIH1cbiAgICBpZiAodGhpcy55ZWFybHlEYXkgPT09IDMpIHtcbiAgICAgIHBsYWNlaG9sZGVyID1cbiAgICAgICAgJzNyZCAnICtcbiAgICAgICAgdGhpcy5zaG9ydE1vbnRoW3RoaXMueWVhcmx5U2VsZWN0ZWRdICtcbiAgICAgICAgJywgSW50ZXJ2YWw6IGV2ZXJ5ICcgK1xuICAgICAgICB0aGlzLnllYXJseUlucHV0ICtcbiAgICAgICAgJyB5ZWFycyBieSAnICtcbiAgICAgICAgdGhpcy55ZWFybHlJbnRlcnZhbDtcbiAgICB9XG4gICAgaWYgKHRoaXMueWVhcmx5RGF5ID4gMykge1xuICAgICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOiBtYXgtbGluZS1sZW5ndGhcbiAgICAgIHBsYWNlaG9sZGVyID1cbiAgICAgICAgdGhpcy55ZWFybHlEYXkgK1xuICAgICAgICAndGggb2YgICcgK1xuICAgICAgICB0aGlzLnNob3J0TW9udGhbdGhpcy55ZWFybHlTZWxlY3RlZF0gK1xuICAgICAgICAnLCBJbnRlcnZhbDogZXZlcnkgJyArXG4gICAgICAgIHRoaXMueWVhcmx5SW5wdXQgK1xuICAgICAgICAnIHllYXJzIGJ5ICcgK1xuICAgICAgICB0aGlzLnllYXJseUludGVydmFsO1xuICAgIH1cbiAgICBpZiAodGhpcy55ZWFybHlEYXkgPT09IDMxIHx8IHRoaXMueWVhcmx5RGF5ID09PSAyMSkge1xuICAgICAgcGxhY2Vob2xkZXIgPVxuICAgICAgICB0aGlzLnllYXJseURheSArXG4gICAgICAgICdzdCBvZiBldmVyeSAnICtcbiAgICAgICAgdGhpcy5zaG9ydE1vbnRoW3RoaXMueWVhcmx5U2VsZWN0ZWRdICtcbiAgICAgICAgJyBieSAnICtcbiAgICAgICAgdGhpcy55ZWFybHlJbnRlcnZhbDtcbiAgICB9XG4gICAgaWYgKHRoaXMueWVhcmx5RGF5ID09PSAyMikge1xuICAgICAgcGxhY2Vob2xkZXIgPVxuICAgICAgICB0aGlzLnllYXJseURheSArXG4gICAgICAgICduZCBvZiBldmVyeSAnICtcbiAgICAgICAgdGhpcy5zaG9ydE1vbnRoW3RoaXMueWVhcmx5U2VsZWN0ZWRdICtcbiAgICAgICAgJyBieSAnICtcbiAgICAgICAgdGhpcy55ZWFybHlJbnRlcnZhbDtcbiAgICB9XG4gICAgaWYgKHRoaXMueWVhcmx5RGF5ID09PSAyMykge1xuICAgICAgcGxhY2Vob2xkZXIgPVxuICAgICAgICB0aGlzLnllYXJseURheSArXG4gICAgICAgICdyZCBvZiBldmVyeSAnICtcbiAgICAgICAgdGhpcy5zaG9ydE1vbnRoW3RoaXMueWVhcmx5U2VsZWN0ZWRdICtcbiAgICAgICAgJyBieSAnICtcbiAgICAgICAgdGhpcy55ZWFybHlJbnRlcnZhbDtcbiAgICB9XG4gICAgcmV0dXJuIHBsYWNlaG9sZGVyO1xuICB9XG59XG4iLCI8IS0tIDxwPmZyZXF1ZW5jeS1hbm51YWwgd29ya3MhPC9wPiAtLT5cbjxkaXYgY2xhc3M9XCJmcmVxdWVuY3ktYW5udWFsXCI+XG4gIDxhcHAtZnJlcXVlbmN5LXRvcFxuICAgIFtpZF09XCI1XCJcbiAgICBbaW5wdXRUaW1lXT1cInllYXJseUludGVydmFsXCJcbiAgICBbb2NjdXJyZW5jZUZpcnN0XT1cInllYXJseUlucHV0XCJcbiAgICBbeWVhcmx5RGF5XT1cInllYXJseURheVwiXG4gICAgW2ZyZXF1ZW5jeVR5cGVdPVwiMlwiXG4gICAgKHRpbWVDaGFuZ2VkKT1cIm9uVGltZUNoYW5nZWQoJGV2ZW50KVwiXG4gICAgKHZhbHVlQ2hhbmdlZEZpcnN0KT1cInZhbHVlQ2hhbmdlZEZpcnN0KCRldmVudClcIlxuICAgICh5ZWFybHlEYXRlQ2hhbmdlZCk9XCJkYXRlQ2hhbmdlKCRldmVudClcIlxuICAgIFttb2RlXT1cIm1vZGVcIlxuICA+PC9hcHAtZnJlcXVlbmN5LXRvcD5cbiAgPGFwcC1mcmVxdWVuY3ktcmFkaW8tbGlzdFxuICAgIFtyYWRpb0xpc3RdPVwibW9udGhMaXN0XCJcbiAgICBbc2VsZWN0ZWRJbmRleF09XCJ5ZWFybHlTZWxlY3RlZFwiXG4gICAgKHNlbGVjdGVkUmFkaW8pPVwic2VsZWN0ZWRNb250aCgkZXZlbnQpXCJcbiAgICBbbW9kZV09XCJtb2RlXCJcbiAgPlxuICA8L2FwcC1mcmVxdWVuY3ktcmFkaW8tbGlzdD5cbiAgPGFwcC1mcmVxdWVuY3ktZHVlLWRhdGVcbiAgICBbcGFnZU5hbWVdPVwiJ3llYXJseSdcIlxuICAgIFttb2RlXT1cIm1vZGVcIlxuICAgIFtpZF09XCI1XCJcbiAgICBbcGFnZVR5cGVdPVwicGFnZVR5cGVcIlxuICAgIFtjb21wbGV0ZWRWYWx1ZV09XCJ5ZWFybHlXaW5kb3dcIlxuICAgIFtub3RDb21wbGV0ZWRWYWx1ZV09XCJ5ZWFybHlGYWlsZWRcIlxuICAgICh2YWx1ZUNoYW5nZSk9XCJvblZhbHVlQ2hhbmdlKCRldmVudClcIlxuICA+PC9hcHAtZnJlcXVlbmN5LWR1ZS1kYXRlPlxuICA8YXBwLWZyZXF1ZW5jeS1saWZlY3ljbGVcbiAgICBbaWRdPVwiNVwiXG4gICAgW3N0YXJ0RGF0ZV09XCJ5ZWFybHlMaWZlQ3ljbGVTdGFydFwiXG4gICAgW2VuZERhdGVdPVwieWVhcmx5TGlmZUN5Y2xlRW5kVGltZVwiXG4gICAgW29jY3VycmFuY2VdPVwieWVhcmx5TGlmZWN5Y2xlT2NjdXJhbmNlXCJcbiAgICBbc2VsZWN0ZWRMaWZlY3ljbGVUeXBlXT1cInllYXJseVNlbGV0ZWRMaWZlY3ljbGVUeXBlXCJcbiAgICAoc2VsZWN0ZWRPY2N1cmFuY2UpPVwibGlmZWN5Y2xlQ2hhbmdlKCRldmVudClcIlxuICAgIFttb2RlXT1cIm1vZGVcIlxuICA+PC9hcHAtZnJlcXVlbmN5LWxpZmVjeWNsZT5cbjwvZGl2PlxuIl19
@@ -131,6 +131,7 @@ export class FrequencyBiannualComponent {
131
131
  this.frequencyInfo.failedAfter = this.biannualFailed;
132
132
  this.frequencyInfo.window = this.biannualWindow;
133
133
  this.frequencyInfo.timeIn12hr = this.biannualInterval;
134
+ this.frequencyInfo.selectedMonth = this.biannualSelected;
134
135
  this.frequencyInfo.timeIn24Hr = this.frequencyService.timeFrom12hTo24h(this.biannualInterval);
135
136
  this.frequencyInfo.lifecycleDetails = this.lifecycleDetails;
136
137
  this.frequencyInfo.startFrom = this.startDate;
@@ -215,4 +216,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
215
216
  }], frequencyDetails: [{
216
217
  type: Output
217
218
  }] } });
218
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJlcXVlbmN5LWJpYW5udWFsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Z4LXdvcmtmbG93LWVuZ2luZS9zcmMvbGliL3NoYXJlZENvbXBvbmVudHMvZnJlcXVlbmN5L2ZyZXF1ZW5jeS1iaWFubnVhbC9mcmVxdWVuY3ktYmlhbm51YWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdngtd29ya2Zsb3ctZW5naW5lL3NyYy9saWIvc2hhcmVkQ29tcG9uZW50cy9mcmVxdWVuY3kvZnJlcXVlbmN5LWJpYW5udWFsL2ZyZXF1ZW5jeS1iaWFubnVhbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9FLE9BQU8sTUFBTSxNQUFNLGVBQWUsQ0FBQztBQUVuQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUNBQW1DLENBQUM7Ozs7Ozs7QUFPakUsTUFBTSxPQUFPLDBCQUEwQjtJQTJCckMsWUFBb0IsZ0JBQWtDO1FBQWxDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUExQnRELHFCQUFnQixHQUFHLFlBQVksQ0FBQztRQUNoQyxrQkFBYSxHQUFHLElBQUksSUFBSSxFQUFFLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDckMsbUJBQWMsR0FBRyxDQUFDLENBQUM7UUFDbkIsbUJBQWMsR0FBRyxFQUFFLENBQUM7UUFDcEIsZ0JBQVcsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ25DLDJCQUFzQixHQUFHLElBQUksSUFBSSxFQUFFLENBQUM7UUFDcEMsNkJBQXdCLEdBQUcsSUFBSSxJQUFJLENBQ2pDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxPQUFPLEVBQUUsR0FB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ckIsS0FBSztnQkFHSSxnQkFBZ0I7c0JBQXpCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgSW5wdXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgbW9tZW50IGZyb20gJ21vbWVudC9tb21lbnQnO1xuaW1wb3J0IHsgRnJlcXVlbmN5U2VydmljZSB9IGZyb20gJy4uL2ZyZXF1ZW5jeS5zZXJ2aWNlJztcbmltcG9ydCB7IERFRkFVTFRfVElNRSB9IGZyb20gJy4uLy4uLy4uL2NvbnN0YW50cy90aW1lLmNvbnN0YW50cyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1mcmVxdWVuY3ktYmlhbm51YWwnLFxuICB0ZW1wbGF0ZVVybDogJy4vZnJlcXVlbmN5LWJpYW5udWFsLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZnJlcXVlbmN5LWJpYW5udWFsLmNvbXBvbmVudC5sZXNzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEZyZXF1ZW5jeUJpYW5udWFsQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgYmlhbm51YWxJbnRlcnZhbCA9IERFRkFVTFRfVElNRTtcbiAgYmlhbm51YWxJbnB1dCA9IG5ldyBEYXRlKCkuZ2V0RGF0ZSgpO1xuICBiaWFubnVhbEZhaWxlZCA9IDU7XG4gIGJpYW5udWFsV2luZG93ID0gMzA7XG4gIGJpYW5udWFsRGF5ID0gbmV3IERhdGUoKS5nZXREYXRlKCk7XG4gIGJpYW5udWFsTGlmZUN5Y2xlU3RhcnQgPSBuZXcgRGF0ZSgpO1xuICBiaWFubnVhbExpZmVDeWNsZUVuZFRpbWUgPSBuZXcgRGF0ZShcbiAgICB0aGlzLmJpYW5udWFsTGlmZUN5Y2xlU3RhcnQuZ2V0VGltZSgpICsgODY0MDAwMDBcbiAgKTtcbiAgYmlhbm51YWxMaWZlY3ljbGVPY2N1cmFuY2UgPSAxMDtcbiAgYmlhbm51YWxTZWxldGVkTGlmZWN5Y2xlVHlwZSA9IDI7XG4gIGJpYW5udWFsU2VsZWN0ZWQ6IEFycmF5PG51bWJlcj4gPSBbXTtcbiAgYmlhbm51YWxMaWZlY3ljbGUgPSBmYWxzZTtcbiAgZnJlcXVlbmN5SW5mbzogYW55O1xuICBtb250aE5hbWVBcnJheTogQXJyYXk8c3RyaW5nPiA9IFtdO1xuICBzaG9ydE1vbnRoOiBBcnJheTxzdHJpbmc+ID0gW107XG4gIHNlbGVjdGVkTW9udGhseTogQXJyYXk8bnVtYmVyPiA9IFtdO1xuXG4gIEBJbnB1dCgpIG1vZGU6IGFueSA9ICcnO1xuICBASW5wdXQoKSBwYWdlVHlwZTogJ3Jlc3BvbnNpYmlsaXR5JyB8ICdwb2xpY3knID0gJ3Jlc3BvbnNpYmlsaXR5JztcbiAgQElucHV0KCkgc3RhcnREYXRlID0gTWF0aC5mbG9vcihEYXRlLm5vdygpIC8gMTAwMCk7XG4gIEBJbnB1dCgpIGZyZXF1ZW5jeURhdGE6IGFueTtcbiAgbGlmZWN5Y2xlRGV0YWlsczogYW55ID0gJzAwMDAtMDAtMDB+fjAnO1xuXG4gIEBPdXRwdXQoKSBmcmVxdWVuY3lEZXRhaWxzID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBmcmVxdWVuY3lTZXJ2aWNlOiBGcmVxdWVuY3lTZXJ2aWNlKSB7fVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuZnJlcXVlbmN5SW5mbyA9IE9iamVjdC5hc3NpZ24odGhpcy5mcmVxdWVuY3lTZXJ2aWNlLmZyZXF1ZW5jeUluZm8pO1xuICAgIHRoaXMubW9udGhOYW1lQXJyYXkgPSBbLi4ubmV3IFNldCh0aGlzLmZyZXF1ZW5jeVNlcnZpY2UubW9udGhBcnJheSldO1xuICAgIHRoaXMuc2hvcnRNb250aCA9IHRoaXMuZnJlcXVlbmN5U2VydmljZS5tb250aEFycmF5Lm1hcCgobW9udGgpID0+XG4gICAgICBtb250aC5zdWJzdHJpbmcoMCwgMylcbiAgICApO1xuICAgIGlmIChcbiAgICAgIHRoaXMuZnJlcXVlbmN5RGF0YS5wYXR0ZXJuICE9ICcnICYmXG4gICAgICBwYXJzZUludCh0aGlzLmZyZXF1ZW5jeURhdGEucGF0dGVybi5zcGxpdCgnficpWzBdKSA9PT0gOVxuICAgICkge1xuICAgICAgdGhpcy5wb3B1bGF0ZUZyZXF1ZW5jeSgpO1xuICAgIH1cbiAgICB0aGlzLmdldEJpYW5udWFsRnJlcXVlbmN5KCk7XG4gIH1cblxuICBwb3B1bGF0ZUZyZXF1ZW5jeSgpIHtcbiAgICBjb25zdCBwYXR0ZXJuSW5mbyA9IHRoaXMuZnJlcXVlbmN5RGF0YS5wYXR0ZXJuLnNwbGl0KCd+Jyk7XG4gICAgdGhpcy5iaWFubnVhbFNlbGVjdGVkID0gcGF0dGVybkluZm9bMl1cbiAgICAgIC5zcGxpdCgnLCcpXG4gICAgICAubWFwKChlbGU6IGFueSkgPT4gTnVtYmVyKGVsZSkgLSAxKTtcbiAgICBjb25zdCBsaWZlY3ljbGVJbmZvID0gdGhpcy5mcmVxdWVuY3lEYXRhLmxpZmVjeWNsZS5zcGxpdCgnfn4nKTtcbiAgICB0aGlzLmJpYW5udWFsSW50ZXJ2YWwgPSB0aGlzLmZyZXF1ZW5jeURhdGEuZmFpbGVkVGltZTtcbiAgICB0aGlzLmJpYW5udWFsV2luZG93ID0gdGhpcy5mcmVxdWVuY3lEYXRhLndpbmRvdztcbiAgICB0aGlzLmJpYW5udWFsSW5wdXQgPSBwYXR0ZXJuSW5mb1sxXTtcbiAgICBpZiAoTnVtYmVyKGxpZmVjeWNsZUluZm9bMV0pID4gMCkge1xuICAgICAgdGhpcy5iaWFubnVhbExpZmVjeWNsZU9jY3VyYW5jZSA9IE51bWJlcihsaWZlY3ljbGVJbmZvWzFdKTtcbiAgICB9XG5cbiAgICB0aGlzLmJpYW5udWFsTGlmZUN5Y2xlU3RhcnQgPSBuZXcgRGF0ZSh0aGlzLmZyZXF1ZW5jeURhdGEuc3RhcnREYXRlICogMTAwMCk7XG4gICAgdGhpcy5iaWFubnVhbEZhaWxlZCA9IHRoaXMuZnJlcXVlbmN5RGF0YS5mYWlsZWQ7XG4gICAgaWYgKGxpZmVjeWNsZUluZm9bMF0gIT09ICcwMDAwLTAwLTAwJykge1xuICAgICAgY29uc3QgZGF0ZVNlbGVjdGVkID0gbW9tZW50KFxuICAgICAgICBsaWZlY3ljbGVJbmZvWzBdICsgJyAnICsgREVGQVVMVF9USU1FLFxuICAgICAgICAnREQtTU1NTS1ZWVlZIEhIOm1tIGEnXG4gICAgICApLnVuaXgoKTtcbiAgICAgIHRoaXMuYmlhbm51YWxMaWZlQ3ljbGVFbmRUaW1lID0gbmV3IERhdGUoZGF0ZVNlbGVjdGVkICogMTAwMCk7XG4gICAgfVxuICAgIHRoaXMubGlmZWN5Y2xlRGV0YWlscyA9IHRoaXMuZnJlcXVlbmN5RGF0YS5saWZlY3ljbGU7XG4gICAgaWYgKHRoaXMuZnJlcXVlbmN5RGF0YS5saWZlY3ljbGUgPT0gJzAwMDAtMDAtMDB+fjAnKSB7XG4gICAgICB0aGlzLmJpYW5udWFsU2VsZXRlZExpZmVjeWNsZVR5cGUgPSAyO1xuICAgIH0gZWxzZSBpZiAobGlmZWN5Y2xlSW5mb1swXSAhPT0gJzAwMDAtMDAtMDAnKSB7XG4gICAgICB0aGlzLmJpYW5udWFsU2VsZXRlZExpZmVjeWNsZVR5cGUgPSAwO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmJpYW5udWFsU2VsZXRlZExpZmVjeWNsZVR5cGUgPSAxO1xuICAgIH1cbiAgfVxuXG4gIG9uTW9udGhTZWxlY3RlZChldmVudDogYW55KSB7XG4gICAgaWYgKGV2ZW50LmNoZWNrZWQpIHtcbiAgICAgIHRoaXMuYmlhbm51YWxTZWxlY3RlZC5wdXNoKGV2ZW50LmluZGV4KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5iaWFubnVhbFNlbGVjdGVkID0gdGhpcy5iaWFubnVhbFNlbGVjdGVkLmZpbHRlcihcbiAgICAgICAgKGVsZSkgPT4gZWxlICE9PSBldmVudC5pbmRleFxuICAgICAgKTtcbiAgICB9XG4gICAgdGhpcy5nZXRCaWFubnVhbEZyZXF1ZW5jeSgpO1xuICB9XG5cbiAgdmFsdWVDaGFuZ2VkRmlyc3QoZXZlbnQ6IGFueSkge1xuICAgIHRoaXMuYmlhbm51YWxJbnB1dCA9IGV2ZW50LnZhbHVlO1xuICAgIHRoaXMuZ2V0Qmlhbm51YWxGcmVxdWVuY3koKTtcbiAgfVxuXG4gIG9uVGltZUNoYW5nZWQoZXZlbnQ6IHN0cmluZykge1xuICAgIHRoaXMuYmlhbm51YWxJbnRlcnZhbCA9IGV2ZW50O1xuICAgIHRoaXMuZ2V0Qmlhbm51YWxGcmVxdWVuY3koKTtcbiAgfVxuXG4gIG9uVmFsdWVDaGFuZ2UoZXZlbnQ6IGFueSkge1xuICAgIGlmIChldmVudC50eXBlID09PSAnY29tcGxldGVkJykge1xuICAgICAgdGhpcy5iaWFubnVhbFdpbmRvdyA9IGV2ZW50LnZhbHVlO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmJpYW5udWFsRmFpbGVkID0gZXZlbnQudmFsdWU7XG4gICAgfVxuICAgIHRoaXMuZ2V0Qmlhbm51YWxGcmVxdWVuY3koKTtcbiAgfVxuXG4gIGxpZmVjeWNsZUNoYW5nZShldmVudDogYW55KSB7XG4gICAgc3dpdGNoIChldmVudC50eXBlKSB7XG4gICAgICBjYXNlIDA6XG4gICAgICAgIHRoaXMubGlmZWN5Y2xlRGV0YWlscyA9IGV2ZW50LmVuZHNCeSArICd+fjAnO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgMTpcbiAgICAgICAgdGhpcy5saWZlY3ljbGVEZXRhaWxzID0gJzAwMDAtMDAtMDB+ficgKyBldmVudC5lbmRhZnRlcjtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIDI6XG4gICAgICAgIHRoaXMubGlmZWN5Y2xlRGV0YWlscyA9ICcwMDAwLTAwLTAwfn4wJztcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICAgIGlmIChldmVudC5zdGFydEZyb20udG9TdHJpbmcoKS5sZW5ndGggPiAxMCkge1xuICAgICAgdGhpcy5zdGFydERhdGUgPSBNYXRoLmZsb29yKGV2ZW50LnN0YXJ0RnJvbSAvIDEwMDApO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnN0YXJ0RGF0ZSA9IE1hdGguZmxvb3IoZXZlbnQuc3RhcnRGcm9tKTtcbiAgICB9XG4gICAgbGV0IGVuZEJ5RGF0ZSA9IE1hdGguZmxvb3IobmV3IERhdGUoKS5nZXRUaW1lKCkgLyAxMDAwICsgODY0MDAwMDApO1xuICAgIGlmIChldmVudC50eXBlID09PSAwKSB7XG4gICAgICBlbmRCeURhdGUgPSBldmVudC5lbmRzQnlcbiAgICAgICAgPyBtb21lbnQoZXZlbnQuZW5kc0J5ICsgJyAwMDowMDowMCcsICdERC1NTU0tWVlZWSBISDptbTpzcycpLnVuaXgoKVxuICAgICAgICA6IGVuZEJ5RGF0ZTtcbiAgICB9XG4gICAgdGhpcy5mcmVxdWVuY3lJbmZvLmZhaWxlZF90aW1lX3V0YyA9IGVuZEJ5RGF0ZTtcbiAgICB0aGlzLmdldEJpYW5udWFsRnJlcXVlbmN5KCk7XG4gIH1cblxuICBnZXRCaWFubnVhbEZyZXF1ZW5jeSgpIHtcbiAgICB0aGlzLmJpYW5udWFsU2VsZWN0ZWQgPSB0aGlzLmJpYW5udWFsU2VsZWN0ZWQuc29ydCgobjEsIG4yKSA9PiBuMSAtIG4yKTtcbiAgICBjb25zdCBtb250aEluZGV4ID0gdGhpcy5iaWFubnVhbFNlbGVjdGVkLm1hcCgoZWxlKSA9PiBlbGUgKyAxKTtcbiAgICB0aGlzLmZyZXF1ZW5jeUluZm8ucGF0dGVybiA9XG4gICAgICA5ICsgJ34nICsgdGhpcy5iaWFubnVhbElucHV0ICsgJ34nICsgbW9udGhJbmRleC5qb2luKCcsJykgKyAnfjAnO1xuICAgIHRoaXMuZnJlcXVlbmN5SW5mby5jYXNlID0gJ2JpYW5udWFsJztcbiAgICB0aGlzLmZyZXF1ZW5jeUluZm8uZmFpbGVkQWZ0ZXIgPSB0aGlzLmJpYW5udWFsRmFpbGVkO1xuICAgIHRoaXMuZnJlcXVlbmN5SW5mby53aW5kb3cgPSB0aGlzLmJpYW5udWFsV2luZG93O1xuICAgIHRoaXMuZnJlcXVlbmN5SW5mby50aW1lSW4xMmhyID0gdGhpcy5iaWFubnVhbEludGVydmFsO1xuICAgIHRoaXMuZnJlcXVlbmN5SW5mby50aW1lSW4yNEhyID0gdGhpcy5mcmVxdWVuY3lTZXJ2aWNlLnRpbWVGcm9tMTJoVG8yNGgoXG4gICAgICB0aGlzLmJpYW5udWFsSW50ZXJ2YWxcbiAgICApO1xuICAgIHRoaXMuZnJlcXVlbmN5SW5mby5saWZlY3ljbGVEZXRhaWxzID0gdGhpcy5saWZlY3ljbGVEZXRhaWxzO1xuICAgIHRoaXMuZnJlcXVlbmN5SW5mby5zdGFydEZyb20gPSB0aGlzLnN0YXJ0RGF0ZTtcbiAgICB0aGlzLmZyZXF1ZW5jeUluZm8ucmVwb3J0SWQgPSAwO1xuICAgIHRoaXMuZnJlcXVlbmN5SW5mby5wbGFjZWhvbGRlciA9IHRoaXMuZ2V0RnJlcXVlbmN5UGxhY2Vob2xkZXIoXG4gICAgICBOdW1iZXIodGhpcy5iaWFubnVhbElucHV0KVxuICAgICk7XG4gICAgdGhpcy5mcmVxdWVuY3lEZXRhaWxzLmVtaXQodGhpcy5mcmVxdWVuY3lJbmZvKTtcbiAgfVxuXG4gIGdldEZyZXF1ZW5jeVBsYWNlaG9sZGVyKGJpYW5udWFsSW5wdXQ6IG51bWJlcikge1xuICAgIGxldCBwbGFjZWhvbGRlciA9ICcnO1xuICAgIGNvbnN0IHNlbGVjdGVkTW9udGggPSB0aGlzLmJpYW5udWFsU2VsZWN0ZWQubWFwKChlbGUpID0+IHtcbiAgICAgIHJldHVybiB0aGlzLnNob3J0TW9udGhbZWxlXTtcbiAgICB9KTtcblxuICAgIGlmIChiaWFubnVhbElucHV0ID09PSAxKSB7XG4gICAgICBwbGFjZWhvbGRlciA9XG4gICAgICAgICcxc3Qgb2YgZXZlcnkgJyArXG4gICAgICAgIHNlbGVjdGVkTW9udGguam9pbignLCAnKSArXG4gICAgICAgICcgYnkgJyArXG4gICAgICAgIHRoaXMuYmlhbm51YWxJbnRlcnZhbDtcbiAgICB9IGVsc2UgaWYgKGJpYW5udWFsSW5wdXQgPT09IDIpIHtcbiAgICAgIHBsYWNlaG9sZGVyID1cbiAgICAgICAgJzJuZCBvZiBldmVyeSAnICtcbiAgICAgICAgc2VsZWN0ZWRNb250aC5qb2luKCcsICcpICtcbiAgICAgICAgJyBieSAnICtcbiAgICAgICAgdGhpcy5iaWFubnVhbEludGVydmFsO1xuICAgIH0gZWxzZSBpZiAoYmlhbm51YWxJbnB1dCA9PT0gMykge1xuICAgICAgcGxhY2Vob2xkZXIgPVxuICAgICAgICAnM3JkIG9mIGV2ZXJ5ICcgK1xuICAgICAgICBzZWxlY3RlZE1vbnRoLmpvaW4oJywgJykgK1xuICAgICAgICAnIGJ5ICcgK1xuICAgICAgICB0aGlzLmJpYW5udWFsSW50ZXJ2YWw7XG4gICAgfSBlbHNlIGlmIChiaWFubnVhbElucHV0ID09PSAyMSB8fCBiaWFubnVhbElucHV0ID09PSAzMSkge1xuICAgICAgcGxhY2Vob2xkZXIgPVxuICAgICAgICBiaWFubnVhbElucHV0ICtcbiAgICAgICAgJ3N0IG9mIGV2ZXJ5ICcgK1xuICAgICAgICBzZWxlY3RlZE1vbnRoLmpvaW4oJywgJykgK1xuICAgICAgICAnIGJ5ICcgK1xuICAgICAgICB0aGlzLmJpYW5udWFsSW50ZXJ2YWw7XG4gICAgfSBlbHNlIGlmIChiaWFubnVhbElucHV0ID09PSAyMikge1xuICAgICAgcGxhY2Vob2xkZXIgPVxuICAgICAgICBiaWFubnVhbElucHV0ICtcbiAgICAgICAgJ25kIG9mIGV2ZXJ5ICcgK1xuICAgICAgICBzZWxlY3RlZE1vbnRoLmpvaW4oJywgJykgK1xuICAgICAgICAnIGJ5ICcgK1xuICAgICAgICB0aGlzLmJpYW5udWFsSW50ZXJ2YWw7XG4gICAgfSBlbHNlIGlmIChiaWFubnVhbElucHV0ID09PSAyMykge1xuICAgICAgcGxhY2Vob2xkZXIgPVxuICAgICAgICBiaWFubnVhbElucHV0ICtcbiAgICAgICAgJ3JkIG9mIGV2ZXJ5ICcgK1xuICAgICAgICBzZWxlY3RlZE1vbnRoLmpvaW4oJywgJykgK1xuICAgICAgICAnIGJ5ICcgK1xuICAgICAgICB0aGlzLmJpYW5udWFsSW50ZXJ2YWw7XG4gICAgfSBlbHNlIGlmIChiaWFubnVhbElucHV0ID4gMykge1xuICAgICAgcGxhY2Vob2xkZXIgPVxuICAgICAgICBiaWFubnVhbElucHV0ICtcbiAgICAgICAgJ3RoIG9mIGV2ZXJ5ICcgK1xuICAgICAgICBzZWxlY3RlZE1vbnRoLmpvaW4oJywgJykgK1xuICAgICAgICAnIGJ5ICcgK1xuICAgICAgICB0aGlzLmJpYW5udWFsSW50ZXJ2YWw7XG4gICAgfVxuICAgIHJldHVybiBwbGFjZWhvbGRlcjtcbiAgfVxufVxuIiwiPCEtLSA8cD5mcmVxdWVuY3ktYmlhbm51YWwgd29ya3MhPC9wPiAtLT5cbjxkaXYgY2xhc3M9XCJmcmVxdWVuY3ktYmlhbm51YWxcIj5cbiAgPGFwcC1mcmVxdWVuY3ktdG9wXG4gICAgW2lkXT1cIjRcIlxuICAgIFtpbnB1dFRpbWVdPVwiYmlhbm51YWxJbnRlcnZhbFwiXG4gICAgW29jY3VycmVuY2VGaXJzdF09XCJiaWFubnVhbElucHV0XCJcbiAgICBbZnJlcXVlbmN5VHlwZV09XCI0XCJcbiAgICAodGltZUNoYW5nZWQpPVwib25UaW1lQ2hhbmdlZCgkZXZlbnQpXCJcbiAgICAodmFsdWVDaGFuZ2VkRmlyc3QpPVwidmFsdWVDaGFuZ2VkRmlyc3QoJGV2ZW50KVwiXG4gICAgW21vZGVdPVwibW9kZVwiXG4gID48L2FwcC1mcmVxdWVuY3ktdG9wPlxuICA8YXBwLWZyZXF1ZW5jeS1jaGVja2JveC1saXN0XG4gICAgW2lkXT1cIjRcIlxuICAgIFtsaXN0QXJyYXldPVwibW9udGhOYW1lQXJyYXlcIlxuICAgIFtzZWxlY3RlZEluZGV4XT1cImJpYW5udWFsU2VsZWN0ZWRcIlxuICAgIChzZWxlY3RlZENoZWNrYm94KT1cIm9uTW9udGhTZWxlY3RlZCgkZXZlbnQpXCJcbiAgICBbbW9kZV09XCJtb2RlXCJcbiAgPjwvYXBwLWZyZXF1ZW5jeS1jaGVja2JveC1saXN0PlxuICA8YXBwLWZyZXF1ZW5jeS1kdWUtZGF0ZVxuICAgIFtwYWdlTmFtZV09XCInYmlhbm51YWwnXCJcbiAgICBbbW9kZV09XCJtb2RlXCJcbiAgICBbaWRdPVwiNFwiXG4gICAgW2NvbXBsZXRlZFZhbHVlXT1cImJpYW5udWFsV2luZG93XCJcbiAgICBbbm90Q29tcGxldGVkVmFsdWVdPVwiYmlhbm51YWxGYWlsZWRcIlxuICAgIFtwYWdlVHlwZV09XCJwYWdlVHlwZVwiXG4gICAgKHZhbHVlQ2hhbmdlKT1cIm9uVmFsdWVDaGFuZ2UoJGV2ZW50KVwiXG4gID48L2FwcC1mcmVxdWVuY3ktZHVlLWRhdGU+XG4gIDxhcHAtZnJlcXVlbmN5LWxpZmVjeWNsZVxuICAgIFtpZF09XCI0XCJcbiAgICBbc3RhcnREYXRlXT1cImJpYW5udWFsTGlmZUN5Y2xlU3RhcnRcIlxuICAgIFtlbmREYXRlXT1cImJpYW5udWFsTGlmZUN5Y2xlRW5kVGltZVwiXG4gICAgW29jY3VycmFuY2VdPVwiYmlhbm51YWxMaWZlY3ljbGVPY2N1cmFuY2VcIlxuICAgIFtzZWxlY3RlZExpZmVjeWNsZVR5cGVdPVwiYmlhbm51YWxTZWxldGVkTGlmZWN5Y2xlVHlwZVwiXG4gICAgKHNlbGVjdGVkT2NjdXJhbmNlKT1cImxpZmVjeWNsZUNoYW5nZSgkZXZlbnQpXCJcbiAgICBbbW9kZV09XCJtb2RlXCJcbiAgPjwvYXBwLWZyZXF1ZW5jeS1saWZlY3ljbGU+XG48L2Rpdj5cbiJdfQ==
219
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJlcXVlbmN5LWJpYW5udWFsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Z4LXdvcmtmbG93LWVuZ2luZS9zcmMvbGliL3NoYXJlZENvbXBvbmVudHMvZnJlcXVlbmN5L2ZyZXF1ZW5jeS1iaWFubnVhbC9mcmVxdWVuY3ktYmlhbm51YWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdngtd29ya2Zsb3ctZW5naW5lL3NyYy9saWIvc2hhcmVkQ29tcG9uZW50cy9mcmVxdWVuY3kvZnJlcXVlbmN5LWJpYW5udWFsL2ZyZXF1ZW5jeS1iaWFubnVhbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9FLE9BQU8sTUFBTSxNQUFNLGVBQWUsQ0FBQztBQUVuQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUNBQW1DLENBQUM7Ozs7Ozs7QUFPakUsTUFBTSxPQUFPLDBCQUEwQjtJQTJCckMsWUFBb0IsZ0JBQWtDO1FBQWxDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUExQnRELHFCQUFnQixHQUFHLFlBQVksQ0FBQztRQUNoQyxrQkFBYSxHQUFHLElBQUksSUFBSSxFQUFFLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDckMsbUJBQWMsR0FBRyxDQUFDLENBQUM7UUFDbkIsbUJBQWMsR0FBRyxFQUFFLENBQUM7UUFDcEIsZ0JBQVcsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ25DLDJCQUFzQixHQUFHLElBQUksSUFBSSxFQUFFLENBQUM7UUFDcEMsNkJBQXdCLEdBQUcsSUFBSSxJQUFJLENBQ2pDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxPQUFPLEVBQUUsR0FB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Q0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBR0ksZ0JBQWdCO3NCQUF6QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIElucHV0LCBPdXRwdXQsIEV2ZW50RW1pdHRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IG1vbWVudCBmcm9tICdtb21lbnQvbW9tZW50JztcbmltcG9ydCB7IEZyZXF1ZW5jeVNlcnZpY2UgfSBmcm9tICcuLi9mcmVxdWVuY3kuc2VydmljZSc7XG5pbXBvcnQgeyBERUZBVUxUX1RJTUUgfSBmcm9tICcuLi8uLi8uLi9jb25zdGFudHMvdGltZS5jb25zdGFudHMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtZnJlcXVlbmN5LWJpYW5udWFsJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2ZyZXF1ZW5jeS1iaWFubnVhbC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ZyZXF1ZW5jeS1iaWFubnVhbC5jb21wb25lbnQubGVzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBGcmVxdWVuY3lCaWFubnVhbENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIGJpYW5udWFsSW50ZXJ2YWwgPSBERUZBVUxUX1RJTUU7XG4gIGJpYW5udWFsSW5wdXQgPSBuZXcgRGF0ZSgpLmdldERhdGUoKTtcbiAgYmlhbm51YWxGYWlsZWQgPSA1O1xuICBiaWFubnVhbFdpbmRvdyA9IDMwO1xuICBiaWFubnVhbERheSA9IG5ldyBEYXRlKCkuZ2V0RGF0ZSgpO1xuICBiaWFubnVhbExpZmVDeWNsZVN0YXJ0ID0gbmV3IERhdGUoKTtcbiAgYmlhbm51YWxMaWZlQ3ljbGVFbmRUaW1lID0gbmV3IERhdGUoXG4gICAgdGhpcy5iaWFubnVhbExpZmVDeWNsZVN0YXJ0LmdldFRpbWUoKSArIDg2NDAwMDAwXG4gICk7XG4gIGJpYW5udWFsTGlmZWN5Y2xlT2NjdXJhbmNlID0gMTA7XG4gIGJpYW5udWFsU2VsZXRlZExpZmVjeWNsZVR5cGUgPSAyO1xuICBiaWFubnVhbFNlbGVjdGVkOiBBcnJheTxudW1iZXI+ID0gW107XG4gIGJpYW5udWFsTGlmZWN5Y2xlID0gZmFsc2U7XG4gIGZyZXF1ZW5jeUluZm86IGFueTtcbiAgbW9udGhOYW1lQXJyYXk6IEFycmF5PHN0cmluZz4gPSBbXTtcbiAgc2hvcnRNb250aDogQXJyYXk8c3RyaW5nPiA9IFtdO1xuICBzZWxlY3RlZE1vbnRobHk6IEFycmF5PG51bWJlcj4gPSBbXTtcblxuICBASW5wdXQoKSBtb2RlOiBhbnkgPSAnJztcbiAgQElucHV0KCkgcGFnZVR5cGU6ICdyZXNwb25zaWJpbGl0eScgfCAncG9saWN5JyA9ICdyZXNwb25zaWJpbGl0eSc7XG4gIEBJbnB1dCgpIHN0YXJ0RGF0ZSA9IE1hdGguZmxvb3IoRGF0ZS5ub3coKSAvIDEwMDApO1xuICBASW5wdXQoKSBmcmVxdWVuY3lEYXRhOiBhbnk7XG4gIGxpZmVjeWNsZURldGFpbHM6IGFueSA9ICcwMDAwLTAwLTAwfn4wJztcblxuICBAT3V0cHV0KCkgZnJlcXVlbmN5RGV0YWlscyA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZnJlcXVlbmN5U2VydmljZTogRnJlcXVlbmN5U2VydmljZSkge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmZyZXF1ZW5jeUluZm8gPSBPYmplY3QuYXNzaWduKHRoaXMuZnJlcXVlbmN5U2VydmljZS5mcmVxdWVuY3lJbmZvKTtcbiAgICB0aGlzLm1vbnRoTmFtZUFycmF5ID0gWy4uLm5ldyBTZXQodGhpcy5mcmVxdWVuY3lTZXJ2aWNlLm1vbnRoQXJyYXkpXTtcbiAgICB0aGlzLnNob3J0TW9udGggPSB0aGlzLmZyZXF1ZW5jeVNlcnZpY2UubW9udGhBcnJheS5tYXAoKG1vbnRoKSA9PlxuICAgICAgbW9udGguc3Vic3RyaW5nKDAsIDMpXG4gICAgKTtcbiAgICBpZiAoXG4gICAgICB0aGlzLmZyZXF1ZW5jeURhdGEucGF0dGVybiAhPSAnJyAmJlxuICAgICAgcGFyc2VJbnQodGhpcy5mcmVxdWVuY3lEYXRhLnBhdHRlcm4uc3BsaXQoJ34nKVswXSkgPT09IDlcbiAgICApIHtcbiAgICAgIHRoaXMucG9wdWxhdGVGcmVxdWVuY3koKTtcbiAgICB9XG4gICAgdGhpcy5nZXRCaWFubnVhbEZyZXF1ZW5jeSgpO1xuICB9XG5cbiAgcG9wdWxhdGVGcmVxdWVuY3koKSB7XG4gICAgY29uc3QgcGF0dGVybkluZm8gPSB0aGlzLmZyZXF1ZW5jeURhdGEucGF0dGVybi5zcGxpdCgnficpO1xuICAgIHRoaXMuYmlhbm51YWxTZWxlY3RlZCA9IHBhdHRlcm5JbmZvWzJdXG4gICAgICAuc3BsaXQoJywnKVxuICAgICAgLm1hcCgoZWxlOiBhbnkpID0+IE51bWJlcihlbGUpIC0gMSk7XG4gICAgY29uc3QgbGlmZWN5Y2xlSW5mbyA9IHRoaXMuZnJlcXVlbmN5RGF0YS5saWZlY3ljbGUuc3BsaXQoJ35+Jyk7XG4gICAgdGhpcy5iaWFubnVhbEludGVydmFsID0gdGhpcy5mcmVxdWVuY3lEYXRhLmZhaWxlZFRpbWU7XG4gICAgdGhpcy5iaWFubnVhbFdpbmRvdyA9IHRoaXMuZnJlcXVlbmN5RGF0YS53aW5kb3c7XG4gICAgdGhpcy5iaWFubnVhbElucHV0ID0gcGF0dGVybkluZm9bMV07XG4gICAgaWYgKE51bWJlcihsaWZlY3ljbGVJbmZvWzFdKSA+IDApIHtcbiAgICAgIHRoaXMuYmlhbm51YWxMaWZlY3ljbGVPY2N1cmFuY2UgPSBOdW1iZXIobGlmZWN5Y2xlSW5mb1sxXSk7XG4gICAgfVxuXG4gICAgdGhpcy5iaWFubnVhbExpZmVDeWNsZVN0YXJ0ID0gbmV3IERhdGUodGhpcy5mcmVxdWVuY3lEYXRhLnN0YXJ0RGF0ZSAqIDEwMDApO1xuICAgIHRoaXMuYmlhbm51YWxGYWlsZWQgPSB0aGlzLmZyZXF1ZW5jeURhdGEuZmFpbGVkO1xuICAgIGlmIChsaWZlY3ljbGVJbmZvWzBdICE9PSAnMDAwMC0wMC0wMCcpIHtcbiAgICAgIGNvbnN0IGRhdGVTZWxlY3RlZCA9IG1vbWVudChcbiAgICAgICAgbGlmZWN5Y2xlSW5mb1swXSArICcgJyArIERFRkFVTFRfVElNRSxcbiAgICAgICAgJ0RELU1NTU0tWVlZWSBISDptbSBhJ1xuICAgICAgKS51bml4KCk7XG4gICAgICB0aGlzLmJpYW5udWFsTGlmZUN5Y2xlRW5kVGltZSA9IG5ldyBEYXRlKGRhdGVTZWxlY3RlZCAqIDEwMDApO1xuICAgIH1cbiAgICB0aGlzLmxpZmVjeWNsZURldGFpbHMgPSB0aGlzLmZyZXF1ZW5jeURhdGEubGlmZWN5Y2xlO1xuICAgIGlmICh0aGlzLmZyZXF1ZW5jeURhdGEubGlmZWN5Y2xlID09ICcwMDAwLTAwLTAwfn4wJykge1xuICAgICAgdGhpcy5iaWFubnVhbFNlbGV0ZWRMaWZlY3ljbGVUeXBlID0gMjtcbiAgICB9IGVsc2UgaWYgKGxpZmVjeWNsZUluZm9bMF0gIT09ICcwMDAwLTAwLTAwJykge1xuICAgICAgdGhpcy5iaWFubnVhbFNlbGV0ZWRMaWZlY3ljbGVUeXBlID0gMDtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5iaWFubnVhbFNlbGV0ZWRMaWZlY3ljbGVUeXBlID0gMTtcbiAgICB9XG4gIH1cblxuICBvbk1vbnRoU2VsZWN0ZWQoZXZlbnQ6IGFueSkge1xuICAgIGlmIChldmVudC5jaGVja2VkKSB7XG4gICAgICB0aGlzLmJpYW5udWFsU2VsZWN0ZWQucHVzaChldmVudC5pbmRleCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuYmlhbm51YWxTZWxlY3RlZCA9IHRoaXMuYmlhbm51YWxTZWxlY3RlZC5maWx0ZXIoXG4gICAgICAgIChlbGUpID0+IGVsZSAhPT0gZXZlbnQuaW5kZXhcbiAgICAgICk7XG4gICAgfVxuICAgIHRoaXMuZ2V0Qmlhbm51YWxGcmVxdWVuY3koKTtcbiAgfVxuXG4gIHZhbHVlQ2hhbmdlZEZpcnN0KGV2ZW50OiBhbnkpIHtcbiAgICB0aGlzLmJpYW5udWFsSW5wdXQgPSBldmVudC52YWx1ZTtcbiAgICB0aGlzLmdldEJpYW5udWFsRnJlcXVlbmN5KCk7XG4gIH1cblxuICBvblRpbWVDaGFuZ2VkKGV2ZW50OiBzdHJpbmcpIHtcbiAgICB0aGlzLmJpYW5udWFsSW50ZXJ2YWwgPSBldmVudDtcbiAgICB0aGlzLmdldEJpYW5udWFsRnJlcXVlbmN5KCk7XG4gIH1cblxuICBvblZhbHVlQ2hhbmdlKGV2ZW50OiBhbnkpIHtcbiAgICBpZiAoZXZlbnQudHlwZSA9PT0gJ2NvbXBsZXRlZCcpIHtcbiAgICAgIHRoaXMuYmlhbm51YWxXaW5kb3cgPSBldmVudC52YWx1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5iaWFubnVhbEZhaWxlZCA9IGV2ZW50LnZhbHVlO1xuICAgIH1cbiAgICB0aGlzLmdldEJpYW5udWFsRnJlcXVlbmN5KCk7XG4gIH1cblxuICBsaWZlY3ljbGVDaGFuZ2UoZXZlbnQ6IGFueSkge1xuICAgIHN3aXRjaCAoZXZlbnQudHlwZSkge1xuICAgICAgY2FzZSAwOlxuICAgICAgICB0aGlzLmxpZmVjeWNsZURldGFpbHMgPSBldmVudC5lbmRzQnkgKyAnfn4wJztcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIDE6XG4gICAgICAgIHRoaXMubGlmZWN5Y2xlRGV0YWlscyA9ICcwMDAwLTAwLTAwfn4nICsgZXZlbnQuZW5kYWZ0ZXI7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAyOlxuICAgICAgICB0aGlzLmxpZmVjeWNsZURldGFpbHMgPSAnMDAwMC0wMC0wMH5+MCc7XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgICBpZiAoZXZlbnQuc3RhcnRGcm9tLnRvU3RyaW5nKCkubGVuZ3RoID4gMTApIHtcbiAgICAgIHRoaXMuc3RhcnREYXRlID0gTWF0aC5mbG9vcihldmVudC5zdGFydEZyb20gLyAxMDAwKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zdGFydERhdGUgPSBNYXRoLmZsb29yKGV2ZW50LnN0YXJ0RnJvbSk7XG4gICAgfVxuICAgIGxldCBlbmRCeURhdGUgPSBNYXRoLmZsb29yKG5ldyBEYXRlKCkuZ2V0VGltZSgpIC8gMTAwMCArIDg2NDAwMDAwKTtcbiAgICBpZiAoZXZlbnQudHlwZSA9PT0gMCkge1xuICAgICAgZW5kQnlEYXRlID0gZXZlbnQuZW5kc0J5XG4gICAgICAgID8gbW9tZW50KGV2ZW50LmVuZHNCeSArICcgMDA6MDA6MDAnLCAnREQtTU1NLVlZWVkgSEg6bW06c3MnKS51bml4KClcbiAgICAgICAgOiBlbmRCeURhdGU7XG4gICAgfVxuICAgIHRoaXMuZnJlcXVlbmN5SW5mby5mYWlsZWRfdGltZV91dGMgPSBlbmRCeURhdGU7XG4gICAgdGhpcy5nZXRCaWFubnVhbEZyZXF1ZW5jeSgpO1xuICB9XG5cbiAgZ2V0Qmlhbm51YWxGcmVxdWVuY3koKSB7XG4gICAgdGhpcy5iaWFubnVhbFNlbGVjdGVkID0gdGhpcy5iaWFubnVhbFNlbGVjdGVkLnNvcnQoKG4xLCBuMikgPT4gbjEgLSBuMik7XG5cbiAgICBjb25zdCBtb250aEluZGV4ID0gdGhpcy5iaWFubnVhbFNlbGVjdGVkLm1hcCgoZWxlKSA9PiBlbGUgKyAxKTtcbiAgICB0aGlzLmZyZXF1ZW5jeUluZm8ucGF0dGVybiA9XG4gICAgICA5ICsgJ34nICsgdGhpcy5iaWFubnVhbElucHV0ICsgJ34nICsgbW9udGhJbmRleC5qb2luKCcsJykgKyAnfjAnO1xuICAgIHRoaXMuZnJlcXVlbmN5SW5mby5jYXNlID0gJ2JpYW5udWFsJztcbiAgICB0aGlzLmZyZXF1ZW5jeUluZm8uZmFpbGVkQWZ0ZXIgPSB0aGlzLmJpYW5udWFsRmFpbGVkO1xuICAgIHRoaXMuZnJlcXVlbmN5SW5mby53aW5kb3cgPSB0aGlzLmJpYW5udWFsV2luZG93O1xuICAgIHRoaXMuZnJlcXVlbmN5SW5mby50aW1lSW4xMmhyID0gdGhpcy5iaWFubnVhbEludGVydmFsO1xuICAgIHRoaXMuZnJlcXVlbmN5SW5mby5zZWxlY3RlZE1vbnRoID0gdGhpcy5iaWFubnVhbFNlbGVjdGVkO1xuICAgIHRoaXMuZnJlcXVlbmN5SW5mby50aW1lSW4yNEhyID0gdGhpcy5mcmVxdWVuY3lTZXJ2aWNlLnRpbWVGcm9tMTJoVG8yNGgoXG4gICAgICB0aGlzLmJpYW5udWFsSW50ZXJ2YWxcbiAgICApO1xuICAgIHRoaXMuZnJlcXVlbmN5SW5mby5saWZlY3ljbGVEZXRhaWxzID0gdGhpcy5saWZlY3ljbGVEZXRhaWxzO1xuICAgIHRoaXMuZnJlcXVlbmN5SW5mby5zdGFydEZyb20gPSB0aGlzLnN0YXJ0RGF0ZTtcbiAgICB0aGlzLmZyZXF1ZW5jeUluZm8ucmVwb3J0SWQgPSAwO1xuICAgIHRoaXMuZnJlcXVlbmN5SW5mby5wbGFjZWhvbGRlciA9IHRoaXMuZ2V0RnJlcXVlbmN5UGxhY2Vob2xkZXIoXG4gICAgICBOdW1iZXIodGhpcy5iaWFubnVhbElucHV0KVxuICAgICk7XG4gICAgdGhpcy5mcmVxdWVuY3lEZXRhaWxzLmVtaXQodGhpcy5mcmVxdWVuY3lJbmZvKTtcbiAgfVxuXG4gIGdldEZyZXF1ZW5jeVBsYWNlaG9sZGVyKGJpYW5udWFsSW5wdXQ6IG51bWJlcikge1xuICAgIGxldCBwbGFjZWhvbGRlciA9ICcnO1xuICAgIGNvbnN0IHNlbGVjdGVkTW9udGggPSB0aGlzLmJpYW5udWFsU2VsZWN0ZWQubWFwKChlbGUpID0+IHtcbiAgICAgIHJldHVybiB0aGlzLnNob3J0TW9udGhbZWxlXTtcbiAgICB9KTtcblxuICAgIGlmIChiaWFubnVhbElucHV0ID09PSAxKSB7XG4gICAgICBwbGFjZWhvbGRlciA9XG4gICAgICAgICcxc3Qgb2YgZXZlcnkgJyArXG4gICAgICAgIHNlbGVjdGVkTW9udGguam9pbignLCAnKSArXG4gICAgICAgICcgYnkgJyArXG4gICAgICAgIHRoaXMuYmlhbm51YWxJbnRlcnZhbDtcbiAgICB9IGVsc2UgaWYgKGJpYW5udWFsSW5wdXQgPT09IDIpIHtcbiAgICAgIHBsYWNlaG9sZGVyID1cbiAgICAgICAgJzJuZCBvZiBldmVyeSAnICtcbiAgICAgICAgc2VsZWN0ZWRNb250aC5qb2luKCcsICcpICtcbiAgICAgICAgJyBieSAnICtcbiAgICAgICAgdGhpcy5iaWFubnVhbEludGVydmFsO1xuICAgIH0gZWxzZSBpZiAoYmlhbm51YWxJbnB1dCA9PT0gMykge1xuICAgICAgcGxhY2Vob2xkZXIgPVxuICAgICAgICAnM3JkIG9mIGV2ZXJ5ICcgK1xuICAgICAgICBzZWxlY3RlZE1vbnRoLmpvaW4oJywgJykgK1xuICAgICAgICAnIGJ5ICcgK1xuICAgICAgICB0aGlzLmJpYW5udWFsSW50ZXJ2YWw7XG4gICAgfSBlbHNlIGlmIChiaWFubnVhbElucHV0ID09PSAyMSB8fCBiaWFubnVhbElucHV0ID09PSAzMSkge1xuICAgICAgcGxhY2Vob2xkZXIgPVxuICAgICAgICBiaWFubnVhbElucHV0ICtcbiAgICAgICAgJ3N0IG9mIGV2ZXJ5ICcgK1xuICAgICAgICBzZWxlY3RlZE1vbnRoLmpvaW4oJywgJykgK1xuICAgICAgICAnIGJ5ICcgK1xuICAgICAgICB0aGlzLmJpYW5udWFsSW50ZXJ2YWw7XG4gICAgfSBlbHNlIGlmIChiaWFubnVhbElucHV0ID09PSAyMikge1xuICAgICAgcGxhY2Vob2xkZXIgPVxuICAgICAgICBiaWFubnVhbElucHV0ICtcbiAgICAgICAgJ25kIG9mIGV2ZXJ5ICcgK1xuICAgICAgICBzZWxlY3RlZE1vbnRoLmpvaW4oJywgJykgK1xuICAgICAgICAnIGJ5ICcgK1xuICAgICAgICB0aGlzLmJpYW5udWFsSW50ZXJ2YWw7XG4gICAgfSBlbHNlIGlmIChiaWFubnVhbElucHV0ID09PSAyMykge1xuICAgICAgcGxhY2Vob2xkZXIgPVxuICAgICAgICBiaWFubnVhbElucHV0ICtcbiAgICAgICAgJ3JkIG9mIGV2ZXJ5ICcgK1xuICAgICAgICBzZWxlY3RlZE1vbnRoLmpvaW4oJywgJykgK1xuICAgICAgICAnIGJ5ICcgK1xuICAgICAgICB0aGlzLmJpYW5udWFsSW50ZXJ2YWw7XG4gICAgfSBlbHNlIGlmIChiaWFubnVhbElucHV0ID4gMykge1xuICAgICAgcGxhY2Vob2xkZXIgPVxuICAgICAgICBiaWFubnVhbElucHV0ICtcbiAgICAgICAgJ3RoIG9mIGV2ZXJ5ICcgK1xuICAgICAgICBzZWxlY3RlZE1vbnRoLmpvaW4oJywgJykgK1xuICAgICAgICAnIGJ5ICcgK1xuICAgICAgICB0aGlzLmJpYW5udWFsSW50ZXJ2YWw7XG4gICAgfVxuICAgIHJldHVybiBwbGFjZWhvbGRlcjtcbiAgfVxufVxuIiwiPCEtLSA8cD5mcmVxdWVuY3ktYmlhbm51YWwgd29ya3MhPC9wPiAtLT5cbjxkaXYgY2xhc3M9XCJmcmVxdWVuY3ktYmlhbm51YWxcIj5cbiAgPGFwcC1mcmVxdWVuY3ktdG9wXG4gICAgW2lkXT1cIjRcIlxuICAgIFtpbnB1dFRpbWVdPVwiYmlhbm51YWxJbnRlcnZhbFwiXG4gICAgW29jY3VycmVuY2VGaXJzdF09XCJiaWFubnVhbElucHV0XCJcbiAgICBbZnJlcXVlbmN5VHlwZV09XCI0XCJcbiAgICAodGltZUNoYW5nZWQpPVwib25UaW1lQ2hhbmdlZCgkZXZlbnQpXCJcbiAgICAodmFsdWVDaGFuZ2VkRmlyc3QpPVwidmFsdWVDaGFuZ2VkRmlyc3QoJGV2ZW50KVwiXG4gICAgW21vZGVdPVwibW9kZVwiXG4gID48L2FwcC1mcmVxdWVuY3ktdG9wPlxuICA8YXBwLWZyZXF1ZW5jeS1jaGVja2JveC1saXN0XG4gICAgW2lkXT1cIjRcIlxuICAgIFtsaXN0QXJyYXldPVwibW9udGhOYW1lQXJyYXlcIlxuICAgIFtzZWxlY3RlZEluZGV4XT1cImJpYW5udWFsU2VsZWN0ZWRcIlxuICAgIChzZWxlY3RlZENoZWNrYm94KT1cIm9uTW9udGhTZWxlY3RlZCgkZXZlbnQpXCJcbiAgICBbbW9kZV09XCJtb2RlXCJcbiAgPjwvYXBwLWZyZXF1ZW5jeS1jaGVja2JveC1saXN0PlxuICA8YXBwLWZyZXF1ZW5jeS1kdWUtZGF0ZVxuICAgIFtwYWdlTmFtZV09XCInYmlhbm51YWwnXCJcbiAgICBbbW9kZV09XCJtb2RlXCJcbiAgICBbaWRdPVwiNFwiXG4gICAgW2NvbXBsZXRlZFZhbHVlXT1cImJpYW5udWFsV2luZG93XCJcbiAgICBbbm90Q29tcGxldGVkVmFsdWVdPVwiYmlhbm51YWxGYWlsZWRcIlxuICAgIFtwYWdlVHlwZV09XCJwYWdlVHlwZVwiXG4gICAgKHZhbHVlQ2hhbmdlKT1cIm9uVmFsdWVDaGFuZ2UoJGV2ZW50KVwiXG4gID48L2FwcC1mcmVxdWVuY3ktZHVlLWRhdGU+XG4gIDxhcHAtZnJlcXVlbmN5LWxpZmVjeWNsZVxuICAgIFtpZF09XCI0XCJcbiAgICBbc3RhcnREYXRlXT1cImJpYW5udWFsTGlmZUN5Y2xlU3RhcnRcIlxuICAgIFtlbmREYXRlXT1cImJpYW5udWFsTGlmZUN5Y2xlRW5kVGltZVwiXG4gICAgW29jY3VycmFuY2VdPVwiYmlhbm51YWxMaWZlY3ljbGVPY2N1cmFuY2VcIlxuICAgIFtzZWxlY3RlZExpZmVjeWNsZVR5cGVdPVwiYmlhbm51YWxTZWxldGVkTGlmZWN5Y2xlVHlwZVwiXG4gICAgKHNlbGVjdGVkT2NjdXJhbmNlKT1cImxpZmVjeWNsZUNoYW5nZSgkZXZlbnQpXCJcbiAgICBbbW9kZV09XCJtb2RlXCJcbiAgPjwvYXBwLWZyZXF1ZW5jeS1saWZlY3ljbGU+XG48L2Rpdj5cbiJdfQ==
@@ -123,6 +123,7 @@ export class FrequencyQuarterlyComponent {
123
123
  : this.selectedQuarterly === 1
124
124
  ? this.quarterlyGroup.slice(4, 8)
125
125
  : this.quarterlyGroup.slice(8);
126
+ this.frequencyInfo.selectedMonth = monthSequence;
126
127
  monthSequence = monthSequence.map((ele) => ele + 1);
127
128
  this.frequencyInfo.pattern =
128
129
  7 + '~' + this.quarterlyInput + '~' + monthSequence + '~' + '0';
@@ -211,4 +212,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
211
212
  }], frequencyDetails: [{
212
213
  type: Output
213
214
  }] } });
214
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJlcXVlbmN5LXF1YXJ0ZXJseS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92eC13b3JrZmxvdy1lbmdpbmUvc3JjL2xpYi9zaGFyZWRDb21wb25lbnRzL2ZyZXF1ZW5jeS9mcmVxdWVuY3ktcXVhcnRlcmx5L2ZyZXF1ZW5jeS1xdWFydGVybHkuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdngtd29ya2Zsb3ctZW5naW5lL3NyYy9saWIvc2hhcmVkQ29tcG9uZW50cy9mcmVxdWVuY3kvZnJlcXVlbmN5LXF1YXJ0ZXJseS9mcmVxdWVuY3ktcXVhcnRlcmx5LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsS0FBSyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFL0UsT0FBTyxNQUFNLE1BQU0sZUFBZSxDQUFDO0FBQ25DLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQzs7Ozs7OztBQU9qRSxNQUFNLE9BQU8sMkJBQTJCO0lBMEJ0QyxZQUFvQixnQkFBa0M7UUFBbEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQXpCN0MsU0FBSSxHQUFRLEVBQUUsQ0FBQztRQUV4QixzQkFBaUIsR0FBRyxZQUFZLENBQUM7UUFDakMsbUJBQWMsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ3RDLG9CQUFlLEdBQUcsQ0FBQyxDQUFDO1FBQ3BCLG9CQUFlLEdBQUcsQ0FBQyxDQUFDO1FBQ3BCLHNCQUFpQixHQUFHLENBQUMsQ0FBQztRQUN0Qiw0QkFBdUIsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO1FBQ3JDLDhCQUF5QixHQUFHLElBQUksSUFBSSxDQUNsQyxJQUFJLENBQUMsdUJBQXVCLENBQUMsT0FBTyxF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b0JBQ2QsY0FBYztvQkFDZCxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQztvQkFDM0MsTUFBTTtvQkFDTixJQUFJLENBQUMsaUJBQWlCLENBQUM7U0FDMUI7UUFDRCxPQUFPLFdBQVcsQ0FBQztJQUNyQixDQUFDOytHQTlNVSwyQkFBMkI7bUdBQTNCLDJCQUEyQiwwTkNWeEMsdXdDQXNDQTs7NEZENUJhLDJCQUEyQjtrQkFMdkMsU0FBUzsrQkFDRSx5QkFBeUI7dUdBSzFCLElBQUk7c0JBQVosS0FBSztnQkFpQkcsU0FBUztzQkFBakIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBSUksZ0JBQWdCO3NCQUF6QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIElucHV0LCBPdXRwdXQsIEV2ZW50RW1pdHRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRnJlcXVlbmN5U2VydmljZSB9IGZyb20gJy4uL2ZyZXF1ZW5jeS5zZXJ2aWNlJztcbmltcG9ydCBtb21lbnQgZnJvbSAnbW9tZW50L21vbWVudCc7XG5pbXBvcnQgeyBERUZBVUxUX1RJTUUgfSBmcm9tICcuLi8uLi8uLi9jb25zdGFudHMvdGltZS5jb25zdGFudHMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtZnJlcXVlbmN5LXF1YXJ0ZXJseScsXG4gIHRlbXBsYXRlVXJsOiAnLi9mcmVxdWVuY3ktcXVhcnRlcmx5LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZnJlcXVlbmN5LXF1YXJ0ZXJseS5jb21wb25lbnQubGVzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBGcmVxdWVuY3lRdWFydGVybHlDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKSBtb2RlOiBhbnkgPSAnJztcblxuICBxdWFydGVybHlJbnRlcnZhbCA9IERFRkFVTFRfVElNRTtcbiAgcXVhcnRlcmx5SW5wdXQgPSBuZXcgRGF0ZSgpLmdldERhdGUoKTtcbiAgcXVhcnRlcmx5RmFpbGVkID0gNTtcbiAgcXVhcnRlcmx5V2luZG93ID0gNztcbiAgc2VsZWN0ZWRRdWFydGVybHkgPSAxO1xuICBxdWFydGVybHlMaWZlQ3ljbGVTdGFydCA9IG5ldyBEYXRlKCk7XG4gIHF1YXJ0ZXJseUxpZmVDeWNsZUVuZFRpbWUgPSBuZXcgRGF0ZShcbiAgICB0aGlzLnF1YXJ0ZXJseUxpZmVDeWNsZVN0YXJ0LmdldFRpbWUoKSArIDg2NDAwMDAwXG4gICk7XG4gIHF1YXJ0ZXJseUxpZmVjeWNsZU9jY3VyYW5jZSA9IDEwO1xuICBxdWFydGVybHlTZWxldGVkTGlmZWN5Y2xlVHlwZSA9IDI7XG4gIHF1YXJ0ZXJseUdyb3VwID0gWzAsIDMsIDYsIDksIDEsIDQsIDcsIDEwLCAyLCA1LCA4LCAxMV07XG4gIGZyZXF1ZW5jeUluZm86IGFueTtcbiAgcXVhcnRlcmx5QXJyYXk6IEFycmF5PHN0cmluZz4gPSBbXTtcblxuICBASW5wdXQoKSBzdGFydERhdGUgPSBNYXRoLmZsb29yKERhdGUubm93KCkgLyAxMDAwKTtcbiAgQElucHV0KCkgZnJlcXVlbmN5RGF0YTogYW55O1xuICBASW5wdXQoKSBwYWdlVHlwZTogJ3Jlc3BvbnNpYmlsaXR5JyB8ICdwb2xpY3knID0gJ3Jlc3BvbnNpYmlsaXR5JztcblxuICBsaWZlY3ljbGVEZXRhaWxzOiBhbnkgPSAnMDAwMC0wMC0wMH5+MCc7XG5cbiAgQE91dHB1dCgpIGZyZXF1ZW5jeURldGFpbHMgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGZyZXF1ZW5jeVNlcnZpY2U6IEZyZXF1ZW5jeVNlcnZpY2UpIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5mcmVxdWVuY3lJbmZvID0gT2JqZWN0LmFzc2lnbih0aGlzLmZyZXF1ZW5jeVNlcnZpY2UuZnJlcXVlbmN5SW5mbyk7XG4gICAgdGhpcy5xdWFydGVybHlBcnJheSA9IFsuLi5uZXcgU2V0KHRoaXMuZnJlcXVlbmN5U2VydmljZS5xdWFydGVybHlNb250aCldO1xuICAgIGNvbnN0IGluZGV4T2ZNb250aCA9IHRoaXMucXVhcnRlcmx5R3JvdXAuaW5kZXhPZihuZXcgRGF0ZSgpLmdldE1vbnRoKCkpO1xuICAgIHRoaXMuc2VsZWN0ZWRRdWFydGVybHkgPVxuICAgICAgaW5kZXhPZk1vbnRoIDwgNCA/IDAgOiBpbmRleE9mTW9udGggPiAzICYmIGluZGV4T2ZNb250aCA8IDggPyAxIDogMjtcbiAgICBpZiAoXG4gICAgICB0aGlzLmZyZXF1ZW5jeURhdGEucGF0dGVybiAhPSAnJyAmJlxuICAgICAgcGFyc2VJbnQodGhpcy5mcmVxdWVuY3lEYXRhLnBhdHRlcm4uc3BsaXQoJ34nKVswXSkgPT09IDdcbiAgICApIHtcbiAgICAgIHRoaXMucG9wdWxhdGVGcmVxdWVuY3koKTtcbiAgICB9XG4gICAgdGhpcy5nZXRRdWFydGVybHlGcmVxdWVuY3koKTtcbiAgfVxuXG4gIHBvcHVsYXRlRnJlcXVlbmN5KCkge1xuICAgIGNvbnN0IHBhdHRlcm5JbmZvID0gdGhpcy5mcmVxdWVuY3lEYXRhLnBhdHRlcm4uc3BsaXQoJ34nKTtcbiAgICBjb25zdCBtb250aCA9IHBhcnNlSW50KHBhdHRlcm5JbmZvWzJdLnNwbGl0KCcsJykubWFwKE51bWJlcilbMF0pO1xuICAgIGNvbnN0IGluZGV4ID0gdGhpcy5xdWFydGVybHlHcm91cC5pbmRleE9mKG1vbnRoIC0gMSk7XG4gICAgdGhpcy5zZWxlY3RlZFF1YXJ0ZXJseSA9IGluZGV4IDwgNCA/IDAgOiBpbmRleCA+IDMgJiYgaW5kZXggPCA4ID8gMSA6IDI7XG4gICAgY29uc3QgbGlmZWN5Y2xlSW5mbyA9IHRoaXMuZnJlcXVlbmN5RGF0YS5saWZlY3ljbGUuc3BsaXQoJ35+Jyk7XG4gICAgdGhpcy5xdWFydGVybHlJbnRlcnZhbCA9IHRoaXMuZnJlcXVlbmN5RGF0YS5mYWlsZWRUaW1lO1xuICAgIHRoaXMucXVhcnRlcmx5V2luZG93ID0gdGhpcy5mcmVxdWVuY3lEYXRhLndpbmRvdztcbiAgICB0aGlzLnF1YXJ0ZXJseUlucHV0ID0gcGF0dGVybkluZm9bMV07XG4gICAgaWYgKE51bWJlcihsaWZlY3ljbGVJbmZvWzFdKSA+IDApIHtcbiAgICAgIHRoaXMucXVhcnRlcmx5TGlmZWN5Y2xlT2NjdXJhbmNlID0gTnVtYmVyKGxpZmVjeWNsZUluZm9bMV0pO1xuICAgIH1cblxuICAgIHRoaXMuc3RhcnREYXRlID0gdGhpcy5mcmVxdWVuY3lEYXRhLnN0YXJ0RGF0ZTtcbiAgICB0aGlzLnF1YXJ0ZXJseUxpZmVDeWNsZVN0YXJ0ID0gbmV3IERhdGUoXG4gICAgICB0aGlzLmZyZXF1ZW5jeURhdGEuc3RhcnREYXRlICogMTAwMFxuICAgICk7XG4gICAgdGhpcy5xdWFydGVybHlGYWlsZWQgPSB0aGlzLmZyZXF1ZW5jeURhdGEuZmFpbGVkO1xuICAgIGlmIChsaWZlY3ljbGVJbmZvWzBdICE9PSAnMDAwMC0wMC0wMCcpIHtcbiAgICAgIGNvbnN0IGRhdGVTZWxlY3RlZCA9IG1vbWVudChcbiAgICAgICAgbGlmZWN5Y2xlSW5mb1swXSArICcgJyArIERFRkFVTFRfVElNRSxcbiAgICAgICAgJ0RELU1NTU0tWVlZWSBISDptbSBhJ1xuICAgICAgKS51bml4KCk7XG4gICAgICB0aGlzLnF1YXJ0ZXJseUxpZmVDeWNsZUVuZFRpbWUgPSBuZXcgRGF0ZShkYXRlU2VsZWN0ZWQgKiAxMDAwKTtcbiAgICB9XG4gICAgdGhpcy5saWZlY3ljbGVEZXRhaWxzID0gdGhpcy5mcmVxdWVuY3lEYXRhLmxpZmVjeWNsZTtcbiAgICBpZiAodGhpcy5mcmVxdWVuY3lEYXRhLmxpZmVjeWNsZSA9PSAnMDAwMC0wMC0wMH5+MCcpIHtcbiAgICAgIHRoaXMucXVhcnRlcmx5U2VsZXRlZExpZmVjeWNsZVR5cGUgPSAyO1xuICAgIH0gZWxzZSBpZiAobGlmZWN5Y2xlSW5mb1swXSAhPT0gJzAwMDAtMDAtMDAnKSB7XG4gICAgICB0aGlzLnF1YXJ0ZXJseVNlbGV0ZWRMaWZlY3ljbGVUeXBlID0gMDtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5xdWFydGVybHlTZWxldGVkTGlmZWN5Y2xlVHlwZSA9IDE7XG4gICAgfVxuICB9XG5cbiAgdmFsdWVDaGFuZ2VkRmlyc3QoZXZlbnQ6IGFueSkge1xuICAgIHRoaXMucXVhcnRlcmx5SW5wdXQgPSBldmVudC52YWx1ZTtcbiAgICB0aGlzLmdldFF1YXJ0ZXJseUZyZXF1ZW5jeSgpO1xuICB9XG5cbiAgb25UaW1lQ2hhbmdlZChldmVudDogc3RyaW5nKSB7XG4gICAgdGhpcy5xdWFydGVybHlJbnRlcnZhbCA9IGV2ZW50O1xuICAgIHRoaXMuZ2V0UXVhcnRlcmx5RnJlcXVlbmN5KCk7XG4gIH1cblxuICBzZWxlY3RlZE1vbnRoKGV2ZW50OiBhbnkpIHtcbiAgICB0aGlzLnNlbGVjdGVkUXVhcnRlcmx5ID0gcGFyc2VJbnQoZXZlbnQudGFyZ2V0LnZhbHVlKTtcbiAgICB0aGlzLmdldFF1YXJ0ZXJseUZyZXF1ZW5jeSgpO1xuICB9XG5cbiAgbGlmZWN5Y2xlQ2hhbmdlKGV2ZW50OiBhbnkpIHtcbiAgICBzd2l0Y2ggKGV2ZW50LnR5cGUpIHtcbiAgICAgIGNhc2UgMDpcbiAgICAgICAgdGhpcy5saWZlY3ljbGVEZXRhaWxzID0gZXZlbnQuZW5kc0J5ICsgJ35+MCc7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAxOlxuICAgICAgICB0aGlzLmxpZmVjeWNsZURldGFpbHMgPSAnMDAwMC0wMC0wMH5+JyArIGV2ZW50LmVuZGFmdGVyO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgMjpcbiAgICAgICAgdGhpcy5saWZlY3ljbGVEZXRhaWxzID0gJzAwMDAtMDAtMDB+fjAnO1xuICAgICAgICBicmVhaztcbiAgICB9XG4gICAgaWYgKGV2ZW50LnN0YXJ0RnJvbS50b1N0cmluZygpLmxlbmd0aCA+IDEwKSB7XG4gICAgICB0aGlzLnN0YXJ0RGF0ZSA9IE1hdGguZmxvb3IoZXZlbnQuc3RhcnRGcm9tIC8gMTAwMCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc3RhcnREYXRlID0gTWF0aC5mbG9vcihldmVudC5zdGFydEZyb20pO1xuICAgIH1cbiAgICBsZXQgZW5kQnlEYXRlID0gTWF0aC5mbG9vcihuZXcgRGF0ZSgpLmdldFRpbWUoKSAvIDEwMDAgKyA4NjQwMDAwMCk7XG4gICAgaWYgKGV2ZW50LnR5cGUgPT09IDApIHtcbiAgICAgIGVuZEJ5RGF0ZSA9IGV2ZW50LmVuZHNCeVxuICAgICAgICA/IG1vbWVudChldmVudC5lbmRzQnkgKyAnIDAwOjAwOjAwJywgJ0RELU1NTS1ZWVlZIEhIOm1tOnNzJykudW5peCgpXG4gICAgICAgIDogZW5kQnlEYXRlO1xuICAgIH1cbiAgICB0aGlzLmZyZXF1ZW5jeUluZm8uZmFpbGVkX3RpbWVfdXRjID0gZW5kQnlEYXRlO1xuICAgIHRoaXMuZ2V0UXVhcnRlcmx5RnJlcXVlbmN5KCk7XG4gIH1cblxuICBvblZhbHVlQ2hhbmdlKGV2ZW50OiBhbnkpIHtcbiAgICBpZiAoZXZlbnQudHlwZSA9PT0gJ2NvbXBsZXRlZCcpIHtcbiAgICAgIHRoaXMucXVhcnRlcmx5V2luZG93ID0gZXZlbnQudmFsdWU7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucXVhcnRlcmx5RmFpbGVkID0gZXZlbnQudmFsdWU7XG4gICAgfVxuICAgIHRoaXMuZ2V0UXVhcnRlcmx5RnJlcXVlbmN5KCk7XG4gIH1cblxuICBnZXRRdWFydGVybHlGcmVxdWVuY3koKSB7XG4gICAgbGV0IG1vbnRoU2VxdWVuY2UgPVxuICAgICAgdGhpcy5zZWxlY3RlZFF1YXJ0ZXJseSA9PT0gMFxuICAgICAgICA/IHRoaXMucXVhcnRlcmx5R3JvdXAuc2xpY2UoMCwgNClcbiAgICAgICAgOiB0aGlzLnNlbGVjdGVkUXVhcnRlcmx5ID09PSAxXG4gICAgICAgID8gdGhpcy5xdWFydGVybHlHcm91cC5zbGljZSg0LCA4KVxuICAgICAgICA6IHRoaXMucXVhcnRlcmx5R3JvdXAuc2xpY2UoOCk7XG4gICAgbW9udGhTZXF1ZW5jZSA9IG1vbnRoU2VxdWVuY2UubWFwKChlbGUpID0+IGVsZSArIDEpO1xuICAgIHRoaXMuZnJlcXVlbmN5SW5mby5wYXR0ZXJuID1cbiAgICAgIDcgKyAnficgKyB0aGlzLnF1YXJ0ZXJseUlucHV0ICsgJ34nICsgbW9udGhTZXF1ZW5jZSArICd+JyArICcwJztcbiAgICB0aGlzLmZyZXF1ZW5jeUluZm8uY2FzZSA9ICdxdWFydGVybHknO1xuICAgIHRoaXMuZnJlcXVlbmN5SW5mby5mYWlsZWRBZnRlciA9IHRoaXMucXVhcnRlcmx5RmFpbGVkO1xuICAgIHRoaXMuZnJlcXVlbmN5SW5mby53aW5kb3cgPSB0aGlzLnF1YXJ0ZXJseVdpbmRvdztcbiAgICB0aGlzLmZyZXF1ZW5jeUluZm8udGltZUluMTJociA9IHRoaXMucXVhcnRlcmx5SW50ZXJ2YWw7XG4gICAgdGhpcy5mcmVxdWVuY3lJbmZvLnRpbWVJbjI0SHIgPSB0aGlzLmZyZXF1ZW5jeVNlcnZpY2UudGltZUZyb20xMmhUbzI0aChcbiAgICAgIHRoaXMucXVhcnRlcmx5SW50ZXJ2YWxcbiAgICApO1xuICAgIHRoaXMuZnJlcXVlbmN5SW5mby5saWZlY3ljbGVEZXRhaWxzID0gdGhpcy5saWZlY3ljbGVEZXRhaWxzO1xuICAgIHRoaXMuZnJlcXVlbmN5SW5mby5zdGFydEZyb20gPSB0aGlzLnN0YXJ0RGF0ZTtcbiAgICB0aGlzLmZyZXF1ZW5jeUluZm8ucmVwb3J0SWQgPSAwO1xuICAgIHRoaXMuZnJlcXVlbmN5SW5mby5wbGFjZWhvbGRlciA9IHRoaXMuZ2V0UGxhY2Vob2xkZXIoXG4gICAgICBOdW1iZXIodGhpcy5xdWFydGVybHlJbnB1dClcbiAgICApO1xuICAgIHRoaXMuZnJlcXVlbmN5RGV0YWlscy5lbWl0KHRoaXMuZnJlcXVlbmN5SW5mbyk7XG4gIH1cblxuICBnZXRQbGFjZWhvbGRlcihxdWFydGVybHlJbnB1dDogbnVtYmVyKSB7XG4gICAgbGV0IHBsYWNlaG9sZGVyID0gJyc7XG5cbiAgICBpZiAocXVhcnRlcmx5SW5wdXQgPT09IDEpIHtcbiAgICAgIHBsYWNlaG9sZGVyID1cbiAgICAgICAgJzFzdCBvZiBldmVyeSAnICtcbiAgICAgICAgdGhpcy5xdWFydGVybHlBcnJheVt0aGlzLnNlbGVjdGVkUXVhcnRlcmx5XSArXG4gICAgICAgICcgYnkgJyArXG4gICAgICAgIHRoaXMucXVhcnRlcmx5SW50ZXJ2YWw7XG4gICAgfSBlbHNlIGlmIChxdWFydGVybHlJbnB1dCA9PT0gMikge1xuICAgICAgcGxhY2Vob2xkZXIgPVxuICAgICAgICAnMm5kIG9mIGV2ZXJ5ICcgK1xuICAgICAgICB0aGlzLnF1YXJ0ZXJseUFycmF5W3RoaXMuc2VsZWN0ZWRRdWFydGVybHldICtcbiAgICAgICAgJyBieSAnICtcbiAgICAgICAgdGhpcy5xdWFydGVybHlJbnRlcnZhbDtcbiAgICB9IGVsc2UgaWYgKHF1YXJ0ZXJseUlucHV0ID09PSAzKSB7XG4gICAgICBwbGFjZWhvbGRlciA9XG4gICAgICAgICczcmQgb2YgZXZlcnkgJyArXG4gICAgICAgIHRoaXMucXVhcnRlcmx5QXJyYXlbdGhpcy5zZWxlY3RlZFF1YXJ0ZXJseV0gK1xuICAgICAgICAnIGJ5ICcgK1xuICAgICAgICB0aGlzLnF1YXJ0ZXJseUludGVydmFsO1xuICAgIH0gZWxzZSBpZiAocXVhcnRlcmx5SW5wdXQgPT09IDIxIHx8IHF1YXJ0ZXJseUlucHV0ID09PSAzMSkge1xuICAgICAgcGxhY2Vob2xkZXIgPVxuICAgICAgICBxdWFydGVybHlJbnB1dCArXG4gICAgICAgICdzdCBvZiBldmVyeSAnICtcbiAgICAgICAgdGhpcy5xdWFydGVybHlBcnJheVt0aGlzLnNlbGVjdGVkUXVhcnRlcmx5XSArXG4gICAgICAgICcgYnkgJyArXG4gICAgICAgIHRoaXMucXVhcnRlcmx5SW50ZXJ2YWw7XG4gICAgfSBlbHNlIGlmIChxdWFydGVybHlJbnB1dCA9PT0gMjIpIHtcbiAgICAgIHBsYWNlaG9sZGVyID1cbiAgICAgICAgcXVhcnRlcmx5SW5wdXQgK1xuICAgICAgICAnbmQgb2YgZXZlcnkgJyArXG4gICAgICAgIHRoaXMucXVhcnRlcmx5QXJyYXlbdGhpcy5zZWxlY3RlZFF1YXJ0ZXJseV0gK1xuICAgICAgICAnIGJ5ICcgK1xuICAgICAgICB0aGlzLnF1YXJ0ZXJseUludGVydmFsO1xuICAgIH0gZWxzZSBpZiAocXVhcnRlcmx5SW5wdXQgPT09IDIzKSB7XG4gICAgICBwbGFjZWhvbGRlciA9XG4gICAgICAgIHF1YXJ0ZXJseUlucHV0ICtcbiAgICAgICAgJ3JkIG9mIGV2ZXJ5ICcgK1xuICAgICAgICB0aGlzLnF1YXJ0ZXJseUFycmF5W3RoaXMuc2VsZWN0ZWRRdWFydGVybHldICtcbiAgICAgICAgJyBieSAnICtcbiAgICAgICAgdGhpcy5xdWFydGVybHlJbnRlcnZhbDtcbiAgICB9IGVsc2UgaWYgKHF1YXJ0ZXJseUlucHV0ID4gMykge1xuICAgICAgcGxhY2Vob2xkZXIgPVxuICAgICAgICBxdWFydGVybHlJbnB1dCArXG4gICAgICAgICd0aCBvZiBldmVyeSAnICtcbiAgICAgICAgdGhpcy5xdWFydGVybHlBcnJheVt0aGlzLnNlbGVjdGVkUXVhcnRlcmx5XSArXG4gICAgICAgICcgYnkgJyArXG4gICAgICAgIHRoaXMucXVhcnRlcmx5SW50ZXJ2YWw7XG4gICAgfVxuICAgIHJldHVybiBwbGFjZWhvbGRlcjtcbiAgfVxufVxuIiwiPCEtLSA8cD5mcmVxdWVuY3ktcXVhcnRlcmx5IHdvcmtzITwvcD4gLS0+XG48ZGl2IGNsYXNzPVwiZnJlcXVlbmN5LXF1YXJ0ZXJseVwiPlxuICA8YXBwLWZyZXF1ZW5jeS10b3BcbiAgICBbaWRdPVwiM1wiXG4gICAgW2lucHV0VGltZV09XCJxdWFydGVybHlJbnRlcnZhbFwiXG4gICAgW29jY3VycmVuY2VGaXJzdF09XCJxdWFydGVybHlJbnB1dFwiXG4gICAgW2ZyZXF1ZW5jeVR5cGVdPVwiM1wiXG4gICAgKHRpbWVDaGFuZ2VkKT1cIm9uVGltZUNoYW5nZWQoJGV2ZW50KVwiXG4gICAgKHZhbHVlQ2hhbmdlZEZpcnN0KT1cInZhbHVlQ2hhbmdlZEZpcnN0KCRldmVudClcIlxuICAgIFttb2RlXT1cIm1vZGVcIlxuICA+PC9hcHAtZnJlcXVlbmN5LXRvcD5cbiAgPGFwcC1mcmVxdWVuY3ktcmFkaW8tbGlzdFxuICAgIFtyYWRpb0xpc3RdPVwicXVhcnRlcmx5QXJyYXlcIlxuICAgIFtzZWxlY3RlZEluZGV4XT1cInNlbGVjdGVkUXVhcnRlcmx5XCJcbiAgICAoc2VsZWN0ZWRSYWRpbyk9XCJzZWxlY3RlZE1vbnRoKCRldmVudClcIlxuICAgIFtuYW1lXT1cIidxdWFydGVyJ1wiXG4gICAgW21vZGVdPVwibW9kZVwiXG4gID48L2FwcC1mcmVxdWVuY3ktcmFkaW8tbGlzdD5cbiAgPGFwcC1mcmVxdWVuY3ktZHVlLWRhdGVcbiAgICBbaWRdPVwiM1wiXG4gICAgW21vZGVdPVwibW9kZVwiXG4gICAgW3BhZ2VOYW1lXT1cIidxdWFydGVybHknXCJcbiAgICBbaXNEZWFjdGl2YXRlZF09XCJmYWxzZVwiXG4gICAgW2NvbXBsZXRlZFZhbHVlXT1cInF1YXJ0ZXJseVdpbmRvd1wiXG4gICAgW25vdENvbXBsZXRlZFZhbHVlXT1cInF1YXJ0ZXJseUZhaWxlZFwiXG4gICAgW3BhZ2VUeXBlXT1cInBhZ2VUeXBlXCJcbiAgICAodmFsdWVDaGFuZ2UpPVwib25WYWx1ZUNoYW5nZSgkZXZlbnQpXCJcbiAgPjwvYXBwLWZyZXF1ZW5jeS1kdWUtZGF0ZT5cbiAgPGFwcC1mcmVxdWVuY3ktbGlmZWN5Y2xlXG4gICAgW2lkXT1cIjFcIlxuICAgIFtzdGFydERhdGVdPVwicXVhcnRlcmx5TGlmZUN5Y2xlU3RhcnRcIlxuICAgIFtlbmREYXRlXT1cInF1YXJ0ZXJseUxpZmVDeWNsZUVuZFRpbWVcIlxuICAgIFtvY2N1cnJhbmNlXT1cInF1YXJ0ZXJseUxpZmVjeWNsZU9jY3VyYW5jZVwiXG4gICAgW3NlbGVjdGVkTGlmZWN5Y2xlVHlwZV09XCJxdWFydGVybHlTZWxldGVkTGlmZWN5Y2xlVHlwZVwiXG4gICAgKHNlbGVjdGVkT2NjdXJhbmNlKT1cImxpZmVjeWNsZUNoYW5nZSgkZXZlbnQpXCJcbiAgICBbbW9kZV09XCJtb2RlXCJcbiAgPjwvYXBwLWZyZXF1ZW5jeS1saWZlY3ljbGU+XG48L2Rpdj5cbiJdfQ==
215
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJlcXVlbmN5LXF1YXJ0ZXJseS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92eC13b3JrZmxvdy1lbmdpbmUvc3JjL2xpYi9zaGFyZWRDb21wb25lbnRzL2ZyZXF1ZW5jeS9mcmVxdWVuY3ktcXVhcnRlcmx5L2ZyZXF1ZW5jeS1xdWFydGVybHkuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdngtd29ya2Zsb3ctZW5naW5lL3NyYy9saWIvc2hhcmVkQ29tcG9uZW50cy9mcmVxdWVuY3kvZnJlcXVlbmN5LXF1YXJ0ZXJseS9mcmVxdWVuY3ktcXVhcnRlcmx5LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsS0FBSyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFL0UsT0FBTyxNQUFNLE1BQU0sZUFBZSxDQUFDO0FBQ25DLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQzs7Ozs7OztBQU9qRSxNQUFNLE9BQU8sMkJBQTJCO0lBMEJ0QyxZQUFvQixnQkFBa0M7UUFBbEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQXpCN0MsU0FBSSxHQUFRLEVBQUUsQ0FBQztRQUV4QixzQkFBaUIsR0FBRyxZQUFZLENBQUM7UUFDakMsbUJBQWMsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ3RDLG9CQUFlLEdBQUcsQ0FBQyxDQUFDO1FBQ3BCLG9CQUFlLEdBQUcsQ0FBQyxDQUFDO1FBQ3BCLHNCQUFpQixHQUFHLENBQUMsQ0FBQztRQUN0Qiw0QkFBdUIsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO1FBQ3JDLDhCQUF5QixHQUFHLElBQUksSUFBSSxDQUNsQyxJQUFJLENBQUMsdUJBQXVCLENBQUMsT0FBTyxF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QUFJLGNBQWMsR0FBRyxDQUFDLEVBQUU7WUFDN0IsV0FBVztnQkFDVCxjQUFjO29CQUNkLGNBQWM7b0JBQ2QsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUM7b0JBQzNDLE1BQU07b0JBQ04sSUFBSSxDQUFDLGlCQUFpQixDQUFDO1NBQzFCO1FBQ0QsT0FBTyxXQUFXLENBQUM7SUFDckIsQ0FBQzsrR0FoTlUsMkJBQTJCO21HQUEzQiwyQkFBMkIsME5DVnhDLHV3Q0FzQ0E7OzRGRDVCYSwyQkFBMkI7a0JBTHZDLFNBQVM7K0JBQ0UseUJBQXlCO3VHQUsxQixJQUFJO3NCQUFaLEtBQUs7Z0JBaUJHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUlJLGdCQUFnQjtzQkFBekIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBJbnB1dCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZyZXF1ZW5jeVNlcnZpY2UgfSBmcm9tICcuLi9mcmVxdWVuY3kuc2VydmljZSc7XG5pbXBvcnQgbW9tZW50IGZyb20gJ21vbWVudC9tb21lbnQnO1xuaW1wb3J0IHsgREVGQVVMVF9USU1FIH0gZnJvbSAnLi4vLi4vLi4vY29uc3RhbnRzL3RpbWUuY29uc3RhbnRzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLWZyZXF1ZW5jeS1xdWFydGVybHknLFxuICB0ZW1wbGF0ZVVybDogJy4vZnJlcXVlbmN5LXF1YXJ0ZXJseS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ZyZXF1ZW5jeS1xdWFydGVybHkuY29tcG9uZW50Lmxlc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgRnJlcXVlbmN5UXVhcnRlcmx5Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KCkgbW9kZTogYW55ID0gJyc7XG5cbiAgcXVhcnRlcmx5SW50ZXJ2YWwgPSBERUZBVUxUX1RJTUU7XG4gIHF1YXJ0ZXJseUlucHV0ID0gbmV3IERhdGUoKS5nZXREYXRlKCk7XG4gIHF1YXJ0ZXJseUZhaWxlZCA9IDU7XG4gIHF1YXJ0ZXJseVdpbmRvdyA9IDc7XG4gIHNlbGVjdGVkUXVhcnRlcmx5ID0gMTtcbiAgcXVhcnRlcmx5TGlmZUN5Y2xlU3RhcnQgPSBuZXcgRGF0ZSgpO1xuICBxdWFydGVybHlMaWZlQ3ljbGVFbmRUaW1lID0gbmV3IERhdGUoXG4gICAgdGhpcy5xdWFydGVybHlMaWZlQ3ljbGVTdGFydC5nZXRUaW1lKCkgKyA4NjQwMDAwMFxuICApO1xuICBxdWFydGVybHlMaWZlY3ljbGVPY2N1cmFuY2UgPSAxMDtcbiAgcXVhcnRlcmx5U2VsZXRlZExpZmVjeWNsZVR5cGUgPSAyO1xuICBxdWFydGVybHlHcm91cCA9IFswLCAzLCA2LCA5LCAxLCA0LCA3LCAxMCwgMiwgNSwgOCwgMTFdO1xuICBmcmVxdWVuY3lJbmZvOiBhbnk7XG4gIHF1YXJ0ZXJseUFycmF5OiBBcnJheTxzdHJpbmc+ID0gW107XG5cbiAgQElucHV0KCkgc3RhcnREYXRlID0gTWF0aC5mbG9vcihEYXRlLm5vdygpIC8gMTAwMCk7XG4gIEBJbnB1dCgpIGZyZXF1ZW5jeURhdGE6IGFueTtcbiAgQElucHV0KCkgcGFnZVR5cGU6ICdyZXNwb25zaWJpbGl0eScgfCAncG9saWN5JyA9ICdyZXNwb25zaWJpbGl0eSc7XG5cbiAgbGlmZWN5Y2xlRGV0YWlsczogYW55ID0gJzAwMDAtMDAtMDB+fjAnO1xuXG4gIEBPdXRwdXQoKSBmcmVxdWVuY3lEZXRhaWxzID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBmcmVxdWVuY3lTZXJ2aWNlOiBGcmVxdWVuY3lTZXJ2aWNlKSB7fVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuZnJlcXVlbmN5SW5mbyA9IE9iamVjdC5hc3NpZ24odGhpcy5mcmVxdWVuY3lTZXJ2aWNlLmZyZXF1ZW5jeUluZm8pO1xuICAgIHRoaXMucXVhcnRlcmx5QXJyYXkgPSBbLi4ubmV3IFNldCh0aGlzLmZyZXF1ZW5jeVNlcnZpY2UucXVhcnRlcmx5TW9udGgpXTtcbiAgICBjb25zdCBpbmRleE9mTW9udGggPSB0aGlzLnF1YXJ0ZXJseUdyb3VwLmluZGV4T2YobmV3IERhdGUoKS5nZXRNb250aCgpKTtcbiAgICB0aGlzLnNlbGVjdGVkUXVhcnRlcmx5ID1cbiAgICAgIGluZGV4T2ZNb250aCA8IDQgPyAwIDogaW5kZXhPZk1vbnRoID4gMyAmJiBpbmRleE9mTW9udGggPCA4ID8gMSA6IDI7XG4gICAgaWYgKFxuICAgICAgdGhpcy5mcmVxdWVuY3lEYXRhLnBhdHRlcm4gIT0gJycgJiZcbiAgICAgIHBhcnNlSW50KHRoaXMuZnJlcXVlbmN5RGF0YS5wYXR0ZXJuLnNwbGl0KCd+JylbMF0pID09PSA3XG4gICAgKSB7XG4gICAgICB0aGlzLnBvcHVsYXRlRnJlcXVlbmN5KCk7XG4gICAgfVxuICAgIHRoaXMuZ2V0UXVhcnRlcmx5RnJlcXVlbmN5KCk7XG4gIH1cblxuICBwb3B1bGF0ZUZyZXF1ZW5jeSgpIHtcbiAgICBjb25zdCBwYXR0ZXJuSW5mbyA9IHRoaXMuZnJlcXVlbmN5RGF0YS5wYXR0ZXJuLnNwbGl0KCd+Jyk7XG4gICAgY29uc3QgbW9udGggPSBwYXJzZUludChwYXR0ZXJuSW5mb1syXS5zcGxpdCgnLCcpLm1hcChOdW1iZXIpWzBdKTtcbiAgICBjb25zdCBpbmRleCA9IHRoaXMucXVhcnRlcmx5R3JvdXAuaW5kZXhPZihtb250aCAtIDEpO1xuICAgIHRoaXMuc2VsZWN0ZWRRdWFydGVybHkgPSBpbmRleCA8IDQgPyAwIDogaW5kZXggPiAzICYmIGluZGV4IDwgOCA/IDEgOiAyO1xuICAgIGNvbnN0IGxpZmVjeWNsZUluZm8gPSB0aGlzLmZyZXF1ZW5jeURhdGEubGlmZWN5Y2xlLnNwbGl0KCd+ficpO1xuICAgIHRoaXMucXVhcnRlcmx5SW50ZXJ2YWwgPSB0aGlzLmZyZXF1ZW5jeURhdGEuZmFpbGVkVGltZTtcbiAgICB0aGlzLnF1YXJ0ZXJseVdpbmRvdyA9IHRoaXMuZnJlcXVlbmN5RGF0YS53aW5kb3c7XG4gICAgdGhpcy5xdWFydGVybHlJbnB1dCA9IHBhdHRlcm5JbmZvWzFdO1xuICAgIGlmIChOdW1iZXIobGlmZWN5Y2xlSW5mb1sxXSkgPiAwKSB7XG4gICAgICB0aGlzLnF1YXJ0ZXJseUxpZmVjeWNsZU9jY3VyYW5jZSA9IE51bWJlcihsaWZlY3ljbGVJbmZvWzFdKTtcbiAgICB9XG5cbiAgICB0aGlzLnN0YXJ0RGF0ZSA9IHRoaXMuZnJlcXVlbmN5RGF0YS5zdGFydERhdGU7XG4gICAgdGhpcy5xdWFydGVybHlMaWZlQ3ljbGVTdGFydCA9IG5ldyBEYXRlKFxuICAgICAgdGhpcy5mcmVxdWVuY3lEYXRhLnN0YXJ0RGF0ZSAqIDEwMDBcbiAgICApO1xuICAgIHRoaXMucXVhcnRlcmx5RmFpbGVkID0gdGhpcy5mcmVxdWVuY3lEYXRhLmZhaWxlZDtcbiAgICBpZiAobGlmZWN5Y2xlSW5mb1swXSAhPT0gJzAwMDAtMDAtMDAnKSB7XG4gICAgICBjb25zdCBkYXRlU2VsZWN0ZWQgPSBtb21lbnQoXG4gICAgICAgIGxpZmVjeWNsZUluZm9bMF0gKyAnICcgKyBERUZBVUxUX1RJTUUsXG4gICAgICAgICdERC1NTU1NLVlZWVkgSEg6bW0gYSdcbiAgICAgICkudW5peCgpO1xuICAgICAgdGhpcy5xdWFydGVybHlMaWZlQ3ljbGVFbmRUaW1lID0gbmV3IERhdGUoZGF0ZVNlbGVjdGVkICogMTAwMCk7XG4gICAgfVxuICAgIHRoaXMubGlmZWN5Y2xlRGV0YWlscyA9IHRoaXMuZnJlcXVlbmN5RGF0YS5saWZlY3ljbGU7XG4gICAgaWYgKHRoaXMuZnJlcXVlbmN5RGF0YS5saWZlY3ljbGUgPT0gJzAwMDAtMDAtMDB+fjAnKSB7XG4gICAgICB0aGlzLnF1YXJ0ZXJseVNlbGV0ZWRMaWZlY3ljbGVUeXBlID0gMjtcbiAgICB9IGVsc2UgaWYgKGxpZmVjeWNsZUluZm9bMF0gIT09ICcwMDAwLTAwLTAwJykge1xuICAgICAgdGhpcy5xdWFydGVybHlTZWxldGVkTGlmZWN5Y2xlVHlwZSA9IDA7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucXVhcnRlcmx5U2VsZXRlZExpZmVjeWNsZVR5cGUgPSAxO1xuICAgIH1cbiAgfVxuXG4gIHZhbHVlQ2hhbmdlZEZpcnN0KGV2ZW50OiBhbnkpIHtcbiAgICB0aGlzLnF1YXJ0ZXJseUlucHV0ID0gZXZlbnQudmFsdWU7XG4gICAgdGhpcy5nZXRRdWFydGVybHlGcmVxdWVuY3koKTtcbiAgfVxuXG4gIG9uVGltZUNoYW5nZWQoZXZlbnQ6IHN0cmluZykge1xuICAgIHRoaXMucXVhcnRlcmx5SW50ZXJ2YWwgPSBldmVudDtcbiAgICB0aGlzLmdldFF1YXJ0ZXJseUZyZXF1ZW5jeSgpO1xuICB9XG5cbiAgc2VsZWN0ZWRNb250aChldmVudDogYW55KSB7XG4gICAgdGhpcy5zZWxlY3RlZFF1YXJ0ZXJseSA9IHBhcnNlSW50KGV2ZW50LnRhcmdldC52YWx1ZSk7XG4gICAgdGhpcy5nZXRRdWFydGVybHlGcmVxdWVuY3koKTtcbiAgfVxuXG4gIGxpZmVjeWNsZUNoYW5nZShldmVudDogYW55KSB7XG4gICAgc3dpdGNoIChldmVudC50eXBlKSB7XG4gICAgICBjYXNlIDA6XG4gICAgICAgIHRoaXMubGlmZWN5Y2xlRGV0YWlscyA9IGV2ZW50LmVuZHNCeSArICd+fjAnO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgMTpcbiAgICAgICAgdGhpcy5saWZlY3ljbGVEZXRhaWxzID0gJzAwMDAtMDAtMDB+ficgKyBldmVudC5lbmRhZnRlcjtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIDI6XG4gICAgICAgIHRoaXMubGlmZWN5Y2xlRGV0YWlscyA9ICcwMDAwLTAwLTAwfn4wJztcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICAgIGlmIChldmVudC5zdGFydEZyb20udG9TdHJpbmcoKS5sZW5ndGggPiAxMCkge1xuICAgICAgdGhpcy5zdGFydERhdGUgPSBNYXRoLmZsb29yKGV2ZW50LnN0YXJ0RnJvbSAvIDEwMDApO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnN0YXJ0RGF0ZSA9IE1hdGguZmxvb3IoZXZlbnQuc3RhcnRGcm9tKTtcbiAgICB9XG4gICAgbGV0IGVuZEJ5RGF0ZSA9IE1hdGguZmxvb3IobmV3IERhdGUoKS5nZXRUaW1lKCkgLyAxMDAwICsgODY0MDAwMDApO1xuICAgIGlmIChldmVudC50eXBlID09PSAwKSB7XG4gICAgICBlbmRCeURhdGUgPSBldmVudC5lbmRzQnlcbiAgICAgICAgPyBtb21lbnQoZXZlbnQuZW5kc0J5ICsgJyAwMDowMDowMCcsICdERC1NTU0tWVlZWSBISDptbTpzcycpLnVuaXgoKVxuICAgICAgICA6IGVuZEJ5RGF0ZTtcbiAgICB9XG4gICAgdGhpcy5mcmVxdWVuY3lJbmZvLmZhaWxlZF90aW1lX3V0YyA9IGVuZEJ5RGF0ZTtcbiAgICB0aGlzLmdldFF1YXJ0ZXJseUZyZXF1ZW5jeSgpO1xuICB9XG5cbiAgb25WYWx1ZUNoYW5nZShldmVudDogYW55KSB7XG4gICAgaWYgKGV2ZW50LnR5cGUgPT09ICdjb21wbGV0ZWQnKSB7XG4gICAgICB0aGlzLnF1YXJ0ZXJseVdpbmRvdyA9IGV2ZW50LnZhbHVlO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnF1YXJ0ZXJseUZhaWxlZCA9IGV2ZW50LnZhbHVlO1xuICAgIH1cbiAgICB0aGlzLmdldFF1YXJ0ZXJseUZyZXF1ZW5jeSgpO1xuICB9XG5cbiAgZ2V0UXVhcnRlcmx5RnJlcXVlbmN5KCkge1xuICAgIGxldCBtb250aFNlcXVlbmNlID1cbiAgICAgIHRoaXMuc2VsZWN0ZWRRdWFydGVybHkgPT09IDBcbiAgICAgICAgPyB0aGlzLnF1YXJ0ZXJseUdyb3VwLnNsaWNlKDAsIDQpXG4gICAgICAgIDogdGhpcy5zZWxlY3RlZFF1YXJ0ZXJseSA9PT0gMVxuICAgICAgICA/IHRoaXMucXVhcnRlcmx5R3JvdXAuc2xpY2UoNCwgOClcbiAgICAgICAgOiB0aGlzLnF1YXJ0ZXJseUdyb3VwLnNsaWNlKDgpO1xuICAgdGhpcy5mcmVxdWVuY3lJbmZvLnNlbGVjdGVkTW9udGggPSBtb250aFNlcXVlbmNlO1xuXG4gICAgbW9udGhTZXF1ZW5jZSA9IG1vbnRoU2VxdWVuY2UubWFwKChlbGUpID0+IGVsZSArIDEpO1xuICAgIHRoaXMuZnJlcXVlbmN5SW5mby5wYXR0ZXJuID1cbiAgICAgIDcgKyAnficgKyB0aGlzLnF1YXJ0ZXJseUlucHV0ICsgJ34nICsgbW9udGhTZXF1ZW5jZSArICd+JyArICcwJztcbiAgICB0aGlzLmZyZXF1ZW5jeUluZm8uY2FzZSA9ICdxdWFydGVybHknO1xuICAgIHRoaXMuZnJlcXVlbmN5SW5mby5mYWlsZWRBZnRlciA9IHRoaXMucXVhcnRlcmx5RmFpbGVkO1xuICAgIHRoaXMuZnJlcXVlbmN5SW5mby53aW5kb3cgPSB0aGlzLnF1YXJ0ZXJseVdpbmRvdztcbiAgICB0aGlzLmZyZXF1ZW5jeUluZm8udGltZUluMTJociA9IHRoaXMucXVhcnRlcmx5SW50ZXJ2YWw7XG4gICAgdGhpcy5mcmVxdWVuY3lJbmZvLnRpbWVJbjI0SHIgPSB0aGlzLmZyZXF1ZW5jeVNlcnZpY2UudGltZUZyb20xMmhUbzI0aChcbiAgICAgIHRoaXMucXVhcnRlcmx5SW50ZXJ2YWxcbiAgICApO1xuICAgIHRoaXMuZnJlcXVlbmN5SW5mby5saWZlY3ljbGVEZXRhaWxzID0gdGhpcy5saWZlY3ljbGVEZXRhaWxzO1xuICAgIHRoaXMuZnJlcXVlbmN5SW5mby5zdGFydEZyb20gPSB0aGlzLnN0YXJ0RGF0ZTtcbiAgICB0aGlzLmZyZXF1ZW5jeUluZm8ucmVwb3J0SWQgPSAwO1xuICAgIHRoaXMuZnJlcXVlbmN5SW5mby5wbGFjZWhvbGRlciA9IHRoaXMuZ2V0UGxhY2Vob2xkZXIoXG4gICAgICBOdW1iZXIodGhpcy5xdWFydGVybHlJbnB1dClcbiAgICApO1xuICAgIHRoaXMuZnJlcXVlbmN5RGV0YWlscy5lbWl0KHRoaXMuZnJlcXVlbmN5SW5mbyk7XG4gIH1cblxuICBnZXRQbGFjZWhvbGRlcihxdWFydGVybHlJbnB1dDogbnVtYmVyKSB7XG4gICAgbGV0IHBsYWNlaG9sZGVyID0gJyc7XG5cbiAgICBpZiAocXVhcnRlcmx5SW5wdXQgPT09IDEpIHtcbiAgICAgIHBsYWNlaG9sZGVyID1cbiAgICAgICAgJzFzdCBvZiBldmVyeSAnICtcbiAgICAgICAgdGhpcy5xdWFydGVybHlBcnJheVt0aGlzLnNlbGVjdGVkUXVhcnRlcmx5XSArXG4gICAgICAgICcgYnkgJyArXG4gICAgICAgIHRoaXMucXVhcnRlcmx5SW50ZXJ2YWw7XG4gICAgfSBlbHNlIGlmIChxdWFydGVybHlJbnB1dCA9PT0gMikge1xuICAgICAgcGxhY2Vob2xkZXIgPVxuICAgICAgICAnMm5kIG9mIGV2ZXJ5ICcgK1xuICAgICAgICB0aGlzLnF1YXJ0ZXJseUFycmF5W3RoaXMuc2VsZWN0ZWRRdWFydGVybHldICtcbiAgICAgICAgJyBieSAnICtcbiAgICAgICAgdGhpcy5xdWFydGVybHlJbnRlcnZhbDtcbiAgICB9IGVsc2UgaWYgKHF1YXJ0ZXJseUlucHV0ID09PSAzKSB7XG4gICAgICBwbGFjZWhvbGRlciA9XG4gICAgICAgICczcmQgb2YgZXZlcnkgJyArXG4gICAgICAgIHRoaXMucXVhcnRlcmx5QXJyYXlbdGhpcy5zZWxlY3RlZFF1YXJ0ZXJseV0gK1xuICAgICAgICAnIGJ5ICcgK1xuICAgICAgICB0aGlzLnF1YXJ0ZXJseUludGVydmFsO1xuICAgIH0gZWxzZSBpZiAocXVhcnRlcmx5SW5wdXQgPT09IDIxIHx8IHF1YXJ0ZXJseUlucHV0ID09PSAzMSkge1xuICAgICAgcGxhY2Vob2xkZXIgPVxuICAgICAgICBxdWFydGVybHlJbnB1dCArXG4gICAgICAgICdzdCBvZiBldmVyeSAnICtcbiAgICAgICAgdGhpcy5xdWFydGVybHlBcnJheVt0aGlzLnNlbGVjdGVkUXVhcnRlcmx5XSArXG4gICAgICAgICcgYnkgJyArXG4gICAgICAgIHRoaXMucXVhcnRlcmx5SW50ZXJ2YWw7XG4gICAgfSBlbHNlIGlmIChxdWFydGVybHlJbnB1dCA9PT0gMjIpIHtcbiAgICAgIHBsYWNlaG9sZGVyID1cbiAgICAgICAgcXVhcnRlcmx5SW5wdXQgK1xuICAgICAgICAnbmQgb2YgZXZlcnkgJyArXG4gICAgICAgIHRoaXMucXVhcnRlcmx5QXJyYXlbdGhpcy5zZWxlY3RlZFF1YXJ0ZXJseV0gK1xuICAgICAgICAnIGJ5ICcgK1xuICAgICAgICB0aGlzLnF1YXJ0ZXJseUludGVydmFsO1xuICAgIH0gZWxzZSBpZiAocXVhcnRlcmx5SW5wdXQgPT09IDIzKSB7XG4gICAgICBwbGFjZWhvbGRlciA9XG4gICAgICAgIHF1YXJ0ZXJseUlucHV0ICtcbiAgICAgICAgJ3JkIG9mIGV2ZXJ5ICcgK1xuICAgICAgICB0aGlzLnF1YXJ0ZXJseUFycmF5W3RoaXMuc2VsZWN0ZWRRdWFydGVybHldICtcbiAgICAgICAgJyBieSAnICtcbiAgICAgICAgdGhpcy5xdWFydGVybHlJbnRlcnZhbDtcbiAgICB9IGVsc2UgaWYgKHF1YXJ0ZXJseUlucHV0ID4gMykge1xuICAgICAgcGxhY2Vob2xkZXIgPVxuICAgICAgICBxdWFydGVybHlJbnB1dCArXG4gICAgICAgICd0aCBvZiBldmVyeSAnICtcbiAgICAgICAgdGhpcy5xdWFydGVybHlBcnJheVt0aGlzLnNlbGVjdGVkUXVhcnRlcmx5XSArXG4gICAgICAgICcgYnkgJyArXG4gICAgICAgIHRoaXMucXVhcnRlcmx5SW50ZXJ2YWw7XG4gICAgfVxuICAgIHJldHVybiBwbGFjZWhvbGRlcjtcbiAgfVxufVxuIiwiPCEtLSA8cD5mcmVxdWVuY3ktcXVhcnRlcmx5IHdvcmtzITwvcD4gLS0+XG48ZGl2IGNsYXNzPVwiZnJlcXVlbmN5LXF1YXJ0ZXJseVwiPlxuICA8YXBwLWZyZXF1ZW5jeS10b3BcbiAgICBbaWRdPVwiM1wiXG4gICAgW2lucHV0VGltZV09XCJxdWFydGVybHlJbnRlcnZhbFwiXG4gICAgW29jY3VycmVuY2VGaXJzdF09XCJxdWFydGVybHlJbnB1dFwiXG4gICAgW2ZyZXF1ZW5jeVR5cGVdPVwiM1wiXG4gICAgKHRpbWVDaGFuZ2VkKT1cIm9uVGltZUNoYW5nZWQoJGV2ZW50KVwiXG4gICAgKHZhbHVlQ2hhbmdlZEZpcnN0KT1cInZhbHVlQ2hhbmdlZEZpcnN0KCRldmVudClcIlxuICAgIFttb2RlXT1cIm1vZGVcIlxuICA+PC9hcHAtZnJlcXVlbmN5LXRvcD5cbiAgPGFwcC1mcmVxdWVuY3ktcmFkaW8tbGlzdFxuICAgIFtyYWRpb0xpc3RdPVwicXVhcnRlcmx5QXJyYXlcIlxuICAgIFtzZWxlY3RlZEluZGV4XT1cInNlbGVjdGVkUXVhcnRlcmx5XCJcbiAgICAoc2VsZWN0ZWRSYWRpbyk9XCJzZWxlY3RlZE1vbnRoKCRldmVudClcIlxuICAgIFtuYW1lXT1cIidxdWFydGVyJ1wiXG4gICAgW21vZGVdPVwibW9kZVwiXG4gID48L2FwcC1mcmVxdWVuY3ktcmFkaW8tbGlzdD5cbiAgPGFwcC1mcmVxdWVuY3ktZHVlLWRhdGVcbiAgICBbaWRdPVwiM1wiXG4gICAgW21vZGVdPVwibW9kZVwiXG4gICAgW3BhZ2VOYW1lXT1cIidxdWFydGVybHknXCJcbiAgICBbaXNEZWFjdGl2YXRlZF09XCJmYWxzZVwiXG4gICAgW2NvbXBsZXRlZFZhbHVlXT1cInF1YXJ0ZXJseVdpbmRvd1wiXG4gICAgW25vdENvbXBsZXRlZFZhbHVlXT1cInF1YXJ0ZXJseUZhaWxlZFwiXG4gICAgW3BhZ2VUeXBlXT1cInBhZ2VUeXBlXCJcbiAgICAodmFsdWVDaGFuZ2UpPVwib25WYWx1ZUNoYW5nZSgkZXZlbnQpXCJcbiAgPjwvYXBwLWZyZXF1ZW5jeS1kdWUtZGF0ZT5cbiAgPGFwcC1mcmVxdWVuY3ktbGlmZWN5Y2xlXG4gICAgW2lkXT1cIjFcIlxuICAgIFtzdGFydERhdGVdPVwicXVhcnRlcmx5TGlmZUN5Y2xlU3RhcnRcIlxuICAgIFtlbmREYXRlXT1cInF1YXJ0ZXJseUxpZmVDeWNsZUVuZFRpbWVcIlxuICAgIFtvY2N1cnJhbmNlXT1cInF1YXJ0ZXJseUxpZmVjeWNsZU9jY3VyYW5jZVwiXG4gICAgW3NlbGVjdGVkTGlmZWN5Y2xlVHlwZV09XCJxdWFydGVybHlTZWxldGVkTGlmZWN5Y2xlVHlwZVwiXG4gICAgKHNlbGVjdGVkT2NjdXJhbmNlKT1cImxpZmVjeWNsZUNoYW5nZSgkZXZlbnQpXCJcbiAgICBbbW9kZV09XCJtb2RlXCJcbiAgPjwvYXBwLWZyZXF1ZW5jeS1saWZlY3ljbGU+XG48L2Rpdj5cbiJdfQ==
@@ -188,6 +188,7 @@ export class FrequencyRandomComponent {
188
188
  this.frequencyInfo.case = 'randomly';
189
189
  this.frequencyInfo.failedAfter = this.randomFailed;
190
190
  this.frequencyInfo.window = this.randomWindow;
191
+ this.frequencyInfo.selectedMonth = this.selectedMonthly;
191
192
  this.frequencyInfo.lifecycleDetails = this.lifecycleDetails;
192
193
  this.frequencyInfo.startFrom = this.startDate;
193
194
  this.frequencyDetails.emit(this.frequencyInfo);
@@ -250,4 +251,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
250
251
  }], frequencyDetails: [{
251
252
  type: Output
252
253
  }] } });
253
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJlcXVlbmN5LXJhbmRvbS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92eC13b3JrZmxvdy1lbmdpbmUvc3JjL2xpYi9zaGFyZWRDb21wb25lbnRzL2ZyZXF1ZW5jeS9mcmVxdWVuY3ktcmFuZG9tL2ZyZXF1ZW5jeS1yYW5kb20uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdngtd29ya2Zsb3ctZW5naW5lL3NyYy9saWIvc2hhcmVkQ29tcG9uZW50cy9mcmVxdWVuY3kvZnJlcXVlbmN5LXJhbmRvbS9mcmVxdWVuY3ktcmFuZG9tLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsS0FBSyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFL0UsT0FBTyxNQUFNLE1BQU0sZUFBZSxDQUFDO0FBQ25DLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQzs7Ozs7Ozs7O0FBT2pFLE1BQU0sT0FBTyx3QkFBd0I7SUFtQ25DLFlBQW9CLGdCQUFrQztRQUFsQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBbEM3QyxTQUFJLEdBQVEsRUFBRSxDQUFDO1FBRXhCLDRDQUE0QztRQUU1QyxtQkFBYyxHQUFlLEVBQUUsQ0FBQztRQUNoQyxvQkFBZSxHQUFrQixDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDeEUsa0JBQWEsR0FBRyxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2hDLGVBQVUsR0FBRyxDQUFD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QUMsR0FBRyxHQUFHLEdBQUcsQ0FBQyxHQUFHLEdBQUcsR0FBRyxhQUFhLEdBQUcsR0FBRyxHQUFHLElBQUksQ0FBQyxlQUFlO1lBQ3ZFLFdBQVcsRUFDVCxRQUFRO2dCQUNSLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLHVCQUF1QixDQUFDO2dCQUNqRCxPQUFPO2dCQUNQLElBQUksQ0FBQyxlQUFlO2dCQUNwQixtQkFBbUI7U0FDdEIsQ0FBQztJQUNKLENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsT0FBTztZQUNMLE9BQU8sRUFDTCxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUMsR0FBRyw4QkFBOEIsR0FBRyxJQUFJLENBQUMsZUFBZTtZQUNyRSxXQUFXLEVBQ1QsaUJBQWlCLEdBQUcsSUFBSSxDQUFDLGVBQWUsR0FBRyxtQkFBbUI7U0FDakUsQ0FBQztJQUNKLENBQUM7K0dBbFFVLHdCQUF3QjttR0FBeEIsd0JBQXdCLGlNQ1ZyQyx5OEVBdURBOzs0RkQ3Q2Esd0JBQXdCO2tCQUxwQyxTQUFTOytCQUNFLHNCQUFzQjt1R0FLdkIsSUFBSTtzQkFBWixLQUFLO2dCQTRCRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBR0ksZ0JBQWdCO3NCQUF6QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIElucHV0LCBPdXRwdXQsIEV2ZW50RW1pdHRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRnJlcXVlbmN5U2VydmljZSB9IGZyb20gJy4uL2ZyZXF1ZW5jeS5zZXJ2aWNlJztcbmltcG9ydCBtb21lbnQgZnJvbSAnbW9tZW50L21vbWVudCc7XG5pbXBvcnQgeyBERUZBVUxUX1RJTUUgfSBmcm9tICcuLi8uLi8uLi9jb25zdGFudHMvdGltZS5jb25zdGFudHMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtZnJlcXVlbmN5LXJhbmRvbScsXG4gIHRlbXBsYXRlVXJsOiAnLi9mcmVxdWVuY3ktcmFuZG9tLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZnJlcXVlbmN5LXJhbmRvbS5jb21wb25lbnQubGVzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBGcmVxdWVuY3lSYW5kb21Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKSBtb2RlOiBhbnkgPSAnJztcblxuICAvLzA6IHdlZWtseSAxOiBtb250aGx5IDI6cXVhcnRlcmx5IDM6IHllYXJseVxuXG4gIG1vbnRoTmFtZUFycmF5OiBBcnJheTxhbnk+ID0gW107XG4gIHNlbGVjdGVkTW9udGhseTogQXJyYXk8bnVtYmVyPiA9IFswLCAxLCAyLCAzLCA0LCA1LCA2LCA3LCA4LCA5LCAxMCwgMTFdO1xuICByYW5kb21UeXBlTWF4ID0gWzMsIDEwLCAzMCwgOTBdO1xuICByYW5kb21UeXBlID0gWydXZWVrbHknLCAnTW9udGhseScsICdRdWFydGVybHknLCAnWWVhcmx5J107XG4gIHJhbmRvbUluc3RhbmNlcyA9IDA7XG4gIGRlZmF1bHRSYW5kb21JbnN0YW5jZSA9IFsyLCA1LCAxNSwgNDVdO1xuICByYW5kb21seURheSA9IG5ldyBEYXRlKCkuZ2V0RGF0ZSgpO1xuICByYW5kb21seUxpZmVDeWNsZVN0YXJ0ID0gbmV3IERhdGUoKTtcbiAgcmFuZG9tbHlMaWZlQ3ljbGVFbmRUaW1lID0gbmV3IERhdGUoXG4gICAgdGhpcy5yYW5kb21seUxpZmVDeWNsZVN0YXJ0LmdldFRpbWUoKSArIDg2NDAwMDAwXG4gICk7XG4gIHJhbmRvbWx5TGlmZWN5Y2xlT2NjdXJhbmNlID0gMTA7XG4gIHJhbmRvbWx5U2VsZXRlZExpZmVjeWNsZVR5cGUgPSAyO1xuICByYW5kb21UeXBlU2VsZWN0ZWQgPSAwO1xuICByYW5kb21XaW5kb3cgPSAyO1xuICByYW5kb21GYWlsZWQgPSAyO1xuICByYW5kb21Nb250aFNlbGVjdGVkID0gW107XG4gIHJhbmRvbVF1YXJ0ZXJseVNlbGVjdGVkID0gMTtcbiAgcXVhcnRlcmx5R3JvdXAgPSBbMCwgMywgNiwgOSwgMSwgNCwgNywgMTAsIDIsIDUsIDgsIDExXTtcbiAgcmFuZG9tVHlwZUluc3RhbmNlcyA9IFsyLCA1LCAxNSwgNDVdO1xuICBmcmVxdWVuY3lJbmZvOiBhbnk7XG4gIHNob3J0TW9udGg6IEFycmF5PHN0cmluZz4gPSBbXTtcbiAgcXVhcnRlcmx5TW9udGg6IEFycmF5PHN0cmluZz4gPSBbXTtcblxuICBASW5wdXQoKSBzdGFydERhdGUgPSBNYXRoLmZsb29yKERhdGUubm93KCkgLyAxMDAwKTtcbiAgQElucHV0KCkgZnJlcXVlbmN5RGF0YTogYW55O1xuICBsaWZlY3ljbGVEZXRhaWxzOiBhbnkgPSAnMDAwMC0wMC0wMH5+MCc7XG5cbiAgQE91dHB1dCgpIGZyZXF1ZW5jeURldGFpbHMgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGZyZXF1ZW5jeVNlcnZpY2U6IEZyZXF1ZW5jeVNlcnZpY2UpIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5tb250aE5hbWVBcnJheSA9IFsuLi5uZXcgU2V0KHRoaXMuZnJlcXVlbmN5U2VydmljZS5tb250aEFycmF5KV07XG4gICAgdGhpcy5xdWFydGVybHlNb250aCA9IFsuLi5uZXcgU2V0KHRoaXMuZnJlcXVlbmN5U2VydmljZS5xdWFydGVybHlNb250aCldO1xuICAgIHRoaXMuc2hvcnRNb250aCA9IHRoaXMuZnJlcXVlbmN5U2VydmljZS5tb250aEFycmF5Lm1hcCgobW9udGg6IHN0cmluZykgPT5cbiAgICAgIG1vbnRoLnN1YnN0cmluZygwLCAzKVxuICAgICk7XG4gICAgY29uc3QgaW5kZXhPZk1vbnRoID0gdGhpcy5xdWFydGVybHlHcm91cC5pbmRleE9mKG5ldyBEYXRlKCkuZ2V0TW9udGgoKSk7XG4gICAgdGhpcy5yYW5kb21RdWFydGVybHlTZWxlY3RlZCA9XG4gICAgICBpbmRleE9mTW9udGggPCA0ID8gMCA6IGluZGV4T2ZNb250aCA+IDMgJiYgaW5kZXhPZk1vbnRoIDwgOCA/IDEgOiAyO1xuICAgIHRoaXMuZnJlcXVlbmN5SW5mbyA9IE9iamVjdC5hc3NpZ24odGhpcy5mcmVxdWVuY3lTZXJ2aWNlLmZyZXF1ZW5jeUluZm8pO1xuICAgIGlmIChcbiAgICAgIHRoaXMuZnJlcXVlbmN5RGF0YS5wYXR0ZXJuICE9ICcnICYmXG4gICAgICBwYXJzZUludCh0aGlzLmZyZXF1ZW5jeURhdGEucGF0dGVybi5zcGxpdCgnficpWzBdKSA9PT0gOFxuICAgICkge1xuICAgICAgdGhpcy5wb3B1bGF0ZUZyZXF1ZW5jeSgpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmdldFJhbmRvbUluc3RhbmNlcygpO1xuICAgIH1cbiAgICB0aGlzLmdldFJhbmRvbUZyZXF1ZW5jeSgpO1xuICB9XG5cbiAgZ2V0UmFuZG9tSW5zdGFuY2VzKCkge1xuICAgIHRoaXMucmFuZG9tSW5zdGFuY2VzID0gdGhpcy5yYW5kb21UeXBlSW5zdGFuY2VzW3RoaXMucmFuZG9tVHlwZVNlbGVjdGVkXTtcbiAgfVxuXG4gIHBvcHVsYXRlRnJlcXVlbmN5KCkge1xuICAgIGNvbnN0IGZyZXF1ZW5jeVNlbGVjdGVkID0gdGhpcy5mcmVxdWVuY3lEYXRhLnBhdHRlcm4uc3BsaXQoJ34nKTtcbiAgICBjb25zdCBsaWZlY3ljbGVJbmZvID0gdGhpcy5mcmVxdWVuY3lEYXRhLmxpZmVjeWNsZS5zcGxpdCgnfn4nKTtcbiAgICB0aGlzLnJhbmRvbVdpbmRvdyA9IHRoaXMuZnJlcXVlbmN5RGF0YS53aW5kb3c7XG4gICAgdGhpcy5yYW5kb21GYWlsZWQgPSB0aGlzLmZyZXF1ZW5jeURhdGEuZmFpbGVkO1xuICAgIHRoaXMucmFuZG9tSW5zdGFuY2VzID0gcGFyc2VJbnQoZnJlcXVlbmN5U2VsZWN0ZWRbM10pO1xuICAgIHRoaXMucmFuZG9tVHlwZVNlbGVjdGVkID0gcGFyc2VJbnQoZnJlcXVlbmN5U2VsZWN0ZWRbMV0pIC0gMTtcbiAgICBpZiAodGhpcy5yYW5kb21UeXBlU2VsZWN0ZWQgPT09IDEpIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWRNb250aGx5ID0gZnJlcXVlbmN5U2VsZWN0ZWRbMl1cbiAgICAgICAgLnNwbGl0KCcsJylcbiAgICAgICAgLm1hcCgoZWxlOiBhbnkpID0+IHBhcnNlSW50KGVsZSkgLSAxKTtcbiAgICB9XG4gICAgaWYgKHRoaXMucmFuZG9tVHlwZVNlbGVjdGVkID09IDIpIHtcbiAgICAgIGNvbnN0IG1vbnRoUmFuZG9tID0gcGFyc2VJbnQoZnJlcXVlbmN5U2VsZWN0ZWRbMl0uc3BsaXQoJywnKVswXSk7XG4gICAgICBjb25zdCBpbmRleFJhbmRvbSA9IHRoaXMucXVhcnRlcmx5R3JvdXAuaW5kZXhPZihtb250aFJhbmRvbSAtIDEpO1xuICAgICAgdGhpcy5yYW5kb21RdWFydGVybHlTZWxlY3RlZCA9XG4gICAgICAgIGluZGV4UmFuZG9tIDwgNCA/IDAgOiBpbmRleFJhbmRvbSA+IDMgJiYgaW5kZXhSYW5kb20gPCA4ID8gMSA6IDI7XG4gICAgfVxuICAgIHRoaXMucmFuZG9tbHlMaWZlQ3ljbGVTdGFydCA9IG5ldyBEYXRlKHRoaXMuZnJlcXVlbmN5RGF0YS5zdGFydERhdGUgKiAxMDAwKTtcbiAgICB0aGlzLnN0YXJ0RGF0ZSA9XG4gICAgICB0aGlzLmZyZXF1ZW5jeURhdGEuc3RhcnRGcm9tID8/IHRoaXMuZnJlcXVlbmN5RGF0YS5zdGFydERhdGU7XG4gICAgaWYgKE51bWJlcihsaWZlY3ljbGVJbmZvWzFdKSA+IDApIHtcbiAgICAgIHRoaXMucmFuZG9tbHlMaWZlY3ljbGVPY2N1cmFuY2UgPSBOdW1iZXIobGlmZWN5Y2xlSW5mb1sxXSk7XG4gICAgfVxuICAgIHRoaXMubGlmZWN5Y2xlRGV0YWlscyA9IHRoaXMuZnJlcXVlbmN5RGF0YS5saWZlY3ljbGU7XG4gICAgaWYgKGxpZmVjeWNsZUluZm9bMF0gIT09ICcwMDAwLTAwLTAwJykge1xuICAgICAgY29uc3QgZGF0ZVNlbGVjdGVkID0gbW9tZW50KFxuICAgICAgICBsaWZlY3ljbGVJbmZvWzBdICsgJyAnICsgREVGQVVMVF9USU1FLFxuICAgICAgICAnREQtTU1NTS1ZWVlZIEhIOm1tIGEnXG4gICAgICApLnVuaXgoKTtcbiAgICAgIHRoaXMucmFuZG9tbHlMaWZlQ3ljbGVFbmRUaW1lID0gbmV3IERhdGUoZGF0ZVNlbGVjdGVkICogMTAwMCk7XG4gICAgfVxuICAgIGlmICh0aGlzLmZyZXF1ZW5jeURhdGEubGlmZWN5Y2xlID09ICcwMDAwLTAwLTAwfn4wJykge1xuICAgICAgdGhpcy5yYW5kb21seVNlbGV0ZWRMaWZlY3ljbGVUeXBlID0gMjtcbiAgICB9IGVsc2UgaWYgKGxpZmVjeWNsZUluZm9bMF0gIT09ICcwMDAwLTAwLTAwJykge1xuICAgICAgdGhpcy5yYW5kb21seVNlbGV0ZWRMaWZlY3ljbGVUeXBlID0gMDtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5yYW5kb21seVNlbGV0ZWRMaWZlY3ljbGVUeXBlID0gMTtcbiAgICB9XG4gIH1cblxuICBvbk1vbnRoU2VsZWN0ZWQoZXZlbnQ6IGFueSkge1xuICAgIGlmIChldmVudC5jaGVja2VkKSB7XG4gICAgICB0aGlzLnNlbGVjdGVkTW9udGhseS5wdXNoKGV2ZW50LmluZGV4KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zZWxlY3RlZE1vbnRobHkgPSB0aGlzLnNlbGVjdGVkTW9udGhseS5maWx0ZXIoXG4gICAgICAgIChlbGUpID0+IGVsZSAhPT0gZXZlbnQuaW5kZXhcbiAgICAgICk7XG4gICAgfVxuICAgIHRoaXMuZ2V0UmFuZG9tRnJlcXVlbmN5KCk7XG4gIH1cblxuICBvblZhbHVlQ2hhbmdlKGV2ZW50OiBhbnkpIHtcbiAgICBpZiAoZXZlbnQudHlwZSA9PT0gJ2NvbXBsZXRlZCcpIHtcbiAgICAgIHRoaXMucmFuZG9tV2luZG93ID0gZXZlbnQudmFsdWU7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucmFuZG9tRmFpbGVkID0gZXZlbnQudmFsdWU7XG4gICAgfVxuICAgIHRoaXMuZ2V0UmFuZG9tRnJlcXVlbmN5KCk7XG4gIH1cblxuICByYW5kb21DaGVja2VkKGV2ZW50OiBhbnkpIHtcbiAgICB0aGlzLnJhbmRvbVR5cGVTZWxlY3RlZCA9IE51bWJlcihldmVudC50YXJnZXQudmFsdWUpO1xuICAgIHRoaXMuZ2V0UmFuZG9tSW5zdGFuY2VzKCk7XG4gICAgdGhpcy5nZXRSYW5kb21GcmVxdWVuY3koKTtcbiAgfVxuXG4gIHJhbmRvbUluc3RhbmNlKGV2ZW50OiBhbnksIHR5cGU6IGFueSkge1xuICAgIGlmIChcbiAgICAgICFOdW1iZXIuaXNOYU4oTnVtYmVyKGV2ZW50LnRhcmdldC52YWx1ZSkpICYmXG4gICAgICBldmVudC50YXJnZXQudmFsdWUgIT09ICcwJyAmJlxuICAgICAgcGFyc2VJbnQoZXZlbnQudGFyZ2V0LnZhbHVlKSA+IDAgJiZcbiAgICAgIHBhcnNlSW50KGV2ZW50LnRhcmdldC52YWx1ZSkgPCB0aGlzLnJhbmRvbVR5cGVNYXhbdHlwZV0gKyAxXG4gICAgKSB7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucmFuZG9tSW5zdGFuY2VzID1cbiAgICAgICAgdGhpcy5kZWZhdWx0UmFuZG9tSW5zdGFuY2VbdGhpcy5yYW5kb21UeXBlU2VsZWN0ZWRdO1xuICAgIH1cbiAgICB0aGlzLmdldFJhbmRvbUZyZXF1ZW5jeSgpO1xuICB9XG5cbiAgbGlmZWN5Y2xlQ2hhbmdlKGV2ZW50OiBhbnkpIHtcbiAgICBzd2l0Y2ggKGV2ZW50LnR5cGUpIHtcbiAgICAgIGNhc2UgMDpcbiAgICAgICAgdGhpcy5saWZlY3ljbGVEZXRhaWxzID0gZXZlbnQuZW5kc0J5ICsgJ35+MCc7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAxOlxuICAgICAgICB0aGlzLmxpZmVjeWNsZURldGFpbHMgPSAnMDAwMC0wMC0wMH5+JyArIGV2ZW50LmVuZGFmdGVyO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgMjpcbiAgICAgICAgdGhpcy5saWZlY3ljbGVEZXRhaWxzID0gJzAwMDAtMDAtMDB+fjAnO1xuICAgICAgICBicmVhaztcbiAgICB9XG4gICAgaWYgKGV2ZW50LnN0YXJ0RnJvbS50b1N0cmluZygpLmxlbmd0aCA+IDEwKSB7XG4gICAgICB0aGlzLnN0YXJ0RGF0ZSA9IE1hdGguZmxvb3IoZXZlbnQuc3RhcnRGcm9tIC8gMTAwMCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc3RhcnREYXRlID0gTWF0aC5mbG9vcihldmVudC5zdGFydEZyb20pO1xuICAgIH1cbiAgICBsZXQgZW5kQnlEYXRlID0gTWF0aC5mbG9vcihuZXcgRGF0ZSgpLmdldFRpbWUoKSAvIDEwMDAgKyA4NjQwMDAwMCk7XG4gICAgaWYgKGV2ZW50LnR5cGUgPT09IDApIHtcbiAgICAgIGVuZEJ5RGF0ZSA9IGV2ZW50LmVuZHNCeVxuICAgICAgICA/IG1vbWVudChldmVudC5lbmRzQnkgKyAnIDAwOjAwOjAwJywgJ0RELU1NTS1ZWVlZIEhIOm1tOnNzJykudW5peCgpXG4gICAgICAgIDogZW5kQnlEYXRlO1xuICAgIH1cbiAgICB0aGlzLmZyZXF1ZW5jeUluZm8uZmFpbGVkX3RpbWVfdXRjID0gZW5kQnlEYXRlO1xuICAgIHRoaXMuZ2V0UmFuZG9tRnJlcXVlbmN5KCk7XG4gIH1cblxuICBzZWxlY3RlZE1vbnRoKGV2ZW50OiBhbnkpIHtcbiAgICB0aGlzLmdldFJhbmRvbUZyZXF1ZW5jeSgpO1xuICB9XG5cbiAgcmFuZG9tUXVhcnRlcmx5Q2hlY2tlZChldmVudDogYW55KSB7XG4gICAgdGhpcy5yYW5kb21RdWFydGVybHlTZWxlY3RlZCA9IE51bWJlcihldmVudC50YXJnZXQudmFsdWUpO1xuICAgIHRoaXMuZ2V0UmFuZG9tRnJlcXVlbmN5KCk7XG4gIH1cblxuICBnZXRSYW5kb21GcmVxdWVuY3koKSB7XG4gICAgLy8wOiB3ZWVrbHkgMTogbW9udGhseSAyOnF1YXJ0ZXJseSAzOiB5ZWFybHlcbiAgICBsZXQgZnJlcXVlbmN5RGV0YWlscztcbiAgICBzd2l0Y2ggKHRoaXMucmFuZG9tVHlwZVNlbGVjdGVkKSB7XG4gICAgICBjYXNlIDA6XG4gICAgICAgIGZyZXF1ZW5jeURldGFpbHMgPSB0aGlzLmdldFdlZWtseUZyZXF1ZW5jeSgpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgMTpcbiAgICAgICAgZnJlcXVlbmN5RGV0YWlscyA9IHRoaXMuZ2V0TW9udGhseUZyZXF1ZW5jeSgpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgMjpcbiAgICAgICAgZnJlcXVlbmN5RGV0YWlscyA9IHRoaXMuZ2V0UXVhcnRlcmx5RnJlcXVlbmN5KCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAzOlxuICAgICAgICBmcmVxdWVuY3lEZXRhaWxzID0gdGhpcy5nZXRZZWFybHlGcmVxdWVuY3koKTtcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICAgIHRoaXMuZnJlcXVlbmN5SW5mby5wYXR0ZXJuID0gZnJlcXVlbmN5RGV0YWlscz8ucGF0dGVybjtcbiAgICB0aGlzLmZyZXF1ZW5jeUluZm8ucGxhY2Vob2xkZXIgPSBmcmVxdWVuY3lEZXRhaWxzPy5wbGFjZWhvbGRlcjtcbiAgICB0aGlzLmZyZXF1ZW5jeUluZm8uY2FzZSA9ICdyYW5kb21seSc7XG4gICAgdGhpcy5mcmVxdWVuY3lJbmZvLmZhaWxlZEFmdGVyID0gdGhpcy5yYW5kb21GYWlsZWQ7XG4gICAgdGhpcy5mcmVxdWVuY3lJbmZvLndpbmRvdyA9IHRoaXMucmFuZG9tV2luZG93O1xuICAgIHRoaXMuZnJlcXVlbmN5SW5mby5saWZlY3ljbGVEZXRhaWxzID0gdGhpcy5saWZlY3ljbGVEZXRhaWxzO1xuICAgIHRoaXMuZnJlcXVlbmN5SW5mby5zdGFydEZyb20gPSB0aGlzLnN0YXJ0RGF0ZTtcbiAgICB0aGlzLmZyZXF1ZW5jeURldGFpbHMuZW1pdCh0aGlzLmZyZXF1ZW5jeUluZm8pO1xuICB9XG5cbiAgZ2V0V2Vla2x5RnJlcXVlbmN5KCkge1xuICAgIHJldHVybiB7XG4gICAgICBwYXR0ZXJuOiA4ICsgJ34nICsgMSArICd+JyArIDAgKyAnficgKyB0aGlzLnJhbmRvbUluc3RhbmNlcyxcbiAgICAgIHBsYWNlaG9sZGVyOlxuICAgICAgICAnRXZlcnkgd2VlayBmb3IgJyArIHRoaXMucmFuZG9tSW5zdGFuY2VzICsgJyByYW5kb20gaW5zdGFuY2VzJyxcbiAgICB9O1xuICB9XG5cbiAgZ2V0TW9udGhseUZyZXF1ZW5jeSgpIHtcbiAgICB0aGlzLnNlbGVjdGVkTW9udGhseSA9IHRoaXMuc2VsZWN0ZWRNb250aGx5LnNvcnQoKG4xLCBuMikgPT4gbjEgLSBuMik7XG4gICAgY29uc3Qgc2VsZWN0ZWRNb250aCA9IHRoaXMuc2VsZWN0ZWRNb250aGx5Lm1hcCgoZWxlKSA9PiB7XG4gICAgICByZXR1cm4gdGhpcy5zaG9ydE1vbnRoW2VsZV07XG4gICAgfSk7XG4gICAgY29uc3QgbW9udGhJbmRleCA9IHRoaXMuc2VsZWN0ZWRNb250aGx5Lm1hcCgoZWxlKSA9PiBlbGUgKyAxKTtcbiAgICByZXR1cm4ge1xuICAgICAgcGF0dGVybjpcbiAgICAgICAgOCArICd+JyArIDIgKyAnficgKyBtb250aEluZGV4LmpvaW4oJywnKSArICd+JyArIHRoaXMucmFuZG9tSW5zdGFuY2VzLFxuICAgICAgcGxhY2Vob2xkZXI6XG4gICAgICAgICdFdmVyeSAnICtcbiAgICAgICAgc2VsZWN0ZWRNb250aC5qb2luKCcsICcpICtcbiAgICAgICAgJyBmb3IgJyArXG4gICAgICAgIHRoaXMucmFuZG9tSW5zdGFuY2VzICtcbiAgICAgICAgJyByYW5kb20gaW5zdGFuY2VzJyxcbiAgICB9O1xuICB9XG5cbiAgZ2V0UXVhcnRlcmx5RnJlcXVlbmN5KCkge1xuICAgIGxldCBtb250aFNlcXVlbmNlID1cbiAgICAgIHRoaXMucmFuZG9tUXVhcnRlcmx5U2VsZWN0ZWQgPT09IDBcbiAgICAgICAgPyB0aGlzLnF1YXJ0ZXJseUdyb3VwLnNsaWNlKDAsIDQpXG4gICAgICAgIDogdGhpcy5yYW5kb21RdWFydGVybHlTZWxlY3RlZCA9PT0gMVxuICAgICAgICA/IHRoaXMucXVhcnRlcmx5R3JvdXAuc2xpY2UoNCwgOClcbiAgICAgICAgOiB0aGlzLnF1YXJ0ZXJseUdyb3VwLnNsaWNlKDgpO1xuICAgIG1vbnRoU2VxdWVuY2UgPSBtb250aFNlcXVlbmNlLm1hcCgoZWxlKSA9PiBlbGUgKyAxKTtcbiAgICByZXR1cm4ge1xuICAgICAgcGF0dGVybjogOCArICd+JyArIDMgKyAnficgKyBtb250aFNlcXVlbmNlICsgJ34nICsgdGhpcy5yYW5kb21JbnN0YW5jZXMsXG4gICAgICBwbGFjZWhvbGRlcjpcbiAgICAgICAgJ0V2ZXJ5ICcgK1xuICAgICAgICB0aGlzLnF1YXJ0ZXJseU1vbnRoW3RoaXMucmFuZG9tUXVhcnRlcmx5U2VsZWN0ZWRdICtcbiAgICAgICAgJyBmb3IgJyArXG4gICAgICAgIHRoaXMucmFuZG9tSW5zdGFuY2VzICtcbiAgICAgICAgJyByYW5kb20gaW5zdGFuY2VzJyxcbiAgICB9O1xuICB9XG5cbiAgZ2V0WWVhcmx5RnJlcXVlbmN5KCkge1xuICAgIHJldHVybiB7XG4gICAgICBwYXR0ZXJuOlxuICAgICAgICA4ICsgJ34nICsgNCArICd+MSwyLDMsNCw1LDYsNyw4LDksMTAsMTEsMTJ+JyArIHRoaXMucmFuZG9tSW5zdGFuY2VzLFxuICAgICAgcGxhY2Vob2xkZXI6XG4gICAgICAgICdFdmVyeSB5ZWFyIGZvciAnICsgdGhpcy5yYW5kb21JbnN0YW5jZXMgKyAnIHJhbmRvbSBpbnN0YW5jZXMnLFxuICAgIH07XG4gIH1cbn1cbiIsIjwhLS0gPHA+ZnJlcXVlbmN5LXJhbmRvbSB3b3JrcyE8L3A+IC0tPlxuPGRpdiBjbGFzcz1cImZyZXF1ZW5jeS1yYW5kb21cIj5cbiAgICA8ZGl2IGNsYXNzPVwidngtZnMtMTEgdngtZnctNTAwIHZ4LWxhYmVsLXR4dCB2eC10dC11cHBlcmNhc2UgdngtbWItMVwiPlRZUEU6PC9kaXY+IFxuICAgIDxhcHAtZnJlcXVlbmN5LXJhZGlvLWxpc3RcbiAgICBbcmFkaW9MaXN0XT1cInJhbmRvbVR5cGVcIiBcbiAgICBbc2VsZWN0ZWRJbmRleF09XCJyYW5kb21UeXBlU2VsZWN0ZWRcIiBcbiAgICAoc2VsZWN0ZWRSYWRpbyk9XCJyYW5kb21DaGVja2VkKCRldmVudClcIlxuICAgIFtuYW1lXT1cIidyYW5kb20nXCJcbiAgICBjbGFzcz1cInJhbmRvbS1yYWRpb1wiXG4gICAgW21vZGVdPVwibW9kZVwiXG4gICAgPjwvYXBwLWZyZXF1ZW5jeS1yYWRpby1saXN0PlxuICAgIDxhcHAtZnJlcXVlbmN5LXJhZGlvLWxpc3RcbiAgICAgICAgKm5nSWY9XCJyYW5kb21UeXBlU2VsZWN0ZWQgPT0gMlwiICBcbiAgICAgICAgW3JhZGlvTGlzdF09XCJxdWFydGVybHlNb250aFwiXG4gICAgICAgIFtuYW1lXT1cIidxdWFydGVyJ1wiIFxuICAgICAgICBbc2VsZWN0ZWRJbmRleF09XCJyYW5kb21RdWFydGVybHlTZWxlY3RlZFwiIFxuICAgICAgICAoc2VsZWN0ZWRSYWRpbyk9XCJyYW5kb21RdWFydGVybHlDaGVja2VkKCRldmVudClcIlxuICAgICAgICBjbGFzcz1cInF1YXJ0ZXJseS1yYWRpb1wiXG4gICAgICAgIFttb2RlXT1cIm1vZGVcIlxuICAgICAgICA+XG4gICAgPC9hcHAtZnJlcXVlbmN5LXJhZGlvLWxpc3Q+XG4gICAgPGFwcC1mcmVxdWVuY3ktY2hlY2tib3gtbGlzdFxuICAgICAgICAqbmdJZj1cInJhbmRvbVR5cGVTZWxlY3RlZCA9PSAxXCIgIFxuICAgICAgICBbaWRdPVwiOFwiXG4gICAgICAgIFtsaXN0QXJyYXldPVwibW9udGhOYW1lQXJyYXlcIlxuICAgICAgICBbc2VsZWN0ZWRJbmRleF09XCJzZWxlY3RlZE1vbnRobHlcIlxuICAgICAgICAoc2VsZWN0ZWRDaGVja2JveCk9XCJvbk1vbnRoU2VsZWN0ZWQoJGV2ZW50KVwiXG4gICAgICAgIGNsYXNzPVwibW9udGhseS1jaGVja2JveFwiXG4gICAgICAgIFttb2RlXT1cIm1vZGVcIlxuICAgID48L2FwcC1mcmVxdWVuY3ktY2hlY2tib3gtbGlzdD5cbiAgICA8ZGl2IGNsYXNzPVwiZnJlcXVlbmN5LXJhbmRvbS1tZXNzYWdlIHZ4LXAtMyB2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ2eC1mcy0xMyB2eC1wYXJhZ3JhcGgtdHh0XCI+UmFuZG9tIG9jY3VycmVuY2UgZm9yPC9kaXY+XG4gICAgICAgIDxpbnB1dCBjbGFzcz1cImNvdW50TnVtXCIgdHlwZT1cIm51bWJlclwiIFsobmdNb2RlbCldPVwicmFuZG9tSW5zdGFuY2VzXCIgKGNoYW5nZSk9XCJyYW5kb21JbnN0YW5jZSgkZXZlbnQsIHJhbmRvbVR5cGVTZWxlY3RlZClcIiBvbmtleWRvd249XCJyZXR1cm4gZXZlbnQua2V5Q29kZSAhPT0gMTkwXCIgbWluPVwiMFwiIG9uaW5wdXQ9XCJ0aGlzLnZhbHVlID0gTWF0aC5hYnModGhpcy52YWx1ZSlcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInZ4LWZzLTEzIHZ4LXBhcmFncmFwaC10eHRcIj5pbnN0YW5jZXMuIE5vdGUsIHRoZSBtYXhpbXVtIG51bWJlciBvZiBvY2N1cnJlbmNlcyBmb3IgPHNwYW4gY2xhc3M9XCJ2eC1mdy01MDBcIj57eyByYW5kb21UeXBlW3JhbmRvbVR5cGVTZWxlY3RlZF0udG9Mb3dlckNhc2UoKSB9fTwvc3Bhbj4gaXMge3sgcmFuZG9tVHlwZU1heFtyYW5kb21UeXBlU2VsZWN0ZWRdIH19LjwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxhcHAtZnJlcXVlbmN5LWR1ZS1kYXRlXG4gICAgICAgIFtpZF0gPSAnOCdcbiAgICAgICAgW3BhZ2VOYW1lXT1cIidyYW5kb20nXCJcbiAgICAgICAgW21vZGVdPVwibW9kZVwiXG4gICAgICAgIFtpc0RlYWN0aXZhdGVkXT1cImZhbHNlXCJcbiAgICAgICAgW2NvbXBsZXRlZFZhbHVlXT1cInJhbmRvbVdpbmRvd1wiXG4gICAgICAgIFtub3RDb21wbGV0ZWRWYWx1ZV09XCJyYW5kb21GYWlsZWRcIlxuICAgICAgICAodmFsdWVDaGFuZ2UpPVwib25WYWx1ZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgW21vZGVdPVwibW9kZVwiXG4gICAgPjwvYXBwLWZyZXF1ZW5jeS1kdWUtZGF0ZT5cbiAgICA8YXBwLWZyZXF1ZW5jeS1saWZlY3ljbGVcbiAgICAgICAgW2lkXT1cIjhcIlxuICAgICAgICBbc3RhcnREYXRlXT1cInJhbmRvbWx5TGlmZUN5Y2xlU3RhcnRcIlxuICAgICAgICBbZW5kRGF0ZV09XCJyYW5kb21seUxpZmVDeWNsZUVuZFRpbWVcIlxuICAgICAgICBbb2NjdXJyYW5jZV09XCJyYW5kb21seUxpZmVjeWNsZU9jY3VyYW5jZVwiXG4gICAgICAgIFtzZWxlY3RlZExpZmVjeWNsZVR5cGVdPVwicmFuZG9tbHlTZWxldGVkTGlmZWN5Y2xlVHlwZVwiXG4gICAgICAgIChzZWxlY3RlZE9jY3VyYW5jZSk9XCJsaWZlY3ljbGVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgIFttb2RlXT1cIm1vZGVcIlxuICAgID48L2FwcC1mcmVxdWVuY3ktbGlmZWN5Y2xlPlxuPC9kaXY+XG4iXX0=
254
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJlcXVlbmN5LXJhbmRvbS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92eC13b3JrZmxvdy1lbmdpbmUvc3JjL2xpYi9zaGFyZWRDb21wb25lbnRzL2ZyZXF1ZW5jeS9mcmVxdWVuY3ktcmFuZG9tL2ZyZXF1ZW5jeS1yYW5kb20uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdngtd29ya2Zsb3ctZW5naW5lL3NyYy9saWIvc2hhcmVkQ29tcG9uZW50cy9mcmVxdWVuY3kvZnJlcXVlbmN5LXJhbmRvbS9mcmVxdWVuY3ktcmFuZG9tLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsS0FBSyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFL0UsT0FBTyxNQUFNLE1BQU0sZUFBZSxDQUFDO0FBQ25DLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQzs7Ozs7Ozs7O0FBT2pFLE1BQU0sT0FBTyx3QkFBd0I7SUFtQ25DLFlBQW9CLGdCQUFrQztRQUFsQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBbEM3QyxTQUFJLEdBQVEsRUFBRSxDQUFDO1FBRXhCLDRDQUE0QztRQUU1QyxtQkFBYyxHQUFlLEVBQUUsQ0FBQztRQUNoQyxvQkFBZSxHQUFrQixDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDeEUsa0JBQWEsR0FBRyxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2hDLGVBQVUsR0FBRyxDQUFD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QUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQ3BELE9BQU87WUFDTCxPQUFPLEVBQUUsQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDLEdBQUcsR0FBRyxHQUFHLGFBQWEsR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDLGVBQWU7WUFDdkUsV0FBVyxFQUNULFFBQVE7Z0JBQ1IsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsdUJBQXVCLENBQUM7Z0JBQ2pELE9BQU87Z0JBQ1AsSUFBSSxDQUFDLGVBQWU7Z0JBQ3BCLG1CQUFtQjtTQUN0QixDQUFDO0lBQ0osQ0FBQztJQUVELGtCQUFrQjtRQUNoQixPQUFPO1lBQ0wsT0FBTyxFQUNMLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQyxHQUFHLDhCQUE4QixHQUFHLElBQUksQ0FBQyxlQUFlO1lBQ3JFLFdBQVcsRUFDVCxpQkFBaUIsR0FBRyxJQUFJLENBQUMsZUFBZSxHQUFHLG1CQUFtQjtTQUNqRSxDQUFDO0lBQ0osQ0FBQzsrR0FuUVUsd0JBQXdCO21HQUF4Qix3QkFBd0IsaU1DVnJDLHk4RUF1REE7OzRGRDdDYSx3QkFBd0I7a0JBTHBDLFNBQVM7K0JBQ0Usc0JBQXNCO3VHQUt2QixJQUFJO3NCQUFaLEtBQUs7Z0JBNEJHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFHSSxnQkFBZ0I7c0JBQXpCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgSW5wdXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGcmVxdWVuY3lTZXJ2aWNlIH0gZnJvbSAnLi4vZnJlcXVlbmN5LnNlcnZpY2UnO1xuaW1wb3J0IG1vbWVudCBmcm9tICdtb21lbnQvbW9tZW50JztcbmltcG9ydCB7IERFRkFVTFRfVElNRSB9IGZyb20gJy4uLy4uLy4uL2NvbnN0YW50cy90aW1lLmNvbnN0YW50cyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1mcmVxdWVuY3ktcmFuZG9tJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2ZyZXF1ZW5jeS1yYW5kb20uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9mcmVxdWVuY3ktcmFuZG9tLmNvbXBvbmVudC5sZXNzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEZyZXF1ZW5jeVJhbmRvbUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBJbnB1dCgpIG1vZGU6IGFueSA9ICcnO1xuXG4gIC8vMDogd2Vla2x5IDE6IG1vbnRobHkgMjpxdWFydGVybHkgMzogeWVhcmx5XG5cbiAgbW9udGhOYW1lQXJyYXk6IEFycmF5PGFueT4gPSBbXTtcbiAgc2VsZWN0ZWRNb250aGx5OiBBcnJheTxudW1iZXI+ID0gWzAsIDEsIDIsIDMsIDQsIDUsIDYsIDcsIDgsIDksIDEwLCAxMV07XG4gIHJhbmRvbVR5cGVNYXggPSBbMywgMTAsIDMwLCA5MF07XG4gIHJhbmRvbVR5cGUgPSBbJ1dlZWtseScsICdNb250aGx5JywgJ1F1YXJ0ZXJseScsICdZZWFybHknXTtcbiAgcmFuZG9tSW5zdGFuY2VzID0gMDtcbiAgZGVmYXVsdFJhbmRvbUluc3RhbmNlID0gWzIsIDUsIDE1LCA0NV07XG4gIHJhbmRvbWx5RGF5ID0gbmV3IERhdGUoKS5nZXREYXRlKCk7XG4gIHJhbmRvbWx5TGlmZUN5Y2xlU3RhcnQgPSBuZXcgRGF0ZSgpO1xuICByYW5kb21seUxpZmVDeWNsZUVuZFRpbWUgPSBuZXcgRGF0ZShcbiAgICB0aGlzLnJhbmRvbWx5TGlmZUN5Y2xlU3RhcnQuZ2V0VGltZSgpICsgODY0MDAwMDBcbiAgKTtcbiAgcmFuZG9tbHlMaWZlY3ljbGVPY2N1cmFuY2UgPSAxMDtcbiAgcmFuZG9tbHlTZWxldGVkTGlmZWN5Y2xlVHlwZSA9IDI7XG4gIHJhbmRvbVR5cGVTZWxlY3RlZCA9IDA7XG4gIHJhbmRvbVdpbmRvdyA9IDI7XG4gIHJhbmRvbUZhaWxlZCA9IDI7XG4gIHJhbmRvbU1vbnRoU2VsZWN0ZWQgPSBbXTtcbiAgcmFuZG9tUXVhcnRlcmx5U2VsZWN0ZWQgPSAxO1xuICBxdWFydGVybHlHcm91cCA9IFswLCAzLCA2LCA5LCAxLCA0LCA3LCAxMCwgMiwgNSwgOCwgMTFdO1xuICByYW5kb21UeXBlSW5zdGFuY2VzID0gWzIsIDUsIDE1LCA0NV07XG4gIGZyZXF1ZW5jeUluZm86IGFueTtcbiAgc2hvcnRNb250aDogQXJyYXk8c3RyaW5nPiA9IFtdO1xuICBxdWFydGVybHlNb250aDogQXJyYXk8c3RyaW5nPiA9IFtdO1xuXG4gIEBJbnB1dCgpIHN0YXJ0RGF0ZSA9IE1hdGguZmxvb3IoRGF0ZS5ub3coKSAvIDEwMDApO1xuICBASW5wdXQoKSBmcmVxdWVuY3lEYXRhOiBhbnk7XG4gIGxpZmVjeWNsZURldGFpbHM6IGFueSA9ICcwMDAwLTAwLTAwfn4wJztcblxuICBAT3V0cHV0KCkgZnJlcXVlbmN5RGV0YWlscyA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZnJlcXVlbmN5U2VydmljZTogRnJlcXVlbmN5U2VydmljZSkge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLm1vbnRoTmFtZUFycmF5ID0gWy4uLm5ldyBTZXQodGhpcy5mcmVxdWVuY3lTZXJ2aWNlLm1vbnRoQXJyYXkpXTtcbiAgICB0aGlzLnF1YXJ0ZXJseU1vbnRoID0gWy4uLm5ldyBTZXQodGhpcy5mcmVxdWVuY3lTZXJ2aWNlLnF1YXJ0ZXJseU1vbnRoKV07XG4gICAgdGhpcy5zaG9ydE1vbnRoID0gdGhpcy5mcmVxdWVuY3lTZXJ2aWNlLm1vbnRoQXJyYXkubWFwKChtb250aDogc3RyaW5nKSA9PlxuICAgICAgbW9udGguc3Vic3RyaW5nKDAsIDMpXG4gICAgKTtcbiAgICBjb25zdCBpbmRleE9mTW9udGggPSB0aGlzLnF1YXJ0ZXJseUdyb3VwLmluZGV4T2YobmV3IERhdGUoKS5nZXRNb250aCgpKTtcbiAgICB0aGlzLnJhbmRvbVF1YXJ0ZXJseVNlbGVjdGVkID1cbiAgICAgIGluZGV4T2ZNb250aCA8IDQgPyAwIDogaW5kZXhPZk1vbnRoID4gMyAmJiBpbmRleE9mTW9udGggPCA4ID8gMSA6IDI7XG4gICAgdGhpcy5mcmVxdWVuY3lJbmZvID0gT2JqZWN0LmFzc2lnbih0aGlzLmZyZXF1ZW5jeVNlcnZpY2UuZnJlcXVlbmN5SW5mbyk7XG4gICAgaWYgKFxuICAgICAgdGhpcy5mcmVxdWVuY3lEYXRhLnBhdHRlcm4gIT0gJycgJiZcbiAgICAgIHBhcnNlSW50KHRoaXMuZnJlcXVlbmN5RGF0YS5wYXR0ZXJuLnNwbGl0KCd+JylbMF0pID09PSA4XG4gICAgKSB7XG4gICAgICB0aGlzLnBvcHVsYXRlRnJlcXVlbmN5KCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZ2V0UmFuZG9tSW5zdGFuY2VzKCk7XG4gICAgfVxuICAgIHRoaXMuZ2V0UmFuZG9tRnJlcXVlbmN5KCk7XG4gIH1cblxuICBnZXRSYW5kb21JbnN0YW5jZXMoKSB7XG4gICAgdGhpcy5yYW5kb21JbnN0YW5jZXMgPSB0aGlzLnJhbmRvbVR5cGVJbnN0YW5jZXNbdGhpcy5yYW5kb21UeXBlU2VsZWN0ZWRdO1xuICB9XG5cbiAgcG9wdWxhdGVGcmVxdWVuY3koKSB7XG4gICAgY29uc3QgZnJlcXVlbmN5U2VsZWN0ZWQgPSB0aGlzLmZyZXF1ZW5jeURhdGEucGF0dGVybi5zcGxpdCgnficpO1xuICAgIGNvbnN0IGxpZmVjeWNsZUluZm8gPSB0aGlzLmZyZXF1ZW5jeURhdGEubGlmZWN5Y2xlLnNwbGl0KCd+ficpO1xuICAgIHRoaXMucmFuZG9tV2luZG93ID0gdGhpcy5mcmVxdWVuY3lEYXRhLndpbmRvdztcbiAgICB0aGlzLnJhbmRvbUZhaWxlZCA9IHRoaXMuZnJlcXVlbmN5RGF0YS5mYWlsZWQ7XG4gICAgdGhpcy5yYW5kb21JbnN0YW5jZXMgPSBwYXJzZUludChmcmVxdWVuY3lTZWxlY3RlZFszXSk7XG4gICAgdGhpcy5yYW5kb21UeXBlU2VsZWN0ZWQgPSBwYXJzZUludChmcmVxdWVuY3lTZWxlY3RlZFsxXSkgLSAxO1xuICAgIGlmICh0aGlzLnJhbmRvbVR5cGVTZWxlY3RlZCA9PT0gMSkge1xuICAgICAgdGhpcy5zZWxlY3RlZE1vbnRobHkgPSBmcmVxdWVuY3lTZWxlY3RlZFsyXVxuICAgICAgICAuc3BsaXQoJywnKVxuICAgICAgICAubWFwKChlbGU6IGFueSkgPT4gcGFyc2VJbnQoZWxlKSAtIDEpO1xuICAgIH1cbiAgICBpZiAodGhpcy5yYW5kb21UeXBlU2VsZWN0ZWQgPT0gMikge1xuICAgICAgY29uc3QgbW9udGhSYW5kb20gPSBwYXJzZUludChmcmVxdWVuY3lTZWxlY3RlZFsyXS5zcGxpdCgnLCcpWzBdKTtcbiAgICAgIGNvbnN0IGluZGV4UmFuZG9tID0gdGhpcy5xdWFydGVybHlHcm91cC5pbmRleE9mKG1vbnRoUmFuZG9tIC0gMSk7XG4gICAgICB0aGlzLnJhbmRvbVF1YXJ0ZXJseVNlbGVjdGVkID1cbiAgICAgICAgaW5kZXhSYW5kb20gPCA0ID8gMCA6IGluZGV4UmFuZG9tID4gMyAmJiBpbmRleFJhbmRvbSA8IDggPyAxIDogMjtcbiAgICB9XG4gICAgdGhpcy5yYW5kb21seUxpZmVDeWNsZVN0YXJ0ID0gbmV3IERhdGUodGhpcy5mcmVxdWVuY3lEYXRhLnN0YXJ0RGF0ZSAqIDEwMDApO1xuICAgIHRoaXMuc3RhcnREYXRlID1cbiAgICAgIHRoaXMuZnJlcXVlbmN5RGF0YS5zdGFydEZyb20gPz8gdGhpcy5mcmVxdWVuY3lEYXRhLnN0YXJ0RGF0ZTtcbiAgICBpZiAoTnVtYmVyKGxpZmVjeWNsZUluZm9bMV0pID4gMCkge1xuICAgICAgdGhpcy5yYW5kb21seUxpZmVjeWNsZU9jY3VyYW5jZSA9IE51bWJlcihsaWZlY3ljbGVJbmZvWzFdKTtcbiAgICB9XG4gICAgdGhpcy5saWZlY3ljbGVEZXRhaWxzID0gdGhpcy5mcmVxdWVuY3lEYXRhLmxpZmVjeWNsZTtcbiAgICBpZiAobGlmZWN5Y2xlSW5mb1swXSAhPT0gJzAwMDAtMDAtMDAnKSB7XG4gICAgICBjb25zdCBkYXRlU2VsZWN0ZWQgPSBtb21lbnQoXG4gICAgICAgIGxpZmVjeWNsZUluZm9bMF0gKyAnICcgKyBERUZBVUxUX1RJTUUsXG4gICAgICAgICdERC1NTU1NLVlZWVkgSEg6bW0gYSdcbiAgICAgICkudW5peCgpO1xuICAgICAgdGhpcy5yYW5kb21seUxpZmVDeWNsZUVuZFRpbWUgPSBuZXcgRGF0ZShkYXRlU2VsZWN0ZWQgKiAxMDAwKTtcbiAgICB9XG4gICAgaWYgKHRoaXMuZnJlcXVlbmN5RGF0YS5saWZlY3ljbGUgPT0gJzAwMDAtMDAtMDB+fjAnKSB7XG4gICAgICB0aGlzLnJhbmRvbWx5U2VsZXRlZExpZmVjeWNsZVR5cGUgPSAyO1xuICAgIH0gZWxzZSBpZiAobGlmZWN5Y2xlSW5mb1swXSAhPT0gJzAwMDAtMDAtMDAnKSB7XG4gICAgICB0aGlzLnJhbmRvbWx5U2VsZXRlZExpZmVjeWNsZVR5cGUgPSAwO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnJhbmRvbWx5U2VsZXRlZExpZmVjeWNsZVR5cGUgPSAxO1xuICAgIH1cbiAgfVxuXG4gIG9uTW9udGhTZWxlY3RlZChldmVudDogYW55KSB7XG4gICAgaWYgKGV2ZW50LmNoZWNrZWQpIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWRNb250aGx5LnB1c2goZXZlbnQuaW5kZXgpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnNlbGVjdGVkTW9udGhseSA9IHRoaXMuc2VsZWN0ZWRNb250aGx5LmZpbHRlcihcbiAgICAgICAgKGVsZSkgPT4gZWxlICE9PSBldmVudC5pbmRleFxuICAgICAgKTtcbiAgICB9XG4gICAgdGhpcy5nZXRSYW5kb21GcmVxdWVuY3koKTtcbiAgfVxuXG4gIG9uVmFsdWVDaGFuZ2UoZXZlbnQ6IGFueSkge1xuICAgIGlmIChldmVudC50eXBlID09PSAnY29tcGxldGVkJykge1xuICAgICAgdGhpcy5yYW5kb21XaW5kb3cgPSBldmVudC52YWx1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5yYW5kb21GYWlsZWQgPSBldmVudC52YWx1ZTtcbiAgICB9XG4gICAgdGhpcy5nZXRSYW5kb21GcmVxdWVuY3koKTtcbiAgfVxuXG4gIHJhbmRvbUNoZWNrZWQoZXZlbnQ6IGFueSkge1xuICAgIHRoaXMucmFuZG9tVHlwZVNlbGVjdGVkID0gTnVtYmVyKGV2ZW50LnRhcmdldC52YWx1ZSk7XG4gICAgdGhpcy5nZXRSYW5kb21JbnN0YW5jZXMoKTtcbiAgICB0aGlzLmdldFJhbmRvbUZyZXF1ZW5jeSgpO1xuICB9XG5cbiAgcmFuZG9tSW5zdGFuY2UoZXZlbnQ6IGFueSwgdHlwZTogYW55KSB7XG4gICAgaWYgKFxuICAgICAgIU51bWJlci5pc05hTihOdW1iZXIoZXZlbnQudGFyZ2V0LnZhbHVlKSkgJiZcbiAgICAgIGV2ZW50LnRhcmdldC52YWx1ZSAhPT0gJzAnICYmXG4gICAgICBwYXJzZUludChldmVudC50YXJnZXQudmFsdWUpID4gMCAmJlxuICAgICAgcGFyc2VJbnQoZXZlbnQudGFyZ2V0LnZhbHVlKSA8IHRoaXMucmFuZG9tVHlwZU1heFt0eXBlXSArIDFcbiAgICApIHtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5yYW5kb21JbnN0YW5jZXMgPVxuICAgICAgICB0aGlzLmRlZmF1bHRSYW5kb21JbnN0YW5jZVt0aGlzLnJhbmRvbVR5cGVTZWxlY3RlZF07XG4gICAgfVxuICAgIHRoaXMuZ2V0UmFuZG9tRnJlcXVlbmN5KCk7XG4gIH1cblxuICBsaWZlY3ljbGVDaGFuZ2UoZXZlbnQ6IGFueSkge1xuICAgIHN3aXRjaCAoZXZlbnQudHlwZSkge1xuICAgICAgY2FzZSAwOlxuICAgICAgICB0aGlzLmxpZmVjeWNsZURldGFpbHMgPSBldmVudC5lbmRzQnkgKyAnfn4wJztcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIDE6XG4gICAgICAgIHRoaXMubGlmZWN5Y2xlRGV0YWlscyA9ICcwMDAwLTAwLTAwfn4nICsgZXZlbnQuZW5kYWZ0ZXI7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAyOlxuICAgICAgICB0aGlzLmxpZmVjeWNsZURldGFpbHMgPSAnMDAwMC0wMC0wMH5+MCc7XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgICBpZiAoZXZlbnQuc3RhcnRGcm9tLnRvU3RyaW5nKCkubGVuZ3RoID4gMTApIHtcbiAgICAgIHRoaXMuc3RhcnREYXRlID0gTWF0aC5mbG9vcihldmVudC5zdGFydEZyb20gLyAxMDAwKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zdGFydERhdGUgPSBNYXRoLmZsb29yKGV2ZW50LnN0YXJ0RnJvbSk7XG4gICAgfVxuICAgIGxldCBlbmRCeURhdGUgPSBNYXRoLmZsb29yKG5ldyBEYXRlKCkuZ2V0VGltZSgpIC8gMTAwMCArIDg2NDAwMDAwKTtcbiAgICBpZiAoZXZlbnQudHlwZSA9PT0gMCkge1xuICAgICAgZW5kQnlEYXRlID0gZXZlbnQuZW5kc0J5XG4gICAgICAgID8gbW9tZW50KGV2ZW50LmVuZHNCeSArICcgMDA6MDA6MDAnLCAnREQtTU1NLVlZWVkgSEg6bW06c3MnKS51bml4KClcbiAgICAgICAgOiBlbmRCeURhdGU7XG4gICAgfVxuICAgIHRoaXMuZnJlcXVlbmN5SW5mby5mYWlsZWRfdGltZV91dGMgPSBlbmRCeURhdGU7XG4gICAgdGhpcy5nZXRSYW5kb21GcmVxdWVuY3koKTtcbiAgfVxuXG4gIHNlbGVjdGVkTW9udGgoZXZlbnQ6IGFueSkge1xuICAgIHRoaXMuZ2V0UmFuZG9tRnJlcXVlbmN5KCk7XG4gIH1cblxuICByYW5kb21RdWFydGVybHlDaGVja2VkKGV2ZW50OiBhbnkpIHtcbiAgICB0aGlzLnJhbmRvbVF1YXJ0ZXJseVNlbGVjdGVkID0gTnVtYmVyKGV2ZW50LnRhcmdldC52YWx1ZSk7XG4gICAgdGhpcy5nZXRSYW5kb21GcmVxdWVuY3koKTtcbiAgfVxuXG4gIGdldFJhbmRvbUZyZXF1ZW5jeSgpIHtcbiAgICAvLzA6IHdlZWtseSAxOiBtb250aGx5IDI6cXVhcnRlcmx5IDM6IHllYXJseVxuICAgIGxldCBmcmVxdWVuY3lEZXRhaWxzO1xuICAgIHN3aXRjaCAodGhpcy5yYW5kb21UeXBlU2VsZWN0ZWQpIHtcbiAgICAgIGNhc2UgMDpcbiAgICAgICAgZnJlcXVlbmN5RGV0YWlscyA9IHRoaXMuZ2V0V2Vla2x5RnJlcXVlbmN5KCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAxOlxuICAgICAgICBmcmVxdWVuY3lEZXRhaWxzID0gdGhpcy5nZXRNb250aGx5RnJlcXVlbmN5KCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAyOlxuICAgICAgICBmcmVxdWVuY3lEZXRhaWxzID0gdGhpcy5nZXRRdWFydGVybHlGcmVxdWVuY3koKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIDM6XG4gICAgICAgIGZyZXF1ZW5jeURldGFpbHMgPSB0aGlzLmdldFllYXJseUZyZXF1ZW5jeSgpO1xuICAgICAgICBicmVhaztcbiAgICB9XG4gICAgdGhpcy5mcmVxdWVuY3lJbmZvLnBhdHRlcm4gPSBmcmVxdWVuY3lEZXRhaWxzPy5wYXR0ZXJuO1xuICAgIHRoaXMuZnJlcXVlbmN5SW5mby5wbGFjZWhvbGRlciA9IGZyZXF1ZW5jeURldGFpbHM/LnBsYWNlaG9sZGVyO1xuICAgIHRoaXMuZnJlcXVlbmN5SW5mby5jYXNlID0gJ3JhbmRvbWx5JztcbiAgICB0aGlzLmZyZXF1ZW5jeUluZm8uZmFpbGVkQWZ0ZXIgPSB0aGlzLnJhbmRvbUZhaWxlZDtcbiAgICB0aGlzLmZyZXF1ZW5jeUluZm8ud2luZG93ID0gdGhpcy5yYW5kb21XaW5kb3c7XG4gICAgdGhpcy5mcmVxdWVuY3lJbmZvLnNlbGVjdGVkTW9udGggPSB0aGlzLnNlbGVjdGVkTW9udGhseTtcbiAgICB0aGlzLmZyZXF1ZW5jeUluZm8ubGlmZWN5Y2xlRGV0YWlscyA9IHRoaXMubGlmZWN5Y2xlRGV0YWlscztcbiAgICB0aGlzLmZyZXF1ZW5jeUluZm8uc3RhcnRGcm9tID0gdGhpcy5zdGFydERhdGU7XG4gICAgdGhpcy5mcmVxdWVuY3lEZXRhaWxzLmVtaXQodGhpcy5mcmVxdWVuY3lJbmZvKTtcbiAgfVxuXG4gIGdldFdlZWtseUZyZXF1ZW5jeSgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgcGF0dGVybjogOCArICd+JyArIDEgKyAnficgKyAwICsgJ34nICsgdGhpcy5yYW5kb21JbnN0YW5jZXMsXG4gICAgICBwbGFjZWhvbGRlcjpcbiAgICAgICAgJ0V2ZXJ5IHdlZWsgZm9yICcgKyB0aGlzLnJhbmRvbUluc3RhbmNlcyArICcgcmFuZG9tIGluc3RhbmNlcycsXG4gICAgfTtcbiAgfVxuXG4gIGdldE1vbnRobHlGcmVxdWVuY3koKSB7XG4gICAgdGhpcy5zZWxlY3RlZE1vbnRobHkgPSB0aGlzLnNlbGVjdGVkTW9udGhseS5zb3J0KChuMSwgbjIpID0+IG4xIC0gbjIpO1xuICAgIGNvbnN0IHNlbGVjdGVkTW9udGggPSB0aGlzLnNlbGVjdGVkTW9udGhseS5tYXAoKGVsZSkgPT4ge1xuICAgICAgcmV0dXJuIHRoaXMuc2hvcnRNb250aFtlbGVdO1xuICAgIH0pO1xuICAgIGNvbnN0IG1vbnRoSW5kZXggPSB0aGlzLnNlbGVjdGVkTW9udGhseS5tYXAoKGVsZSkgPT4gZWxlICsgMSk7XG4gICAgcmV0dXJuIHtcbiAgICAgIHBhdHRlcm46XG4gICAgICAgIDggKyAnficgKyAyICsgJ34nICsgbW9udGhJbmRleC5qb2luKCcsJykgKyAnficgKyB0aGlzLnJhbmRvbUluc3RhbmNlcyxcbiAgICAgIHBsYWNlaG9sZGVyOlxuICAgICAgICAnRXZlcnkgJyArXG4gICAgICAgIHNlbGVjdGVkTW9udGguam9pbignLCAnKSArXG4gICAgICAgICcgZm9yICcgK1xuICAgICAgICB0aGlzLnJhbmRvbUluc3RhbmNlcyArXG4gICAgICAgICcgcmFuZG9tIGluc3RhbmNlcycsXG4gICAgfTtcbiAgfVxuXG4gIGdldFF1YXJ0ZXJseUZyZXF1ZW5jeSgpIHtcbiAgICBsZXQgbW9udGhTZXF1ZW5jZSA9XG4gICAgICB0aGlzLnJhbmRvbVF1YXJ0ZXJseVNlbGVjdGVkID09PSAwXG4gICAgICAgID8gdGhpcy5xdWFydGVybHlHcm91cC5zbGljZSgwLCA0KVxuICAgICAgICA6IHRoaXMucmFuZG9tUXVhcnRlcmx5U2VsZWN0ZWQgPT09IDFcbiAgICAgICAgPyB0aGlzLnF1YXJ0ZXJseUdyb3VwLnNsaWNlKDQsIDgpXG4gICAgICAgIDogdGhpcy5xdWFydGVybHlHcm91cC5zbGljZSg4KTtcbiAgICBtb250aFNlcXVlbmNlID0gbW9udGhTZXF1ZW5jZS5tYXAoKGVsZSkgPT4gZWxlICsgMSk7XG4gICAgcmV0dXJuIHtcbiAgICAgIHBhdHRlcm46IDggKyAnficgKyAzICsgJ34nICsgbW9udGhTZXF1ZW5jZSArICd+JyArIHRoaXMucmFuZG9tSW5zdGFuY2VzLFxuICAgICAgcGxhY2Vob2xkZXI6XG4gICAgICAgICdFdmVyeSAnICtcbiAgICAgICAgdGhpcy5xdWFydGVybHlNb250aFt0aGlzLnJhbmRvbVF1YXJ0ZXJseVNlbGVjdGVkXSArXG4gICAgICAgICcgZm9yICcgK1xuICAgICAgICB0aGlzLnJhbmRvbUluc3RhbmNlcyArXG4gICAgICAgICcgcmFuZG9tIGluc3RhbmNlcycsXG4gICAgfTtcbiAgfVxuXG4gIGdldFllYXJseUZyZXF1ZW5jeSgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgcGF0dGVybjpcbiAgICAgICAgOCArICd+JyArIDQgKyAnfjEsMiwzLDQsNSw2LDcsOCw5LDEwLDExLDEyficgKyB0aGlzLnJhbmRvbUluc3RhbmNlcyxcbiAgICAgIHBsYWNlaG9sZGVyOlxuICAgICAgICAnRXZlcnkgeWVhciBmb3IgJyArIHRoaXMucmFuZG9tSW5zdGFuY2VzICsgJyByYW5kb20gaW5zdGFuY2VzJyxcbiAgICB9O1xuICB9XG59XG4iLCI8IS0tIDxwPmZyZXF1ZW5jeS1yYW5kb20gd29ya3MhPC9wPiAtLT5cbjxkaXYgY2xhc3M9XCJmcmVxdWVuY3ktcmFuZG9tXCI+XG4gICAgPGRpdiBjbGFzcz1cInZ4LWZzLTExIHZ4LWZ3LTUwMCB2eC1sYWJlbC10eHQgdngtdHQtdXBwZXJjYXNlIHZ4LW1iLTFcIj5UWVBFOjwvZGl2PiBcbiAgICA8YXBwLWZyZXF1ZW5jeS1yYWRpby1saXN0XG4gICAgW3JhZGlvTGlzdF09XCJyYW5kb21UeXBlXCIgXG4gICAgW3NlbGVjdGVkSW5kZXhdPVwicmFuZG9tVHlwZVNlbGVjdGVkXCIgXG4gICAgKHNlbGVjdGVkUmFkaW8pPVwicmFuZG9tQ2hlY2tlZCgkZXZlbnQpXCJcbiAgICBbbmFtZV09XCIncmFuZG9tJ1wiXG4gICAgY2xhc3M9XCJyYW5kb20tcmFkaW9cIlxuICAgIFttb2RlXT1cIm1vZGVcIlxuICAgID48L2FwcC1mcmVxdWVuY3ktcmFkaW8tbGlzdD5cbiAgICA8YXBwLWZyZXF1ZW5jeS1yYWRpby1saXN0XG4gICAgICAgICpuZ0lmPVwicmFuZG9tVHlwZVNlbGVjdGVkID09IDJcIiAgXG4gICAgICAgIFtyYWRpb0xpc3RdPVwicXVhcnRlcmx5TW9udGhcIlxuICAgICAgICBbbmFtZV09XCIncXVhcnRlcidcIiBcbiAgICAgICAgW3NlbGVjdGVkSW5kZXhdPVwicmFuZG9tUXVhcnRlcmx5U2VsZWN0ZWRcIiBcbiAgICAgICAgKHNlbGVjdGVkUmFkaW8pPVwicmFuZG9tUXVhcnRlcmx5Q2hlY2tlZCgkZXZlbnQpXCJcbiAgICAgICAgY2xhc3M9XCJxdWFydGVybHktcmFkaW9cIlxuICAgICAgICBbbW9kZV09XCJtb2RlXCJcbiAgICAgICAgPlxuICAgIDwvYXBwLWZyZXF1ZW5jeS1yYWRpby1saXN0PlxuICAgIDxhcHAtZnJlcXVlbmN5LWNoZWNrYm94LWxpc3RcbiAgICAgICAgKm5nSWY9XCJyYW5kb21UeXBlU2VsZWN0ZWQgPT0gMVwiICBcbiAgICAgICAgW2lkXT1cIjhcIlxuICAgICAgICBbbGlzdEFycmF5XT1cIm1vbnRoTmFtZUFycmF5XCJcbiAgICAgICAgW3NlbGVjdGVkSW5kZXhdPVwic2VsZWN0ZWRNb250aGx5XCJcbiAgICAgICAgKHNlbGVjdGVkQ2hlY2tib3gpPVwib25Nb250aFNlbGVjdGVkKCRldmVudClcIlxuICAgICAgICBjbGFzcz1cIm1vbnRobHktY2hlY2tib3hcIlxuICAgICAgICBbbW9kZV09XCJtb2RlXCJcbiAgICA+PC9hcHAtZnJlcXVlbmN5LWNoZWNrYm94LWxpc3Q+XG4gICAgPGRpdiBjbGFzcz1cImZyZXF1ZW5jeS1yYW5kb20tbWVzc2FnZSB2eC1wLTMgdngtZC1mbGV4IHZ4LWFsaWduLWNlbnRlclwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwidngtZnMtMTMgdngtcGFyYWdyYXBoLXR4dFwiPlJhbmRvbSBvY2N1cnJlbmNlIGZvcjwvZGl2PlxuICAgICAgICA8aW5wdXQgY2xhc3M9XCJjb3VudE51bVwiIHR5cGU9XCJudW1iZXJcIiBbKG5nTW9kZWwpXT1cInJhbmRvbUluc3RhbmNlc1wiIChjaGFuZ2UpPVwicmFuZG9tSW5zdGFuY2UoJGV2ZW50LCByYW5kb21UeXBlU2VsZWN0ZWQpXCIgb25rZXlkb3duPVwicmV0dXJuIGV2ZW50LmtleUNvZGUgIT09IDE5MFwiIG1pbj1cIjBcIiBvbmlucHV0PVwidGhpcy52YWx1ZSA9IE1hdGguYWJzKHRoaXMudmFsdWUpXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ2eC1mcy0xMyB2eC1wYXJhZ3JhcGgtdHh0XCI+aW5zdGFuY2VzLiBOb3RlLCB0aGUgbWF4aW11bSBudW1iZXIgb2Ygb2NjdXJyZW5jZXMgZm9yIDxzcGFuIGNsYXNzPVwidngtZnctNTAwXCI+e3sgcmFuZG9tVHlwZVtyYW5kb21UeXBlU2VsZWN0ZWRdLnRvTG93ZXJDYXNlKCkgfX08L3NwYW4+IGlzIHt7IHJhbmRvbVR5cGVNYXhbcmFuZG9tVHlwZVNlbGVjdGVkXSB9fS48L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8YXBwLWZyZXF1ZW5jeS1kdWUtZGF0ZVxuICAgICAgICBbaWRdID0gJzgnXG4gICAgICAgIFtwYWdlTmFtZV09XCIncmFuZG9tJ1wiXG4gICAgICAgIFttb2RlXT1cIm1vZGVcIlxuICAgICAgICBbaXNEZWFjdGl2YXRlZF09XCJmYWxzZVwiXG4gICAgICAgIFtjb21wbGV0ZWRWYWx1ZV09XCJyYW5kb21XaW5kb3dcIlxuICAgICAgICBbbm90Q29tcGxldGVkVmFsdWVdPVwicmFuZG9tRmFpbGVkXCJcbiAgICAgICAgKHZhbHVlQ2hhbmdlKT1cIm9uVmFsdWVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgIFttb2RlXT1cIm1vZGVcIlxuICAgID48L2FwcC1mcmVxdWVuY3ktZHVlLWRhdGU+XG4gICAgPGFwcC1mcmVxdWVuY3ktbGlmZWN5Y2xlXG4gICAgICAgIFtpZF09XCI4XCJcbiAgICAgICAgW3N0YXJ0RGF0ZV09XCJyYW5kb21seUxpZmVDeWNsZVN0YXJ0XCJcbiAgICAgICAgW2VuZERhdGVdPVwicmFuZG9tbHlMaWZlQ3ljbGVFbmRUaW1lXCJcbiAgICAgICAgW29jY3VycmFuY2VdPVwicmFuZG9tbHlMaWZlY3ljbGVPY2N1cmFuY2VcIlxuICAgICAgICBbc2VsZWN0ZWRMaWZlY3ljbGVUeXBlXT1cInJhbmRvbWx5U2VsZXRlZExpZmVjeWNsZVR5cGVcIlxuICAgICAgICAoc2VsZWN0ZWRPY2N1cmFuY2UpPVwibGlmZWN5Y2xlQ2hhbmdlKCRldmVudClcIlxuICAgICAgICBbbW9kZV09XCJtb2RlXCJcbiAgICA+PC9hcHAtZnJlcXVlbmN5LWxpZmVjeWNsZT5cbjwvZGl2PlxuIl19