survery-lib 2.1.32 → 2.1.34
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.
- package/esm2022/lib/components/question-boolean-template/question-boolean-template.component.mjs +5 -1
- package/esm2022/lib/components/question-cascade-template/question-cascade-template.component.mjs +7 -3
- package/esm2022/lib/components/question-check-box-template/question-check-box-template.component.mjs +6 -3
- package/esm2022/lib/components/question-dropdown-multi-template/question-dropdown-multi-template.component.mjs +4 -1
- package/esm2022/lib/components/question-dropdown-template/question-dropdown-template.component.mjs +4 -1
- package/esm2022/lib/components/question-feedback-template/question-feedback-template.component.mjs +4 -1
- package/esm2022/lib/components/question-institutions-template/question-institutions-template.component.mjs +1 -2
- package/esm2022/lib/components/question-matrix-template/question-matrix-template.component.mjs +4 -1
- package/esm2022/lib/components/question-radio-button-template/question-radio-button-template.component.mjs +4 -1
- package/esm2022/lib/core/states/survey-store/survey.effect.mjs +9 -9
- package/esm2022/shared/form-interfaces/question-cascade.form-interface.mjs +1 -1
- package/fesm2022/survery-lib.mjs +38 -13
- package/fesm2022/survery-lib.mjs.map +1 -1
- package/package.json +1 -1
- package/shared/form-interfaces/question-cascade.form-interface.d.ts +1 -0
package/esm2022/lib/components/question-feedback-template/question-feedback-template.component.mjs
CHANGED
|
@@ -44,6 +44,9 @@ export class QuestionFeedbackTemplateComponent {
|
|
|
44
44
|
this.fCtrls.inputTypeId.setValue(InputTypeEnum.Pagination);
|
|
45
45
|
}
|
|
46
46
|
}
|
|
47
|
+
if (value.isShow == true) {
|
|
48
|
+
this.fCtrls.isShow.setValue(value.isShow);
|
|
49
|
+
}
|
|
47
50
|
if (value.isRequired == true) {
|
|
48
51
|
this.fCtrls.answer.addValidators([Validators.required]);
|
|
49
52
|
this.fCtrls.answer.updateValueAndValidity();
|
|
@@ -135,4 +138,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImpor
|
|
|
135
138
|
}], isDisabled: [{
|
|
136
139
|
type: Input
|
|
137
140
|
}] } });
|
|
138
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlc3Rpb24tZmVlZGJhY2stdGVtcGxhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc3VydmVyeS1saWIvc3JjL2xpYi9jb21wb25lbnRzL3F1ZXN0aW9uLWZlZWRiYWNrLXRlbXBsYXRlL3F1ZXN0aW9uLWZlZWRiYWNrLXRlbXBsYXRlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3N1cnZlcnktbGliL3NyYy9saWIvY29tcG9uZW50cy9xdWVzdGlvbi1mZWVkYmFjay10ZW1wbGF0ZS9xdWVzdGlvbi1mZWVkYmFjay10ZW1wbGF0ZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQWUsV0FBVyxFQUFhLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWpGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBSzVFLE9BQU8sRUFBRSxZQUFZLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDakYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUN0RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQzs7Ozs7Ozs7QUFPaEYsTUFBTSxPQUFPLGlDQUFpQztJQUs1QyxJQUFJLE1BQU07UUFDUixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDO0lBQzdCLENBQUM7SUFFRCxJQUFJLGdCQUFnQjtRQUNsQixPQUFP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LFVBQVUsRUFBRTtnQkFDaEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUMsQ0FBQzthQUN2RDtZQUVELGdCQUFnQjtZQUNoQixJQUFJLFFBQVEsRUFBRSxNQUFNLElBQUksUUFBUSxFQUFFLE1BQU0sRUFBRTtnQkFDeEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQztnQkFFOUMsSUFBSSxRQUFRLEVBQUUsTUFBTSxJQUFJLEtBQUssRUFBRTtvQkFDN0IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO2lCQUNuQzthQUNGO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU8sa0JBQWtCLENBQUMsVUFBbUI7UUFDNUMsSUFBSSxVQUFVLElBQUksSUFBSSxFQUFFO1lBQ3RCLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxDQUFBO1NBQzdCO2FBQU07WUFDTCxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQTtTQUM1QjtRQUNELElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLHNCQUFzQixFQUFFLENBQUM7SUFDOUMsQ0FBQzs4R0FoSVUsaUNBQWlDO2tHQUFqQyxpQ0FBaUMsc0tDbkI5Qyw4aUNBZ0JVOzsyRkRHRyxpQ0FBaUM7a0JBTDdDLFNBQVM7K0JBQ0UsZ0NBQWdDO3FKQXFCakMsWUFBWTtzQkFBcEIsS0FBSztnQkFDTyxXQUFXO3NCQUF2QixLQUFLO2dCQTJDTyxVQUFVO3NCQUF0QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgU3VydmV5UXVlc3Rpb25EdG8gfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvZHRvcy9zdXJ2ZXktcXVlc3Rpb24uZHRvJztcclxuaW1wb3J0IHsgUXVlc3Rpb25UeXBlRW51bSB9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9lbnVtcy9xdWVzdGlvbi10eXBlLmVudW0nO1xyXG5pbXBvcnQgeyBRdWVzdGlvbkZlZWRiYWNrVGVtcGxhdGVGb3JtSW50ZXJmYWNlIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL2Zvcm0taW50ZXJmYWNlcy9xdWVzdGlvbi1mZWVkYmFjay10ZW1wbGF0ZS5mb3JtLWludGVyZmFjZSc7XHJcbmltcG9ydCB7IFF1ZXN0aW9uTmdyeE1vZGVsIH0gZnJvbSAnLi4vLi4vY29yZS9zdGF0ZXMvZW50aXRlcy9xdWVzdGlvbi5lbnRpdHknO1xyXG5pbXBvcnQgeyBTdXJ2ZXlMaWJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvc3VydmV5LWxpYi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICdAbmdyeC9zdG9yZSc7XHJcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgZGlzdGluY3RVbnRpbENoYW5nZWQsIGZpbHRlciwgbWFwLCBwYWlyd2lzZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBzdXJ2ZXlBY3Rpb25zIH0gZnJvbSAnLi4vLi4vY29yZS9zdGF0ZXMvc3VydmV5LXN0b3JlL3N1cnZleS5hY3Rpb24nO1xyXG5pbXBvcnQgeyBxdWVzdGlvblNlbGVjdG9ycyB9IGZyb20gJy4uLy4uL2NvcmUvc3RhdGVzL3N1cnZleS1zdG9yZS9xdWVzdGlvbi5zZWxlY3Rvcic7XHJcbmltcG9ydCB7IElucHV0VHlwZUVudW0gfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvZW51bXMvaW5wdXQtdHlwZS5lbnVtJztcclxuaW1wb3J0IHsgRXZhbHVhdGlvblR5cGVFbnVtIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL2VudW1zL2V2YWx1YXRpb24tdHlwZS5lbnVtJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLXF1ZXN0aW9uLWZlZWRiYWNrLXRlbXBsYXRlJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vcXVlc3Rpb24tZmVlZGJhY2stdGVtcGxhdGUuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3F1ZXN0aW9uLWZlZWRiYWNrLXRlbXBsYXRlLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIFF1ZXN0aW9uRmVlZGJhY2tUZW1wbGF0ZUNvbXBvbmVudCB7XHJcbiAgc3VydmV5UXVlc3Rpb246IFN1cnZleVF1ZXN0aW9uRHRvO1xyXG4gIHJGb3JtOiBGb3JtR3JvdXA8UXVlc3Rpb25GZWVkYmFja1RlbXBsYXRlRm9ybUludGVyZmFjZT47XHJcbiAgcXVlc3Rpb25BcnIgPSB0aGlzLl9TdG9yZS5zZWxlY3RTaWduYWwocXVlc3Rpb25TZWxlY3RvcnMucGFnZVF1ZXN0aW9ucyk7XHJcblxyXG4gIGdldCBmQ3RybHMoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5yRm9ybS5jb250cm9scztcclxuICB9XHJcblxyXG4gIGdldCBxdWVzdGlvblR5cGVFbnVtKCkge1xyXG4gICAgcmV0dXJuIFF1ZXN0aW9uVHlwZUVudW07XHJcbiAgfVxyXG5cclxuICBnZXQgaW5wdXRUeXBlRW51bSgpIHtcclxuICAgIHJldHVybiBJbnB1dFR5cGVFbnVtXHJcbiAgfVxyXG5cclxuICBASW5wdXQoKSBpc0FyYWJpY0xhbmc6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASW5wdXQoKSBzZXQgc2V0UXVlc3Rpb24odmFsdWU6IFF1ZXN0aW9uTmdyeE1vZGVsKSB7XHJcbiAgICBpZiAoIXRoaXMuc3VydmV5UXVlc3Rpb24pIHtcclxuICAgICAgdGhpcy5zdXJ2ZXlRdWVzdGlvbiA9IHZhbHVlLnF1ZXN0aW9uQWxsSW5mbztcclxuXHJcbiAgICAgIHRoaXMuckZvcm0ucGF0Y2hWYWx1ZSh7XHJcbiAgICAgICAgaWQ6IHZhbHVlLnF1ZXN0aW9uSWQsXHJcbiAgICAgICAgbmFtZTogdmFsdWUucXVlc3Rpb25BbGxJbmZvLnF1ZXN0aW9uTmFtZSxcclxuICAgICAgICB0aXRsZTogdmFsdWUucXVlc3Rpb25BbGxJbmZvLnF1ZXN0aW9uVGl0bGUsXHJcbiAgICAgICAgdHlwZUlkOiB2YWx1ZS5xdWVzdGlvbkFsbEluZm8ucXVlc3Rpb25UeXBlSWQsXHJcbiAgICAgICAgZGVzY3JpcHRpb246IHZhbHVlLnF1ZXN0aW9uQWxsSW5mby5xdWVzdGlvbkRlc2NyaXB0aW9uLFxyXG4gICAgICAgIGlzRGlzYWJsZWQ6IHZhbHVlLnF1ZXN0aW9uQWxsSW5mby5pc1JlYWRPbmx5LFxyXG4gICAgICAgIGlzU2hvdzogdmFsdWUucXVlc3Rpb25BbGxJbmZvLmlzVmlzYWJsZVxyXG4gICAgICB9KTtcclxuXHJcbiAgICAgIGlmICh2YWx1ZS5xdWVzdGlvbkFsbEluZm8uc3VydmV5QW5zd2Vyc1swXT8uYW5zd2VySWQgIT0gbnVsbCAmJiB2YWx1ZS5xdWVzdGlvbkFsbEluZm8uc3VydmV5QW5zd2Vyc1swXT8uYW5zd2VySWQgIT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgdGhpcy5mQ3RybHMuc3VydmV5QW5zd2VySWQuc2V0VmFsdWUodmFsdWUucXVlc3Rpb25BbGxJbmZvLnN1cnZleUFuc3dlcnNbMF0uYW5zd2VySWQpO1xyXG5cclxuICAgICAgICBpZiAodmFsdWUucXVlc3Rpb25BbGxJbmZvLnN1cnZleUFuc3dlcnNbMF0uZXZhbHVhdGlvblR5cGVJZCA9PSBFdmFsdWF0aW9uVHlwZUVudW0uU3RhcnMpIHtcclxuICAgICAgICAgIHRoaXMuZkN0cmxzLmlucHV0VHlwZUlkLnNldFZhbHVlKElucHV0VHlwZUVudW0uU3RhcnMpO1xyXG4gICAgICAgIH0gZWxzZSBpZiAodmFsdWUucXVlc3Rpb25BbGxJbmZvLnN1cnZleUFuc3dlcnNbMF0uZXZhbHVhdGlvblR5cGVJZCA9PSBFdmFsdWF0aW9uVHlwZUVudW0uUGFnaW5hdGlvbikge1xyXG4gICAgICAgICAgdGhpcy5mQ3RybHMuaW5wdXRUeXBlSWQuc2V0VmFsdWUoSW5wdXRUeXBlRW51bS5QYWdpbmF0aW9uKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICB9XHJcblxyXG4gICAgICBpZiAodmFsdWUuaXNSZXF1aXJlZCA9PSB0cnVlKSB7XHJcbiAgICAgICAgdGhpcy5mQ3RybHMuYW5zd2VyLmFkZFZhbGlkYXRvcnMoW1ZhbGlkYXRvcnMucmVxdWlyZWRdKTtcclxuICAgICAgICB0aGlzLmZDdHJscy5hbnN3ZXIudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB2YXIgcXVlc3Rpb24gPSB0aGlzLnF1ZXN0aW9uQXJyKCkuZmluZCh4ID0+IHgucXVlc3Rpb25JZCA9PSB2YWx1ZS5xdWVzdGlvbklkKTtcclxuICAgICAgaWYgKHF1ZXN0aW9uKSB7XHJcbiAgICAgICAgdGhpcy5yRm9ybS5wYXRjaFZhbHVlKHtcclxuICAgICAgICAgIGFuc3dlciA6IHF1ZXN0aW9uLmFuc3dlclRleHQsXHJcbiAgICAgICAgICBpc0Rpc2FibGVkOiBxdWVzdGlvbi5pc0Rpc2FibGVkLFxyXG4gICAgICAgICAgaXNTaG93OiBxdWVzdGlvbi5pc1Nob3dcclxuICAgICAgICB9LHtlbWl0RXZlbnQ6ZmFsc2V9KTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdGhpcy50b2dnbGVFbmFibGVBbnN3ZXIodmFsdWUucXVlc3Rpb25BbGxJbmZvLmlzUmVhZE9ubHkpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQElucHV0KCkgc2V0IGlzRGlzYWJsZWQodmFsdWU6IGJvb2xlYW4pIHtcclxuICAgIHRoaXMudG9nZ2xlRW5hYmxlQW5zd2VyKHZhbHVlKTtcclxuICB9XHJcblxyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9mb3JtQnVpbGRlcjogRm9ybUJ1aWxkZXIsIHByaXZhdGUgX3N1cnZleUxpYlNlcnZpY2U6IFN1cnZleUxpYlNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9TdG9yZTogU3RvcmUpIHtcclxuICAgIHRoaXMuckZvcm0gPSB0aGlzLl9mb3JtQnVpbGRlci5ncm91cDxRdWVzdGlvbkZlZWRiYWNrVGVtcGxhdGVGb3JtSW50ZXJmYWNlPih7XHJcbiAgICAgIGlkOiBuZXcgRm9ybUNvbnRyb2wobnVsbCksXHJcbiAgICAgIG5hbWU6IG5ldyBGb3JtQ29udHJvbChudWxsKSxcclxuICAgICAgdGl0bGU6IG5ldyBGb3JtQ29udHJvbChudWxsKSxcclxuICAgICAgdHlwZUlkOiBuZXcgRm9ybUNvbnRyb2wobnVsbCksXHJcbiAgICAgIGRlc2NyaXB0aW9uOiBuZXcgRm9ybUNvbnRyb2wobnVsbCksXHJcbiAgICAgIHN1cnZleUFuc3dlcklkOiBuZXcgRm9ybUNvbnRyb2wobnVsbCksXHJcbiAgICAgIGFuc3dlcjogbmV3IEZvcm1Db250cm9sKG51bGwpLFxyXG4gICAgICBpc0Rpc2FibGVkOiBuZXcgRm9ybUNvbnRyb2woZmFsc2UpLFxyXG4gICAgICBpc1Nob3c6IG5ldyBGb3JtQ29udHJvbCh0cnVlKSxcclxuICAgICAgaW5wdXRUeXBlSWQ6IG5ldyBGb3JtQ29udHJvbChudWxsKSxcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmZDdHJscy5hbnN3ZXIudmFsdWVDaGFuZ2VzLnBpcGUoKS5waXBlKGRlYm91bmNlVGltZSgyMDApLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpKS5zdWJzY3JpYmUodmFsdWUgPT4ge1xyXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICBjb25zdCBmb3JtVmFsdWUgPSB0aGlzLnJGb3JtLnZhbHVlO1xyXG4gICAgICAgIHRoaXMuX1N0b3JlLmRpc3BhdGNoKHN1cnZleUFjdGlvbnMudXBkYXRlUXVlc3Rpb25BbnN3ZXIoe1xyXG4gICAgICAgICAgcXVlc3Rpb25JZDogZm9ybVZhbHVlLmlkLFxyXG4gICAgICAgICAgYW5zd2VyOiB2YWx1ZSxcclxuICAgICAgICAgIGlzVmFsaWQ6IHRoaXMuZkN0cmxzLmFuc3dlci52YWxpZFxyXG4gICAgICAgIH0pKVxyXG4gICAgICB9LCAxMDApO1xyXG5cclxuICAgIH0pO1xyXG5cclxuICAgIHRoaXMuX1N0b3JlLnNlbGVjdChxdWVzdGlvblNlbGVjdG9ycy5wYWdlUXVlc3Rpb25zKS5waXBlKG1hcChhcnIgPT4gYXJyLmZpbmQoeCA9PiB4LnF1ZXN0aW9uSWQgPT0gdGhpcy5mQ3RybHMuaWQudmFsdWUpKSlcclxuICAgICAgLnBpcGUoZmlsdGVyKHggPT4geCAhPSBudWxsKSwgcGFpcndpc2UoKSkuc3Vic2NyaWJlKHZhbHVlID0+IHtcclxuICAgICAgICBjb25zdCBvbGRWYWx1ZSA9IHZhbHVlWzBdO1xyXG4gICAgICAgIGNvbnN0IG5ld1ZhbHVlID0gdmFsdWVbMV07XHJcblxyXG4gICAgICAgIC8vdXBkYXRlZCBhbnN3ZXJcclxuICAgICAgICBpZiAob2xkVmFsdWU/LmFuc3dlclRleHQgIT0gbmV3VmFsdWU/LmFuc3dlclRleHQpIHtcclxuICAgICAgICAgIHRoaXMuZkN0cmxzLmFuc3dlci5zZXRWYWx1ZShuZXdWYWx1ZT8uYW5zd2VyVGV4dCwgeyBlbWl0RXZlbnQ6IGZhbHNlIH0pO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy91cGRhdGVkIGlzRGlzYWJsZWRcclxuICAgICAgICBpZiAob2xkVmFsdWU/LmlzRGlzYWJsZWQgIT0gbmV3VmFsdWU/LmlzRGlzYWJsZWQpIHtcclxuICAgICAgICAgIHRoaXMuZkN0cmxzLmlzRGlzYWJsZWQuc2V0VmFsdWUobmV3VmFsdWU/LmlzRGlzYWJsZWQpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy91cGRhdGVkIGlzU2hvd1xyXG4gICAgICAgIGlmIChvbGRWYWx1ZT8uaXNTaG93ICE9IG5ld1ZhbHVlPy5pc1Nob3cpIHtcclxuICAgICAgICAgIHRoaXMuZkN0cmxzLmlzU2hvdy5zZXRWYWx1ZShuZXdWYWx1ZT8uaXNTaG93KTtcclxuXHJcbiAgICAgICAgICBpZiAobmV3VmFsdWU/LmlzU2hvdyA9PSBmYWxzZSkge1xyXG4gICAgICAgICAgICB0aGlzLmZDdHJscy5hbnN3ZXIuc2V0VmFsdWUobnVsbCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgdG9nZ2xlRW5hYmxlQW5zd2VyKGlzUmVhZE9ubHk6IGJvb2xlYW4pIHtcclxuICAgIGlmIChpc1JlYWRPbmx5ID09IHRydWUpIHtcclxuICAgICAgdGhpcy5mQ3RybHMuYW5zd2VyLmRpc2FibGUoKVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5mQ3RybHMuYW5zd2VyLmVuYWJsZSgpXHJcbiAgICB9XHJcbiAgICB0aGlzLmZDdHJscy5hbnN3ZXIudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xyXG4gIH1cclxuXHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cInF1YXN0aW9uXCIgW2Zvcm1Hcm91cF09XCJyRm9ybVwiIFthdHRyLmlkXT1cIidxdWVzdGlvbl8nK2ZDdHJscy5pZC52YWx1ZVwiXHJcbiAgICBbbmdDbGFzc109XCJ7J2ludmFsaWQtcXVlc3Rpb24nOiBmQ3RybHMuYW5zd2VyLmludmFsaWQgLCAnZC1ub25lJzpmQ3RybHMuaXNTaG93LnZhbHVlICE9IHRydWV9XCI+XHJcbiAgICA8aDMgY2xhc3M9XCJxdWFzdGlvbi10aXRsZSBcIj5cclxuICAgICAgICA8c3BhbiBbaW5uZXJIVE1MXT1cInN1cnZleVF1ZXN0aW9uPy5xdWVzdGlvblRpdGxlXCI+PC9zcGFuPlxyXG4gICAgICAgIDxzcGFuIHN0eWxlPVwiY29sb3I6IHJlZDtcIiAqbmdJZj1cInN1cnZleVF1ZXN0aW9uLmlzUmVxdWlyZWRcIj4qPC9zcGFuPlxyXG4gICAgPC9oMz5cclxuICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LXF1YXN0aW9uIFwiID5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZkN0cmxzLmlucHV0VHlwZUlkLnZhbHVlID09IGlucHV0VHlwZUVudW0uU3RhcnMgZWxzZSBwYWdpbmF0aW9uVGVtcGxhdGVcIj5cclxuICAgICAgICAgICAgPHJhdGluZyAgW2Zvcm1Db250cm9sXT1cImZDdHJscy5hbnN3ZXJcIiBbbWF4XT1cInN1cnZleVF1ZXN0aW9uPy5zdXJ2ZXlBbnN3ZXJzWzBdLm1heFZhbHVlXCI+PC9yYXRpbmc+XHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPG5nLXRlbXBsYXRlICNwYWdpbmF0aW9uVGVtcGxhdGU+XHJcbiAgICAgICAgICAgIDxkaXYgc3R5bGU9XCJtYXJnaW4tdG9wOiAyMHB4O1wiPlxyXG4gICAgICAgICAgICA8cGFnaW5hdGlvbiAgIG5leHRUZXh0PVwiPlwiIHByZXZpb3VzVGV4dD1cIjxcIiBbZm9ybUNvbnRyb2xdPVwiZkN0cmxzLmFuc3dlclwiXHJcbiAgICAgICAgICAgICAgICAgW2l0ZW1zUGVyUGFnZV09XCIxXCIgW3RvdGFsSXRlbXNdPVwic3VydmV5UXVlc3Rpb24/LnN1cnZleUFuc3dlcnNbMF0ubWF4VmFsdWVcIiBbbWF4U2l6ZV09XCIxMFwiPjwvcGFnaW5hdGlvbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgPC9kaXY+Il19
|
|
141
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlc3Rpb24tZmVlZGJhY2stdGVtcGxhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc3VydmVyeS1saWIvc3JjL2xpYi9jb21wb25lbnRzL3F1ZXN0aW9uLWZlZWRiYWNrLXRlbXBsYXRlL3F1ZXN0aW9uLWZlZWRiYWNrLXRlbXBsYXRlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3N1cnZlcnktbGliL3NyYy9saWIvY29tcG9uZW50cy9xdWVzdGlvbi1mZWVkYmFjay10ZW1wbGF0ZS9xdWVzdGlvbi1mZWVkYmFjay10ZW1wbGF0ZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQWUsV0FBVyxFQUFhLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWpGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBSzVFLE9BQU8sRUFBRSxZQUFZLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDakYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUN0RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQzs7Ozs7Ozs7QUFPaEYsTUFBTSxPQUFPLGlDQUFpQztJQUs1QyxJQUFJLE1BQU07UUFDUixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDO0lBQzdCLENBQUM7SUFFRCxJQUFJLGdCQUFnQjtRQUNsQixPQUFP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cG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Db250cm9sLCBGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IFN1cnZleVF1ZXN0aW9uRHRvIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL2R0b3Mvc3VydmV5LXF1ZXN0aW9uLmR0byc7XHJcbmltcG9ydCB7IFF1ZXN0aW9uVHlwZUVudW0gfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvZW51bXMvcXVlc3Rpb24tdHlwZS5lbnVtJztcclxuaW1wb3J0IHsgUXVlc3Rpb25GZWVkYmFja1RlbXBsYXRlRm9ybUludGVyZmFjZSB9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9mb3JtLWludGVyZmFjZXMvcXVlc3Rpb24tZmVlZGJhY2stdGVtcGxhdGUuZm9ybS1pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBRdWVzdGlvbk5ncnhNb2RlbCB9IGZyb20gJy4uLy4uL2NvcmUvc3RhdGVzL2VudGl0ZXMvcXVlc3Rpb24uZW50aXR5JztcclxuaW1wb3J0IHsgU3VydmV5TGliU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3N1cnZleS1saWIuc2VydmljZSc7XHJcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xyXG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBmaWx0ZXIsIG1hcCwgcGFpcndpc2UgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgc3VydmV5QWN0aW9ucyB9IGZyb20gJy4uLy4uL2NvcmUvc3RhdGVzL3N1cnZleS1zdG9yZS9zdXJ2ZXkuYWN0aW9uJztcclxuaW1wb3J0IHsgcXVlc3Rpb25TZWxlY3RvcnMgfSBmcm9tICcuLi8uLi9jb3JlL3N0YXRlcy9zdXJ2ZXktc3RvcmUvcXVlc3Rpb24uc2VsZWN0b3InO1xyXG5pbXBvcnQgeyBJbnB1dFR5cGVFbnVtIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL2VudW1zL2lucHV0LXR5cGUuZW51bSc7XHJcbmltcG9ydCB7IEV2YWx1YXRpb25UeXBlRW51bSB9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9lbnVtcy9ldmFsdWF0aW9uLXR5cGUuZW51bSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi1xdWVzdGlvbi1mZWVkYmFjay10ZW1wbGF0ZScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3F1ZXN0aW9uLWZlZWRiYWNrLXRlbXBsYXRlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9xdWVzdGlvbi1mZWVkYmFjay10ZW1wbGF0ZS5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBRdWVzdGlvbkZlZWRiYWNrVGVtcGxhdGVDb21wb25lbnQge1xyXG4gIHN1cnZleVF1ZXN0aW9uOiBTdXJ2ZXlRdWVzdGlvbkR0bztcclxuICByRm9ybTogRm9ybUdyb3VwPFF1ZXN0aW9uRmVlZGJhY2tUZW1wbGF0ZUZvcm1JbnRlcmZhY2U+O1xyXG4gIHF1ZXN0aW9uQXJyID0gdGhpcy5fU3RvcmUuc2VsZWN0U2lnbmFsKHF1ZXN0aW9uU2VsZWN0b3JzLnBhZ2VRdWVzdGlvbnMpO1xyXG5cclxuICBnZXQgZkN0cmxzKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuckZvcm0uY29udHJvbHM7XHJcbiAgfVxyXG5cclxuICBnZXQgcXVlc3Rpb25UeXBlRW51bSgpIHtcclxuICAgIHJldHVybiBRdWVzdGlvblR5cGVFbnVtO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGlucHV0VHlwZUVudW0oKSB7XHJcbiAgICByZXR1cm4gSW5wdXRUeXBlRW51bVxyXG4gIH1cclxuXHJcbiAgQElucHV0KCkgaXNBcmFiaWNMYW5nOiBib29sZWFuID0gZmFsc2U7XHJcbiAgQElucHV0KCkgc2V0IHNldFF1ZXN0aW9uKHZhbHVlOiBRdWVzdGlvbk5ncnhNb2RlbCkge1xyXG4gICAgaWYgKCF0aGlzLnN1cnZleVF1ZXN0aW9uKSB7XHJcbiAgICAgIHRoaXMuc3VydmV5UXVlc3Rpb24gPSB2YWx1ZS5xdWVzdGlvbkFsbEluZm87XHJcblxyXG4gICAgICB0aGlzLnJGb3JtLnBhdGNoVmFsdWUoe1xyXG4gICAgICAgIGlkOiB2YWx1ZS5xdWVzdGlvbklkLFxyXG4gICAgICAgIG5hbWU6IHZhbHVlLnF1ZXN0aW9uQWxsSW5mby5xdWVzdGlvbk5hbWUsXHJcbiAgICAgICAgdGl0bGU6IHZhbHVlLnF1ZXN0aW9uQWxsSW5mby5xdWVzdGlvblRpdGxlLFxyXG4gICAgICAgIHR5cGVJZDogdmFsdWUucXVlc3Rpb25BbGxJbmZvLnF1ZXN0aW9uVHlwZUlkLFxyXG4gICAgICAgIGRlc2NyaXB0aW9uOiB2YWx1ZS5xdWVzdGlvbkFsbEluZm8ucXVlc3Rpb25EZXNjcmlwdGlvbixcclxuICAgICAgICBpc0Rpc2FibGVkOiB2YWx1ZS5xdWVzdGlvbkFsbEluZm8uaXNSZWFkT25seSxcclxuICAgICAgICBpc1Nob3c6IHZhbHVlLnF1ZXN0aW9uQWxsSW5mby5pc1Zpc2FibGVcclxuICAgICAgfSk7XHJcblxyXG4gICAgICBpZiAodmFsdWUucXVlc3Rpb25BbGxJbmZvLnN1cnZleUFuc3dlcnNbMF0/LmFuc3dlcklkICE9IG51bGwgJiYgdmFsdWUucXVlc3Rpb25BbGxJbmZvLnN1cnZleUFuc3dlcnNbMF0/LmFuc3dlcklkICE9IHVuZGVmaW5lZCkge1xyXG4gICAgICAgIHRoaXMuZkN0cmxzLnN1cnZleUFuc3dlcklkLnNldFZhbHVlKHZhbHVlLnF1ZXN0aW9uQWxsSW5mby5zdXJ2ZXlBbnN3ZXJzWzBdLmFuc3dlcklkKTtcclxuXHJcbiAgICAgICAgaWYgKHZhbHVlLnF1ZXN0aW9uQWxsSW5mby5zdXJ2ZXlBbnN3ZXJzWzBdLmV2YWx1YXRpb25UeXBlSWQgPT0gRXZhbHVhdGlvblR5cGVFbnVtLlN0YXJzKSB7XHJcbiAgICAgICAgICB0aGlzLmZDdHJscy5pbnB1dFR5cGVJZC5zZXRWYWx1ZShJbnB1dFR5cGVFbnVtLlN0YXJzKTtcclxuICAgICAgICB9IGVsc2UgaWYgKHZhbHVlLnF1ZXN0aW9uQWxsSW5mby5zdXJ2ZXlBbnN3ZXJzWzBdLmV2YWx1YXRpb25UeXBlSWQgPT0gRXZhbHVhdGlvblR5cGVFbnVtLlBhZ2luYXRpb24pIHtcclxuICAgICAgICAgIHRoaXMuZkN0cmxzLmlucHV0VHlwZUlkLnNldFZhbHVlKElucHV0VHlwZUVudW0uUGFnaW5hdGlvbik7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKHZhbHVlLmlzU2hvdyA9PSB0cnVlKSB7XHJcbiAgICAgICAgdGhpcy5mQ3RybHMuaXNTaG93LnNldFZhbHVlKHZhbHVlLmlzU2hvdyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlmICh2YWx1ZS5pc1JlcXVpcmVkID09IHRydWUpIHtcclxuICAgICAgICB0aGlzLmZDdHJscy5hbnN3ZXIuYWRkVmFsaWRhdG9ycyhbVmFsaWRhdG9ycy5yZXF1aXJlZF0pO1xyXG4gICAgICAgIHRoaXMuZkN0cmxzLmFuc3dlci51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHZhciBxdWVzdGlvbiA9IHRoaXMucXVlc3Rpb25BcnIoKS5maW5kKHggPT4geC5xdWVzdGlvbklkID09IHZhbHVlLnF1ZXN0aW9uSWQpO1xyXG4gICAgICBpZiAocXVlc3Rpb24pIHtcclxuICAgICAgICB0aGlzLnJGb3JtLnBhdGNoVmFsdWUoe1xyXG4gICAgICAgICAgYW5zd2VyOiBxdWVzdGlvbi5hbnN3ZXJUZXh0LFxyXG4gICAgICAgICAgaXNEaXNhYmxlZDogcXVlc3Rpb24uaXNEaXNhYmxlZCxcclxuICAgICAgICAgIGlzU2hvdzogcXVlc3Rpb24uaXNTaG93XHJcbiAgICAgICAgfSwgeyBlbWl0RXZlbnQ6IGZhbHNlIH0pO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0aGlzLnRvZ2dsZUVuYWJsZUFuc3dlcih2YWx1ZS5xdWVzdGlvbkFsbEluZm8uaXNSZWFkT25seSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKSBzZXQgaXNEaXNhYmxlZCh2YWx1ZTogYm9vbGVhbikge1xyXG4gICAgdGhpcy50b2dnbGVFbmFibGVBbnN3ZXIodmFsdWUpO1xyXG4gIH1cclxuXHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX2Zvcm1CdWlsZGVyOiBGb3JtQnVpbGRlciwgcHJpdmF0ZSBfc3VydmV5TGliU2VydmljZTogU3VydmV5TGliU2VydmljZSxcclxuICAgIHByaXZhdGUgX1N0b3JlOiBTdG9yZSkge1xyXG4gICAgdGhpcy5yRm9ybSA9IHRoaXMuX2Zvcm1CdWlsZGVyLmdyb3VwPFF1ZXN0aW9uRmVlZGJhY2tUZW1wbGF0ZUZvcm1JbnRlcmZhY2U+KHtcclxuICAgICAgaWQ6IG5ldyBGb3JtQ29udHJvbChudWxsKSxcclxuICAgICAgbmFtZTogbmV3IEZvcm1Db250cm9sKG51bGwpLFxyXG4gICAgICB0aXRsZTogbmV3IEZvcm1Db250cm9sKG51bGwpLFxyXG4gICAgICB0eXBlSWQ6IG5ldyBGb3JtQ29udHJvbChudWxsKSxcclxuICAgICAgZGVzY3JpcHRpb246IG5ldyBGb3JtQ29udHJvbChudWxsKSxcclxuICAgICAgc3VydmV5QW5zd2VySWQ6IG5ldyBGb3JtQ29udHJvbChudWxsKSxcclxuICAgICAgYW5zd2VyOiBuZXcgRm9ybUNvbnRyb2wobnVsbCksXHJcbiAgICAgIGlzRGlzYWJsZWQ6IG5ldyBGb3JtQ29udHJvbChmYWxzZSksXHJcbiAgICAgIGlzU2hvdzogbmV3IEZvcm1Db250cm9sKHRydWUpLFxyXG4gICAgICBpbnB1dFR5cGVJZDogbmV3IEZvcm1Db250cm9sKG51bGwpLFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuZkN0cmxzLmFuc3dlci52YWx1ZUNoYW5nZXMucGlwZSgpLnBpcGUoZGVib3VuY2VUaW1lKDIwMCksIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCkpLnN1YnNjcmliZSh2YWx1ZSA9PiB7XHJcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IGZvcm1WYWx1ZSA9IHRoaXMuckZvcm0udmFsdWU7XHJcbiAgICAgICAgdGhpcy5fU3RvcmUuZGlzcGF0Y2goc3VydmV5QWN0aW9ucy51cGRhdGVRdWVzdGlvbkFuc3dlcih7XHJcbiAgICAgICAgICBxdWVzdGlvbklkOiBmb3JtVmFsdWUuaWQsXHJcbiAgICAgICAgICBhbnN3ZXI6IHZhbHVlLFxyXG4gICAgICAgICAgaXNWYWxpZDogdGhpcy5mQ3RybHMuYW5zd2VyLnZhbGlkXHJcbiAgICAgICAgfSkpXHJcbiAgICAgIH0sIDEwMCk7XHJcblxyXG4gICAgfSk7XHJcblxyXG4gICAgdGhpcy5fU3RvcmUuc2VsZWN0KHF1ZXN0aW9uU2VsZWN0b3JzLnBhZ2VRdWVzdGlvbnMpLnBpcGUobWFwKGFyciA9PiBhcnIuZmluZCh4ID0+IHgucXVlc3Rpb25JZCA9PSB0aGlzLmZDdHJscy5pZC52YWx1ZSkpKVxyXG4gICAgICAucGlwZShmaWx0ZXIoeCA9PiB4ICE9IG51bGwpLCBwYWlyd2lzZSgpKS5zdWJzY3JpYmUodmFsdWUgPT4ge1xyXG4gICAgICAgIGNvbnN0IG9sZFZhbHVlID0gdmFsdWVbMF07XHJcbiAgICAgICAgY29uc3QgbmV3VmFsdWUgPSB2YWx1ZVsxXTtcclxuXHJcbiAgICAgICAgLy91cGRhdGVkIGFuc3dlclxyXG4gICAgICAgIGlmIChvbGRWYWx1ZT8uYW5zd2VyVGV4dCAhPSBuZXdWYWx1ZT8uYW5zd2VyVGV4dCkge1xyXG4gICAgICAgICAgdGhpcy5mQ3RybHMuYW5zd2VyLnNldFZhbHVlKG5ld1ZhbHVlPy5hbnN3ZXJUZXh0LCB7IGVtaXRFdmVudDogZmFsc2UgfSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvL3VwZGF0ZWQgaXNEaXNhYmxlZFxyXG4gICAgICAgIGlmIChvbGRWYWx1ZT8uaXNEaXNhYmxlZCAhPSBuZXdWYWx1ZT8uaXNEaXNhYmxlZCkge1xyXG4gICAgICAgICAgdGhpcy5mQ3RybHMuaXNEaXNhYmxlZC5zZXRWYWx1ZShuZXdWYWx1ZT8uaXNEaXNhYmxlZCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvL3VwZGF0ZWQgaXNTaG93XHJcbiAgICAgICAgaWYgKG9sZFZhbHVlPy5pc1Nob3cgIT0gbmV3VmFsdWU/LmlzU2hvdykge1xyXG4gICAgICAgICAgdGhpcy5mQ3RybHMuaXNTaG93LnNldFZhbHVlKG5ld1ZhbHVlPy5pc1Nob3cpO1xyXG5cclxuICAgICAgICAgIGlmIChuZXdWYWx1ZT8uaXNTaG93ID09IGZhbHNlKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZkN0cmxzLmFuc3dlci5zZXRWYWx1ZShudWxsKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSB0b2dnbGVFbmFibGVBbnN3ZXIoaXNSZWFkT25seTogYm9vbGVhbikge1xyXG4gICAgaWYgKGlzUmVhZE9ubHkgPT0gdHJ1ZSkge1xyXG4gICAgICB0aGlzLmZDdHJscy5hbnN3ZXIuZGlzYWJsZSgpXHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmZDdHJscy5hbnN3ZXIuZW5hYmxlKClcclxuICAgIH1cclxuICAgIHRoaXMuZkN0cmxzLmFuc3dlci51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XHJcbiAgfVxyXG5cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwicXVhc3Rpb25cIiBbZm9ybUdyb3VwXT1cInJGb3JtXCIgW2F0dHIuaWRdPVwiJ3F1ZXN0aW9uXycrZkN0cmxzLmlkLnZhbHVlXCJcclxuICAgIFtuZ0NsYXNzXT1cInsnaW52YWxpZC1xdWVzdGlvbic6IGZDdHJscy5hbnN3ZXIuaW52YWxpZCAsICdkLW5vbmUnOmZDdHJscy5pc1Nob3cudmFsdWUgIT0gdHJ1ZX1cIj5cclxuICAgIDxoMyBjbGFzcz1cInF1YXN0aW9uLXRpdGxlIFwiPlxyXG4gICAgICAgIDxzcGFuIFtpbm5lckhUTUxdPVwic3VydmV5UXVlc3Rpb24/LnF1ZXN0aW9uVGl0bGVcIj48L3NwYW4+XHJcbiAgICAgICAgPHNwYW4gc3R5bGU9XCJjb2xvcjogcmVkO1wiICpuZ0lmPVwic3VydmV5UXVlc3Rpb24uaXNSZXF1aXJlZFwiPio8L3NwYW4+XHJcbiAgICA8L2gzPlxyXG4gICAgPGRpdiBjbGFzcz1cInRleHQtcXVhc3Rpb24gXCIgPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJmQ3RybHMuaW5wdXRUeXBlSWQudmFsdWUgPT0gaW5wdXRUeXBlRW51bS5TdGFycyBlbHNlIHBhZ2luYXRpb25UZW1wbGF0ZVwiPlxyXG4gICAgICAgICAgICA8cmF0aW5nICBbZm9ybUNvbnRyb2xdPVwiZkN0cmxzLmFuc3dlclwiIFttYXhdPVwic3VydmV5UXVlc3Rpb24/LnN1cnZleUFuc3dlcnNbMF0ubWF4VmFsdWVcIj48L3JhdGluZz5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8bmctdGVtcGxhdGUgI3BhZ2luYXRpb25UZW1wbGF0ZT5cclxuICAgICAgICAgICAgPGRpdiBzdHlsZT1cIm1hcmdpbi10b3A6IDIwcHg7XCI+XHJcbiAgICAgICAgICAgIDxwYWdpbmF0aW9uICAgbmV4dFRleHQ9XCI+XCIgcHJldmlvdXNUZXh0PVwiPFwiIFtmb3JtQ29udHJvbF09XCJmQ3RybHMuYW5zd2VyXCJcclxuICAgICAgICAgICAgICAgICBbaXRlbXNQZXJQYWdlXT1cIjFcIiBbdG90YWxJdGVtc109XCJzdXJ2ZXlRdWVzdGlvbj8uc3VydmV5QW5zd2Vyc1swXS5tYXhWYWx1ZVwiIFttYXhTaXplXT1cIjEwXCI+PC9wYWdpbmF0aW9uPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICA8L2Rpdj4iXX0=
|
|
@@ -33,7 +33,6 @@ export class QuestionInstitutionsTemplateComponent {
|
|
|
33
33
|
isShow: value.isShow
|
|
34
34
|
});
|
|
35
35
|
value.questionAllInfo.surveySubQuestionLevels.forEach(surveySubQuestionLevel => {
|
|
36
|
-
console.log(surveySubQuestionLevel);
|
|
37
36
|
var question = this.pageQuestions$().find(x => x.questionId == value.questionId);
|
|
38
37
|
this.setQuestionFormGroup(surveySubQuestionLevel, question?.isRequired, question?.answerId);
|
|
39
38
|
});
|
|
@@ -263,4 +262,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImpor
|
|
|
263
262
|
}], setQuestion: [{
|
|
264
263
|
type: Input
|
|
265
264
|
}] } });
|
|
266
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlc3Rpb24taW5zdGl0dXRpb25zLXRlbXBsYXRlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3N1cnZlcnktbGliL3NyYy9saWIvY29tcG9uZW50cy9xdWVzdGlvbi1pbnN0aXR1dGlvbnMtdGVtcGxhdGUvcXVlc3Rpb24taW5zdGl0dXRpb25zLXRlbXBsYXRlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3N1cnZlcnktbGliL3NyYy9saWIvY29tcG9uZW50cy9xdWVzdGlvbi1pbnN0aXR1dGlvbnMtdGVtcGxhdGUvcXVlc3Rpb24taW5zdGl0dXRpb25zLXRlbXBsYXRlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLFFBQVEsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUMzRSxPQUFPLEVBQWUsV0FBVyxFQUFhLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2pGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBRTVFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBT3JGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUk3RSxPQUFPLEVBQUUsb0JBQW9CLEVBQVksSUFBSSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTVELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQzs7Ozs7OztBQU9qRixNQUFNLE9BQU8scUNBQXFDO0lBUWhELElBQUksTUFBTTtRQUNSLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUM7SUFDN0IsQ0FBQztJQUVELElBQUksZ0JBQWdCO1FBQ2xCLE9BQU8sZ0JBQWdCLENBQUM7SUFDMUIsQ0FBQztJQUVELElBQUksaUJBQWlCO1FBQ25CLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUE7SUFDaEMsQ0FBQztJQWFELElBQWEsV0FBVyxDQUFDLEtBQXdCO1FBQy9DLElBQUksSUFBSSxDQUFDLG9CQUFvQixJQUFJLElBQUksRUFBRTtZQUNyQyxJQUFJLENBQUMsb0JBQW9CLEdBQUcsS0FBSyxDQUFDLGVBQWUsQ0FBQztZQUVsRCxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQztnQkFDcEIsRUFBRSxFQUFFLEtBQUssQ0FBQyxVQUFVO2dCQUNwQixLQUFLLEVBQUUsS0FBSyxDQUFDLGVBQWUsQ0FBQyxhQUFhO2dCQUMxQyxhQUFhLEVBQUUsS0FBSyxDQUFDLGVBQWUsQ0FBQyxhQUFhO2dCQUNsRCxVQUFVLEVBQUUsS0FBSyxDQUFDLFVBQVU7Z0JBQzVCLFVBQVUsRUFBRSxLQUFLLENBQUMsVUFBVTtnQkFDNUIsTUFBTSxFQUFFLEtBQUssQ0FBQyxNQUFNO2FBQ3JCLENBQUMsQ0FBQztZQUVILEtBQUssQ0FBQyxlQUFlLENBQUMsdUJBQXVCLENBQUMsT0FBTyxDQUFDLHNCQUFzQixDQUFDLEVBQUU7Z0JBQ3JGLE9BQU8sQ0FBQyxHQUFHLENBQUMsc0JBQXNCLENBQUMsQ0FBQztnQkFDNUIsSUFBSSxRQUFRLEdBQUcsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxVQUFVLElBQUksS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDO2dCQUNqRixJQUFJLENBQUMsb0JBQW9CLENBQUMsc0JBQXNCLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsUUFBUSxDQUFDLENBQUM7WUFDOUYsQ0FBQyxDQUFDLENBQUM7U0FDSjtJQUNILENBQUM7SUFFRCxZQUFvQixNQUFhLEVBQVUsWUFBeUIsRUFBVSxXQUF1QjtRQUFqRixXQUFNLEdBQU4sTUFBTSxDQUFPO1FBQVUsaUJBQVksR0FBWixZQUFZLENBQWE7UUFBVSxnQkFBVyxHQUFYLFdBQVcsQ0FBWTtRQW5EckcseUJBQW9CLEdBQXNCLElBQUksQ0FBQztRQUUvQyxtQkFBYyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLGlCQUFpQixDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQzNFLHFCQUFnQixHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLGVBQWUsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUVuRSxpQkFBWSxHQUFZLEtBQUssQ0FBQztRQWN2Qyw0QkFBdUIsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQ3RDLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFO2dCQUNyQyxPQUFPO29CQUNMLEVBQUUsRUFBRSxDQUFDLENBQUMsWUFBWTtvQkFDbEIsSUFBSSxFQUFFLElBQUksQ0FBQyxZQUFZLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMscUJBQXFCLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxzQkFBc0I7b0JBQ3BGLGdCQUFnQixFQUFFLENBQUMsQ0FBQyxnQkFBZ0I7b0JBQ3BDLFdBQVcsRUFBRSxDQUFDLENBQUMsV0FBVztpQkFDM0IsQ0FBQTtZQUNILENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7UUF3QkQsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBNEM7WUFDOUUsRUFBRSxFQUFFLElBQUksV0FBVyxDQUFDLElBQUksQ0FBQztZQUN6QixLQUFLLEVBQUUsSUFBSSxXQUFXLENBQUMsSUFBSSxDQUFDO1lBQzVCLGFBQWEsRUFBRSxJQUFJLFdBQVcsQ0FBQyxJQUFJLENBQUM7WUFDcEMsVUFBVSxFQUFFLElBQUksV0FBVyxDQUFDLEtBQUssQ0FBQztZQUNsQyxNQUFNLEVBQUUsSUFBSSxXQUFXLENBQUMsS0FBSyxDQUFDO1lBQzlCLFVBQVUsRUFBRSxJQUFJLFdBQVcsQ0FBQyxJQUFJLENBQUM7WUFDakMsYUFBYSxFQUFFLElBQUksV0FBVyxDQUFDLElBQUksQ0FBQztZQUNwQyxvQkFBb0IsRUFBRSxJQUFJLFdBQVcsQ0FBQyxJQUFJLENBQUM7WUFDM0Msc0JBQXNCLEVBQUUsSUFBSSxXQUFXLENBQUMsSUFBSSxDQUFDO1lBQzdDLDZCQUE2QixFQUFFLElBQUksV0FBVyxDQUFDLElBQUksQ0FBQztZQUNwRCxRQUFRLEVBQUUsSUFBSSxXQUFXLENBQUMsSUFBSSxDQUFDO1lBQy9CLFNBQVMsRUFBRSxJQUFJLFdBQVcsQ0FBQyxJQUFJLENBQUM7WUFDaEMsU0FBUyxFQUFFLElBQUksV0FBVyxDQUFDLElBQUksQ0FBQztZQUNoQyxTQUFTLEVBQUUsSUFBSSxXQUFXLENBQUMsSUFBSSxDQUFDO1lBQ2hDLFdBQVcsRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBMkUsRUFBRSxDQUFDO1NBQ25ILENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLGtCQUFrQixFQUFFLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRUQsY0FBYyxDQUFDLEtBQW1DLEVBQUUsVUFBa0I7UUFDcEUsSUFBSSxLQUFLLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ25ELEtBQUssQ0FBQyxVQUFVLENBQUM7WUFDZixRQUFRLEVBQUUsS0FBSyxDQUFDLEVBQUU7WUFDbEIsV0FBVyxFQUFFLEtBQUssQ0FBQyxJQUFJO1NBQ3hCLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQywrQkFBK0IsQ0FBQztZQUNqRSxVQUFVLEVBQUUsS0FBSyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQzFCLFFBQVEsRUFBRSxLQUFLLENBQUMsS0FBSyxDQUFDLFFBQVE7WUFDOUIsTUFBTSxFQUFFLEtBQUssQ0FBQyxLQUFLLENBQUMsV0FBVztZQUMvQixPQUFPLEVBQUUsS0FBSyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsS0FBSztZQUN0QyxhQUFhLEVBQUUsS0FBSyxDQUFDLEtBQUssQ0FBQyxhQUFhO1NBQ3pDLENBQUMsQ0FBQyxDQUFDO0lBQ04sQ0FBQztJQUVELFFBQVEsQ0FBQyxLQUFLLEVBQUUsSUFBOEU7UUFDNUYsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRU8sb0JBQW9CLENBQUMsS0FBZ0MsRUFBRSxTQUFrQixFQUFFLFFBQWdCO1FBQ2pHLElBQUksS0FBSyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFnRTtZQUNqRyxFQUFFLEVBQUUsSUFBSSxXQUFXLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQztZQUNyQyxNQUFNLEVBQUUsSUFBSSxXQUFXLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQztZQUM3QyxJQUFJLEVBQUUsSUFBSSxXQUFXLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQztZQUN6QyxXQUFXLEVBQUUsSUFBSSxXQUFXLENBQUMsS0FBSyxDQUFDLG1CQUFtQixDQUFDO1lBQ3ZELEtBQUssRUFBRSxJQUFJLFdBQVcsQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDO1lBQzNDLEtBQUssRUFBRSxJQUFJLFdBQVcsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDO1lBQ25DLGFBQWEsRUFBRSxJQUFJLFdBQVcsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQztZQUMxRCxRQUFRLEVBQUUsSUFBSSxXQUFXLENBQUMsSUFBSSxDQUFDO1lBQy9CLFdBQVcsRUFBRSxJQUFJLFdBQVcsQ0FBQyxJQUFJLENBQUM7WUFDbEMsT0FBTyxFQUFFLElBQUksV0FBVyxDQUFDLEVBQUUsQ0FBQztTQUM3QixDQUFDLENBQUM7UUFFSCxJQUFJLFNBQVMsSUFBSSxJQUFJLEVBQUU7WUFDckIsS0FBSyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7WUFDN0QsS0FBSyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztZQUNqRCxLQUFLLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztZQUNoRSxLQUFLLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO1NBQ3JEO1FBRUQsS0FBSyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQ3JGLElBQUksUUFBUSxFQUFFO2dCQUNaLElBQUksS0FBSyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUU7b0JBQ3BCLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDO3dCQUNwQixhQUFhLEVBQUUsUUFBUTt3QkFDdkIsb0JBQW9CLEVBQUUsSUFBSSxDQUFDLHVCQUF1QixFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxRQUFRLENBQUMsRUFBRSxnQkFBZ0I7d0JBQ2xHLHNCQUFzQixFQUFFLElBQUksQ0FBQyx1QkFBdUIsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksUUFBUSxDQUFDLEVBQUUsV0FBVzt3QkFDL0YsUUFBUSxFQUFFLElBQUk7d0JBQ2QsU0FBUyxFQUFFLElBQUk7d0JBQ2YsU0FBUyxFQUFFLElBQUk7cUJBQ2hCLEVBQUUsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztpQkFDMUI7cUJBQ0ksSUFBSSxLQUFLLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRTtvQkFDekIsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUM7d0JBQ3BCLFNBQVMsRUFBRSxRQUFRO3FCQUNwQixFQUFFLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7aUJBQzFCO3FCQUNJLElBQUksS0FBSyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUU7b0JBQ3pCLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDO3dCQUNwQixRQUFRLEVBQUUsUUFBUTt3QkFDbEIsU0FBUyxFQUFFLElBQUk7d0JBQ2YsU0FBUyxFQUFFLElBQUk7cUJBQ2hCLEVBQUUsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztpQkFDMUI7cUJBQ0ksSUFBSSxLQUFLLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRTtvQkFDekIsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUM7d0JBQ3BCLFNBQVMsRUFBRSxRQUFRO3dCQUNuQixTQUFTLEVBQUUsSUFBSTtxQkFDaEIsRUFBRSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO2lCQUMxQjtxQkFDSSxJQUFJLEtBQUssQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFO29CQUN6QixJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQzt3QkFDcEIsU0FBUyxFQUFFLFFBQVE7cUJBQ3BCLEVBQUUsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztpQkFDMUI7Z0JBRUQsTUFBTSxLQUFLLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUM7Z0JBRWhDLElBQUcsS0FBSyxJQUFJLENBQUMsRUFBQztvQkFDZCxJQUFJLENBQUMsb0NBQW9DLENBQUMsS0FBSyxDQUFDLENBQUM7aUJBQ2hEO2dCQUVELElBQUksY0FBYyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLEtBQUssSUFBSSxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQ2pHLElBQUksY0FBYyxFQUFHO29CQUNuQixJQUFJLENBQUMsbUJBQW1CLENBQUMsY0FBYyxDQUFDLENBQUM7aUJBQzFDO2FBQ0Y7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUVILEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNqRixNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxLQUFLLElBQUksS0FBSyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUN2RyxJQUFJLGFBQWEsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLENBQUM7WUFFM0QsSUFBSSxhQUFhLEVBQUU7Z0JBQ2pCLElBQUksS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7b0JBQ3BCLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsS0FBSyxJQUFJLElBQUksRUFBRTt3QkFDeEMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7d0JBQ3JFLGFBQWEsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO3dCQUV4RSxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsc0JBQXNCLENBQUMsRUFBRSxVQUFVLEVBQUUsS0FBSyxDQUFDLEtBQUssQ0FBQyxFQUFFLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQztxQkFDOUc7aUJBQ0Y7cUJBQU07b0JBQ0wsYUFBYSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsZUFBZSxFQUFFLENBQUM7b0JBQ2xELGFBQWEsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLGVBQWUsRUFBRSxDQUFDO29CQUVyRCxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsc0JBQXNCLENBQUMsRUFBRSxVQUFVLEVBQUUsS0FBSyxDQUFDLEtBQUssQ0FBQyxFQUFFLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztpQkFDL0c7Z0JBRUQsYUFBYSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztnQkFDekQsYUFBYSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsc0JBQXNCLEVBQUUsQ0FBQzthQUM3RDtRQUVILENBQUMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxRQUFRLEVBQUU7WUFDWixLQUFLLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUM7U0FDNUM7UUFFRCxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUVPLG1CQUFtQixDQUFDLGNBQXNCO1FBQ2hELE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDO1FBQ25DLElBQUksS0FBSyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUN2RCxJQUFJLEtBQUssRUFBRTtZQUNULElBQUksS0FBSyxDQUFDLEtBQUssQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFO2dCQUMxQixJQUFJLENBQUMsV0FBVyxDQUFDLG1DQUFtQyxDQUFDO29CQUNuRCxZQUFZLEVBQUUsU0FBUyxDQUFDLGFBQWE7b0JBQ3JDLFdBQVcsRUFBRSxTQUFTLENBQUMsc0JBQXNCLEVBQUUsZ0JBQWdCLEVBQUUsU0FBUyxDQUFDLG9CQUFvQjtpQkFDaEcsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUU7b0JBQy9CLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRTt3QkFDMUQsT0FBTzs0QkFDTCxFQUFFLEVBQUUsQ0FBQyxDQUFDLFlBQVk7NEJBQ2xCLElBQUksRUFBRSxJQUFJLENBQUMsWUFBWSxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsa0JBQWtCO3lCQUM3RSxDQUFBO29CQUNILENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ04sQ0FBQyxDQUFDLENBQUM7Z0JBRUgsSUFBSSxDQUFDLFdBQVcsQ0FBQyxjQUFjLENBQUMsRUFBRSxZQUFZLEVBQUUsU0FBUyxDQUFDLGFBQWEsRUFBRSxnQkFBZ0IsRUFBRSxTQUFTLENBQUMsb0JBQW9CLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUU7b0JBQ3pKLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQyxjQUFjLEdBQUcsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUU7d0JBQ25HLE9BQU87NEJBQ0wsRUFBRSxFQUFFLENBQUMsQ0FBQyxrQkFBa0I7NEJBQ3hCLElBQUksRUFBRSxJQUFJLENBQUMsWUFBWSxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLGtCQUFrQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsbUJBQW1CO3lCQUMvRSxDQUFBO29CQUNILENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ04sQ0FBQyxDQUFDLENBQUM7YUFDSjtpQkFDSSxJQUFJLEtBQUssQ0FBQyxLQUFLLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRTtnQkFDL0IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxjQUFjLENBQUMsRUFBRSxZQUFZLEVBQUUsU0FBUyxDQUFDLGFBQWEsRUFBRSxrQkFBa0IsRUFBRSxTQUFTLENBQUMsUUFBUSxFQUFFLGdCQUFnQixFQUFFLFNBQVMsQ0FBQyxvQkFBb0IsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRTtvQkFDak0sS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFO3dCQUMxRCxPQUFPOzRCQUNMLEVBQUUsRUFBRSxDQUFDLENBQUMsbUJBQW1COzRCQUN6QixJQUFJLEVBQUUsSUFBSSxDQUFDLFlBQVksSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLG9CQUFvQjt5QkFDakYsQ0FBQTtvQkFDSCxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNOLENBQUMsQ0FBQyxDQUFDO2FBQ0o7aUJBQ0ksSUFBSSxLQUFLLENBQUMsS0FBSyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUU7Z0JBQy9CLElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYyxDQUFDLEVBQUUsWUFBWSxFQUFFLFNBQVMsQ0FBQyxhQUFhLEVBQUUsbUJBQW1CLEVBQUUsU0FBUyxDQUFDLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRSxTQUFTLENBQUMsb0JBQW9CLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUU7b0JBQ25NLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRTt3QkFDMUQsT0FBTzs0QkFDTCxFQUFFLEVBQUUsQ0FBQyxDQUFDLFlBQVk7NEJBQ2xCLElBQUksRUFBRSxJQUFJLENBQUMsWUFBWSxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsb0JBQW9CO3lCQUNqRixDQUFBO29CQUNILENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ04sQ0FBQyxDQUFDLENBQUM7YUFDSjtpQkFDSSxJQUFJLEtBQUssQ0FBQyxLQUFLLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRTtnQkFDL0IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxjQUFjLENBQUMsRUFBRSxZQUFZLEVBQUUsU0FBUyxDQUFDLGFBQWEsRUFBRSxtQkFBbUIsRUFBRSxTQUFTLENBQUMsU0FBUyxFQUFFLGdCQUFnQixFQUFFLFNBQVMsQ0FBQyxvQkFBb0IsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRTtvQkFDbk0sS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFO3dCQUMxRCxPQUFPOzRCQUNMLEVBQUUsRUFBRSxDQUFDLENBQUMsWUFBWTs0QkFDbEIsSUFBSSxFQUFFLElBQUksQ0FBQyxZQUFZLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxrQkFBa0I7eUJBQzdFLENBQUE7b0JBQ0gsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDTixDQUFDLENBQUMsQ0FBQzthQUNKO1NBQ0Y7SUFDSCxDQUFDO0lBRU8sb0NBQW9DLENBQUMsS0FBYTtRQUN4RCxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBK0UsRUFBRSxFQUFFO1lBQzNILElBQUksS0FBSyxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsS0FBSyxFQUFFO2dCQUM3QixLQUFLLENBQUMsVUFBVSxDQUFDO29CQUNmLFFBQVEsRUFBRSxJQUFJO29CQUNkLFdBQVcsRUFBRSxJQUFJO29CQUNqQixPQUFPLEVBQUUsRUFBRTtpQkFDWixFQUFFLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7YUFDMUI7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUVMLENBQUM7OEdBNVFVLHFDQUFxQztrR0FBckMscUNBQXFDLGdKQ3hCbEQsOHNDQXVCQTs7MkZEQ2EscUNBQXFDO2tCQUxqRCxTQUFTOytCQUNFLG9DQUFvQzsrSUFVckMsWUFBWTtzQkFBcEIsS0FBSztnQkF5Qk8sV0FBVztzQkFBdkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCwgY29tcHV0ZWQsIGVmZmVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgUXVlc3Rpb25UeXBlRW51bSB9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9lbnVtcy9xdWVzdGlvbi10eXBlLmVudW0nO1xyXG5pbXBvcnQgeyBRdWVzdGlvbkFuc3dlck1vZGVsIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL21vZGVscy9xdWVzdGlvbi1hbnN3ZXIubW9kZWwnO1xyXG5pbXBvcnQgeyBxdWVzdGlvblNlbGVjdG9ycyB9IGZyb20gJy4uLy4uL2NvcmUvc3RhdGVzL3N1cnZleS1zdG9yZS9xdWVzdGlvbi5zZWxlY3Rvcic7XHJcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xyXG5pbXBvcnQge1xyXG4gIFF1ZXN0aW9uR3JvdXBDaGlsZE9mUXVlc3Rpb25JbnN0aXR1dGlvbnNUZW1wbGF0ZUZvcm1JbnRlcmZhY2UsXHJcbiAgUXVlc3Rpb25JbnN0aXR1dGlvbnNUZW1wbGF0ZUZvcm1JbnRlcmZhY2VcclxufSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvZm9ybS1pbnRlcmZhY2VzL3F1ZXN0aW9uLUluc3RpdHV0aW9ucy10ZW1wbGF0ZS5mb3JtLWludGVyZmFjZSc7XHJcbmltcG9ydCB7IFF1ZXN0aW9uTmdyeE1vZGVsIH0gZnJvbSAnLi4vLi4vY29yZS9zdGF0ZXMvZW50aXRlcy9xdWVzdGlvbi5lbnRpdHknO1xyXG5pbXBvcnQgeyBzdXJ2ZXlBY3Rpb25zIH0gZnJvbSAnLi4vLi4vY29yZS9zdGF0ZXMvc3VydmV5LXN0b3JlL3N1cnZleS5hY3Rpb24nO1xyXG5pbXBvcnQgeyBTdXJ2ZXlRdWVzdGlvbkR0byB9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9kdG9zL3N1cnZleS1xdWVzdGlvbi5kdG8nO1xyXG5pbXBvcnQgeyBTdXJ2ZXlTdWJRdWVzdGlvbkxldmVsRHRvIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL2R0b3Mvc3VydmV5LXN1Yi1xdWVzdGlvbi1sZXZlbC5kdG8nO1xyXG5pbXBvcnQgeyBBcGlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvYXBpLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgcGFpcndpc2UsIHRha2UgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgU3VydmV5TGFuZ3VhZ2VFbnVtIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL2VudW1zL3N1cnZleS1sYW5ndWFnZS5lbnVtJztcclxuaW1wb3J0IHsgc3VydmV5U2VsZWN0b3JzIH0gZnJvbSAnLi4vLi4vY29yZS9zdGF0ZXMvc3VydmV5LXN0b3JlL3N1cnZleS5zZWxlY3Rvcic7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi1xdWVzdGlvbi1pbnN0aXR1dGlvbnMtdGVtcGxhdGUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9xdWVzdGlvbi1pbnN0aXR1dGlvbnMtdGVtcGxhdGUuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3F1ZXN0aW9uLWluc3RpdHV0aW9ucy10ZW1wbGF0ZS5jb21wb25lbnQuY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIFF1ZXN0aW9uSW5zdGl0dXRpb25zVGVtcGxhdGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIGluc3RpdHV0aW9uc1F1ZXN0aW9uOiBTdXJ2ZXlRdWVzdGlvbkR0byA9IG51bGw7XHJcbiAgckZvcm06IEZvcm1Hcm91cDxRdWVzdGlvbkluc3RpdHV0aW9uc1RlbXBsYXRlRm9ybUludGVyZmFjZT47XHJcbiAgcGFnZVF1ZXN0aW9ucyQgPSB0aGlzLl9TdG9yZS5zZWxlY3RTaWduYWwocXVlc3Rpb25TZWxlY3RvcnMucGFnZVF1ZXN0aW9ucyk7XHJcbiAgaW5zdGl0dXRpb25zQXJyJCA9IHRoaXMuX1N0b3JlLnNlbGVjdFNpZ25hbChzdXJ2ZXlTZWxlY3RvcnMuaW5zdGl0dXRpb25BcnIpO1xyXG5cclxuICBASW5wdXQoKSBpc0FyYWJpY0xhbmc6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgZ2V0IGZDdHJscygpIHtcclxuICAgIHJldHVybiB0aGlzLnJGb3JtLmNvbnRyb2xzO1xyXG4gIH1cclxuXHJcbiAgZ2V0IHF1ZXN0aW9uVHlwZUVudW0oKSB7XHJcbiAgICByZXR1cm4gUXVlc3Rpb25UeXBlRW51bTtcclxuICB9XHJcblxyXG4gIGdldCBxdWVzdGlvbkZvcm1BcnJheSgpIHtcclxuICAgIHJldHVybiB0aGlzLmZDdHJscy5xdWVzdGlvbkFyclxyXG4gIH1cclxuXHJcbiAgaW5zdGl0dXRpb25zUXVlc3Rpb25BcnIgPSBjb21wdXRlZCgoKSA9PiB7XHJcbiAgICByZXR1cm4gdGhpcy5pbnN0aXR1dGlvbnNBcnIkKCkubWFwKHggPT4ge1xyXG4gICAgICByZXR1cm4ge1xyXG4gICAgICAgIGlkOiB4LnN1Ym1pc3Npb25JZCxcclxuICAgICAgICBuYW1lOiB0aGlzLmlzQXJhYmljTGFuZyA9PSB0cnVlID8geC5pbnN0aXR1dGlvbk5hbWVBcmFiaWMgOiB4Lmluc3RpdHV0aW9uTmFtZUVuZ2xpc2gsXHJcbiAgICAgICAgcmVxdWVzdFRpbWVzdGFtcDogeC5yZXF1ZXN0VGltZXN0YW1wLFxyXG4gICAgICAgIGdlbmVyYXRlZElkOiB4LmdlbmVyYXRlZElkXHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH0pO1xyXG5cclxuICBASW5wdXQoKSBzZXQgc2V0UXVlc3Rpb24odmFsdWU6IFF1ZXN0aW9uTmdyeE1vZGVsKSB7XHJcbiAgICBpZiAodGhpcy5pbnN0aXR1dGlvbnNRdWVzdGlvbiA9PSBudWxsKSB7XHJcbiAgICAgIHRoaXMuaW5zdGl0dXRpb25zUXVlc3Rpb24gPSB2YWx1ZS5xdWVzdGlvbkFsbEluZm87XHJcblxyXG4gICAgICB0aGlzLnJGb3JtLnBhdGNoVmFsdWUoe1xyXG4gICAgICAgIGlkOiB2YWx1ZS5xdWVzdGlvbklkLFxyXG4gICAgICAgIHRpdGxlOiB2YWx1ZS5xdWVzdGlvbkFsbEluZm8ucXVlc3Rpb25UaXRsZSxcclxuICAgICAgICBtYXhMZXZlbFZhbHVlOiB2YWx1ZS5xdWVzdGlvbkFsbEluZm8ubWF4TGV2ZWxWYWx1ZSxcclxuICAgICAgICBpc1JlcXVpcmVkOiB2YWx1ZS5pc1JlcXVpcmVkLFxyXG4gICAgICAgIGlzRGlzYWJsZWQ6IHZhbHVlLmlzRGlzYWJsZWQsXHJcbiAgICAgICAgaXNTaG93OiB2YWx1ZS5pc1Nob3dcclxuICAgICAgfSk7XHJcblxyXG4gICAgICB2YWx1ZS5xdWVzdGlvbkFsbEluZm8uc3VydmV5U3ViUXVlc3Rpb25MZXZlbHMuZm9yRWFjaChzdXJ2ZXlTdWJRdWVzdGlvbkxldmVsID0+IHtcclxuY29uc29sZS5sb2coc3VydmV5U3ViUXVlc3Rpb25MZXZlbCk7XHJcbiAgICAgICAgdmFyIHF1ZXN0aW9uID0gdGhpcy5wYWdlUXVlc3Rpb25zJCgpLmZpbmQoeCA9PiB4LnF1ZXN0aW9uSWQgPT0gdmFsdWUucXVlc3Rpb25JZCk7XHJcbiAgICAgICAgdGhpcy5zZXRRdWVzdGlvbkZvcm1Hcm91cChzdXJ2ZXlTdWJRdWVzdGlvbkxldmVsLCBxdWVzdGlvbj8uaXNSZXF1aXJlZCwgcXVlc3Rpb24/LmFuc3dlcklkKTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9TdG9yZTogU3RvcmUsIHByaXZhdGUgX2Zvcm1CdWlsZGVyOiBGb3JtQnVpbGRlciwgcHJpdmF0ZSBfQXBpU2VydmljZTogQXBpU2VydmljZSkge1xyXG4gICAgdGhpcy5yRm9ybSA9IHRoaXMuX2Zvcm1CdWlsZGVyLmdyb3VwPFF1ZXN0aW9uSW5zdGl0dXRpb25zVGVtcGxhdGVGb3JtSW50ZXJmYWNlPih7XHJcbiAgICAgIGlkOiBuZXcgRm9ybUNvbnRyb2wobnVsbCksXHJcbiAgICAgIHRpdGxlOiBuZXcgRm9ybUNvbnRyb2wobnVsbCksXHJcbiAgICAgIG1heExldmVsVmFsdWU6IG5ldyBGb3JtQ29udHJvbChudWxsKSxcclxuICAgICAgaXNEaXNhYmxlZDogbmV3IEZvcm1Db250cm9sKGZhbHNlKSxcclxuICAgICAgaXNTaG93OiBuZXcgRm9ybUNvbnRyb2woZmFsc2UpLFxyXG4gICAgICBpc1JlcXVpcmVkOiBuZXcgRm9ybUNvbnRyb2wobnVsbCksXHJcbiAgICAgIGluc3RpdHV0aW9uSWQ6IG5ldyBGb3JtQ29udHJvbChudWxsKSxcclxuICAgICAgaW5zdGl0dXRpb25UaW1lc3RhbXA6IG5ldyBGb3JtQ29udHJvbChudWxsKSxcclxuICAgICAgaW5zdGl0dXRpb25HZW5lcmF0ZWRJZDogbmV3IEZvcm1Db250cm9sKG51bGwpLFxyXG4gICAgICBwcm9ncmFtUmVsYXRlZFRvSW5zdGl0dXRpb25JZDogbmV3IEZvcm1Db250cm9sKG51bGwpLFxyXG4gICAgICBicmFuY2hJZDogbmV3IEZvcm1Db250cm9sKG51bGwpLFxyXG4gICAgICBjb2xsYWdlSWQ6IG5ldyBGb3JtQ29udHJvbChudWxsKSxcclxuICAgICAgc2VjdGlvbklkOiBuZXcgRm9ybUNvbnRyb2wobnVsbCksXHJcbiAgICAgIHByb2dyYW1JZDogbmV3IEZvcm1Db250cm9sKG51bGwpLFxyXG4gICAgICBxdWVzdGlvbkFycjogdGhpcy5fZm9ybUJ1aWxkZXIuYXJyYXk8Rm9ybUdyb3VwPFF1ZXN0aW9uR3JvdXBDaGlsZE9mUXVlc3Rpb25JbnN0aXR1dGlvbnNUZW1wbGF0ZUZvcm1JbnRlcmZhY2U+PihbXSlcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLl9TdG9yZS5kaXNwYXRjaChzdXJ2ZXlBY3Rpb25zLmxvYWRJbnN0aXR1dGlvbkFycigpKTtcclxuICB9XHJcblxyXG4gIG9uVXBkYXRlQW5zd2VyKG1vZGVsOiB7IGlkOiBzdHJpbmcsIG5hbWU6IHN0cmluZyB9LCBncm91cEluZGV4OiBudW1iZXIpIHtcclxuICAgIHZhciBncm91cCA9IHRoaXMuZkN0cmxzLnF1ZXN0aW9uQXJyLmF0KGdyb3VwSW5kZXgpO1xyXG4gICAgZ3JvdXAucGF0Y2hWYWx1ZSh7XHJcbiAgICAgIGFuc3dlcklkOiBtb2RlbC5pZCxcclxuICAgICAgYW5zd2VyVmFsdWU6IG1vZGVsLm5hbWVcclxuICAgIH0pO1xyXG5cclxuICAgIHRoaXMuX1N0b3JlLmRpc3BhdGNoKHN1cnZleUFjdGlvbnMudXBkYXRlSW5zdGl0dXRpb25RdWVzdGlvbkFuc3dlcih7XHJcbiAgICAgIHF1ZXN0aW9uSWQ6IGdyb3VwLnZhbHVlLmlkLFxyXG4gICAgICBhbnN3ZXJJZDogZ3JvdXAudmFsdWUuYW5zd2VySWQsXHJcbiAgICAgIGFuc3dlcjogZ3JvdXAudmFsdWUuYW5zd2VyVmFsdWUsXHJcbiAgICAgIGlzVmFsaWQ6IGdyb3VwLmNvbnRyb2xzLmFuc3dlcklkLnZhbGlkLFxyXG4gICAgICBhbnN3ZXJMZXZlbElkOiBncm91cC52YWx1ZS5sZXZlbEFuc3dlcklkLFxyXG4gICAgfSkpO1xyXG4gIH1cclxuXHJcbiAgaWRlbnRpZnkoaW5kZXgsIGl0ZW06IEZvcm1Hcm91cDxRdWVzdGlvbkdyb3VwQ2hpbGRPZlF1ZXN0aW9uSW5zdGl0dXRpb25zVGVtcGxhdGVGb3JtSW50ZXJmYWNlPikge1xyXG4gICAgcmV0dXJuIGl0ZW0udmFsdWUuaWQ7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNldFF1ZXN0aW9uRm9ybUdyb3VwKHZhbHVlOiBTdXJ2ZXlTdWJRdWVzdGlvbkxldmVsRHRvLCBpc1JxdWlyZWQ6IGJvb2xlYW4sIGFuc3dlcklkOiBzdHJpbmcpIHtcclxuICAgIHZhciBncm91cCA9IHRoaXMuX2Zvcm1CdWlsZGVyLmdyb3VwPFF1ZXN0aW9uR3JvdXBDaGlsZE9mUXVlc3Rpb25JbnN0aXR1dGlvbnNUZW1wbGF0ZUZvcm1JbnRlcmZhY2U+KHtcclxuICAgICAgaWQ6IG5ldyBGb3JtQ29udHJvbCh2YWx1ZS5xdWVzdGlvbklkKSxcclxuICAgICAgdHlwZUlkOiBuZXcgRm9ybUNvbnRyb2wodmFsdWUucXVlc3Rpb25UeXBlSWQpLFxyXG4gICAgICBuYW1lOiBuZXcgRm9ybUNvbnRyb2wodmFsdWUucXVlc3Rpb25OYW1lKSxcclxuICAgICAgZGVzY3JpcHRpb246IG5ldyBGb3JtQ29udHJvbCh2YWx1ZS5xdWVzdGlvbkRlc2NyaXB0aW9uKSxcclxuICAgICAgdGl0bGU6IG5ldyBGb3JtQ29udHJvbCh2YWx1ZS5xdWVzdGlvblRpdGxlKSxcclxuICAgICAgbGV2ZWw6IG5ldyBGb3JtQ29udHJvbCh2YWx1ZS5sZXZlbCksXHJcbiAgICAgIGxldmVsQW5zd2VySWQ6IG5ldyBGb3JtQ29udHJvbCh2YWx1ZS5sZXZlbEFuc3dlci5hbnN3ZXJJZCksXHJcbiAgICAgIGFuc3dlcklkOiBuZXcgRm9ybUNvbnRyb2wobnVsbCksXHJcbiAgICAgIGFuc3dlclZhbHVlOiBuZXcgRm9ybUNvbnRyb2wobnVsbCksXHJcbiAgICAgIGFuc3dlcnM6IG5ldyBGb3JtQ29udHJvbChbXSksXHJcbiAgICB9KTtcclxuXHJcbiAgICBpZiAoaXNScXVpcmVkID09IHRydWUpIHtcclxuICAgICAgZ3JvdXAuY29udHJvbHMuYW5zd2VySWQuYWRkVmFsaWRhdG9ycyhbVmFsaWRhdG9ycy5yZXF1aXJlZF0pO1xyXG4gICAgICBncm91cC5jb250cm9scy5hbnN3ZXJJZC51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XHJcbiAgICAgIGdyb3VwLmNvbnRyb2xzLmFuc3dlclZhbHVlLmFkZFZhbGlkYXRvcnMoW1ZhbGlkYXRvcnMucmVxdWlyZWRdKTtcclxuICAgICAgZ3JvdXAuY29udHJvbHMuYW5zd2VyVmFsdWUudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xyXG4gICAgfVxyXG5cclxuICAgIGdyb3VwLmNvbnRyb2xzLmFuc3dlcklkLnZhbHVlQ2hhbmdlcy5waXBlKGRpc3RpbmN0VW50aWxDaGFuZ2VkKCkpLnN1YnNjcmliZShhbnN3ZXJJZCA9PiB7XHJcbiAgICAgIGlmIChhbnN3ZXJJZCkge1xyXG4gICAgICAgIGlmICh2YWx1ZS5sZXZlbCA9PSAxKSB7XHJcbiAgICAgICAgICB0aGlzLnJGb3JtLnBhdGNoVmFsdWUoe1xyXG4gICAgICAgICAgICBpbnN0aXR1dGlvbklkOiBhbnN3ZXJJZCxcclxuICAgICAgICAgICAgaW5zdGl0dXRpb25UaW1lc3RhbXA6IHRoaXMuaW5zdGl0dXRpb25zUXVlc3Rpb25BcnIoKS5maW5kKHggPT4geC5pZCA9PSBhbnN3ZXJJZCk/LnJlcXVlc3RUaW1lc3RhbXAsXHJcbiAgICAgICAgICAgIGluc3RpdHV0aW9uR2VuZXJhdGVkSWQ6IHRoaXMuaW5zdGl0dXRpb25zUXVlc3Rpb25BcnIoKS5maW5kKHggPT4geC5pZCA9PSBhbnN3ZXJJZCk/LmdlbmVyYXRlZElkLFxyXG4gICAgICAgICAgICBicmFuY2hJZDogbnVsbCxcclxuICAgICAgICAgICAgY29sbGFnZUlkOiBudWxsLFxyXG4gICAgICAgICAgICBzZWN0aW9uSWQ6IG51bGxcclxuICAgICAgICAgIH0sIHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZiAodmFsdWUubGV2ZWwgPT0gMikge1xyXG4gICAgICAgICAgdGhpcy5yRm9ybS5wYXRjaFZhbHVlKHtcclxuICAgICAgICAgICAgcHJvZ3JhbUlkOiBhbnN3ZXJJZFxyXG4gICAgICAgICAgfSwgeyBlbWl0RXZlbnQ6IGZhbHNlIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmICh2YWx1ZS5sZXZlbCA9PSAzKSB7XHJcbiAgICAgICAgICB0aGlzLnJGb3JtLnBhdGNoVmFsdWUoe1xyXG4gICAgICAgICAgICBicmFuY2hJZDogYW5zd2VySWQsXHJcbiAgICAgICAgICAgIGNvbGxhZ2VJZDogbnVsbCxcclxuICAgICAgICAgICAgc2VjdGlvbklkOiBudWxsXHJcbiAgICAgICAgICB9LCB7IGVtaXRFdmVudDogZmFsc2UgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYgKHZhbHVlLmxldmVsID09IDQpIHtcclxuICAgICAgICAgIHRoaXMuckZvcm0ucGF0Y2hWYWx1ZSh7XHJcbiAgICAgICAgICAgIGNvbGxhZ2VJZDogYW5zd2VySWQsXHJcbiAgICAgICAgICAgIHNlY3Rpb25JZDogbnVsbFxyXG4gICAgICAgICAgfSwgeyBlbWl0RXZlbnQ6IGZhbHNlIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmICh2YWx1ZS5sZXZlbCA9PSA1KSB7XHJcbiAgICAgICAgICB0aGlzLnJGb3JtLnBhdGNoVmFsdWUoe1xyXG4gICAgICAgICAgICBzZWN0aW9uSWQ6IGFuc3dlcklkXHJcbiAgICAgICAgICB9LCB7IGVtaXRFdmVudDogZmFsc2UgfSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBjb25zdCBsZXZlbCA9IGdyb3VwLnZhbHVlLmxldmVsO1xyXG5cclxuICAgICAgICBpZihsZXZlbCAhPSAyKXtcclxuICAgICAgICB0aGlzLnJlc2V0QW5zd2Vyc09mRm9ybUdyb3VwaW5IaWdoZXJMZXZlbChsZXZlbCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB2YXIgbmV4dEdyb3VwSW5kZXggPSB0aGlzLmZDdHJscy5xdWVzdGlvbkFyci5jb250cm9scy5maW5kSW5kZXgoeCA9PiB4LnZhbHVlLmxldmVsID09IGxldmVsICsgMSk7XHJcbiAgICAgICAgaWYgKG5leHRHcm91cEluZGV4ICkge1xyXG4gICAgICAgICAgdGhpcy5maWxsUXVlc3Rpb25BbnN3ZXJzKG5leHRHcm91cEluZGV4KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICAgIGdyb3VwLmNvbnRyb2xzLmFuc3dlcnMudmFsdWVDaGFuZ2VzLnBpcGUoZGlzdGluY3RVbnRpbENoYW5nZWQoKSkuc3Vic2NyaWJlKHZhbHVlID0+IHtcclxuICAgICAgY29uc3QgZ3JvdXBJbmRleCA9IHRoaXMuZkN0cmxzLnF1ZXN0aW9uQXJyLmNvbnRyb2xzLmZpbmRJbmRleCh4ID0+IHgudmFsdWUubGV2ZWwgPT0gZ3JvdXAudmFsdWUubGV2ZWwpO1xyXG4gICAgICB2YXIgcXVlc3Rpb25Hcm91cCA9IHRoaXMuZkN0cmxzLnF1ZXN0aW9uQXJyLmF0KGdyb3VwSW5kZXgpO1xyXG5cclxuICAgICAgaWYgKHF1ZXN0aW9uR3JvdXApIHtcclxuICAgICAgICBpZiAodmFsdWUubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgaWYgKHRoaXMuZkN0cmxzLmlzUmVxdWlyZWQudmFsdWUgPT0gdHJ1ZSkge1xyXG4gICAgICAgICAgICBxdWVzdGlvbkdyb3VwLmNvbnRyb2xzLmFuc3dlcklkLmFkZFZhbGlkYXRvcnMoW1ZhbGlkYXRvcnMucmVxdWlyZWRdKTtcclxuICAgICAgICAgICAgcXVlc3Rpb25Hcm91cC5jb250cm9scy5hbnN3ZXJWYWx1ZS5hZGRWYWxpZGF0b3JzKFtWYWxpZGF0b3JzLnJlcXVpcmVkXSk7XHJcblxyXG4gICAgICAgICAgICB0aGlzLl9TdG9yZS5kaXNwYXRjaChzdXJ2ZXlBY3Rpb25zLnVwZGF0ZVF1ZXN0aW9uUmVxdWlyZWQoeyBxdWVzdGlvbklkOiBncm91cC52YWx1ZS5pZCwgaXNSZXF1aXJlZDogdHJ1ZSB9KSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHF1ZXN0aW9uR3JvdXAuY29udHJvbHMuYW5zd2VySWQuY2xlYXJWYWxpZGF0b3JzKCk7XHJcbiAgICAgICAgICBxdWVzdGlvbkdyb3VwLmNvbnRyb2xzLmFuc3dlclZhbHVlLmNsZWFyVmFsaWRhdG9ycygpO1xyXG5cclxuICAgICAgICAgIHRoaXMuX1N0b3JlLmRpc3BhdGNoKHN1cnZleUFjdGlvbnMudXBkYXRlUXVlc3Rpb25SZXF1aXJlZCh7IHF1ZXN0aW9uSWQ6IGdyb3VwLnZhbHVlLmlkLCBpc1JlcXVpcmVkOiBmYWxzZSB9KSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBxdWVzdGlvbkdyb3VwLmNvbnRyb2xzLmFuc3dlcklkLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKTtcclxuICAgICAgICBxdWVzdGlvbkdyb3VwLmNvbnRyb2xzLmFuc3dlclZhbHVlLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKTtcclxuICAgICAgfVxyXG5cclxuICAgIH0pO1xyXG5cclxuICAgIGlmIChhbnN3ZXJJZCkge1xyXG4gICAgICBncm91cC5jb250cm9scy5hbnN3ZXJJZC5zZXRWYWx1ZShhbnN3ZXJJZCk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5mQ3RybHMucXVlc3Rpb25BcnIucHVzaChncm91cCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGZpbGxRdWVzdGlvbkFuc3dlcnMobmV4dEdyb3VwSW5kZXg6IG51bWJlcikge1xyXG4gICAgY29uc3QgZm9ybVZhbHVlID0gdGhpcy5yRm9ybS52YWx1ZTtcclxuICAgIHZhciBncm91cCA9IHRoaXMuZkN0cmxzLnF1ZXN0aW9uQXJyLmF0KG5leHRHcm91cEluZGV4KTtcclxuICAgIGlmIChncm91cCkge1xyXG4gICAgICBpZiAoZ3JvdXAudmFsdWUubGV2ZWwgPT0gMikge1xyXG4gICAgICAgIHRoaXMuX0FwaVNlcnZpY2UuZ2V0QWxsUHJvZ3JhbXNSZWxhdGVkVG9JbnN0aXR1dGlvbnMoe1xyXG4gICAgICAgICAgc3VibWlzc2lvbklkOiBmb3JtVmFsdWUuaW5zdGl0dXRpb25JZCxcclxuICAgICAgICAgIGdlbmVyYXRlZElkOiBmb3JtVmFsdWUuaW5zdGl0dXRpb25HZW5lcmF0ZWRJZCwgcmVxdWVzdFRpbWVzdGFtcDogZm9ybVZhbHVlLmluc3RpdHV0aW9uVGltZXN0YW1wXHJcbiAgICAgICAgfSkucGlwZSh0YWtlKDEpKS5zdWJzY3JpYmUocmVzID0+IHtcclxuICAgICAgICAgIGdyb3VwLmNvbnRyb2xzLmFuc3dlcnMuc2V0VmFsdWUocmVzLnJlc3BvbnNlRGV0YWlscy5tYXAoeCA9PiB7XHJcbiAgICAgICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgICAgaWQ6IHguZ2VuZXJhdGVkS2V5LFxyXG4gICAgICAgICAgICAgIG5hbWU6IHRoaXMuaXNBcmFiaWNMYW5nID09IHRydWUgPyB4LnByb2dyYW1OYW1lQXJhYmljIDogeC5wcm9ncmFtTmFtZUVuZ2xpc2hcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfSkpO1xyXG4gICAgICAgIH0pO1xyXG5cclxuICAgICAgICB0aGlzLl9BcGlTZXJ2aWNlLmdldEFsbEJyYW5jaGVzKHsgc3VibWlzc2lvbklkOiBmb3JtVmFsdWUuaW5zdGl0dXRpb25JZCwgcmVxdWVzdFRpbWVzdGFtcDogZm9ybVZhbHVlLmluc3RpdHV0aW9uVGltZXN0YW1wIH0pLnBpcGUodGFrZSgxKSkuc3Vic2NyaWJlKHJlcyA9PiB7XHJcbiAgICAgICAgICB0aGlzLmZDdHJscy5xdWVzdGlvbkFyci5hdChuZXh0R3JvdXBJbmRleCArIDEpLmNvbnRyb2xzLmFuc3dlcnMuc2V0VmFsdWUocmVzLnJlc3BvbnNlRGV0YWlscy5tYXAoeCA9PiB7XHJcbiAgICAgICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgICAgaWQ6IHguYnJhbmNoU3VibWlzc2lvbklkLFxyXG4gICAgICAgICAgICAgIG5hbWU6IHRoaXMuaXNBcmFiaWNMYW5nID09IHRydWUgPyB4LmJyYW5jaE5hbWVJbkFyYWJpYyA6IHguYnJhbmNoTmFtZUluRW5nbGlzaFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9KSk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgICAgZWxzZSBpZiAoZ3JvdXAudmFsdWUubGV2ZWwgPT0gNCkge1xyXG4gICAgICAgIHRoaXMuX0FwaVNlcnZpY2UuZ2V0QWxsQ29sbGFnZXMoeyBzdWJtaXNzaW9uSWQ6IGZvcm1WYWx1ZS5pbnN0aXR1dGlvbklkLCBicmFuY2hTdWJtaXNzaW9uSWQ6IGZvcm1WYWx1ZS5icmFuY2hJZCwgcmVxdWVzdFRpbWVzdGFtcDogZm9ybVZhbHVlLmluc3RpdHV0aW9uVGltZXN0YW1wIH0pLnBpcGUodGFrZSgxKSkuc3Vic2NyaWJlKHJlcyA9PiB7XHJcbiAgICAgICAgICBncm91cC5jb250cm9scy5hbnN3ZXJzLnNldFZhbHVlKHJlcy5yZXNwb25zZURldGFpbHMubWFwKHggPT4ge1xyXG4gICAgICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICAgIGlkOiB4LmNvbGxhZ2VTdWJtaXNzaW9uSWQsXHJcbiAgICAgICAgICAgICAgbmFtZTogdGhpcy5pc0FyYWJpY0xhbmcgPT0gdHJ1ZSA/IHguY29sbGFnZU5hbWVJbkFyYWJpYyA6IHguY29sbGFnZU5hbWVJbkVuZ2xpc2hcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfSkpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2UgaWYgKGdyb3VwLnZhbHVlLmxldmVsID09IDUpIHtcclxuICAgICAgICB0aGlzLl9BcGlTZXJ2aWNlLmdldEFsbFNlY3Rpb25zKHsgc3VibWlzc2lvbklkOiBmb3JtVmFsdWUuaW5zdGl0dXRpb25JZCwgY29sbGFnZVN1Ym1pc3Npb25JZDogZm9ybVZhbHVlLmNvbGxhZ2VJZCwgcmVxdWVzdFRpbWVzdGFtcDogZm9ybVZhbHVlLmluc3RpdHV0aW9uVGltZXN0YW1wIH0pLnBpcGUodGFrZSgxKSkuc3Vic2NyaWJlKHJlcyA9PiB7XHJcbiAgICAgICAgICBncm91cC5jb250cm9scy5hbnN3ZXJzLnNldFZhbHVlKHJlcy5yZXNwb25zZURldGFpbHMubWFwKHggPT4ge1xyXG4gICAgICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICAgIGlkOiB4LmdlbmVyYXRlZEtleSxcclxuICAgICAgICAgICAgICBuYW1lOiB0aGlzLmlzQXJhYmljTGFuZyA9PSB0cnVlID8geC5zZWN0aW9uTmFtZUluQXJhYmljIDogeC5zZWN0aW9uTmFtZUluRW5nbGlzaFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9KSk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgICAgZWxzZSBpZiAoZ3JvdXAudmFsdWUubGV2ZWwgPT0gNikge1xyXG4gICAgICAgIHRoaXMuX0FwaVNlcnZpY2UuZ2V0QWxsUHJvZ3JhbXMoeyBzdWJtaXNzaW9uSWQ6IGZvcm1WYWx1ZS5pbnN0aXR1dGlvbklkLCBzZWN0aW9uR2VuZXJhdGVkS2V5OiBmb3JtVmFsdWUuc2VjdGlvbklkLCByZXF1ZXN0VGltZXN0YW1wOiBmb3JtVmFsdWUuaW5zdGl0dXRpb25UaW1lc3RhbXAgfSkucGlwZSh0YWtlKDEpKS5zdWJzY3JpYmUocmVzID0+IHtcclxuICAgICAgICAgIGdyb3VwLmNvbnRyb2xzLmFuc3dlcnMuc2V0VmFsdWUocmVzLnJlc3BvbnNlRGV0YWlscy5tYXAoeCA9PiB7XHJcbiAgICAgICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgICAgaWQ6IHguZ2VuZXJhdGVkS2V5LFxyXG4gICAgICAgICAgICAgIG5hbWU6IHRoaXMuaXNBcmFiaWNMYW5nID09IHRydWUgPyB4LnByb2dyYW1OYW1lQXJhYmljIDogeC5wcm9ncmFtTmFtZUVuZ2xpc2hcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfSkpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHJlc2V0QW5zd2Vyc09mRm9ybUdyb3VwaW5IaWdoZXJMZXZlbChsZXZlbDogbnVtYmVyKSB7XHJcbiAgICB0aGlzLmZDdHJscy5xdWVzdGlvbkFyci5jb250cm9scy5mb3JFYWNoKChncm91cDogRm9ybUdyb3VwPFF1ZXN0aW9uR3JvdXBDaGlsZE9mUXVlc3Rpb25JbnN0aXR1dGlvbnNUZW1wbGF0ZUZvcm1JbnRlcmZhY2U+KSA9PiB7XHJcbiAgICAgIGlmIChncm91cC52YWx1ZS5sZXZlbCA+IGxldmVsKSB7XHJcbiAgICAgICAgZ3JvdXAucGF0Y2hWYWx1ZSh7XHJcbiAgICAgICAgICBhbnN3ZXJJZDogbnVsbCxcclxuICAgICAgICAgIGFuc3dlclZhbHVlOiBudWxsLFxyXG4gICAgICAgICAgYW5zd2VyczogW11cclxuICAgICAgICB9LCB7IGVtaXRFdmVudDogZmFsc2UgfSk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICB9XHJcblxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJxdWFzdGlvblwiPlxyXG4gIDxoMyBjbGFzcz1cInF1YXN0aW9uLXRpdGxlIG1iLTJcIj5cclxuICAgIDxzcGFuIFtpbm5lckhUTUxdPVwiZkN0cmxzLnRpdGxlLnZhbHVlXCI+PC9zcGFuPlxyXG4gIDwvaDM+XHJcbiAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaXRlbSBvZiBxdWVzdGlvbkZvcm1BcnJheS5jb250cm9sczsgdHJhY2tCeTppZGVudGlmeSA7IGxldCBpID0gaW5kZXhcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJxdWFzdGlvblwiIFthdHRyLmlkXT1cIidxdWVzdGlvbl8nK2l0ZW0udmFsdWUuaWRcIlxyXG4gICAgICAqbmdJZj1cIml0ZW0udmFsdWUubGV2ZWwgPT0gMSB8fCAoIGl0ZW0udmFsdWUubGV2ZWwgPiAxICYmIGl0ZW0udmFsdWUuYW5zd2Vycy5sZW5ndGggPiAwIClcIlxyXG4gICAgICBbbmdDbGFzc109XCJ7J2ludmFsaWQtcXVlc3Rpb24nOiBpdGVtLmNvbnRyb2xzLmFuc3dlcklkLmludmFsaWQgICwgJ2Qtbm9uZSc6ZkN0cmxzLmlzU2hvdy52YWx1ZSAhPSB0cnVlfVwiPlxyXG4gICAgICA8aDMgY2xhc3M9XCJxdWFzdGlvbi10aXRsZSBcIj5cclxuICAgICAgICA8c3BhbiBbaW5uZXJIVE1MXT1cIml0ZW0udmFsdWUudGl0bGVcIj48L3NwYW4+XHJcbiAgICAgICAgPHNwYW4gc3R5bGU9XCJjb2xvcjogcmVkO1wiICpuZ0lmPVwiZkN0cmxzLmlzUmVxdWlyZWRcIj4qPC9zcGFuPlxyXG4gICAgICA8L2gzPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwidGV4dC1xdWFzdGlvbiB0ZXh0LXF1YXN0aW9uX19kcm9wZG93blwiPlxyXG4gICAgICAgIDxuZy1zZWxlY3QgW2l0ZW1zXT1cIml0ZW0udmFsdWUubGV2ZWwgPT0xID8gaW5zdGl0dXRpb25zUXVlc3Rpb25BcnIoKSA6IGl0ZW0udmFsdWUuYW5zd2Vyc1wiIGJpbmRWYWx1ZT1cImlkXCIgYmluZExhYmVsPVwibmFtZVwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcclxuICAgICAgICAgIFtmb3JtQ29udHJvbF09XCJpdGVtLmNvbnRyb2xzLmFuc3dlcklkXCIgW3ZpcnR1YWxTY3JvbGxdPVwidHJ1ZVwiIFtkaXNhYmxlZF09XCJmQ3RybHMuaXNEaXNhYmxlZC52YWx1ZVwiIChjaGFuZ2UpPVwib25VcGRhdGVBbnN3ZXIoJGV2ZW50LGkpXCJcclxuICAgICAgICAgIFttdWx0aXBsZV09XCJmYWxzZVwiPlxyXG4gICAgICAgIDwvbmctc2VsZWN0PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG5cclxuICA8L25nLWNvbnRhaW5lcj5cclxuPC9kaXY+XHJcblxyXG4iXX0=
|
|
265
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlc3Rpb24taW5zdGl0dXRpb25zLXRlbXBsYXRlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3N1cnZlcnktbGliL3NyYy9saWIvY29tcG9uZW50cy9xdWVzdGlvbi1pbnN0aXR1dGlvbnMtdGVtcGxhdGUvcXVlc3Rpb24taW5zdGl0dXRpb25zLXRlbXBsYXRlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3N1cnZlcnktbGliL3NyYy9saWIvY29tcG9uZW50cy9xdWVzdGlvbi1pbnN0aXR1dGlvbnMtdGVtcGxhdGUvcXVlc3Rpb24taW5zdGl0dXRpb25zLXRlbXBsYXRlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLFFBQVEsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUMzRSxPQUFPLEVBQWUsV0FBVyxFQUFhLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2pGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBRTVFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBT3JGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUk3RSxPQUFPLEVBQUUsb0JBQW9CLEVBQVksSUFBSSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTVELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQzs7Ozs7OztBQU9qRixNQUFNLE9BQU8scUNBQXFDO0lBUWhELElBQUksTUFBTTtRQUNSLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUM7SUFDN0IsQ0FBQztJQUVELElBQUksZ0JBQWdCO1FBQ2xCLE9BQU8sZ0JBQWdCLENBQUM7SUFDMUIsQ0FBQztJQUVELElBQUksaUJBQWlCO1FBQ25C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QkFDZCxXQUFXLEVBQUUsSUFBSTtvQkFDakIsT0FBTyxFQUFFLEVBQUU7aUJBQ1osRUFBRSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO2FBQzFCO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFFTCxDQUFDOzhHQTNRVSxxQ0FBcUM7a0dBQXJDLHFDQUFxQyxnSkN4QmxELDhzQ0F1QkE7OzJGRENhLHFDQUFxQztrQkFMakQsU0FBUzsrQkFDRSxvQ0FBb0M7K0lBVXJDLFlBQVk7c0JBQXBCLEtBQUs7Z0JBeUJPLFdBQVc7c0JBQXZCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQsIGNvbXB1dGVkLCBlZmZlY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Db250cm9sLCBGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IFF1ZXN0aW9uVHlwZUVudW0gfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvZW51bXMvcXVlc3Rpb24tdHlwZS5lbnVtJztcclxuaW1wb3J0IHsgUXVlc3Rpb25BbnN3ZXJNb2RlbCB9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9tb2RlbHMvcXVlc3Rpb24tYW5zd2VyLm1vZGVsJztcclxuaW1wb3J0IHsgcXVlc3Rpb25TZWxlY3RvcnMgfSBmcm9tICcuLi8uLi9jb3JlL3N0YXRlcy9zdXJ2ZXktc3RvcmUvcXVlc3Rpb24uc2VsZWN0b3InO1xyXG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcclxuaW1wb3J0IHtcclxuICBRdWVzdGlvbkdyb3VwQ2hpbGRPZlF1ZXN0aW9uSW5zdGl0dXRpb25zVGVtcGxhdGVGb3JtSW50ZXJmYWNlLFxyXG4gIFF1ZXN0aW9uSW5zdGl0dXRpb25zVGVtcGxhdGVGb3JtSW50ZXJmYWNlXHJcbn0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL2Zvcm0taW50ZXJmYWNlcy9xdWVzdGlvbi1JbnN0aXR1dGlvbnMtdGVtcGxhdGUuZm9ybS1pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBRdWVzdGlvbk5ncnhNb2RlbCB9IGZyb20gJy4uLy4uL2NvcmUvc3RhdGVzL2VudGl0ZXMvcXVlc3Rpb24uZW50aXR5JztcclxuaW1wb3J0IHsgc3VydmV5QWN0aW9ucyB9IGZyb20gJy4uLy4uL2NvcmUvc3RhdGVzL3N1cnZleS1zdG9yZS9zdXJ2ZXkuYWN0aW9uJztcclxuaW1wb3J0IHsgU3VydmV5UXVlc3Rpb25EdG8gfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvZHRvcy9zdXJ2ZXktcXVlc3Rpb24uZHRvJztcclxuaW1wb3J0IHsgU3VydmV5U3ViUXVlc3Rpb25MZXZlbER0byB9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9kdG9zL3N1cnZleS1zdWItcXVlc3Rpb24tbGV2ZWwuZHRvJztcclxuaW1wb3J0IHsgQXBpU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2FwaS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgZGlzdGluY3RVbnRpbENoYW5nZWQsIHBhaXJ3aXNlLCB0YWtlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IFN1cnZleUxhbmd1YWdlRW51bSB9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9lbnVtcy9zdXJ2ZXktbGFuZ3VhZ2UuZW51bSc7XHJcbmltcG9ydCB7IHN1cnZleVNlbGVjdG9ycyB9IGZyb20gJy4uLy4uL2NvcmUvc3RhdGVzL3N1cnZleS1zdG9yZS9zdXJ2ZXkuc2VsZWN0b3InO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItcXVlc3Rpb24taW5zdGl0dXRpb25zLXRlbXBsYXRlJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vcXVlc3Rpb24taW5zdGl0dXRpb25zLXRlbXBsYXRlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9xdWVzdGlvbi1pbnN0aXR1dGlvbnMtdGVtcGxhdGUuY29tcG9uZW50LmNzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBRdWVzdGlvbkluc3RpdHV0aW9uc1RlbXBsYXRlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBpbnN0aXR1dGlvbnNRdWVzdGlvbjogU3VydmV5UXVlc3Rpb25EdG8gPSBudWxsO1xyXG4gIHJGb3JtOiBGb3JtR3JvdXA8UXVlc3Rpb25JbnN0aXR1dGlvbnNUZW1wbGF0ZUZvcm1JbnRlcmZhY2U+O1xyXG4gIHBhZ2VRdWVzdGlvbnMkID0gdGhpcy5fU3RvcmUuc2VsZWN0U2lnbmFsKHF1ZXN0aW9uU2VsZWN0b3JzLnBhZ2VRdWVzdGlvbnMpO1xyXG4gIGluc3RpdHV0aW9uc0FyciQgPSB0aGlzLl9TdG9yZS5zZWxlY3RTaWduYWwoc3VydmV5U2VsZWN0b3JzLmluc3RpdHV0aW9uQXJyKTtcclxuXHJcbiAgQElucHV0KCkgaXNBcmFiaWNMYW5nOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIGdldCBmQ3RybHMoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5yRm9ybS5jb250cm9scztcclxuICB9XHJcblxyXG4gIGdldCBxdWVzdGlvblR5cGVFbnVtKCkge1xyXG4gICAgcmV0dXJuIFF1ZXN0aW9uVHlwZUVudW07XHJcbiAgfVxyXG5cclxuICBnZXQgcXVlc3Rpb25Gb3JtQXJyYXkoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5mQ3RybHMucXVlc3Rpb25BcnJcclxuICB9XHJcblxyXG4gIGluc3RpdHV0aW9uc1F1ZXN0aW9uQXJyID0gY29tcHV0ZWQoKCkgPT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaW5zdGl0dXRpb25zQXJyJCgpLm1hcCh4ID0+IHtcclxuICAgICAgcmV0dXJuIHtcclxuICAgICAgICBpZDogeC5zdWJtaXNzaW9uSWQsXHJcbiAgICAgICAgbmFtZTogdGhpcy5pc0FyYWJpY0xhbmcgPT0gdHJ1ZSA/IHguaW5zdGl0dXRpb25OYW1lQXJhYmljIDogeC5pbnN0aXR1dGlvbk5hbWVFbmdsaXNoLFxyXG4gICAgICAgIHJlcXVlc3RUaW1lc3RhbXA6IHgucmVxdWVzdFRpbWVzdGFtcCxcclxuICAgICAgICBnZW5lcmF0ZWRJZDogeC5nZW5lcmF0ZWRJZFxyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9KTtcclxuXHJcbiAgQElucHV0KCkgc2V0IHNldFF1ZXN0aW9uKHZhbHVlOiBRdWVzdGlvbk5ncnhNb2RlbCkge1xyXG4gICAgaWYgKHRoaXMuaW5zdGl0dXRpb25zUXVlc3Rpb24gPT0gbnVsbCkge1xyXG4gICAgICB0aGlzLmluc3RpdHV0aW9uc1F1ZXN0aW9uID0gdmFsdWUucXVlc3Rpb25BbGxJbmZvO1xyXG5cclxuICAgICAgdGhpcy5yRm9ybS5wYXRjaFZhbHVlKHtcclxuICAgICAgICBpZDogdmFsdWUucXVlc3Rpb25JZCxcclxuICAgICAgICB0aXRsZTogdmFsdWUucXVlc3Rpb25BbGxJbmZvLnF1ZXN0aW9uVGl0bGUsXHJcbiAgICAgICAgbWF4TGV2ZWxWYWx1ZTogdmFsdWUucXVlc3Rpb25BbGxJbmZvLm1heExldmVsVmFsdWUsXHJcbiAgICAgICAgaXNSZXF1aXJlZDogdmFsdWUuaXNSZXF1aXJlZCxcclxuICAgICAgICBpc0Rpc2FibGVkOiB2YWx1ZS5pc0Rpc2FibGVkLFxyXG4gICAgICAgIGlzU2hvdzogdmFsdWUuaXNTaG93XHJcbiAgICAgIH0pO1xyXG5cclxuICAgICAgdmFsdWUucXVlc3Rpb25BbGxJbmZvLnN1cnZleVN1YlF1ZXN0aW9uTGV2ZWxzLmZvckVhY2goc3VydmV5U3ViUXVlc3Rpb25MZXZlbCA9PiB7XHJcbiAgICAgICAgdmFyIHF1ZXN0aW9uID0gdGhpcy5wYWdlUXVlc3Rpb25zJCgpLmZpbmQoeCA9PiB4LnF1ZXN0aW9uSWQgPT0gdmFsdWUucXVlc3Rpb25JZCk7XHJcbiAgICAgICAgdGhpcy5zZXRRdWVzdGlvbkZvcm1Hcm91cChzdXJ2ZXlTdWJRdWVzdGlvbkxldmVsLCBxdWVzdGlvbj8uaXNSZXF1aXJlZCwgcXVlc3Rpb24/LmFuc3dlcklkKTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9TdG9yZTogU3RvcmUsIHByaXZhdGUgX2Zvcm1CdWlsZGVyOiBGb3JtQnVpbGRlciwgcHJpdmF0ZSBfQXBpU2VydmljZTogQXBpU2VydmljZSkge1xyXG4gICAgdGhpcy5yRm9ybSA9IHRoaXMuX2Zvcm1CdWlsZGVyLmdyb3VwPFF1ZXN0aW9uSW5zdGl0dXRpb25zVGVtcGxhdGVGb3JtSW50ZXJmYWNlPih7XHJcbiAgICAgIGlkOiBuZXcgRm9ybUNvbnRyb2wobnVsbCksXHJcbiAgICAgIHRpdGxlOiBuZXcgRm9ybUNvbnRyb2wobnVsbCksXHJcbiAgICAgIG1heExldmVsVmFsdWU6IG5ldyBGb3JtQ29udHJvbChudWxsKSxcclxuICAgICAgaXNEaXNhYmxlZDogbmV3IEZvcm1Db250cm9sKGZhbHNlKSxcclxuICAgICAgaXNTaG93OiBuZXcgRm9ybUNvbnRyb2woZmFsc2UpLFxyXG4gICAgICBpc1JlcXVpcmVkOiBuZXcgRm9ybUNvbnRyb2wobnVsbCksXHJcbiAgICAgIGluc3RpdHV0aW9uSWQ6IG5ldyBGb3JtQ29udHJvbChudWxsKSxcclxuICAgICAgaW5zdGl0dXRpb25UaW1lc3RhbXA6IG5ldyBGb3JtQ29udHJvbChudWxsKSxcclxuICAgICAgaW5zdGl0dXRpb25HZW5lcmF0ZWRJZDogbmV3IEZvcm1Db250cm9sKG51bGwpLFxyXG4gICAgICBwcm9ncmFtUmVsYXRlZFRvSW5zdGl0dXRpb25JZDogbmV3IEZvcm1Db250cm9sKG51bGwpLFxyXG4gICAgICBicmFuY2hJZDogbmV3IEZvcm1Db250cm9sKG51bGwpLFxyXG4gICAgICBjb2xsYWdlSWQ6IG5ldyBGb3JtQ29udHJvbChudWxsKSxcclxuICAgICAgc2VjdGlvbklkOiBuZXcgRm9ybUNvbnRyb2wobnVsbCksXHJcbiAgICAgIHByb2dyYW1JZDogbmV3IEZvcm1Db250cm9sKG51bGwpLFxyXG4gICAgICBxdWVzdGlvbkFycjogdGhpcy5fZm9ybUJ1aWxkZXIuYXJyYXk8Rm9ybUdyb3VwPFF1ZXN0aW9uR3JvdXBDaGlsZE9mUXVlc3Rpb25JbnN0aXR1dGlvbnNUZW1wbGF0ZUZvcm1JbnRlcmZhY2U+PihbXSlcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLl9TdG9yZS5kaXNwYXRjaChzdXJ2ZXlBY3Rpb25zLmxvYWRJbnN0aXR1dGlvbkFycigpKTtcclxuICB9XHJcblxyXG4gIG9uVXBkYXRlQW5zd2VyKG1vZGVsOiB7IGlkOiBzdHJpbmcsIG5hbWU6IHN0cmluZyB9LCBncm91cEluZGV4OiBudW1iZXIpIHtcclxuICAgIHZhciBncm91cCA9IHRoaXMuZkN0cmxzLnF1ZXN0aW9uQXJyLmF0KGdyb3VwSW5kZXgpO1xyXG4gICAgZ3JvdXAucGF0Y2hWYWx1ZSh7XHJcbiAgICAgIGFuc3dlcklkOiBtb2RlbC5pZCxcclxuICAgICAgYW5zd2VyVmFsdWU6IG1vZGVsLm5hbWVcclxuICAgIH0pO1xyXG5cclxuICAgIHRoaXMuX1N0b3JlLmRpc3BhdGNoKHN1cnZleUFjdGlvbnMudXBkYXRlSW5zdGl0dXRpb25RdWVzdGlvbkFuc3dlcih7XHJcbiAgICAgIHF1ZXN0aW9uSWQ6IGdyb3VwLnZhbHVlLmlkLFxyXG4gICAgICBhbnN3ZXJJZDogZ3JvdXAudmFsdWUuYW5zd2VySWQsXHJcbiAgICAgIGFuc3dlcjogZ3JvdXAudmFsdWUuYW5zd2VyVmFsdWUsXHJcbiAgICAgIGlzVmFsaWQ6IGdyb3VwLmNvbnRyb2xzLmFuc3dlcklkLnZhbGlkLFxyXG4gICAgICBhbnN3ZXJMZXZlbElkOiBncm91cC52YWx1ZS5sZXZlbEFuc3dlcklkLFxyXG4gICAgfSkpO1xyXG4gIH1cclxuXHJcbiAgaWRlbnRpZnkoaW5kZXgsIGl0ZW06IEZvcm1Hcm91cDxRdWVzdGlvbkdyb3VwQ2hpbGRPZlF1ZXN0aW9uSW5zdGl0dXRpb25zVGVtcGxhdGVGb3JtSW50ZXJmYWNlPikge1xyXG4gICAgcmV0dXJuIGl0ZW0udmFsdWUuaWQ7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNldFF1ZXN0aW9uRm9ybUdyb3VwKHZhbHVlOiBTdXJ2ZXlTdWJRdWVzdGlvbkxldmVsRHRvLCBpc1JxdWlyZWQ6IGJvb2xlYW4sIGFuc3dlcklkOiBzdHJpbmcpIHtcclxuICAgIHZhciBncm91cCA9IHRoaXMuX2Zvcm1CdWlsZGVyLmdyb3VwPFF1ZXN0aW9uR3JvdXBDaGlsZE9mUXVlc3Rpb25JbnN0aXR1dGlvbnNUZW1wbGF0ZUZvcm1JbnRlcmZhY2U+KHtcclxuICAgICAgaWQ6IG5ldyBGb3JtQ29udHJvbCh2YWx1ZS5xdWVzdGlvbklkKSxcclxuICAgICAgdHlwZUlkOiBuZXcgRm9ybUNvbnRyb2wodmFsdWUucXVlc3Rpb25UeXBlSWQpLFxyXG4gICAgICBuYW1lOiBuZXcgRm9ybUNvbnRyb2wodmFsdWUucXVlc3Rpb25OYW1lKSxcclxuICAgICAgZGVzY3JpcHRpb246IG5ldyBGb3JtQ29udHJvbCh2YWx1ZS5xdWVzdGlvbkRlc2NyaXB0aW9uKSxcclxuICAgICAgdGl0bGU6IG5ldyBGb3JtQ29udHJvbCh2YWx1ZS5xdWVzdGlvblRpdGxlKSxcclxuICAgICAgbGV2ZWw6IG5ldyBGb3JtQ29udHJvbCh2YWx1ZS5sZXZlbCksXHJcbiAgICAgIGxldmVsQW5zd2VySWQ6IG5ldyBGb3JtQ29udHJvbCh2YWx1ZS5sZXZlbEFuc3dlci5hbnN3ZXJJZCksXHJcbiAgICAgIGFuc3dlcklkOiBuZXcgRm9ybUNvbnRyb2wobnVsbCksXHJcbiAgICAgIGFuc3dlclZhbHVlOiBuZXcgRm9ybUNvbnRyb2wobnVsbCksXHJcbiAgICAgIGFuc3dlcnM6IG5ldyBGb3JtQ29udHJvbChbXSksXHJcbiAgICB9KTtcclxuXHJcbiAgICBpZiAoaXNScXVpcmVkID09IHRydWUpIHtcclxuICAgICAgZ3JvdXAuY29udHJvbHMuYW5zd2VySWQuYWRkVmFsaWRhdG9ycyhbVmFsaWRhdG9ycy5yZXF1aXJlZF0pO1xyXG4gICAgICBncm91cC5jb250cm9scy5hbnN3ZXJJZC51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XHJcbiAgICAgIGdyb3VwLmNvbnRyb2xzLmFuc3dlclZhbHVlLmFkZFZhbGlkYXRvcnMoW1ZhbGlkYXRvcnMucmVxdWlyZWRdKTtcclxuICAgICAgZ3JvdXAuY29udHJvbHMuYW5zd2VyVmFsdWUudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xyXG4gICAgfVxyXG5cclxuICAgIGdyb3VwLmNvbnRyb2xzLmFuc3dlcklkLnZhbHVlQ2hhbmdlcy5waXBlKGRpc3RpbmN0VW50aWxDaGFuZ2VkKCkpLnN1YnNjcmliZShhbnN3ZXJJZCA9PiB7XHJcbiAgICAgIGlmIChhbnN3ZXJJZCkge1xyXG4gICAgICAgIGlmICh2YWx1ZS5sZXZlbCA9PSAxKSB7XHJcbiAgICAgICAgICB0aGlzLnJGb3JtLnBhdGNoVmFsdWUoe1xyXG4gICAgICAgICAgICBpbnN0aXR1dGlvbklkOiBhbnN3ZXJJZCxcclxuICAgICAgICAgICAgaW5zdGl0dXRpb25UaW1lc3RhbXA6IHRoaXMuaW5zdGl0dXRpb25zUXVlc3Rpb25BcnIoKS5maW5kKHggPT4geC5pZCA9PSBhbnN3ZXJJZCk/LnJlcXVlc3RUaW1lc3RhbXAsXHJcbiAgICAgICAgICAgIGluc3RpdHV0aW9uR2VuZXJhdGVkSWQ6IHRoaXMuaW5zdGl0dXRpb25zUXVlc3Rpb25BcnIoKS5maW5kKHggPT4geC5pZCA9PSBhbnN3ZXJJZCk/LmdlbmVyYXRlZElkLFxyXG4gICAgICAgICAgICBicmFuY2hJZDogbnVsbCxcclxuICAgICAgICAgICAgY29sbGFnZUlkOiBudWxsLFxyXG4gICAgICAgICAgICBzZWN0aW9uSWQ6IG51bGxcclxuICAgICAgICAgIH0sIHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZiAodmFsdWUubGV2ZWwgPT0gMikge1xyXG4gICAgICAgICAgdGhpcy5yRm9ybS5wYXRjaFZhbHVlKHtcclxuICAgICAgICAgICAgcHJvZ3JhbUlkOiBhbnN3ZXJJZFxyXG4gICAgICAgICAgfSwgeyBlbWl0RXZlbnQ6IGZhbHNlIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmICh2YWx1ZS5sZXZlbCA9PSAzKSB7XHJcbiAgICAgICAgICB0aGlzLnJGb3JtLnBhdGNoVmFsdWUoe1xyXG4gICAgICAgICAgICBicmFuY2hJZDogYW5zd2VySWQsXHJcbiAgICAgICAgICAgIGNvbGxhZ2VJZDogbnVsbCxcclxuICAgICAgICAgICAgc2VjdGlvbklkOiBudWxsXHJcbiAgICAgICAgICB9LCB7IGVtaXRFdmVudDogZmFsc2UgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYgKHZhbHVlLmxldmVsID09IDQpIHtcclxuICAgICAgICAgIHRoaXMuckZvcm0ucGF0Y2hWYWx1ZSh7XHJcbiAgICAgICAgICAgIGNvbGxhZ2VJZDogYW5zd2VySWQsXHJcbiAgICAgICAgICAgIHNlY3Rpb25JZDogbnVsbFxyXG4gICAgICAgICAgfSwgeyBlbWl0RXZlbnQ6IGZhbHNlIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmICh2YWx1ZS5sZXZlbCA9PSA1KSB7XHJcbiAgICAgICAgICB0aGlzLnJGb3JtLnBhdGNoVmFsdWUoe1xyXG4gICAgICAgICAgICBzZWN0aW9uSWQ6IGFuc3dlcklkXHJcbiAgICAgICAgICB9LCB7IGVtaXRFdmVudDogZmFsc2UgfSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBjb25zdCBsZXZlbCA9IGdyb3VwLnZhbHVlLmxldmVsO1xyXG5cclxuICAgICAgICBpZihsZXZlbCAhPSAyKXtcclxuICAgICAgICB0aGlzLnJlc2V0QW5zd2Vyc09mRm9ybUdyb3VwaW5IaWdoZXJMZXZlbChsZXZlbCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB2YXIgbmV4dEdyb3VwSW5kZXggPSB0aGlzLmZDdHJscy5xdWVzdGlvbkFyci5jb250cm9scy5maW5kSW5kZXgoeCA9PiB4LnZhbHVlLmxldmVsID09IGxldmVsICsgMSk7XHJcbiAgICAgICAgaWYgKG5leHRHcm91cEluZGV4ICkge1xyXG4gICAgICAgICAgdGhpcy5maWxsUXVlc3Rpb25BbnN3ZXJzKG5leHRHcm91cEluZGV4KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICAgIGdyb3VwLmNvbnRyb2xzLmFuc3dlcnMudmFsdWVDaGFuZ2VzLnBpcGUoZGlzdGluY3RVbnRpbENoYW5nZWQoKSkuc3Vic2NyaWJlKHZhbHVlID0+IHtcclxuICAgICAgY29uc3QgZ3JvdXBJbmRleCA9IHRoaXMuZkN0cmxzLnF1ZXN0aW9uQXJyLmNvbnRyb2xzLmZpbmRJbmRleCh4ID0+IHgudmFsdWUubGV2ZWwgPT0gZ3JvdXAudmFsdWUubGV2ZWwpO1xyXG4gICAgICB2YXIgcXVlc3Rpb25Hcm91cCA9IHRoaXMuZkN0cmxzLnF1ZXN0aW9uQXJyLmF0KGdyb3VwSW5kZXgpO1xyXG5cclxuICAgICAgaWYgKHF1ZXN0aW9uR3JvdXApIHtcclxuICAgICAgICBpZiAodmFsdWUubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgaWYgKHRoaXMuZkN0cmxzLmlzUmVxdWlyZWQudmFsdWUgPT0gdHJ1ZSkge1xyXG4gICAgICAgICAgICBxdWVzdGlvbkdyb3VwLmNvbnRyb2xzLmFuc3dlcklkLmFkZFZhbGlkYXRvcnMoW1ZhbGlkYXRvcnMucmVxdWlyZWRdKTtcclxuICAgICAgICAgICAgcXVlc3Rpb25Hcm91cC5jb250cm9scy5hbnN3ZXJWYWx1ZS5hZGRWYWxpZGF0b3JzKFtWYWxpZGF0b3JzLnJlcXVpcmVkXSk7XHJcblxyXG4gICAgICAgICAgICB0aGlzLl9TdG9yZS5kaXNwYXRjaChzdXJ2ZXlBY3Rpb25zLnVwZGF0ZVF1ZXN0aW9uUmVxdWlyZWQoeyBxdWVzdGlvbklkOiBncm91cC52YWx1ZS5pZCwgaXNSZXF1aXJlZDogdHJ1ZSB9KSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHF1ZXN0aW9uR3JvdXAuY29udHJvbHMuYW5zd2VySWQuY2xlYXJWYWxpZGF0b3JzKCk7XHJcbiAgICAgICAgICBxdWVzdGlvbkdyb3VwLmNvbnRyb2xzLmFuc3dlclZhbHVlLmNsZWFyVmFsaWRhdG9ycygpO1xyXG5cclxuICAgICAgICAgIHRoaXMuX1N0b3JlLmRpc3BhdGNoKHN1cnZleUFjdGlvbnMudXBkYXRlUXVlc3Rpb25SZXF1aXJlZCh7IHF1ZXN0aW9uSWQ6IGdyb3VwLnZhbHVlLmlkLCBpc1JlcXVpcmVkOiBmYWxzZSB9KSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBxdWVzdGlvbkdyb3VwLmNvbnRyb2xzLmFuc3dlcklkLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKTtcclxuICAgICAgICBxdWVzdGlvbkdyb3VwLmNvbnRyb2xzLmFuc3dlclZhbHVlLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKTtcclxuICAgICAgfVxyXG5cclxuICAgIH0pO1xyXG5cclxuICAgIGlmIChhbnN3ZXJJZCkge1xyXG4gICAgICBncm91cC5jb250cm9scy5hbnN3ZXJJZC5zZXRWYWx1ZShhbnN3ZXJJZCk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5mQ3RybHMucXVlc3Rpb25BcnIucHVzaChncm91cCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGZpbGxRdWVzdGlvbkFuc3dlcnMobmV4dEdyb3VwSW5kZXg6IG51bWJlcikge1xyXG4gICAgY29uc3QgZm9ybVZhbHVlID0gdGhpcy5yRm9ybS52YWx1ZTtcclxuICAgIHZhciBncm91cCA9IHRoaXMuZkN0cmxzLnF1ZXN0aW9uQXJyLmF0KG5leHRHcm91cEluZGV4KTtcclxuICAgIGlmIChncm91cCkge1xyXG4gICAgICBpZiAoZ3JvdXAudmFsdWUubGV2ZWwgPT0gMikge1xyXG4gICAgICAgIHRoaXMuX0FwaVNlcnZpY2UuZ2V0QWxsUHJvZ3JhbXNSZWxhdGVkVG9JbnN0aXR1dGlvbnMoe1xyXG4gICAgICAgICAgc3VibWlzc2lvbklkOiBmb3JtVmFsdWUuaW5zdGl0dXRpb25JZCxcclxuICAgICAgICAgIGdlbmVyYXRlZElkOiBmb3JtVmFsdWUuaW5zdGl0dXRpb25HZW5lcmF0ZWRJZCwgcmVxdWVzdFRpbWVzdGFtcDogZm9ybVZhbHVlLmluc3RpdHV0aW9uVGltZXN0YW1wXHJcbiAgICAgICAgfSkucGlwZSh0YWtlKDEpKS5zdWJzY3JpYmUocmVzID0+IHtcclxuICAgICAgICAgIGdyb3VwLmNvbnRyb2xzLmFuc3dlcnMuc2V0VmFsdWUocmVzLnJlc3BvbnNlRGV0YWlscy5tYXAoeCA9PiB7XHJcbiAgICAgICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgICAgaWQ6IHguZ2VuZXJhdGVkS2V5LFxyXG4gICAgICAgICAgICAgIG5hbWU6IHRoaXMuaXNBcmFiaWNMYW5nID09IHRydWUgPyB4LnByb2dyYW1OYW1lQXJhYmljIDogeC5wcm9ncmFtTmFtZUVuZ2xpc2hcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfSkpO1xyXG4gICAgICAgIH0pO1xyXG5cclxuICAgICAgICB0aGlzLl9BcGlTZXJ2aWNlLmdldEFsbEJyYW5jaGVzKHsgc3VibWlzc2lvbklkOiBmb3JtVmFsdWUuaW5zdGl0dXRpb25JZCwgcmVxdWVzdFRpbWVzdGFtcDogZm9ybVZhbHVlLmluc3RpdHV0aW9uVGltZXN0YW1wIH0pLnBpcGUodGFrZSgxKSkuc3Vic2NyaWJlKHJlcyA9PiB7XHJcbiAgICAgICAgICB0aGlzLmZDdHJscy5xdWVzdGlvbkFyci5hdChuZXh0R3JvdXBJbmRleCArIDEpLmNvbnRyb2xzLmFuc3dlcnMuc2V0VmFsdWUocmVzLnJlc3BvbnNlRGV0YWlscy5tYXAoeCA9PiB7XHJcbiAgICAgICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgICAgaWQ6IHguYnJhbmNoU3VibWlzc2lvbklkLFxyXG4gICAgICAgICAgICAgIG5hbWU6IHRoaXMuaXNBcmFiaWNMYW5nID09IHRydWUgPyB4LmJyYW5jaE5hbWVJbkFyYWJpYyA6IHguYnJhbmNoTmFtZUluRW5nbGlzaFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9KSk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgICAgZWxzZSBpZiAoZ3JvdXAudmFsdWUubGV2ZWwgPT0gNCkge1xyXG4gICAgICAgIHRoaXMuX0FwaVNlcnZpY2UuZ2V0QWxsQ29sbGFnZXMoeyBzdWJtaXNzaW9uSWQ6IGZvcm1WYWx1ZS5pbnN0aXR1dGlvbklkLCBicmFuY2hTdWJtaXNzaW9uSWQ6IGZvcm1WYWx1ZS5icmFuY2hJZCwgcmVxdWVzdFRpbWVzdGFtcDogZm9ybVZhbHVlLmluc3RpdHV0aW9uVGltZXN0YW1wIH0pLnBpcGUodGFrZSgxKSkuc3Vic2NyaWJlKHJlcyA9PiB7XHJcbiAgICAgICAgICBncm91cC5jb250cm9scy5hbnN3ZXJzLnNldFZhbHVlKHJlcy5yZXNwb25zZURldGFpbHMubWFwKHggPT4ge1xyXG4gICAgICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICAgIGlkOiB4LmNvbGxhZ2VTdWJtaXNzaW9uSWQsXHJcbiAgICAgICAgICAgICAgbmFtZTogdGhpcy5pc0FyYWJpY0xhbmcgPT0gdHJ1ZSA/IHguY29sbGFnZU5hbWVJbkFyYWJpYyA6IHguY29sbGFnZU5hbWVJbkVuZ2xpc2hcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfSkpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2UgaWYgKGdyb3VwLnZhbHVlLmxldmVsID09IDUpIHtcclxuICAgICAgICB0aGlzLl9BcGlTZXJ2aWNlLmdldEFsbFNlY3Rpb25zKHsgc3VibWlzc2lvbklkOiBmb3JtVmFsdWUuaW5zdGl0dXRpb25JZCwgY29sbGFnZVN1Ym1pc3Npb25JZDogZm9ybVZhbHVlLmNvbGxhZ2VJZCwgcmVxdWVzdFRpbWVzdGFtcDogZm9ybVZhbHVlLmluc3RpdHV0aW9uVGltZXN0YW1wIH0pLnBpcGUodGFrZSgxKSkuc3Vic2NyaWJlKHJlcyA9PiB7XHJcbiAgICAgICAgICBncm91cC5jb250cm9scy5hbnN3ZXJzLnNldFZhbHVlKHJlcy5yZXNwb25zZURldGFpbHMubWFwKHggPT4ge1xyXG4gICAgICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICAgIGlkOiB4LmdlbmVyYXRlZEtleSxcclxuICAgICAgICAgICAgICBuYW1lOiB0aGlzLmlzQXJhYmljTGFuZyA9PSB0cnVlID8geC5zZWN0aW9uTmFtZUluQXJhYmljIDogeC5zZWN0aW9uTmFtZUluRW5nbGlzaFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9KSk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgICAgZWxzZSBpZiAoZ3JvdXAudmFsdWUubGV2ZWwgPT0gNikge1xyXG4gICAgICAgIHRoaXMuX0FwaVNlcnZpY2UuZ2V0QWxsUHJvZ3JhbXMoeyBzdWJtaXNzaW9uSWQ6IGZvcm1WYWx1ZS5pbnN0aXR1dGlvbklkLCBzZWN0aW9uR2VuZXJhdGVkS2V5OiBmb3JtVmFsdWUuc2VjdGlvbklkLCByZXF1ZXN0VGltZXN0YW1wOiBmb3JtVmFsdWUuaW5zdGl0dXRpb25UaW1lc3RhbXAgfSkucGlwZSh0YWtlKDEpKS5zdWJzY3JpYmUocmVzID0+IHtcclxuICAgICAgICAgIGdyb3VwLmNvbnRyb2xzLmFuc3dlcnMuc2V0VmFsdWUocmVzLnJlc3BvbnNlRGV0YWlscy5tYXAoeCA9PiB7XHJcbiAgICAgICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgICAgaWQ6IHguZ2VuZXJhdGVkS2V5LFxyXG4gICAgICAgICAgICAgIG5hbWU6IHRoaXMuaXNBcmFiaWNMYW5nID09IHRydWUgPyB4LnByb2dyYW1OYW1lQXJhYmljIDogeC5wcm9ncmFtTmFtZUVuZ2xpc2hcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfSkpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHJlc2V0QW5zd2Vyc09mRm9ybUdyb3VwaW5IaWdoZXJMZXZlbChsZXZlbDogbnVtYmVyKSB7XHJcbiAgICB0aGlzLmZDdHJscy5xdWVzdGlvbkFyci5jb250cm9scy5mb3JFYWNoKChncm91cDogRm9ybUdyb3VwPFF1ZXN0aW9uR3JvdXBDaGlsZE9mUXVlc3Rpb25JbnN0aXR1dGlvbnNUZW1wbGF0ZUZvcm1JbnRlcmZhY2U+KSA9PiB7XHJcbiAgICAgIGlmIChncm91cC52YWx1ZS5sZXZlbCA+IGxldmVsKSB7XHJcbiAgICAgICAgZ3JvdXAucGF0Y2hWYWx1ZSh7XHJcbiAgICAgICAgICBhbnN3ZXJJZDogbnVsbCxcclxuICAgICAgICAgIGFuc3dlclZhbHVlOiBudWxsLFxyXG4gICAgICAgICAgYW5zd2VyczogW11cclxuICAgICAgICB9LCB7IGVtaXRFdmVudDogZmFsc2UgfSk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICB9XHJcblxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJxdWFzdGlvblwiPlxyXG4gIDxoMyBjbGFzcz1cInF1YXN0aW9uLXRpdGxlIG1iLTJcIj5cclxuICAgIDxzcGFuIFtpbm5lckhUTUxdPVwiZkN0cmxzLnRpdGxlLnZhbHVlXCI+PC9zcGFuPlxyXG4gIDwvaDM+XHJcbiAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaXRlbSBvZiBxdWVzdGlvbkZvcm1BcnJheS5jb250cm9sczsgdHJhY2tCeTppZGVudGlmeSA7IGxldCBpID0gaW5kZXhcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJxdWFzdGlvblwiIFthdHRyLmlkXT1cIidxdWVzdGlvbl8nK2l0ZW0udmFsdWUuaWRcIlxyXG4gICAgICAqbmdJZj1cIml0ZW0udmFsdWUubGV2ZWwgPT0gMSB8fCAoIGl0ZW0udmFsdWUubGV2ZWwgPiAxICYmIGl0ZW0udmFsdWUuYW5zd2Vycy5sZW5ndGggPiAwIClcIlxyXG4gICAgICBbbmdDbGFzc109XCJ7J2ludmFsaWQtcXVlc3Rpb24nOiBpdGVtLmNvbnRyb2xzLmFuc3dlcklkLmludmFsaWQgICwgJ2Qtbm9uZSc6ZkN0cmxzLmlzU2hvdy52YWx1ZSAhPSB0cnVlfVwiPlxyXG4gICAgICA8aDMgY2xhc3M9XCJxdWFzdGlvbi10aXRsZSBcIj5cclxuICAgICAgICA8c3BhbiBbaW5uZXJIVE1MXT1cIml0ZW0udmFsdWUudGl0bGVcIj48L3NwYW4+XHJcbiAgICAgICAgPHNwYW4gc3R5bGU9XCJjb2xvcjogcmVkO1wiICpuZ0lmPVwiZkN0cmxzLmlzUmVxdWlyZWRcIj4qPC9zcGFuPlxyXG4gICAgICA8L2gzPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwidGV4dC1xdWFzdGlvbiB0ZXh0LXF1YXN0aW9uX19kcm9wZG93blwiPlxyXG4gICAgICAgIDxuZy1zZWxlY3QgW2l0ZW1zXT1cIml0ZW0udmFsdWUubGV2ZWwgPT0xID8gaW5zdGl0dXRpb25zUXVlc3Rpb25BcnIoKSA6IGl0ZW0udmFsdWUuYW5zd2Vyc1wiIGJpbmRWYWx1ZT1cImlkXCIgYmluZExhYmVsPVwibmFtZVwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcclxuICAgICAgICAgIFtmb3JtQ29udHJvbF09XCJpdGVtLmNvbnRyb2xzLmFuc3dlcklkXCIgW3ZpcnR1YWxTY3JvbGxdPVwidHJ1ZVwiIFtkaXNhYmxlZF09XCJmQ3RybHMuaXNEaXNhYmxlZC52YWx1ZVwiIChjaGFuZ2UpPVwib25VcGRhdGVBbnN3ZXIoJGV2ZW50LGkpXCJcclxuICAgICAgICAgIFttdWx0aXBsZV09XCJmYWxzZVwiPlxyXG4gICAgICAgIDwvbmctc2VsZWN0PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG5cclxuICA8L25nLWNvbnRhaW5lcj5cclxuPC9kaXY+XHJcblxyXG4iXX0=
|
package/esm2022/lib/components/question-matrix-template/question-matrix-template.component.mjs
CHANGED
|
@@ -32,6 +32,9 @@ export class QuestionMatrixTemplateComponent {
|
|
|
32
32
|
questionTitle: new FormControl(x.questionTitle),
|
|
33
33
|
answer: new FormControl(null),
|
|
34
34
|
});
|
|
35
|
+
if (value.isShow == true) {
|
|
36
|
+
this.fCtrls.isShow.setValue(value.isShow);
|
|
37
|
+
}
|
|
35
38
|
if (value.isRequired == true) {
|
|
36
39
|
group.controls.answer.addValidators([Validators.required]);
|
|
37
40
|
group.controls.answer.updateValueAndValidity();
|
|
@@ -123,4 +126,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImpor
|
|
|
123
126
|
}], ctorParameters: function () { return [{ type: i1.FormBuilder }, { type: i2.SurveyLibService }, { type: i3.Store }]; }, propDecorators: { setQuestion: [{
|
|
124
127
|
type: Input
|
|
125
128
|
}] } });
|
|
126
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlc3Rpb24tbWF0cml4LXRlbXBsYXRlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3N1cnZlcnktbGliL3NyYy9saWIvY29tcG9uZW50cy9xdWVzdGlvbi1tYXRyaXgtdGVtcGxhdGUvcXVlc3Rpb24tbWF0cml4LXRlbXBsYXRlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3N1cnZlcnktbGliL3NyYy9saWIvY29tcG9uZW50cy9xdWVzdGlvbi1tYXRyaXgtdGVtcGxhdGUvcXVlc3Rpb24tbWF0cml4LXRlbXBsYXRlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWdCLEtBQUssRUFBa0IsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUFlLFdBQVcsRUFBYSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUtqRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUc1RSxPQUFPLEVBQUUsRUFBRSxJQUFJLGFBQWEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUUzQyxPQUFPLEVBQUUsWUFBWSxFQUF3QixNQUFNLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUdqRixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sOENBQThDLENBQUM7QUFFN0UsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sa0RBQWtELENBQUM7Ozs7OztBQU9yRixNQUFNLE9BQU8sK0JBQStCO0lBTTFDLElBQUksTUFBTTtRQUNSLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUM7SUFDN0IsQ0FBQztJQUVELElBQUksZ0JBQWdCO1FBQ2xCLE9BQU8sZ0JBQWdCLENBQUM7SUFDMUIsQ0FBQztJQUVELElBQWEsV0FBVyxDQUFDLEtBQXdCO1FBQy9DLElB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SW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtQ29udHJvbCwgRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBTdXJ2ZXlBbnN3ZXJEdG8gfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvZHRvcy9zdXJ2ZXktYW5zd2VyLmR0byc7XHJcbmltcG9ydCB7IFN1cnZleVF1ZXN0aW9uR3JvdXBEdG8gfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvZHRvcy9zdXJ2ZXktcXVlc3Rpb24tZ3JvdXAuZHRvJztcclxuaW1wb3J0IHsgU3VydmV5UXVlc3Rpb25EdG8gfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvZHRvcy9zdXJ2ZXktcXVlc3Rpb24uZHRvJztcclxuaW1wb3J0IHsgU3VydmV5U3ViUXVlc3Rpb25EdG8gfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvZHRvcy9zdXJ2ZXktc3ViLXF1ZXN0aW9uLmR0byc7XHJcbmltcG9ydCB7IFF1ZXN0aW9uVHlwZUVudW0gfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvZW51bXMvcXVlc3Rpb24tdHlwZS5lbnVtJztcclxuaW1wb3J0IHsgUXVlc3Rpb25NYXRyaXhUZW1wbGF0ZUZvcm1JbnRlcmZhY2UsIFN1YlF1ZXN0aW9uQ2hpbGRPZlF1ZXN0aW9uTWF0cml4VGVtcGxhdGVGb3JtSW50ZXJmYWNlIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL2Zvcm0taW50ZXJmYWNlcy9xdWVzdGlvbi1tYXRyaXgtdGVtcGxhdGUuZm9ybS1pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBRdWVzdGlvbkFuc3dlck1vZGVsIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL21vZGVscy9xdWVzdGlvbi1hbnN3ZXIubW9kZWwnO1xyXG5pbXBvcnQgeyB2NCBhcyBndWlkR2VuZXJhdG9yIH0gZnJvbSAndXVpZCc7XHJcbmltcG9ydCB7IERlZmF1bHRRdWVzdGlvbkFuc3dlckR0byB9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9kdG9zL2RlZmF1bHQtcXVlc3Rpb24tYW5zd2Vycy5kdG8nO1xyXG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBmaWx0ZXIsIG1hcCwgcGFpcndpc2UgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgU3VydmV5TGliU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3N1cnZleS1saWIuc2VydmljZSc7XHJcbmltcG9ydCB7IFF1ZXN0aW9uTmdyeE1vZGVsIH0gZnJvbSAnLi4vLi4vY29yZS9zdGF0ZXMvZW50aXRlcy9xdWVzdGlvbi5lbnRpdHknO1xyXG5pbXBvcnQgeyBzdXJ2ZXlBY3Rpb25zIH0gZnJvbSAnLi4vLi4vY29yZS9zdGF0ZXMvc3VydmV5LXN0b3JlL3N1cnZleS5hY3Rpb24nO1xyXG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcclxuaW1wb3J0IHsgcXVlc3Rpb25TZWxlY3RvcnMgfSBmcm9tICcuLi8uLi9jb3JlL3N0YXRlcy9zdXJ2ZXktc3RvcmUvcXVlc3Rpb24uc2VsZWN0b3InO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItcXVlc3Rpb24tbWF0cml4LXRlbXBsYXRlJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vcXVlc3Rpb24tbWF0cml4LXRlbXBsYXRlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9xdWVzdGlvbi1tYXRyaXgtdGVtcGxhdGUuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgUXVlc3Rpb25NYXRyaXhUZW1wbGF0ZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgZWxlbUlkID0gZ3VpZEdlbmVyYXRvcigpIGFzIHN0cmluZztcclxuICBzdXJ2ZXlRdWVzdGlvbjogU3VydmV5UXVlc3Rpb25EdG87XHJcbiAgckZvcm06IEZvcm1Hcm91cDxRdWVzdGlvbk1hdHJpeFRlbXBsYXRlRm9ybUludGVyZmFjZT47XHJcbiAgcXVlc3Rpb25BcnIgPSB0aGlzLl9TdG9yZS5zZWxlY3RTaWduYWwocXVlc3Rpb25TZWxlY3RvcnMucGFnZVF1ZXN0aW9ucyk7XHJcblxyXG4gIGdldCBmQ3RybHMoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5yRm9ybS5jb250cm9scztcclxuICB9XHJcblxyXG4gIGdldCBxdWVzdGlvblR5cGVFbnVtKCkge1xyXG4gICAgcmV0dXJuIFF1ZXN0aW9uVHlwZUVudW07XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKSBzZXQgc2V0UXVlc3Rpb24odmFsdWU6IFF1ZXN0aW9uTmdyeE1vZGVsKSB7XHJcbiAgICBpZiAoIXRoaXMuc3VydmV5UXVlc3Rpb24pIHtcclxuICAgICAgdGhpcy5zdXJ2ZXlRdWVzdGlvbiA9IHZhbHVlLnF1ZXN0aW9uQWxsSW5mbztcclxuICAgICAgdGhpcy5yRm9ybS5wYXRjaFZhbHVlKHtcclxuICAgICAgICBpZDogdmFsdWUucXVlc3Rpb25JZCxcclxuICAgICAgICB0eXBlSWQ6IHZhbHVlLnF1ZXN0aW9uQWxsSW5mby5xdWVzdGlvblR5cGVJZCxcclxuICAgICAgICBpc0Rpc2FibGVkOiB2YWx1ZS5xdWVzdGlvbkFsbEluZm8uaXNSZWFkT25seSxcclxuICAgICAgICBpc1Nob3c6IHZhbHVlLnF1ZXN0aW9uQWxsSW5mby5pc1Zpc2FibGVcclxuICAgICAgfSk7XHJcblxyXG4gICAgICB2YWx1ZS5xdWVzdGlvbkFsbEluZm8uc3VydmV5U3ViUXVlc3Rpb25zLmZvckVhY2goeCA9PiB7XHJcbiAgICAgICAgdmFyIGdyb3VwID0gdGhpcy5fZm9ybUJ1aWxkZXIuZ3JvdXA8U3ViUXVlc3Rpb25DaGlsZE9mUXVlc3Rpb25NYXRyaXhUZW1wbGF0ZUZvcm1JbnRlcmZhY2U+KHtcclxuICAgICAgICAgIHN1YlF1ZXN0aW9uSWQ6IG5ldyBGb3JtQ29udHJvbCh4LnF1ZXN0aW9uSWQpLFxyXG4gICAgICAgICAgcXVlc3Rpb25UaXRsZTogbmV3IEZvcm1Db250cm9sKHgucXVlc3Rpb25UaXRsZSksXHJcbiAgICAgICAgICBhbnN3ZXI6IG5ldyBGb3JtQ29udHJvbChudWxsKSxcclxuICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgaWYgKHZhbHVlLmlzUmVxdWlyZWQgPT0gdHJ1ZSkge1xyXG4gICAgICAgICAgZ3JvdXAuY29udHJvbHMuYW5zd2VyLmFkZFZhbGlkYXRvcnMoW1ZhbGlkYXRvcnMucmVxdWlyZWRdKTtcclxuICAgICAgICAgIGdyb3VwLmNvbnRyb2xzLmFuc3dlci51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBncm91cC5jb250cm9scy5hbnN3ZXIudmFsdWVDaGFuZ2VzLnBpcGUoKS5waXBlKGRlYm91bmNlVGltZSgyMDApKS5zdWJzY3JpYmUodmFsdWUgPT4ge1xyXG4gICAgICAgICAgY29uc3QgZm9ybVZhbHVlID0gdGhpcy5yRm9ybS52YWx1ZTtcclxuICAgICAgICAgIHRoaXMuX1N0b3JlLmRpc3BhdGNoKHN1cnZleUFjdGlvbnMudXBkYXRlUXVlc3Rpb25BbnN3ZXIoe1xyXG4gICAgICAgICAgICBxdWVzdGlvbklkOiBncm91cC52YWx1ZS5zdWJRdWVzdGlvbklkLFxyXG4gICAgICAgICAgICBhbnN3ZXI6IGdyb3VwLnZhbHVlLmFuc3dlcixcclxuICAgICAgICAgICAgaXNWYWxpZDogZ3JvdXAuY29udHJvbHMuYW5zd2VyLnZhbGlkXHJcbiAgICAgICAgICB9KSk7XHJcbiAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIHZhciBxdWVzdGlvbiA9IHRoaXMucXVlc3Rpb25BcnIoKS5maW5kKHggPT4geC5xdWVzdGlvbklkID09IGdyb3VwLnZhbHVlLnN1YlF1ZXN0aW9uSWQpO1xyXG4gICAgICAgIGlmIChxdWVzdGlvbiAhPSBudWxsKSB7XHJcbiAgICAgICAgICBncm91cC5jb250cm9scy5hbnN3ZXIuc2V0VmFsdWUocXVlc3Rpb24uYW5zd2VySWQsIHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoaXMuZkN0cmxzLnN1YlF1ZXN0aW9uQXJyYXkucHVzaChncm91cCk7XHJcbiAgICAgIH0pO1xyXG5cclxuICAgICAgdmFyIG1hdHJpeFF1ZXN0aW9uID0gdGhpcy5xdWVzdGlvbkFycigpLmZpbmQoeCA9PiB4LnBhcmVudFF1ZXN0aW9uSWQgPT0gdGhpcy5mQ3RybHMuaWQudmFsdWUpO1xyXG4gICAgICBpZiAobWF0cml4UXVlc3Rpb24pIHtcclxuICAgICAgICB0aGlzLnJGb3JtLnBhdGNoVmFsdWUoe1xyXG4gICAgICAgICAgaXNEaXNhYmxlZDogbWF0cml4UXVlc3Rpb24uaXNEaXNhYmxlZCxcclxuICAgICAgICAgIGlzU2hvdzogbWF0cml4UXVlc3Rpb24uaXNTaG93XHJcbiAgICAgICAgfSwgeyBlbWl0RXZlbnQ6IGZhbHNlIH0pXHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX2Zvcm1CdWlsZGVyOiBGb3JtQnVpbGRlciwgcHJpdmF0ZSBfc3VydmV5TGliU2VydmljZTogU3VydmV5TGliU2VydmljZSxcclxuICAgIHByaXZhdGUgX1N0b3JlOiBTdG9yZSkge1xyXG4gICAgdGhpcy5yRm9ybSA9IHRoaXMuX2Zvcm1CdWlsZGVyLmdyb3VwPFF1ZXN0aW9uTWF0cml4VGVtcGxhdGVGb3JtSW50ZXJmYWNlPih7XHJcbiAgICAgIGlkOiBuZXcgRm9ybUNvbnRyb2wobnVsbCksXHJcbiAgICAgIHR5cGVJZDogbmV3IEZvcm1Db250cm9sKG51bGwpLFxyXG4gICAgICBpc0Rpc2FibGVkOiBuZXcgRm9ybUNvbnRyb2woZmFsc2UpLFxyXG4gICAgICBpc1Nob3c6IG5ldyBGb3JtQ29udHJvbCh0cnVlKSxcclxuICAgICAgc3ViUXVlc3Rpb25BcnJheTogdGhpcy5fZm9ybUJ1aWxkZXIuYXJyYXk8Rm9ybUdyb3VwPFN1YlF1ZXN0aW9uQ2hpbGRPZlF1ZXN0aW9uTWF0cml4VGVtcGxhdGVGb3JtSW50ZXJmYWNlPj4oW10pXHJcbiAgICB9KTtcclxuICB9XHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcblxyXG4gICAgdGhpcy5fU3RvcmUuc2VsZWN0KHF1ZXN0aW9uU2VsZWN0b3JzLnBhZ2VRdWVzdGlvbnMpLnBpcGUobWFwKGFyciA9PiBhcnIuZmluZCh4ID0+IHgucXVlc3Rpb25JZCA9PSB0aGlzLmZDdHJscy5pZC52YWx1ZSkpKVxyXG4gICAgICAucGlwZShmaWx0ZXIoeCA9PiB4ICE9IG51bGwpLCBwYWlyd2lzZSgpKS5zdWJzY3JpYmUodmFsdWUgPT4ge1xyXG4gICAgICAgIGNvbnN0IG9sZFZhbHVlID0gdmFsdWVbMF07XHJcbiAgICAgICAgY29uc3QgbmV3VmFsdWUgPSB2YWx1ZVsxXTtcclxuXHJcbiAgICAgICAgLy91cGRhdGVkIGlzRGlzYWJsZWRcclxuICAgICAgICBpZiAob2xkVmFsdWU/LmlzRGlzYWJsZWQgIT0gbmV3VmFsdWU/LmlzRGlzYWJsZWQpIHtcclxuICAgICAgICAgIHRoaXMuZkN0cmxzLmlzRGlzYWJsZWQuc2V0VmFsdWUobmV3VmFsdWU/LmlzRGlzYWJsZWQpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy91cGRhdGVkIGlzU2hvd1xyXG4gICAgICAgIGlmIChvbGRWYWx1ZT8uaXNTaG93ICE9IG5ld1ZhbHVlPy5pc1Nob3cpIHtcclxuICAgICAgICAgIHRoaXMuZkN0cmxzLmlzU2hvdy5zZXRWYWx1ZShuZXdWYWx1ZT8uaXNTaG93KTtcclxuXHJcbiAgICAgICAgICAvLyBpZiAobmV3VmFsdWU/LmlzU2hvdyA9PSBmYWxzZSkge1xyXG4gICAgICAgICAgLy8gICB0aGlzLmZDdHJscy5hbnN3ZXIuc2V0VmFsdWUobnVsbCk7XHJcbiAgICAgICAgICAvLyB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuXHJcblxyXG4gICAgdGhpcy5fU3RvcmUuc2VsZWN0KHF1ZXN0aW9uU2VsZWN0b3JzLnBhZ2VRdWVzdGlvbnMpLnBpcGUobWFwKGFyciA9PiBhcnIuZmlsdGVyKHggPT4geC5wYXJlbnRRdWVzdGlvbklkID09IHRoaXMuZkN0cmxzLmlkLnZhbHVlKSkpXHJcbiAgICAgIC5waXBlKGZpbHRlcih4ID0+IHgubGVuZ3RoID4gMCkpLnN1YnNjcmliZShxdWVzdGlvbnMgPT4ge1xyXG5cclxuICAgICAgICAvL1VwZGF0ZSBBbnN3ZXJzXHJcbiAgICAgICAgdGhpcy5mQ3RybHMuc3ViUXVlc3Rpb25BcnJheS5jb250cm9scy5mb3JFYWNoKGdyb3VwID0+IHtcclxuICAgICAgICAgIHZhciBxdWVzdGlvbiA9IHF1ZXN0aW9ucy5maW5kKHggPT4geC5xdWVzdGlvbklkID09IGdyb3VwLnZhbHVlLnN1YlF1ZXN0aW9uSWQpO1xyXG4gICAgICAgICAgaWYgKHF1ZXN0aW9uICE9IG51bGwpIHtcclxuICAgICAgICAgICAgZ3JvdXAuY29udHJvbHMuYW5zd2VyLnNldFZhbHVlKHF1ZXN0aW9uLmFuc3dlcklkLCB7IGVtaXRFdmVudDogZmFsc2UgfSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSlcclxuICAgICAgfSk7XHJcblxyXG4gIH1cclxuXHJcbiAgb25DaGFuZ2VBbnN3ZXIocXVlc3Rpb246IEZvcm1Hcm91cDxTdWJRdWVzdGlvbkNoaWxkT2ZRdWVzdGlvbk1hdHJpeFRlbXBsYXRlRm9ybUludGVyZmFjZT4sIGFuc3dlcjogU3VydmV5QW5zd2VyRHRvKSB7XHJcbiAgICBjb25zdCBpbmRleCA9IHRoaXMuZkN0cmxzLnN1YlF1ZXN0aW9uQXJyYXkudmFsdWUuZmluZEluZGV4KHggPT4geC5zdWJRdWVzdGlvbklkID09IHF1ZXN0aW9uLnZhbHVlLnN1YlF1ZXN0aW9uSWQpO1xyXG4gICAgdmFyIHN1YlF1ZXN0aW9uR3JvdXAgPSB0aGlzLmZDdHJscy5zdWJRdWVzdGlvbkFycmF5LmNvbnRyb2xzW2luZGV4XTtcclxuXHJcbiAgICBzdWJRdWVzdGlvbkdyb3VwLmNvbnRyb2xzLmFuc3dlci5zZXRWYWx1ZShhbnN3ZXIuYW5zd2VySWQpO1xyXG5cclxuICAgIC8vIHRoaXMuZW1pdHRlci5lbWl0KHtcclxuICAgIC8vICAgUXVlc3Rpb25JZDogc3ViUXVlc3Rpb25Hcm91cC52YWx1ZS5zdWJRdWVzdGlvbklkLFxyXG4gICAgLy8gICBBbnN3ZXI6IHN1YlF1ZXN0aW9uR3JvdXAudmFsdWUuYW5zd2VyLFxyXG4gICAgLy8gICBJc1ZhbGlkOiBzdWJRdWVzdGlvbkdyb3VwLmNvbnRyb2xzLmFuc3dlci52YWxpZFxyXG4gICAgLy8gfSk7XHJcbiAgfVxyXG5cclxuICBjb252ZXJ0VG9Gb3JtQ29udHJvbChlbGVtZW50OiBhbnkpIHtcclxuICAgIHJldHVybiBlbGVtZW50IGFzIEZvcm1Db250cm9sO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwicXVhc3Rpb25cIiBbYXR0ci5pZF09XCIncXVlc3Rpb25fJytmQ3RybHMuaWQudmFsdWVcIiBzdHlsZT1cIiBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1wiXHJcbltuZ0NsYXNzXT1cInsnZC1ub25lJzpmQ3RybHMuaXNTaG93LnZhbHVlICE9IHRydWV9XCI+XHJcbiAgPGgzIGNsYXNzPVwicXVhc3Rpb24tdGl0bGUgXCI+XHJcbiAgICA8c3BhbiBbaW5uZXJIVE1MXT1cInN1cnZleVF1ZXN0aW9uPy5xdWVzdGlvblRpdGxlXCI+PC9zcGFuPlxyXG4gICAgPHNwYW4gc3R5bGU9XCJjb2xvcjogcmVkO1wiICpuZ0lmPVwic3VydmV5UXVlc3Rpb24uaXNSZXF1aXJlZFwiPio8L3NwYW4+XHJcbiAgPC9oMz5cclxuICA8ZGl2IGNsYXNzPVwibWF0cml4LXF1ZXN0aW9uXCIgW2Zvcm1Hcm91cF09XCJyRm9ybVwiPlxyXG4gICAgPGRpdiBjbGFzcz1cIm1hdHJpeC10YWJsZVwiIGZvcm1BcnJheU5hbWU9XCJzdWJRdWVzdGlvbkFycmF5XCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJtYXRyaXgtaGVhZC1yb3dcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwibWF0cml4LWNvbFwiPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJtYXRyaXgtY29sXCIgKm5nRm9yPVwibGV0IGFuc3dlcnMgb2Ygc3VydmV5UXVlc3Rpb24/LnN1cnZleUFuc3dlcnNcIiA+XHJcbiAgICAgICAgICA8c3BhbiBbaW5uZXJIVE1MXT1cImFuc3dlcnMuYW5zd2VyVGl0bGVcIj48L3NwYW4+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPGRpdiBjbGFzcz1cIm1hdHJpeC1yb3dcIiAgW2F0dHIuaWRdPVwiJ3F1ZXN0aW9uXycrcXVlc3Rpb25Hcm91cC52YWx1ZS5zdWJRdWVzdGlvbklkXCJcclxuICAgICAgICAqbmdGb3I9XCJsZXQgcXVlc3Rpb25Hcm91cCBvZiBmQ3RybHMuc3ViUXVlc3Rpb25BcnJheS5jb250cm9scyA7bGV0IHN1YlF1ZXN0aW9uSW5kZXggPSBpbmRleFwiXHJcbiAgICAgICAgW25nQ2xhc3NdPVwieydpbnZhbGlkLXF1ZXN0aW9uJzogcXVlc3Rpb25Hcm91cC5jb250cm9scy5hbnN3ZXIuaW52YWxpZH1cIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwibWF0cml4LWNvbCBtYXRyaXgtc3ViLXF1YXN0aW9uXCIgW2lubmVySFRNTF09XCJxdWVzdGlvbkdyb3VwLnZhbHVlLnF1ZXN0aW9uVGl0bGVcIj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwibWF0cml4LWNvbCBhbnN3ZXJfX2NvbnRhaW5lclwiICpuZ0Zvcj1cImxldCBhbnN3ZXIgb2Ygc3VydmV5UXVlc3Rpb24/LnN1cnZleUFuc3dlcnM7bGV0IGFuc3dlckluZGV4ID0gaW5kZXhcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWNoZWNrIGZvcm0tY2hlY2stcmFkaW8gZm9ybS1jaGVjay1pbmxpbmVcIj5cclxuICAgICAgICAgICAgPGlucHV0IGNsYXNzPVwiZm9ybS1jaGVjay1pbnB1dFwiIHR5cGU9XCJyYWRpb1wiIG5hbWU9XCJ7e2VsZW1JZH19X19yYWRpby1idG4tb3B0aW9uX3t7c3ViUXVlc3Rpb25JbmRleH19XCJcclxuICAgICAgICAgICAgICBpZD1cInt7ZWxlbUlkfX1fX3JhZGlvLWJ0bl97e3N1YlF1ZXN0aW9uSW5kZXh9fV97e2Fuc3dlckluZGV4fX1cIiAoY2hhbmdlKT1cIm9uQ2hhbmdlQW5zd2VyKHF1ZXN0aW9uR3JvdXAgLGFuc3dlcilcIlxyXG4gICAgICAgICAgICAgIHZhbHVlPVwie3thbnN3ZXIuYW5zd2VySWR9fVwiICBbY2hlY2tlZF09XCJhbnN3ZXIuYW5zd2VySWQgPT0gcXVlc3Rpb25Hcm91cC52YWx1ZS5hbnN3ZXJcIj5cclxuICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZm9ybS1jaGVjay1sYWJlbCBkLWlubGluZSBkLWxnLW5vbmVcIiBbaW5uZXJIVE1MXT1cImFuc3dlci5hbnN3ZXJUaXRsZVwiXHJcbiAgICAgICAgICAgICAgZm9yPVwie3tlbGVtSWR9fV9fcmFkaW8tYnRuX3t7c3ViUXVlc3Rpb25JbmRleH19X3t7YW5zd2VySW5kZXh9fVwiPiA8L2xhYmVsPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgIDwvZGl2PlxyXG5cclxuICA8L2Rpdj5cclxuPC9kaXY+Il19
|
|
129
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlc3Rpb24tbWF0cml4LXRlbXBsYXRlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3N1cnZlcnktbGliL3NyYy9saWIvY29tcG9uZW50cy9xdWVzdGlvbi1tYXRyaXgtdGVtcGxhdGUvcXVlc3Rpb24tbWF0cml4LXRlbXBsYXRlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3N1cnZlcnktbGliL3NyYy9saWIvY29tcG9uZW50cy9xdWVzdGlvbi1tYXRyaXgtdGVtcGxhdGUvcXVlc3Rpb24tbWF0cml4LXRlbXBsYXRlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWdCLEtBQUssRUFBa0IsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUFlLFdBQVcsRUFBYSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUtqRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUc1RSxPQUFPLEVBQUUsRUFBRSxJQUFJLGFBQWEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUUzQyxPQUFPLEVBQUUsWUFBWSxFQUF3QixNQUFNLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUdqRixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sOENBQThDLENBQUM7QUFFN0UsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sa0RBQWtELENBQUM7Ozs7OztBQU9yRixNQUFNLE9BQU8sK0JBQStCO0lBTTFDLElBQUksTUFBTTtRQUNSLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUM7SUFDN0IsQ0FBQztJQUVELElBQUksZ0JBQWdCO1FBQ2xCLE9BQU8sZ0JBQWdCLENBQUM7SUFDMUIsQ0FBQztJQUVELElBQWEsV0FBVyxDQUFDLEtBQXdCO1FBQy9DLElB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TTs7MkZEWk8sK0JBQStCO2tCQUwzQyxTQUFTOytCQUNFLDhCQUE4QjtxSkFrQjNCLFdBQVc7c0JBQXZCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtQ29udHJvbCwgRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBTdXJ2ZXlBbnN3ZXJEdG8gfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvZHRvcy9zdXJ2ZXktYW5zd2VyLmR0byc7XHJcbmltcG9ydCB7IFN1cnZleVF1ZXN0aW9uR3JvdXBEdG8gfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvZHRvcy9zdXJ2ZXktcXVlc3Rpb24tZ3JvdXAuZHRvJztcclxuaW1wb3J0IHsgU3VydmV5UXVlc3Rpb25EdG8gfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvZHRvcy9zdXJ2ZXktcXVlc3Rpb24uZHRvJztcclxuaW1wb3J0IHsgU3VydmV5U3ViUXVlc3Rpb25EdG8gfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvZHRvcy9zdXJ2ZXktc3ViLXF1ZXN0aW9uLmR0byc7XHJcbmltcG9ydCB7IFF1ZXN0aW9uVHlwZUVudW0gfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvZW51bXMvcXVlc3Rpb24tdHlwZS5lbnVtJztcclxuaW1wb3J0IHsgUXVlc3Rpb25NYXRyaXhUZW1wbGF0ZUZvcm1JbnRlcmZhY2UsIFN1YlF1ZXN0aW9uQ2hpbGRPZlF1ZXN0aW9uTWF0cml4VGVtcGxhdGVGb3JtSW50ZXJmYWNlIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL2Zvcm0taW50ZXJmYWNlcy9xdWVzdGlvbi1tYXRyaXgtdGVtcGxhdGUuZm9ybS1pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBRdWVzdGlvbkFuc3dlck1vZGVsIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL21vZGVscy9xdWVzdGlvbi1hbnN3ZXIubW9kZWwnO1xyXG5pbXBvcnQgeyB2NCBhcyBndWlkR2VuZXJhdG9yIH0gZnJvbSAndXVpZCc7XHJcbmltcG9ydCB7IERlZmF1bHRRdWVzdGlvbkFuc3dlckR0byB9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9kdG9zL2RlZmF1bHQtcXVlc3Rpb24tYW5zd2Vycy5kdG8nO1xyXG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBmaWx0ZXIsIG1hcCwgcGFpcndpc2UgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgU3VydmV5TGliU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3N1cnZleS1saWIuc2VydmljZSc7XHJcbmltcG9ydCB7IFF1ZXN0aW9uTmdyeE1vZGVsIH0gZnJvbSAnLi4vLi4vY29yZS9zdGF0ZXMvZW50aXRlcy9xdWVzdGlvbi5lbnRpdHknO1xyXG5pbXBvcnQgeyBzdXJ2ZXlBY3Rpb25zIH0gZnJvbSAnLi4vLi4vY29yZS9zdGF0ZXMvc3VydmV5LXN0b3JlL3N1cnZleS5hY3Rpb24nO1xyXG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcclxuaW1wb3J0IHsgcXVlc3Rpb25TZWxlY3RvcnMgfSBmcm9tICcuLi8uLi9jb3JlL3N0YXRlcy9zdXJ2ZXktc3RvcmUvcXVlc3Rpb24uc2VsZWN0b3InO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItcXVlc3Rpb24tbWF0cml4LXRlbXBsYXRlJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vcXVlc3Rpb24tbWF0cml4LXRlbXBsYXRlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9xdWVzdGlvbi1tYXRyaXgtdGVtcGxhdGUuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgUXVlc3Rpb25NYXRyaXhUZW1wbGF0ZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgZWxlbUlkID0gZ3VpZEdlbmVyYXRvcigpIGFzIHN0cmluZztcclxuICBzdXJ2ZXlRdWVzdGlvbjogU3VydmV5UXVlc3Rpb25EdG87XHJcbiAgckZvcm06IEZvcm1Hcm91cDxRdWVzdGlvbk1hdHJpeFRlbXBsYXRlRm9ybUludGVyZmFjZT47XHJcbiAgcXVlc3Rpb25BcnIgPSB0aGlzLl9TdG9yZS5zZWxlY3RTaWduYWwocXVlc3Rpb25TZWxlY3RvcnMucGFnZVF1ZXN0aW9ucyk7XHJcblxyXG4gIGdldCBmQ3RybHMoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5yRm9ybS5jb250cm9scztcclxuICB9XHJcblxyXG4gIGdldCBxdWVzdGlvblR5cGVFbnVtKCkge1xyXG4gICAgcmV0dXJuIFF1ZXN0aW9uVHlwZUVudW07XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKSBzZXQgc2V0UXVlc3Rpb24odmFsdWU6IFF1ZXN0aW9uTmdyeE1vZGVsKSB7XHJcbiAgICBpZiAoIXRoaXMuc3VydmV5UXVlc3Rpb24pIHtcclxuICAgICAgdGhpcy5zdXJ2ZXlRdWVzdGlvbiA9IHZhbHVlLnF1ZXN0aW9uQWxsSW5mbztcclxuICAgICAgdGhpcy5yRm9ybS5wYXRjaFZhbHVlKHtcclxuICAgICAgICBpZDogdmFsdWUucXVlc3Rpb25JZCxcclxuICAgICAgICB0eXBlSWQ6IHZhbHVlLnF1ZXN0aW9uQWxsSW5mby5xdWVzdGlvblR5cGVJZCxcclxuICAgICAgICBpc0Rpc2FibGVkOiB2YWx1ZS5xdWVzdGlvbkFsbEluZm8uaXNSZWFkT25seSxcclxuICAgICAgICBpc1Nob3c6IHZhbHVlLnF1ZXN0aW9uQWxsSW5mby5pc1Zpc2FibGVcclxuICAgICAgfSk7XHJcblxyXG4gICAgICB2YWx1ZS5xdWVzdGlvbkFsbEluZm8uc3VydmV5U3ViUXVlc3Rpb25zLmZvckVhY2goeCA9PiB7XHJcbiAgICAgICAgdmFyIGdyb3VwID0gdGhpcy5fZm9ybUJ1aWxkZXIuZ3JvdXA8U3ViUXVlc3Rpb25DaGlsZE9mUXVlc3Rpb25NYXRyaXhUZW1wbGF0ZUZvcm1JbnRlcmZhY2U+KHtcclxuICAgICAgICAgIHN1YlF1ZXN0aW9uSWQ6IG5ldyBGb3JtQ29udHJvbCh4LnF1ZXN0aW9uSWQpLFxyXG4gICAgICAgICAgcXVlc3Rpb25UaXRsZTogbmV3IEZvcm1Db250cm9sKHgucXVlc3Rpb25UaXRsZSksXHJcbiAgICAgICAgICBhbnN3ZXI6IG5ldyBGb3JtQ29udHJvbChudWxsKSxcclxuICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgaWYgKHZhbHVlLmlzU2hvdyA9PSB0cnVlKSB7XHJcbiAgICAgICAgICB0aGlzLmZDdHJscy5pc1Nob3cuc2V0VmFsdWUodmFsdWUuaXNTaG93KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmICh2YWx1ZS5pc1JlcXVpcmVkID09IHRydWUpIHtcclxuICAgICAgICAgIGdyb3VwLmNvbnRyb2xzLmFuc3dlci5hZGRWYWxpZGF0b3JzKFtWYWxpZGF0b3JzLnJlcXVpcmVkXSk7XHJcbiAgICAgICAgICBncm91cC5jb250cm9scy5hbnN3ZXIudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgZ3JvdXAuY29udHJvbHMuYW5zd2VyLnZhbHVlQ2hhbmdlcy5waXBlKCkucGlwZShkZWJvdW5jZVRpbWUoMjAwKSkuc3Vic2NyaWJlKHZhbHVlID0+IHtcclxuICAgICAgICAgIGNvbnN0IGZvcm1WYWx1ZSA9IHRoaXMuckZvcm0udmFsdWU7XHJcbiAgICAgICAgICB0aGlzLl9TdG9yZS5kaXNwYXRjaChzdXJ2ZXlBY3Rpb25zLnVwZGF0ZVF1ZXN0aW9uQW5zd2VyKHtcclxuICAgICAgICAgICAgcXVlc3Rpb25JZDogZ3JvdXAudmFsdWUuc3ViUXVlc3Rpb25JZCxcclxuICAgICAgICAgICAgYW5zd2VyOiBncm91cC52YWx1ZS5hbnN3ZXIsXHJcbiAgICAgICAgICAgIGlzVmFsaWQ6IGdyb3VwLmNvbnRyb2xzLmFuc3dlci52YWxpZFxyXG4gICAgICAgICAgfSkpO1xyXG4gICAgICAgIH0pO1xyXG5cclxuICAgICAgICB2YXIgcXVlc3Rpb24gPSB0aGlzLnF1ZXN0aW9uQXJyKCkuZmluZCh4ID0+IHgucXVlc3Rpb25JZCA9PSBncm91cC52YWx1ZS5zdWJRdWVzdGlvbklkKTtcclxuICAgICAgICBpZiAocXVlc3Rpb24gIT0gbnVsbCkge1xyXG4gICAgICAgICAgZ3JvdXAuY29udHJvbHMuYW5zd2VyLnNldFZhbHVlKHF1ZXN0aW9uLmFuc3dlcklkLCB7IGVtaXRFdmVudDogZmFsc2UgfSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLmZDdHJscy5zdWJRdWVzdGlvbkFycmF5LnB1c2goZ3JvdXApO1xyXG4gICAgICB9KTtcclxuXHJcbiAgICAgIHZhciBtYXRyaXhRdWVzdGlvbiA9IHRoaXMucXVlc3Rpb25BcnIoKS5maW5kKHggPT4geC5wYXJlbnRRdWVzdGlvbklkID09IHRoaXMuZkN0cmxzLmlkLnZhbHVlKTtcclxuICAgICAgaWYgKG1hdHJpeFF1ZXN0aW9uKSB7XHJcbiAgICAgICAgdGhpcy5yRm9ybS5wYXRjaFZhbHVlKHtcclxuICAgICAgICAgIGlzRGlzYWJsZWQ6IG1hdHJpeFF1ZXN0aW9uLmlzRGlzYWJsZWQsXHJcbiAgICAgICAgICBpc1Nob3c6IG1hdHJpeFF1ZXN0aW9uLmlzU2hvd1xyXG4gICAgICAgIH0sIHsgZW1pdEV2ZW50OiBmYWxzZSB9KVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9mb3JtQnVpbGRlcjogRm9ybUJ1aWxkZXIsIHByaXZhdGUgX3N1cnZleUxpYlNlcnZpY2U6IFN1cnZleUxpYlNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9TdG9yZTogU3RvcmUpIHtcclxuICAgIHRoaXMuckZvcm0gPSB0aGlzLl9mb3JtQnVpbGRlci5ncm91cDxRdWVzdGlvbk1hdHJpeFRlbXBsYXRlRm9ybUludGVyZmFjZT4oe1xyXG4gICAgICBpZDogbmV3IEZvcm1Db250cm9sKG51bGwpLFxyXG4gICAgICB0eXBlSWQ6IG5ldyBGb3JtQ29udHJvbChudWxsKSxcclxuICAgICAgaXNEaXNhYmxlZDogbmV3IEZvcm1Db250cm9sKGZhbHNlKSxcclxuICAgICAgaXNTaG93OiBuZXcgRm9ybUNvbnRyb2wodHJ1ZSksXHJcbiAgICAgIHN1YlF1ZXN0aW9uQXJyYXk6IHRoaXMuX2Zvcm1CdWlsZGVyLmFycmF5PEZvcm1Hcm91cDxTdWJRdWVzdGlvbkNoaWxkT2ZRdWVzdGlvbk1hdHJpeFRlbXBsYXRlRm9ybUludGVyZmFjZT4+KFtdKVxyXG4gICAgfSk7XHJcbiAgfVxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG5cclxuICAgIHRoaXMuX1N0b3JlLnNlbGVjdChxdWVzdGlvblNlbGVjdG9ycy5wYWdlUXVlc3Rpb25zKS5waXBlKG1hcChhcnIgPT4gYXJyLmZpbmQoeCA9PiB4LnF1ZXN0aW9uSWQgPT0gdGhpcy5mQ3RybHMuaWQudmFsdWUpKSlcclxuICAgICAgLnBpcGUoZmlsdGVyKHggPT4geCAhPSBudWxsKSwgcGFpcndpc2UoKSkuc3Vic2NyaWJlKHZhbHVlID0+IHtcclxuICAgICAgICBjb25zdCBvbGRWYWx1ZSA9IHZhbHVlWzBdO1xyXG4gICAgICAgIGNvbnN0IG5ld1ZhbHVlID0gdmFsdWVbMV07XHJcblxyXG4gICAgICAgIC8vdXBkYXRlZCBpc0Rpc2FibGVkXHJcbiAgICAgICAgaWYgKG9sZFZhbHVlPy5pc0Rpc2FibGVkICE9IG5ld1ZhbHVlPy5pc0Rpc2FibGVkKSB7XHJcbiAgICAgICAgICB0aGlzLmZDdHJscy5pc0Rpc2FibGVkLnNldFZhbHVlKG5ld1ZhbHVlPy5pc0Rpc2FibGVkKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vdXBkYXRlZCBpc1Nob3dcclxuICAgICAgICBpZiAob2xkVmFsdWU/LmlzU2hvdyAhPSBuZXdWYWx1ZT8uaXNTaG93KSB7XHJcbiAgICAgICAgICB0aGlzLmZDdHJscy5pc1Nob3cuc2V0VmFsdWUobmV3VmFsdWU/LmlzU2hvdyk7XHJcblxyXG4gICAgICAgICAgLy8gaWYgKG5ld1ZhbHVlPy5pc1Nob3cgPT0gZmFsc2UpIHtcclxuICAgICAgICAgIC8vICAgdGhpcy5mQ3RybHMuYW5zd2VyLnNldFZhbHVlKG51bGwpO1xyXG4gICAgICAgICAgLy8gfVxyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcblxyXG5cclxuICAgIHRoaXMuX1N0b3JlLnNlbGVjdChxdWVzdGlvblNlbGVjdG9ycy5wYWdlUXVlc3Rpb25zKS5waXBlKG1hcChhcnIgPT4gYXJyLmZpbHRlcih4ID0+IHgucGFyZW50UXVlc3Rpb25JZCA9PSB0aGlzLmZDdHJscy5pZC52YWx1ZSkpKVxyXG4gICAgICAucGlwZShmaWx0ZXIoeCA9PiB4Lmxlbmd0aCA+IDApKS5zdWJzY3JpYmUocXVlc3Rpb25zID0+IHtcclxuXHJcbiAgICAgICAgLy9VcGRhdGUgQW5zd2Vyc1xyXG4gICAgICAgIHRoaXMuZkN0cmxzLnN1YlF1ZXN0aW9uQXJyYXkuY29udHJvbHMuZm9yRWFjaChncm91cCA9PiB7XHJcbiAgICAgICAgICB2YXIgcXVlc3Rpb24gPSBxdWVzdGlvbnMuZmluZCh4ID0+IHgucXVlc3Rpb25JZCA9PSBncm91cC52YWx1ZS5zdWJRdWVzdGlvbklkKTtcclxuICAgICAgICAgIGlmIChxdWVzdGlvbiAhPSBudWxsKSB7XHJcbiAgICAgICAgICAgIGdyb3VwLmNvbnRyb2xzLmFuc3dlci5zZXRWYWx1ZShxdWVzdGlvbi5hbnN3ZXJJZCwgeyBlbWl0RXZlbnQ6IGZhbHNlIH0pO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pXHJcbiAgICAgIH0pO1xyXG5cclxuICB9XHJcblxyXG4gIG9uQ2hhbmdlQW5zd2VyKHF1ZXN0aW9uOiBGb3JtR3JvdXA8U3ViUXVlc3Rpb25DaGlsZE9mUXVlc3Rpb25NYXRyaXhUZW1wbGF0ZUZvcm1JbnRlcmZhY2U+LCBhbnN3ZXI6IFN1cnZleUFuc3dlckR0bykge1xyXG4gICAgY29uc3QgaW5kZXggPSB0aGlzLmZDdHJscy5zdWJRdWVzdGlvbkFycmF5LnZhbHVlLmZpbmRJbmRleCh4ID0+IHguc3ViUXVlc3Rpb25JZCA9PSBxdWVzdGlvbi52YWx1ZS5zdWJRdWVzdGlvbklkKTtcclxuICAgIHZhciBzdWJRdWVzdGlvbkdyb3VwID0gdGhpcy5mQ3RybHMuc3ViUXVlc3Rpb25BcnJheS5jb250cm9sc1tpbmRleF07XHJcblxyXG4gICAgc3ViUXVlc3Rpb25Hcm91cC5jb250cm9scy5hbnN3ZXIuc2V0VmFsdWUoYW5zd2VyLmFuc3dlcklkKTtcclxuXHJcbiAgICAvLyB0aGlzLmVtaXR0ZXIuZW1pdCh7XHJcbiAgICAvLyAgIFF1ZXN0aW9uSWQ6IHN1YlF1ZXN0aW9uR3JvdXAudmFsdWUuc3ViUXVlc3Rpb25JZCxcclxuICAgIC8vICAgQW5zd2VyOiBzdWJRdWVzdGlvbkdyb3VwLnZhbHVlLmFuc3dlcixcclxuICAgIC8vICAgSXNWYWxpZDogc3ViUXVlc3Rpb25Hcm91cC5jb250cm9scy5hbnN3ZXIudmFsaWRcclxuICAgIC8vIH0pO1xyXG4gIH1cclxuXHJcbiAgY29udmVydFRvRm9ybUNvbnRyb2woZWxlbWVudDogYW55KSB7XHJcbiAgICByZXR1cm4gZWxlbWVudCBhcyBGb3JtQ29udHJvbDtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cInF1YXN0aW9uXCIgW2F0dHIuaWRdPVwiJ3F1ZXN0aW9uXycrZkN0cmxzLmlkLnZhbHVlXCIgc3R5bGU9XCIgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcIlxyXG5bbmdDbGFzc109XCJ7J2Qtbm9uZSc6ZkN0cmxzLmlzU2hvdy52YWx1ZSAhPSB0cnVlfVwiPlxyXG4gIDxoMyBjbGFzcz1cInF1YXN0aW9uLXRpdGxlIFwiPlxyXG4gICAgPHNwYW4gW2lubmVySFRNTF09XCJzdXJ2ZXlRdWVzdGlvbj8ucXVlc3Rpb25UaXRsZVwiPjwvc3Bhbj5cclxuICAgIDxzcGFuIHN0eWxlPVwiY29sb3I6IHJlZDtcIiAqbmdJZj1cInN1cnZleVF1ZXN0aW9uLmlzUmVxdWlyZWRcIj4qPC9zcGFuPlxyXG4gIDwvaDM+XHJcbiAgPGRpdiBjbGFzcz1cIm1hdHJpeC1xdWVzdGlvblwiIFtmb3JtR3JvdXBdPVwickZvcm1cIj5cclxuICAgIDxkaXYgY2xhc3M9XCJtYXRyaXgtdGFibGVcIiBmb3JtQXJyYXlOYW1lPVwic3ViUXVlc3Rpb25BcnJheVwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwibWF0cml4LWhlYWQtcm93XCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cIm1hdHJpeC1jb2xcIj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwibWF0cml4LWNvbFwiICpuZ0Zvcj1cImxldCBhbnN3ZXJzIG9mIHN1cnZleVF1ZXN0aW9uPy5zdXJ2ZXlBbnN3ZXJzXCIgPlxyXG4gICAgICAgICAgPHNwYW4gW2lubmVySFRNTF09XCJhbnN3ZXJzLmFuc3dlclRpdGxlXCI+PC9zcGFuPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDxkaXYgY2xhc3M9XCJtYXRyaXgtcm93XCIgIFthdHRyLmlkXT1cIidxdWVzdGlvbl8nK3F1ZXN0aW9uR3JvdXAudmFsdWUuc3ViUXVlc3Rpb25JZFwiXHJcbiAgICAgICAgKm5nRm9yPVwibGV0IHF1ZXN0aW9uR3JvdXAgb2YgZkN0cmxzLnN1YlF1ZXN0aW9uQXJyYXkuY29udHJvbHMgO2xldCBzdWJRdWVzdGlvbkluZGV4ID0gaW5kZXhcIlxyXG4gICAgICAgIFtuZ0NsYXNzXT1cInsnaW52YWxpZC1xdWVzdGlvbic6IHF1ZXN0aW9uR3JvdXAuY29udHJvbHMuYW5zd2VyLmludmFsaWR9XCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cIm1hdHJpeC1jb2wgbWF0cml4LXN1Yi1xdWFzdGlvblwiIFtpbm5lckhUTUxdPVwicXVlc3Rpb25Hcm91cC52YWx1ZS5xdWVzdGlvblRpdGxlXCI+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cIm1hdHJpeC1jb2wgYW5zd2VyX19jb250YWluZXJcIiAqbmdGb3I9XCJsZXQgYW5zd2VyIG9mIHN1cnZleVF1ZXN0aW9uPy5zdXJ2ZXlBbnN3ZXJzO2xldCBhbnN3ZXJJbmRleCA9IGluZGV4XCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1jaGVjayBmb3JtLWNoZWNrLXJhZGlvIGZvcm0tY2hlY2staW5saW5lXCI+XHJcbiAgICAgICAgICAgIDxpbnB1dCBjbGFzcz1cImZvcm0tY2hlY2staW5wdXRcIiB0eXBlPVwicmFkaW9cIiBuYW1lPVwie3tlbGVtSWR9fV9fcmFkaW8tYnRuLW9wdGlvbl97e3N1YlF1ZXN0aW9uSW5kZXh9fVwiXHJcbiAgICAgICAgICAgICAgaWQ9XCJ7e2VsZW1JZH19X19yYWRpby1idG5fe3tzdWJRdWVzdGlvbkluZGV4fX1fe3thbnN3ZXJJbmRleH19XCIgKGNoYW5nZSk9XCJvbkNoYW5nZUFuc3dlcihxdWVzdGlvbkdyb3VwICxhbnN3ZXIpXCJcclxuICAgICAgICAgICAgICB2YWx1ZT1cInt7YW5zd2VyLmFuc3dlcklkfX1cIiAgW2NoZWNrZWRdPVwiYW5zd2VyLmFuc3dlcklkID09IHF1ZXN0aW9uR3JvdXAudmFsdWUuYW5zd2VyXCI+XHJcbiAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImZvcm0tY2hlY2stbGFiZWwgZC1pbmxpbmUgZC1sZy1ub25lXCIgW2lubmVySFRNTF09XCJhbnN3ZXIuYW5zd2VyVGl0bGVcIlxyXG4gICAgICAgICAgICAgIGZvcj1cInt7ZWxlbUlkfX1fX3JhZGlvLWJ0bl97e3N1YlF1ZXN0aW9uSW5kZXh9fV97e2Fuc3dlckluZGV4fX1cIj4gPC9sYWJlbD5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgPC9kaXY+XHJcbjwvZGl2PiJdfQ==
|
|
@@ -36,6 +36,9 @@ export class QuestionRadioButtonTemplateComponent {
|
|
|
36
36
|
isSelected: new FormControl(false)
|
|
37
37
|
}));
|
|
38
38
|
});
|
|
39
|
+
if (value.isShow == true) {
|
|
40
|
+
this.fCtrls.isShow.setValue(value.isShow);
|
|
41
|
+
}
|
|
39
42
|
if (value.isRequired == true) {
|
|
40
43
|
this.fCtrls.answer.addValidators([Validators.required]);
|
|
41
44
|
this.fCtrls.answer.updateValueAndValidity();
|
|
@@ -117,4 +120,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImpor
|
|
|
117
120
|
}], ctorParameters: function () { return [{ type: i1.FormBuilder }, { type: i2.SurveyLibService }, { type: i3.Store }]; }, propDecorators: { setQuestion: [{
|
|
118
121
|
type: Input
|
|
119
122
|
}] } });
|
|
120
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlc3Rpb24tcmFkaW8tYnV0dG9uLXRlbXBsYXRlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3N1cnZlcnktbGliL3NyYy9saWIvY29tcG9uZW50cy9xdWVzdGlvbi1yYWRpby1idXR0b24tdGVtcGxhdGUvcXVlc3Rpb24tcmFkaW8tYnV0dG9uLXRlbXBsYXRlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3N1cnZlcnktbGliL3NyYy9saWIvY29tcG9uZW50cy9xdWVzdGlvbi1yYWRpby1idXR0b24tdGVtcGxhdGUvcXVlc3Rpb24tcmFkaW8tYnV0dG9uLXRlbXBsYXRlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWdCLEtBQUssRUFBa0IsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUFlLFdBQVcsRUFBYSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUdqRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQU01RSxPQUFPLEVBQUUsWUFBWSxFQUFFLG9CQUFvQixFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2pGLE9BQU8sRUFBRSxFQUFFLElBQUksYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBSzNDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUU3RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQzs7Ozs7O0FBT3JGLE1BQU0sT0FBTyxvQ0FBb0M7SUFNL0MsSUFBSSxNQUFNO1FBQ1IsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQztJQUM3QixDQUFDO0lBRUQsSUFBSSxnQkFBZ0I7UUFDbEIsT0FBTyxnQkFBZ0IsQ0FBQztJQUMx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QyxDQUFDO2FBQ3ZEO1lBRUQsZ0JBQWdCO1lBQ2hCLElBQUksUUFBUSxFQUFFLE1BQU0sSUFBSSxRQUFRLEVBQUUsTUFBTSxFQUFFO2dCQUN4QyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBQyxDQUFDO2dCQUU5QyxJQUFJLFFBQVEsRUFBRSxNQUFNLElBQUksS0FBSyxFQUFFO29CQUM3QixJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7aUJBQ25DO2FBQ0Y7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxjQUFjLENBQUMsSUFBdUU7UUFDcEYsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVELG9CQUFvQixDQUFDLE9BQVk7UUFDL0IsT0FBTyxPQUFzQixDQUFDO0lBQ2hDLENBQUM7OEdBakhVLG9DQUFvQztrR0FBcEMsb0NBQW9DLGtIQ3pCakQsc2dDQWNBOzsyRkRXYSxvQ0FBb0M7a0JBTGhELFNBQVM7K0JBQ0Usb0NBQW9DO3FKQWtCakMsV0FBVztzQkFBdkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Db250cm9sLCBGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IFN1cnZleUFuc3dlckR0byB9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9kdG9zL3N1cnZleS1hbnN3ZXIuZHRvJztcclxuaW1wb3J0IHsgU3VydmV5UXVlc3Rpb25EdG8gfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvZHRvcy9zdXJ2ZXktcXVlc3Rpb24uZHRvJztcclxuaW1wb3J0IHsgUXVlc3Rpb25UeXBlRW51bSB9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9lbnVtcy9xdWVzdGlvbi10eXBlLmVudW0nO1xyXG5pbXBvcnQge1xyXG4gIEFuc3dlckNoaWxkT2ZRdWVzdGlvblJhZGlvQnV0dG9uVGVtcGxhdGVGb3JtSW50ZXJmYWNlLFxyXG4gIFF1ZXN0aW9uUmFkaW9CdXR0b25UZW1wbGF0ZUZvcm1JbnRlcmZhY2VcclxufSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvZm9ybS1pbnRlcmZhY2VzL3F1ZXN0aW9uLXJhZGlvLWJ1dHRvbi10ZW1wbGF0ZS5mb3JtLWludGVyZmFjZSc7XHJcbmltcG9ydCB7IFF1ZXN0aW9uVGV4dFRlbXBsYXRlRm9ybUludGVyZmFjZSB9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9mb3JtLWludGVyZmFjZXMvcXVlc3Rpb24tdGV4dC10ZW1wbGF0ZS5mb3JtLWludGVyZmFjZSc7XHJcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgZGlzdGluY3RVbnRpbENoYW5nZWQsIGZpbHRlciwgbWFwLCBwYWlyd2lzZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyB2NCBhcyBndWlkR2VuZXJhdG9yIH0gZnJvbSAndXVpZCc7XHJcbmltcG9ydCB7IFF1ZXN0aW9uQW5zd2VyTW9kZWwgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvbW9kZWxzL3F1ZXN0aW9uLWFuc3dlci5tb2RlbCc7XHJcbmltcG9ydCB7IERlZmF1bHRRdWVzdGlvbkFuc3dlckR0byB9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9kdG9zL2RlZmF1bHQtcXVlc3Rpb24tYW5zd2Vycy5kdG8nO1xyXG5pbXBvcnQgeyBTdXJ2ZXlMaWJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvc3VydmV5LWxpYi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgUXVlc3Rpb25OZ3J4TW9kZWwgfSBmcm9tICcuLi8uLi9jb3JlL3N0YXRlcy9lbnRpdGVzL3F1ZXN0aW9uLmVudGl0eSc7XHJcbmltcG9ydCB7IHN1cnZleUFjdGlvbnMgfSBmcm9tICcuLi8uLi9jb3JlL3N0YXRlcy9zdXJ2ZXktc3RvcmUvc3VydmV5LmFjdGlvbic7XHJcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xyXG5pbXBvcnQgeyBxdWVzdGlvblNlbGVjdG9ycyB9IGZyb20gJy4uLy4uL2NvcmUvc3RhdGVzL3N1cnZleS1zdG9yZS9xdWVzdGlvbi5zZWxlY3Rvcic7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi1xdWVzdGlvbi1yYWRpby1idXR0b24tdGVtcGxhdGUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9xdWVzdGlvbi1yYWRpby1idXR0b24tdGVtcGxhdGUuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3F1ZXN0aW9uLXJhZGlvLWJ1dHRvbi10ZW1wbGF0ZS5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBRdWVzdGlvblJhZGlvQnV0dG9uVGVtcGxhdGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIGVsZW1JZCA9IGd1aWRHZW5lcmF0b3IoKSBhcyBzdHJpbmc7XHJcbiAgc3VydmV5UXVlc3Rpb246IFN1cnZleVF1ZXN0aW9uRHRvO1xyXG4gIHJGb3JtOiBGb3JtR3JvdXA8UXVlc3Rpb25SYWRpb0J1dHRvblRlbXBsYXRlRm9ybUludGVyZmFjZT47XHJcbiAgcXVlc3Rpb25BcnIgPSB0aGlzLl9TdG9yZS5zZWxlY3RTaWduYWwocXVlc3Rpb25TZWxlY3RvcnMucGFnZVF1ZXN0aW9ucyk7XHJcblxyXG4gIGdldCBmQ3RybHMoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5yRm9ybS5jb250cm9scztcclxuICB9XHJcblxyXG4gIGdldCBxdWVzdGlvblR5cGVFbnVtKCkge1xyXG4gICAgcmV0dXJuIFF1ZXN0aW9uVHlwZUVudW07XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKSBzZXQgc2V0UXVlc3Rpb24odmFsdWU6IFF1ZXN0aW9uTmdyeE1vZGVsKSB7XHJcbiAgICBpZiAoIXRoaXMuc3VydmV5UXVlc3Rpb24pIHtcclxuICAgICAgdGhpcy5zdXJ2ZXlRdWVzdGlvbiA9IHZhbHVlLnF1ZXN0aW9uQWxsSW5mbztcclxuICAgICAgdGhpcy5yRm9ybS5wYXRjaFZhbHVlKHtcclxuICAgICAgICBpZDogdmFsdWUucXVlc3Rpb25JZCxcclxuICAgICAgICBuYW1lOiB2YWx1ZS5xdWVzdGlvbkFsbEluZm8ucXVlc3Rpb25OYW1lLFxyXG4gICAgICAgIHRpdGxlOiB2YWx1ZS5xdWVzdGlvbkFsbEluZm8ucXVlc3Rpb25UaXRsZSxcclxuICAgICAgICB0eXBlSWQ6IHZhbHVlLnF1ZXN0aW9uQWxsSW5mby5xdWVzdGlvblR5cGVJZCxcclxuICAgICAgICBkZXNjcmlwdGlvbjogdmFsdWUucXVlc3Rpb25BbGxJbmZvLnF1ZXN0aW9uRGVzY3JpcHRpb24sXHJcbiAgICAgICAgaXNEaXNhYmxlZDogdmFsdWUucXVlc3Rpb25BbGxJbmZvLmlzUmVhZE9ubHksXHJcbiAgICAgICAgaXNTaG93OiB2YWx1ZS5xdWVzdGlvbkFsbEluZm8uaXNWaXNhYmxlXHJcbiAgICAgIH0pO1xyXG5cclxuICAgICAgdmFsdWUucXVlc3Rpb25BbGxJbmZvLnN1cnZleUFuc3dlcnMuZm9yRWFjaChzdXJ2ZXJ5QW5zd2VyID0+IHtcclxuICAgICAgICB0aGlzLmZDdHJscy5hbnN3ZXJBcnJheS5wdXNoKHRoaXMuX2Zvcm1CdWlsZGVyLmdyb3VwPEFuc3dlckNoaWxkT2ZRdWVzdGlvblJhZGlvQnV0dG9uVGVtcGxhdGVGb3JtSW50ZXJmYWNlPih7XHJcbiAgICAgICAgICBpZDogbmV3IEZvcm1Db250cm9sKHN1cnZlcnlBbnN3ZXIuYW5zd2VySWQpLFxyXG4gICAgICAgICAgdGl0bGU6IG5ldyBGb3JtQ29udHJvbChzdXJ2ZXJ5QW5zd2VyLmFuc3dlclRpdGxlKSxcclxuICAgICAgICAgIGlzU2VsZWN0ZWQ6IG5ldyBGb3JtQ29udHJvbChmYWxzZSlcclxuICAgICAgICB9KSlcclxuICAgICAgfSlcclxuXHJcbiAgICAgIGlmICh2YWx1ZS5pc1JlcXVpcmVkID09IHRydWUpIHtcclxuICAgICAgICB0aGlzLmZDdHJscy5hbnN3ZXIuYWRkVmFsaWRhdG9ycyhbVmFsaWRhdG9ycy5yZXF1aXJlZF0pO1xyXG4gICAgICAgIHRoaXMuZkN0cmxzLmFuc3dlci51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHZhciBxdWVzdGlvbiA9IHRoaXMucXVlc3Rpb25BcnIoKS5maW5kKHggPT4geC5xdWVzdGlvbklkID09IHZhbHVlLnF1ZXN0aW9uSWQpO1xyXG4gICAgICBpZiAocXVlc3Rpb24/LmFuc3dlcklkKSB7XHJcbiAgICAgICAgdGhpcy5yRm9ybS5wYXRjaFZhbHVlKHthbnN3ZXIgOiBxdWVzdGlvbi5hbnN3ZXJJZCxcclxuICAgICAgICAgIGlzRGlzYWJsZWQ6IHF1ZXN0aW9uLmlzRGlzYWJsZWQsXHJcbiAgICAgICAgICBpc1Nob3c6IHF1ZXN0aW9uLmlzU2hvd1xyXG4gICAgICAgIH0se2VtaXRFdmVudDpmYWxzZX0pO1xyXG4gICAgICAgIHRoaXMuZkN0cmxzLmFuc3dlckFycmF5LmNvbnRyb2xzLmZpbmQoeCA9PiB4LnZhbHVlLmlkID09IHF1ZXN0aW9uLmFuc3dlcklkKS5jb250cm9scy5pc1NlbGVjdGVkLnNldFZhbHVlKHRydWUpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9mb3JtQnVpbGRlcjogRm9ybUJ1aWxkZXIsIHByaXZhdGUgX3N1cnZleUxpYlNlcnZpY2U6IFN1cnZleUxpYlNlcnZpY2UgLFxyXG4gICAgcHJpdmF0ZSBfU3RvcmU6U3RvcmUpIHtcclxuICAgIHRoaXMuckZvcm0gPSB0aGlzLl9mb3JtQnVpbGRlci5ncm91cDxRdWVzdGlvblJhZGlvQnV0dG9uVGVtcGxhdGVGb3JtSW50ZXJmYWNlPih7XHJcbiAgICAgIGlkOiBuZXcgRm9ybUNvbnRyb2woIG51bGwpLFxyXG4gICAgICBuYW1lOiBuZXcgRm9ybUNvbnRyb2woIG51bGwpLFxyXG4gICAgICB0aXRsZTogbmV3IEZvcm1Db250cm9sKCBudWxsKSxcclxuICAgICAgdHlwZUlkOiAgbmV3IEZvcm1Db250cm9sKCBudWxsKSxcclxuICAgICAgZGVzY3JpcHRpb246IG5ldyBGb3JtQ29udHJvbCggbnVsbCksXHJcbiAgICAgIGFuc3dlcjogIG5ldyBGb3JtQ29udHJvbCggbnVsbCksXHJcbiAgICAgIGlzRGlzYWJsZWQ6IG5ldyBGb3JtQ29udHJvbCggZmFsc2UpLFxyXG4gICAgICBpc1Nob3c6IG5ldyBGb3JtQ29udHJvbCggdHJ1ZSksXHJcbiAgICAgIGFuc3dlckFycmF5OiB0aGlzLl9mb3JtQnVpbGRlci5hcnJheTxGb3JtR3JvdXA8IEFuc3dlckNoaWxkT2ZRdWVzdGlvblJhZGlvQnV0dG9uVGVtcGxhdGVGb3JtSW50ZXJmYWNlPj4oW10pXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5mQ3RybHMuYW5zd2VyLnZhbHVlQ2hhbmdlcy5waXBlKCkucGlwZShkZWJvdW5jZVRpbWUoMjAwKSwgZGlzdGluY3RVbnRpbENoYW5nZWQoKSkuc3Vic2NyaWJlKHZhbHVlID0+IHtcclxuICAgICAgY29uc3QgZm9ybVZhbHVlID0gdGhpcy5yRm9ybS52YWx1ZTtcclxuICAgICAgdGhpcy5fU3RvcmUuZGlzcGF0Y2goc3VydmV5QWN0aW9ucy51cGRhdGVRdWVzdGlvbkFuc3dlcih7XHJcbiAgICAgICAgcXVlc3Rpb25JZDogZm9ybVZhbHVlLmlkLFxyXG4gICAgICAgIGFuc3dlcjogdmFsdWUsXHJcbiAgICAgICAgaXNWYWxpZDogdGhpcy5mQ3RybHMuYW5zd2VyLnZhbGlkXHJcbiAgICAgIH0pKVxyXG4gICAgfSk7XHJcblxyXG4gICAgdGhpcy5fU3RvcmUuc2VsZWN0KHF1ZXN0aW9uU2VsZWN0b3JzLnBhZ2VRdWVzdGlvbnMpLnBpcGUobWFwKGFyciA9PiBhcnIuZmluZCh4ID0+IHgucXVlc3Rpb25JZCA9PSB0aGlzLmZDdHJscy5pZC52YWx1ZSkpKVxyXG4gICAgLnBpcGUoZmlsdGVyKHggPT4geCAhPSBudWxsKSwgcGFpcndpc2UoKSkuc3Vic2NyaWJlKHZhbHVlID0+IHtcclxuICAgICAgY29uc3Qgb2xkVmFsdWUgPSB2YWx1ZVswXTtcclxuICAgICAgY29uc3QgbmV3VmFsdWUgPSB2YWx1ZVsxXTtcclxuXHJcbiAgICAgIC8vdXBkYXRlZCBhbnN3ZXJcclxuICAgICAgaWYgKG9sZFZhbHVlPy5hbnN3ZXJJZCAhPSBuZXdWYWx1ZT8uYW5zd2VySWQpIHtcclxuICAgICAgICB0aGlzLmZDdHJscy5hbnN3ZXIuc2V0VmFsdWUobmV3VmFsdWU/LmFuc3dlcklkLHtlbWl0RXZlbnQ6ZmFsc2V9KTtcclxuXHJcbiAgICAgICAgY29uc3QgZ3JvdXBJbmRleCA9IHRoaXMuZkN0cmxzLmFuc3dlckFycmF5LnZhbHVlLmZpbmRJbmRleCh4ID0+IHguaWQgPT0gbmV3VmFsdWU/LmFuc3dlcklkKTtcclxuICAgICAgICBpZiAoZ3JvdXBJbmRleCA+IC0xKSB7XHJcbiAgICAgICAgICB0aGlzLmZDdHJscy5hbnN3ZXJBcnJheS5hdChncm91cEluZGV4KS5jb250cm9scy5pc1NlbGVjdGVkLnNldFZhbHVlKHRydWUpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLy91cGRhdGVkIGlzRGlzYWJsZWRcclxuICAgICAgaWYgKG9sZFZhbHVlPy5pc0Rpc2FibGVkICE9IG5ld1ZhbHVlPy5pc0Rpc2FibGVkKSB7XHJcbiAgICAgICAgdGhpcy5mQ3RybHMuaXNEaXNhYmxlZC5zZXRWYWx1ZShuZXdWYWx1ZT8uaXNEaXNhYmxlZCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC8vdXBkYXRlZCBpc1Nob3dcclxuICAgICAgaWYgKG9sZFZhbHVlPy5pc1Nob3cgIT0gbmV3VmFsdWU/LmlzU2hvdykge1xyXG4gICAgICAgIHRoaXMuZkN0cmxzLmlzU2hvdy5zZXRWYWx1ZShuZXdWYWx1ZT8uaXNTaG93KTtcclxuXHJcbiAgICAgICAgaWYgKG5ld1ZhbHVlPy5pc1Nob3cgPT0gZmFsc2UpIHtcclxuICAgICAgICAgIHRoaXMuZkN0cmxzLmFuc3dlci5zZXRWYWx1ZShudWxsKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgb25DaGFuZ2VBbnN3ZXIoaXRlbTogRm9ybUdyb3VwPCBBbnN3ZXJDaGlsZE9mUXVlc3Rpb25SYWRpb0J1dHRvblRlbXBsYXRlRm9ybUludGVyZmFjZT4pIHtcclxuICAgIHRoaXMuZkN0cmxzLmFuc3dlci5zZXRWYWx1ZShpdGVtLnZhbHVlLmlkKTtcclxuICB9XHJcblxyXG4gIGNvbnZlcnRUb0Zvcm1Db250cm9sKGVsZW1lbnQ6IGFueSkge1xyXG4gICAgcmV0dXJuIGVsZW1lbnQgYXMgRm9ybUNvbnRyb2w7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJxdWFzdGlvblwiIFthdHRyLmlkXT1cIidxdWVzdGlvbl8nK2ZDdHJscy5pZC52YWx1ZVwiICBbbmdDbGFzc109XCJ7J2ludmFsaWQtcXVlc3Rpb24nOiBmQ3RybHMuYW5zd2VyLmludmFsaWQgICwgJ2Qtbm9uZSc6ZkN0cmxzLmlzU2hvdy52YWx1ZSAhPSB0cnVlfVwiPlxyXG4gICAgPGgzIGNsYXNzPVwicXVhc3Rpb24tdGl0bGUgXCI+XHJcbiAgICAgICAgPHNwYW4gW2lubmVySFRNTF09XCJzdXJ2ZXlRdWVzdGlvbj8ucXVlc3Rpb25UaXRsZVwiPjwvc3Bhbj5cclxuICAgICAgICA8c3BhbiBzdHlsZT1cImNvbG9yOiByZWQ7XCIgKm5nSWY9XCJzdXJ2ZXlRdWVzdGlvbi5pc1JlcXVpcmVkXCI+Kjwvc3Bhbj5cclxuICAgIDwvaDM+XHJcbiAgICA8ZGl2IGNsYXNzPVwicmFkaW8tYnV0dG9uLXF1YXN0aW9uXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tY2hlY2sgZm9ybS1jaGVjay1yYWRpbyBmb3JtLWNoZWNrLWlubGluZVwiIFxyXG4gICAgICAgICpuZ0Zvcj1cImxldCBpdGVtIG9mICBmQ3RybHMuYW5zd2VyQXJyYXkuY29udHJvbHM7bGV0IGkgPSBpbmRleFwiPlxyXG4gICAgICAgICAgICA8aW5wdXQgY2xhc3M9XCJmb3JtLWNoZWNrLWlucHV0XCIgdHlwZT1cInJhZGlvXCIgKGNoYW5nZSk9XCJvbkNoYW5nZUFuc3dlcihpdGVtKVwiICBbZGlzYWJsZWRdPVwiZkN0cmxzLmlzRGlzYWJsZWQudmFsdWVcIlxyXG4gICAgICAgICAgICAgICAgbmFtZT1cInt7ZWxlbUlkfX1fX3JhZGlvLWJ0bi1vcHRpb25cIiBpZD1cInt7ZWxlbUlkfX1fX3JhZGlvLWJ0bl97e2l9fVwiIFtjaGVja2VkXT1cIml0ZW0udmFsdWUuaXNTZWxlY3RlZCA9PSB0cnVlPyB0cnVlIDogbnVsbFwiPlxyXG4gICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJmb3JtLWNoZWNrLWxhYmVsXCIgZm9yPVwie3tlbGVtSWR9fV9fcmFkaW8tYnRuX3t7aX19XCIgW2lubmVySFRNTF09XCJpdGVtLnZhbHVlLnRpdGxlXCI+PC9sYWJlbD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG48L2Rpdj5cclxuIl19
|
|
123
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlc3Rpb24tcmFkaW8tYnV0dG9uLXRlbXBsYXRlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3N1cnZlcnktbGliL3NyYy9saWIvY29tcG9uZW50cy9xdWVzdGlvbi1yYWRpby1idXR0b24tdGVtcGxhdGUvcXVlc3Rpb24tcmFkaW8tYnV0dG9uLXRlbXBsYXRlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3N1cnZlcnktbGliL3NyYy9saWIvY29tcG9uZW50cy9xdWVzdGlvbi1yYWRpby1idXR0b24tdGVtcGxhdGUvcXVlc3Rpb24tcmFkaW8tYnV0dG9uLXRlbXBsYXRlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWdCLEtBQUssRUFBa0IsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUFlLFdBQVcsRUFBYSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUdqRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQU01RSxPQUFPLEVBQUUsWUFBWSxFQUFFLG9CQUFvQixFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2pGLE9BQU8sRUFBRSxFQUFFLElBQUksYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBSzNDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUU3RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQzs7Ozs7O0FBT3JGLE1BQU0sT0FBTyxvQ0FBb0M7SUFNL0MsSUFBSSxNQUFNO1FBQ1IsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQztJQUM3QixDQUFDO0lBRUQsSUFBSSxnQkFBZ0I7UUFDbEIsT0FBTyxnQkFBZ0IsQ0FBQztJQUMxQixDQUFDO0lBRUQsSUFBYSxXQUFXLENBQUMsS0FBd0I7UUFDL0MsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUU7WUFDeEIsSUFBSSxDQUFDLGNBQWMsR0FBRyxLQUFLLENBQUMsZUFBZSxDQUFDO1lBQzVDLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDO2dCQUNwQixFQUFFLEVBQUUsS0FBSyxDQUFDLFVBQVU7Z0JBQ3BCLElBQUksRUFBRSxLQUFLLENBQUMsZUFBZSxDQUFDLFlBQVk7Z0JBQ3hDLEtBQUssRUFBRSxLQUFLLENBQUMsZUFBZSxDQUFDLGFBQWE7Z0JBQzFDLE1BQU0sRUFBRSxLQUFLLENBQUMsZUFBZSxDQUFDLGNBQWM7Z0JBQzVDLFdBQVcsRUFBRSxLQUFLLENBQUMsZUFBZSxDQUFDLG1CQUFtQjtnQkFDdEQsVUFBVSxFQUFFLEtBQUssQ0FBQyxlQUFlLENBQUMsVUFBVTtnQkFDNUMsTUFBTSxFQUFFLEtBQUssQ0FBQyxlQUFlLENBQUMsU0FBUzthQUN4QyxDQUFDLENBQUM7WUFFSCxLQUFLLENBQUMsZUFBZSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLEVBQUU7Z0JBQzFELElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBd0Q7b0JBQzFHLEVBQUUsRUFBRSxJQUFJLFdBQVcsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDO29CQUMzQyxLQUFLLEVBQUUsSUFBSSxXQUFXLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQztvQkFDakQsVUFBVSxFQUFFLElBQUksV0FBVyxDQUFDLEtBQUssQ0FBQztpQkFDbkMsQ0FBQyxDQUFDLENBQUE7WUFDTCxDQUFDLENBQUMsQ0FBQTtZQUVDLElBQUksS0FBSyxDQUFDLE1BQU0sSUFBSSxJQUFJLEVBQUU7Z0JBQzNCLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7YUFDM0M7WUFFRCxJQUFJLEtBQUssQ0FBQyxVQUFVLElBQUksSUFBSSxFQUFFO2dCQUM1QixJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztnQkFDeEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsc0JBQXNCLEVBQUUsQ0FBQzthQUM3QztZQUVELElBQUksUUFBUSxHQUFHLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsVUFBVSxJQUFJLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUM5RSxJQUFJLFFBQVEsRUFBRSxRQUFRLEVBQUU7Z0JBQ3RCLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLEVBQUMsTUFBTSxFQUFHLFFBQVEsQ0FBQyxRQUFRO29CQUMvQyxVQUFVLEVBQUUsUUFBUSxDQUFDLFVBQVU7b0JBQy9CLE1BQU0sRUFBRSxRQUFRLENBQUMsTUFBTTtpQkFDeEIsRUFBQyxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsQ0FBQyxDQUFDO2dCQUNyQixJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxFQUFFLElBQUksUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO2FBQ2hIO1NBQ0Y7SUFDSCxDQUFDO0lBRUQsWUFBb0IsWUFBeUIsRUFBVSxpQkFBbUMsRUFDaEYsTUFBWTtRQURGLGlCQUFZLEdBQVosWUFBWSxDQUFhO1FBQVUsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFrQjtRQUNoRixXQUFNLEdBQU4sTUFBTSxDQUFNO1FBdkR0QixXQUFNLEdBQUcsYUFBYSxFQUFZLENBQUM7UUFHbkMsZ0JBQVcsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxpQkFBaUIsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQXFEdEUsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBMkM7WUFDN0UsRUFBRSxFQUFFLElBQUksV0FBVyxDQUFFLElBQUksQ0FBQztZQUMxQixJQUFJLEVBQUUsSUFBSSxXQUFXLENBQUUsSUFBSSxDQUFDO1lBQzVCLEtBQUssRUFBRSxJQUFJLFdBQVcsQ0FBRSxJQUFJLENBQUM7WUFDN0IsTUFBTSxFQUFHLElBQUksV0FBVyxDQUFFLElBQUksQ0FBQztZQUMvQixXQUFXLEVBQUUsSUFBSSxXQUFXLENBQUUsSUFBSSxDQUFDO1lBQ25DLE1BQU0sRUFBRyxJQUFJLFdBQVcsQ0FBRSxJQUFJLENBQUM7WUFDL0IsVUFBVSxFQUFFLElBQUksV0FBVyxDQUFFLEtBQUssQ0FBQztZQUNuQyxNQUFNLEVBQUUsSUFBSSxXQUFXLENBQUUsSUFBSSxDQUFDO1lBQzlCLFdBQVcsRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBb0UsRUFBRSxDQUFDO1NBQzVHLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLEVBQUUsb0JBQW9CLEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUN2RyxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQztZQUNuQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsb0JBQW9CLENBQUM7Z0JBQ3RELFVBQVUsRUFBRSxTQUFTLENBQUMsRUFBRTtnQkFDeEIsTUFBTSxFQUFFLEtBQUs7Z0JBQ2IsT0FBTyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQUs7YUFDbEMsQ0FBQyxDQUFDLENBQUE7UUFDTCxDQUFDLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLGlCQUFpQixDQUFDLGFBQWEsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFVBQVUsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO2FBQ3hILElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDMUQsTUFBTSxRQUFRLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzFCLE1BQU0sUUFBUSxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUUxQixnQkFBZ0I7WUFDaEIsSUFBSSxRQUFRLEVBQUUsUUFBUSxJQUFJLFFBQVEsRUFBRSxRQUFRLEVBQUU7Z0JBQzVDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsUUFBUSxFQUFDLEVBQUMsU0FBUyxFQUFDLEtBQUssRUFBQyxDQUFDLENBQUM7Z0JBRWxFLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxJQUFJLFFBQVEsRUFBRSxRQUFRLENBQUMsQ0FBQztnQkFDNUYsSUFBSSxVQUFVLEdBQUcsQ0FBQyxDQUFDLEVBQUU7b0JBQ25CLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztpQkFDM0U7YUFDRjtZQUVELG9CQUFvQjtZQUNwQixJQUFJLFFBQVEsRUFBRSxVQUFVLElBQUksUUFBUSxFQUFFLFVBQVUsRUFBRTtnQkFDaEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUMsQ0FBQzthQUN2RDtZQUVELGdCQUFnQjtZQUNoQixJQUFJLFFBQVEsRUFBRSxNQUFNLElBQUksUUFBUSxFQUFFLE1BQU0sRUFBRTtnQkFDeEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQztnQkFFOUMsSUFBSSxRQUFRLEVBQUUsTUFBTSxJQUFJLEtBQUssRUFBRTtvQkFDN0IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO2lCQUNuQzthQUNGO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsY0FBYyxDQUFDLElBQXVFO1FBQ3BGLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxPQUFZO1FBQy9CLE9BQU8sT0FBc0IsQ0FBQztJQUNoQyxDQUFDOzhHQXJIVSxvQ0FBb0M7a0dBQXBDLG9DQUFvQyxrSEN6QmpELHNnQ0FjQTs7MkZEV2Esb0NBQW9DO2tCQUxoRCxTQUFTOytCQUNFLG9DQUFvQztxSkFrQmpDLFdBQVc7c0JBQXZCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtQ29udHJvbCwgRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBTdXJ2ZXlBbnN3ZXJEdG8gfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvZHRvcy9zdXJ2ZXktYW5zd2VyLmR0byc7XHJcbmltcG9ydCB7IFN1cnZleVF1ZXN0aW9uRHRvIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL2R0b3Mvc3VydmV5LXF1ZXN0aW9uLmR0byc7XHJcbmltcG9ydCB7IFF1ZXN0aW9uVHlwZUVudW0gfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvZW51bXMvcXVlc3Rpb24tdHlwZS5lbnVtJztcclxuaW1wb3J0IHtcclxuICBBbnN3ZXJDaGlsZE9mUXVlc3Rpb25SYWRpb0J1dHRvblRlbXBsYXRlRm9ybUludGVyZmFjZSxcclxuICBRdWVzdGlvblJhZGlvQnV0dG9uVGVtcGxhdGVGb3JtSW50ZXJmYWNlXHJcbn0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL2Zvcm0taW50ZXJmYWNlcy9xdWVzdGlvbi1yYWRpby1idXR0b24tdGVtcGxhdGUuZm9ybS1pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBRdWVzdGlvblRleHRUZW1wbGF0ZUZvcm1JbnRlcmZhY2UgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvZm9ybS1pbnRlcmZhY2VzL3F1ZXN0aW9uLXRleHQtdGVtcGxhdGUuZm9ybS1pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBmaWx0ZXIsIG1hcCwgcGFpcndpc2UgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgdjQgYXMgZ3VpZEdlbmVyYXRvciB9IGZyb20gJ3V1aWQnO1xyXG5pbXBvcnQgeyBRdWVzdGlvbkFuc3dlck1vZGVsIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL21vZGVscy9xdWVzdGlvbi1hbnN3ZXIubW9kZWwnO1xyXG5pbXBvcnQgeyBEZWZhdWx0UXVlc3Rpb25BbnN3ZXJEdG8gfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvZHRvcy9kZWZhdWx0LXF1ZXN0aW9uLWFuc3dlcnMuZHRvJztcclxuaW1wb3J0IHsgU3VydmV5TGliU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3N1cnZleS1saWIuc2VydmljZSc7XHJcbmltcG9ydCB7IFF1ZXN0aW9uTmdyeE1vZGVsIH0gZnJvbSAnLi4vLi4vY29yZS9zdGF0ZXMvZW50aXRlcy9xdWVzdGlvbi5lbnRpdHknO1xyXG5pbXBvcnQgeyBzdXJ2ZXlBY3Rpb25zIH0gZnJvbSAnLi4vLi4vY29yZS9zdGF0ZXMvc3VydmV5LXN0b3JlL3N1cnZleS5hY3Rpb24nO1xyXG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcclxuaW1wb3J0IHsgcXVlc3Rpb25TZWxlY3RvcnMgfSBmcm9tICcuLi8uLi9jb3JlL3N0YXRlcy9zdXJ2ZXktc3RvcmUvcXVlc3Rpb24uc2VsZWN0b3InO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItcXVlc3Rpb24tcmFkaW8tYnV0dG9uLXRlbXBsYXRlJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vcXVlc3Rpb24tcmFkaW8tYnV0dG9uLXRlbXBsYXRlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9xdWVzdGlvbi1yYWRpby1idXR0b24tdGVtcGxhdGUuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgUXVlc3Rpb25SYWRpb0J1dHRvblRlbXBsYXRlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBlbGVtSWQgPSBndWlkR2VuZXJhdG9yKCkgYXMgc3RyaW5nO1xyXG4gIHN1cnZleVF1ZXN0aW9uOiBTdXJ2ZXlRdWVzdGlvbkR0bztcclxuICByRm9ybTogRm9ybUdyb3VwPFF1ZXN0aW9uUmFkaW9CdXR0b25UZW1wbGF0ZUZvcm1JbnRlcmZhY2U+O1xyXG4gIHF1ZXN0aW9uQXJyID0gdGhpcy5fU3RvcmUuc2VsZWN0U2lnbmFsKHF1ZXN0aW9uU2VsZWN0b3JzLnBhZ2VRdWVzdGlvbnMpO1xyXG5cclxuICBnZXQgZkN0cmxzKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuckZvcm0uY29udHJvbHM7XHJcbiAgfVxyXG5cclxuICBnZXQgcXVlc3Rpb25UeXBlRW51bSgpIHtcclxuICAgIHJldHVybiBRdWVzdGlvblR5cGVFbnVtO1xyXG4gIH1cclxuXHJcbiAgQElucHV0KCkgc2V0IHNldFF1ZXN0aW9uKHZhbHVlOiBRdWVzdGlvbk5ncnhNb2RlbCkge1xyXG4gICAgaWYgKCF0aGlzLnN1cnZleVF1ZXN0aW9uKSB7XHJcbiAgICAgIHRoaXMuc3VydmV5UXVlc3Rpb24gPSB2YWx1ZS5xdWVzdGlvbkFsbEluZm87XHJcbiAgICAgIHRoaXMuckZvcm0ucGF0Y2hWYWx1ZSh7XHJcbiAgICAgICAgaWQ6IHZhbHVlLnF1ZXN0aW9uSWQsXHJcbiAgICAgICAgbmFtZTogdmFsdWUucXVlc3Rpb25BbGxJbmZvLnF1ZXN0aW9uTmFtZSxcclxuICAgICAgICB0aXRsZTogdmFsdWUucXVlc3Rpb25BbGxJbmZvLnF1ZXN0aW9uVGl0bGUsXHJcbiAgICAgICAgdHlwZUlkOiB2YWx1ZS5xdWVzdGlvbkFsbEluZm8ucXVlc3Rpb25UeXBlSWQsXHJcbiAgICAgICAgZGVzY3JpcHRpb246IHZhbHVlLnF1ZXN0aW9uQWxsSW5mby5xdWVzdGlvbkRlc2NyaXB0aW9uLFxyXG4gICAgICAgIGlzRGlzYWJsZWQ6IHZhbHVlLnF1ZXN0aW9uQWxsSW5mby5pc1JlYWRPbmx5LFxyXG4gICAgICAgIGlzU2hvdzogdmFsdWUucXVlc3Rpb25BbGxJbmZvLmlzVmlzYWJsZVxyXG4gICAgICB9KTtcclxuXHJcbiAgICAgIHZhbHVlLnF1ZXN0aW9uQWxsSW5mby5zdXJ2ZXlBbnN3ZXJzLmZvckVhY2goc3VydmVyeUFuc3dlciA9PiB7XHJcbiAgICAgICAgdGhpcy5mQ3RybHMuYW5zd2VyQXJyYXkucHVzaCh0aGlzLl9mb3JtQnVpbGRlci5ncm91cDxBbnN3ZXJDaGlsZE9mUXVlc3Rpb25SYWRpb0J1dHRvblRlbXBsYXRlRm9ybUludGVyZmFjZT4oe1xyXG4gICAgICAgICAgaWQ6IG5ldyBGb3JtQ29udHJvbChzdXJ2ZXJ5QW5zd2VyLmFuc3dlcklkKSxcclxuICAgICAgICAgIHRpdGxlOiBuZXcgRm9ybUNvbnRyb2woc3VydmVyeUFuc3dlci5hbnN3ZXJUaXRsZSksXHJcbiAgICAgICAgICBpc1NlbGVjdGVkOiBuZXcgRm9ybUNvbnRyb2woZmFsc2UpXHJcbiAgICAgICAgfSkpXHJcbiAgICAgIH0pXHJcblxyXG4gICAgICAgICBpZiAodmFsdWUuaXNTaG93ID09IHRydWUpIHtcclxuICAgICAgICB0aGlzLmZDdHJscy5pc1Nob3cuc2V0VmFsdWUodmFsdWUuaXNTaG93KTtcclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKHZhbHVlLmlzUmVxdWlyZWQgPT0gdHJ1ZSkge1xyXG4gICAgICAgIHRoaXMuZkN0cmxzLmFuc3dlci5hZGRWYWxpZGF0b3JzKFtWYWxpZGF0b3JzLnJlcXVpcmVkXSk7XHJcbiAgICAgICAgdGhpcy5mQ3RybHMuYW5zd2VyLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdmFyIHF1ZXN0aW9uID0gdGhpcy5xdWVzdGlvbkFycigpLmZpbmQoeCA9PiB4LnF1ZXN0aW9uSWQgPT0gdmFsdWUucXVlc3Rpb25JZCk7XHJcbiAgICAgIGlmIChxdWVzdGlvbj8uYW5zd2VySWQpIHtcclxuICAgICAgICB0aGlzLnJGb3JtLnBhdGNoVmFsdWUoe2Fuc3dlciA6IHF1ZXN0aW9uLmFuc3dlcklkLFxyXG4gICAgICAgICAgaXNEaXNhYmxlZDogcXVlc3Rpb24uaXNEaXNhYmxlZCxcclxuICAgICAgICAgIGlzU2hvdzogcXVlc3Rpb24uaXNTaG93XHJcbiAgICAgICAgfSx7ZW1pdEV2ZW50OmZhbHNlfSk7XHJcbiAgICAgICAgdGhpcy5mQ3RybHMuYW5zd2VyQXJyYXkuY29udHJvbHMuZmluZCh4ID0+IHgudmFsdWUuaWQgPT0gcXVlc3Rpb24uYW5zd2VySWQpLmNvbnRyb2xzLmlzU2VsZWN0ZWQuc2V0VmFsdWUodHJ1ZSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX2Zvcm1CdWlsZGVyOiBGb3JtQnVpbGRlciwgcHJpdmF0ZSBfc3VydmV5TGliU2VydmljZTogU3VydmV5TGliU2VydmljZSAsXHJcbiAgICBwcml2YXRlIF9TdG9yZTpTdG9yZSkge1xyXG4gICAgdGhpcy5yRm9ybSA9IHRoaXMuX2Zvcm1CdWlsZGVyLmdyb3VwPFF1ZXN0aW9uUmFkaW9CdXR0b25UZW1wbGF0ZUZvcm1JbnRlcmZhY2U+KHtcclxuICAgICAgaWQ6IG5ldyBGb3JtQ29udHJvbCggbnVsbCksXHJcbiAgICAgIG5hbWU6IG5ldyBGb3JtQ29udHJvbCggbnVsbCksXHJcbiAgICAgIHRpdGxlOiBuZXcgRm9ybUNvbnRyb2woIG51bGwpLFxyXG4gICAgICB0eXBlSWQ6ICBuZXcgRm9ybUNvbnRyb2woIG51bGwpLFxyXG4gICAgICBkZXNjcmlwdGlvbjogbmV3IEZvcm1Db250cm9sKCBudWxsKSxcclxuICAgICAgYW5zd2VyOiAgbmV3IEZvcm1Db250cm9sKCBudWxsKSxcclxuICAgICAgaXNEaXNhYmxlZDogbmV3IEZvcm1Db250cm9sKCBmYWxzZSksXHJcbiAgICAgIGlzU2hvdzogbmV3IEZvcm1Db250cm9sKCB0cnVlKSxcclxuICAgICAgYW5zd2VyQXJyYXk6IHRoaXMuX2Zvcm1CdWlsZGVyLmFycmF5PEZvcm1Hcm91cDwgQW5zd2VyQ2hpbGRPZlF1ZXN0aW9uUmFkaW9CdXR0b25UZW1wbGF0ZUZvcm1JbnRlcmZhY2U+PihbXSlcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmZDdHJscy5hbnN3ZXIudmFsdWVDaGFuZ2VzLnBpcGUoKS5waXBlKGRlYm91bmNlVGltZSgyMDApLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpKS5zdWJzY3JpYmUodmFsdWUgPT4ge1xyXG4gICAgICBjb25zdCBmb3JtVmFsdWUgPSB0aGlzLnJGb3JtLnZhbHVlO1xyXG4gICAgICB0aGlzLl9TdG9yZS5kaXNwYXRjaChzdXJ2ZXlBY3Rpb25zLnVwZGF0ZVF1ZXN0aW9uQW5zd2VyKHtcclxuICAgICAgICBxdWVzdGlvbklkOiBmb3JtVmFsdWUuaWQsXHJcbiAgICAgICAgYW5zd2VyOiB2YWx1ZSxcclxuICAgICAgICBpc1ZhbGlkOiB0aGlzLmZDdHJscy5hbnN3ZXIudmFsaWRcclxuICAgICAgfSkpXHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLl9TdG9yZS5zZWxlY3QocXVlc3Rpb25TZWxlY3RvcnMucGFnZVF1ZXN0aW9ucykucGlwZShtYXAoYXJyID0+IGFyci5maW5kKHggPT4geC5xdWVzdGlvbklkID09IHRoaXMuZkN0cmxzLmlkLnZhbHVlKSkpXHJcbiAgICAucGlwZShmaWx0ZXIoeCA9PiB4ICE9IG51bGwpLCBwYWlyd2lzZSgpKS5zdWJzY3JpYmUodmFsdWUgPT4ge1xyXG4gICAgICBjb25zdCBvbGRWYWx1ZSA9IHZhbHVlWzBdO1xyXG4gICAgICBjb25zdCBuZXdWYWx1ZSA9IHZhbHVlWzFdO1xyXG5cclxuICAgICAgLy91cGRhdGVkIGFuc3dlclxyXG4gICAgICBpZiAob2xkVmFsdWU/LmFuc3dlcklkICE9IG5ld1ZhbHVlPy5hbnN3ZXJJZCkge1xyXG4gICAgICAgIHRoaXMuZkN0cmxzLmFuc3dlci5zZXRWYWx1ZShuZXdWYWx1ZT8uYW5zd2VySWQse2VtaXRFdmVudDpmYWxzZX0pO1xyXG5cclxuICAgICAgICBjb25zdCBncm91cEluZGV4ID0gdGhpcy5mQ3RybHMuYW5zd2VyQXJyYXkudmFsdWUuZmluZEluZGV4KHggPT4geC5pZCA9PSBuZXdWYWx1ZT8uYW5zd2VySWQpO1xyXG4gICAgICAgIGlmIChncm91cEluZGV4ID4gLTEpIHtcclxuICAgICAgICAgIHRoaXMuZkN0cmxzLmFuc3dlckFycmF5LmF0KGdyb3VwSW5kZXgpLmNvbnRyb2xzLmlzU2VsZWN0ZWQuc2V0VmFsdWUodHJ1ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAvL3VwZGF0ZWQgaXNEaXNhYmxlZFxyXG4gICAgICBpZiAob2xkVmFsdWU/LmlzRGlzYWJsZWQgIT0gbmV3VmFsdWU/LmlzRGlzYWJsZWQpIHtcclxuICAgICAgICB0aGlzLmZDdHJscy5pc0Rpc2FibGVkLnNldFZhbHVlKG5ld1ZhbHVlPy5pc0Rpc2FibGVkKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgLy91cGRhdGVkIGlzU2hvd1xyXG4gICAgICBpZiAob2xkVmFsdWU/LmlzU2hvdyAhPSBuZXdWYWx1ZT8uaXNTaG93KSB7XHJcbiAgICAgICAgdGhpcy5mQ3RybHMuaXNTaG93LnNldFZhbHVlKG5ld1ZhbHVlPy5pc1Nob3cpO1xyXG5cclxuICAgICAgICBpZiAobmV3VmFsdWU/LmlzU2hvdyA9PSBmYWxzZSkge1xyXG4gICAgICAgICAgdGhpcy5mQ3RybHMuYW5zd2VyLnNldFZhbHVlKG51bGwpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBvbkNoYW5nZUFuc3dlcihpdGVtOiBGb3JtR3JvdXA8IEFuc3dlckNoaWxkT2ZRdWVzdGlvblJhZGlvQnV0dG9uVGVtcGxhdGVGb3JtSW50ZXJmYWNlPikge1xyXG4gICAgdGhpcy5mQ3RybHMuYW5zd2VyLnNldFZhbHVlKGl0ZW0udmFsdWUuaWQpO1xyXG4gIH1cclxuXHJcbiAgY29udmVydFRvRm9ybUNvbnRyb2woZWxlbWVudDogYW55KSB7XHJcbiAgICByZXR1cm4gZWxlbWVudCBhcyBGb3JtQ29udHJvbDtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cInF1YXN0aW9uXCIgW2F0dHIuaWRdPVwiJ3F1ZXN0aW9uXycrZkN0cmxzLmlkLnZhbHVlXCIgIFtuZ0NsYXNzXT1cInsnaW52YWxpZC1xdWVzdGlvbic6IGZDdHJscy5hbnN3ZXIuaW52YWxpZCAgLCAnZC1ub25lJzpmQ3RybHMuaXNTaG93LnZhbHVlICE9IHRydWV9XCI+XHJcbiAgICA8aDMgY2xhc3M9XCJxdWFzdGlvbi10aXRsZSBcIj5cclxuICAgICAgICA8c3BhbiBbaW5uZXJIVE1MXT1cInN1cnZleVF1ZXN0aW9uPy5xdWVzdGlvblRpdGxlXCI+PC9zcGFuPlxyXG4gICAgICAgIDxzcGFuIHN0eWxlPVwiY29sb3I6IHJlZDtcIiAqbmdJZj1cInN1cnZleVF1ZXN0aW9uLmlzUmVxdWlyZWRcIj4qPC9zcGFuPlxyXG4gICAgPC9oMz5cclxuICAgIDxkaXYgY2xhc3M9XCJyYWRpby1idXR0b24tcXVhc3Rpb25cIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1jaGVjayBmb3JtLWNoZWNrLXJhZGlvIGZvcm0tY2hlY2staW5saW5lXCIgXHJcbiAgICAgICAgKm5nRm9yPVwibGV0IGl0ZW0gb2YgIGZDdHJscy5hbnN3ZXJBcnJheS5jb250cm9scztsZXQgaSA9IGluZGV4XCI+XHJcbiAgICAgICAgICAgIDxpbnB1dCBjbGFzcz1cImZvcm0tY2hlY2staW5wdXRcIiB0eXBlPVwicmFkaW9cIiAoY2hhbmdlKT1cIm9uQ2hhbmdlQW5zd2VyKGl0ZW0pXCIgIFtkaXNhYmxlZF09XCJmQ3RybHMuaXNEaXNhYmxlZC52YWx1ZVwiXHJcbiAgICAgICAgICAgICAgICBuYW1lPVwie3tlbGVtSWR9fV9fcmFkaW8tYnRuLW9wdGlvblwiIGlkPVwie3tlbGVtSWR9fV9fcmFkaW8tYnRuX3t7aX19XCIgW2NoZWNrZWRdPVwiaXRlbS52YWx1ZS5pc1NlbGVjdGVkID09IHRydWU/IHRydWUgOiBudWxsXCI+XHJcbiAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImZvcm0tY2hlY2stbGFiZWxcIiBmb3I9XCJ7e2VsZW1JZH19X19yYWRpby1idG5fe3tpfX1cIiBbaW5uZXJIVE1MXT1cIml0ZW0udmFsdWUudGl0bGVcIj48L2xhYmVsPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
|
|
@@ -98,14 +98,6 @@ export class SurveyEffects {
|
|
|
98
98
|
}
|
|
99
99
|
});
|
|
100
100
|
});
|
|
101
|
-
const showedQuestionIds = toggleShowedQuestionIds.filter(x => x.isShow == true).map(x => x.questionId);
|
|
102
|
-
if (showedQuestionIds.length > 0) {
|
|
103
|
-
console.log('showedQuestionIds', showedQuestionIds);
|
|
104
|
-
this._store.dispatch(surveyActions.updateQuestionsShow({
|
|
105
|
-
questionIds: showedQuestionIds,
|
|
106
|
-
isShow: true
|
|
107
|
-
}));
|
|
108
|
-
}
|
|
109
101
|
const hiddenQuestionIds = toggleShowedQuestionIds.filter(x => x.isShow == false).map(x => x.questionId);
|
|
110
102
|
if (hiddenQuestionIds.length > 0) {
|
|
111
103
|
console.log('hiddenQuestionIds', hiddenQuestionIds);
|
|
@@ -114,6 +106,14 @@ export class SurveyEffects {
|
|
|
114
106
|
isShow: false
|
|
115
107
|
}));
|
|
116
108
|
}
|
|
109
|
+
const showedQuestionIds = toggleShowedQuestionIds.filter(x => x.isShow == true).map(x => x.questionId);
|
|
110
|
+
if (showedQuestionIds.length > 0) {
|
|
111
|
+
console.log('showedQuestionIds', showedQuestionIds);
|
|
112
|
+
this._store.dispatch(surveyActions.updateQuestionsShow({
|
|
113
|
+
questionIds: showedQuestionIds,
|
|
114
|
+
isShow: true
|
|
115
|
+
}));
|
|
116
|
+
}
|
|
117
117
|
const disabledQuestionIds = toggleDisabledQuestionIds.filter(x => x.isDisabled == true).map(x => x.questionId);
|
|
118
118
|
if (disabledQuestionIds.length > 0) {
|
|
119
119
|
console.log('disabledQuestionIds', disabledQuestionIds);
|
|
@@ -144,4 +144,4 @@ export class SurveyEffects {
|
|
|
144
144
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SurveyEffects, decorators: [{
|
|
145
145
|
type: Injectable
|
|
146
146
|
}], ctorParameters: function () { return [{ type: i1.Actions }, { type: i2.Store }, { type: i3.CheckRuleExpsUsecase }, { type: i4.ApiService }]; } });
|
|
147
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VydmV5LmVmZmVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3N1cnZlcnktbGliL3NyYy9saWIvY29yZS9zdGF0ZXMvc3VydmV5LXN0b3JlL3N1cnZleS5lZmZlY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQVcsWUFBWSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU5RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM5RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFaEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUM3RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQzs7Ozs7O0FBSS9FLE1BQU0sT0FBTyxhQUFhO0lBQ3RCLFlBQW9CLFFBQWlCLEVBQVUsTUFBYSxFQUNoRCxxQkFBMkMsRUFBVSxXQUF1QjtRQURwRSxhQUFRLEdBQVIsUUFBUSxDQUFTO1FBQVUsV0FBTSxHQUFOLE1BQU0sQ0FBTztRQUNoRCwwQkFBcUIsR0FBckIscUJBQXFCLENBQXNCO1FBQVUsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUFHeEYsMEJBQXFCLEdBQUcsWUFBWSxDQUFDLEdBQUcsRUFBRSxDQUN0QyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLG9CQUFvQixDQUFDLEVBQUUsY0FBYyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsRUFDbkgsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsaUJBQWlCLENBQUMsWUFBWSxDQUFDLENBQUMsRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxPQUFPLEVBQUUsV0FBVyxDQUFDLEVBQUUsRUFBRTtZQUNoRyxJQUFJLGVBQWUsR0FBdUMsRUFBRSxDQUFDO1lBQzdELE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7Z0JBQ25CLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxFQUFFO29CQUNqQyxlQUFlLENBQUMsSUFBSSxDQUFDO3dCQUNqQixNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU07d0JBQ25CLFVBQVUsRUFBRSxZQUFZLENBQUMsVUFBVTtxQkFDdEMsQ0FBQyxDQUFBO2dCQUNOLENBQUMsQ0FBQyxDQUFBO1lBQ04sQ0FBQyxDQUFDLENBQUE7WUFFRixJQUFJLGlCQUFpQixHQUFHLGVBQWUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsVUFBVSxJQUFJLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7WUFDbEgsSUFBSSxHQUFHLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksSUFBSSxDQUFDLENBQUM7WUFFbEYsSUFBSSx1QkFBdUIsR0FBMkMsRUFBRSxDQUFDO1lBQ3pFLElBQUkseUJBQXlCLEdBQStDLEVBQUUsQ0FBQztZQUMvRSxHQUFHLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO2dCQUNmLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxPQUFPLENBQUM7b0JBQy9CLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTtvQkFDdkIsU0FBUyxFQUFFLFdBQVc7aUJBQ3pCLENBQUMsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUU7b0JBRWxCLElBQUksUUFBUSxHQUFHLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksS0FBSyxDQUFDLENBQUMsTUFBTSxJQUFJLENBQUMsQ0FBQztvQkFDOUUsSUFBSSxRQUFRLEVBQUU7d0JBQ1YsSUFBSSxDQUFDLG1CQUFtQixDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsRUFBRTs0QkFDOUMsSUFBSSxJQUFJLENBQUMsYUFBYSxJQUFJLGVBQWUsQ0FBQyxJQUFJLEVBQUU7Z0NBQzVDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxFQUFFLFVBQVUsRUFBRSxjQUFjLENBQUMsVUFBVSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDOzZCQUN6RjtpQ0FBTSxJQUFJLElBQUksQ0FBQyxhQUFhLElBQUksZUFBZSxDQUFDLElBQUksRUFBRTtnQ0FDbkQsdUJBQXVCLENBQUMsSUFBSSxDQUFDLEVBQUUsVUFBVSxFQUFFLGNBQWMsQ0FBQyxVQUFVLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7NkJBQzFGO2lDQUFNLElBQUksSUFBSSxDQUFDLGFBQWEsSUFBSSxlQUFlLENBQUMsTUFBTSxFQUFFO2dDQUNyRCx5QkFBeUIsQ0FBQyxJQUFJLENBQUMsRUFBRSxVQUFVLEVBQUUsY0FBYyxDQUFDLFVBQVUsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQzs2QkFDaEc7aUNBQU0sSUFBSSxJQUFJLENBQUMsYUFBYSxJQUFJLGVBQWUsQ0FBQyxPQUFPLEVBQUU7Z0NBQ3RELHlCQUF5QixDQUFDLElBQUksQ0FBQyxFQUFFLFVBQVUsRUFBRSxjQUFjLENBQUMsVUFBVSxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDOzZCQUMvRjtpQ0FBTSxJQUFJLElBQUksQ0FBQyxhQUFhLElBQUksZUFBZSxDQUFDLFNBQVMsRUFBRTs2QkFFM0Q7NEJBRUQsTUFBTSxRQUFRLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxVQUFVLElBQUksY0FBYyxDQUFDLFVBQVUsQ0FBQyxDQUFDOzRCQUVsRiw2QkFBNkI7NEJBQzdCLElBQUksUUFBUSxDQUFDLFlBQVksSUFBSSxnQkFBZ0IsQ0FBQyxNQUFNLElBQUksUUFBUSxDQUFDLGVBQWUsSUFBSSxJQUFJLEVBQUU7Z0NBQ3RGLElBQUksWUFBWSxHQUFHLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsZ0JBQWdCLElBQUksUUFBUSxDQUFDLFVBQVUsQ0FBQyxDQUFDO2dDQUN0RixZQUFZLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxFQUFFO29DQUMvQixJQUFJLElBQUksQ0FBQyxhQUFhLElBQUksZUFBZSxDQUFDLElBQUksRUFBRTt3Q0FDNUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLEVBQUUsVUFBVSxFQUFFLFdBQVcsQ0FBQyxVQUFVLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7cUNBQ3RGO3lDQUFNLElBQUksSUFBSSxDQUFDLGFBQWEsSUFBSSxlQUFlLENBQUMsSUFBSSxFQUFFO3dDQUNuRCx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsRUFBRSxVQUFVLEVBQUUsV0FBVyxDQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztxQ0FDdkY7eUNBQ0ksSUFBSSxJQUFJLENBQUMsYUFBYSxJQUFJLGVBQWUsQ0FBQyxNQUFNLEVBQUU7d0NBQ25ELHlCQUF5QixDQUFDLElBQUksQ0FBQyxFQUFFLFVBQVUsRUFBRSxXQUFXLENBQUMsVUFBVSxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO3FDQUU3Rjt5Q0FBTSxJQUFJLElBQUksQ0FBQyxhQUFhLElBQUksZUFBZSxDQUFDLE9BQU8sRUFBRTt3Q0FDdEQseUJBQXlCLENBQUMsSUFBSSxDQUFDLEVBQUUsVUFBVSxFQUFFLFdBQVcsQ0FBQyxVQUFVLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7cUNBQzVGO2dDQUNMLENBQUMsQ0FBQyxDQUFDOzZCQUNOO3dCQUVMLENBQUMsQ0FBQyxDQUFDO3FCQUNOO3lCQUNJO3dCQUNELElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLEVBQUU7NEJBQzlDLE1BQU0sUUFBUSxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsVUFBVSxJQUFJLGNBQWMsQ0FBQyxVQUFVLENBQUMsQ0FBQzs0QkFDbEYsSUFBSSxRQUFRLENBQUMsTUFBTSxJQUFJLFFBQVEsQ0FBQyxjQUFjLEVBQUU7Z0NBQzVDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxFQUFFLFVBQVUsRUFBRSxjQUFjLENBQUMsVUFBVSxFQUFFLE1BQU0sRUFBRSxRQUFRLENBQUMsY0FBYyxFQUFFLENBQUMsQ0FBQzs2QkFDNUc7NEJBRUQsSUFBSSxRQUFRLENBQUMsVUFBVSxJQUFJLFFBQVEsQ0FBQyxrQkFBa0IsRUFBRTtnQ0FDcEQseUJBQXlCLENBQUMsSUFBSSxDQUFDLEVBQUUsVUFBVSxFQUFFLGNBQWMsQ0FBQyxVQUFVLEVBQUUsVUFBVSxFQUFFLFFBQVEsQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLENBQUM7NkJBQ3RIOzRCQUVELElBQUksUUFBUSxDQUFDLFlBQVksSUFBSSxnQkFBZ0IsQ0FBQyxNQUFNLElBQUksUUFBUSxDQUFDLGVBQWUsSUFBSSxJQUFJLEVBQUU7Z0NBQ3RGLElBQUksWUFBWSxHQUFHLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsZ0JBQWdCLElBQUksUUFBUSxDQUFDLFVBQVUsQ0FBQyxDQUFDO2dDQUN0RixZQUFZLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxFQUFFO29DQUMvQixJQUFJLFdBQVcsQ0FBQyxNQUFNLElBQUksV0FBVyxDQUFDLGNBQWMsRUFBRTt3Q0FDbEQsdUJBQXVCLENBQUMsSUFBSSxDQUFDLEVBQUUsVUFBVSxFQUFFLFdBQVcsQ0FBQyxVQUFVLEVBQUUsTUFBTSxFQUFFLFdBQVcsQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDO3FDQUM1RztvQ0FFRCxJQUFJLFdBQVcsQ0FBQyxVQUFVLElBQUksV0FBVyxDQUFDLGtCQUFrQixFQUFFO3dDQUMxRCx5QkFBeUIsQ0FBQyxJQUFJLENBQUMsRUFBRSxVQUFVLEVBQUUsV0FBVyxDQUFDLFVBQVUsRUFBRSxVQUFVLEVBQUUsUUFBUSxDQUFDLGtCQUFrQixFQUFFLENBQUMsQ0FBQztxQ0FDbkg7Z0NBQ0wsQ0FBQyxDQUFDLENBQUM7NkJBQ047d0JBQ0wsQ0FBQyxDQUFDLENBQUM7cUJBQ047Z0JBQ0wsQ0FBQyxDQUFDLENBQUM7WUFDUCxDQUFDLENBQUMsQ0FBQztZQUVILE1BQU0saUJBQWlCLEdBQUcsdUJBQXVCLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDdkcsSUFBSSxpQkFBaUIsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO2dCQUM5QixPQUFPLENBQUMsR0FBRyxDQUFDLG1CQUFtQixFQUFFLGlCQUFpQixDQUFDLENBQUM7Z0JBQ3BELElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxtQkFBbUIsQ0FBQztvQkFDbkQsV0FBVyxFQUFFLGlCQUFpQjtvQkFDOUIsTUFBTSxFQUFFLElBQUk7aUJBQ2YsQ0FBQyxDQUFDLENBQUM7YUFDUDtZQUdELE1BQU0saUJBQWlCLEdBQUcsdUJBQXVCLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sSUFBSSxLQUFLLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDeEcsSUFBSSxpQkFBaUIsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO2dCQUM5QixPQUFPLENBQUMsR0FBRyxDQUFDLG1CQUFtQixFQUFFLGlCQUFpQixDQUFDLENBQUM7Z0JBQ3BELElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxtQkFBbUIsQ0FBQztvQkFDbkQsV0FBVyxFQUFFLGlCQUFpQjtvQkFDOUIsTUFBTSxFQUFFLEtBQUs7aUJBQ2hCLENBQUMsQ0FBQyxDQUFDO2FBQ1A7WUFHRCxNQUFNLG1CQUFtQixHQUFHLHlCQUF5QixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQy9HLElBQUksbUJBQW1CLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtnQkFDaEMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxxQkFBcUIsRUFBRSxtQkFBbUIsQ0FBQyxDQUFDO2dCQUN4RCxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsc0JBQXNCLENBQUM7b0JBQ3RELFdBQVcsRUFBRSxtQkFBbUI7b0JBQ2hDLFVBQVUsRUFBRSxJQUFJO2lCQUNuQixDQUFDLENBQUMsQ0FBQzthQUNQO1lBRUQsTUFBTSxrQkFBa0IsR0FBRyx5QkFBeUIsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsVUFBVSxJQUFJLEtBQUssQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUMvRyxJQUFJLGtCQUFrQixDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7Z0JBQy9CLE9BQU8sQ0FBQyxHQUFHLENBQUMsb0JBQW9CLEVBQUUsa0JBQWtCLENBQUMsQ0FBQztnQkFDdEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLHNCQUFzQixDQUFDO29CQUN0RCxXQUFXLEVBQUUsa0JBQWtCO29CQUMvQixVQUFVLEVBQUUsS0FBSztpQkFDcEIsQ0FBQyxDQUFDLENBQUM7YUFDUDtZQUVELE9BQU8sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFBO1FBQ2pCLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUVsQyx3QkFBbUIsR0FBRyxZQUFZLENBQUMsR0FBRyxFQUFFLENBQ3BDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsa0JBQWtCLENBQUMsRUFBRSxjQUFjLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLGNBQWMsQ0FBQyxDQUFDLEVBQ3pILE1BQU0sQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFFLGNBQWMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxjQUFjLENBQUMsTUFBTSxJQUFJLENBQUMsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDL0UsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLGtCQUFrQixFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO2dCQUMxRCxPQUFPLGFBQWEsQ0FBQyx5QkFBeUIsQ0FBQyxFQUFFLGNBQWMsRUFBRSxHQUFHLENBQUMsZUFBZSxFQUFFLENBQUMsQ0FBQztZQUM1RixDQUFDLENBQUMsQ0FBQyxDQUFBO1FBQ1AsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBMUliLENBQUM7OEdBSFEsYUFBYTtrSEFBYixhQUFhOzsyRkFBYixhQUFhO2tCQUR6QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IEFjdGlvbnMsIGNyZWF0ZUVmZmVjdCwgb2ZUeXBlIH0gZnJvbSBcIkBuZ3J4L2VmZmVjdHNcIjtcclxuaW1wb3J0IHsgU3RvcmUgfSBmcm9tIFwiQG5ncngvc3RvcmVcIjtcclxuaW1wb3J0IHsgd2l0aExhdGVzdEZyb20sIGZpbHRlciwgc3dpdGNoTWFwLCBtYXAsIGNhdGNoRXJyb3IsIG9mIH0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHsgc3VydmV5QWN0aW9ucyB9IGZyb20gXCIuL3N1cnZleS5hY3Rpb25cIjtcclxuaW1wb3J0IHsgQ2hlY2tSdWxlRXhwc1VzZWNhc2UgfSBmcm9tIFwiLi4vLi4vLi4vdXNlY2FzZXMvY2hlY2stcnVsZS1leHBzLnVzZWNhc2VcIjtcclxuaW1wb3J0IHsgc3VydmV5U2VsZWN0b3JzIH0gZnJvbSBcIi4vc3VydmV5LnNlbGVjdG9yXCI7XHJcbmltcG9ydCB7IHF1ZXN0aW9uU2VsZWN0b3JzIH0gZnJvbSBcIi4vcXVlc3Rpb24uc2VsZWN0b3JcIjtcclxuaW1wb3J0IHsgTG9naWNBY3Rpb25FbnVtIH0gZnJvbSBcIi4uLy4uLy4uLy4uL3NoYXJlZC9lbnVtcy9sb2dpYy1hY3Rpb24uZW51bVwiO1xyXG5pbXBvcnQgeyBRdWVzdGlvblR5cGVFbnVtIH0gZnJvbSBcIi4uLy4uLy4uLy4uL3NoYXJlZC9lbnVtcy9xdWVzdGlvbi10eXBlLmVudW1cIjtcclxuaW1wb3J0IHsgQXBpU2VydmljZSB9IGZyb20gXCIuLi8uLi8uLi9zZXJ2aWNlcy9hcGkuc2VydmljZVwiO1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgU3VydmV5RWZmZWN0cyB7XHJcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9hY3Rpb25zOiBBY3Rpb25zLCBwcml2YXRlIF9zdG9yZTogU3RvcmUsXHJcbiAgICAgICAgcHJpdmF0ZSBfY2hlY2tSdWxlRXhwc1VzZWNhc2U6IENoZWNrUnVsZUV4cHNVc2VjYXNlLCBwcml2YXRlIF9hcGlTZXJ2aWNlOiBBcGlTZXJ2aWNlKSB7XHJcbiAgICB9XHJcblxyXG4gICAgdXBkYXRlUXVlc3Rpb25BbnN3ZXIkID0gY3JlYXRlRWZmZWN0KCgpID0+XHJcbiAgICAgICAgdGhpcy5fYWN0aW9ucy5waXBlKG9mVHlwZShzdXJ2ZXlBY3Rpb25zLnVwZGF0ZVF1ZXN0aW9uQW5zd2VyKSwgd2l0aExhdGVzdEZyb20odGhpcy5fc3RvcmUuc2VsZWN0KHN1cnZleVNlbGVjdG9ycy5ydWxlQXJyKVxyXG4gICAgICAgICAgICAsIHRoaXMuX3N0b3JlLnNlbGVjdChxdWVzdGlvblNlbGVjdG9ycy5hbGxRdWVzdGlvbnMpKSwgc3dpdGNoTWFwKChbYWN0aW9uLCBydWxlQXJyLCBxdWVzdGlvbkFycl0pID0+IHtcclxuICAgICAgICAgICAgICAgIHZhciBmb3JtYXRlZFJ1bGVBcnI6IHsgcnVsZUlkOiBhbnksIHF1ZXN0aW9uSWQ6IGFueSB9W10gPSBbXTtcclxuICAgICAgICAgICAgICAgIHJ1bGVBcnIuZm9yRWFjaChydWxlID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBydWxlLnJ1bGVFeHBzLmZvckVhY2gocnVsZVF1ZXN0aW9uID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9ybWF0ZWRSdWxlQXJyLnB1c2goe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcnVsZUlkOiBydWxlLnJ1bGVJZCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHF1ZXN0aW9uSWQ6IHJ1bGVRdWVzdGlvbi5xdWVzdGlvbklkXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgIH0pXHJcblxyXG4gICAgICAgICAgICAgICAgdmFyIHNlbGVjdGVkUnVsZUlkQXJyID0gZm9ybWF0ZWRSdWxlQXJyLmZpbHRlcih4ID0+IHgucXVlc3Rpb25JZCA9PSBhY3Rpb24ucXVlc3Rpb25JZCkubWFwKHggPT4gTnVtYmVyKHgucnVsZUlkKSk7XHJcbiAgICAgICAgICAgICAgICB2YXIgYXJyID0gcnVsZUFyci5maWx0ZXIoeCA9PiBzZWxlY3RlZFJ1bGVJZEFyci5maW5kKGMgPT4gYyA9PSB4LnJ1bGVJZCkgIT0gbnVsbCk7XHJcblxyXG4gICAgICAgICAgICAgICAgdmFyIHRvZ2dsZVNob3dlZFF1ZXN0aW9uSWRzOiB7IHF1ZXN0aW9uSWQ6IGFueSwgaXNTaG93OiBib29sZWFuIH1bXSA9IFtdO1xyXG4gICAgICAgICAgICAgICAgdmFyIHRvZ2dsZURpc2FibGVkUXVlc3Rpb25JZHM6IHsgcXVlc3Rpb25JZDogYW55LCBpc0Rpc2FibGVkOiBib29sZWFuIH1bXSA9IFtdO1xyXG4gICAgICAgICAgICAgICAgYXJyLmZvckVhY2gocnVsZSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fY2hlY2tSdWxlRXhwc1VzZWNhc2UuZXhlY3V0ZSh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJ1bGVFeHBzOiBydWxlLnJ1bGVFeHBzLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBxdWVzdGlvbnM6IHF1ZXN0aW9uQXJyLFxyXG4gICAgICAgICAgICAgICAgICAgIH0pLnN1YnNjcmliZShyZXN1bHQgPT4ge1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGlzUGFzc2VkID0gcmVzdWx0LmV4cHJlc3Rpb25SZXN1bHRBcnIuZmlsdGVyKHggPT4geCA9PSBmYWxzZSkubGVuZ3RoID09IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpc1Bhc3NlZCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcnVsZS5ydWxlUmVzdWx0UXVlc3Rpb25zLmZvckVhY2gocmVzdWx0UXVlc3Rpb24gPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChydWxlLmxvZ2ljQWN0aW9uSWQgPT0gTG9naWNBY3Rpb25FbnVtLlNob3cpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9nZ2xlU2hvd2VkUXVlc3Rpb25JZHMucHVzaCh7IHF1ZXN0aW9uSWQ6IHJlc3VsdFF1ZXN0aW9uLnF1ZXN0aW9uSWQsIGlzU2hvdzogdHJ1ZSB9KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHJ1bGUubG9naWNBY3Rpb25JZCA9PSBMb2dpY0FjdGlvbkVudW0uSGlkZSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b2dnbGVTaG93ZWRRdWVzdGlvbklkcy5wdXNoKHsgcXVlc3Rpb25JZDogcmVzdWx0UXVlc3Rpb24ucXVlc3Rpb25JZCwgaXNTaG93OiBmYWxzZSB9KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHJ1bGUubG9naWNBY3Rpb25JZCA9PSBMb2dpY0FjdGlvbkVudW0uRW5hYmxlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvZ2dsZURpc2FibGVkUXVlc3Rpb25JZHMucHVzaCh7IHF1ZXN0aW9uSWQ6IHJlc3VsdFF1ZXN0aW9uLnF1ZXN0aW9uSWQsIGlzRGlzYWJsZWQ6IGZhbHNlIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAocnVsZS5sb2dpY0FjdGlvbklkID09IExvZ2ljQWN0aW9uRW51bS5EaXNhYmxlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvZ2dsZURpc2FibGVkUXVlc3Rpb25JZHMucHVzaCh7IHF1ZXN0aW9uSWQ6IHJlc3VsdFF1ZXN0aW9uLnF1ZXN0aW9uSWQsIGlzRGlzYWJsZWQ6IHRydWUgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChydWxlLmxvZ2ljQWN0aW9uSWQgPT0gTG9naWNBY3Rpb25FbnVtLlNldEFuc3dlcikge1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHF1ZXN0aW9uID0gcXVlc3Rpb25BcnIuZmluZCh4ID0+IHgucXVlc3Rpb25JZCA9PSByZXN1bHRRdWVzdGlvbi5xdWVzdGlvbklkKTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy91cGRhdGUgbWF0cml4IHN1YiBxdWVzdGlvbnNcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocXVlc3Rpb24ucXVlc3Rpb25UeXBlID09IFF1ZXN0aW9uVHlwZUVudW0uTWF0cml4ICYmIHF1ZXN0aW9uLmlzUXVlc3Rpb25Hcm91cCA9PSB0cnVlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBzdWJRdWVzdGlvbnMgPSBxdWVzdGlvbkFyci5maWx0ZXIoeCA9PiB4LnBhcmVudFF1ZXN0aW9uSWQgPT0gcXVlc3Rpb24ucXVlc3Rpb25JZCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1YlF1ZXN0aW9ucy5mb3JFYWNoKHN1YlF1ZXN0aW9uID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChydWxlLmxvZ2ljQWN0aW9uSWQgPT0gTG9naWNBY3Rpb25FbnVtLlNob3cpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b2dnbGVTaG93ZWRRdWVzdGlvbklkcy5wdXNoKHsgcXVlc3Rpb25JZDogc3ViUXVlc3Rpb24ucXVlc3Rpb25JZCwgaXNTaG93OiB0cnVlIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChydWxlLmxvZ2ljQWN0aW9uSWQgPT0gTG9naWNBY3Rpb25FbnVtLkhpZGUpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b2dnbGVTaG93ZWRRdWVzdGlvbklkcy5wdXNoKHsgcXVlc3Rpb25JZDogc3ViUXVlc3Rpb24ucXVlc3Rpb25JZCwgaXNTaG93OiBmYWxzZSB9KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKHJ1bGUubG9naWNBY3Rpb25JZCA9PSBMb2dpY0FjdGlvbkVudW0uRW5hYmxlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9nZ2xlRGlzYWJsZWRRdWVzdGlvbklkcy5wdXNoKHsgcXVlc3Rpb25JZDogc3ViUXVlc3Rpb24ucXVlc3Rpb25JZCwgaXNEaXNhYmxlZDogZmFsc2UgfSk7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChydWxlLmxvZ2ljQWN0aW9uSWQgPT0gTG9naWNBY3Rpb25FbnVtLkRpc2FibGUpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b2dnbGVEaXNhYmxlZFF1ZXN0aW9uSWRzLnB1c2goeyBxdWVzdGlvbklkOiBzdWJRdWVzdGlvbi5xdWVzdGlvbklkLCBpc0Rpc2FibGVkOiB0cnVlIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBydWxlLnJ1bGVSZXN1bHRRdWVzdGlvbnMuZm9yRWFjaChyZXN1bHRRdWVzdGlvbiA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgcXVlc3Rpb24gPSBxdWVzdGlvbkFyci5maW5kKHggPT4geC5xdWVzdGlvbklkID09IHJlc3VsdFF1ZXN0aW9uLnF1ZXN0aW9uSWQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChxdWVzdGlvbi5pc1Nob3cgIT0gcXVlc3Rpb24uaXNTaG93X2RlZmF1bHQpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9nZ2xlU2hvd2VkUXVlc3Rpb25JZHMucHVzaCh7IHF1ZXN0aW9uSWQ6IHJlc3VsdFF1ZXN0aW9uLnF1ZXN0aW9uSWQsIGlzU2hvdzogcXVlc3Rpb24uaXNTaG93X2RlZmF1bHQgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocXVlc3Rpb24uaXNEaXNhYmxlZCAhPSBxdWVzdGlvbi5pc0Rpc2FibGVkX2RlZmF1bHQpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9nZ2xlRGlzYWJsZWRRdWVzdGlvbklkcy5wdXNoKHsgcXVlc3Rpb25JZDogcmVzdWx0UXVlc3Rpb24ucXVlc3Rpb25JZCwgaXNEaXNhYmxlZDogcXVlc3Rpb24uaXNEaXNhYmxlZF9kZWZhdWx0IH0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHF1ZXN0aW9uLnF1ZXN0aW9uVHlwZSA9PSBRdWVzdGlvblR5cGVFbnVtLk1hdHJpeCAmJiBxdWVzdGlvbi5pc1F1ZXN0aW9uR3JvdXAgPT0gdHJ1ZSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgc3ViUXVlc3Rpb25zID0gcXVlc3Rpb25BcnIuZmlsdGVyKHggPT4geC5wYXJlbnRRdWVzdGlvbklkID09IHF1ZXN0aW9uLnF1ZXN0aW9uSWQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdWJRdWVzdGlvbnMuZm9yRWFjaChzdWJRdWVzdGlvbiA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoc3ViUXVlc3Rpb24uaXNTaG93ICE9IHN1YlF1ZXN0aW9uLmlzU2hvd19kZWZhdWx0KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9nZ2xlU2hvd2VkUXVlc3Rpb25JZHMucHVzaCh7IHF1ZXN0aW9uSWQ6IHN1YlF1ZXN0aW9uLnF1ZXN0aW9uSWQsIGlzU2hvdzogc3ViUXVlc3Rpb24uaXNTaG93X2RlZmF1bHQgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHN1YlF1ZXN0aW9uLmlzRGlzYWJsZWQgIT0gc3ViUXVlc3Rpb24uaXNEaXNhYmxlZF9kZWZhdWx0KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9nZ2xlRGlzYWJsZWRRdWVzdGlvbklkcy5wdXNoKHsgcXVlc3Rpb25JZDogc3ViUXVlc3Rpb24ucXVlc3Rpb25JZCwgaXNEaXNhYmxlZDogcXVlc3Rpb24uaXNEaXNhYmxlZF9kZWZhdWx0IH0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgfSk7XHJcblxyXG4gICAgICAgICAgICAgICAgY29uc3Qgc2hvd2VkUXVlc3Rpb25JZHMgPSB0b2dnbGVTaG93ZWRRdWVzdGlvbklkcy5maWx0ZXIoeCA9PiB4LmlzU2hvdyA9PSB0cnVlKS5tYXAoeCA9PiB4LnF1ZXN0aW9uSWQpO1xyXG4gICAgICAgICAgICAgICAgaWYgKHNob3dlZFF1ZXN0aW9uSWRzLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmxvZygnc2hvd2VkUXVlc3Rpb25JZHMnLCBzaG93ZWRRdWVzdGlvbklkcyk7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fc3RvcmUuZGlzcGF0Y2goc3VydmV5QWN0aW9ucy51cGRhdGVRdWVzdGlvbnNTaG93KHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcXVlc3Rpb25JZHM6IHNob3dlZFF1ZXN0aW9uSWRzLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBpc1Nob3c6IHRydWVcclxuICAgICAgICAgICAgICAgICAgICB9KSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG5cclxuICAgICAgICAgICAgICAgIGNvbnN0IGhpZGRlblF1ZXN0aW9uSWRzID0gdG9nZ2xlU2hvd2VkUXVlc3Rpb25JZHMuZmlsdGVyKHggPT4geC5pc1Nob3cgPT0gZmFsc2UpLm1hcCh4ID0+IHgucXVlc3Rpb25JZCk7XHJcbiAgICAgICAgICAgICAgICBpZiAoaGlkZGVuUXVlc3Rpb25JZHMubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKCdoaWRkZW5RdWVzdGlvbklkcycsIGhpZGRlblF1ZXN0aW9uSWRzKTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLl9zdG9yZS5kaXNwYXRjaChzdXJ2ZXlBY3Rpb25zLnVwZGF0ZVF1ZXN0aW9uc1Nob3coe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBxdWVzdGlvbklkczogaGlkZGVuUXVlc3Rpb25JZHMsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlzU2hvdzogZmFsc2VcclxuICAgICAgICAgICAgICAgICAgICB9KSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG5cclxuICAgICAgICAgICAgICAgIGNvbnN0IGRpc2FibGVkUXVlc3Rpb25JZHMgPSB0b2dnbGVEaXNhYmxlZFF1ZXN0aW9uSWRzLmZpbHRlcih4ID0+IHguaXNEaXNhYmxlZCA9PSB0cnVlKS5tYXAoeCA9PiB4LnF1ZXN0aW9uSWQpO1xyXG4gICAgICAgICAgICAgICAgaWYgKGRpc2FibGVkUXVlc3Rpb25JZHMubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKCdkaXNhYmxlZFF1ZXN0aW9uSWRzJywgZGlzYWJsZWRRdWVzdGlvbklkcyk7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fc3RvcmUuZGlzcGF0Y2goc3VydmV5QWN0aW9ucy51cGRhdGVRdWVzdGlvbnNEaXNhYmxlKHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcXVlc3Rpb25JZHM6IGRpc2FibGVkUXVlc3Rpb25JZHMsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlzRGlzYWJsZWQ6IHRydWVcclxuICAgICAgICAgICAgICAgICAgICB9KSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgY29uc3QgZW5hYmxlZFF1ZXN0aW9uSWRzID0gdG9nZ2xlRGlzYWJsZWRRdWVzdGlvbklkcy5maWx0ZXIoeCA9PiB4LmlzRGlzYWJsZWQgPT0gZmFsc2UpLm1hcCh4ID0+IHgucXVlc3Rpb25JZCk7XHJcbiAgICAgICAgICAgICAgICBpZiAoZW5hYmxlZFF1ZXN0aW9uSWRzLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmxvZygnZW5hYmxlZFF1ZXN0aW9uSWRzJywgZW5hYmxlZFF1ZXN0aW9uSWRzKTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLl9zdG9yZS5kaXNwYXRjaChzdXJ2ZXlBY3Rpb25zLnVwZGF0ZVF1ZXN0aW9uc0Rpc2FibGUoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBxdWVzdGlvbklkczogZW5hYmxlZFF1ZXN0aW9uSWRzLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBpc0Rpc2FibGVkOiBmYWxzZVxyXG4gICAgICAgICAgICAgICAgICAgIH0pKTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICByZXR1cm4gb2YoW10pXHJcbiAgICAgICAgICAgIH0pKSwgeyBkaXNwYXRjaDogZmFsc2UgfSk7XHJcblxyXG4gICAgbG9hZEluc3RpdHV0aW9uQXJyJCA9IGNyZWF0ZUVmZmVjdCgoKSA9PlxyXG4gICAgICAgIHRoaXMuX2FjdGlvbnMucGlwZShvZlR5cGUoc3VydmV5QWN0aW9ucy5sb2FkSW5zdGl0dXRpb25BcnIpLCB3aXRoTGF0ZXN0RnJvbSh0aGlzLl9zdG9yZS5zZWxlY3Qoc3VydmV5U2VsZWN0b3JzLmluc3RpdHV0aW9uQXJyKSlcclxuICAgICAgICAgICAgLCBmaWx0ZXIoKFthY3Rpb24sIGluc3RpdHV0aW9uQXJyXSkgPT4gaW5zdGl0dXRpb25BcnIubGVuZ3RoID09IDApLCBzd2l0Y2hNYXAoKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuX2FwaVNlcnZpY2UuZ2V0QWxsSW5zdGl0dXRpb25zKCkucGlwZShtYXAoKHJlcykgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBzdXJ2ZXlBY3Rpb25zLmxvYWRJbnN0aXR1dGlvbkFyclN1Y2Nlc3MoeyBpbnN0aXR1dGlvbkFycjogcmVzLnJlc3BvbnNlRGV0YWlscyB9KTtcclxuICAgICAgICAgICAgICAgIH0pKVxyXG4gICAgICAgICAgICB9KSkpO1xyXG59XHJcblxyXG4iXX0=
|
|
147
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VydmV5LmVmZmVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3N1cnZlcnktbGliL3NyYy9saWIvY29yZS9zdGF0ZXMvc3VydmV5LXN0b3JlL3N1cnZleS5lZmZlY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQVcsWUFBWSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU5RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM5RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFaEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUM3RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQzs7Ozs7O0FBSS9FLE1BQU0sT0FBTyxhQUFhO0lBQ3RCLFlBQW9CLFFBQWlCLEVBQVUsTUFBYSxFQUNoRCxxQkFBMkMsRUFBVSxXQUF1QjtRQURwRSxhQUFRLEdBQVIsUUFBUSxDQUFTO1FBQVUsV0FBTSxHQUFOLE1BQU0sQ0FBTztRQUNoRCwwQkFBcUIsR0FBckIscUJBQXFCLENBQXNCO1FBQVUsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUFHeEYsMEJBQXFCLEdBQUcsWUFBWSxDQUFDLEdBQUcsRUFBRSxDQUN0QyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLG9CQUFvQixDQUFDLEVBQUUsY0FBYyxDQUFDLElBQUksQ0FBQyxNQUFNLENB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dWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IEFjdGlvbnMsIGNyZWF0ZUVmZmVjdCwgb2ZUeXBlIH0gZnJvbSBcIkBuZ3J4L2VmZmVjdHNcIjtcclxuaW1wb3J0IHsgU3RvcmUgfSBmcm9tIFwiQG5ncngvc3RvcmVcIjtcclxuaW1wb3J0IHsgd2l0aExhdGVzdEZyb20sIGZpbHRlciwgc3dpdGNoTWFwLCBtYXAsIGNhdGNoRXJyb3IsIG9mIH0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHsgc3VydmV5QWN0aW9ucyB9IGZyb20gXCIuL3N1cnZleS5hY3Rpb25cIjtcclxuaW1wb3J0IHsgQ2hlY2tSdWxlRXhwc1VzZWNhc2UgfSBmcm9tIFwiLi4vLi4vLi4vdXNlY2FzZXMvY2hlY2stcnVsZS1leHBzLnVzZWNhc2VcIjtcclxuaW1wb3J0IHsgc3VydmV5U2VsZWN0b3JzIH0gZnJvbSBcIi4vc3VydmV5LnNlbGVjdG9yXCI7XHJcbmltcG9ydCB7IHF1ZXN0aW9uU2VsZWN0b3JzIH0gZnJvbSBcIi4vcXVlc3Rpb24uc2VsZWN0b3JcIjtcclxuaW1wb3J0IHsgTG9naWNBY3Rpb25FbnVtIH0gZnJvbSBcIi4uLy4uLy4uLy4uL3NoYXJlZC9lbnVtcy9sb2dpYy1hY3Rpb24uZW51bVwiO1xyXG5pbXBvcnQgeyBRdWVzdGlvblR5cGVFbnVtIH0gZnJvbSBcIi4uLy4uLy4uLy4uL3NoYXJlZC9lbnVtcy9xdWVzdGlvbi10eXBlLmVudW1cIjtcclxuaW1wb3J0IHsgQXBpU2VydmljZSB9IGZyb20gXCIuLi8uLi8uLi9zZXJ2aWNlcy9hcGkuc2VydmljZVwiO1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgU3VydmV5RWZmZWN0cyB7XHJcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9hY3Rpb25zOiBBY3Rpb25zLCBwcml2YXRlIF9zdG9yZTogU3RvcmUsXHJcbiAgICAgICAgcHJpdmF0ZSBfY2hlY2tSdWxlRXhwc1VzZWNhc2U6IENoZWNrUnVsZUV4cHNVc2VjYXNlLCBwcml2YXRlIF9hcGlTZXJ2aWNlOiBBcGlTZXJ2aWNlKSB7XHJcbiAgICB9XHJcblxyXG4gICAgdXBkYXRlUXVlc3Rpb25BbnN3ZXIkID0gY3JlYXRlRWZmZWN0KCgpID0+XHJcbiAgICAgICAgdGhpcy5fYWN0aW9ucy5waXBlKG9mVHlwZShzdXJ2ZXlBY3Rpb25zLnVwZGF0ZVF1ZXN0aW9uQW5zd2VyKSwgd2l0aExhdGVzdEZyb20odGhpcy5fc3RvcmUuc2VsZWN0KHN1cnZleVNlbGVjdG9ycy5ydWxlQXJyKVxyXG4gICAgICAgICAgICAsIHRoaXMuX3N0b3JlLnNlbGVjdChxdWVzdGlvblNlbGVjdG9ycy5hbGxRdWVzdGlvbnMpKSwgc3dpdGNoTWFwKChbYWN0aW9uLCBydWxlQXJyLCBxdWVzdGlvbkFycl0pID0+IHtcclxuICAgICAgICAgICAgICAgIHZhciBmb3JtYXRlZFJ1bGVBcnI6IHsgcnVsZUlkOiBhbnksIHF1ZXN0aW9uSWQ6IGFueSB9W10gPSBbXTtcclxuICAgICAgICAgICAgICAgIHJ1bGVBcnIuZm9yRWFjaChydWxlID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBydWxlLnJ1bGVFeHBzLmZvckVhY2gocnVsZVF1ZXN0aW9uID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9ybWF0ZWRSdWxlQXJyLnB1c2goe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcnVsZUlkOiBydWxlLnJ1bGVJZCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHF1ZXN0aW9uSWQ6IHJ1bGVRdWVzdGlvbi5xdWVzdGlvbklkXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgIH0pXHJcblxyXG4gICAgICAgICAgICAgICAgdmFyIHNlbGVjdGVkUnVsZUlkQXJyID0gZm9ybWF0ZWRSdWxlQXJyLmZpbHRlcih4ID0+IHgucXVlc3Rpb25JZCA9PSBhY3Rpb24ucXVlc3Rpb25JZCkubWFwKHggPT4gTnVtYmVyKHgucnVsZUlkKSk7XHJcbiAgICAgICAgICAgICAgICB2YXIgYXJyID0gcnVsZUFyci5maWx0ZXIoeCA9PiBzZWxlY3RlZFJ1bGVJZEFyci5maW5kKGMgPT4gYyA9PSB4LnJ1bGVJZCkgIT0gbnVsbCk7XHJcblxyXG4gICAgICAgICAgICAgICAgdmFyIHRvZ2dsZVNob3dlZFF1ZXN0aW9uSWRzOiB7IHF1ZXN0aW9uSWQ6IGFueSwgaXNTaG93OiBib29sZWFuIH1bXSA9IFtdO1xyXG4gICAgICAgICAgICAgICAgdmFyIHRvZ2dsZURpc2FibGVkUXVlc3Rpb25JZHM6IHsgcXVlc3Rpb25JZDogYW55LCBpc0Rpc2FibGVkOiBib29sZWFuIH1bXSA9IFtdO1xyXG4gICAgICAgICAgICAgICAgYXJyLmZvckVhY2gocnVsZSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fY2hlY2tSdWxlRXhwc1VzZWNhc2UuZXhlY3V0ZSh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJ1bGVFeHBzOiBydWxlLnJ1bGVFeHBzLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBxdWVzdGlvbnM6IHF1ZXN0aW9uQXJyLFxyXG4gICAgICAgICAgICAgICAgICAgIH0pLnN1YnNjcmliZShyZXN1bHQgPT4ge1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGlzUGFzc2VkID0gcmVzdWx0LmV4cHJlc3Rpb25SZXN1bHRBcnIuZmlsdGVyKHggPT4geCA9PSBmYWxzZSkubGVuZ3RoID09IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpc1Bhc3NlZCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcnVsZS5ydWxlUmVzdWx0UXVlc3Rpb25zLmZvckVhY2gocmVzdWx0UXVlc3Rpb24gPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChydWxlLmxvZ2ljQWN0aW9uSWQgPT0gTG9naWNBY3Rpb25FbnVtLlNob3cpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9nZ2xlU2hvd2VkUXVlc3Rpb25JZHMucHVzaCh7IHF1ZXN0aW9uSWQ6IHJlc3VsdFF1ZXN0aW9uLnF1ZXN0aW9uSWQsIGlzU2hvdzogdHJ1ZSB9KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHJ1bGUubG9naWNBY3Rpb25JZCA9PSBMb2dpY0FjdGlvbkVudW0uSGlkZSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b2dnbGVTaG93ZWRRdWVzdGlvbklkcy5wdXNoKHsgcXVlc3Rpb25JZDogcmVzdWx0UXVlc3Rpb24ucXVlc3Rpb25JZCwgaXNTaG93OiBmYWxzZSB9KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHJ1bGUubG9naWNBY3Rpb25JZCA9PSBMb2dpY0FjdGlvbkVudW0uRW5hYmxlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvZ2dsZURpc2FibGVkUXVlc3Rpb25JZHMucHVzaCh7IHF1ZXN0aW9uSWQ6IHJlc3VsdFF1ZXN0aW9uLnF1ZXN0aW9uSWQsIGlzRGlzYWJsZWQ6IGZhbHNlIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAocnVsZS5sb2dpY0FjdGlvbklkID09IExvZ2ljQWN0aW9uRW51bS5EaXNhYmxlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvZ2dsZURpc2FibGVkUXVlc3Rpb25JZHMucHVzaCh7IHF1ZXN0aW9uSWQ6IHJlc3VsdFF1ZXN0aW9uLnF1ZXN0aW9uSWQsIGlzRGlzYWJsZWQ6IHRydWUgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChydWxlLmxvZ2ljQWN0aW9uSWQgPT0gTG9naWNBY3Rpb25FbnVtLlNldEFuc3dlcikge1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHF1ZXN0aW9uID0gcXVlc3Rpb25BcnIuZmluZCh4ID0+IHgucXVlc3Rpb25JZCA9PSByZXN1bHRRdWVzdGlvbi5xdWVzdGlvbklkKTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy91cGRhdGUgbWF0cml4IHN1YiBxdWVzdGlvbnNcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocXVlc3Rpb24ucXVlc3Rpb25UeXBlID09IFF1ZXN0aW9uVHlwZUVudW0uTWF0cml4ICYmIHF1ZXN0aW9uLmlzUXVlc3Rpb25Hcm91cCA9PSB0cnVlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBzdWJRdWVzdGlvbnMgPSBxdWVzdGlvbkFyci5maWx0ZXIoeCA9PiB4LnBhcmVudFF1ZXN0aW9uSWQgPT0gcXVlc3Rpb24ucXVlc3Rpb25JZCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1YlF1ZXN0aW9ucy5mb3JFYWNoKHN1YlF1ZXN0aW9uID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChydWxlLmxvZ2ljQWN0aW9uSWQgPT0gTG9naWNBY3Rpb25FbnVtLlNob3cpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b2dnbGVTaG93ZWRRdWVzdGlvbklkcy5wdXNoKHsgcXVlc3Rpb25JZDogc3ViUXVlc3Rpb24ucXVlc3Rpb25JZCwgaXNTaG93OiB0cnVlIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChydWxlLmxvZ2ljQWN0aW9uSWQgPT0gTG9naWNBY3Rpb25FbnVtLkhpZGUpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b2dnbGVTaG93ZWRRdWVzdGlvbklkcy5wdXNoKHsgcXVlc3Rpb25JZDogc3ViUXVlc3Rpb24ucXVlc3Rpb25JZCwgaXNTaG93OiBmYWxzZSB9KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKHJ1bGUubG9naWNBY3Rpb25JZCA9PSBMb2dpY0FjdGlvbkVudW0uRW5hYmxlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9nZ2xlRGlzYWJsZWRRdWVzdGlvbklkcy5wdXNoKHsgcXVlc3Rpb25JZDogc3ViUXVlc3Rpb24ucXVlc3Rpb25JZCwgaXNEaXNhYmxlZDogZmFsc2UgfSk7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChydWxlLmxvZ2ljQWN0aW9uSWQgPT0gTG9naWNBY3Rpb25FbnVtLkRpc2FibGUpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b2dnbGVEaXNhYmxlZFF1ZXN0aW9uSWRzLnB1c2goeyBxdWVzdGlvbklkOiBzdWJRdWVzdGlvbi5xdWVzdGlvbklkLCBpc0Rpc2FibGVkOiB0cnVlIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBydWxlLnJ1bGVSZXN1bHRRdWVzdGlvbnMuZm9yRWFjaChyZXN1bHRRdWVzdGlvbiA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgcXVlc3Rpb24gPSBxdWVzdGlvbkFyci5maW5kKHggPT4geC5xdWVzdGlvbklkID09IHJlc3VsdFF1ZXN0aW9uLnF1ZXN0aW9uSWQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChxdWVzdGlvbi5pc1Nob3cgIT0gcXVlc3Rpb24uaXNTaG93X2RlZmF1bHQpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9nZ2xlU2hvd2VkUXVlc3Rpb25JZHMucHVzaCh7IHF1ZXN0aW9uSWQ6IHJlc3VsdFF1ZXN0aW9uLnF1ZXN0aW9uSWQsIGlzU2hvdzogcXVlc3Rpb24uaXNTaG93X2RlZmF1bHQgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocXVlc3Rpb24uaXNEaXNhYmxlZCAhPSBxdWVzdGlvbi5pc0Rpc2FibGVkX2RlZmF1bHQpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9nZ2xlRGlzYWJsZWRRdWVzdGlvbklkcy5wdXNoKHsgcXVlc3Rpb25JZDogcmVzdWx0UXVlc3Rpb24ucXVlc3Rpb25JZCwgaXNEaXNhYmxlZDogcXVlc3Rpb24uaXNEaXNhYmxlZF9kZWZhdWx0IH0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHF1ZXN0aW9uLnF1ZXN0aW9uVHlwZSA9PSBRdWVzdGlvblR5cGVFbnVtLk1hdHJpeCAmJiBxdWVzdGlvbi5pc1F1ZXN0aW9uR3JvdXAgPT0gdHJ1ZSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgc3ViUXVlc3Rpb25zID0gcXVlc3Rpb25BcnIuZmlsdGVyKHggPT4geC5wYXJlbnRRdWVzdGlvbklkID09IHF1ZXN0aW9uLnF1ZXN0aW9uSWQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdWJRdWVzdGlvbnMuZm9yRWFjaChzdWJRdWVzdGlvbiA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoc3ViUXVlc3Rpb24uaXNTaG93ICE9IHN1YlF1ZXN0aW9uLmlzU2hvd19kZWZhdWx0KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9nZ2xlU2hvd2VkUXVlc3Rpb25JZHMucHVzaCh7IHF1ZXN0aW9uSWQ6IHN1YlF1ZXN0aW9uLnF1ZXN0aW9uSWQsIGlzU2hvdzogc3ViUXVlc3Rpb24uaXNTaG93X2RlZmF1bHQgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHN1YlF1ZXN0aW9uLmlzRGlzYWJsZWQgIT0gc3ViUXVlc3Rpb24uaXNEaXNhYmxlZF9kZWZhdWx0KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9nZ2xlRGlzYWJsZWRRdWVzdGlvbklkcy5wdXNoKHsgcXVlc3Rpb25JZDogc3ViUXVlc3Rpb24ucXVlc3Rpb25JZCwgaXNEaXNhYmxlZDogcXVlc3Rpb24uaXNEaXNhYmxlZF9kZWZhdWx0IH0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgfSk7XHJcblxyXG4gICAgICAgICAgICAgICAgY29uc3QgaGlkZGVuUXVlc3Rpb25JZHMgPSB0b2dnbGVTaG93ZWRRdWVzdGlvbklkcy5maWx0ZXIoeCA9PiB4LmlzU2hvdyA9PSBmYWxzZSkubWFwKHggPT4geC5xdWVzdGlvbklkKTtcclxuICAgICAgICAgICAgICAgIGlmIChoaWRkZW5RdWVzdGlvbklkcy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coJ2hpZGRlblF1ZXN0aW9uSWRzJywgaGlkZGVuUXVlc3Rpb25JZHMpO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX3N0b3JlLmRpc3BhdGNoKHN1cnZleUFjdGlvbnMudXBkYXRlUXVlc3Rpb25zU2hvdyh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHF1ZXN0aW9uSWRzOiBoaWRkZW5RdWVzdGlvbklkcyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgaXNTaG93OiBmYWxzZVxyXG4gICAgICAgICAgICAgICAgICAgIH0pKTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICBjb25zdCBzaG93ZWRRdWVzdGlvbklkcyA9IHRvZ2dsZVNob3dlZFF1ZXN0aW9uSWRzLmZpbHRlcih4ID0+IHguaXNTaG93ID09IHRydWUpLm1hcCh4ID0+IHgucXVlc3Rpb25JZCk7XHJcbiAgICAgICAgICAgICAgICBpZiAoc2hvd2VkUXVlc3Rpb25JZHMubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKCdzaG93ZWRRdWVzdGlvbklkcycsIHNob3dlZFF1ZXN0aW9uSWRzKTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLl9zdG9yZS5kaXNwYXRjaChzdXJ2ZXlBY3Rpb25zLnVwZGF0ZVF1ZXN0aW9uc1Nob3coe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBxdWVzdGlvbklkczogc2hvd2VkUXVlc3Rpb25JZHMsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlzU2hvdzogdHJ1ZVxyXG4gICAgICAgICAgICAgICAgICAgIH0pKTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICBjb25zdCBkaXNhYmxlZFF1ZXN0aW9uSWRzID0gdG9nZ2xlRGlzYWJsZWRRdWVzdGlvbklkcy5maWx0ZXIoeCA9PiB4LmlzRGlzYWJsZWQgPT0gdHJ1ZSkubWFwKHggPT4geC5xdWVzdGlvbklkKTtcclxuICAgICAgICAgICAgICAgIGlmIChkaXNhYmxlZFF1ZXN0aW9uSWRzLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmxvZygnZGlzYWJsZWRRdWVzdGlvbklkcycsIGRpc2FibGVkUXVlc3Rpb25JZHMpO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX3N0b3JlLmRpc3BhdGNoKHN1cnZleUFjdGlvbnMudXBkYXRlUXVlc3Rpb25zRGlzYWJsZSh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHF1ZXN0aW9uSWRzOiBkaXNhYmxlZFF1ZXN0aW9uSWRzLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBpc0Rpc2FibGVkOiB0cnVlXHJcbiAgICAgICAgICAgICAgICAgICAgfSkpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIGNvbnN0IGVuYWJsZWRRdWVzdGlvbklkcyA9IHRvZ2dsZURpc2FibGVkUXVlc3Rpb25JZHMuZmlsdGVyKHggPT4geC5pc0Rpc2FibGVkID09IGZhbHNlKS5tYXAoeCA9PiB4LnF1ZXN0aW9uSWQpO1xyXG4gICAgICAgICAgICAgICAgaWYgKGVuYWJsZWRRdWVzdGlvbklkcy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coJ2VuYWJsZWRRdWVzdGlvbklkcycsIGVuYWJsZWRRdWVzdGlvbklkcyk7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fc3RvcmUuZGlzcGF0Y2goc3VydmV5QWN0aW9ucy51cGRhdGVRdWVzdGlvbnNEaXNhYmxlKHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcXVlc3Rpb25JZHM6IGVuYWJsZWRRdWVzdGlvbklkcyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgaXNEaXNhYmxlZDogZmFsc2VcclxuICAgICAgICAgICAgICAgICAgICB9KSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIG9mKFtdKVxyXG4gICAgICAgICAgICB9KSksIHsgZGlzcGF0Y2g6IGZhbHNlIH0pO1xyXG5cclxuICAgIGxvYWRJbnN0aXR1dGlvbkFyciQgPSBjcmVhdGVFZmZlY3QoKCkgPT5cclxuICAgICAgICB0aGlzLl9hY3Rpb25zLnBpcGUob2ZUeXBlKHN1cnZleUFjdGlvbnMubG9hZEluc3RpdHV0aW9uQXJyKSwgd2l0aExhdGVzdEZyb20odGhpcy5fc3RvcmUuc2VsZWN0KHN1cnZleVNlbGVjdG9ycy5pbnN0aXR1dGlvbkFycikpXHJcbiAgICAgICAgICAgICwgZmlsdGVyKChbYWN0aW9uLCBpbnN0aXR1dGlvbkFycl0pID0+IGluc3RpdHV0aW9uQXJyLmxlbmd0aCA9PSAwKSwgc3dpdGNoTWFwKCgpID0+IHtcclxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLl9hcGlTZXJ2aWNlLmdldEFsbEluc3RpdHV0aW9ucygpLnBpcGUobWFwKChyZXMpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gc3VydmV5QWN0aW9ucy5sb2FkSW5zdGl0dXRpb25BcnJTdWNjZXNzKHsgaW5zdGl0dXRpb25BcnI6IHJlcy5yZXNwb25zZURldGFpbHMgfSk7XHJcbiAgICAgICAgICAgICAgICB9KSlcclxuICAgICAgICAgICAgfSkpKTtcclxufVxyXG5cclxuIl19
|