appproject-components 1.0.46 → 1.0.48
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.
|
@@ -272,4 +272,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImpor
|
|
|
272
272
|
}], pageOffset: [{
|
|
273
273
|
type: Input
|
|
274
274
|
}] } });
|
|
275
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC12aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FwcHByb2plY3QtY29tcG9uZW50cy9zcmMvbGliL2dyaWQtdmlldy9ncmlkLXZpZXcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXBwcHJvamVjdC1jb21wb25lbnRzL3NyYy9saWIvZ3JpZC12aWV3L2dyaWQtdmlldy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUN0RixPQUFPLEVBQWMsVUFBVSxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7QUFPcEUsTUFBTSxPQUFPLGlCQUFpQjtJQWdFNUI7UUE1RFMsY0FBUyxHQUFXLE9BQU8sQ0FBQztRQUM1Qix1QkFBa0IsR0FBWSxLQUFLLENBQUM7UUFFbkMsbUJBQWMsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ3BDLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUNqQyxzQkFBaUIsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBR2pELDJEQUEyRDtRQUMzRCxXQUFNLEdBQVUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBRXRFLG1CQUFtQjtRQUNuQix1QkFBdUI7UUFDdkIsb0JBQW9CO1FBQ3BCLGVBQWU7UUFDZix3TUFBd007UUFDeE0sNk1BQTZNO1FBQzdNLHFOQUFxTjtRQUNyTix5TUFBeU07UUFDek0sOE1BQThNO1FBQzlNLE1BQU07UUFDTixJQUFJO1FBRUosMEJBQTBCO1FBQzFCLDJGQUEyRjtRQUMzRiw4RkFB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LGVBQWUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxVQUFVLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDL047O2dCQUNDLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNoSCxHQUFHLENBQUMsV0FBVyxHQUFHLENBQUMsQ0FBQyxDQUFDLEtBQUs7U0FDM0I7YUFBTTtZQUNMLElBQUksR0FBRyxDQUFDLElBQUksSUFBSSxNQUFNLEVBQUU7Z0JBQ3RCLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDM0w7aUJBQU0sSUFBSSxHQUFHLENBQUMsSUFBSSxJQUFJLFFBQVEsRUFBRTtnQkFDL0IsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsSUFBSSxDQUFDLEdBQUcsVUFBVSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLElBQUksQ0FBQyxHQUFHLFVBQVUsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDdlA7O2dCQUNELElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUM5RyxHQUFHLENBQUMsV0FBVyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTTtTQUM3QjtJQUNILENBQUM7SUFFRCxhQUFhLENBQUMsR0FBUTtRQUNwQixHQUFHLENBQUMsYUFBYSxHQUFHLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQTtRQUN0QyxJQUFJLEdBQUcsQ0FBQyxhQUFhLEVBQUU7WUFDckIsSUFBSSxDQUFDLGNBQWMsR0FBRyxHQUFHLENBQUM7WUFDMUIsbUNBQW1DO1NBQ3BDO0lBQ0gsQ0FBQztJQUVELGVBQWU7UUFDYixtREFBbUQ7UUFDbkQsSUFBSSxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDbEMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsZUFBZSxDQUFDLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDO1FBQ25FLENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2hDLENBQUM7SUFFRCxlQUFlLENBQUMsSUFBUztRQUN2QixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMvQixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQztJQUMzQixDQUFDO0lBRUQsWUFBWSxDQUFDLElBQVM7UUFDcEIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVELE9BQU87SUFDUCxrQkFBa0I7UUFDaEIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2hDLENBQUM7OEdBMVJVLGlCQUFpQjtrR0FBakIsaUJBQWlCLGtaQ1I5Qiwra01BbUhROzsyRkQzR0ssaUJBQWlCO2tCQUw3QixTQUFTOytCQUNFLGNBQWM7d0RBS2YsU0FBUztzQkFBakIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFFSSxjQUFjO3NCQUF2QixNQUFNO2dCQUNHLFdBQVc7c0JBQXBCLE1BQU07Z0JBQ0csaUJBQWlCO3NCQUExQixNQUFNO2dCQTZCRSxlQUFlO3NCQUF2QixLQUFLO2dCQWdCRyxVQUFVO3NCQUFsQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEdyaWRDb2x1bmEsIEdyaWRUYWJlbGEsIExpYlNlcnZpY2UgfSBmcm9tICdhcHBwcm9qZWN0LWxpYic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2tiLWdyaWQtdmlldycsICAgIFxuICB0ZW1wbGF0ZVVybDogJy4vZ3JpZC12aWV3LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2dyaWQtdmlldy5jb21wb25lbnQuc2Nzcydcbn0pXG5leHBvcnQgY2xhc3MgR3JpZFZpZXdDb21wb25lbnQge1xuICBASW5wdXQoKSBlbXByZXNhSWQ6IG51bWJlcjtcbiAgQElucHV0KCkgdGFiZWxhQ2FtcG9zOiBHcmlkVGFiZWxhO1xuICBASW5wdXQoKSBkYXRhU2V0OiBBcnJheTxhbnk+O1xuICBASW5wdXQoKSBtaW5IZWlnaHQ6IHN0cmluZyA9ICc0MDBweCc7XG4gIEBJbnB1dCgpIGluTWVtb3J5UGFnaW5hdGlvbjogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIEBPdXRwdXQoKSBzZWxlY2lvbmFySXRlbSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIGV4Y2x1aXJJdGVtID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgc2VsZWNpb25hckNoZWNrZWQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgc2VsZWN0ZWRJdGVtOiBhbnk7XG4gIC8vaW5wdXRzID0gaW5qZWN0KG5ldyBJbmplY3Rpb25Ub2tlbjxhbnk+KCd0aXRsZSBpbnB1dHMnKSk7XG4gIGdydXBvczogYW55W10gPSBbeyBDb2x1bmE6ICcnLCBUYWJlbGE6IG51bGwsIERhZG9zOiBudWxsLCBOaXZlbDogMCB9XTtcblxuICAvLyB0YWJlbGFDYW1wb3MgPSB7XG4gIC8vICAgU2VsZWNpb25hcjogZmFsc2UsXG4gIC8vICAgRXhwb3J0YXI6IHRydWUsXG4gIC8vICAgQ29sdW5hczogW1xuICAvLyAgICAgeyBDYW1wbzogJ0lkJywgVGl0dWxvOiAnSWQnLCBUYW1hbmhvOiAnMTAlJywgT3JkZW06IHRydWUsIEdydXBvOiBmYWxzZSwgRmlsdHJhcjogdHJ1ZSwgT3JkZW1TdGF0dXM6IDAsIFRpcG86ICdudW1iZXInLCBWYWxvcmVzOiBbXSwgRmlsdHJvT3BlcmFkb3I6ICc9JywgRmlsdHJvVmFsb3I6ICcnLCBGaWx0cm9WaXNpdmVsOiBmYWxzZSB9LFxuICAvLyAgICAgeyBDYW1wbzogJ01hcmNhJywgVGl0dWxvOiAnTWFyY2EnLCBUYW1hbmhvOiAnMjUlJywgT3JkZW06IHRydWUsIEdydXBvOiB0cnVlLCBGaWx0cmFyOiB0cnVlLCBPcmRlbVN0YXR1czogMCwgVGlwbzogJ3N0cmluZycsIFZhbG9yZXM6IFtdLCBGaWx0cm9PcGVyYWRvcjogJz0nLCBGaWx0cm9WYWxvcjogJycsIEZpbHRyb1Zpc2l2ZWw6IGZhbHNlIH0sXG4gIC8vICAgICB7IENhbXBvOiAnRGVzY3JpY2FvJywgVGl0dWxvOiAnRGVzY3Jpw6fDo28nLCBUYW1hbmhvOiAnMjUlJywgT3JkZW06IHRydWUsIEdydXBvOiB0cnVlLCBGaWx0cmFyOiB0cnVlLCBPcmRlbVN0YXR1czogMCwgVGlwbzogJ3N0cmluZycsIFZhbG9yZXM6IFtdLCBGaWx0cm9PcGVyYWRvcjogJz0nLCBGaWx0cm9WYWxvcjogJycsIEZpbHRyb1Zpc2l2ZWw6IGZhbHNlIH0sXG4gIC8vICAgICB7IENhbXBvOiAnRGF0YScsIFRpdHVsbzogJ0RhdGEnLCBUYW1hbmhvOiAnMjAlJywgT3JkZW06IHRydWUsIEdydXBvOiB0cnVlLCBGaWx0cmFyOiB0cnVlLCBPcmRlbVN0YXR1czogMCwgVGlwbzogJ2RhdGUnLCBWYWxvcmVzOiBbXSwgRmlsdHJvT3BlcmFkb3I6ICc9JywgRmlsdHJvVmFsb3I6ICcnLCBGaWx0cm9WaXNpdmVsOiBmYWxzZSB9LFxuICAvLyAgICAgeyBDYW1wbzogJ1ZhbG9yJywgVGl0dWxvOiAnVmFsb3InLCBUYW1hbmhvOiAnMjAlJywgT3JkZW06IHRydWUsIEdydXBvOiBmYWxzZSwgRmlsdHJhcjogdHJ1ZSwgT3JkZW1TdGF0dXM6IDAsIFRpcG86ICdudW1iZXInLCBWYWxvcmVzOiBbXSwgRmlsdHJvT3BlcmFkb3I6ICc9JywgRmlsdHJvVmFsb3I6ICcnLCBGaWx0cm9WaXNpdmVsOiBmYWxzZSB9LFxuICAvLyAgIF1cbiAgLy8gfVxuXG4gIC8vIGRhdGFTZXQ6IEFycmF5PGFueT4gPSBbXG4gIC8vICAgeyBJZDogMSwgTWFyY2E6ICdBcHBsZScsIERlc2NyaWNhbzogJ0lQaG9uZSAxNCcsIERhdGE6ICcyMDIzLTA1LTAxJywgVmFsb3I6IDc4OTkuOTkgfSxcbiAgLy8gICB7IElkOiAyLCBNYXJjYTogJ0FwcGxlJywgRGVzY3JpY2FvOiAnTWFjQm9vayBQcm8nLCBEYXRhOiAnMjAyMy0wNi0wMScsIFZhbG9yOiAxNzk5OS45OSB9LFxuICAvLyAgIHsgSWQ6IDMsIE1hcmNhOiAnU2Ftc3VuZycsIERlc2NyaWNhbzogJ0dhbGF4eSBTMjMnLCBEYXRhOiAnMjAyMy0wNS0wMScsIFZhbG9yOiA2ODk5Ljk5IH0sXG4gIC8vICAgeyBJZDogNCwgTWFyY2E6ICdTb255JywgRGVzY3JpY2FvOiAnUFMgNScsIERhdGE6ICcyMDIzLTA2LTAxJywgVmFsb3I6IDQ4OTkuOTkgfSxcbiAgLy8gICB7IElkOiA1LCBNYXJjYTogJ1NhbXN1bmcnLCBEZXNjcmljYW86ICdXYXRjaCAyMycsIERhdGE6ICcyMDIzLTA1LTAxJywgVmFsb3I6IDE4OTkuOTkgfSxcbiAgLy8gXVxuXG5cblxuICBncm91cHMgPSBbXVxuICBASW5wdXQoKSBmaWx0ZXJlZERhdGFTZXQgPSBbXTtcbiAgcGFnZURhdGFTZXQgPSBbXTtcblxuXG4gIC8vYXJyYXkgY29tIG9zIGNhbXBvcyBmaWx0cmFkb3MgcGFyYSBkaXNwbGF5XG4gIGNhbXBvc0Rpc3BsYXkgPSBbXTtcblxuICAvL2ZpbHRyb1xuICBpc0ZpbHRyb09wZW46IGJvb2xlYW4gPSBmYWxzZTtcbiAgc2VsZWN0ZWRDb2x1bmE6IGFueTtcbiAgdG9kb3NTZWxlY2lvbmFkb3M6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvL3BhZ2luYXRpb25cbiAgLy9ww6FnaW5hIGF0dWFsXG4gIHBhZ2U6IG51bWJlciA9IDE7XG4gIC8vcmVnaXN0cm9zIHBvciBww6FnaW5hXG4gIEBJbnB1dCgpIHBhZ2VPZmZzZXQ6IG51bWJlciA9IDIwO1xuICAvL3RvdGFsIGRlIHJlZ2lzdHJvc1xuICB0b3RhbFJlYzogbnVtYmVyO1xuICAvL3RvdGFsIGRlIHDDoWdpbmFzXG4gIHRvdGFsUGFnZXM6IG51bWJlcjtcbiAgLy9pbmRleGFkb3IgZGUgcGFnaW5hc1xuICBwYWdlczogbnVtYmVyW107ICBcbiAgc3RhcnQ6IG51bWJlcjtcblxuXG4gIGNvbnN0cnVjdG9yKCkgeyB9XG5cbiAgdmFsb3Jlc0ZpbHRybygpIHtcbiAgICB0aGlzLnRhYmVsYUNhbXBvcy5Db2x1bmFzLmZvckVhY2goYyA9PiB7XG4gICAgICBpZiAoYy5GaWx0cmFyKSB7XG4gICAgICAgIC8vcHJvamV0YXIgYSBjb2x1bmFcbiAgICAgICAgbGV0IGluaXRpYWwgPSBbXTtcbiAgICAgICAgbGV0IHZhbG9yZXMgPSB0aGlzLmRhdGFTZXQubWFwKGQgPT4gZFtjLkNhbXBvXSk7XG4gICAgICAgIGMuVmFsb3JlcyA9IHZhbG9yZXMuZmlsdGVyKCh2YWx1ZSwgaW5kZXgsIHNlbGYpID0+IHtcbiAgICAgICAgICByZXR1cm4gc2VsZi5pbmRleE9mKHZhbHVlKSA9PT0gaW5kZXg7XG4gICAgICAgIH0pLm1hcCh2ID0+IHsgcmV0dXJuIHsgU2VsZWNpb25hZG86IGZhbHNlLCBWYWxvcjogdiB9IH0pO1xuICAgICAgLy8gICBjb25zb2xlLmxvZyhjLkNhbXBvLCB2YWxvcmVzKTtcbiAgICAgIC8vICAgY29uc29sZS5sb2coYy5WYWxvcmVzKVxuICAgICAgfVxuICAgIH0pXG4gIH1cblxuICBuZ09uSW5pdCgpIHtcblxuXG4gICAgLy90aGlzLmluaWNpYWxpemFHcnVwbygpO1xuICAgIC8vdGhpcy5hZ3J1cGFyKCdNYXJjYScpO1xuICAgIC8vY29uc29sZS5sb2coJ2lucHV0cycsIHRoaXMuaW5wdXRzKTtcbiAgICAvL2NvbnNvbGUubG9nKCdJbnB1dCBlbXByZXNhJywgdGhpcy5lbXByZXNhSWQpO1xuICAgIEdyaWRUYWJlbGEuaW5pdCh0aGlzLnRhYmVsYUNhbXBvcyk7XG4gICAgdGhpcy52YWxvcmVzRmlsdHJvKCk7XG4gICAgdGhpcy5maWx0ZXJlZERhdGFTZXQgPSB0aGlzLmRhdGFTZXQ7XG4gICAgY29uc29sZS5sb2coJ0luaXQgVGFiZWxhIGNhbXBvcycsIHRoaXMudGFiZWxhQ2FtcG9zKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBjb25zb2xlLmxvZygnT24gY2hhbmdlcyBUYWJlbGEgY2FtcG9zJywgdGhpcy50YWJlbGFDYW1wb3MpO1xuICAgIC8vZXZlbnRvIGNoYW1hZG8gcXVhbmRvIG8gZGF0YXNldCBmb3IgYXR1YWxpemFkb1xuICAgIC8vaW5pY2lhbGl6YXIgdmFycyBkZSBwYWdpbmHDp8Ojb1xuICAgIHRoaXMuaW5pdFBhZ2UoKTtcbiAgICB0aGlzLnRvZG9zU2VsZWNpb25hZG9zID0gZmFsc2U7XG4gIH1cblxuICBpbml0UGFnZSgpIHtcbiAgICB0aGlzLnBhZ2UgPSAxO1xuICAgIHRoaXMudG90YWxSZWMgPSB0aGlzLmZpbHRlcmVkRGF0YVNldC5sZW5ndGg7XG4gICAgdGhpcy50b3RhbFBhZ2VzID0gTWF0aC5jZWlsKHRoaXMudG90YWxSZWMgLyB0aGlzLnBhZ2VPZmZzZXQpOyAgICBcblxuICAgIGlmICh0aGlzLmluTWVtb3J5UGFnaW5hdGlvbiA9PT0gdHJ1ZSkge1xuICAgICAgdGhpcy5nZXRSZWdpc3Ryb3NQYWdlKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucGFnZURhdGFTZXQgPSB0aGlzLmZpbHRlcmVkRGF0YVNldDtcbiAgICB9XG4gIH1cblxuICBnZXRSZWdpc3Ryb3NQYWdlKCkge1xuICAgIHRoaXMuc3RhcnQgPSAodGhpcy5wYWdlIC0gMSkgKiB0aGlzLnBhZ2VPZmZzZXQ7XG4gICAgY29uc29sZS5sb2coJ2RhdGFzZXQnLCB0aGlzLmZpbHRlcmVkRGF0YVNldCk7XG4gICAgY29uc29sZS5sb2coJ3N0YXJ0JywgdGhpcy5zdGFydCk7XG4gICAgY29uc29sZS5sb2coJ29mZnNldCcsIHRoaXMucGFnZU9mZnNldCk7XG4gICAgdGhpcy5wYWdlRGF0YVNldCA9IHRoaXMuZmlsdGVyZWREYXRhU2V0LnNsaWNlKHRoaXMuc3RhcnQsICh0aGlzLnN0YXJ0ICsgdGhpcy5wYWdlT2Zmc2V0KSk7XG4gICAgY29uc29sZS5sb2coJ3BhZ2UgZGF0YXNldCcsIHRoaXMucGFnZURhdGFTZXQpO1xuICB9XG5cbiAgcHJveGltbygpIHtcbiAgICBpZiAodGhpcy5wYWdlIDwgdGhpcy50b3RhbFBhZ2VzKSB7XG4gICAgICB0aGlzLnBhZ2UrKztcbiAgICAgIHRoaXMuZ2V0UmVnaXN0cm9zUGFnZSgpO1xuICAgICAgdGhpcy5nZXJhckFycmF5UGFncygpO1xuICAgIH1cbiAgfVxuXG4gIGFudGVyaW9yKCkge1xuICAgIGlmICh0aGlzLnBhZ2UgPiAxKSB7XG4gICAgICB0aGlzLnBhZ2UtLTtcbiAgICAgIHRoaXMuZ2V0UmVnaXN0cm9zUGFnZSgpO1xuICAgICAgdGhpcy5nZXJhckFycmF5UGFncygpO1xuICAgIH1cbiAgfVxuXG4gIGdlcmFyQXJyYXlQYWdzKCkge1xuXG4gIH1cblxuICBpbmljaWFsaXphR3J1cG8oKSB7XG4gICAgLy9pbmljaWFsaXphciBvIHByaW1laXJvIGdydXBvICdkZWZhdWx0J1xuICAgIHRoaXMuY2FtcG9zRGlzcGxheSA9IHRoaXMudGFiZWxhQ2FtcG9zLkNvbHVuYXM7XG4gICAgdGhpcy5ncnVwb3NbMF0uVGFiZWxhID0gdGhpcy5jYW1wb3NEaXNwbGF5O1xuICAgIHRoaXMuZ3J1cG9zWzBdLkRhZG9zID0gdGhpcy5kYXRhU2V0O1xuICB9XG5cbiAgYWdydXBhcihjYW1wbzogc3RyaW5nKSB7XG4gICAgdGhpcy5ncm91cHMucHVzaChjYW1wbyk7XG4gICAgbGV0IGxldmVsID0gMDtcbiAgICBmb3IgKGxldCBnIGluIHRoaXMuZ3JvdXBzKSB7XG4gICAgICBjb25zb2xlLmxvZyhnKTtcbiAgICAgIC8vZmlsdHJhciBvcyBkYWRvc1xuICAgICAgbGV0IHJlc3VsdCA9IHRoaXMuZGF0YVNldC5yZWR1Y2UoKGdyb3VwLCBkYXRhKSA9PiB7XG4gICAgICAgIGNvbnN0IHsgZyB9ID0gZGF0YTtcbiAgICAgICAgZ3JvdXBbZ10gPSBncm91cFtjYW1wb10gPz8gW107XG4gICAgICAgIGdyb3VwW2ddLnB1c2goZGF0YSk7XG4gICAgICAgIHJldHVybiBncm91cDtcbiAgICAgIH0sIHt9KTtcbiAgICAgIGNvbnNvbGUubG9nKHJlc3VsdCk7XG4gICAgfVxuXG4gIH1cblxuICBmaWx0cmFyQ2FtcG9zKGNvbHVuYSA9ICcnKSB7XG4gICAgaWYgKGNvbHVuYSAhPSAnJykge1xuXG4gICAgfSBlbHNlIHtcblxuICAgIH1cbiAgfVxuXG4gIGZpbHRyYXIoY29sOiBHcmlkQ29sdW5hKSB7XG4gICAgLy9jb25zb2xlLmxvZygnZmlsdHJhcicsIGNvbCk7XG4gICAgaWYgKGNvbC5WYWxvcmVzICYmIGNvbC5WYWxvcmVzLmZpbmQodiA9PiB2LlNlbGVjaW9uYWRvKSAhPSBudWxsKSB7XG4gICAgICBjb25zdCB2YWxvcmVzID0gY29sLlZhbG9yZXMuZmlsdGVyKHYgPT4gdi5TZWxlY2lvbmFkbykubWFwKHYgPT4gdi5WYWxvcik7XG5cbiAgICAgIC8vZmlsdHJhciBwb3IgdmFsb3JlcyBzZWxlY2lvbmFkb3NcbiAgICAgIHRoaXMuZmlsdGVyZWREYXRhU2V0ID0gdGhpcy5kYXRhU2V0LmZpbHRlcihkID0+IHZhbG9yZXMuaW5kZXhPZihkW2NvbC5DYW1wb10pID4gLTEpO1xuICAgIH0gZWxzZSBpZiAoY29sLkZpbHRyb09wZXJhZG9yICYmIGNvbC5GaWx0cm9WYWxvcikge1xuICAgICAgLy9jb25zb2xlLmxvZyhjb2wuRmlsdHJvT3BlcmFkb3IsIGNvbC5GaWx0cm9WYWxvcilcbiAgICAgIHRyeSB7XG4gICAgICAgIHRoaXMuZmlsdGVyZWREYXRhU2V0ID0gdGhpcy5kYXRhU2V0LmZpbHRlcihkID0+IHtcbiAgICAgICAgICBzd2l0Y2ggKGNvbC5GaWx0cm9PcGVyYWRvcikge1xuICAgICAgICAgICAgY2FzZSBcIj1cIjpcbiAgICAgICAgICAgICAgcmV0dXJuIGRbY29sLkNhbXBvXSA9PSBjb2wuRmlsdHJvVmFsb3I7XG4gICAgICAgICAgICBjYXNlIFwiPj1cIjpcbiAgICAgICAgICAgICAgaWYgKGNvbC5UaXBvID09ICdudW1iZXInKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIExpYlNlcnZpY2Uuc3RyaW5nVG9EZWNpbWFsKGRbY29sLkNhbXBvXSwgdHJ1ZSkgPj0gTGliU2VydmljZS5zdHJpbmdUb0RlY2ltYWwoY29sLkZpbHRyb1ZhbG9yLCB0cnVlKTsgIFxuICAgICAgICAgICAgICB9IGVsc2UgaWYgKGNvbC5UaXBvID09ICdkYXRhJykge1xuICAgICAgICAgICAgICAgIHJldHVybiBuZXcgRGF0ZSh0aGlzLmRhdGFUb1N0cmluZyhkW2NvbC5DYW1wb10pKSA+PSBuZXcgRGF0ZSh0aGlzLmRhdGFUb1N0cmluZyhjb2wuRmlsdHJvVmFsb3IpKTsgIFxuICAgICAgICAgICAgICB9IGVsc2VcbiAgICAgICAgICAgICAgcmV0dXJuIGRbY29sLkNhbXBvXSA+PSBjb2wuRmlsdHJvVmFsb3I7XG4gICAgICAgICAgICBjYXNlIFwiPD1cIjpcbiAgICAgICAgICAgICAgaWYgKGNvbC5UaXBvID09ICdudW1iZXInKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIExpYlNlcnZpY2Uuc3RyaW5nVG9EZWNpbWFsKGRbY29sLkNhbXBvXSwgdHJ1ZSkgPD0gTGliU2VydmljZS5zdHJpbmdUb0RlY2ltYWwoY29sLkZpbHRyb1ZhbG9yLCB0cnVlKTsgIFxuICAgICAgICAgICAgICB9IGVsc2VcbiAgICAgICAgICAgICAgcmV0dXJuIGRbY29sLkNhbXBvXSA8PSBjb2wuRmlsdHJvVmFsb3I7XG4gICAgICAgICAgICBjYXNlIFwidGVtXCI6XG4gICAgICAgICAgICAgIHJldHVybiBkW2NvbC5DYW1wb10udG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpLmluZGV4T2YoY29sLkZpbHRyb1ZhbG9yLnRvTG93ZXJDYXNlKCkpID4gLTE7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfSk7XG4gICAgICB9IGNhdGNoKGV4KSB7XG4gICAgICAgIGNvbnNvbGUubG9nKGV4KTtcbiAgICAgICAgdGhpcy5maWx0ZXJlZERhdGFTZXQgPSB0aGlzLmRhdGFTZXQ7XG4gICAgICB9XG4gICAgfVxuICAgIGNvbC5GaWx0cm9WaXNpdmVsID0gZmFsc2U7XG5cbiAgICB0aGlzLmluaXRQYWdlKCk7XG4gIH1cblxuICBnZXRQYWdlKCkge1xuXG4gIH1cblxuICBsaW1wYXIoKSB7XG4gICAgdGhpcy5maWx0ZXJlZERhdGFTZXQgPSB0aGlzLmRhdGFTZXQ7XG4gIH1cblxuICBkYXRhVG9TdHJpbmcoZGF0YTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBpZiAoZGF0YSkge1xuICAgICAgcmV0dXJuIGRhdGEuc3BsaXQoJy8nKS5yZXZlcnNlKCkuam9pbignLScpO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gXCJcIjtcbiAgICB9XG4gIH1cblxuICBvcmRlbmFyKGNvbDogR3JpZENvbHVuYSkge1xuICAgIGlmIChjb2wuT3JkZW1TdGF0dXMgPT0gMCB8fCBjb2wuT3JkZW1TdGF0dXMgPT0gLTEpIHtcbiAgICAgIGlmIChjb2wuVGlwbyA9PSAnZGF0YScpIHtcbiAgICAgICAgdGhpcy5maWx0ZXJlZERhdGFTZXQuc29ydCgoYSwgYikgPT4gdGhpcy5kYXRhVG9TdHJpbmcoYVtjb2wuQ2FtcG9dKSA+IHRoaXMuZGF0YVRvU3RyaW5nKGJbY29sLkNhbXBvXSkgPyAxIDogKHRoaXMuZGF0YVRvU3RyaW5nKGFbY29sLkNhbXBvXSkgPCB0aGlzLmRhdGFUb1N0cmluZyhiW2NvbC5DYW1wb10pID8gLTEgOiAwKSk7XG4gICAgICB9IGVsc2UgaWYgKGNvbC5UaXBvID09ICdudW1iZXInKSB7XG4gICAgICAgIHRoaXMuZmlsdGVyZWREYXRhU2V0LnNvcnQoKGEsIGIpID0+IExpYlNlcnZpY2Uuc3RyaW5nVG9EZWNpbWFsKGFbY29sLkNhbXBvXSkgPiBMaWJTZXJ2aWNlLnN0cmluZ1RvRGVjaW1hbChiW2NvbC5DYW1wb10pID8gMSA6IChMaWJTZXJ2aWNlLnN0cmluZ1RvRGVjaW1hbChhW2NvbC5DYW1wb10pIDwgTGliU2VydmljZS5zdHJpbmdUb0RlY2ltYWwoYltjb2wuQ2FtcG9dKSA/IC0xIDogMCkpO1xuICAgICAgfSBlbHNlIFxuICAgICAgICB0aGlzLmZpbHRlcmVkRGF0YVNldC5zb3J0KChhLCBiKSA9PiBhW2NvbC5DYW1wb10gPiBiW2NvbC5DYW1wb10gPyAxIDogKGFbY29sLkNhbXBvXSA8IGJbY29sLkNhbXBvXSA/IC0xIDogMCkpO1xuICAgICAgY29sLk9yZGVtU3RhdHVzID0gMTsgLy9hc2NcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKGNvbC5UaXBvID09ICdkYXRhJykge1xuICAgICAgICB0aGlzLmZpbHRlcmVkRGF0YVNldC5zb3J0KChhLCBiKSA9PiB0aGlzLmRhdGFUb1N0cmluZyhhW2NvbC5DYW1wb10pIDwgdGhpcy5kYXRhVG9TdHJpbmcoYltjb2wuQ2FtcG9dKSA/IDEgOiAodGhpcy5kYXRhVG9TdHJpbmcoYVtjb2wuQ2FtcG9dKSA+IHRoaXMuZGF0YVRvU3RyaW5nKGJbY29sLkNhbXBvXSkgPyAtMSA6IDApKTtcbiAgICAgIH0gZWxzZSBpZiAoY29sLlRpcG8gPT0gJ251bWJlcicpIHtcbiAgICAgICAgdGhpcy5maWx0ZXJlZERhdGFTZXQuc29ydCgoYSwgYikgPT4gTGliU2VydmljZS5zdHJpbmdUb0RlY2ltYWwoYVtjb2wuQ2FtcG9dLCB0cnVlKSA8IExpYlNlcnZpY2Uuc3RyaW5nVG9EZWNpbWFsKGJbY29sLkNhbXBvXSwgdHJ1ZSkgPyAxIDogKExpYlNlcnZpY2Uuc3RyaW5nVG9EZWNpbWFsKGFbY29sLkNhbXBvXSwgdHJ1ZSkgPiBMaWJTZXJ2aWNlLnN0cmluZ1RvRGVjaW1hbChiW2NvbC5DYW1wb10sIHRydWUpID8gLTEgOiAwKSk7XG4gICAgICB9IGVsc2UgXG4gICAgICB0aGlzLmZpbHRlcmVkRGF0YVNldC5zb3J0KChhLCBiKSA9PiBhW2NvbC5DYW1wb10gPCBiW2NvbC5DYW1wb10gPyAxIDogKGFbY29sLkNhbXBvXSA+IGJbY29sLkNhbXBvXSA/IC0xIDogMCkpO1xuICAgICAgY29sLk9yZGVtU3RhdHVzID0gLTE7IC8vZGVzY1xuICAgIH1cbiAgfVxuXG4gIHNldEZpbHRyb09wZW4oY29sOiBhbnkpIHtcbiAgICBjb2wuRmlsdHJvVmlzaXZlbCA9ICFjb2wuRmlsdHJvVmlzaXZlbFxuICAgIGlmIChjb2wuRmlsdHJvVmlzaXZlbCkge1xuICAgICAgdGhpcy5zZWxlY3RlZENvbHVuYSA9IGNvbDtcbiAgICAgIC8vY29uc29sZS5sb2codGhpcy5zZWxlY3RlZENvbHVuYSk7XG4gICAgfSAgICBcbiAgfVxuXG4gIHNlbGVjaW9uYXJUb2RvcygpIHtcbiAgICAvL3RoaXMudG9kb3NTZWxlY2lvbmFkb3MgPSAhdGhpcy50b2Rvc1NlbGVjaW9uYWRvcztcbiAgICB0aGlzLmZpbHRlcmVkRGF0YVNldC5mb3JFYWNoKGl0ZW0gPT4ge1xuICAgICAgaXRlbVt0aGlzLnRhYmVsYUNhbXBvcy5DYW1wb1NlbGVjaW9uYXJdID0gdGhpcy50b2Rvc1NlbGVjaW9uYWRvcztcbiAgICB9KTtcbiAgICB0aGlzLnNlbGVjaW9uYXJDaGVja2VkLmVtaXQoKTtcbiAgfVxuXG4gIHNlbGVjaW9uYXJMaW5oYShpdGVtOiBhbnkpIHtcbiAgICB0aGlzLnNlbGVjaW9uYXJJdGVtLmVtaXQoaXRlbSk7XG4gICAgdGhpcy5zZWxlY3RlZEl0ZW0gPSBpdGVtO1xuICB9XG5cbiAgZXhjbHVpckxpbmhhKGl0ZW06IGFueSkge1xuICAgIHRoaXMuZXhjbHVpckl0ZW0uZW1pdChpdGVtKTtcbiAgfVxuXG4gIC8vY2hlY2tcbiAgc2VsZWNpb25hZG9DaGVja2VkKCkge1xuICAgIHRoaXMuc2VsZWNpb25hckNoZWNrZWQuZW1pdCgpO1xuICB9XG59XG4iLCI8ZGl2IHN0eWxlPVwiZm9udC1zaXplOiAxNHB4O1wiPlxuICAgIDxkaXYgaWQ9XCJwYWluZWxFeHBvcnRhY2FvXCI+XG4gICAgICA8aW9uLXJvdyAqbmdJZj1cImluTWVtb3J5UGFnaW5hdGlvblwiPlxuICAgICAgICA8IS0tXG4gICAgICAgIDxpb24tY29sIHNpemU9XCIyXCI+XG4gICAgICAgICAgPGlvbi1idXR0b24gKm5nSWY9XCJ0YWJlbGFDYW1wb3MuU2VsZWNpb25hciA9PT0gdHJ1ZVwiIHNpemU9XCJzbWFsbFwiIGZpbGw9XCJvdXRsaW5lXCIgY29sb3I9XCJtZWRpdW1cIlxuICAgICAgICAgICAgKGNsaWNrKT1cInNlbGVjaW9uYXJUb2RvcygpXCI+U2VsZWNpb25hciBUb2RvczwvaW9uLWJ1dHRvbj5cbiAgICAgICAgPC9pb24tY29sPlxuICAgICAgICAtLT5cbiAgICAgICAgPGlvbi1jb2wgc2l6ZT1cIjNcIj5cbiAgICAgICAgICA8aW9uLWJ1dHRvbiAqbmdJZj1cImluTWVtb3J5UGFnaW5hdGlvbiA9PT0gdHJ1ZVwiIHNpemU9XCJzbWFsbFwiIGZpbGw9XCJvdXRsaW5lXCIgY29sb3I9XCJibHVldG9vbFwiXG4gICAgICAgICAgICAoY2xpY2spPVwiYW50ZXJpb3IoKVwiPlxuICAgICAgICAgICAgPGlvbi1pY29uIG5hbWU9XCJjaGV2cm9uLWJhY2stb3V0bGluZVwiIHNsb3Q9XCJzdGFydFwiPjwvaW9uLWljb24+XG4gICAgICAgICAgICBBbnRlcmlvclxuICAgICAgICAgIDwvaW9uLWJ1dHRvbj5cbiAgICAgICAgICA8aW9uLWJ1dHRvbiAqbmdJZj1cImluTWVtb3J5UGFnaW5hdGlvbiA9PT0gdHJ1ZVwiIHNpemU9XCJzbWFsbFwiIGZpbGw9XCJvdXRsaW5lXCIgY29sb3I9XCJibHVldG9vbFwiXG4gICAgICAgICAgICAoY2xpY2spPVwicHJveGltbygpXCI+XG4gICAgICAgICAgICBQcsOzeGltb1xuICAgICAgICAgICAgPGlvbi1pY29uIG5hbWU9XCJjaGV2cm9uLWZvcndhcmQtb3V0bGluZVwiIHNsb3Q9XCJlbmRcIj48L2lvbi1pY29uPlxuICAgICAgICAgIDwvaW9uLWJ1dHRvbj4gICAgICAgICAgICAgICAgXG4gICAgICAgIDwvaW9uLWNvbD5cbiAgICAgICAgPGlvbi1jb2wgc2l6ZT1cIjJcIj5cbiAgICAgICAgICA8c3BhbiBzdHlsZT1cImRpc3BsYXk6IGJsb2NrOyBtYXJnaW4tdG9wOiAxMHB4O1wiICpuZ0lmPVwiaW5NZW1vcnlQYWdpbmF0aW9uICYmIHRvdGFsUmVjID4gMFwiPkV4aWJpbmRvIHt7IHN0YXJ0ICsgMSB9fSAtIHt7IChzdGFydCArIHBhZ2VPZmZzZXQpIDwgdG90YWxSZWMgPyAoc3RhcnQgKyBwYWdlT2Zmc2V0KSA6IHRvdGFsUmVjIH19IHRvdGFsIGRlIHt7IHRvdGFsUmVjIH19ICAgICAgICBcbiAgICAgICAgICA8L3NwYW4+ICAgICAgXG4gICAgICAgIDwvaW9uLWNvbD5cbiAgICAgIDwvaW9uLXJvdz5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IHN0eWxlPVwid2lkdGg6IDEwMCU7XCIgW3N0eWxlLm1pbi1oZWlnaHRdPVwibWluSGVpZ2h0XCI+XG4gICAgICA8dGFibGUgY2xhc3M9XCJncmlkXCI+XG4gICAgICAgIDx0aGVhZD5cbiAgICAgICAgICA8dHIgc3R5bGU9XCJiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pb24tY29sb3ItYmx1ZXRvb2wpOyBjb2xvcjogd2hpdGU7XCI+XG4gICAgICAgICAgICA8dGQgKm5nSWY9XCJ0YWJlbGFDYW1wb3MuU2VsZWNpb25hciA9PT0gdHJ1ZVwiIHN0eWxlPVwid2lkdGg6IDMlOyB0ZXh0LWFsaWduOiBjZW50ZXI7XCI+XG4gICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwiY2hlY2tib3hcIiBbKG5nTW9kZWwpXT1cInRvZG9zU2VsZWNpb25hZG9zXCIgKGNoYW5nZSk9XCJzZWxlY2lvbmFyVG9kb3MoKVwiPlxuICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgIDx0ZCAqbmdGb3I9XCJsZXQgY29sIG9mIHRhYmVsYUNhbXBvcy5Db2x1bmFzXCIgW3N0eWxlLndpZHRoXT1cImNvbC5UYW1hbmhvXCI+XG4gICAgICAgICAgICAgIDxkaXYgc3R5bGU9XCJwb3NpdGlvbjogcmVsYXRpdmU7XCI+XG4gICAgICAgICAgICAgICAgPGRpdiBzdHlsZT1cImRpc3BsYXk6IGZsZXg7IGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgYWxpZ24taXRlbXM6IGVuZDtcIj5cbiAgICAgICAgICAgICAgICAgIDxzdHJvbmc+e3sgY29sLlRpdHVsbyB9fTwvc3Ryb25nPlxuICAgICAgICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICAgICAgPGlvbi1pY29uICpuZ0lmPVwiY29sLk9yZGVtXCIgc2xvdD1cImVuZFwiIChjbGljayk9XCJvcmRlbmFyKGNvbClcIiBzdHlsZT1cImN1cnNvcjogcG9pbnRlcjtcIlxuICAgICAgICAgICAgICAgICAgICAgIFtuYW1lXT1cImNvbC5PcmRlbVN0YXR1cyA9PSAwID8gJ3N3YXAtdmVydGljYWwnIDogKGNvbC5PcmRlbVN0YXR1cyA9PSAxID8gJ2Fycm93LXVwJzogJ2Fycm93LWRvd24nKVwiPjwvaW9uLWljb24+XG4gIFxuICAgICAgICAgICAgICAgICAgICA8aW9uLWljb24gKm5nSWY9XCJjb2wuRmlsdHJhclwiIG5hbWU9XCJmdW5uZWxcIiAoY2xpY2spPVwic2V0RmlsdHJvT3Blbihjb2wpXCIgc2xvdD1cImVuZFwiPjwvaW9uLWljb24+XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgXG4gIFxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYWl4YUdyYW5kZVwiIFtoaWRkZW5dPVwiIWNvbC5GaWx0cm9WaXNpdmVsXCIgdGFiaW5kZXg9XCItMVwiXG4gICAgICAgICAgICAgICAgICBzdHlsZT1cImNvbG9yOiBibGFjazsgZGlzcGxheTogYmxvY2s7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgei1pbmRleDogODAwOyB3aWR0aDogMjEwcHg7IHJpZ2h0OiAwcHg7IG9wYWNpdHk6IDAuOTtcIj5cbiAgICAgICAgICAgICAgICAgIEZpbHRyYXI6XG4gICAgICAgICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPVwiZGlzcGxheTogZmxleDsganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyBhbGlnbi1pdGVtczogc3RhcnQ7XCI+XG4gICAgICAgICAgICAgICAgICAgICAgPHNlbGVjdCBzdHlsZT1cIndpZHRoOiA4MHB4O1wiIFsobmdNb2RlbCldPVwiY29sLkZpbHRyb09wZXJhZG9yXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uPj08L29wdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24+Jmd0Oz08L29wdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24+Jmx0Oz08L29wdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24+dGVtPC9vcHRpb24+XG4gICAgICAgICAgICAgICAgICAgICAgPC9zZWxlY3Q+XG4gICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHN0eWxlPVwid2lkdGg6IDEwMHB4O1wiIHR5cGU9XCJ0ZXh0XCIgWyhuZ01vZGVsKV09XCJjb2wuRmlsdHJvVmFsb3JcIj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxpb24tYnV0dG9uIHNpemU9XCJzbWFsbFwiIGNvbG9yPVwibWVkaXVtXCIgZXhwYW5kPVwiYmxvY2tcIiAoY2xpY2spPVwiZmlsdHJhcihjb2wpXCI+RmlsdHJhcjwvaW9uLWJ1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgPGlvbi1idXR0b24gc2l6ZT1cInNtYWxsXCIgY29sb3I9XCJsaWdodFwiIGV4cGFuZD1cImJsb2NrXCIgKGNsaWNrKT1cImxpbXBhcigpXCI+TGltcGFyPC9pb24tYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiY29sLlZhbG9yZXNcIiBjbGFzcz1cInNjcm9sbC1jb250YWluZXJcIiBzdHlsZT1cImhlaWdodDogMjAwcHg7IG92ZXJmbG93LXk6IHNjcm9sbDtcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgdmFsb3Igb2YgY29sLlZhbG9yZXNcIj5cbiAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cImNoZWNrYm94XCIgWyhuZ01vZGVsKV09XCJ2YWxvci5TZWxlY2lvbmFkb1wiPlxuICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPnt7IHZhbG9yLlZhbG9yIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICBcbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgPHRkICpuZ0lmPVwidGFiZWxhQ2FtcG9zLkV4Y2x1aXIgPT09IHRydWVcIj5cbiAgXG4gICAgICAgICAgICA8L3RkPlxuICAgICAgICAgIDwvdHI+XG4gICAgICAgIDwvdGhlYWQ+XG4gICAgICAgIDx0Ym9keT5cbiAgICAgICAgICA8dHIgKm5nRm9yPVwibGV0IGl0ZW0gb2YgcGFnZURhdGFTZXRcIiBbY2xhc3NdPVwiaXRlbSA9PSBzZWxlY3RlZEl0ZW0gPyAnaXRlbS1zZWxlY2lvbmFkbycgOiAnJyBcIj5cbiAgICAgICAgICAgIDx0ZCAqbmdJZj1cInRhYmVsYUNhbXBvcy5TZWxlY2lvbmFyID09PSB0cnVlXCIgc3R5bGU9XCJ0ZXh0LWFsaWduOiBjZW50ZXI7IGN1cnNvcjogYXV0bztcIj5cbiAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJjaGVja2JveFwiIFsobmdNb2RlbCldPVwiaXRlbVt0YWJlbGFDYW1wb3MuQ2FtcG9TZWxlY2lvbmFyXVwiIChjaGFuZ2UpPVwic2VsZWNpb25hZG9DaGVja2VkKClcIj5cbiAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICA8dGQgY2xhc3M9XCJjb2xcIiAqbmdGb3I9XCJsZXQgY29sIG9mIHRhYmVsYUNhbXBvcy5Db2x1bmFzXCIgW3N0eWxlLndpZHRoXT1cImNvbC5UYW1hbmhvXCJcbiAgICAgICAgICAgICAgW3N0eWxlLnRleHQtYWxpZ25dPVwiY29sLlRpcG8gPT0gJ251bWJlcicgPyAncmlnaHQnIDogKGNvbC5BbGluaGFtZW50byA/PyAnbGVmdCcpXCJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cImNvbC5DbGlja0Z1bmN0aW9uID8gY29sLkNsaWNrRnVuY3Rpb24oaXRlbSkgOiBzZWxlY2lvbmFyTGluaGEoaXRlbSlcIj5cbiAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJjb2wuUGlwZSA9PSAnZGF0ZSdcIj57eyBpdGVtW2NvbC5DYW1wb10gfCBkYXRlOiAnZGQvTU0veXl5eScgfX08L3NwYW4+ICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJjb2wuUGlwZSA9PSAndmFsb3InXCI+e3sgaXRlbVtjb2wuQ2FtcG9dIHwgdmFsb3JGb3JtYXQgfX08L3NwYW4+XG4gICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiY29sLlJlbmRlckZ1bmN0aW9uXCIgW2lubmVySHRtbF09XCJjb2wuUmVuZGVyRnVuY3Rpb24oaXRlbSkgfCBzYWZlSHRtbFwiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCIhY29sLlBpcGUgJiYgIWNvbC5SZW5kZXJGdW5jdGlvblwiPnt7IGl0ZW1bY29sLkNhbXBvXSA/PyBjb2wuRGVmYXVsdCB9fTwvc3Bhbj5cbiAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICA8dGQgKm5nSWY9XCJ0YWJlbGFDYW1wb3MuRXhjbHVpciA9PT0gdHJ1ZVwiIHN0eWxlPVwicGFkZGluZzogMHB4OyB0ZXh0LWFsaWduOiBjZW50ZXI7XCI+XG4gICAgICAgICAgICAgIDxpb24tYnV0dG9uIHNpemU9XCJzbWFsbFwiIGNvbG9yPVwiZGFuZ2VyXCIgZmlsbD1cIm91dGxpbmVcIiBzdHlsZT1cInRyYW5zZm9ybTogc2NhbGUoMC44NSk7XCIgKGNsaWNrKT1cImV4Y2x1aXJMaW5oYShpdGVtKVwiPlxuICAgICAgICAgICAgICAgIDxpb24taWNvbiBuYW1lPVwidHJhc2hcIj48L2lvbi1pY29uPlxuICAgICAgICAgICAgICA8L2lvbi1idXR0b24+XG4gICAgICAgICAgICA8L3RkPlxuICAgICAgICAgIDwvdHI+XG4gICAgICAgIDwvdGJvZHk+XG4gICAgICA8L3RhYmxlPlxuICAgIDwvZGl2PlxuICBcbiAgICA8aW9uLW1vZGFsIFtpc09wZW5dPVwiaXNGaWx0cm9PcGVuXCIgKGRpZERpc21pc3MpPVwiaXNGaWx0cm9PcGVuID0gZmFsc2U7XCI+XG4gICAgICA8bmctdGVtcGxhdGU+XG4gICAgICAgIDxpb24tY29udGVudCBjbGFzcz1cImlvbi1wYWRkaW5nXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNhaXhhR3JhbmRlXCI+XG4gICAgICAgICAgICBGaWx0cmFyOlxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cInNlbGVjdGVkQ29sdW5hLlZhbG9yZXNcIj5cbiAgICAgICAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgdmFsb3Igb2Ygc2VsZWN0ZWRDb2x1bmEuVmFsb3Jlc1wiPlxuICAgICAgICAgICAgICAgIDxzcGFuPnt7IHZhbG9yIH19PC9zcGFuPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2lvbi1jb250ZW50PlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L2lvbi1tb2RhbD5cbiAgPC9kaXY+Il19
|
|
275
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC12aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FwcHByb2plY3QtY29tcG9uZW50cy9zcmMvbGliL2dyaWQtdmlldy9ncmlkLXZpZXcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXBwcHJvamVjdC1jb21wb25lbnRzL3NyYy9saWIvZ3JpZC12aWV3L2dyaWQtdmlldy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQXFCLE1BQU0sRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFDekcsT0FBTyxFQUFjLFVBQVUsRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7O0FBT3BFLE1BQU0sT0FBTyxpQkFBaUI7SUFnRTVCO1FBNURTLGNBQVMsR0FBVyxPQUFPLENBQUM7UUFDNUIsdUJBQWtCLEdBQVksS0FBSyxDQUFDO1FBRW5DLG1CQUFjLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUNwQyxnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDakMsc0JBQWlCLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUdqRCwyREFBMkQ7UUFDM0QsV0FBTSxHQUFVLENBQUMsRUFBRSxNQUFNLEVBQUUsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUV0RSxtQkFBbUI7UUFDbkIsdUJBQXVCO1FBQ3ZCLG9CQUFvQjtRQUNwQixlQUFlO1FBQ2Ysd01BQXdNO1FBQ3hNLDZNQUE2TTtRQUM3TSxxTkFBcU47UUFDck4seU1BQXlNO1FBQ3pNLDhNQUE4TTtRQUM5TSxNQUFNO1FBQ04sSUFBSTtRQUVKLDBCQUEwQjtRQUMxQiwyRkFBMkY7UUFDM0YsOEZBQThGO1FBQzlGLDhGQUE4RjtRQUM5RixxRkFBcUY7UUFDckYsNEZBQTRGO1FBQzVGLElBQUk7UUFJSixXQUFNLEdBQUcsRUFBRSxDQUFBO1FBQ0Ysb0JBQWUsR0FBRyxFQUFFLENBQUM7UUFDOUIsZ0JBQVcsR0FBRyxFQUFFLENBQUM7UUFHakIsNENBQTRDO1FBQzVDLGtCQUFhLEdBQUcsRUFBRSxDQUFDO1FBRW5CLFFBQVE7UUFDUixpQkFBWSxHQUFZLEtBQUssQ0FBQztRQUU5QixzQkFBaUIsR0FBWSxLQUFLLENBQUM7UUFFbkMsWUFBWTtRQUNaLGNBQWM7UUFDZCxTQUFJLEdBQVcsQ0FBQyxDQUFDO1FBQ2pCLHNCQUFzQjtRQUNiLGVBQVUsR0FBVyxFQUFFLENBQUM7SUFVakIsQ0FBQztJQUVqQixhQUFhO1FBQ1gsSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQ3BDLElBQUksQ0FBQyxDQUFDLE9BQU8sRUFBRTtnQkFDYixtQkFBbUI7Z0JBQ25CLElBQUksT0FBTyxHQUFHLEVBQUUsQ0FBQztnQkFDakIsSUFBSSxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7Z0JBQ2hELENBQUMsQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLEVBQUU7b0JBQ2hELE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsS0FBSyxLQUFLLENBQUM7Z0JBQ3ZDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLE9BQU8sRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsQ0FBQSxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUMzRCxtQ0FBbUM7Z0JBQ25DLDJCQUEyQjthQUMxQjtRQUNILENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQztJQUVELFFBQVE7UUFHTix5QkFBeUI7UUFDekIsd0JBQXdCO1FBQ3hCLHFDQUFxQztRQUNyQywrQ0FBK0M7UUFDL0MsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDbkMsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUNwQyxPQUFPLENBQUMsR0FBRyxDQUFDLG9CQUFvQixFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLE9BQU8sQ0FBQyxHQUFHLENBQUMsMEJBQTBCLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQzNELGdEQUFnRDtRQUNoRCwrQkFBK0I7UUFDL0IsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2hCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxLQUFLLENBQUM7SUFDakMsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQztRQUNkLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUM7UUFDNUMsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBRTdELElBQUksSUFBSSxDQUFDLGtCQUFrQixLQUFLLElBQUksRUFBRTtZQUNwQyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztTQUN6QjthQUFNO1lBQ0wsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDO1NBQ3pDO0lBQ0gsQ0FBQztJQUVELGdCQUFnQjtRQUNkLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUM7UUFDL0MsT0FBTyxDQUFDLEdBQUcsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQzdDLE9BQU8sQ0FBQyxHQUFHLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNqQyxPQUFPLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDdkMsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztRQUMxRixPQUFPLENBQUMsR0FBRyxDQUFDLGNBQWMsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUVELE9BQU87UUFDTCxJQUFJLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUMvQixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDWixJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztZQUN4QixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7U0FDdkI7SUFDSCxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksSUFBSSxDQUFDLElBQUksR0FBRyxDQUFDLEVBQUU7WUFDakIsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ1osSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7WUFDeEIsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1NBQ3ZCO0lBQ0gsQ0FBQztJQUVELGNBQWM7SUFFZCxDQUFDO0lBRUQsZUFBZTtRQUNiLHdDQUF3QztRQUN4QyxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDO1FBQy9DLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUM7UUFDM0MsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN0QyxDQUFDO0lBRUQsT0FBTyxDQUFDLEtBQWE7UUFDbkIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDeEIsSUFBSSxLQUFLLEdBQUcsQ0FBQyxDQUFDO1FBQ2QsS0FBSyxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ3pCLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDZixrQkFBa0I7WUFDbEIsSUFBSSxNQUFNLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLEVBQUU7Z0JBQy9DLE1BQU0sRUFBRSxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUM7Z0JBQ25CLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDO2dCQUM5QixLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUNwQixPQUFPLEtBQUssQ0FBQztZQUNmLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUNQLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUM7U0FDckI7SUFFSCxDQUFDO0lBRUQsYUFBYSxDQUFDLE1BQU0sR0FBRyxFQUFFO1FBQ3ZCLElBQUksTUFBTSxJQUFJLEVBQUUsRUFBRTtTQUVqQjthQUFNO1NBRU47SUFDSCxDQUFDO0lBRUQsT0FBTyxDQUFDLEdBQWU7UUFDckIsOEJBQThCO1FBQzlCLElBQUksR0FBRyxDQUFDLE9BQU8sSUFBSSxHQUFHLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsSUFBSSxJQUFJLEVBQUU7WUFDL0QsTUFBTSxPQUFPLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBRXpFLGtDQUFrQztZQUNsQyxJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUNyRjthQUFNLElBQUksR0FBRyxDQUFDLGNBQWMsSUFBSSxHQUFHLENBQUMsV0FBVyxFQUFFO1lBQ2hELGtEQUFrRDtZQUNsRCxJQUFJO2dCQUNGLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUU7b0JBQzdDLFFBQVEsR0FBRyxDQUFDLGNBQWMsRUFBRTt3QkFDMUIsS0FBSyxHQUFHOzRCQUNOLE9BQU8sQ0FBQyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxHQUFHLENBQUMsV0FBVyxDQUFDO3dCQUN6QyxLQUFLLElBQUk7NEJBQ1AsSUFBSSxHQUFHLENBQUMsSUFBSSxJQUFJLFFBQVEsRUFBRTtnQ0FDeEIsT0FBTyxVQUFVLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsSUFBSSxDQUFDLElBQUksVUFBVSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxDQUFDOzZCQUM1RztpQ0FBTSxJQUFJLEdBQUcsQ0FBQyxJQUFJLElBQUksTUFBTSxFQUFFO2dDQUM3QixPQUFPLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQzs2QkFDbEc7O2dDQUNELE9BQU8sQ0FBQyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxHQUFHLENBQUMsV0FBVyxDQUFDO3dCQUN6QyxLQUFLLElBQUk7NEJBQ1AsSUFBSSxHQUFHLENBQUMsSUFBSSxJQUFJLFFBQVEsRUFBRTtnQ0FDeEIsT0FBTyxVQUFVLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsSUFBSSxDQUFDLElBQUksVUFBVSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxDQUFDOzZCQUM1Rzs7Z0NBQ0QsT0FBTyxDQUFDLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLEdBQUcsQ0FBQyxXQUFXLENBQUM7d0JBQ3pDLEtBQUssS0FBSzs0QkFDUixPQUFPLENBQUMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsV0FBVyxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQzt3QkFDM0Y7NEJBQ0UsT0FBTyxJQUFJLENBQUM7cUJBQ2Y7Z0JBRUgsQ0FBQyxDQUFDLENBQUM7YUFDSjtZQUFDLE9BQU0sRUFBRSxFQUFFO2dCQUNWLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQ2hCLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQzthQUNyQztTQUNGO1FBQ0QsR0FBRyxDQUFDLGFBQWEsR0FBRyxLQUFLLENBQUM7UUFFMUIsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ2xCLENBQUM7SUFFRCxPQUFPO0lBRVAsQ0FBQztJQUVELE1BQU07UUFDSixJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdEMsQ0FBQztJQUVELFlBQVksQ0FBQyxJQUFZO1FBQ3ZCLElBQUksSUFBSSxFQUFFO1lBQ1IsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUM1QzthQUFNO1lBQ0wsT0FBTyxFQUFFLENBQUM7U0FDWDtJQUNILENBQUM7SUFFRCxPQUFPLENBQUMsR0FBZTtRQUNyQixJQUFJLEdBQUcsQ0FBQyxXQUFXLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxXQUFXLElBQUksQ0FBQyxDQUFDLEVBQUU7WUFDakQsSUFBSSxHQUFHLENBQUMsSUFBSSxJQUFJLE1BQU0sRUFBRTtnQkFDdEIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUMzTDtpQkFBTSxJQUFJLEdBQUcsQ0FBQyxJQUFJLElBQUksUUFBUSxFQUFFO2dCQUMvQixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLFVBQVUsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsVUFBVSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQy9OOztnQkFDQyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDaEgsR0FBRyxDQUFDLFdBQVcsR0FBRyxDQUFDLENBQUMsQ0FBQyxLQUFLO1NBQzNCO2FBQU07WUFDTCxJQUFJLEdBQUcsQ0FBQyxJQUFJLElBQUksTUFBTSxFQUFFO2dCQUN0QixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQzNMO2lCQUFNLElBQUksR0FBRyxDQUFDLElBQUksSUFBSSxRQUFRLEVBQUU7Z0JBQy9CLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLElBQUksQ0FBQyxHQUFHLFVBQVUsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxJQUFJLENBQUMsR0FBRyxVQUFVLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQ3ZQOztnQkFDRCxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDOUcsR0FBRyxDQUFDLFdBQVcsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU07U0FDN0I7SUFDSCxDQUFDO0lBRUQsYUFBYSxDQUFDLEdBQVE7UUFDcEIsR0FBRyxDQUFDLGFBQWEsR0FBRyxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUE7UUFDdEMsSUFBSSxHQUFHLENBQUMsYUFBYSxFQUFFO1lBQ3JCLElBQUksQ0FBQyxjQUFjLEdBQUcsR0FBRyxDQUFDO1lBQzFCLG1DQUFtQztTQUNwQztJQUNILENBQUM7SUFFRCxlQUFlO1FBQ2IsbURBQW1EO1FBQ25ELElBQUksQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ2xDLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLGVBQWUsQ0FBQyxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQztRQUNuRSxDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNoQyxDQUFDO0lBRUQsZUFBZSxDQUFDLElBQVM7UUFDdkIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDL0IsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUM7SUFDM0IsQ0FBQztJQUVELFlBQVksQ0FBQyxJQUFTO1FBQ3BCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFRCxPQUFPO0lBQ1Asa0JBQWtCO1FBQ2hCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNoQyxDQUFDOzhHQTFSVSxpQkFBaUI7a0dBQWpCLGlCQUFpQixrWkNSOUIsK2tNQW1IUTs7MkZEM0dLLGlCQUFpQjtrQkFMN0IsU0FBUzsrQkFDRSxjQUFjO3dEQUtmLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBRUksY0FBYztzQkFBdkIsTUFBTTtnQkFDRyxXQUFXO3NCQUFwQixNQUFNO2dCQUNHLGlCQUFpQjtzQkFBMUIsTUFBTTtnQkE2QkUsZUFBZTtzQkFBdkIsS0FBSztnQkFnQkcsVUFBVTtzQkFBbEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25DaGFuZ2VzLCBPbkluaXQsIE91dHB1dCwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgR3JpZENvbHVuYSwgR3JpZFRhYmVsYSwgTGliU2VydmljZSB9IGZyb20gJ2FwcHByb2plY3QtbGliJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAna2ItZ3JpZC12aWV3JywgICAgXG4gIHRlbXBsYXRlVXJsOiAnLi9ncmlkLXZpZXcuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vZ3JpZC12aWV3LmNvbXBvbmVudC5zY3NzJ1xufSlcbmV4cG9ydCBjbGFzcyBHcmlkVmlld0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcbiAgQElucHV0KCkgZW1wcmVzYUlkOiBudW1iZXI7XG4gIEBJbnB1dCgpIHRhYmVsYUNhbXBvczogR3JpZFRhYmVsYTtcbiAgQElucHV0KCkgZGF0YVNldDogQXJyYXk8YW55PjtcbiAgQElucHV0KCkgbWluSGVpZ2h0OiBzdHJpbmcgPSAnNDAwcHgnO1xuICBASW5wdXQoKSBpbk1lbW9yeVBhZ2luYXRpb246IGJvb2xlYW4gPSBmYWxzZTtcblxuICBAT3V0cHV0KCkgc2VsZWNpb25hckl0ZW0gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKSBleGNsdWlySXRlbSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIHNlbGVjaW9uYXJDaGVja2VkID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIHNlbGVjdGVkSXRlbTogYW55O1xuICAvL2lucHV0cyA9IGluamVjdChuZXcgSW5qZWN0aW9uVG9rZW48YW55PigndGl0bGUgaW5wdXRzJykpO1xuICBncnVwb3M6IGFueVtdID0gW3sgQ29sdW5hOiAnJywgVGFiZWxhOiBudWxsLCBEYWRvczogbnVsbCwgTml2ZWw6IDAgfV07XG5cbiAgLy8gdGFiZWxhQ2FtcG9zID0ge1xuICAvLyAgIFNlbGVjaW9uYXI6IGZhbHNlLFxuICAvLyAgIEV4cG9ydGFyOiB0cnVlLFxuICAvLyAgIENvbHVuYXM6IFtcbiAgLy8gICAgIHsgQ2FtcG86ICdJZCcsIFRpdHVsbzogJ0lkJywgVGFtYW5obzogJzEwJScsIE9yZGVtOiB0cnVlLCBHcnVwbzogZmFsc2UsIEZpbHRyYXI6IHRydWUsIE9yZGVtU3RhdHVzOiAwLCBUaXBvOiAnbnVtYmVyJywgVmFsb3JlczogW10sIEZpbHRyb09wZXJhZG9yOiAnPScsIEZpbHRyb1ZhbG9yOiAnJywgRmlsdHJvVmlzaXZlbDogZmFsc2UgfSxcbiAgLy8gICAgIHsgQ2FtcG86ICdNYXJjYScsIFRpdHVsbzogJ01hcmNhJywgVGFtYW5obzogJzI1JScsIE9yZGVtOiB0cnVlLCBHcnVwbzogdHJ1ZSwgRmlsdHJhcjogdHJ1ZSwgT3JkZW1TdGF0dXM6IDAsIFRpcG86ICdzdHJpbmcnLCBWYWxvcmVzOiBbXSwgRmlsdHJvT3BlcmFkb3I6ICc9JywgRmlsdHJvVmFsb3I6ICcnLCBGaWx0cm9WaXNpdmVsOiBmYWxzZSB9LFxuICAvLyAgICAgeyBDYW1wbzogJ0Rlc2NyaWNhbycsIFRpdHVsbzogJ0Rlc2NyacOnw6NvJywgVGFtYW5obzogJzI1JScsIE9yZGVtOiB0cnVlLCBHcnVwbzogdHJ1ZSwgRmlsdHJhcjogdHJ1ZSwgT3JkZW1TdGF0dXM6IDAsIFRpcG86ICdzdHJpbmcnLCBWYWxvcmVzOiBbXSwgRmlsdHJvT3BlcmFkb3I6ICc9JywgRmlsdHJvVmFsb3I6ICcnLCBGaWx0cm9WaXNpdmVsOiBmYWxzZSB9LFxuICAvLyAgICAgeyBDYW1wbzogJ0RhdGEnLCBUaXR1bG86ICdEYXRhJywgVGFtYW5obzogJzIwJScsIE9yZGVtOiB0cnVlLCBHcnVwbzogdHJ1ZSwgRmlsdHJhcjogdHJ1ZSwgT3JkZW1TdGF0dXM6IDAsIFRpcG86ICdkYXRlJywgVmFsb3JlczogW10sIEZpbHRyb09wZXJhZG9yOiAnPScsIEZpbHRyb1ZhbG9yOiAnJywgRmlsdHJvVmlzaXZlbDogZmFsc2UgfSxcbiAgLy8gICAgIHsgQ2FtcG86ICdWYWxvcicsIFRpdHVsbzogJ1ZhbG9yJywgVGFtYW5obzogJzIwJScsIE9yZGVtOiB0cnVlLCBHcnVwbzogZmFsc2UsIEZpbHRyYXI6IHRydWUsIE9yZGVtU3RhdHVzOiAwLCBUaXBvOiAnbnVtYmVyJywgVmFsb3JlczogW10sIEZpbHRyb09wZXJhZG9yOiAnPScsIEZpbHRyb1ZhbG9yOiAnJywgRmlsdHJvVmlzaXZlbDogZmFsc2UgfSxcbiAgLy8gICBdXG4gIC8vIH1cblxuICAvLyBkYXRhU2V0OiBBcnJheTxhbnk+ID0gW1xuICAvLyAgIHsgSWQ6IDEsIE1hcmNhOiAnQXBwbGUnLCBEZXNjcmljYW86ICdJUGhvbmUgMTQnLCBEYXRhOiAnMjAyMy0wNS0wMScsIFZhbG9yOiA3ODk5Ljk5IH0sXG4gIC8vICAgeyBJZDogMiwgTWFyY2E6ICdBcHBsZScsIERlc2NyaWNhbzogJ01hY0Jvb2sgUHJvJywgRGF0YTogJzIwMjMtMDYtMDEnLCBWYWxvcjogMTc5OTkuOTkgfSxcbiAgLy8gICB7IElkOiAzLCBNYXJjYTogJ1NhbXN1bmcnLCBEZXNjcmljYW86ICdHYWxheHkgUzIzJywgRGF0YTogJzIwMjMtMDUtMDEnLCBWYWxvcjogNjg5OS45OSB9LFxuICAvLyAgIHsgSWQ6IDQsIE1hcmNhOiAnU29ueScsIERlc2NyaWNhbzogJ1BTIDUnLCBEYXRhOiAnMjAyMy0wNi0wMScsIFZhbG9yOiA0ODk5Ljk5IH0sXG4gIC8vICAgeyBJZDogNSwgTWFyY2E6ICdTYW1zdW5nJywgRGVzY3JpY2FvOiAnV2F0Y2ggMjMnLCBEYXRhOiAnMjAyMy0wNS0wMScsIFZhbG9yOiAxODk5Ljk5IH0sXG4gIC8vIF1cblxuXG5cbiAgZ3JvdXBzID0gW11cbiAgQElucHV0KCkgZmlsdGVyZWREYXRhU2V0ID0gW107XG4gIHBhZ2VEYXRhU2V0ID0gW107XG5cblxuICAvL2FycmF5IGNvbSBvcyBjYW1wb3MgZmlsdHJhZG9zIHBhcmEgZGlzcGxheVxuICBjYW1wb3NEaXNwbGF5ID0gW107XG5cbiAgLy9maWx0cm9cbiAgaXNGaWx0cm9PcGVuOiBib29sZWFuID0gZmFsc2U7XG4gIHNlbGVjdGVkQ29sdW5hOiBhbnk7XG4gIHRvZG9zU2VsZWNpb25hZG9zOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLy9wYWdpbmF0aW9uXG4gIC8vcMOhZ2luYSBhdHVhbFxuICBwYWdlOiBudW1iZXIgPSAxO1xuICAvL3JlZ2lzdHJvcyBwb3IgcMOhZ2luYVxuICBASW5wdXQoKSBwYWdlT2Zmc2V0OiBudW1iZXIgPSAyMDtcbiAgLy90b3RhbCBkZSByZWdpc3Ryb3NcbiAgdG90YWxSZWM6IG51bWJlcjtcbiAgLy90b3RhbCBkZSBww6FnaW5hc1xuICB0b3RhbFBhZ2VzOiBudW1iZXI7XG4gIC8vaW5kZXhhZG9yIGRlIHBhZ2luYXNcbiAgcGFnZXM6IG51bWJlcltdOyAgXG4gIHN0YXJ0OiBudW1iZXI7XG5cblxuICBjb25zdHJ1Y3RvcigpIHsgfVxuXG4gIHZhbG9yZXNGaWx0cm8oKSB7XG4gICAgdGhpcy50YWJlbGFDYW1wb3MuQ29sdW5hcy5mb3JFYWNoKGMgPT4ge1xuICAgICAgaWYgKGMuRmlsdHJhcikge1xuICAgICAgICAvL3Byb2pldGFyIGEgY29sdW5hXG4gICAgICAgIGxldCBpbml0aWFsID0gW107XG4gICAgICAgIGxldCB2YWxvcmVzID0gdGhpcy5kYXRhU2V0Lm1hcChkID0+IGRbYy5DYW1wb10pO1xuICAgICAgICBjLlZhbG9yZXMgPSB2YWxvcmVzLmZpbHRlcigodmFsdWUsIGluZGV4LCBzZWxmKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIHNlbGYuaW5kZXhPZih2YWx1ZSkgPT09IGluZGV4O1xuICAgICAgICB9KS5tYXAodiA9PiB7IHJldHVybiB7IFNlbGVjaW9uYWRvOiBmYWxzZSwgVmFsb3I6IHYgfSB9KTtcbiAgICAgIC8vICAgY29uc29sZS5sb2coYy5DYW1wbywgdmFsb3Jlcyk7XG4gICAgICAvLyAgIGNvbnNvbGUubG9nKGMuVmFsb3JlcylcbiAgICAgIH1cbiAgICB9KVxuICB9XG5cbiAgbmdPbkluaXQoKSB7XG5cblxuICAgIC8vdGhpcy5pbmljaWFsaXphR3J1cG8oKTtcbiAgICAvL3RoaXMuYWdydXBhcignTWFyY2EnKTtcbiAgICAvL2NvbnNvbGUubG9nKCdpbnB1dHMnLCB0aGlzLmlucHV0cyk7XG4gICAgLy9jb25zb2xlLmxvZygnSW5wdXQgZW1wcmVzYScsIHRoaXMuZW1wcmVzYUlkKTtcbiAgICBHcmlkVGFiZWxhLmluaXQodGhpcy50YWJlbGFDYW1wb3MpO1xuICAgIHRoaXMudmFsb3Jlc0ZpbHRybygpO1xuICAgIHRoaXMuZmlsdGVyZWREYXRhU2V0ID0gdGhpcy5kYXRhU2V0O1xuICAgIGNvbnNvbGUubG9nKCdJbml0IFRhYmVsYSBjYW1wb3MnLCB0aGlzLnRhYmVsYUNhbXBvcyk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgY29uc29sZS5sb2coJ09uIGNoYW5nZXMgVGFiZWxhIGNhbXBvcycsIHRoaXMudGFiZWxhQ2FtcG9zKTtcbiAgICAvL2V2ZW50byBjaGFtYWRvIHF1YW5kbyBvIGRhdGFzZXQgZm9yIGF0dWFsaXphZG9cbiAgICAvL2luaWNpYWxpemFyIHZhcnMgZGUgcGFnaW5hw6fDo29cbiAgICB0aGlzLmluaXRQYWdlKCk7XG4gICAgdGhpcy50b2Rvc1NlbGVjaW9uYWRvcyA9IGZhbHNlO1xuICB9XG5cbiAgaW5pdFBhZ2UoKSB7XG4gICAgdGhpcy5wYWdlID0gMTtcbiAgICB0aGlzLnRvdGFsUmVjID0gdGhpcy5maWx0ZXJlZERhdGFTZXQubGVuZ3RoO1xuICAgIHRoaXMudG90YWxQYWdlcyA9IE1hdGguY2VpbCh0aGlzLnRvdGFsUmVjIC8gdGhpcy5wYWdlT2Zmc2V0KTsgICAgXG5cbiAgICBpZiAodGhpcy5pbk1lbW9yeVBhZ2luYXRpb24gPT09IHRydWUpIHtcbiAgICAgIHRoaXMuZ2V0UmVnaXN0cm9zUGFnZSgpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnBhZ2VEYXRhU2V0ID0gdGhpcy5maWx0ZXJlZERhdGFTZXQ7XG4gICAgfVxuICB9XG5cbiAgZ2V0UmVnaXN0cm9zUGFnZSgpIHtcbiAgICB0aGlzLnN0YXJ0ID0gKHRoaXMucGFnZSAtIDEpICogdGhpcy5wYWdlT2Zmc2V0O1xuICAgIGNvbnNvbGUubG9nKCdkYXRhc2V0JywgdGhpcy5maWx0ZXJlZERhdGFTZXQpO1xuICAgIGNvbnNvbGUubG9nKCdzdGFydCcsIHRoaXMuc3RhcnQpO1xuICAgIGNvbnNvbGUubG9nKCdvZmZzZXQnLCB0aGlzLnBhZ2VPZmZzZXQpO1xuICAgIHRoaXMucGFnZURhdGFTZXQgPSB0aGlzLmZpbHRlcmVkRGF0YVNldC5zbGljZSh0aGlzLnN0YXJ0LCAodGhpcy5zdGFydCArIHRoaXMucGFnZU9mZnNldCkpO1xuICAgIGNvbnNvbGUubG9nKCdwYWdlIGRhdGFzZXQnLCB0aGlzLnBhZ2VEYXRhU2V0KTtcbiAgfVxuXG4gIHByb3hpbW8oKSB7XG4gICAgaWYgKHRoaXMucGFnZSA8IHRoaXMudG90YWxQYWdlcykge1xuICAgICAgdGhpcy5wYWdlKys7XG4gICAgICB0aGlzLmdldFJlZ2lzdHJvc1BhZ2UoKTtcbiAgICAgIHRoaXMuZ2VyYXJBcnJheVBhZ3MoKTtcbiAgICB9XG4gIH1cblxuICBhbnRlcmlvcigpIHtcbiAgICBpZiAodGhpcy5wYWdlID4gMSkge1xuICAgICAgdGhpcy5wYWdlLS07XG4gICAgICB0aGlzLmdldFJlZ2lzdHJvc1BhZ2UoKTtcbiAgICAgIHRoaXMuZ2VyYXJBcnJheVBhZ3MoKTtcbiAgICB9XG4gIH1cblxuICBnZXJhckFycmF5UGFncygpIHtcblxuICB9XG5cbiAgaW5pY2lhbGl6YUdydXBvKCkge1xuICAgIC8vaW5pY2lhbGl6YXIgbyBwcmltZWlybyBncnVwbyAnZGVmYXVsdCdcbiAgICB0aGlzLmNhbXBvc0Rpc3BsYXkgPSB0aGlzLnRhYmVsYUNhbXBvcy5Db2x1bmFzO1xuICAgIHRoaXMuZ3J1cG9zWzBdLlRhYmVsYSA9IHRoaXMuY2FtcG9zRGlzcGxheTtcbiAgICB0aGlzLmdydXBvc1swXS5EYWRvcyA9IHRoaXMuZGF0YVNldDtcbiAgfVxuXG4gIGFncnVwYXIoY2FtcG86IHN0cmluZykge1xuICAgIHRoaXMuZ3JvdXBzLnB1c2goY2FtcG8pO1xuICAgIGxldCBsZXZlbCA9IDA7XG4gICAgZm9yIChsZXQgZyBpbiB0aGlzLmdyb3Vwcykge1xuICAgICAgY29uc29sZS5sb2coZyk7XG4gICAgICAvL2ZpbHRyYXIgb3MgZGFkb3NcbiAgICAgIGxldCByZXN1bHQgPSB0aGlzLmRhdGFTZXQucmVkdWNlKChncm91cCwgZGF0YSkgPT4ge1xuICAgICAgICBjb25zdCB7IGcgfSA9IGRhdGE7XG4gICAgICAgIGdyb3VwW2ddID0gZ3JvdXBbY2FtcG9dID8/IFtdO1xuICAgICAgICBncm91cFtnXS5wdXNoKGRhdGEpO1xuICAgICAgICByZXR1cm4gZ3JvdXA7XG4gICAgICB9LCB7fSk7XG4gICAgICBjb25zb2xlLmxvZyhyZXN1bHQpO1xuICAgIH1cblxuICB9XG5cbiAgZmlsdHJhckNhbXBvcyhjb2x1bmEgPSAnJykge1xuICAgIGlmIChjb2x1bmEgIT0gJycpIHtcblxuICAgIH0gZWxzZSB7XG5cbiAgICB9XG4gIH1cblxuICBmaWx0cmFyKGNvbDogR3JpZENvbHVuYSkge1xuICAgIC8vY29uc29sZS5sb2coJ2ZpbHRyYXInLCBjb2wpO1xuICAgIGlmIChjb2wuVmFsb3JlcyAmJiBjb2wuVmFsb3Jlcy5maW5kKHYgPT4gdi5TZWxlY2lvbmFkbykgIT0gbnVsbCkge1xuICAgICAgY29uc3QgdmFsb3JlcyA9IGNvbC5WYWxvcmVzLmZpbHRlcih2ID0+IHYuU2VsZWNpb25hZG8pLm1hcCh2ID0+IHYuVmFsb3IpO1xuXG4gICAgICAvL2ZpbHRyYXIgcG9yIHZhbG9yZXMgc2VsZWNpb25hZG9zXG4gICAgICB0aGlzLmZpbHRlcmVkRGF0YVNldCA9IHRoaXMuZGF0YVNldC5maWx0ZXIoZCA9PiB2YWxvcmVzLmluZGV4T2YoZFtjb2wuQ2FtcG9dKSA+IC0xKTtcbiAgICB9IGVsc2UgaWYgKGNvbC5GaWx0cm9PcGVyYWRvciAmJiBjb2wuRmlsdHJvVmFsb3IpIHtcbiAgICAgIC8vY29uc29sZS5sb2coY29sLkZpbHRyb09wZXJhZG9yLCBjb2wuRmlsdHJvVmFsb3IpXG4gICAgICB0cnkge1xuICAgICAgICB0aGlzLmZpbHRlcmVkRGF0YVNldCA9IHRoaXMuZGF0YVNldC5maWx0ZXIoZCA9PiB7XG4gICAgICAgICAgc3dpdGNoIChjb2wuRmlsdHJvT3BlcmFkb3IpIHtcbiAgICAgICAgICAgIGNhc2UgXCI9XCI6XG4gICAgICAgICAgICAgIHJldHVybiBkW2NvbC5DYW1wb10gPT0gY29sLkZpbHRyb1ZhbG9yO1xuICAgICAgICAgICAgY2FzZSBcIj49XCI6XG4gICAgICAgICAgICAgIGlmIChjb2wuVGlwbyA9PSAnbnVtYmVyJykge1xuICAgICAgICAgICAgICAgIHJldHVybiBMaWJTZXJ2aWNlLnN0cmluZ1RvRGVjaW1hbChkW2NvbC5DYW1wb10sIHRydWUpID49IExpYlNlcnZpY2Uuc3RyaW5nVG9EZWNpbWFsKGNvbC5GaWx0cm9WYWxvciwgdHJ1ZSk7ICBcbiAgICAgICAgICAgICAgfSBlbHNlIGlmIChjb2wuVGlwbyA9PSAnZGF0YScpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gbmV3IERhdGUodGhpcy5kYXRhVG9TdHJpbmcoZFtjb2wuQ2FtcG9dKSkgPj0gbmV3IERhdGUodGhpcy5kYXRhVG9TdHJpbmcoY29sLkZpbHRyb1ZhbG9yKSk7ICBcbiAgICAgICAgICAgICAgfSBlbHNlXG4gICAgICAgICAgICAgIHJldHVybiBkW2NvbC5DYW1wb10gPj0gY29sLkZpbHRyb1ZhbG9yO1xuICAgICAgICAgICAgY2FzZSBcIjw9XCI6XG4gICAgICAgICAgICAgIGlmIChjb2wuVGlwbyA9PSAnbnVtYmVyJykge1xuICAgICAgICAgICAgICAgIHJldHVybiBMaWJTZXJ2aWNlLnN0cmluZ1RvRGVjaW1hbChkW2NvbC5DYW1wb10sIHRydWUpIDw9IExpYlNlcnZpY2Uuc3RyaW5nVG9EZWNpbWFsKGNvbC5GaWx0cm9WYWxvciwgdHJ1ZSk7ICBcbiAgICAgICAgICAgICAgfSBlbHNlXG4gICAgICAgICAgICAgIHJldHVybiBkW2NvbC5DYW1wb10gPD0gY29sLkZpbHRyb1ZhbG9yO1xuICAgICAgICAgICAgY2FzZSBcInRlbVwiOlxuICAgICAgICAgICAgICByZXR1cm4gZFtjb2wuQ2FtcG9dLnRvU3RyaW5nKCkudG9Mb3dlckNhc2UoKS5pbmRleE9mKGNvbC5GaWx0cm9WYWxvci50b0xvd2VyQ2FzZSgpKSA+IC0xO1xuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH0pO1xuICAgICAgfSBjYXRjaChleCkge1xuICAgICAgICBjb25zb2xlLmxvZyhleCk7XG4gICAgICAgIHRoaXMuZmlsdGVyZWREYXRhU2V0ID0gdGhpcy5kYXRhU2V0O1xuICAgICAgfVxuICAgIH1cbiAgICBjb2wuRmlsdHJvVmlzaXZlbCA9IGZhbHNlO1xuXG4gICAgdGhpcy5pbml0UGFnZSgpO1xuICB9XG5cbiAgZ2V0UGFnZSgpIHtcblxuICB9XG5cbiAgbGltcGFyKCkge1xuICAgIHRoaXMuZmlsdGVyZWREYXRhU2V0ID0gdGhpcy5kYXRhU2V0O1xuICB9XG5cbiAgZGF0YVRvU3RyaW5nKGRhdGE6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgaWYgKGRhdGEpIHtcbiAgICAgIHJldHVybiBkYXRhLnNwbGl0KCcvJykucmV2ZXJzZSgpLmpvaW4oJy0nKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIFwiXCI7XG4gICAgfVxuICB9XG5cbiAgb3JkZW5hcihjb2w6IEdyaWRDb2x1bmEpIHtcbiAgICBpZiAoY29sLk9yZGVtU3RhdHVzID09IDAgfHwgY29sLk9yZGVtU3RhdHVzID09IC0xKSB7XG4gICAgICBpZiAoY29sLlRpcG8gPT0gJ2RhdGEnKSB7XG4gICAgICAgIHRoaXMuZmlsdGVyZWREYXRhU2V0LnNvcnQoKGEsIGIpID0+IHRoaXMuZGF0YVRvU3RyaW5nKGFbY29sLkNhbXBvXSkgPiB0aGlzLmRhdGFUb1N0cmluZyhiW2NvbC5DYW1wb10pID8gMSA6ICh0aGlzLmRhdGFUb1N0cmluZyhhW2NvbC5DYW1wb10pIDwgdGhpcy5kYXRhVG9TdHJpbmcoYltjb2wuQ2FtcG9dKSA/IC0xIDogMCkpO1xuICAgICAgfSBlbHNlIGlmIChjb2wuVGlwbyA9PSAnbnVtYmVyJykge1xuICAgICAgICB0aGlzLmZpbHRlcmVkRGF0YVNldC5zb3J0KChhLCBiKSA9PiBMaWJTZXJ2aWNlLnN0cmluZ1RvRGVjaW1hbChhW2NvbC5DYW1wb10pID4gTGliU2VydmljZS5zdHJpbmdUb0RlY2ltYWwoYltjb2wuQ2FtcG9dKSA/IDEgOiAoTGliU2VydmljZS5zdHJpbmdUb0RlY2ltYWwoYVtjb2wuQ2FtcG9dKSA8IExpYlNlcnZpY2Uuc3RyaW5nVG9EZWNpbWFsKGJbY29sLkNhbXBvXSkgPyAtMSA6IDApKTtcbiAgICAgIH0gZWxzZSBcbiAgICAgICAgdGhpcy5maWx0ZXJlZERhdGFTZXQuc29ydCgoYSwgYikgPT4gYVtjb2wuQ2FtcG9dID4gYltjb2wuQ2FtcG9dID8gMSA6IChhW2NvbC5DYW1wb10gPCBiW2NvbC5DYW1wb10gPyAtMSA6IDApKTtcbiAgICAgIGNvbC5PcmRlbVN0YXR1cyA9IDE7IC8vYXNjXG4gICAgfSBlbHNlIHtcbiAgICAgIGlmIChjb2wuVGlwbyA9PSAnZGF0YScpIHtcbiAgICAgICAgdGhpcy5maWx0ZXJlZERhdGFTZXQuc29ydCgoYSwgYikgPT4gdGhpcy5kYXRhVG9TdHJpbmcoYVtjb2wuQ2FtcG9dKSA8IHRoaXMuZGF0YVRvU3RyaW5nKGJbY29sLkNhbXBvXSkgPyAxIDogKHRoaXMuZGF0YVRvU3RyaW5nKGFbY29sLkNhbXBvXSkgPiB0aGlzLmRhdGFUb1N0cmluZyhiW2NvbC5DYW1wb10pID8gLTEgOiAwKSk7XG4gICAgICB9IGVsc2UgaWYgKGNvbC5UaXBvID09ICdudW1iZXInKSB7XG4gICAgICAgIHRoaXMuZmlsdGVyZWREYXRhU2V0LnNvcnQoKGEsIGIpID0+IExpYlNlcnZpY2Uuc3RyaW5nVG9EZWNpbWFsKGFbY29sLkNhbXBvXSwgdHJ1ZSkgPCBMaWJTZXJ2aWNlLnN0cmluZ1RvRGVjaW1hbChiW2NvbC5DYW1wb10sIHRydWUpID8gMSA6IChMaWJTZXJ2aWNlLnN0cmluZ1RvRGVjaW1hbChhW2NvbC5DYW1wb10sIHRydWUpID4gTGliU2VydmljZS5zdHJpbmdUb0RlY2ltYWwoYltjb2wuQ2FtcG9dLCB0cnVlKSA/IC0xIDogMCkpO1xuICAgICAgfSBlbHNlIFxuICAgICAgdGhpcy5maWx0ZXJlZERhdGFTZXQuc29ydCgoYSwgYikgPT4gYVtjb2wuQ2FtcG9dIDwgYltjb2wuQ2FtcG9dID8gMSA6IChhW2NvbC5DYW1wb10gPiBiW2NvbC5DYW1wb10gPyAtMSA6IDApKTtcbiAgICAgIGNvbC5PcmRlbVN0YXR1cyA9IC0xOyAvL2Rlc2NcbiAgICB9XG4gIH1cblxuICBzZXRGaWx0cm9PcGVuKGNvbDogYW55KSB7XG4gICAgY29sLkZpbHRyb1Zpc2l2ZWwgPSAhY29sLkZpbHRyb1Zpc2l2ZWxcbiAgICBpZiAoY29sLkZpbHRyb1Zpc2l2ZWwpIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWRDb2x1bmEgPSBjb2w7XG4gICAgICAvL2NvbnNvbGUubG9nKHRoaXMuc2VsZWN0ZWRDb2x1bmEpO1xuICAgIH0gICAgXG4gIH1cblxuICBzZWxlY2lvbmFyVG9kb3MoKSB7XG4gICAgLy90aGlzLnRvZG9zU2VsZWNpb25hZG9zID0gIXRoaXMudG9kb3NTZWxlY2lvbmFkb3M7XG4gICAgdGhpcy5maWx0ZXJlZERhdGFTZXQuZm9yRWFjaChpdGVtID0+IHtcbiAgICAgIGl0ZW1bdGhpcy50YWJlbGFDYW1wb3MuQ2FtcG9TZWxlY2lvbmFyXSA9IHRoaXMudG9kb3NTZWxlY2lvbmFkb3M7XG4gICAgfSk7XG4gICAgdGhpcy5zZWxlY2lvbmFyQ2hlY2tlZC5lbWl0KCk7XG4gIH1cblxuICBzZWxlY2lvbmFyTGluaGEoaXRlbTogYW55KSB7XG4gICAgdGhpcy5zZWxlY2lvbmFySXRlbS5lbWl0KGl0ZW0pO1xuICAgIHRoaXMuc2VsZWN0ZWRJdGVtID0gaXRlbTtcbiAgfVxuXG4gIGV4Y2x1aXJMaW5oYShpdGVtOiBhbnkpIHtcbiAgICB0aGlzLmV4Y2x1aXJJdGVtLmVtaXQoaXRlbSk7XG4gIH1cblxuICAvL2NoZWNrXG4gIHNlbGVjaW9uYWRvQ2hlY2tlZCgpIHtcbiAgICB0aGlzLnNlbGVjaW9uYXJDaGVja2VkLmVtaXQoKTtcbiAgfVxufVxuIiwiPGRpdiBzdHlsZT1cImZvbnQtc2l6ZTogMTRweDtcIj5cbiAgICA8ZGl2IGlkPVwicGFpbmVsRXhwb3J0YWNhb1wiPlxuICAgICAgPGlvbi1yb3cgKm5nSWY9XCJpbk1lbW9yeVBhZ2luYXRpb25cIj5cbiAgICAgICAgPCEtLVxuICAgICAgICA8aW9uLWNvbCBzaXplPVwiMlwiPlxuICAgICAgICAgIDxpb24tYnV0dG9uICpuZ0lmPVwidGFiZWxhQ2FtcG9zLlNlbGVjaW9uYXIgPT09IHRydWVcIiBzaXplPVwic21hbGxcIiBmaWxsPVwib3V0bGluZVwiIGNvbG9yPVwibWVkaXVtXCJcbiAgICAgICAgICAgIChjbGljayk9XCJzZWxlY2lvbmFyVG9kb3MoKVwiPlNlbGVjaW9uYXIgVG9kb3M8L2lvbi1idXR0b24+XG4gICAgICAgIDwvaW9uLWNvbD5cbiAgICAgICAgLS0+XG4gICAgICAgIDxpb24tY29sIHNpemU9XCIzXCI+XG4gICAgICAgICAgPGlvbi1idXR0b24gKm5nSWY9XCJpbk1lbW9yeVBhZ2luYXRpb24gPT09IHRydWVcIiBzaXplPVwic21hbGxcIiBmaWxsPVwib3V0bGluZVwiIGNvbG9yPVwiYmx1ZXRvb2xcIlxuICAgICAgICAgICAgKGNsaWNrKT1cImFudGVyaW9yKClcIj5cbiAgICAgICAgICAgIDxpb24taWNvbiBuYW1lPVwiY2hldnJvbi1iYWNrLW91dGxpbmVcIiBzbG90PVwic3RhcnRcIj48L2lvbi1pY29uPlxuICAgICAgICAgICAgQW50ZXJpb3JcbiAgICAgICAgICA8L2lvbi1idXR0b24+XG4gICAgICAgICAgPGlvbi1idXR0b24gKm5nSWY9XCJpbk1lbW9yeVBhZ2luYXRpb24gPT09IHRydWVcIiBzaXplPVwic21hbGxcIiBmaWxsPVwib3V0bGluZVwiIGNvbG9yPVwiYmx1ZXRvb2xcIlxuICAgICAgICAgICAgKGNsaWNrKT1cInByb3hpbW8oKVwiPlxuICAgICAgICAgICAgUHLDs3hpbW9cbiAgICAgICAgICAgIDxpb24taWNvbiBuYW1lPVwiY2hldnJvbi1mb3J3YXJkLW91dGxpbmVcIiBzbG90PVwiZW5kXCI+PC9pb24taWNvbj5cbiAgICAgICAgICA8L2lvbi1idXR0b24+ICAgICAgICAgICAgICAgIFxuICAgICAgICA8L2lvbi1jb2w+XG4gICAgICAgIDxpb24tY29sIHNpemU9XCIyXCI+XG4gICAgICAgICAgPHNwYW4gc3R5bGU9XCJkaXNwbGF5OiBibG9jazsgbWFyZ2luLXRvcDogMTBweDtcIiAqbmdJZj1cImluTWVtb3J5UGFnaW5hdGlvbiAmJiB0b3RhbFJlYyA+IDBcIj5FeGliaW5kbyB7eyBzdGFydCArIDEgfX0gLSB7eyAoc3RhcnQgKyBwYWdlT2Zmc2V0KSA8IHRvdGFsUmVjID8gKHN0YXJ0ICsgcGFnZU9mZnNldCkgOiB0b3RhbFJlYyB9fSB0b3RhbCBkZSB7eyB0b3RhbFJlYyB9fSAgICAgICAgXG4gICAgICAgICAgPC9zcGFuPiAgICAgIFxuICAgICAgICA8L2lvbi1jb2w+XG4gICAgICA8L2lvbi1yb3c+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBzdHlsZT1cIndpZHRoOiAxMDAlO1wiIFtzdHlsZS5taW4taGVpZ2h0XT1cIm1pbkhlaWdodFwiPlxuICAgICAgPHRhYmxlIGNsYXNzPVwiZ3JpZFwiPlxuICAgICAgICA8dGhlYWQ+XG4gICAgICAgICAgPHRyIHN0eWxlPVwiYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW9uLWNvbG9yLWJsdWV0b29sKTsgY29sb3I6IHdoaXRlO1wiPlxuICAgICAgICAgICAgPHRkICpuZ0lmPVwidGFiZWxhQ2FtcG9zLlNlbGVjaW9uYXIgPT09IHRydWVcIiBzdHlsZT1cIndpZHRoOiAzJTsgdGV4dC1hbGlnbjogY2VudGVyO1wiPlxuICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cImNoZWNrYm94XCIgWyhuZ01vZGVsKV09XCJ0b2Rvc1NlbGVjaW9uYWRvc1wiIChjaGFuZ2UpPVwic2VsZWNpb25hclRvZG9zKClcIj5cbiAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICA8dGQgKm5nRm9yPVwibGV0IGNvbCBvZiB0YWJlbGFDYW1wb3MuQ29sdW5hc1wiIFtzdHlsZS53aWR0aF09XCJjb2wuVGFtYW5ob1wiPlxuICAgICAgICAgICAgICA8ZGl2IHN0eWxlPVwicG9zaXRpb246IHJlbGF0aXZlO1wiPlxuICAgICAgICAgICAgICAgIDxkaXYgc3R5bGU9XCJkaXNwbGF5OiBmbGV4OyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IGFsaWduLWl0ZW1zOiBlbmQ7XCI+XG4gICAgICAgICAgICAgICAgICA8c3Ryb25nPnt7IGNvbC5UaXR1bG8gfX08L3N0cm9uZz5cbiAgICAgICAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgICAgICAgIDxpb24taWNvbiAqbmdJZj1cImNvbC5PcmRlbVwiIHNsb3Q9XCJlbmRcIiAoY2xpY2spPVwib3JkZW5hcihjb2wpXCIgc3R5bGU9XCJjdXJzb3I6IHBvaW50ZXI7XCJcbiAgICAgICAgICAgICAgICAgICAgICBbbmFtZV09XCJjb2wuT3JkZW1TdGF0dXMgPT0gMCA/ICdzd2FwLXZlcnRpY2FsJyA6IChjb2wuT3JkZW1TdGF0dXMgPT0gMSA/ICdhcnJvdy11cCc6ICdhcnJvdy1kb3duJylcIj48L2lvbi1pY29uPlxuICBcbiAgICAgICAgICAgICAgICAgICAgPGlvbi1pY29uICpuZ0lmPVwiY29sLkZpbHRyYXJcIiBuYW1lPVwiZnVubmVsXCIgKGNsaWNrKT1cInNldEZpbHRyb09wZW4oY29sKVwiIHNsb3Q9XCJlbmRcIj48L2lvbi1pY29uPlxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gIFxuICBcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FpeGFHcmFuZGVcIiBbaGlkZGVuXT1cIiFjb2wuRmlsdHJvVmlzaXZlbFwiIHRhYmluZGV4PVwiLTFcIlxuICAgICAgICAgICAgICAgICAgc3R5bGU9XCJjb2xvcjogYmxhY2s7IGRpc3BsYXk6IGJsb2NrOyBwb3NpdGlvbjogYWJzb2x1dGU7IHotaW5kZXg6IDgwMDsgd2lkdGg6IDIxMHB4OyByaWdodDogMHB4OyBvcGFjaXR5OiAwLjk7XCI+XG4gICAgICAgICAgICAgICAgICBGaWx0cmFyOlxuICAgICAgICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBzdHlsZT1cImRpc3BsYXk6IGZsZXg7IGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgYWxpZ24taXRlbXM6IHN0YXJ0O1wiPlxuICAgICAgICAgICAgICAgICAgICAgIDxzZWxlY3Qgc3R5bGU9XCJ3aWR0aDogODBweDtcIiBbKG5nTW9kZWwpXT1cImNvbC5GaWx0cm9PcGVyYWRvclwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbj49PC9vcHRpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uPiZndDs9PC9vcHRpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uPiZsdDs9PC9vcHRpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uPnRlbTwvb3B0aW9uPlxuICAgICAgICAgICAgICAgICAgICAgIDwvc2VsZWN0PlxuICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCBzdHlsZT1cIndpZHRoOiAxMDBweDtcIiB0eXBlPVwidGV4dFwiIFsobmdNb2RlbCldPVwiY29sLkZpbHRyb1ZhbG9yXCI+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8aW9uLWJ1dHRvbiBzaXplPVwic21hbGxcIiBjb2xvcj1cIm1lZGl1bVwiIGV4cGFuZD1cImJsb2NrXCIgKGNsaWNrKT1cImZpbHRyYXIoY29sKVwiPkZpbHRyYXI8L2lvbi1idXR0b24+XG4gICAgICAgICAgICAgICAgICAgIDxpb24tYnV0dG9uIHNpemU9XCJzbWFsbFwiIGNvbG9yPVwibGlnaHRcIiBleHBhbmQ9XCJibG9ja1wiIChjbGljayk9XCJsaW1wYXIoKVwiPkxpbXBhcjwvaW9uLWJ1dHRvbj5cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImNvbC5WYWxvcmVzXCIgY2xhc3M9XCJzY3JvbGwtY29udGFpbmVyXCIgc3R5bGU9XCJoZWlnaHQ6IDIwMHB4OyBvdmVyZmxvdy15OiBzY3JvbGw7XCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IHZhbG9yIG9mIGNvbC5WYWxvcmVzXCI+XG4gICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJjaGVja2JveFwiIFsobmdNb2RlbCldPVwidmFsb3IuU2VsZWNpb25hZG9cIj5cbiAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj57eyB2YWxvci5WYWxvciB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgXG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgIDx0ZCAqbmdJZj1cInRhYmVsYUNhbXBvcy5FeGNsdWlyID09PSB0cnVlXCI+XG4gIFxuICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICA8L3RyPlxuICAgICAgICA8L3RoZWFkPlxuICAgICAgICA8dGJvZHk+XG4gICAgICAgICAgPHRyICpuZ0Zvcj1cImxldCBpdGVtIG9mIHBhZ2VEYXRhU2V0XCIgW2NsYXNzXT1cIml0ZW0gPT0gc2VsZWN0ZWRJdGVtID8gJ2l0ZW0tc2VsZWNpb25hZG8nIDogJycgXCI+XG4gICAgICAgICAgICA8dGQgKm5nSWY9XCJ0YWJlbGFDYW1wb3MuU2VsZWNpb25hciA9PT0gdHJ1ZVwiIHN0eWxlPVwidGV4dC1hbGlnbjogY2VudGVyOyBjdXJzb3I6IGF1dG87XCI+XG4gICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwiY2hlY2tib3hcIiBbKG5nTW9kZWwpXT1cIml0ZW1bdGFiZWxhQ2FtcG9zLkNhbXBvU2VsZWNpb25hcl1cIiAoY2hhbmdlKT1cInNlbGVjaW9uYWRvQ2hlY2tlZCgpXCI+XG4gICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgPHRkIGNsYXNzPVwiY29sXCIgKm5nRm9yPVwibGV0IGNvbCBvZiB0YWJlbGFDYW1wb3MuQ29sdW5hc1wiIFtzdHlsZS53aWR0aF09XCJjb2wuVGFtYW5ob1wiXG4gICAgICAgICAgICAgIFtzdHlsZS50ZXh0LWFsaWduXT1cImNvbC5UaXBvID09ICdudW1iZXInID8gJ3JpZ2h0JyA6IChjb2wuQWxpbmhhbWVudG8gPz8gJ2xlZnQnKVwiXG4gICAgICAgICAgICAgIChjbGljayk9XCJjb2wuQ2xpY2tGdW5jdGlvbiA/IGNvbC5DbGlja0Z1bmN0aW9uKGl0ZW0pIDogc2VsZWNpb25hckxpbmhhKGl0ZW0pXCI+XG4gICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiY29sLlBpcGUgPT0gJ2RhdGUnXCI+e3sgaXRlbVtjb2wuQ2FtcG9dIHwgZGF0ZTogJ2RkL01NL3l5eXknIH19PC9zcGFuPiAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiY29sLlBpcGUgPT0gJ3ZhbG9yJ1wiPnt7IGl0ZW1bY29sLkNhbXBvXSB8IHZhbG9yRm9ybWF0IH19PC9zcGFuPlxuICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImNvbC5SZW5kZXJGdW5jdGlvblwiIFtpbm5lckh0bWxdPVwiY29sLlJlbmRlckZ1bmN0aW9uKGl0ZW0pIHwgc2FmZUh0bWxcIj48L3NwYW4+XG4gICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiIWNvbC5QaXBlICYmICFjb2wuUmVuZGVyRnVuY3Rpb25cIj57eyBpdGVtW2NvbC5DYW1wb10gPz8gY29sLkRlZmF1bHQgfX08L3NwYW4+XG4gICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgPHRkICpuZ0lmPVwidGFiZWxhQ2FtcG9zLkV4Y2x1aXIgPT09IHRydWVcIiBzdHlsZT1cInBhZGRpbmc6IDBweDsgdGV4dC1hbGlnbjogY2VudGVyO1wiPlxuICAgICAgICAgICAgICA8aW9uLWJ1dHRvbiBzaXplPVwic21hbGxcIiBjb2xvcj1cImRhbmdlclwiIGZpbGw9XCJvdXRsaW5lXCIgc3R5bGU9XCJ0cmFuc2Zvcm06IHNjYWxlKDAuODUpO1wiIChjbGljayk9XCJleGNsdWlyTGluaGEoaXRlbSlcIj5cbiAgICAgICAgICAgICAgICA8aW9uLWljb24gbmFtZT1cInRyYXNoXCI+PC9pb24taWNvbj5cbiAgICAgICAgICAgICAgPC9pb24tYnV0dG9uPlxuICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICA8L3RyPlxuICAgICAgICA8L3Rib2R5PlxuICAgICAgPC90YWJsZT5cbiAgICA8L2Rpdj5cbiAgXG4gICAgPGlvbi1tb2RhbCBbaXNPcGVuXT1cImlzRmlsdHJvT3BlblwiIChkaWREaXNtaXNzKT1cImlzRmlsdHJvT3BlbiA9IGZhbHNlO1wiPlxuICAgICAgPG5nLXRlbXBsYXRlPlxuICAgICAgICA8aW9uLWNvbnRlbnQgY2xhc3M9XCJpb24tcGFkZGluZ1wiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYWl4YUdyYW5kZVwiPlxuICAgICAgICAgICAgRmlsdHJhcjpcbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJzZWxlY3RlZENvbHVuYS5WYWxvcmVzXCI+XG4gICAgICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IHZhbG9yIG9mIHNlbGVjdGVkQ29sdW5hLlZhbG9yZXNcIj5cbiAgICAgICAgICAgICAgICA8c3Bhbj57eyB2YWxvciB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9pb24tY29udGVudD5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPC9pb24tbW9kYWw+XG4gIDwvZGl2PiJdfQ==
|