ngx-scandoc 15.1.9 → 15.2.1
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/core/components/scan/scan.component.d.ts +1 -0
- package/core/interfaces/config.d.ts +3 -1
- package/esm2020/core/components/scan/scan.component.mjs +14 -41
- package/esm2020/core/components/webcam/webcam/webcam.component.mjs +7 -3
- package/esm2020/core/interfaces/config.mjs +1 -1
- package/esm2020/providers/scan.provider.mjs +4 -3
- package/fesm2015/ngx-scandoc.mjs +22 -44
- package/fesm2015/ngx-scandoc.mjs.map +1 -1
- package/fesm2020/ngx-scandoc.mjs +22 -44
- package/fesm2020/ngx-scandoc.mjs.map +1 -1
- package/package.json +1 -1
- package/providers/scan.provider.d.ts +1 -1
- package/src/assets/i18n/de.json +3 -1
- package/src/assets/i18n/en.json +3 -2
- package/src/assets/i18n/hr.json +3 -1
- package/src/assets/i18n/it.json +3 -1
|
@@ -155,12 +155,16 @@ export class WebcamComponent extends BaseComponent {
|
|
|
155
155
|
if (max &&
|
|
156
156
|
currentWidth &&
|
|
157
157
|
max > currentWidth &&
|
|
158
|
-
conWidth != max
|
|
159
|
-
|
|
158
|
+
conWidth != max &&
|
|
159
|
+
currentWidth != 1920) {
|
|
160
|
+
console.log('[SET NEW RESOLUTION] ', max, currentWidth);
|
|
160
161
|
this.setupAttempt++;
|
|
161
162
|
if (this.setupAttempt < 4) {
|
|
162
163
|
this.setup(videoTrackConstraints);
|
|
163
164
|
}
|
|
165
|
+
else {
|
|
166
|
+
this.setDeviceId(stream);
|
|
167
|
+
}
|
|
164
168
|
}
|
|
165
169
|
else {
|
|
166
170
|
this.setDeviceId(stream);
|
|
@@ -523,4 +527,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
|
|
|
523
527
|
}], initError: [{
|
|
524
528
|
type: Output
|
|
525
529
|
}] } });
|
|
526
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2ViY2FtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zY2FuZG9jL3NyYy9jb3JlL2NvbXBvbmVudHMvd2ViY2FtL3dlYmNhbS93ZWJjYW0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNjYW5kb2Mvc3JjL2NvcmUvY29tcG9uZW50cy93ZWJjYW0vd2ViY2FtL3dlYmNhbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsdUJBQXVCLEVBRXZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBQ04sU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsSUFBSSxFQUF5QyxNQUFNLE1BQU0sQ0FBQztBQVluRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7Ozs7OztBQVVyRCxNQUFNLE9BQU8sZUFDWCxTQUFRLGFBQWE7SUE4QnJCLFFBQVE7UUFDTixJQUFJLENBQUMsY0FBYyxDQUFDLFlBQVksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3ZDLCtCQUErQjtRQUMvQixJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUU7WUFDdEIsWUFBWSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztTQUNsQztRQUNELElBQUksQ0FBQyxhQUFhLEdBQUcsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNuQyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDdkIsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ1QsQ0FBQztJQWdCRCxZQUNTLGtCQUFzQyxFQUN0QyxRQUFrQixFQUNqQixFQUFxQixFQUNyQixJQUFZLEVBRVosY0FBd0M7UUFF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Z0JBYU0sTUFBTTtzQkFBcEQsU0FBUzt1QkFBQyxRQUFRLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUVTLFFBQVE7c0JBQXJELFNBQVM7dUJBQUMsT0FBTyxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFFbkIsY0FBYztzQkFBOUIsTUFBTTtnQkFFVSxVQUFVO3NCQUExQixNQUFNO2dCQUVVLFlBQVk7c0JBQTVCLE1BQU07Z0JBR1UsU0FBUztzQkFBekIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIEhvc3RMaXN0ZW5lcixcbiAgSW5wdXQsXG4gIE5nWm9uZSxcbiAgT25EZXN0cm95LFxuICBPdXRwdXQsXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBXZWJjYW1Jbml0RXJyb3IgfSBmcm9tICcuLi9kb21haW4vd2ViY2FtLWluaXQtZXJyb3InO1xuaW1wb3J0IHsgV2ViY2FtSW1hZ2UgfSBmcm9tICcuLi9kb21haW4vd2ViY2FtLWltYWdlJztcbmltcG9ydCB7IGZyb20sIE9ic2VydmFibGUsIG9mLCBTdWJqZWN0LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFdlYmNhbVV0aWwgfSBmcm9tICcuLi91dGlsL3dlYmNhbS51dGlsJztcbmltcG9ydCB7IFdlYmNhbU1pcnJvclByb3BlcnRpZXMgfSBmcm9tICcuLi9kb21haW4vd2ViY2FtLW1pcnJvci1wcm9wZXJ0aWVzJztcbmltcG9ydCB7XG4gIEJyZWFrcG9pbnRPYnNlcnZlcixcbiAgQnJlYWtwb2ludHMsXG4gIEJyZWFrcG9pbnRTdGF0ZSxcbn0gZnJvbSAnQGFuZ3VsYXIvY2RrL2xheW91dCc7XG5pbXBvcnQgeyBQbGF0Zm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wbGF0Zm9ybSc7XG5pbXBvcnQgeyBtYXAsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IHdvcmtlcnRleHQgfSBmcm9tICcuLi8uLi8uLi9hcHAud29ya2VyJztcbmltcG9ydCB7IE5neFNjYW5kb2NDYW1lcmFQcm92aWRlciB9IGZyb20gJy4uLy4uLy4uLy4uL3Byb3ZpZGVycy9jYW1lcmEucHJvdmlkZXInO1xuaW1wb3J0IHsgQmFzZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2Jhc2UuY29tcG9uZW50JztcblxuZGVjbGFyZSB2YXIgTWVkaWFTdHJlYW1UcmFja1Byb2Nlc3NvcjogYW55O1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICduZ3gtc2NhbmRvYy13ZWJjYW0nLFxuICB0ZW1wbGF0ZVVybDogJy4vd2ViY2FtLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vd2ViY2FtLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBXZWJjYW1Db21wb25lbnRcbiAgZXh0ZW5kcyBCYXNlQ29tcG9uZW50XG4gIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95XG57XG4gIHByaXZhdGUgdHJpZ2dlclN1YnNjcmlwdGlvbj86IFN1YnNjcmlwdGlvbjtcbiAgY2FudmFzU2l6ZTogYW55ID0geyB3aWR0aDogMCwgaGVpZ2h0OiAwIH07XG4gIHNob3dWaWRlbyA9IGZhbHNlO1xuICBzZXR1cEF0dGVtcHQgPSAwO1xuICBjYW52YXNEYXRhOiBhbnkgPSB7XG4gICAgY3R4OiBudWxsLFxuICAgIGN0eE86IG51bGwsXG4gIH07XG5cbiAgbWVkaWFTdHJlYW0hOiBNZWRpYVN0cmVhbTtcbiAgQElucHV0KCkgaW1hZ2VIYW5kbGVyITogU3ViamVjdDxhbnk+O1xuXG4gIEBJbnB1dCgpIHB1YmxpYyB0eXBlPzogJ2RvY3VtZW50JyB8ICdzZWxmaWUnIHwgJ21hbnVhbCc7XG5cbiAgQElucHV0KCkgdHJpZ2dlciE6IE9ic2VydmFibGU8bnVtYmVyPjtcbiAgLy8gcHVibGljIHNldCB0cmlnZ2VyKHRyaWdnZXI6IE9ic2VydmFibGU8bnVtYmVyPikge1xuICAvLyAgIGlmICh0aGlzLnRyaWdnZXJTdWJzY3JpcHRpb24pIHtcbiAgLy8gICAgIHRoaXMudHJpZ2dlclN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAvLyAgIH1cblxuICAvLyAgIC8vIFN1YnNjcmliZSB0byBldmVudHMgZnJvbSB0aGlzIE9ic2VydmFibGUgdG8gdGFrZSBzbmFwc2hvdHNcbiAgLy8gICB0aGlzLnRyaWdnZXJTdWJzY3JpcHRpb24gPSB0cmlnZ2VyLnN1YnNjcmliZSgodGltZSkgPT4ge1xuICAvLyAgICAgdGhpcy50YWtlU25hcHNob3QodGltZSk7XG4gIC8vICAgfSk7XG4gIC8vIH1cbiAgcmVzaXplVGltZW91dDogYW55O1xuICBASG9zdExpc3RlbmVyKCd3aW5kb3c6cmVzaXplJywgWyckZXZlbnQnXSlcbiAgb25SZXNpemUoKSB7XG4gICAgdGhpcy5jYW1lcmFQcm92aWRlci5yZWN0UG9zaXRpb24udCA9IDA7XG4gICAgLy8gdGhpcy52aWRlb1JlYWR5Lm5leHQoZmFsc2UpO1xuICAgIGlmICh0aGlzLnJlc2l6ZVRpbWVvdXQpIHtcbiAgICAgIGNsZWFyVGltZW91dCh0aGlzLnJlc2l6ZVRpbWVvdXQpO1xuICAgIH1cbiAgICB0aGlzLnJlc2l6ZVRpbWVvdXQgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMuZHJhd1JlY3RhbmdsZSgpO1xuICAgIH0sIDUwKTtcbiAgfVxuXG4gIHByaXZhdGUgY2h1bmtzOiBhbnkgPSBbXTtcbiAgQFZpZXdDaGlsZCgnY2FudmFzJywgeyBzdGF0aWM6IHRydWUgfSkgcHJpdmF0ZSBjYW52YXM6IGFueTtcblxuICBAVmlld0NoaWxkKCd2aWRlbycsIHsgc3RhdGljOiB0cnVlIH0pIHByaXZhdGUgdmlkZW9SZWY6IGFueTtcblxuICBAT3V0cHV0KCkgcHVibGljIGNhbWVyYVN3aXRjaGVkOiBFdmVudEVtaXR0ZXI8c3RyaW5nPiA9XG4gICAgbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG4gIEBPdXRwdXQoKSBwdWJsaWMgdmlkZW9SZWFkeTogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID1cbiAgICBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG4gIEBPdXRwdXQoKSBwdWJsaWMgaW1hZ2VDYXB0dXJlOiBFdmVudEVtaXR0ZXI8V2ViY2FtSW1hZ2U+ID1cbiAgICBuZXcgRXZlbnRFbWl0dGVyPFdlYmNhbUltYWdlPigpO1xuXG4gIEBPdXRwdXQoKSBwdWJsaWMgaW5pdEVycm9yOiBFdmVudEVtaXR0ZXI8V2ViY2FtSW5pdEVycm9yPiA9XG4gICAgbmV3IEV2ZW50RW1pdHRlcjxXZWJjYW1Jbml0RXJyb3I+KCk7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBicmVha3BvaW50T2JzZXJ2ZXI6IEJyZWFrcG9pbnRPYnNlcnZlcixcbiAgICBwdWJsaWMgcGxhdGZvcm06IFBsYXRmb3JtLFxuICAgIHByaXZhdGUgY2Q6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUgem9uZTogTmdab25lLFxuXG4gICAgcHJpdmF0ZSBjYW1lcmFQcm92aWRlcjogTmd4U2NhbmRvY0NhbWVyYVByb3ZpZGVyXG4gICkge1xuICAgIHN1cGVyKCk7XG4gIH1cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIGNvbnNvbGUud2FybignW3ZpZGVvXSBzdGFydCcpO1xuICAgIC8vIGluaXRpYWwgbG9hZFxuICAgIHRoaXMuX19zdWJzKHRoaXMuY2FtZXJhUHJvdmlkZXIuZ2V0RGV2aWNlcygpKS5zdWJzY3JpYmUoKHJlc3ApID0+IHtcbiAgICAgIHRoaXMuaW5pdCgpO1xuICAgIH0pO1xuXG4gICAgLy8gY2FtZXJhIHN3aXRjaFxuICAgIHRoaXMuX19zdWJzKHRoaXMuY2FtZXJhUHJvdmlkZXIud2ViY2FtT2JzZXJ2YWJsZSkuc3Vic2NyaWJlKChkZXZpY2UpID0+IHtcbiAgICAgIGNvbnN0IHZpZGVvVHJhY2tDb25zdHJhaW50czogYW55ID0gdGhpcy5zZXRDb25zdHJhaW50cygpO1xuICAgICAgdGhpcy5zdG9wQWxsVHJhY2tzKCk7XG4gICAgICB0aGlzLnNob3dWaWRlbyA9IGZhbHNlO1xuICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICB2aWRlb1RyYWNrQ29uc3RyYWludHMuZGV2aWNlSWQgPSBkZXZpY2U7XG4gICAgICB0aGlzLnNldHVwKHZpZGVvVHJhY2tDb25zdHJhaW50cyk7XG4gICAgfSk7XG5cbiAgICB0aGlzLl9fc3Vicyh0aGlzLnRyaWdnZXIpLnN1YnNjcmliZSgodGltZSkgPT4gdGhpcy50YWtlU25hcHNob3QodGltZSkpO1xuICB9XG5cbiAgcHVibGljIGdldCB2aWRlbygpIHtcbiAgICByZXR1cm4gdGhpcy52aWRlb1JlZi5uYXRpdmVFbGVtZW50O1xuICB9XG4gIGdldCBpc01vYmlsZSgpIHtcbiAgICByZXR1cm4gdGhpcy5wbGF0Zm9ybS5BTkRST0lEIHx8IHRoaXMucGxhdGZvcm0uSU9TO1xuICB9XG4gIHByaXZhdGUgc2V0Q29uc3RyYWludHMoKSB7XG4gICAgY29uc3Qgb3V0OiBNZWRpYVN0cmVhbUNvbnN0cmFpbnRzID0ge307XG4gICAgY29uc29sZS53YXJuKCdNT0JJTEUnLCB0aGlzLmlzTW9iaWxlKTtcbiAgICBzd2l0Y2ggKHRoaXMudHlwZSkge1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgaWYgKHRoaXMuaXNNb2JpbGUpIHtcbiAgICAgICAgICBvdXQudmlkZW8gPSB7IGhlaWdodDogeyBpZGVhbDogMTYwMCB9LCB3aWR0aDogeyBpZGVhbDogMTYwMCB9IH07XG4gICAgICAgICAgb3V0LnZpZGVvLmZhY2luZ01vZGUgPSAnZW52aXJvbm1lbnQnO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIG91dC52aWRlbyA9IHtcbiAgICAgICAgICAgIHdpZHRoOiB7XG4gICAgICAgICAgICAgIG1pbjogMTI4MCxcbiAgICAgICAgICAgICAgaWRlYWw6IDE5MjAsXG4gICAgICAgICAgICAgIG1heDogMjkwMCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBoZWlnaHQ6IHtcbiAgICAgICAgICAgICAgbWluOiA3MjAsXG4gICAgICAgICAgICAgIGlkZWFsOiAxMDgwLFxuICAgICAgICAgICAgICBtYXg6IDI5MDAsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH07XG4gICAgICAgIH1cblxuICAgICAgICBicmVhaztcblxuICAgICAgY2FzZSAnc2VsZmllJzpcbiAgICAgICAgaWYgKHRoaXMuaXNNb2JpbGUpIHtcbiAgICAgICAgICBvdXQudmlkZW8gPSB7IGhlaWdodDogeyBpZGVhbDogMTYwMCB9LCB3aWR0aDogeyBpZGVhbDogMTYwMCB9IH07XG4gICAgICAgICAgb3V0LnZpZGVvLmZhY2luZ01vZGUgPSAndXNlcic7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgb3V0LnZpZGVvID0ge1xuICAgICAgICAgICAgZnJhbWVSYXRlOiB7IG1pbjogMTAgfSxcbiAgICAgICAgICAgIGhlaWdodDogeyBpZGVhbDogMTA4MCB9LFxuICAgICAgICAgICAgd2lkdGg6IHsgaWRlYWw6IDE5MjAgfSxcbiAgICAgICAgICB9O1xuICAgICAgICB9XG5cbiAgICAgICAgYnJlYWs7XG4gICAgfVxuXG4gICAgcmV0dXJuIG91dC52aWRlbztcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IGFjdGl2ZVRyYWNrU2V0dGluZ3MoKSB7XG4gICAgcmV0dXJuIHRoaXMubWVkaWFTdHJlYW0uZ2V0VmlkZW9UcmFja3MoKVswXS5nZXRTZXR0aW5ncygpO1xuICB9XG4gIHByaXZhdGUgZ2V0IGFjdGl2ZVRyYWNrQ2FwYWJpbGl0aWVzKCkge1xuICAgIHRyeSB7XG4gICAgICByZXR1cm4gdGhpcy5tZWRpYVN0cmVhbS5nZXRWaWRlb1RyYWNrcygpWzBdLmdldENhcGFiaWxpdGllcygpO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHJldHVybiB7fTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGluaXQoKSB7XG4gICAgdGhpcy5fX3N1YnModGhpcy5jYW1lcmFQcm92aWRlci5nZXREZXZpY2VzKCkpLnN1YnNjcmliZSgocmVzcCkgPT4ge1xuICAgICAgY29uc29sZS53YXJuKCdERVZJQ0VTJywgcmVzcCk7XG4gICAgICBjb25zdCB2aWRlb1RyYWNrQ29uc3RyYWludHMgPSB0aGlzLnNldENvbnN0cmFpbnRzKCk7XG4gICAgICB0aGlzLnNldHVwQXR0ZW1wdCA9IDA7XG4gICAgICB0aGlzLnNldHVwKHZpZGVvVHJhY2tDb25zdHJhaW50cyk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHNldERldmljZUlkKHN0cmVhbTogTWVkaWFTdHJlYW0pIHtcbiAgICB0aGlzLm1lZGlhU3RyZWFtID0gc3RyZWFtO1xuICAgIHRoaXMuY2FtZXJhUHJvdmlkZXIuZGV2aWNlSWQgPSB0aGlzLmFjdGl2ZVRyYWNrU2V0dGluZ3MuZGV2aWNlSWQ7XG4gICAgdGhpcy5zdGFydFZpZGVvKCk7XG4gIH1cbiAgcHJpdmF0ZSBzZXR1cCh2aWRlb1RyYWNrQ29uc3RyYWludHM6IGFueSkge1xuICAgIGNvbnNvbGUud2FybigndmlkZW9UcmFja0NvbnN0cmFpbnRzJywgdmlkZW9UcmFja0NvbnN0cmFpbnRzKTtcbiAgICBjb25zb2xlLnRpbWUoJ2RldmljZScpO1xuICAgIHRoaXMuX19zdWJzKFxuICAgICAgZnJvbShcbiAgICAgICAgbmF2aWdhdG9yLm1lZGlhRGV2aWNlcy5nZXRVc2VyTWVkaWEoPE1lZGlhU3RyZWFtQ29uc3RyYWludHM+e1xuICAgICAgICAgIHZpZGVvOiB2aWRlb1RyYWNrQ29uc3RyYWludHMsXG4gICAgICAgIH0pXG4gICAgICApXG4gICAgKS5zdWJzY3JpYmUoXG4gICAgICAoc3RyZWFtOiBNZWRpYVN0cmVhbSkgPT4ge1xuICAgICAgICBjb25zb2xlLnRpbWVFbmQoJ2RldmljZScpO1xuICAgICAgICBzdHJlYW0uZ2V0VHJhY2tzKCkuZm9yRWFjaCgodCkgPT4ge1xuICAgICAgICAgIC8vY29uc29sZS53YXJuKHQuZ2V0Q29uc3RyYWludHMoKSk7XG5cbiAgICAgICAgICBpZiAoIXRoaXMuaXNNb2JpbGUpIHtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgIGlmICghdC5nZXRDYXBhYmlsaXRpZXMpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnNldERldmljZUlkKHN0cmVhbSk7XG5cbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgY29uc3Qgc2V0dGluZ3MgPSB0LmdldFNldHRpbmdzKCk7XG4gICAgICAgICAgICAgIGNvbnN0IGNhcCA9IHQuZ2V0Q2FwYWJpbGl0aWVzKCk7XG4gICAgICAgICAgICAgIGNvbnN0IGNvbiA9IHQuZ2V0Q29uc3RyYWludHMoKTtcblxuICAgICAgICAgICAgICBjb25zb2xlLndhcm4oY2FwLCBjb24pO1xuICAgICAgICAgICAgICBjb25zb2xlLndhcm4oc2V0dGluZ3MpO1xuICAgICAgICAgICAgICBjb25zdCBtYXggPSBjYXAud2lkdGg/Lm1heDtcbiAgICAgICAgICAgICAgY29uc3QgbWluID0gY2FwLndpZHRoPy5taW47XG4gICAgICAgICAgICAgIGNvbnN0IGN1cnJlbnRXaWR0aCA9IHNldHRpbmdzLndpZHRoO1xuICAgICAgICAgICAgICBjb25zdCBjdXJyZW50SGVpZ2h0ID0gc2V0dGluZ3MuaGVpZ2h0O1xuXG4gICAgICAgICAgICAgIGNvbnN0IGNvbldpZHRoID0gY29uLndpZHRoO1xuICAgICAgICAgICAgICBjb25zdCBjb25IZWlnaHQgPSBjb24ud2lkdGg7XG4gICAgICAgICAgICAgIGNvbnNvbGUud2FybihcbiAgICAgICAgICAgICAgICAnQ0FQUycsXG4gICAgICAgICAgICAgICAgbWluLFxuICAgICAgICAgICAgICAgIG1heCxcbiAgICAgICAgICAgICAgICAnQ1VSRU5UJyxcbiAgICAgICAgICAgICAgICBjdXJyZW50V2lkdGgsXG4gICAgICAgICAgICAgICAgY3VycmVudEhlaWdodFxuICAgICAgICAgICAgICApO1xuXG4gICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICBtYXggJiZcbiAgICAgICAgICAgICAgICBjdXJyZW50V2lkdGggJiZcbiAgICAgICAgICAgICAgICBtYXggPiBjdXJyZW50V2lkdGggJiZcbiAgICAgICAgICAgICAgICBjb25XaWR0aCAhPSBtYXhcbiAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgY29uc29sZS5sb2coJ1tTRVQgTkVXIFJFU09MVVRJT05dJyk7XG4gICAgICAgICAgICAgICAgdGhpcy5zZXR1cEF0dGVtcHQrKztcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5zZXR1cEF0dGVtcHQgPCA0KSB7XG4gICAgICAgICAgICAgICAgICB0aGlzLnNldHVwKHZpZGVvVHJhY2tDb25zdHJhaW50cyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMuc2V0RGV2aWNlSWQoc3RyZWFtKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgICAgICAgY29uc29sZS53YXJuKGVycm9yKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29uc29sZS53YXJuKCdNT0JJTEUgVklERU8gU1RBUlQnKTtcbiAgICAgICAgICAgIHRoaXMuc2V0RGV2aWNlSWQoc3RyZWFtKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfSxcbiAgICAgIChlcikgPT4ge1xuICAgICAgICB0aGlzLnNldHVwQXR0ZW1wdCsrO1xuICAgICAgICBjb25zb2xlLndhcm4oJ0VSUk9SJywgZXIpO1xuXG4gICAgICAgIGlmICh0aGlzLnNldHVwQXR0ZW1wdCA8IDQpIHtcbiAgICAgICAgICBpZiAoZXIgaW5zdGFuY2VvZiBPdmVyY29uc3RyYWluZWRFcnJvcikge1xuICAgICAgICAgICAgaWYgKCF0aGlzLmlzTW9iaWxlKSB7XG4gICAgICAgICAgICAgIHRoaXMuc2V0dXAodmlkZW9UcmFja0NvbnN0cmFpbnRzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIHRoaXMuc2V0dXAoe1xuICAgICAgICAgICAgLy8gICBoZWlnaHQ6IDcyMCxcbiAgICAgICAgICAgIC8vICAgd2lkdGg6IDEyODAsXG4gICAgICAgICAgICAvLyB9KTtcbiAgICAgICAgICAgIC8vfVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnNldHVwKHZpZGVvVHJhY2tDb25zdHJhaW50cyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgc3RhcnRWaWRlbygpIHtcbiAgICBjb25zb2xlLmxvZygnU1RBUlQgVklERU8nKTtcbiAgICB0aGlzLnZpZGVvLnNyY09iamVjdCA9IHRoaXMubWVkaWFTdHJlYW07XG5cbiAgICB0aGlzLnZpZGVvLm9ubG9hZGVkbWV0YWRhdGEgPSAoZGF0YTogYW55KSA9PiB7XG4gICAgICBjb25zb2xlLmxvZyhkYXRhKTtcbiAgICAgIHRoaXMudmlkZW8ucGxheSgpO1xuICAgICAgdGhpcy5zaG93VmlkZW8gPSB0cnVlO1xuICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICBjb25zb2xlLmxvZygnVklERU8gUExBWScpO1xuICAgIH07XG4gICAgdGhpcy52aWRlby5vbnBsYXkgPSAoKSA9PiB7XG4gICAgICB0aGlzLnZpZGVvUmVhZHkubmV4dCh0cnVlKTtcbiAgICAgIGNvbnNvbGUubG9nKHRoaXMudmlkZW8udmlkZW9XaWR0aCwgdGhpcy52aWRlby52aWRlb0hlaWdodCk7XG4gICAgICB0aGlzLmRyYXdSZWN0YW5nbGUoKTtcbiAgICB9O1xuICB9XG4gIHNldENhbnZhcygpIHtcbiAgICBsZXQgX2NhbnZhczogSFRNTENhbnZhc0VsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdjYW52YXMnKTsgLy90aGlzLmNhbnZhc1NuYXBzaG90Lm5hdGl2ZUVsZW1lbnQ7XG5cbiAgICBjb25zdCB7IHZpZGVvV2lkdGgsIHZpZGVvSGVpZ2h0IH0gPSB0aGlzLnZpZGVvO1xuXG4gICAgY29uc3QgYXNwZWN0ID0gdmlkZW9XaWR0aCAvIHZpZGVvSGVpZ2h0O1xuXG4gICAgY29uc3QgY2FudmFzU21hbFNpemUgPSAzODQ7XG4gICAgY29uc3Qgc21hbGxTaXplID0ge1xuICAgICAgdzogMCxcbiAgICAgIGg6IDAsXG4gICAgfTtcblxuICAgIGlmICh2aWRlb1dpZHRoID49IHZpZGVvSGVpZ2h0KSB7XG4gICAgICBzbWFsbFNpemUudyA9IGNhbnZhc1NtYWxTaXplO1xuICAgICAgc21hbGxTaXplLmggPSBjYW52YXNTbWFsU2l6ZSAvIGFzcGVjdDtcbiAgICB9IGVsc2Uge1xuICAgICAgc21hbGxTaXplLmggPSBjYW52YXNTbWFsU2l6ZTtcbiAgICAgIHNtYWxsU2l6ZS5oID0gY2FudmFzU21hbFNpemUgKiBhc3BlY3Q7XG4gICAgfVxuXG4gICAgLy9jb25zb2xlLmxvZygnU1onLCBzbWFsbFNpemUpO1xuXG4gICAgX2NhbnZhcy53aWR0aCA9IHZpZGVvV2lkdGg7XG4gICAgX2NhbnZhcy5oZWlnaHQgPSB2aWRlb0hlaWdodDtcbiAgICBjb25zdCBjdHg6IGFueSA9IF9jYW52YXMuZ2V0Q29udGV4dCgnMmQnLCB7XG4gICAgICAvLyBhbHBoYTogZmFsc2UsXG4gICAgICAvLyBwb3dlclByZWZlcmVuY2U6ICdoaWdoLXBlcmZvcm1hbmNlJyxcbiAgICAgIC8vIGFudGlhbGlhczogZmFsc2UsXG4gICAgICAvLyBkZXB0aDogZmFsc2UsXG4gICAgICAvLyBkZXN5bmNocm9uaXplZDogdHJ1ZSxcbiAgICAgIC8vIHdpbGxSZWFkRnJlcXVlbnRseTogdHJ1ZSxcbiAgICB9KTtcblxuICAgIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2NhbnZhcycpOyAvLyBuZWVkcyBhbiBpbml0aWFsIHNpemVcbiAgICBjYW52YXMuaGVpZ2h0ID0gc21hbGxTaXplLmg7XG4gICAgY2FudmFzLndpZHRoID0gc21hbGxTaXplLnc7XG5cbiAgICBjb25zdCBjdHhPOiBhbnkgPSBjYW52YXMuZ2V0Q29udGV4dCgnMmQnLCB7XG4gICAgICAvLyBhbHBoYTogZmFsc2UsXG4gICAgICAvLyBwb3dlclByZWZlcmVuY2U6ICdoaWdoLXBlcmZvcm1hbmNlJyxcbiAgICAgIC8vIGFudGlhbGlhczogZmFsc2UsXG4gICAgICAvLyBkZXB0aDogZmFsc2UsXG4gICAgICAvLyBkZXN5bmNocm9uaXplZDogdHJ1ZSxcbiAgICAgIC8vIHdpbGxSZWFkRnJlcXVlbnRseTogdHJ1ZSxcbiAgICB9KTtcblxuICAgIHRoaXMuY2FudmFzRGF0YS5jdHggPSBjdHg7XG4gICAgdGhpcy5jYW52YXNEYXRhLmN0eE8gPSBjdHhPO1xuICAgIHRoaXMuY2FudmFzRGF0YS5jYW52YXMgPSBjYW52YXM7XG4gICAgdGhpcy5jYW52YXNEYXRhLl9jYW52YXMgPSBfY2FudmFzO1xuICAgIHRoaXMuY2FudmFzRGF0YS5zaXplID0gc21hbGxTaXplO1xuXG4gICAgLy8gY29uc3Qgc3RyZWFtID0gdGhpcy52aWRlby5jYXB0dXJlU3RyZWFtKDUpO1xuXG4gICAgLy8gY29uc3QgbWVkaWFSZWNvcmRlciA9IG5ldyBNZWRpYVJlY29yZGVyKHN0cmVhbSk7XG5cbiAgICAvLyBtZWRpYVJlY29yZGVyLnN0YXJ0KCk7XG5cbiAgICAvLyBtZWRpYVJlY29yZGVyLm9uZGF0YWF2YWlsYWJsZSA9IChlOmFueSkgPT4ge1xuICAgIC8vICAgY29uc29sZS5sb2coZSlcbiAgICAvLyAgIHRoaXMuY2h1bmtzLnB1c2goZS5kYXRhKTtcblxuICAgIC8vICAgdmFyIHVybCA9IHdpbmRvdy5VUkwuY3JlYXRlT2JqZWN0VVJMKGUuZGF0YSk7XG4gICAgLy8gICB2YXIgYW5jaG9yID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpO1xuICAgIC8vICAgYW5jaG9yLmRvd25sb2FkID0gJ215ZmlsZS53ZWJtJztcbiAgICAvLyAgIGFuY2hvci5ocmVmID0gdXJsO1xuICAgIC8vICAgYW5jaG9yLmNsaWNrKCk7XG4gICAgLy8gfTtcbiAgfVxuXG4gIHByaXZhdGUgdGFrZVNlbGZpZSgpIHtcbiAgICBjb25zdCBtaW1lVHlwZTogc3RyaW5nID0gJ2ltYWdlL2pwZWcnO1xuICAgIGNvbnN0IHsgdmlkZW9XaWR0aCwgb2Zmc2V0V2lkdGgsIHZpZGVvSGVpZ2h0IH0gPSB0aGlzLnZpZGVvO1xuXG4gICAgbGV0IF9jYW52YXM6IEhUTUxDYW52YXNFbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY2FudmFzJyk7IC8vdGhpcy5jYW52YXNTbmFwc2hvdC5uYXRpdmVFbGVtZW50O1xuXG4gICAgY29uc3QgeyB3LCBoIH0gPSB0aGlzLmNhbWVyYVByb3ZpZGVyLnJlY3RQb3NpdGlvbjtcblxuICAgIGNvbnN0IGFzcGVjdCA9IHZpZGVvV2lkdGggLyBvZmZzZXRXaWR0aDtcblxuICAgIC8vIGNvbnNvbGUubG9nKHZpZGVvV2lkdGgsIG9mZnNldFdpZHRoLCBsLCB0LCB3LCBoKTtcblxuICAgIF9jYW52YXMud2lkdGggPSB3ICogYXNwZWN0O1xuICAgIF9jYW52YXMuaGVpZ2h0ID0gaCAqIGFzcGVjdDtcblxuICAgIGNvbnN0IGR4ID0gdmlkZW9XaWR0aCAtIHcgKiBhc3BlY3Q7XG4gICAgY29uc3QgZHkgPSB2aWRlb0hlaWdodCAtIGggKiBhc3BlY3Q7XG4gICAgY29uc3QgeCA9IGR4IC8gMjtcbiAgICBjb25zdCB5ID0gZHkgLyAyO1xuXG4gICAgY29uc3QgY3R4OiBhbnkgPSBfY2FudmFzLmdldENvbnRleHQoJzJkJywge1xuICAgICAgYWxwaGE6IGZhbHNlLFxuICAgICAgcG93ZXJQcmVmZXJlbmNlOiAnaGlnaC1wZXJmb3JtYW5jZScsXG4gICAgICBhbnRpYWxpYXM6IGZhbHNlLFxuICAgICAgZGVwdGg6IGZhbHNlLFxuICAgICAgZGVzeW5jaHJvbml6ZWQ6IHRydWUsXG4gICAgfSk7XG5cbiAgICBpZiAoY3R4KSB7XG4gICAgICBjdHguZHJhd0ltYWdlKFxuICAgICAgICB0aGlzLnZpZGVvLFxuICAgICAgICB4LFxuICAgICAgICB5LFxuICAgICAgICB3ICogYXNwZWN0LFxuICAgICAgICBoICogYXNwZWN0LFxuICAgICAgICAwLFxuICAgICAgICAwLFxuICAgICAgICB3ICogYXNwZWN0LFxuICAgICAgICBoICogYXNwZWN0XG4gICAgICApO1xuXG4gICAgICBjb25zdCBpbWdBc1VybDogYW55ID0gX2NhbnZhcy50b0RhdGFVUkwobWltZVR5cGUsIDEpO1xuXG4gICAgICB0aGlzLmltYWdlQ2FwdHVyZS5lbWl0KFxuICAgICAgICBuZXcgV2ViY2FtSW1hZ2UoaW1nQXNVcmwsIG1pbWVUeXBlLCBuZXcgSW1hZ2VEYXRhKDEsIDEpLCBudWxsKVxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICBodW1hbkZpbGVTaXplKGJ5dGVzOiBudW1iZXIsIHNpID0gZmFsc2UsIGRwID0gMSkge1xuICAgIGNvbnN0IHRocmVzaCA9IHNpID8gMTAwMCA6IDEwMjQ7XG5cbiAgICBpZiAoTWF0aC5hYnMoYnl0ZXMpIDwgdGhyZXNoKSB7XG4gICAgICByZXR1cm4gYnl0ZXMgKyAnIEInO1xuICAgIH1cblxuICAgIGNvbnN0IHVuaXRzID0gc2lcbiAgICAgID8gWydrQicsICdNQicsICdHQicsICdUQicsICdQQicsICdFQicsICdaQicsICdZQiddXG4gICAgICA6IFsnS2lCJywgJ01pQicsICdHaUInLCAnVGlCJywgJ1BpQicsICdFaUInLCAnWmlCJywgJ1lpQiddO1xuICAgIGxldCB1ID0gLTE7XG4gICAgY29uc3QgciA9IDEwICoqIGRwO1xuXG4gICAgZG8ge1xuICAgICAgYnl0ZXMgLz0gdGhyZXNoO1xuICAgICAgKyt1O1xuICAgIH0gd2hpbGUgKFxuICAgICAgTWF0aC5yb3VuZChNYXRoLmFicyhieXRlcykgKiByKSAvIHIgPj0gdGhyZXNoICYmXG4gICAgICB1IDwgdW5pdHMubGVuZ3RoIC0gMVxuICAgICk7XG5cbiAgICByZXR1cm4gYnl0ZXMudG9GaXhlZChkcCkgKyAnICcgKyB1bml0c1t1XTtcbiAgfVxuXG4gIHRha2VTbmFwc2hvdCh0aW1lOiBudW1iZXIpIHtcbiAgICBpZiAodGhpcy50eXBlICE9PSAnZG9jdW1lbnQnKSB7XG4gICAgICB0aGlzLnRha2VTZWxmaWUoKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgLy8gY29uc29sZS53YXJuKCdTTkFQJywgdGltZSk7XG4gICAgaWYgKCF0aGlzLnNob3dWaWRlbykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLnpvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xuICAgICAgY29uc3QgY2FudmFzU21hbFNpemUgPSAzODQ7XG5cbiAgICAgIGNvbnN0IG1pbWVUeXBlOiBzdHJpbmcgPSAnaW1hZ2UvanBlZyc7XG5cbiAgICAgIC8vIGxldCBfY2FudmFzOiBIVE1MQ2FudmFzRWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2NhbnZhcycpOyAvL3RoaXMuY2FudmFzU25hcHNob3QubmF0aXZlRWxlbWVudDtcblxuICAgICAgY29uc3QgeyB2aWRlb1dpZHRoLCB2aWRlb0hlaWdodCB9ID0gdGhpcy52aWRlbztcblxuICAgICAgLy8gX2NhbnZhcy53aWR0aCA9IHZpZGVvV2lkdGg7XG4gICAgICAvLyBfY2FudmFzLmhlaWdodCA9IHZpZGVvSGVpZ2h0O1xuICAgICAgLy8gY29uc29sZS5sb2codmlkZW9XaWR0aCwgdmlkZW9IZWlnaHQpO1xuXG4gICAgICAvLyBjb25zdCBjdHg6IGFueSA9IF9jYW52YXMuZ2V0Q29udGV4dCgnMmQnLCB7XG4gICAgICAvLyAgIGFscGhhOiBmYWxzZSxcbiAgICAgIC8vICAgcG93ZXJQcmVmZXJlbmNlOiAnaGlnaC1wZXJmb3JtYW5jZScsXG4gICAgICAvLyAgIGFudGlhbGlhczogZmFsc2UsXG4gICAgICAvLyAgIGRlcHRoOiBmYWxzZSxcbiAgICAgIC8vICAgZGVzeW5jaHJvbml6ZWQ6IHRydWUsXG4gICAgICAvLyB9KTtcblxuICAgICAgLy8gY29uc3QgY2FudmFzID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY2FudmFzJyk7IC8vIG5lZWRzIGFuIGluaXRpYWwgc2l6ZVxuICAgICAgLy8gY2FudmFzLmhlaWdodCA9IGNhbnZhc1NtYWxTaXplO1xuICAgICAgLy8gY2FudmFzLndpZHRoID0gY2FudmFzU21hbFNpemU7XG5cbiAgICAgIC8vIGNvbnN0IGN0eE86IGFueSA9IGNhbnZhcy5nZXRDb250ZXh0KCcyZCcsIHtcbiAgICAgIC8vICAgYWxwaGE6IGZhbHNlLFxuICAgICAgLy8gICBwb3dlclByZWZlcmVuY2U6ICdoaWdoLXBlcmZvcm1hbmNlJyxcbiAgICAgIC8vICAgYW50aWFsaWFzOiBmYWxzZSxcbiAgICAgIC8vICAgZGVwdGg6IGZhbHNlLFxuICAgICAgLy8gICBkZXN5bmNocm9uaXplZDogdHJ1ZSxcbiAgICAgIC8vIH0pO1xuXG4gICAgICBjb25zdCB7IGN0eCwgY3R4TywgY2FudmFzLCBfY2FudmFzLCBzaXplIH0gPSB0aGlzLmNhbnZhc0RhdGE7XG5cbiAgICAgIGlmIChjdHggJiYgY3R4Tykge1xuICAgICAgICBjdHguaW1hZ2VTbW9vdGhpbmdFbmFibGVkID0gZmFsc2U7XG4gICAgICAgIGNvbnN0IGRyYXdTdGFydCA9IERhdGUubm93KCk7XG4gICAgICAgIGN0eC5jbGVhclJlY3QoMCwgMCwgdmlkZW9XaWR0aCwgdmlkZW9IZWlnaHQpO1xuICAgICAgICBjdHhPLmNsZWFyUmVjdCgwLCAwLCBzaXplLncsIHNpemUuaCk7XG5cbiAgICAgICAgY3R4LmRyYXdJbWFnZSh0aGlzLnZpZGVvLCAwLCAwKTtcbiAgICAgICAgLy9jb25zb2xlLnRpbWUoJ2RyYXdWaWRlbycpO1xuICAgICAgICBjdHhPLmRyYXdJbWFnZShfY2FudmFzLCAwLCAwLCBzaXplLncsIHNpemUuaCk7XG4gICAgICAgIC8vY29uc29sZS50aW1lRW5kKCdkcmF3VmlkZW8nKTtcbiAgICAgICAgLy9jb25zb2xlLnRpbWUoJ0RSQVcnKTtcblxuICAgICAgICAvLyAgY29uc3QgaW1EYXRhOiBhbnkgPSBjdHguZ2V0SW1hZ2VEYXRhKDAsIDAsIHZpZGVvV2lkdGgsIHZpZGVvSGVpZ2h0KTtcblxuICAgICAgICBjb25zb2xlLmxvZyhjYW52YXMud2lkdGgsIF9jYW52YXMud2lkdGgpO1xuICAgICAgICAvL2NvbnNvbGUudGltZUVuZCgnRFJBVycpO1xuXG4gICAgICAgIC8vY29uc29sZS50aW1lKCdDVFgnKTtcblxuICAgICAgICBjb25zdCByZXNpemUgPSBjYW52YXMudG9EYXRhVVJMKCdpbWFnZS9qcGVnJyk7XG5cbiAgICAgICAgY29uc3QgY2FudmFzRGF0YSA9IF9jYW52YXMudG9EYXRhVVJMKG1pbWVUeXBlLCAxKTtcblxuICAgICAgICBjb25zb2xlLmxvZyh0aGlzLmh1bWFuRmlsZVNpemUoY2FudmFzRGF0YS5sZW5ndGgpKTtcbiAgICAgICAgY29uc29sZS5sb2codGhpcy5odW1hbkZpbGVTaXplKHJlc2l6ZS5sZW5ndGgpKTtcbiAgICAgICAgY29uc29sZS5sb2cobmV3IERhdGUoKS50b0lTT1N0cmluZygpKTtcbiAgICAgICAgLy9jb25zb2xlLnRpbWVFbmQoJ0NUWCcpO1xuICAgICAgICBjb25zdCBjdXJyZW50VGltZSA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpO1xuICAgICAgICBjb25zdCBkaWZmID0gY3VycmVudFRpbWUgLSB0aW1lO1xuXG4gICAgICAgIC8vIHRvdGFsIHRpbWUgZm9yIHBhY2sgb25lIGltYWdlXG4gICAgICAgIGNvbnN0IGRyYXdUaW1lID0gRGF0ZS5ub3coKSAtIGRyYXdTdGFydDtcblxuICAgICAgICAvL2NvbnNvbGUud2FybignRFJBVyBUSU1FJywgZHJhd1RpbWUpO1xuICAgICAgICBjb25zdCBkZWxheU1heCA9IGRyYXdUaW1lIDwgNjAgPyAxMDAgOiAyMDA7XG5cbiAgICAgICAgY29uc3QgZGVsYXkgPSBkaWZmID4gZGVsYXlNYXggPyAwIDogZGVsYXlNYXggLSBkaWZmO1xuXG4gICAgICAgIGNvbnN0IHRpbWVvdXQgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICB0aGlzLmltYWdlQ2FwdHVyZS5lbWl0KFxuICAgICAgICAgICAgbmV3IFdlYmNhbUltYWdlKGNhbnZhc0RhdGEsIG1pbWVUeXBlLCAnJywgcmVzaXplKVxuICAgICAgICAgICk7XG4gICAgICAgICAgY2xlYXJUaW1lb3V0KHRpbWVvdXQpO1xuICAgICAgICB9LCBkZWxheSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHN0b3BBbGxUcmFja3MoKSB7XG4gICAgdGhpcy5zaG93VmlkZW8gPSBmYWxzZTtcbiAgICBpZiAodGhpcy5tZWRpYVN0cmVhbSAmJiB0aGlzLm1lZGlhU3RyZWFtLmdldFRyYWNrcykge1xuICAgICAgLy8gZ2V0VHJhY2tzKCkgcmV0dXJucyBhbGwgbWVkaWEgdHJhY2tzICh2aWRlbythdWRpbylcblxuICAgICAgdGhpcy5tZWRpYVN0cmVhbS5nZXRUcmFja3MoKS5mb3JFYWNoKCh0cmFjazogTWVkaWFTdHJlYW1UcmFjaykgPT4ge1xuICAgICAgLy8gIGNvbnNvbGUubG9nKHRyYWNrKTtcbiAgICAgICAgdHJhY2suZW5hYmxlZCA9IGZhbHNlO1xuICAgICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgdHJhY2suc3RvcCgpO1xuXG4gICAgICAgIHRoaXMudmlkZW8uc3JjT2JqZWN0LnJlbW92ZVRyYWNrKHRyYWNrKTtcbiAgICAgICAgdGhpcy5tZWRpYVN0cmVhbS5yZW1vdmVUcmFjayh0cmFjayk7XG5cbiAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICB9KTtcbiAgICAgIHRoaXMudmlkZW8uc3JjT2JqZWN0ID0gbnVsbDtcbiAgICAgLy8gdGhpcy52aWRlby5zcmMgPSBudWxsO1xuXG4gICAgICAgdGhpcy52aWRlby5sb2FkKCk7XG4gICAgfVxuICAgIC8vIHRoaXMuX19zdWJzKHRoaXMuc3RvcFZpZGVvVHJhY2tzKCkpLnN1YnNjcmliZSgpXG4gIH1cblxuICBwcml2YXRlIGRyYXdSZWN0YW5nbGUoKSB7XG4gICAgdGhpcy56b25lLnJ1bigoKSA9PiB7XG4gICAgICBjb25zdCBfY2FudmFzID0gdGhpcy5jYW52YXMubmF0aXZlRWxlbWVudDtcbiAgICAgIGxldCBwYWRkaW5nID0gMTA7XG4gICAgICBpZiAoIXRoaXMuaXNNb2JpbGUgJiYgX2NhbnZhcy53aWR0aCAhPT0gX2NhbnZhcy5oZWlnaHQpIHtcbiAgICAgICAgcGFkZGluZyA9IDQwO1xuICAgICAgfVxuICAgICAgY29uc3QgY3R4ID0gX2NhbnZhcy5nZXRDb250ZXh0KCcyZCcpO1xuXG4gICAgICBjdHguY2xlYXJSZWN0KDAsIDAsIF9jYW52YXMud2lkdGgsIF9jYW52YXMuaGVpZ2h0KTtcblxuICAgICAgY29uc3QgeyB3aWR0aCwgaGVpZ2h0IH0gPSBfY2FudmFzO1xuXG4gICAgICBjb25zb2xlLmxvZygnQ0FOVkFTJywgd2lkdGgsIGhlaWdodCk7XG5cbiAgICAgIGxldCB7IHZpZGVvV2lkdGgsIHZpZGVvSGVpZ2h0IH0gPSB0aGlzLnZpZGVvO1xuXG4gICAgICAvLyB2aWRlbyB3aWxsIGJlIHNjYWxlZCB0byBtYXggY2FudmFzIGhlaWdodFxuICAgICAgY29uc3QgYXNwZWN0ID0gdmlkZW9XaWR0aCAvIHZpZGVvSGVpZ2h0O1xuXG4gICAgICAvLyBpZiAodmlkZW9IZWlnaHQgPCBoZWlnaHQpIHtcbiAgICAgIC8vICAgdmlkZW9IZWlnaHQgPSBoZWlnaHQ7XG4gICAgICAvLyAgIHZpZGVvV2lkdGggPSBoZWlnaHQqYXNwZWN0O1xuICAgICAgLy8gfVxuXG4gICAgICBjb25zb2xlLmxvZygnVklERU8nLCB2aWRlb1dpZHRoLCB2aWRlb0hlaWdodCk7XG5cbiAgICAgIGNvbnN0IGRvY1NpemUgPSB0aGlzLnR5cGUgPT09ICdzZWxmaWUnID8gMSA6IDg2IC8gNTU7XG5cbiAgICAgIGxldCBfaGVpZ2h0O1xuICAgICAgbGV0IF93aWR0aDtcblxuICAgICAgaWYgKHZpZGVvV2lkdGggPj0gdmlkZW9IZWlnaHQpIHtcbiAgICAgICAgX3dpZHRoID0gd2lkdGg7XG5cbiAgICAgICAgX2hlaWdodCA9IF93aWR0aCAvIGFzcGVjdDtcblxuICAgICAgICBpZiAoX2hlaWdodCA+IGhlaWdodCkge1xuICAgICAgICAgIF9oZWlnaHQgPSBoZWlnaHQ7XG4gICAgICAgICAgX3dpZHRoID0gYXNwZWN0ICogX2hlaWdodDtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgX2hlaWdodCA9IGhlaWdodDtcbiAgICAgICAgX3dpZHRoID0gYXNwZWN0ICogX2hlaWdodDtcbiAgICAgICAgaWYgKF93aWR0aCA+IHdpZHRoKSB7XG4gICAgICAgICAgX3dpZHRoID0gd2lkdGg7XG4gICAgICAgICAgX2hlaWdodCA9IF93aWR0aCAvIGFzcGVjdDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBjb25zb2xlLmxvZygnQ0FMQycsIF93aWR0aCwgX2hlaWdodCk7XG4gICAgICBsZXQgdywgaDtcblxuICAgICAgaWYgKF93aWR0aCA8PSBfaGVpZ2h0KSB7XG4gICAgICAgIHcgPSBfd2lkdGggLSAyICogcGFkZGluZztcbiAgICAgICAgaCA9IHcgLyBkb2NTaXplO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaCA9IF9oZWlnaHQgLSAyICogcGFkZGluZztcbiAgICAgICAgdyA9IGRvY1NpemUgKiBoO1xuICAgICAgfVxuICAgICAgaWYgKHcgPiBfd2lkdGgpIHtcbiAgICAgICAgdyA9IF93aWR0aCAtIDIgKiBwYWRkaW5nO1xuICAgICAgICBoID0gdyAvIGRvY1NpemU7XG4gICAgICB9XG5cbiAgICAgIGggPSBNYXRoLmZsb29yKGgpO1xuICAgICAgdyA9IE1hdGguZmxvb3Iodyk7XG4gICAgICBjb25zb2xlLmxvZyh3LCBoKTtcblxuICAgICAgY29uc3QgbGVmdCA9IE1hdGguZmxvb3IoKHdpZHRoIC0gdykgLyAyKTtcbiAgICAgIGNvbnN0IHRvcCA9IE1hdGguZmxvb3IoKGhlaWdodCAtIGgpIC8gMik7XG5cbiAgICAgIGN0eC5zdHJva2VTdHlsZSA9ICd3aGl0ZSc7XG5cbiAgICAgIC8vIGN0eC5zdHJva2VSZWN0KGxlZnQsIHRvcCwgX3dpZHRoLCBfaGVpZ2h0KTtcbiAgICAgIGN0eC5maWxsU3R5bGUgPSAncmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpJztcbiAgICAgIC8vIGN0eC5zaGFkb3dDb2xvciA9ICd3aGl0ZSc7XG4gICAgICBjdHguc2hhZG93Qmx1ciA9IDE1O1xuICAgICAgY3R4LmJlZ2luUGF0aCgpO1xuXG4gICAgICAvLyBEcmF3IHVzaW5nIDVweCBmb3IgYm9yZGVyIHJhZGl1cyBvbiBhbGwgc2lkZXNcbiAgICAgIC8vIHN0cm9rZSBpdCBidXQgbm8gZmlsbFxuICAgICAgY29uc3QgcmFkaXVzID0gdGhpcy5pc01vYmlsZSA/IDEwIDogMzA7XG5cbiAgICAgIGN0eC5yb3VuZFJlY3QobGVmdCwgdG9wLCB3LCBoLCByYWRpdXMpO1xuICAgICAgY3R4LnN0cm9rZSgpO1xuICAgICAgY3R4LmZpbGwoKTtcblxuICAgICAgdGhpcy5jYW1lcmFQcm92aWRlci5yZWN0UG9zaXRpb24gPSB7XG4gICAgICAgIGw6IGxlZnQsXG4gICAgICAgIHQ6IHRvcCxcbiAgICAgICAgdyxcbiAgICAgICAgaCxcbiAgICAgICAgX3c6IF93aWR0aCxcbiAgICAgICAgX2g6IF9oZWlnaHQsXG4gICAgICB9O1xuXG4gICAgICB0aGlzLnNldENhbnZhcygpO1xuICAgICAgLy8gY3R4LnN0cm9rZSgpO1xuICAgIH0pO1xuICB9XG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMudmlkZW8ucGF1c2UoKTtcblxuICAgIC8vIHRoaXMudmlkZW8uZ2V0VHJhY2tzKCkuZm9yRWFjaCgodHJhY2s6IGFueSkgPT4ge1xuICAgIC8vICAgdHJhY2suc3RvcCgpO1xuICAgIC8vICAgdGhpcy52aWRlby5zcmNPYmplY3QucmVtb3ZlVHJhY2sodHJhY2spO1xuICAgIC8vIH0pO1xuXG4gICAgdGhpcy5zdG9wQWxsVHJhY2tzKCk7XG5cbiAgICBpZiAodGhpcy50cmlnZ2VyU3Vic2NyaXB0aW9uKSB7XG4gICAgICB0aGlzLnRyaWdnZXJTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gICAgdGhpcy5fX2Rlc3Ryb3koKTtcblxuICAgIGNvbnNvbGUud2FybignW1ZJREVPXSBkZXN0cm95ZWQnKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cIndlYmNhbS13cmFwcGVyXCI+XG4gIDx2aWRlbyAjdmlkZW8gYXV0b3BsYXkgbXV0ZWQgc3R5bGU9XCJkaXNwbGF5OiBibG9ja1wiIHBsYXlzaW5saW5lPjwvdmlkZW8+XG5cbiAgPGRpdiBjbGFzcz1cInJlY3RhbmdsZVwiPlxuICAgIDxjYW52YXNcbiAgICAgICNjYW52YXNcbiAgICAgIFtuZ1N0eWxlXT1cInsgdmlzaWJpbGl0eTogc2hvd1ZpZGVvID8gJ3Zpc2libGUnIDogJ2hpZGRlbicgfVwiXG4gICAgICBbd2lkdGhdPVwidmlkZW8ub2Zmc2V0V2lkdGhcIlxuICAgICAgW2hlaWdodF09XCJ2aWRlby5vZmZzZXRIZWlnaHRcIlxuICAgID48L2NhbnZhcz5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
530
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2ViY2FtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zY2FuZG9jL3NyYy9jb3JlL2NvbXBvbmVudHMvd2ViY2FtL3dlYmNhbS93ZWJjYW0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNjYW5kb2Mvc3JjL2NvcmUvY29tcG9uZW50cy93ZWJjYW0vd2ViY2FtL3dlYmNhbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsdUJBQXVCLEVBRXZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBQ04sU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsSUFBSSxFQUF5QyxNQUFNLE1BQU0sQ0FBQztBQVluRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7Ozs7OztBQVVyRCxNQUFNLE9BQU8sZUFDWCxTQUFRLGFBQWE7SUE4QnJCLFFBQVE7UUFDTixJQUFJLENBQUMsY0FBYyxDQUFDLFlBQVksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3ZDLCtCQUErQjtRQUMvQixJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUU7WUFDdEIsWUFBWSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztTQUNsQztRQUNELElBQUksQ0FBQyxhQUFhLEdBQUcsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNuQyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDdkIsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ1QsQ0FBQztJQWdCRCxZQUNTLGtCQUFzQyxFQUN0QyxRQUFrQixFQUNqQixFQUFxQixFQUNyQixJQUFZLEVBRVosY0FBd0M7UUFFaEQsS0FBSyxFQUFFLENBQUM7UUFQRCx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO1FBQ3RDLGFBQVEsR0FBUixRQUFRLENBQVU7UUFDakIsT0FBRSxHQUFGLEVBQUUsQ0FBbUI7UUFDckIsU0FBSSxHQUFKLElBQUksQ0FBUTtRQUVaLG1CQUFjLEdBQWQsY0FBYyxDQUEwQjtRQXpEbEQsZUFBVSxHQUFRLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUM7UUFDMUMsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUNsQixpQkFBWSxHQUFHLENBQUMsQ0FBQztRQUNqQixlQUFVLEdBQVE7WUFDaEIsR0FBRyxFQUFFLElBQUk7WUFDVCxJQUFJLEVBQUUsSUFBSTtTQUNYLENBQUM7UUErQk0sV0FBTSxHQUFRLEVBQUUsQ0FBQztRQUtSLG1CQUFjLEdBQzdCLElBQUksWUFBWSxFQUFVLENBQUM7UUFDWixlQUFVLEdBQ3pCLElBQUksWUFBWSxFQUFXLENBQUM7UUFDYixpQkFBWSxHQUMzQixJQUFJLFlBQVksRUFBZSxDQUFDO1FBRWpCLGNBQVMsR0FDeEIsSUFBSSxZQUFZLEVBQW1CLENBQUM7SUFVdEMsQ0FBQztJQUNELGVBQWU7UUFDYixPQUFPLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQzlCLGVBQWU7UUFDZixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUMvRCxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDZCxDQUFDLENBQUMsQ0FBQztRQUVILGdCQUFnQjtRQUNoQixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRTtZQUNyRSxNQUFNLHFCQUFxQixHQUFRLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN6RCxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDckIsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7WUFDdkIsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUN4QixxQkFBcUIsQ0FBQyxRQUFRLEdBQUcsTUFBTSxDQUFDO1lBQ3hDLElBQUksQ0FBQyxLQUFLLENBQUMscUJBQXFCLENBQUMsQ0FBQztRQUNwQyxDQUFDLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ3pFLENBQUM7SUFFRCxJQUFXLEtBQUs7UUFDZCxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDO0lBQ3JDLENBQUM7SUFDRCxJQUFJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDO0lBQ3BELENBQUM7SUFDTyxjQUFjO1FBQ3BCLE1BQU0sR0FBRyxHQUEyQixFQUFFLENBQUM7UUFDdkMsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3RDLFFBQVEsSUFBSSxDQUFDLElBQUksRUFBRTtZQUNqQjtnQkFDRSxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7b0JBQ2pCLEdBQUcsQ0FBQyxLQUFLLEdBQUcsRUFBRSxNQUFNLEVBQUUsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLEVBQUUsS0FBSyxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxFQUFFLENBQUM7b0JBQ2hFLEdBQUcsQ0FBQyxLQUFLLENBQUMsVUFBVSxHQUFHLGFBQWEsQ0FBQztpQkFDdEM7cUJBQU07b0JBQ0wsR0FBRyxDQUFDLEtBQUssR0FBRzt3QkFDVixLQUFLLEVBQUU7NEJBQ0wsR0FBRyxFQUFFLElBQUk7NEJBQ1QsS0FBSyxFQUFFLElBQUk7NEJBQ1gsR0FBRyxFQUFFLElBQUk7eUJBQ1Y7d0JBQ0QsTUFBTSxFQUFFOzRCQUNOLEdBQUcsRUFBRSxHQUFHOzRCQUNSLEtBQUssRUFBRSxJQUFJOzRCQUNYLEdBQUcsRUFBRSxJQUFJO3lCQUNWO3FCQUNGLENBQUM7aUJBQ0g7Z0JBRUQsTUFBTTtZQUVSLEtBQUssUUFBUTtnQkFDWCxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7b0JBQ2pCLEdBQUcsQ0FBQyxLQUFLLEdBQUcsRUFBRSxNQUFNLEVBQUUsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLEVBQUUsS0FBSyxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxFQUFFLENBQUM7b0JBQ2hFLEdBQUcsQ0FBQyxLQUFLLENBQUMsVUFBVSxHQUFHLE1BQU0sQ0FBQztpQkFDL0I7cUJBQU07b0JBQ0wsR0FBRyxDQUFDLEtBQUssR0FBRzt3QkFDVixTQUFTLEVBQUUsRUFBRSxHQUFHLEVBQUUsRUFBRSxFQUFFO3dCQUN0QixNQUFNLEVBQUUsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFO3dCQUN2QixLQUFLLEVBQUUsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFO3FCQUN2QixDQUFDO2lCQUNIO2dCQUVELE1BQU07U0FDVDtRQUVELE9BQU8sR0FBRyxDQUFDLEtBQUssQ0FBQztJQUNuQixDQUFDO0lBRUQsSUFBWSxtQkFBbUI7UUFDN0IsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQzVELENBQUM7SUFDRCxJQUFZLHVCQUF1QjtRQUNqQyxJQUFJO1lBQ0YsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLGVBQWUsRUFBRSxDQUFDO1NBQy9EO1FBQUMsT0FBTyxDQUFDLEVBQUU7WUFDVixPQUFPLEVBQUUsQ0FBQztTQUNYO0lBQ0gsQ0FBQztJQUVPLElBQUk7UUFDVixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUMvRCxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsQ0FBQztZQUM5QixNQUFNLHFCQUFxQixHQUFHLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUNwRCxJQUFJLENBQUMsWUFBWSxHQUFHLENBQUMsQ0FBQztZQUN0QixJQUFJLENBQUMsS0FBSyxDQUFDLHFCQUFxQixDQUFDLENBQUM7UUFDcEMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sV0FBVyxDQUFDLE1BQW1CO1FBQ3JDLElBQUksQ0FBQyxXQUFXLEdBQUcsTUFBTSxDQUFDO1FBQzFCLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRLENBQUM7UUFDakUsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ3BCLENBQUM7SUFDTyxLQUFLLENBQUMscUJBQTBCO1FBQ3RDLE9BQU8sQ0FBQyxJQUFJLENBQUMsdUJBQXVCLEVBQUUscUJBQXFCLENBQUMsQ0FBQztRQUM3RCxPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxNQUFNLENBQ1QsSUFBSSxDQUNGLFNBQVMsQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUF5QjtZQUMxRCxLQUFLLEVBQUUscUJBQXFCO1NBQzdCLENBQUMsQ0FDSCxDQUNGLENBQUMsU0FBUyxDQUNULENBQUMsTUFBbUIsRUFBRSxFQUFFO1lBQ3RCLE9BQU8sQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDMUIsTUFBTSxDQUFDLFNBQVMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO2dCQUMvQixtQ0FBbUM7Z0JBRW5DLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFO29CQUNsQixJQUFJO3dCQUNGLElBQUksQ0FBQyxDQUFDLENBQUMsZUFBZSxFQUFFOzRCQUN0QixJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDOzRCQUV6QixPQUFPO3lCQUNSO3dCQUNELE1BQU0sUUFBUSxHQUFHLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQzt3QkFDakMsTUFBTSxHQUFHLEdBQUcsQ0FBQyxDQUFDLGVBQWUsRUFBRSxDQUFDO3dCQUNoQyxNQUFNLEdBQUcsR0FBRyxDQUFDLENBQUMsY0FBYyxFQUFFLENBQUM7d0JBRS9CLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO3dCQUN2QixPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO3dCQUN2QixNQUFNLEdBQUcsR0FBRyxHQUFHLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQzt3QkFDM0IsTUFBTSxHQUFHLEdBQUcsR0FBRyxDQUFDLEtBQUssRUFBRSxHQUFHLENBQUM7d0JBQzNCLE1BQU0sWUFBWSxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUM7d0JBQ3BDLE1BQU0sYUFBYSxHQUFHLFFBQVEsQ0FBQyxNQUFNLENBQUM7d0JBRXRDLE1BQU0sUUFBUSxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUM7d0JBQzNCLE1BQU0sU0FBUyxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUM7d0JBQzVCLE9BQU8sQ0FBQyxJQUFJLENBQ1YsTUFBTSxFQUNOLEdBQUcsRUFDSCxHQUFHLEVBQ0gsUUFBUSxFQUNSLFlBQVksRUFDWixhQUFhLENBQ2QsQ0FBQzt3QkFFRixJQUNFLEdBQUc7NEJBQ0gsWUFBWTs0QkFDWixHQUFHLEdBQUcsWUFBWTs0QkFDbEIsUUFBUSxJQUFJLEdBQUc7NEJBQ2YsWUFBWSxJQUFJLElBQUksRUFDcEI7NEJBQ0EsT0FBTyxDQUFDLEdBQUcsQ0FBQyx1QkFBdUIsRUFBRSxHQUFHLEVBQUUsWUFBWSxDQUFDLENBQUM7NEJBQ3hELElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQzs0QkFDcEIsSUFBSSxJQUFJLENBQUMsWUFBWSxHQUFHLENBQUMsRUFBRTtnQ0FDekIsSUFBSSxDQUFDLEtBQUssQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDOzZCQUNuQztpQ0FBTTtnQ0FDTCxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDOzZCQUMxQjt5QkFDRjs2QkFBTTs0QkFDTCxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDO3lCQUMxQjtxQkFDRjtvQkFBQyxPQUFPLEtBQUssRUFBRTt3QkFDZCxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO3FCQUNyQjtpQkFDRjtxQkFBTTtvQkFDTCxPQUFPLENBQUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLENBQUM7b0JBQ25DLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUM7aUJBQzFCO1lBQ0gsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLEVBQ0QsQ0FBQyxFQUFFLEVBQUUsRUFBRTtZQUNMLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUNwQixPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQztZQUUxQixJQUFJLElBQUksQ0FBQyxZQUFZLEdBQUcsQ0FBQyxFQUFFO2dCQUN6QixJQUFJLEVBQUUsWUFBWSxvQkFBb0IsRUFBRTtvQkFDdEMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUU7d0JBQ2xCLElBQUksQ0FBQyxLQUFLLENBQUMscUJBQXFCLENBQUMsQ0FBQztxQkFDbkM7b0JBQ0QsZUFBZTtvQkFDZixpQkFBaUI7b0JBQ2pCLGlCQUFpQjtvQkFDakIsTUFBTTtvQkFDTixHQUFHO2lCQUNKO3FCQUFNO29CQUNMLElBQUksQ0FBQyxLQUFLLENBQUMscUJBQXFCLENBQUMsQ0FBQztpQkFDbkM7YUFDRjtRQUNILENBQUMsQ0FDRixDQUFDO0lBQ0osQ0FBQztJQUVPLFVBQVU7UUFDaEIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUMzQixJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDO1FBRXhDLElBQUksQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLEdBQUcsQ0FBQyxJQUFTLEVBQUUsRUFBRTtZQUMxQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ2xCLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDbEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7WUFDdEIsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUN4QixPQUFPLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQzVCLENBQUMsQ0FBQztRQUNGLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLEdBQUcsRUFBRTtZQUN2QixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUMzQixPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDM0QsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3ZCLENBQUMsQ0FBQztJQUNKLENBQUM7SUFDRCxTQUFTO1FBQ1AsSUFBSSxPQUFPLEdBQXNCLFFBQVEsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxvQ0FBb0M7UUFFdkcsTUFBTSxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO1FBRS9DLE1BQU0sTUFBTSxHQUFHLFVBQVUsR0FBRyxXQUFXLENBQUM7UUFFeEMsTUFBTSxjQUFjLEdBQUcsR0FBRyxDQUFDO1FBQzNCLE1BQU0sU0FBUyxHQUFHO1lBQ2hCLENBQUMsRUFBRSxDQUFDO1lBQ0osQ0FBQyxFQUFFLENBQUM7U0FDTCxDQUFDO1FBRUYsSUFBSSxVQUFVLElBQUksV0FBVyxFQUFFO1lBQzdCLFNBQVMsQ0FBQyxDQUFDLEdBQUcsY0FBYyxDQUFDO1lBQzdCLFNBQVMsQ0FBQyxDQUFDLEdBQUcsY0FBYyxHQUFHLE1BQU0sQ0FBQztTQUN2QzthQUFNO1lBQ0wsU0FBUyxDQUFDLENBQUMsR0FBRyxjQUFjLENBQUM7WUFDN0IsU0FBUyxDQUFDLENBQUMsR0FBRyxjQUFjLEdBQUcsTUFBTSxDQUFDO1NBQ3ZDO1FBRUQsK0JBQStCO1FBRS9CLE9BQU8sQ0FBQyxLQUFLLEdBQUcsVUFBVSxDQUFDO1FBQzNCLE9BQU8sQ0FBQyxNQUFNLEdBQUcsV0FBVyxDQUFDO1FBQzdCLE1BQU0sR0FBRyxHQUFRLE9BQU8sQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFO1FBQ3hDLGdCQUFnQjtRQUNoQix1Q0FBdUM7UUFDdkMsb0JBQW9CO1FBQ3BCLGdCQUFnQjtRQUNoQix3QkFBd0I7UUFDeEIsNEJBQTRCO1NBQzdCLENBQUMsQ0FBQztRQUVILE1BQU0sTUFBTSxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyx3QkFBd0I7UUFDekUsTUFBTSxDQUFDLE1BQU0sR0FBRyxTQUFTLENBQUMsQ0FBQyxDQUFDO1FBQzVCLE1BQU0sQ0FBQyxLQUFLLEdBQUcsU0FBUyxDQUFDLENBQUMsQ0FBQztRQUUzQixNQUFNLElBQUksR0FBUSxNQUFNLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRTtRQUN4QyxnQkFBZ0I7UUFDaEIsdUNBQXVDO1FBQ3ZDLG9CQUFvQjtRQUNwQixnQkFBZ0I7UUFDaEIsd0JBQXdCO1FBQ3hCLDRCQUE0QjtTQUM3QixDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUM7UUFDMUIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQzVCLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUNoQyxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7UUFDbEMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEdBQUcsU0FBUyxDQUFDO1FBRWpDLDhDQUE4QztRQUU5QyxtREFBbUQ7UUFFbkQseUJBQXlCO1FBRXpCLCtDQUErQztRQUMvQyxtQkFBbUI7UUFDbkIsOEJBQThCO1FBRTlCLGtEQUFrRDtRQUNsRCw4Q0FBOEM7UUFDOUMscUNBQXFDO1FBQ3JDLHVCQUF1QjtRQUN2QixvQkFBb0I7UUFDcEIsS0FBSztJQUNQLENBQUM7SUFFTyxVQUFVO1FBQ2hCLE1BQU0sUUFBUSxHQUFXLFlBQVksQ0FBQztRQUN0QyxNQUFNLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQUUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO1FBRTVELElBQUksT0FBTyxHQUFzQixRQUFRLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsb0NBQW9DO1FBRXZHLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxZQUFZLENBQUM7UUFFbEQsTUFBTSxNQUFNLEdBQUcsVUFBVSxHQUFHLFdBQVcsQ0FBQztRQUV4QyxvREFBb0Q7UUFFcEQsT0FBTyxDQUFDLEtBQUssR0FBRyxDQUFDLEdBQUcsTUFBTSxDQUFDO1FBQzNCLE9BQU8sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxHQUFHLE1BQU0sQ0FBQztRQUU1QixNQUFNLEVBQUUsR0FBRyxVQUFVLEdBQUcsQ0FBQyxHQUFHLE1BQU0sQ0FBQztRQUNuQyxNQUFNLEVBQUUsR0FBRyxXQUFXLEdBQUcsQ0FBQyxHQUFHLE1BQU0sQ0FBQztRQUNwQyxNQUFNLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQ2pCLE1BQU0sQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFFakIsTUFBTSxHQUFHLEdBQVEsT0FBTyxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUU7WUFDeEMsS0FBSyxFQUFFLEtBQUs7WUFDWixlQUFlLEVBQUUsa0JBQWtCO1lBQ25DLFNBQVMsRUFBRSxLQUFLO1lBQ2hCLEtBQUssRUFBRSxLQUFLO1lBQ1osY0FBYyxFQUFFLElBQUk7U0FDckIsQ0FBQyxDQUFDO1FBRUgsSUFBSSxHQUFHLEVBQUU7WUFDUCxHQUFHLENBQUMsU0FBUyxDQUNYLElBQUksQ0FBQyxLQUFLLEVBQ1YsQ0FBQyxFQUNELENBQUMsRUFDRCxDQUFDLEdBQUcsTUFBTSxFQUNWLENBQUMsR0FBRyxNQUFNLEVBQ1YsQ0FBQyxFQUNELENBQUMsRUFDRCxDQUFDLEdBQUcsTUFBTSxFQUNWLENBQUMsR0FBRyxNQUFNLENBQ1gsQ0FBQztZQUVGLE1BQU0sUUFBUSxHQUFRLE9BQU8sQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBRXJELElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUNwQixJQUFJLFdBQVcsQ0FBQyxRQUFRLEVBQUUsUUFBUSxFQUFFLElBQUksU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FDL0QsQ0FBQztTQUNIO0lBQ0gsQ0FBQztJQUVELGFBQWEsQ0FBQyxLQUFhLEVBQUUsRUFBRSxHQUFHLEtBQUssRUFBRSxFQUFFLEdBQUcsQ0FBQztRQUM3QyxNQUFNLE1BQU0sR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1FBRWhDLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxNQUFNLEVBQUU7WUFDNUIsT0FBTyxLQUFLLEdBQUcsSUFBSSxDQUFDO1NBQ3JCO1FBRUQsTUFBTSxLQUFLLEdBQUcsRUFBRTtZQUNkLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUM7WUFDbEQsQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzdELElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQ1gsTUFBTSxDQUFDLEdBQUcsRUFBRSxJQUFJLEVBQUUsQ0FBQztRQUVuQixHQUFHO1lBQ0QsS0FBSyxJQUFJLE1BQU0sQ0FBQztZQUNoQixFQUFFLENBQUMsQ0FBQztTQUNMLFFBQ0MsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxNQUFNO1lBQzdDLENBQUMsR0FBRyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsRUFDcEI7UUFFRixPQUFPLEtBQUssQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLEdBQUcsR0FBRyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBRUQsWUFBWSxDQUFDLElBQVk7UUFDdkIsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLFVBQVUsRUFBRTtZQUM1QixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDbEIsT0FBTztTQUNSO1FBQ0QsOEJBQThCO1FBQzlCLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQ25CLE9BQU87U0FDUjtRQUNELElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxFQUFFO1lBQy9CLE1BQU0sY0FBYyxHQUFHLEdBQUcsQ0FBQztZQUUzQixNQUFNLFFBQVEsR0FBVyxZQUFZLENBQUM7WUFFdEMsMEdBQTBHO1lBRTFHLE1BQU0sRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztZQUUvQyw4QkFBOEI7WUFDOUIsZ0NBQWdDO1lBQ2hDLHdDQUF3QztZQUV4Qyw4Q0FBOEM7WUFDOUMsa0JBQWtCO1lBQ2xCLHlDQUF5QztZQUN6QyxzQkFBc0I7WUFDdEIsa0JBQWtCO1lBQ2xCLDBCQUEwQjtZQUMxQixNQUFNO1lBRU4sNEVBQTRFO1lBQzVFLGtDQUFrQztZQUNsQyxpQ0FBaUM7WUFFakMsOENBQThDO1lBQzlDLGtCQUFrQjtZQUNsQix5Q0FBeUM7WUFDekMsc0JBQXNCO1lBQ3RCLGtCQUFrQjtZQUNsQiwwQkFBMEI7WUFDMUIsTUFBTTtZQUVOLE1BQU0sRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQztZQUU3RCxJQUFJLEdBQUcsSUFBSSxJQUFJLEVBQUU7Z0JBQ2YsR0FBRyxDQUFDLHFCQUFxQixHQUFHLEtBQUssQ0FBQztnQkFDbEMsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO2dCQUM3QixHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsVUFBVSxFQUFFLFdBQVcsQ0FBQyxDQUFDO2dCQUM3QyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBRXJDLEdBQUcsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBQ2hDLDRCQUE0QjtnQkFDNUIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDOUMsK0JBQStCO2dCQUMvQix1QkFBdUI7Z0JBRXZCLHdFQUF3RTtnQkFFeEUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDekMsMEJBQTBCO2dCQUUxQixzQkFBc0I7Z0JBRXRCLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLENBQUM7Z0JBRTlDLE1BQU0sVUFBVSxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUVsRCxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7Z0JBQ25ELE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztnQkFDL0MsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7Z0JBQ3RDLHlCQUF5QjtnQkFDekIsTUFBTSxXQUFXLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQztnQkFDekMsTUFBTSxJQUFJLEdBQUcsV0FBVyxHQUFHLElBQUksQ0FBQztnQkFFaEMsZ0NBQWdDO2dCQUNoQyxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsR0FBRyxFQUFFLEdBQUcsU0FBUyxDQUFDO2dCQUV4QyxzQ0FBc0M7Z0JBQ3RDLE1BQU0sUUFBUSxHQUFHLFFBQVEsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDO2dCQUUzQyxNQUFNLEtBQUssR0FBRyxJQUFJLEdBQUcsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7Z0JBRXBELE1BQU0sT0FBTyxHQUFHLFVBQVUsQ0FBQyxHQUFHLEVBQUU7b0JBQzlCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUNwQixJQUFJLFdBQVcsQ0FBQyxVQUFVLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRSxNQUFNLENBQUMsQ0FDbEQsQ0FBQztvQkFDRixZQUFZLENBQUMsT0FBTyxDQUFDLENBQUM7Z0JBQ3hCLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQzthQUNYO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sYUFBYTtRQUNuQixJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztRQUN2QixJQUFJLElBQUksQ0FBQyxXQUFXLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLEVBQUU7WUFDbEQscURBQXFEO1lBRXJELElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBdUIsRUFBRSxFQUFFO2dCQUMvRCx1QkFBdUI7Z0JBQ3ZCLEtBQUssQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO2dCQUN0QixJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsRUFBRSxDQUFDO2dCQUN4QixLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBRWIsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUN4QyxJQUFJLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFFcEMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUMxQixDQUFDLENBQUMsQ0FBQztZQUNILElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztZQUM1Qix5QkFBeUI7WUFFekIsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQztTQUNuQjtRQUNELGtEQUFrRDtJQUNwRCxDQUFDO0lBRU8sYUFBYTtRQUNuQixJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUU7WUFDakIsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUM7WUFDMUMsSUFBSSxPQUFPLEdBQUcsRUFBRSxDQUFDO1lBQ2pCLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxJQUFJLE9BQU8sQ0FBQyxLQUFLLEtBQUssT0FBTyxDQUFDLE1BQU0sRUFBRTtnQkFDdEQsT0FBTyxHQUFHLEVBQUUsQ0FBQzthQUNkO1lBQ0QsTUFBTSxHQUFHLEdBQUcsT0FBTyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUVyQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsT0FBTyxDQUFDLEtBQUssRUFBRSxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7WUFFbkQsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsR0FBRyxPQUFPLENBQUM7WUFFbEMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBRXJDLElBQUksRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztZQUU3Qyw0Q0FBNEM7WUFDNUMsTUFBTSxNQUFNLEdBQUcsVUFBVSxHQUFHLFdBQVcsQ0FBQztZQUV4Qyw4QkFBOEI7WUFDOUIsMEJBQTBCO1lBQzFCLGdDQUFnQztZQUNoQyxJQUFJO1lBRUosT0FBTyxDQUFDLEdBQUcsQ0FBQyxPQUFPLEVBQUUsVUFBVSxFQUFFLFdBQVcsQ0FBQyxDQUFDO1lBRTlDLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxJQUFJLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUM7WUFFckQsSUFBSSxPQUFPLENBQUM7WUFDWixJQUFJLE1BQU0sQ0FBQztZQUVYLElBQUksVUFBVSxJQUFJLFdBQVcsRUFBRTtnQkFDN0IsTUFBTSxHQUFHLEtBQUssQ0FBQztnQkFFZixPQUFPLEdBQUcsTUFBTSxHQUFHLE1BQU0sQ0FBQztnQkFFMUIsSUFBSSxPQUFPLEdBQUcsTUFBTSxFQUFFO29CQUNwQixPQUFPLEdBQUcsTUFBTSxDQUFDO29CQUNqQixNQUFNLEdBQUcsTUFBTSxHQUFHLE9BQU8sQ0FBQztpQkFDM0I7YUFDRjtpQkFBTTtnQkFDTCxPQUFPLEdBQUcsTUFBTSxDQUFDO2dCQUNqQixNQUFNLEdBQUcsTUFBTSxHQUFHLE9BQU8sQ0FBQztnQkFDMUIsSUFBSSxNQUFNLEdBQUcsS0FBSyxFQUFFO29CQUNsQixNQUFNLEdBQUcsS0FBSyxDQUFDO29CQUNmLE9BQU8sR0FBRyxNQUFNLEdBQUcsTUFBTSxDQUFDO2lCQUMzQjthQUNGO1lBRUQsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBQ3JDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUVULElBQUksTUFBTSxJQUFJLE9BQU8sRUFBRTtnQkFDckIsQ0FBQyxHQUFHLE1BQU0sR0FBRyxDQUFDLEdBQUcsT0FBTyxDQUFDO2dCQUN6QixDQUFDLEdBQUcsQ0FBQyxHQUFHLE9BQU8sQ0FBQzthQUNqQjtpQkFBTTtnQkFDTCxDQUFDLEdBQUcsT0FBTyxHQUFHLENBQUMsR0FBRyxPQUFPLENBQUM7Z0JBQzFCLENBQUMsR0FBRyxPQUFPLEdBQUcsQ0FBQyxDQUFDO2FBQ2pCO1lBQ0QsSUFBSSxDQUFDLEdBQUcsTUFBTSxFQUFFO2dCQUNkLENBQUMsR0FBRyxNQUFNLEdBQUcsQ0FBQyxHQUFHLE9BQU8sQ0FBQztnQkFDekIsQ0FBQyxHQUFHLENBQUMsR0FBRyxPQUFPLENBQUM7YUFDakI7WUFFRCxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNsQixDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNsQixPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUVsQixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQ3pDLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFFekMsR0FBRyxDQUFDLFdBQVcsR0FBRyxPQUFPLENBQUM7WUFFMUIsOENBQThDO1lBQzlDLEdBQUcsQ0FBQyxTQUFTLEdBQUcsMEJBQTBCLENBQUM7WUFDM0MsNkJBQTZCO1lBQzdCLEdBQUcsQ0FBQyxVQUFVLEdBQUcsRUFBRSxDQUFDO1lBQ3BCLEdBQUcsQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUVoQixnREFBZ0Q7WUFDaEQsd0JBQXdCO1lBQ3hCLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBRXZDLEdBQUcsQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBQ3ZDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNiLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUVYLElBQUksQ0FBQyxjQUFjLENBQUMsWUFBWSxHQUFHO2dCQUNqQyxDQUFDLEVBQUUsSUFBSTtnQkFDUCxDQUFDLEVBQUUsR0FBRztnQkFDTixDQUFDO2dCQUNELENBQUM7Z0JBQ0QsRUFBRSxFQUFFLE1BQU07Z0JBQ1YsRUFBRSxFQUFFLE9BQU87YUFDWixDQUFDO1lBRUYsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ2pCLGdCQUFnQjtRQUNsQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFDRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUVuQixtREFBbUQ7UUFDbkQsa0JBQWtCO1FBQ2xCLDZDQUE2QztRQUM3QyxNQUFNO1FBRU4sSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBRXJCLElBQUksSUFBSSxDQUFDLG1CQUFtQixFQUFFO1lBQzVCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxXQUFXLEVBQUUsQ0FBQztTQUN4QztRQUNELElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUVqQixPQUFPLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLENBQUM7SUFDcEMsQ0FBQzs7NEdBdG9CVSxlQUFlO2dHQUFmLGVBQWUsNGlCQ3JDNUIsK1ZBWUE7MkZEeUJhLGVBQWU7a0JBTjNCLFNBQVM7K0JBQ0Usb0JBQW9CLG1CQUdiLHVCQUF1QixDQUFDLE1BQU07NE5BZ0J0QyxZQUFZO3NCQUFwQixLQUFLO2dCQUVVLElBQUk7c0JBQW5CLEtBQUs7Z0JBRUcsT0FBTztzQkFBZixLQUFLO2dCQWFOLFFBQVE7c0JBRFAsWUFBWTt1QkFBQyxlQUFlLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBYU0sTUFBTTtzQkFBcEQsU0FBUzt1QkFBQyxRQUFRLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUVTLFFBQVE7c0JBQXJELFNBQVM7dUJBQUMsT0FBTyxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFFbkIsY0FBYztzQkFBOUIsTUFBTTtnQkFFVSxVQUFVO3NCQUExQixNQUFNO2dCQUVVLFlBQVk7c0JBQTVCLE1BQU07Z0JBR1UsU0FBUztzQkFBekIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIEhvc3RMaXN0ZW5lcixcbiAgSW5wdXQsXG4gIE5nWm9uZSxcbiAgT25EZXN0cm95LFxuICBPdXRwdXQsXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBXZWJjYW1Jbml0RXJyb3IgfSBmcm9tICcuLi9kb21haW4vd2ViY2FtLWluaXQtZXJyb3InO1xuaW1wb3J0IHsgV2ViY2FtSW1hZ2UgfSBmcm9tICcuLi9kb21haW4vd2ViY2FtLWltYWdlJztcbmltcG9ydCB7IGZyb20sIE9ic2VydmFibGUsIG9mLCBTdWJqZWN0LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFdlYmNhbVV0aWwgfSBmcm9tICcuLi91dGlsL3dlYmNhbS51dGlsJztcbmltcG9ydCB7IFdlYmNhbU1pcnJvclByb3BlcnRpZXMgfSBmcm9tICcuLi9kb21haW4vd2ViY2FtLW1pcnJvci1wcm9wZXJ0aWVzJztcbmltcG9ydCB7XG4gIEJyZWFrcG9pbnRPYnNlcnZlcixcbiAgQnJlYWtwb2ludHMsXG4gIEJyZWFrcG9pbnRTdGF0ZSxcbn0gZnJvbSAnQGFuZ3VsYXIvY2RrL2xheW91dCc7XG5pbXBvcnQgeyBQbGF0Zm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wbGF0Zm9ybSc7XG5pbXBvcnQgeyBtYXAsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IHdvcmtlcnRleHQgfSBmcm9tICcuLi8uLi8uLi9hcHAud29ya2VyJztcbmltcG9ydCB7IE5neFNjYW5kb2NDYW1lcmFQcm92aWRlciB9IGZyb20gJy4uLy4uLy4uLy4uL3Byb3ZpZGVycy9jYW1lcmEucHJvdmlkZXInO1xuaW1wb3J0IHsgQmFzZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2Jhc2UuY29tcG9uZW50JztcblxuZGVjbGFyZSB2YXIgTWVkaWFTdHJlYW1UcmFja1Byb2Nlc3NvcjogYW55O1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICduZ3gtc2NhbmRvYy13ZWJjYW0nLFxuICB0ZW1wbGF0ZVVybDogJy4vd2ViY2FtLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vd2ViY2FtLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBXZWJjYW1Db21wb25lbnRcbiAgZXh0ZW5kcyBCYXNlQ29tcG9uZW50XG4gIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95XG57XG4gIHByaXZhdGUgdHJpZ2dlclN1YnNjcmlwdGlvbj86IFN1YnNjcmlwdGlvbjtcbiAgY2FudmFzU2l6ZTogYW55ID0geyB3aWR0aDogMCwgaGVpZ2h0OiAwIH07XG4gIHNob3dWaWRlbyA9IGZhbHNlO1xuICBzZXR1cEF0dGVtcHQgPSAwO1xuICBjYW52YXNEYXRhOiBhbnkgPSB7XG4gICAgY3R4OiBudWxsLFxuICAgIGN0eE86IG51bGwsXG4gIH07XG5cbiAgbWVkaWFTdHJlYW0hOiBNZWRpYVN0cmVhbTtcbiAgQElucHV0KCkgaW1hZ2VIYW5kbGVyITogU3ViamVjdDxhbnk+O1xuXG4gIEBJbnB1dCgpIHB1YmxpYyB0eXBlPzogJ2RvY3VtZW50JyB8ICdzZWxmaWUnIHwgJ21hbnVhbCc7XG5cbiAgQElucHV0KCkgdHJpZ2dlciE6IE9ic2VydmFibGU8bnVtYmVyPjtcbiAgLy8gcHVibGljIHNldCB0cmlnZ2VyKHRyaWdnZXI6IE9ic2VydmFibGU8bnVtYmVyPikge1xuICAvLyAgIGlmICh0aGlzLnRyaWdnZXJTdWJzY3JpcHRpb24pIHtcbiAgLy8gICAgIHRoaXMudHJpZ2dlclN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAvLyAgIH1cblxuICAvLyAgIC8vIFN1YnNjcmliZSB0byBldmVudHMgZnJvbSB0aGlzIE9ic2VydmFibGUgdG8gdGFrZSBzbmFwc2hvdHNcbiAgLy8gICB0aGlzLnRyaWdnZXJTdWJzY3JpcHRpb24gPSB0cmlnZ2VyLnN1YnNjcmliZSgodGltZSkgPT4ge1xuICAvLyAgICAgdGhpcy50YWtlU25hcHNob3QodGltZSk7XG4gIC8vICAgfSk7XG4gIC8vIH1cbiAgcmVzaXplVGltZW91dDogYW55O1xuICBASG9zdExpc3RlbmVyKCd3aW5kb3c6cmVzaXplJywgWyckZXZlbnQnXSlcbiAgb25SZXNpemUoKSB7XG4gICAgdGhpcy5jYW1lcmFQcm92aWRlci5yZWN0UG9zaXRpb24udCA9IDA7XG4gICAgLy8gdGhpcy52aWRlb1JlYWR5Lm5leHQoZmFsc2UpO1xuICAgIGlmICh0aGlzLnJlc2l6ZVRpbWVvdXQpIHtcbiAgICAgIGNsZWFyVGltZW91dCh0aGlzLnJlc2l6ZVRpbWVvdXQpO1xuICAgIH1cbiAgICB0aGlzLnJlc2l6ZVRpbWVvdXQgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMuZHJhd1JlY3RhbmdsZSgpO1xuICAgIH0sIDUwKTtcbiAgfVxuXG4gIHByaXZhdGUgY2h1bmtzOiBhbnkgPSBbXTtcbiAgQFZpZXdDaGlsZCgnY2FudmFzJywgeyBzdGF0aWM6IHRydWUgfSkgcHJpdmF0ZSBjYW52YXM6IGFueTtcblxuICBAVmlld0NoaWxkKCd2aWRlbycsIHsgc3RhdGljOiB0cnVlIH0pIHByaXZhdGUgdmlkZW9SZWY6IGFueTtcblxuICBAT3V0cHV0KCkgcHVibGljIGNhbWVyYVN3aXRjaGVkOiBFdmVudEVtaXR0ZXI8c3RyaW5nPiA9XG4gICAgbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG4gIEBPdXRwdXQoKSBwdWJsaWMgdmlkZW9SZWFkeTogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID1cbiAgICBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG4gIEBPdXRwdXQoKSBwdWJsaWMgaW1hZ2VDYXB0dXJlOiBFdmVudEVtaXR0ZXI8V2ViY2FtSW1hZ2U+ID1cbiAgICBuZXcgRXZlbnRFbWl0dGVyPFdlYmNhbUltYWdlPigpO1xuXG4gIEBPdXRwdXQoKSBwdWJsaWMgaW5pdEVycm9yOiBFdmVudEVtaXR0ZXI8V2ViY2FtSW5pdEVycm9yPiA9XG4gICAgbmV3IEV2ZW50RW1pdHRlcjxXZWJjYW1Jbml0RXJyb3I+KCk7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBicmVha3BvaW50T2JzZXJ2ZXI6IEJyZWFrcG9pbnRPYnNlcnZlcixcbiAgICBwdWJsaWMgcGxhdGZvcm06IFBsYXRmb3JtLFxuICAgIHByaXZhdGUgY2Q6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUgem9uZTogTmdab25lLFxuXG4gICAgcHJpdmF0ZSBjYW1lcmFQcm92aWRlcjogTmd4U2NhbmRvY0NhbWVyYVByb3ZpZGVyXG4gICkge1xuICAgIHN1cGVyKCk7XG4gIH1cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIGNvbnNvbGUud2FybignW3ZpZGVvXSBzdGFydCcpO1xuICAgIC8vIGluaXRpYWwgbG9hZFxuICAgIHRoaXMuX19zdWJzKHRoaXMuY2FtZXJhUHJvdmlkZXIuZ2V0RGV2aWNlcygpKS5zdWJzY3JpYmUoKHJlc3ApID0+IHtcbiAgICAgIHRoaXMuaW5pdCgpO1xuICAgIH0pO1xuXG4gICAgLy8gY2FtZXJhIHN3aXRjaFxuICAgIHRoaXMuX19zdWJzKHRoaXMuY2FtZXJhUHJvdmlkZXIud2ViY2FtT2JzZXJ2YWJsZSkuc3Vic2NyaWJlKChkZXZpY2UpID0+IHtcbiAgICAgIGNvbnN0IHZpZGVvVHJhY2tDb25zdHJhaW50czogYW55ID0gdGhpcy5zZXRDb25zdHJhaW50cygpO1xuICAgICAgdGhpcy5zdG9wQWxsVHJhY2tzKCk7XG4gICAgICB0aGlzLnNob3dWaWRlbyA9IGZhbHNlO1xuICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICB2aWRlb1RyYWNrQ29uc3RyYWludHMuZGV2aWNlSWQgPSBkZXZpY2U7XG4gICAgICB0aGlzLnNldHVwKHZpZGVvVHJhY2tDb25zdHJhaW50cyk7XG4gICAgfSk7XG5cbiAgICB0aGlzLl9fc3Vicyh0aGlzLnRyaWdnZXIpLnN1YnNjcmliZSgodGltZSkgPT4gdGhpcy50YWtlU25hcHNob3QodGltZSkpO1xuICB9XG5cbiAgcHVibGljIGdldCB2aWRlbygpIHtcbiAgICByZXR1cm4gdGhpcy52aWRlb1JlZi5uYXRpdmVFbGVtZW50O1xuICB9XG4gIGdldCBpc01vYmlsZSgpIHtcbiAgICByZXR1cm4gdGhpcy5wbGF0Zm9ybS5BTkRST0lEIHx8IHRoaXMucGxhdGZvcm0uSU9TO1xuICB9XG4gIHByaXZhdGUgc2V0Q29uc3RyYWludHMoKSB7XG4gICAgY29uc3Qgb3V0OiBNZWRpYVN0cmVhbUNvbnN0cmFpbnRzID0ge307XG4gICAgY29uc29sZS53YXJuKCdNT0JJTEUnLCB0aGlzLmlzTW9iaWxlKTtcbiAgICBzd2l0Y2ggKHRoaXMudHlwZSkge1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgaWYgKHRoaXMuaXNNb2JpbGUpIHtcbiAgICAgICAgICBvdXQudmlkZW8gPSB7IGhlaWdodDogeyBpZGVhbDogMTYwMCB9LCB3aWR0aDogeyBpZGVhbDogMTYwMCB9IH07XG4gICAgICAgICAgb3V0LnZpZGVvLmZhY2luZ01vZGUgPSAnZW52aXJvbm1lbnQnO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIG91dC52aWRlbyA9IHtcbiAgICAgICAgICAgIHdpZHRoOiB7XG4gICAgICAgICAgICAgIG1pbjogMTI4MCxcbiAgICAgICAgICAgICAgaWRlYWw6IDE5MjAsXG4gICAgICAgICAgICAgIG1heDogMjkwMCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBoZWlnaHQ6IHtcbiAgICAgICAgICAgICAgbWluOiA3MjAsXG4gICAgICAgICAgICAgIGlkZWFsOiAxMDgwLFxuICAgICAgICAgICAgICBtYXg6IDI5MDAsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH07XG4gICAgICAgIH1cblxuICAgICAgICBicmVhaztcblxuICAgICAgY2FzZSAnc2VsZmllJzpcbiAgICAgICAgaWYgKHRoaXMuaXNNb2JpbGUpIHtcbiAgICAgICAgICBvdXQudmlkZW8gPSB7IGhlaWdodDogeyBpZGVhbDogMTYwMCB9LCB3aWR0aDogeyBpZGVhbDogMTYwMCB9IH07XG4gICAgICAgICAgb3V0LnZpZGVvLmZhY2luZ01vZGUgPSAndXNlcic7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgb3V0LnZpZGVvID0ge1xuICAgICAgICAgICAgZnJhbWVSYXRlOiB7IG1pbjogMTAgfSxcbiAgICAgICAgICAgIGhlaWdodDogeyBpZGVhbDogMTA4MCB9LFxuICAgICAgICAgICAgd2lkdGg6IHsgaWRlYWw6IDE5MjAgfSxcbiAgICAgICAgICB9O1xuICAgICAgICB9XG5cbiAgICAgICAgYnJlYWs7XG4gICAgfVxuXG4gICAgcmV0dXJuIG91dC52aWRlbztcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IGFjdGl2ZVRyYWNrU2V0dGluZ3MoKSB7XG4gICAgcmV0dXJuIHRoaXMubWVkaWFTdHJlYW0uZ2V0VmlkZW9UcmFja3MoKVswXS5nZXRTZXR0aW5ncygpO1xuICB9XG4gIHByaXZhdGUgZ2V0IGFjdGl2ZVRyYWNrQ2FwYWJpbGl0aWVzKCkge1xuICAgIHRyeSB7XG4gICAgICByZXR1cm4gdGhpcy5tZWRpYVN0cmVhbS5nZXRWaWRlb1RyYWNrcygpWzBdLmdldENhcGFiaWxpdGllcygpO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHJldHVybiB7fTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGluaXQoKSB7XG4gICAgdGhpcy5fX3N1YnModGhpcy5jYW1lcmFQcm92aWRlci5nZXREZXZpY2VzKCkpLnN1YnNjcmliZSgocmVzcCkgPT4ge1xuICAgICAgY29uc29sZS53YXJuKCdERVZJQ0VTJywgcmVzcCk7XG4gICAgICBjb25zdCB2aWRlb1RyYWNrQ29uc3RyYWludHMgPSB0aGlzLnNldENvbnN0cmFpbnRzKCk7XG4gICAgICB0aGlzLnNldHVwQXR0ZW1wdCA9IDA7XG4gICAgICB0aGlzLnNldHVwKHZpZGVvVHJhY2tDb25zdHJhaW50cyk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHNldERldmljZUlkKHN0cmVhbTogTWVkaWFTdHJlYW0pIHtcbiAgICB0aGlzLm1lZGlhU3RyZWFtID0gc3RyZWFtO1xuICAgIHRoaXMuY2FtZXJhUHJvdmlkZXIuZGV2aWNlSWQgPSB0aGlzLmFjdGl2ZVRyYWNrU2V0dGluZ3MuZGV2aWNlSWQ7XG4gICAgdGhpcy5zdGFydFZpZGVvKCk7XG4gIH1cbiAgcHJpdmF0ZSBzZXR1cCh2aWRlb1RyYWNrQ29uc3RyYWludHM6IGFueSkge1xuICAgIGNvbnNvbGUud2FybigndmlkZW9UcmFja0NvbnN0cmFpbnRzJywgdmlkZW9UcmFja0NvbnN0cmFpbnRzKTtcbiAgICBjb25zb2xlLnRpbWUoJ2RldmljZScpO1xuICAgIHRoaXMuX19zdWJzKFxuICAgICAgZnJvbShcbiAgICAgICAgbmF2aWdhdG9yLm1lZGlhRGV2aWNlcy5nZXRVc2VyTWVkaWEoPE1lZGlhU3RyZWFtQ29uc3RyYWludHM+e1xuICAgICAgICAgIHZpZGVvOiB2aWRlb1RyYWNrQ29uc3RyYWludHMsXG4gICAgICAgIH0pXG4gICAgICApXG4gICAgKS5zdWJzY3JpYmUoXG4gICAgICAoc3RyZWFtOiBNZWRpYVN0cmVhbSkgPT4ge1xuICAgICAgICBjb25zb2xlLnRpbWVFbmQoJ2RldmljZScpO1xuICAgICAgICBzdHJlYW0uZ2V0VHJhY2tzKCkuZm9yRWFjaCgodCkgPT4ge1xuICAgICAgICAgIC8vY29uc29sZS53YXJuKHQuZ2V0Q29uc3RyYWludHMoKSk7XG5cbiAgICAgICAgICBpZiAoIXRoaXMuaXNNb2JpbGUpIHtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgIGlmICghdC5nZXRDYXBhYmlsaXRpZXMpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnNldERldmljZUlkKHN0cmVhbSk7XG5cbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgY29uc3Qgc2V0dGluZ3MgPSB0LmdldFNldHRpbmdzKCk7XG4gICAgICAgICAgICAgIGNvbnN0IGNhcCA9IHQuZ2V0Q2FwYWJpbGl0aWVzKCk7XG4gICAgICAgICAgICAgIGNvbnN0IGNvbiA9IHQuZ2V0Q29uc3RyYWludHMoKTtcblxuICAgICAgICAgICAgICBjb25zb2xlLndhcm4oY2FwLCBjb24pO1xuICAgICAgICAgICAgICBjb25zb2xlLndhcm4oc2V0dGluZ3MpO1xuICAgICAgICAgICAgICBjb25zdCBtYXggPSBjYXAud2lkdGg/Lm1heDtcbiAgICAgICAgICAgICAgY29uc3QgbWluID0gY2FwLndpZHRoPy5taW47XG4gICAgICAgICAgICAgIGNvbnN0IGN1cnJlbnRXaWR0aCA9IHNldHRpbmdzLndpZHRoO1xuICAgICAgICAgICAgICBjb25zdCBjdXJyZW50SGVpZ2h0ID0gc2V0dGluZ3MuaGVpZ2h0O1xuXG4gICAgICAgICAgICAgIGNvbnN0IGNvbldpZHRoID0gY29uLndpZHRoO1xuICAgICAgICAgICAgICBjb25zdCBjb25IZWlnaHQgPSBjb24ud2lkdGg7XG4gICAgICAgICAgICAgIGNvbnNvbGUud2FybihcbiAgICAgICAgICAgICAgICAnQ0FQUycsXG4gICAgICAgICAgICAgICAgbWluLFxuICAgICAgICAgICAgICAgIG1heCxcbiAgICAgICAgICAgICAgICAnQ1VSRU5UJyxcbiAgICAgICAgICAgICAgICBjdXJyZW50V2lkdGgsXG4gICAgICAgICAgICAgICAgY3VycmVudEhlaWdodFxuICAgICAgICAgICAgICApO1xuXG4gICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICBtYXggJiZcbiAgICAgICAgICAgICAgICBjdXJyZW50V2lkdGggJiZcbiAgICAgICAgICAgICAgICBtYXggPiBjdXJyZW50V2lkdGggJiZcbiAgICAgICAgICAgICAgICBjb25XaWR0aCAhPSBtYXggJiZcbiAgICAgICAgICAgICAgICBjdXJyZW50V2lkdGggIT0gMTkyMFxuICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZygnW1NFVCBORVcgUkVTT0xVVElPTl0gJywgbWF4LCBjdXJyZW50V2lkdGgpO1xuICAgICAgICAgICAgICAgIHRoaXMuc2V0dXBBdHRlbXB0Kys7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuc2V0dXBBdHRlbXB0IDwgNCkge1xuICAgICAgICAgICAgICAgICAgdGhpcy5zZXR1cCh2aWRlb1RyYWNrQ29uc3RyYWludHMpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICB0aGlzLnNldERldmljZUlkKHN0cmVhbSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMuc2V0RGV2aWNlSWQoc3RyZWFtKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgICAgICAgY29uc29sZS53YXJuKGVycm9yKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29uc29sZS53YXJuKCdNT0JJTEUgVklERU8gU1RBUlQnKTtcbiAgICAgICAgICAgIHRoaXMuc2V0RGV2aWNlSWQoc3RyZWFtKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfSxcbiAgICAgIChlcikgPT4ge1xuICAgICAgICB0aGlzLnNldHVwQXR0ZW1wdCsrO1xuICAgICAgICBjb25zb2xlLndhcm4oJ0VSUk9SJywgZXIpO1xuXG4gICAgICAgIGlmICh0aGlzLnNldHVwQXR0ZW1wdCA8IDQpIHtcbiAgICAgICAgICBpZiAoZXIgaW5zdGFuY2VvZiBPdmVyY29uc3RyYWluZWRFcnJvcikge1xuICAgICAgICAgICAgaWYgKCF0aGlzLmlzTW9iaWxlKSB7XG4gICAgICAgICAgICAgIHRoaXMuc2V0dXAodmlkZW9UcmFja0NvbnN0cmFpbnRzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIHRoaXMuc2V0dXAoe1xuICAgICAgICAgICAgLy8gICBoZWlnaHQ6IDcyMCxcbiAgICAgICAgICAgIC8vICAgd2lkdGg6IDEyODAsXG4gICAgICAgICAgICAvLyB9KTtcbiAgICAgICAgICAgIC8vfVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnNldHVwKHZpZGVvVHJhY2tDb25zdHJhaW50cyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgc3RhcnRWaWRlbygpIHtcbiAgICBjb25zb2xlLmxvZygnU1RBUlQgVklERU8nKTtcbiAgICB0aGlzLnZpZGVvLnNyY09iamVjdCA9IHRoaXMubWVkaWFTdHJlYW07XG5cbiAgICB0aGlzLnZpZGVvLm9ubG9hZGVkbWV0YWRhdGEgPSAoZGF0YTogYW55KSA9PiB7XG4gICAgICBjb25zb2xlLmxvZyhkYXRhKTtcbiAgICAgIHRoaXMudmlkZW8ucGxheSgpO1xuICAgICAgdGhpcy5zaG93VmlkZW8gPSB0cnVlO1xuICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICBjb25zb2xlLmxvZygnVklERU8gUExBWScpO1xuICAgIH07XG4gICAgdGhpcy52aWRlby5vbnBsYXkgPSAoKSA9PiB7XG4gICAgICB0aGlzLnZpZGVvUmVhZHkubmV4dCh0cnVlKTtcbiAgICAgIGNvbnNvbGUubG9nKHRoaXMudmlkZW8udmlkZW9XaWR0aCwgdGhpcy52aWRlby52aWRlb0hlaWdodCk7XG4gICAgICB0aGlzLmRyYXdSZWN0YW5nbGUoKTtcbiAgICB9O1xuICB9XG4gIHNldENhbnZhcygpIHtcbiAgICBsZXQgX2NhbnZhczogSFRNTENhbnZhc0VsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdjYW52YXMnKTsgLy90aGlzLmNhbnZhc1NuYXBzaG90Lm5hdGl2ZUVsZW1lbnQ7XG5cbiAgICBjb25zdCB7IHZpZGVvV2lkdGgsIHZpZGVvSGVpZ2h0IH0gPSB0aGlzLnZpZGVvO1xuXG4gICAgY29uc3QgYXNwZWN0ID0gdmlkZW9XaWR0aCAvIHZpZGVvSGVpZ2h0O1xuXG4gICAgY29uc3QgY2FudmFzU21hbFNpemUgPSAzODQ7XG4gICAgY29uc3Qgc21hbGxTaXplID0ge1xuICAgICAgdzogMCxcbiAgICAgIGg6IDAsXG4gICAgfTtcblxuICAgIGlmICh2aWRlb1dpZHRoID49IHZpZGVvSGVpZ2h0KSB7XG4gICAgICBzbWFsbFNpemUudyA9IGNhbnZhc1NtYWxTaXplO1xuICAgICAgc21hbGxTaXplLmggPSBjYW52YXNTbWFsU2l6ZSAvIGFzcGVjdDtcbiAgICB9IGVsc2Uge1xuICAgICAgc21hbGxTaXplLmggPSBjYW52YXNTbWFsU2l6ZTtcbiAgICAgIHNtYWxsU2l6ZS5oID0gY2FudmFzU21hbFNpemUgKiBhc3BlY3Q7XG4gICAgfVxuXG4gICAgLy9jb25zb2xlLmxvZygnU1onLCBzbWFsbFNpemUpO1xuXG4gICAgX2NhbnZhcy53aWR0aCA9IHZpZGVvV2lkdGg7XG4gICAgX2NhbnZhcy5oZWlnaHQgPSB2aWRlb0hlaWdodDtcbiAgICBjb25zdCBjdHg6IGFueSA9IF9jYW52YXMuZ2V0Q29udGV4dCgnMmQnLCB7XG4gICAgICAvLyBhbHBoYTogZmFsc2UsXG4gICAgICAvLyBwb3dlclByZWZlcmVuY2U6ICdoaWdoLXBlcmZvcm1hbmNlJyxcbiAgICAgIC8vIGFudGlhbGlhczogZmFsc2UsXG4gICAgICAvLyBkZXB0aDogZmFsc2UsXG4gICAgICAvLyBkZXN5bmNocm9uaXplZDogdHJ1ZSxcbiAgICAgIC8vIHdpbGxSZWFkRnJlcXVlbnRseTogdHJ1ZSxcbiAgICB9KTtcblxuICAgIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2NhbnZhcycpOyAvLyBuZWVkcyBhbiBpbml0aWFsIHNpemVcbiAgICBjYW52YXMuaGVpZ2h0ID0gc21hbGxTaXplLmg7XG4gICAgY2FudmFzLndpZHRoID0gc21hbGxTaXplLnc7XG5cbiAgICBjb25zdCBjdHhPOiBhbnkgPSBjYW52YXMuZ2V0Q29udGV4dCgnMmQnLCB7XG4gICAgICAvLyBhbHBoYTogZmFsc2UsXG4gICAgICAvLyBwb3dlclByZWZlcmVuY2U6ICdoaWdoLXBlcmZvcm1hbmNlJyxcbiAgICAgIC8vIGFudGlhbGlhczogZmFsc2UsXG4gICAgICAvLyBkZXB0aDogZmFsc2UsXG4gICAgICAvLyBkZXN5bmNocm9uaXplZDogdHJ1ZSxcbiAgICAgIC8vIHdpbGxSZWFkRnJlcXVlbnRseTogdHJ1ZSxcbiAgICB9KTtcblxuICAgIHRoaXMuY2FudmFzRGF0YS5jdHggPSBjdHg7XG4gICAgdGhpcy5jYW52YXNEYXRhLmN0eE8gPSBjdHhPO1xuICAgIHRoaXMuY2FudmFzRGF0YS5jYW52YXMgPSBjYW52YXM7XG4gICAgdGhpcy5jYW52YXNEYXRhLl9jYW52YXMgPSBfY2FudmFzO1xuICAgIHRoaXMuY2FudmFzRGF0YS5zaXplID0gc21hbGxTaXplO1xuXG4gICAgLy8gY29uc3Qgc3RyZWFtID0gdGhpcy52aWRlby5jYXB0dXJlU3RyZWFtKDUpO1xuXG4gICAgLy8gY29uc3QgbWVkaWFSZWNvcmRlciA9IG5ldyBNZWRpYVJlY29yZGVyKHN0cmVhbSk7XG5cbiAgICAvLyBtZWRpYVJlY29yZGVyLnN0YXJ0KCk7XG5cbiAgICAvLyBtZWRpYVJlY29yZGVyLm9uZGF0YWF2YWlsYWJsZSA9IChlOmFueSkgPT4ge1xuICAgIC8vICAgY29uc29sZS5sb2coZSlcbiAgICAvLyAgIHRoaXMuY2h1bmtzLnB1c2goZS5kYXRhKTtcblxuICAgIC8vICAgdmFyIHVybCA9IHdpbmRvdy5VUkwuY3JlYXRlT2JqZWN0VVJMKGUuZGF0YSk7XG4gICAgLy8gICB2YXIgYW5jaG9yID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpO1xuICAgIC8vICAgYW5jaG9yLmRvd25sb2FkID0gJ215ZmlsZS53ZWJtJztcbiAgICAvLyAgIGFuY2hvci5ocmVmID0gdXJsO1xuICAgIC8vICAgYW5jaG9yLmNsaWNrKCk7XG4gICAgLy8gfTtcbiAgfVxuXG4gIHByaXZhdGUgdGFrZVNlbGZpZSgpIHtcbiAgICBjb25zdCBtaW1lVHlwZTogc3RyaW5nID0gJ2ltYWdlL2pwZWcnO1xuICAgIGNvbnN0IHsgdmlkZW9XaWR0aCwgb2Zmc2V0V2lkdGgsIHZpZGVvSGVpZ2h0IH0gPSB0aGlzLnZpZGVvO1xuXG4gICAgbGV0IF9jYW52YXM6IEhUTUxDYW52YXNFbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY2FudmFzJyk7IC8vdGhpcy5jYW52YXNTbmFwc2hvdC5uYXRpdmVFbGVtZW50O1xuXG4gICAgY29uc3QgeyB3LCBoIH0gPSB0aGlzLmNhbWVyYVByb3ZpZGVyLnJlY3RQb3NpdGlvbjtcblxuICAgIGNvbnN0IGFzcGVjdCA9IHZpZGVvV2lkdGggLyBvZmZzZXRXaWR0aDtcblxuICAgIC8vIGNvbnNvbGUubG9nKHZpZGVvV2lkdGgsIG9mZnNldFdpZHRoLCBsLCB0LCB3LCBoKTtcblxuICAgIF9jYW52YXMud2lkdGggPSB3ICogYXNwZWN0O1xuICAgIF9jYW52YXMuaGVpZ2h0ID0gaCAqIGFzcGVjdDtcblxuICAgIGNvbnN0IGR4ID0gdmlkZW9XaWR0aCAtIHcgKiBhc3BlY3Q7XG4gICAgY29uc3QgZHkgPSB2aWRlb0hlaWdodCAtIGggKiBhc3BlY3Q7XG4gICAgY29uc3QgeCA9IGR4IC8gMjtcbiAgICBjb25zdCB5ID0gZHkgLyAyO1xuXG4gICAgY29uc3QgY3R4OiBhbnkgPSBfY2FudmFzLmdldENvbnRleHQoJzJkJywge1xuICAgICAgYWxwaGE6IGZhbHNlLFxuICAgICAgcG93ZXJQcmVmZXJlbmNlOiAnaGlnaC1wZXJmb3JtYW5jZScsXG4gICAgICBhbnRpYWxpYXM6IGZhbHNlLFxuICAgICAgZGVwdGg6IGZhbHNlLFxuICAgICAgZGVzeW5jaHJvbml6ZWQ6IHRydWUsXG4gICAgfSk7XG5cbiAgICBpZiAoY3R4KSB7XG4gICAgICBjdHguZHJhd0ltYWdlKFxuICAgICAgICB0aGlzLnZpZGVvLFxuICAgICAgICB4LFxuICAgICAgICB5LFxuICAgICAgICB3ICogYXNwZWN0LFxuICAgICAgICBoICogYXNwZWN0LFxuICAgICAgICAwLFxuICAgICAgICAwLFxuICAgICAgICB3ICogYXNwZWN0LFxuICAgICAgICBoICogYXNwZWN0XG4gICAgICApO1xuXG4gICAgICBjb25zdCBpbWdBc1VybDogYW55ID0gX2NhbnZhcy50b0RhdGFVUkwobWltZVR5cGUsIDEpO1xuXG4gICAgICB0aGlzLmltYWdlQ2FwdHVyZS5lbWl0KFxuICAgICAgICBuZXcgV2ViY2FtSW1hZ2UoaW1nQXNVcmwsIG1pbWVUeXBlLCBuZXcgSW1hZ2VEYXRhKDEsIDEpLCBudWxsKVxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICBodW1hbkZpbGVTaXplKGJ5dGVzOiBudW1iZXIsIHNpID0gZmFsc2UsIGRwID0gMSkge1xuICAgIGNvbnN0IHRocmVzaCA9IHNpID8gMTAwMCA6IDEwMjQ7XG5cbiAgICBpZiAoTWF0aC5hYnMoYnl0ZXMpIDwgdGhyZXNoKSB7XG4gICAgICByZXR1cm4gYnl0ZXMgKyAnIEInO1xuICAgIH1cblxuICAgIGNvbnN0IHVuaXRzID0gc2lcbiAgICAgID8gWydrQicsICdNQicsICdHQicsICdUQicsICdQQicsICdFQicsICdaQicsICdZQiddXG4gICAgICA6IFsnS2lCJywgJ01pQicsICdHaUInLCAnVGlCJywgJ1BpQicsICdFaUInLCAnWmlCJywgJ1lpQiddO1xuICAgIGxldCB1ID0gLTE7XG4gICAgY29uc3QgciA9IDEwICoqIGRwO1xuXG4gICAgZG8ge1xuICAgICAgYnl0ZXMgLz0gdGhyZXNoO1xuICAgICAgKyt1O1xuICAgIH0gd2hpbGUgKFxuICAgICAgTWF0aC5yb3VuZChNYXRoLmFicyhieXRlcykgKiByKSAvIHIgPj0gdGhyZXNoICYmXG4gICAgICB1IDwgdW5pdHMubGVuZ3RoIC0gMVxuICAgICk7XG5cbiAgICByZXR1cm4gYnl0ZXMudG9GaXhlZChkcCkgKyAnICcgKyB1bml0c1t1XTtcbiAgfVxuXG4gIHRha2VTbmFwc2hvdCh0aW1lOiBudW1iZXIpIHtcbiAgICBpZiAodGhpcy50eXBlICE9PSAnZG9jdW1lbnQnKSB7XG4gICAgICB0aGlzLnRha2VTZWxmaWUoKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgLy8gY29uc29sZS53YXJuKCdTTkFQJywgdGltZSk7XG4gICAgaWYgKCF0aGlzLnNob3dWaWRlbykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLnpvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xuICAgICAgY29uc3QgY2FudmFzU21hbFNpemUgPSAzODQ7XG5cbiAgICAgIGNvbnN0IG1pbWVUeXBlOiBzdHJpbmcgPSAnaW1hZ2UvanBlZyc7XG5cbiAgICAgIC8vIGxldCBfY2FudmFzOiBIVE1MQ2FudmFzRWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2NhbnZhcycpOyAvL3RoaXMuY2FudmFzU25hcHNob3QubmF0aXZlRWxlbWVudDtcblxuICAgICAgY29uc3QgeyB2aWRlb1dpZHRoLCB2aWRlb0hlaWdodCB9ID0gdGhpcy52aWRlbztcblxuICAgICAgLy8gX2NhbnZhcy53aWR0aCA9IHZpZGVvV2lkdGg7XG4gICAgICAvLyBfY2FudmFzLmhlaWdodCA9IHZpZGVvSGVpZ2h0O1xuICAgICAgLy8gY29uc29sZS5sb2codmlkZW9XaWR0aCwgdmlkZW9IZWlnaHQpO1xuXG4gICAgICAvLyBjb25zdCBjdHg6IGFueSA9IF9jYW52YXMuZ2V0Q29udGV4dCgnMmQnLCB7XG4gICAgICAvLyAgIGFscGhhOiBmYWxzZSxcbiAgICAgIC8vICAgcG93ZXJQcmVmZXJlbmNlOiAnaGlnaC1wZXJmb3JtYW5jZScsXG4gICAgICAvLyAgIGFudGlhbGlhczogZmFsc2UsXG4gICAgICAvLyAgIGRlcHRoOiBmYWxzZSxcbiAgICAgIC8vICAgZGVzeW5jaHJvbml6ZWQ6IHRydWUsXG4gICAgICAvLyB9KTtcblxuICAgICAgLy8gY29uc3QgY2FudmFzID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY2FudmFzJyk7IC8vIG5lZWRzIGFuIGluaXRpYWwgc2l6ZVxuICAgICAgLy8gY2FudmFzLmhlaWdodCA9IGNhbnZhc1NtYWxTaXplO1xuICAgICAgLy8gY2FudmFzLndpZHRoID0gY2FudmFzU21hbFNpemU7XG5cbiAgICAgIC8vIGNvbnN0IGN0eE86IGFueSA9IGNhbnZhcy5nZXRDb250ZXh0KCcyZCcsIHtcbiAgICAgIC8vICAgYWxwaGE6IGZhbHNlLFxuICAgICAgLy8gICBwb3dlclByZWZlcmVuY2U6ICdoaWdoLXBlcmZvcm1hbmNlJyxcbiAgICAgIC8vICAgYW50aWFsaWFzOiBmYWxzZSxcbiAgICAgIC8vICAgZGVwdGg6IGZhbHNlLFxuICAgICAgLy8gICBkZXN5bmNocm9uaXplZDogdHJ1ZSxcbiAgICAgIC8vIH0pO1xuXG4gICAgICBjb25zdCB7IGN0eCwgY3R4TywgY2FudmFzLCBfY2FudmFzLCBzaXplIH0gPSB0aGlzLmNhbnZhc0RhdGE7XG5cbiAgICAgIGlmIChjdHggJiYgY3R4Tykge1xuICAgICAgICBjdHguaW1hZ2VTbW9vdGhpbmdFbmFibGVkID0gZmFsc2U7XG4gICAgICAgIGNvbnN0IGRyYXdTdGFydCA9IERhdGUubm93KCk7XG4gICAgICAgIGN0eC5jbGVhclJlY3QoMCwgMCwgdmlkZW9XaWR0aCwgdmlkZW9IZWlnaHQpO1xuICAgICAgICBjdHhPLmNsZWFyUmVjdCgwLCAwLCBzaXplLncsIHNpemUuaCk7XG5cbiAgICAgICAgY3R4LmRyYXdJbWFnZSh0aGlzLnZpZGVvLCAwLCAwKTtcbiAgICAgICAgLy9jb25zb2xlLnRpbWUoJ2RyYXdWaWRlbycpO1xuICAgICAgICBjdHhPLmRyYXdJbWFnZShfY2FudmFzLCAwLCAwLCBzaXplLncsIHNpemUuaCk7XG4gICAgICAgIC8vY29uc29sZS50aW1lRW5kKCdkcmF3VmlkZW8nKTtcbiAgICAgICAgLy9jb25zb2xlLnRpbWUoJ0RSQVcnKTtcblxuICAgICAgICAvLyAgY29uc3QgaW1EYXRhOiBhbnkgPSBjdHguZ2V0SW1hZ2VEYXRhKDAsIDAsIHZpZGVvV2lkdGgsIHZpZGVvSGVpZ2h0KTtcblxuICAgICAgICBjb25zb2xlLmxvZyhjYW52YXMud2lkdGgsIF9jYW52YXMud2lkdGgpO1xuICAgICAgICAvL2NvbnNvbGUudGltZUVuZCgnRFJBVycpO1xuXG4gICAgICAgIC8vY29uc29sZS50aW1lKCdDVFgnKTtcblxuICAgICAgICBjb25zdCByZXNpemUgPSBjYW52YXMudG9EYXRhVVJMKCdpbWFnZS9qcGVnJyk7XG5cbiAgICAgICAgY29uc3QgY2FudmFzRGF0YSA9IF9jYW52YXMudG9EYXRhVVJMKG1pbWVUeXBlLCAxKTtcblxuICAgICAgICBjb25zb2xlLmxvZyh0aGlzLmh1bWFuRmlsZVNpemUoY2FudmFzRGF0YS5sZW5ndGgpKTtcbiAgICAgICAgY29uc29sZS5sb2codGhpcy5odW1hbkZpbGVTaXplKHJlc2l6ZS5sZW5ndGgpKTtcbiAgICAgICAgY29uc29sZS5sb2cobmV3IERhdGUoKS50b0lTT1N0cmluZygpKTtcbiAgICAgICAgLy9jb25zb2xlLnRpbWVFbmQoJ0NUWCcpO1xuICAgICAgICBjb25zdCBjdXJyZW50VGltZSA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpO1xuICAgICAgICBjb25zdCBkaWZmID0gY3VycmVudFRpbWUgLSB0aW1lO1xuXG4gICAgICAgIC8vIHRvdGFsIHRpbWUgZm9yIHBhY2sgb25lIGltYWdlXG4gICAgICAgIGNvbnN0IGRyYXdUaW1lID0gRGF0ZS5ub3coKSAtIGRyYXdTdGFydDtcblxuICAgICAgICAvL2NvbnNvbGUud2FybignRFJBVyBUSU1FJywgZHJhd1RpbWUpO1xuICAgICAgICBjb25zdCBkZWxheU1heCA9IGRyYXdUaW1lIDwgNjAgPyAxMDAgOiAyMDA7XG5cbiAgICAgICAgY29uc3QgZGVsYXkgPSBkaWZmID4gZGVsYXlNYXggPyAwIDogZGVsYXlNYXggLSBkaWZmO1xuXG4gICAgICAgIGNvbnN0IHRpbWVvdXQgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICB0aGlzLmltYWdlQ2FwdHVyZS5lbWl0KFxuICAgICAgICAgICAgbmV3IFdlYmNhbUltYWdlKGNhbnZhc0RhdGEsIG1pbWVUeXBlLCAnJywgcmVzaXplKVxuICAgICAgICAgICk7XG4gICAgICAgICAgY2xlYXJUaW1lb3V0KHRpbWVvdXQpO1xuICAgICAgICB9LCBkZWxheSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHN0b3BBbGxUcmFja3MoKSB7XG4gICAgdGhpcy5zaG93VmlkZW8gPSBmYWxzZTtcbiAgICBpZiAodGhpcy5tZWRpYVN0cmVhbSAmJiB0aGlzLm1lZGlhU3RyZWFtLmdldFRyYWNrcykge1xuICAgICAgLy8gZ2V0VHJhY2tzKCkgcmV0dXJucyBhbGwgbWVkaWEgdHJhY2tzICh2aWRlbythdWRpbylcblxuICAgICAgdGhpcy5tZWRpYVN0cmVhbS5nZXRUcmFja3MoKS5mb3JFYWNoKCh0cmFjazogTWVkaWFTdHJlYW1UcmFjaykgPT4ge1xuICAgICAgICAvLyAgY29uc29sZS5sb2codHJhY2spO1xuICAgICAgICB0cmFjay5lbmFibGVkID0gZmFsc2U7XG4gICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICB0cmFjay5zdG9wKCk7XG5cbiAgICAgICAgdGhpcy52aWRlby5zcmNPYmplY3QucmVtb3ZlVHJhY2sodHJhY2spO1xuICAgICAgICB0aGlzLm1lZGlhU3RyZWFtLnJlbW92ZVRyYWNrKHRyYWNrKTtcblxuICAgICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcbiAgICAgIH0pO1xuICAgICAgdGhpcy52aWRlby5zcmNPYmplY3QgPSBudWxsO1xuICAgICAgLy8gdGhpcy52aWRlby5zcmMgPSBudWxsO1xuXG4gICAgICB0aGlzLnZpZGVvLmxvYWQoKTtcbiAgICB9XG4gICAgLy8gdGhpcy5fX3N1YnModGhpcy5zdG9wVmlkZW9UcmFja3MoKSkuc3Vic2NyaWJlKClcbiAgfVxuXG4gIHByaXZhdGUgZHJhd1JlY3RhbmdsZSgpIHtcbiAgICB0aGlzLnpvbmUucnVuKCgpID0+IHtcbiAgICAgIGNvbnN0IF9jYW52YXMgPSB0aGlzLmNhbnZhcy5uYXRpdmVFbGVtZW50O1xuICAgICAgbGV0IHBhZGRpbmcgPSAxMDtcbiAgICAgIGlmICghdGhpcy5pc01vYmlsZSAmJiBfY2FudmFzLndpZHRoICE9PSBfY2FudmFzLmhlaWdodCkge1xuICAgICAgICBwYWRkaW5nID0gNDA7XG4gICAgICB9XG4gICAgICBjb25zdCBjdHggPSBfY2FudmFzLmdldENvbnRleHQoJzJkJyk7XG5cbiAgICAgIGN0eC5jbGVhclJlY3QoMCwgMCwgX2NhbnZhcy53aWR0aCwgX2NhbnZhcy5oZWlnaHQpO1xuXG4gICAgICBjb25zdCB7IHdpZHRoLCBoZWlnaHQgfSA9IF9jYW52YXM7XG5cbiAgICAgIGNvbnNvbGUubG9nKCdDQU5WQVMnLCB3aWR0aCwgaGVpZ2h0KTtcblxuICAgICAgbGV0IHsgdmlkZW9XaWR0aCwgdmlkZW9IZWlnaHQgfSA9IHRoaXMudmlkZW87XG5cbiAgICAgIC8vIHZpZGVvIHdpbGwgYmUgc2NhbGVkIHRvIG1heCBjYW52YXMgaGVpZ2h0XG4gICAgICBjb25zdCBhc3BlY3QgPSB2aWRlb1dpZHRoIC8gdmlkZW9IZWlnaHQ7XG5cbiAgICAgIC8vIGlmICh2aWRlb0hlaWdodCA8IGhlaWdodCkge1xuICAgICAgLy8gICB2aWRlb0hlaWdodCA9IGhlaWdodDtcbiAgICAgIC8vICAgdmlkZW9XaWR0aCA9IGhlaWdodCphc3BlY3Q7XG4gICAgICAvLyB9XG5cbiAgICAgIGNvbnNvbGUubG9nKCdWSURFTycsIHZpZGVvV2lkdGgsIHZpZGVvSGVpZ2h0KTtcblxuICAgICAgY29uc3QgZG9jU2l6ZSA9IHRoaXMudHlwZSA9PT0gJ3NlbGZpZScgPyAxIDogODYgLyA1NTtcblxuICAgICAgbGV0IF9oZWlnaHQ7XG4gICAgICBsZXQgX3dpZHRoO1xuXG4gICAgICBpZiAodmlkZW9XaWR0aCA+PSB2aWRlb0hlaWdodCkge1xuICAgICAgICBfd2lkdGggPSB3aWR0aDtcblxuICAgICAgICBfaGVpZ2h0ID0gX3dpZHRoIC8gYXNwZWN0O1xuXG4gICAgICAgIGlmIChfaGVpZ2h0ID4gaGVpZ2h0KSB7XG4gICAgICAgICAgX2hlaWdodCA9IGhlaWdodDtcbiAgICAgICAgICBfd2lkdGggPSBhc3BlY3QgKiBfaGVpZ2h0O1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBfaGVpZ2h0ID0gaGVpZ2h0O1xuICAgICAgICBfd2lkdGggPSBhc3BlY3QgKiBfaGVpZ2h0O1xuICAgICAgICBpZiAoX3dpZHRoID4gd2lkdGgpIHtcbiAgICAgICAgICBfd2lkdGggPSB3aWR0aDtcbiAgICAgICAgICBfaGVpZ2h0ID0gX3dpZHRoIC8gYXNwZWN0O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGNvbnNvbGUubG9nKCdDQUxDJywgX3dpZHRoLCBfaGVpZ2h0KTtcbiAgICAgIGxldCB3LCBoO1xuXG4gICAgICBpZiAoX3dpZHRoIDw9IF9oZWlnaHQpIHtcbiAgICAgICAgdyA9IF93aWR0aCAtIDIgKiBwYWRkaW5nO1xuICAgICAgICBoID0gdyAvIGRvY1NpemU7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBoID0gX2hlaWdodCAtIDIgKiBwYWRkaW5nO1xuICAgICAgICB3ID0gZG9jU2l6ZSAqIGg7XG4gICAgICB9XG4gICAgICBpZiAodyA+IF93aWR0aCkge1xuICAgICAgICB3ID0gX3dpZHRoIC0gMiAqIHBhZGRpbmc7XG4gICAgICAgIGggPSB3IC8gZG9jU2l6ZTtcbiAgICAgIH1cblxuICAgICAgaCA9IE1hdGguZmxvb3IoaCk7XG4gICAgICB3ID0gTWF0aC5mbG9vcih3KTtcbiAgICAgIGNvbnNvbGUubG9nKHcsIGgpO1xuXG4gICAgICBjb25zdCBsZWZ0ID0gTWF0aC5mbG9vcigod2lkdGggLSB3KSAvIDIpO1xuICAgICAgY29uc3QgdG9wID0gTWF0aC5mbG9vcigoaGVpZ2h0IC0gaCkgLyAyKTtcblxuICAgICAgY3R4LnN0cm9rZVN0eWxlID0gJ3doaXRlJztcblxuICAgICAgLy8gY3R4LnN0cm9rZVJlY3QobGVmdCwgdG9wLCBfd2lkdGgsIF9oZWlnaHQpO1xuICAgICAgY3R4LmZpbGxTdHlsZSA9ICdyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMiknO1xuICAgICAgLy8gY3R4LnNoYWRvd0NvbG9yID0gJ3doaXRlJztcbiAgICAgIGN0eC5zaGFkb3dCbHVyID0gMTU7XG4gICAgICBjdHguYmVnaW5QYXRoKCk7XG5cbiAgICAgIC8vIERyYXcgdXNpbmcgNXB4IGZvciBib3JkZXIgcmFkaXVzIG9uIGFsbCBzaWRlc1xuICAgICAgLy8gc3Ryb2tlIGl0IGJ1dCBubyBmaWxsXG4gICAgICBjb25zdCByYWRpdXMgPSB0aGlzLmlzTW9iaWxlID8gMTAgOiAzMDtcblxuICAgICAgY3R4LnJvdW5kUmVjdChsZWZ0LCB0b3AsIHcsIGgsIHJhZGl1cyk7XG4gICAgICBjdHguc3Ryb2tlKCk7XG4gICAgICBjdHguZmlsbCgpO1xuXG4gICAgICB0aGlzLmNhbWVyYVByb3ZpZGVyLnJlY3RQb3NpdGlvbiA9IHtcbiAgICAgICAgbDogbGVmdCxcbiAgICAgICAgdDogdG9wLFxuICAgICAgICB3LFxuICAgICAgICBoLFxuICAgICAgICBfdzogX3dpZHRoLFxuICAgICAgICBfaDogX2hlaWdodCxcbiAgICAgIH07XG5cbiAgICAgIHRoaXMuc2V0Q2FudmFzKCk7XG4gICAgICAvLyBjdHguc3Ryb2tlKCk7XG4gICAgfSk7XG4gIH1cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy52aWRlby5wYXVzZSgpO1xuXG4gICAgLy8gdGhpcy52aWRlby5nZXRUcmFja3MoKS5mb3JFYWNoKCh0cmFjazogYW55KSA9PiB7XG4gICAgLy8gICB0cmFjay5zdG9wKCk7XG4gICAgLy8gICB0aGlzLnZpZGVvLnNyY09iamVjdC5yZW1vdmVUcmFjayh0cmFjayk7XG4gICAgLy8gfSk7XG5cbiAgICB0aGlzLnN0b3BBbGxUcmFja3MoKTtcblxuICAgIGlmICh0aGlzLnRyaWdnZXJTdWJzY3JpcHRpb24pIHtcbiAgICAgIHRoaXMudHJpZ2dlclN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgIH1cbiAgICB0aGlzLl9fZGVzdHJveSgpO1xuXG4gICAgY29uc29sZS53YXJuKCdbVklERU9dIGRlc3Ryb3llZCcpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwid2ViY2FtLXdyYXBwZXJcIj5cbiAgPHZpZGVvICN2aWRlbyBhdXRvcGxheSBtdXRlZCBzdHlsZT1cImRpc3BsYXk6IGJsb2NrXCIgcGxheXNpbmxpbmU+PC92aWRlbz5cblxuICA8ZGl2IGNsYXNzPVwicmVjdGFuZ2xlXCI+XG4gICAgPGNhbnZhc1xuICAgICAgI2NhbnZhc1xuICAgICAgW25nU3R5bGVdPVwieyB2aXNpYmlsaXR5OiBzaG93VmlkZW8gPyAndmlzaWJsZScgOiAnaGlkZGVuJyB9XCJcbiAgICAgIFt3aWR0aF09XCJ2aWRlby5vZmZzZXRXaWR0aFwiXG4gICAgICBbaGVpZ2h0XT1cInZpZGVvLm9mZnNldEhlaWdodFwiXG4gICAgPjwvY2FudmFzPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNjYW5kb2Mvc3JjL2NvcmUvaW50ZXJmYWNlcy9jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZvcm1seUZpZWxkQ29uZmlnIH0gZnJvbSAnQG5neC1mb3JtbHkvY29yZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXV0aENvbmZpZyB7XG4gIHBhdGg6IHN0cmluZztcbiAgdG9rZW5OYW1lOiBzdHJpbmc7XG4gIGNsaWVudElkOiBzdHJpbmc7XG4gIGxvZ2luPzogc3RyaW5nO1xuICByZWZyZXNoPzogc3RyaW5nO1xuICB2ZXJzaW9uPzogc3RyaW5nO1xuICB2YWxpZERvbWFpbnM/OiBzdHJpbmdbXTtcbn1cbmV4cG9ydCBpbnRlcmZhY2UgU2NhbkNvbmZpZyB7XG4gIGV4dHJhY3Rpb25QYXRoOiBzdHJpbmc7XG4gIHZhbGlkYXRpb25QYXRoOiBzdHJpbmc7XG4gIGVycm9yTG9nZ2luZ1BhdGg6IHN0cmluZztcbiAgc3RhdGVMZXNzUGF0aDogc3RyaW5nO1xuXG4gIGd1ZXN0QWRkUGF0aDogc3RyaW5nO1xuXG4gIGRldmVsb3BtZW50PzogYm9vbGVhbjtcbiAgaGlkZVJlc3VsdHM/OiBib29sZWFuO1xuICBlbmFibGVWZXJpZmljYXRpb246IGJvb2xlYW47XG4gIC8vIFRpbWUgYWZ0ZXIgd2hpY2ggdG8gZGlzcGxheSBtYW51YWwgbW9kZSBpbiBzZWNvbmRzXG4gIG1hbnVhbFNjYW5EZWxheTogbnVtYmVyO1xuICAvLyBTaG93IG1hbnVhbCBtb2RlXG4gIHNob3dNYW51YWxNb2RlPzogYm9vbGVhbjtcblxuICB1c2VUcmFuc2xhdGlvbj86IGJvb2xlYW47XG5cbiAgbWFudWFsTW9kZUVuYWJsZWQ/OiBib29sZWFuO1xuICBmaWVsZHM/OiBGb3JtbHlGaWVsZENvbmZpZ1tdO1xuXG4gIGNhblN0b3JlSW1hZ2VzPzogYm9vbGVhbjtcblxuICBzZW5kTG9nPzogYm9vbGVhbjtcbn1cbmV4cG9ydCBpbnRlcmZhY2UgU2NhbkRhdGFDb25maWcge1xuICBhdXRoOiBBdXRoQ29uZmlnO1xuICBzY2FuOiBTY2FuQ29uZmlnO1xufVxuIl19
|
|
@@ -12,7 +12,7 @@ export class ScanProvider {
|
|
|
12
12
|
this.injector = injector;
|
|
13
13
|
// enableVerification = true;
|
|
14
14
|
this.config = this.injector.get(SCAN_CONFIG_TOKEN);
|
|
15
|
-
this.canStoreImages = this.config.
|
|
15
|
+
this.canStoreImages = this.config.canStoreImages;
|
|
16
16
|
}
|
|
17
17
|
genderList() {
|
|
18
18
|
return {
|
|
@@ -59,11 +59,12 @@ export class ScanProvider {
|
|
|
59
59
|
});
|
|
60
60
|
return $request;
|
|
61
61
|
}
|
|
62
|
-
burst(Images) {
|
|
62
|
+
burst(Images, BlurValues) {
|
|
63
63
|
const data = {
|
|
64
64
|
AcceptTermsAndConditions: true,
|
|
65
65
|
DataFields: {
|
|
66
66
|
Images,
|
|
67
|
+
BlurValues,
|
|
67
68
|
},
|
|
68
69
|
};
|
|
69
70
|
const $request = this.http.post(this.config.validationPath, data);
|
|
@@ -753,4 +754,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
|
|
|
753
754
|
providedIn: 'root',
|
|
754
755
|
}]
|
|
755
756
|
}], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: i0.Injector }]; } });
|
|
756
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nhbi5wcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zY2FuZG9jL3NyYy9wcm92aWRlcnMvc2Nhbi5wcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQVUsVUFBVSxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBRTdELE9BQU8sRUFBRSxVQUFVLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxHQUFHLEVBQWEsTUFBTSxnQkFBZ0IsQ0FBQztBQUNoRCxPQUFPLE1BQU0sTUFBTSxRQUFRLENBQUM7QUFDNUIsT0FBTyxFQUFjLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRy9ELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDOzs7QUFNakUsTUFBTSxPQUFPLFlBQVk7SUFNdkIsWUFDVSxJQUFnQixFQUNoQixRQUFpQjtRQURqQixTQUFJLEdBQUosSUFBSSxDQUFZO1FBQ2hCLGFBQVEsR0FBUixRQUFRLENBQVM7UUFOM0IsNkJBQTZCO1FBRXRCLFdBQU0sR0FBYSxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQy9ELG1CQUFjLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUM7SUFNdEMsQ0FBQztJQUNKLFVBQVU7UUFDUixPQUFPO1lBQ0wsQ0FBQyxFQUFFLE1BQU07WUFDVCxLQUFLLEVBQUUsTUFBTTtZQUNiLENBQUMsRUFBRSxRQUFRO1lBQ1gsS0FBSyxFQUFFLFFBQVE7U0FDaEIsQ0FBQztJQUNKLENBQUM7SUFFRCxJQUFJLGtCQUFrQjtRQUNwQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsa0JBQWtCLENBQUM7SUFDeEMsQ0FBQztJQUNELFFBQVEsQ0FBQyxTQUFvQjtRQUMzQixNQUFNLElBQUksR0FBRztZQUNYLHdCQUF3QixFQUFFLElB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QUU7WUFDakMsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUU7WUFDaEMsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUU7WUFDaEMsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUU7WUFDL0IsRUFBRSxLQUFLLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUU7WUFDcEMsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUU7WUFDL0IsRUFBRSxLQUFLLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUU7WUFDcEMsRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUU7WUFDbEMsRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUU7WUFDbEMsRUFBRSxLQUFLLEVBQUUsdUJBQXVCLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRTtZQUMvQyxFQUFFLEtBQUssRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRTtZQUNyQyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRTtZQUNoQyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRTtZQUM5QixFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRTtZQUNqQyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRTtZQUNqQyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRTtZQUMvQixFQUFFLEtBQUssRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRTtZQUNyQyxFQUFFLEtBQUssRUFBRSxlQUFlLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRTtZQUN2QyxFQUFFLEtBQUssRUFBRSxXQUFXLEVB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QUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxH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Q0osQ0FBQztJQUVELGFBQWEsQ0FBQyxJQUFTO1FBQ3JCLE9BQU8sVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQVEsRUFBRSxFQUFFO1lBQ3BDLE1BQU0sTUFBTSxHQUFHLElBQUksVUFBVSxFQUFFLENBQUM7WUFDaEMsTUFBTSxDQUFDLE9BQU8sR0FBRyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUN6QyxNQUFNLENBQUMsT0FBTyxHQUFHLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3pDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsR0FBRyxFQUFFO2dCQUNuQixHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUMxQixDQUFDLENBQUM7WUFDRixNQUFNLENBQUMsU0FBUyxHQUFHLEdBQUcsRUFBRSxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUN4QyxPQUFPLE1BQU0sQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDcEMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOzt5R0Fyd0JVLFlBQVk7NkdBQVosWUFBWSxjQUZYLE1BQU07MkZBRVAsWUFBWTtrQkFIeEIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUsIEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCBtb21lbnQgZnJvbSAnbW9tZW50JztcbmltcG9ydCB7IEh0dHBDbGllbnQsIEh0dHBIZWFkZXJzIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgU2NhbkNvbmZpZyB9IGZyb20gJy4uL2NvcmUvaW50ZXJmYWNlcy9jb25maWcnO1xuaW1wb3J0IHsgR3Vlc3REYXRhIH0gZnJvbSAnLi4vY29yZS9pbnRlcmZhY2VzL2d1ZXN0LmRhdGEnO1xuaW1wb3J0IHsgU0NBTl9DT05GSUdfVE9LRU4gfSBmcm9tICcuLi9jb3JlL3Rva2Vucy9jb25maWcudG9rZW5zJztcblxuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgU2NhblByb3ZpZGVyIHtcbiAgY291bnRyaWVzRGF0YTogYW55O1xuICAvLyBlbmFibGVWZXJpZmljYXRpb24gPSB0cnVlO1xuXG4gIHB1YmxpYyBjb25maWc6IFNjYW5Db25maWc9dGhpcy5pbmplY3Rvci5nZXQoU0NBTl9DT05GSUdfVE9LRU4pO1xuICBjYW5TdG9yZUltYWdlcyA9IHRoaXMuY29uZmlnLmRldmVsb3BtZW50O1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsXG4gICAgcHJpdmF0ZSBpbmplY3RvcjpJbmplY3RvclxuXG5cbiAgKSB7fVxuICBnZW5kZXJMaXN0KCkge1xuICAgIHJldHVybiB7XG4gICAgICBNOiAnTUFMRScsXG4gICAgICAnTS9NJzogJ01BTEUnLFxuICAgICAgRjogJ0ZFTUFMRScsXG4gICAgICAnRi9GJzogJ0ZFTUFMRScsXG4gICAgfTtcbiAgfVxuXG4gIGdldCBlbmFibGVWZXJpZmljYXRpb24oKSB7XG4gICAgcmV0dXJuIHRoaXMuY29uZmlnLmVuYWJsZVZlcmlmaWNhdGlvbjtcbiAgfVxuICBhZGRHdWVzdChndWVzdERhdGE6IEd1ZXN0RGF0YSkge1xuICAgIGNvbnN0IGRhdGEgPSB7XG4gICAgICBBY2NlcHRUZXJtc0FuZENvbmRpdGlvbnM6IHRydWUsXG4gICAgICBEYXRhRmllbGRzOiB7XG4gICAgICAgIEd1ZXN0SW1hZ2VUeXBlOiAnYmFzZTY0JyxcbiAgICAgICAgLi4uZ3Vlc3REYXRhLFxuICAgICAgfSxcbiAgICAgIFNldHRpbmdzOiB7fSxcbiAgICB9O1xuICAgIGNvbnN0ICRyZXF1ZXN0ID0gdGhpcy5odHRwLnB1dChcbiAgICAgIHRoaXMuY29uZmlnLmd1ZXN0QWRkUGF0aCxcbiAgICAgIGRhdGEsXG4gICAgKTtcbiAgICByZXR1cm4gJHJlcXVlc3Q7XG4gIH1cblxuXG4gIHN0YXRlbGVzcyhEb2N1bWVudEZhY2VJbWFnZTogYW55LCBMaXZlRmFjZUltYWdlOiBhbnkpIHtcbiAgICBjb25zdCBkYXRhID0ge1xuICAgICAgQWNjZXB0VGVybXNBbmRDb25kaXRpb25zOiB0cnVlLFxuICAgICAgRGF0YUZpZWxkczoge1xuICAgICAgICBEb2N1bWVudEZhY2VJbWFnZVR5cGU6ICdiYXNlNjQnLFxuICAgICAgICBEb2N1bWVudEZhY2VJbWFnZSxcbiAgICAgICAgTGl2ZUZhY2VJbWFnZVR5cGU6ICdiYXNlNjQnLFxuICAgICAgICBMaXZlRmFjZUltYWdlLFxuICAgICAgfSxcbiAgICB9O1xuICAgIGNvbnN0ICRyZXF1ZXN0ID0gdGhpcy5odHRwLnBvc3QodGhpcy5jb25maWcuc3RhdGVMZXNzUGF0aCwgZGF0YSk7XG4gICAgcmV0dXJuICRyZXF1ZXN0O1xuICB9XG5cbiAgc2VuZExvZyhkYXRhOiBhbnkpIHtcbiAgICBjb25zdCB7IFRyYW5zYWN0aW9uSUQgfSA9IGRhdGEuUmVzcG9uc2U7XG4gICAgY29uc3QgJHJlcXVlc3QgPSB0aGlzLmh0dHAucG9zdCh0aGlzLmNvbmZpZy5lcnJvckxvZ2dpbmdQYXRoLCBkYXRhLCB7XG4gICAgICBoZWFkZXJzOiBuZXcgSHR0cEhlYWRlcnMoe1xuICAgICAgICBUcmFuc2FjdGlvbklELFxuICAgICAgfSksXG4gICAgfSk7XG4gICAgcmV0dXJuICRyZXF1ZXN0O1xuICB9XG5cbiAgYnVyc3QoSW1hZ2VzOiBzdHJpbmdbXSkge1xuICAgIGNvbnN0IGRhdGEgPSB7XG4gICAgICBBY2NlcHRUZXJtc0FuZENvbmRpdGlvbnM6IHRydWUsXG4gICAgICBEYXRhRmllbGRzOiB7XG4gICAgICAgIEltYWdlcyxcbiAgICAgIH0sXG4gICAgfTtcblxuICAgIGNvbnN0ICRyZXF1ZXN0ID0gdGhpcy5odHRwLnBvc3QodGhpcy5jb25maWcudmFsaWRhdGlvblBhdGgsIGRhdGEpO1xuICAgIHJldHVybiAkcmVxdWVzdDtcbiAgfVxuXG4gIGNvdW50cmllcygpIHtcbiAgICBpZiAodGhpcy5jb3VudHJ5TmFtZXMpIHtcbiAgICAgIHJldHVybiBvZih0aGlzLmNvdW50cnlOYW1lcyk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KCcvYXNzZXRzL2RhdGEvY291bnRyaWVzMi5qc29uJykucGlwZShcbiAgICAgIG1hcCgoZGF0YTogYW55KSA9PiB7XG4gICAgICAgIHRoaXMuY291bnRyaWVzRGF0YSA9IGRhdGEuZGF0YTtcbiAgICAgICAgcmV0dXJuIHRoaXMuY291bnRyaWVzRGF0YTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIGdldCBjb3VudHJ5TmFtZXMoKSB7XG4gICAgcmV0dXJuIFtcbiAgICAgIHsgbGFiZWw6ICdBcnViYScsIHZhbHVlOiAnQVcnIH0sXG4gICAgICB7IGxhYmVsOiAnQWZnaGFuaXN0YW4nLCB2YWx1ZTogJ0FGJyB9LFxuICAgICAgeyBsYWJlbDogJ0FuZ29sYScsIHZhbHVlOiAnQU8nIH0sXG4gICAgICB7IGxhYmVsOiAnQW5ndWlsbGEnLCB2YWx1ZTogJ0FJJyB9LFxuICAgICAgeyBsYWJlbDogJ8OFbGFuZCBJc2xhbmRzJywgdmFsdWU6ICdBWCcgfSxcbiAgICAgIHsgbGFiZWw6ICdBbGJhbmlhJywgdmFsdWU6ICdBTCcgfSxcbiAgICAgIHsgbGFiZWw6ICdBbmRvcnJhJywgdmFsdWU6ICdBRCcgfSxcbiAgICAgIHsgbGFiZWw6ICdVbml0ZWQgQXJhYiBFbWlyYXRlcycsIHZhbHVlOiAnQUUnIH0sXG4gICAgICB7IGxhYmVsOiAnQXJnZW50aW5hJywgdmFsdWU6ICdBUicgfSxcbiAgICAgIHsgbGFiZWw6ICdBcm1lbmlhJywgdmFsdWU6ICdBTScgfSxcbiAgICAgIHsgbGFiZWw6ICdBbWVyaWNhbiBTYW1vYScsIHZhbHVlOiAnQVMnIH0sXG4gICAgICB7IGxhYmVsOiAnQW50YXJjdGljYScsIHZhbHVlOiAnQVEnIH0sXG4gICAgICB7IGxhYmVsOiAnRnJlbmNoIFNvdXRoZXJuIGFuZCBBbnRhcmN0aWMgTGFuZHMnLCB2YWx1ZTogJ1RGJyB9LFxuICAgICAgeyBsYWJlbDogJ0FudGlndWEgYW5kIEJhcmJ1ZGEnLCB2YWx1ZTogJ0FHJyB9LFxuICAgICAgeyBsYWJlbDogJ0F1c3RyYWxpYScsIHZhbHVlOiAnQVUnIH0sXG4gICAgICB7IGxhYmVsOiAnQXVzdHJpYScsIHZhbHVlOiAnQVQnIH0sXG4gICAgICB7IGxhYmVsOiAnQXplcmJhaWphbicsIHZhbHVlOiAnQVonIH0sXG4gICAgICB7IGxhYmVsOiAnQnVydW5kaScsIHZhbHVlOiAnQkknIH0sXG4gICAgICB7IGxhYmVsOiAnQmVsZ2l1bScsIHZhbHVlOiAnQkUnIH0sXG4gICAgICB7IGxhYmVsOiAnQmVuaW4nLCB2YWx1ZTogJ0JKJyB9LFxuICAgICAgeyBsYWJlbDogJ0J1cmtpbmEgRmFzbycsIHZhbHVlOiAnQkYnIH0sXG4gICAgICB7IGxhYmVsOiAnQmFuZ2xhZGVzaCcsIHZhbHVlOiAnQkQnIH0sXG4gICAgICB7IGxhYmVsOiAnQnVsZ2FyaWEnLCB2YWx1ZTogJ0JHJyB9LFxuICAgICAgeyBsYWJlbDogJ0JhaHJhaW4nLCB2YWx1ZTogJ0JIJyB9LFxuICAgICAgeyBsYWJlbDogJ0JhaGFtYXMnLCB2YWx1ZTogJ0JTJyB9LFxuICAgICAgeyBsYWJlbDogJ0Jvc25pYSBhbmQgSGVyemVnb3ZpbmEnLCB2YWx1ZTogJ0JBJyB9LFxuICAgICAgeyBsYWJlbDogJ1NhaW50IEJhcnRow6lsZW15JywgdmFsdWU6ICdCTCcgfSxcbiAgICAgIHsgbGFiZWw6ICdTYWludCBIZWxlbmEsIEFzY2Vuc2lvbiBhbmQgVHJpc3RhbiBkYSBDdW5oYScsIHZhbHVlOiAnU0gnIH0sXG4gICAgICB7IGxhYmVsOiAnQmVsYXJ1cycsIHZhbHVlOiAnQlknIH0sXG4gICAgICB7IGxhYmVsOiAnQmVsaXplJywgdmFsdWU6ICdCWicgfSxcbiAgICAgIHsgbGFiZWw6ICdCZXJtdWRhJywgdmFsdWU6ICdCTScgfSxcbiAgICAgIHsgbGFiZWw6ICdCb2xpdmlhJywgdmFsdWU6ICdCTycgfSxcbiAgICAgIHsgbGFiZWw6ICdDYXJpYmJlYW4gTmV0aGVybGFuZHMnLCB2YWx1ZTogJ0JRJyB9LFxuICAgICAgeyBsYWJlbDogJ0JyYXppbCcsIHZhbHVlOiAnQlInIH0sXG4gICAgICB7IGxhYmVsOiAnQmFyYmFkb3MnLCB2YWx1ZTogJ0JCJyB9LFxuICAgICAgeyBsYWJlbDogJ0JydW5laScsIHZhbHVlOiAnQk4nIH0sXG4gICAgICB7IGxhYmVsOiAnQmh1dGFuJywgdmFsdWU6ICdCVCcgfSxcbiAgICAgIHsgbGFiZWw6ICdCb3V2ZXQgSXNsYW5kJywgdmFsdWU6ICdCVicgfSxcbiAgICAgIHsgbGFiZWw6ICdCb3Rzd2FuYScsIHZhbHVlOiAnQlcnIH0sXG4gICAgICB7IGxhYmVsOiAnQ2VudHJhbCBBZnJpY2FuIFJlcHVibGljJywgdmFsdWU6ICdDRicgfSxcbiAgICAgIHsgbGFiZWw6ICdDYW5hZGEnLCB2YWx1ZTogJ0NBJyB9LFxuICAgICAgeyBsYWJlbDogJ0NvY29zIChLZWVsaW5nKSBJc2xhbmRzJywgdmFsdWU6ICdDQycgfSxcbiAgICAgIHsgbGFiZWw6ICdTd2l0emVybGFuZCcsIHZhbHVlOiAnQ0gnIH0sXG4gICAgICB7IGxhYmVsOiAnQ2hpbGUnLCB2YWx1ZTogJ0NMJyB9LFxuICAgICAgeyBsYWJlbDogJ0NoaW5hJywgdmFsdWU6ICdDTicgfSxcbiAgICAgIHsgbGFiZWw6ICdJdm9yeSBDb2FzdCcsIHZhbHVlOiAnQ0knIH0sXG4gICAgICB7IGxhYmVsOiAnQ2FtZXJvb24nLCB2YWx1ZTogJ0NNJyB9LFxuICAgICAgeyBsYWJlbDogJ0RSIENvbmdvJywgdmFsdWU6ICdDRCcgfSxcbiAgICAgIHsgbGFiZWw6ICdSZXB1YmxpYyBvZiB0aGUgQ29uZ28nLCB2YWx1ZTogJ0NHJyB9LFxuICAgICAgeyBsYWJlbDogJ0Nvb2sgSXNsYW5kcycsIHZhbHVlOiAnQ0snIH0sXG4gICAgICB7IGxhYmVsOiAnQ29sb21iaWEnLCB2YWx1ZTogJ0NPJyB9LFxuICAgICAgeyBsYWJlbDogJ0NvbW9yb3MnLCB2YWx1ZTogJ0tNJyB9LFxuICAgICAgeyBsYWJlbDogJ0NhcGUgVmVyZGUnLCB2YWx1ZTogJ0NWJyB9LFxuICAgICAgeyBsYWJlbDogJ0Nvc3RhIFJpY2EnLCB2YWx1ZTogJ0NSJyB9LFxuICAgICAgeyBsYWJlbDogJ0N1YmEnLCB2YWx1ZTogJ0NVJyB9LFxuICAgICAgeyBsYWJlbDogJ0N1cmHDp2FvJywgdmFsdWU6ICdDVycgfSxcbiAgICAgIHsgbGFiZWw6ICdDaHJpc3RtYXMgSXNsYW5kJywgdmFsdWU6ICdDWCcgfSxcbiAgICAgIHsgbGFiZWw6ICdDYXltYW4gSXNsYW5kcycsIHZhbHVlOiAnS1knIH0sXG4gICAgICB7IGxhYmVsOiAnQ3lwcnVzJywgdmFsdWU6ICdDWScgfSxcbiAgICAgIHsgbGFiZWw6ICdDemVjaGlhJywgdmFsdWU6ICdDWicgfSxcbiAgICAgIHsgbGFiZWw6ICdHZXJtYW55JywgdmFsdWU6ICdERScgfSxcbiAgICAgIHsgbGFiZWw6ICdEamlib3V0aScsIHZhbHVlOiAnREonIH0sXG4gICAgICB7IGxhYmVsOiAnRG9taW5pY2EnLCB2YWx1ZTogJ0RNJyB9LFxuICAgICAgeyBsYWJlbDogJ0Rlbm1hcmsnLCB2YWx1ZTogJ0RLJyB9LFxuICAgICAgeyBsYWJlbDogJ0RvbWluaWNhbiBSZXB1YmxpYycsIHZhbHVlOiAnRE8nIH0sXG4gICAgICB7IGxhYmVsOiAnQWxnZXJpYScsIHZhbHVlOiAnRFonIH0sXG4gICAgICB7IGxhYmVsOiAnRWN1YWRvcicsIHZhbHVlOiAnRUMnIH0sXG4gICAgICB7IGxhYmVsOiAnRWd5cHQnLCB2YWx1ZTogJ0VHJyB9LFxuICAgICAgeyBsYWJlbDogJ0VyaXRyZWEnLCB2YWx1ZTogJ0VSJyB9LFxuICAgICAgeyBsYWJlbDogJ1dlc3Rlcm4gU2FoYXJhJywgdmFsdWU6ICdFSCcgfSxcbiAgICAgIHsgbGFiZWw6ICdTcGFpbicsIHZhbHVlOiAnRVMnIH0sXG4gICAgICB7IGxhYmVsOiAnRXN0b25pYScsIHZhbHVlOiAnRUUnIH0sXG4gICAgICB7IGxhYmVsOiAnRXRoaW9waWEnLCB2YWx1ZTogJ0VUJyB9LFxuICAgICAgeyBsYWJlbDogJ0ZpbmxhbmQnLCB2YWx1ZTogJ0ZJJyB9LFxuICAgICAgeyBsYWJlbDogJ0ZpamknLCB2YWx1ZTogJ0ZKJyB9LFxuICAgICAgeyBsYWJlbDogJ0ZhbGtsYW5kIElzbGFuZHMnLCB2YWx1ZTogJ0ZLJyB9LFxuICAgICAgeyBsYWJlbDogJ0ZyYW5jZScsIHZhbHVlOiAnRlInIH0sXG4gICAgICB7IGxhYmVsOiAnRmFyb2UgSXNsYW5kcycsIHZhbHVlOiAnRk8nIH0sXG4gICAgICB7IGxhYmVsOiAnTWljcm9uZXNpYScsIHZhbHVlOiAnRk0nIH0sXG4gICAgICB7IGxhYmVsOiAnR2Fib24nLCB2YWx1ZTogJ0dBJyB9LFxuICAgICAgeyBsYWJlbDogJ1VuaXRlZCBLaW5nZG9tJywgdmFsdWU6ICdHQicgfSxcbiAgICAgIHsgbGFiZWw6ICdHZW9yZ2lhJywgdmFsdWU6ICdHRScgfSxcbiAgICAgIHsgbGFiZWw6ICdHdWVybnNleScsIHZhbHVlOiAnR0cnIH0sXG4gICAgICB7IGxhYmVsOiAnR2hhbmEnLCB2YWx1ZTogJ0dIJyB9LFxuICAgICAgeyBsYWJlbDogJ0dpYnJhbHRhcicsIHZhbHVlOiAnR0knIH0sXG4gICAgICB7IGxhYmVsOiAnR3VpbmVhJywgdmFsdWU6ICdHTicgfSxcbiAgICAgIHsgbGFiZWw6ICdHdWFkZWxvdXBlJywgdmFsdWU6ICdHUCcgfSxcbiAgICAgIHsgbGFiZWw6ICdHYW1iaWEnLCB2YWx1ZTogJ0dNJyB9LFxuICAgICAgeyBsYWJlbDogJ0d1aW5lYS1CaXNzYXUnLCB2YWx1ZTogJ0dXJyB9LFxuICAgICAgeyBsYWJlbDogJ0VxdWF0b3JpYWwgR3VpbmVhJywgdmFsdWU6ICdHUScgfSxcbiAgICAgIHsgbGFiZWw6ICdHcmVlY2UnLCB2YWx1ZTogJ0dSJyB9LFxuICAgICAgeyBsYWJlbDogJ0dyZW5hZGEnLCB2YWx1ZTogJ0dEJyB9LFxuICAgICAgeyBsYWJlbDogJ0dyZWVubGFuZCcsIHZhbHVlOiAnR0wnIH0sXG4gICAgICB7IGxhYmVsOiAnR3VhdGVtYWxhJywgdmFsdWU6ICdHVCcgfSxcbiAgICAgIHsgbGFiZWw6ICdGcmVuY2ggR3VpYW5hJywgdmFsdWU6ICdHRicgfSxcbiAgICAgIHsgbGFiZWw6ICdHdWFtJywgdmFsdWU6ICdHVScgfSxcbiAgICAgIHsgbGFiZWw6ICdHdXlhbmEnLCB2YWx1ZTogJ0dZJyB9LFxuICAgICAgeyBsYWJlbDogJ0hvbmcgS29uZycsIHZhbHVlOiAnSEsnIH0sXG4gICAgICB7IGxhYmVsOiAnSGVhcmQgSXNsYW5kIGFuZCBNY0RvbmFsZCBJc2xhbmRzJywgdmFsdWU6ICdITScgfSxcbiAgICAgIHsgbGFiZWw6ICdIb25kdXJhcycsIHZhbHVlOiAnSE4nIH0sXG4gICAgICB7IGxhYmVsOiAnQ3JvYXRpYScsIHZhbHVlOiAnSFInIH0sXG4gICAgICB7IGxhYmVsOiAnSGFpdGknLCB2YWx1ZTogJ0hUJyB9LFxuICAgICAgeyBsYWJlbDogJ0h1bmdhcnknLCB2YWx1ZTogJ0hVJyB9LFxuICAgICAgeyBsYWJlbDogJ0luZG9uZXNpYScsIHZhbHVlOiAnSUQnIH0sXG4gICAgICB7IGxhYmVsOiAnSXNsZSBvZiBNYW4nLCB2YWx1ZTogJ0lNJyB9LFxuICAgICAgeyBsYWJlbDogJ0luZGlhJywgdmFsdWU6ICdJTicgfSxcbiAgICAgIHsgbGFiZWw6ICdCcml0aXNoIEluZGlhbiBPY2VhbiBUZXJyaXRvcnknLCB2YWx1ZTogJ0lPJyB9LFxuICAgICAgeyBsYWJlbDogJ0lyZWxhbmQnLCB2YWx1ZTogJ0lFJyB9LFxuICAgICAgeyBsYWJlbDogJ0lyYW4nLCB2YWx1ZTogJ0lSJyB9LFxuICAgICAgeyBsYWJlbDogJ0lyYXEnLCB2YWx1ZTogJ0lRJyB9LFxuICAgICAgeyBsYWJlbDogJ0ljZWxhbmQnLCB2YWx1ZTogJ0lTJyB9LFxuICAgICAgeyBsYWJlbDogJ0lzcmFlbCcsIHZhbHVlOiAnSUwnIH0sXG4gICAgICB7IGxhYmVsOiAnSXRhbHknLCB2YWx1ZTogJ0lUJyB9LFxuICAgICAgeyBsYWJlbDogJ0phbWFpY2EnLCB2YWx1ZTogJ0pNJyB9LFxuICAgICAgeyBsYWJlbDogJ0plcnNleScsIHZhbHVlOiAnSkUnIH0sXG4gICAgICB7IGxhYmVsOiAnSm9yZGFuJywgdmFsdWU6ICdKTycgfSxcbiAgICAgIHsgbGFiZWw6ICdKYXBhbicsIHZhbHVlOiAnSlAnIH0sXG4gICAgICB7IGxhYmVsOiAnS2F6YWtoc3RhbicsIHZhbHVlOiAnS1onIH0sXG4gICAgICB7IGxhYmVsOiAnS2VueWEnLCB2YWx1ZTogJ0tFJyB9LFxuICAgICAgeyBsYWJlbDogJ0t5cmd5enN0YW4nLCB2YWx1ZTogJ0tHJyB9LFxuICAgICAgeyBsYWJlbDogJ0NhbWJvZGlhJywgdmFsdWU6ICdLSCcgfSxcbiAgICAgIHsgbGFiZWw6ICdLaXJpYmF0aScsIHZhbHVlOiAnS0knIH0sXG4gICAgICB7IGxhYmVsOiAnU2FpbnQgS2l0dHMgYW5kIE5ldmlzJywgdmFsdWU6ICdLTicgfSxcbiAgICAgIHsgbGFiZWw6ICdTb3V0aCBLb3JlYScsIHZhbHVlOiAnS1InIH0sXG4gICAgICB7IGxhYmVsOiAnS3V3YWl0JywgdmFsdWU6ICdLVycgfSxcbiAgICAgIHsgbGFiZWw6ICdMYW9zJywgdmFsdWU6ICdMQScgfSxcbiAgICAgIHsgbGFiZWw6ICdMZWJhbm9uJywgdmFsdWU6ICdMQicgfSxcbiAgICAgIHsgbGFiZWw6ICdMaWJlcmlhJywgdmFsdWU6ICdMUicgfSxcbiAgICAgIHsgbGFiZWw6ICdMaWJ5YScsIHZhbHVlOiAnTFknIH0sXG4gICAgICB7IGxhYmVsOiAnU2FpbnQgTHVjaWEnLCB2YWx1ZTogJ0xDJyB9LFxuICAgICAgeyBsYWJlbDogJ0xpZWNodGVuc3RlaW4nLCB2YWx1ZTogJ0xJJyB9LFxuICAgICAgeyBsYWJlbDogJ1NyaSBMYW5rYScsIHZhbHVlOiAnTEsnIH0sXG4gICAgICB7IGxhYmVsOiAnTGVzb3RobycsIHZhbHVlOiAnTFMnIH0sXG4gICAgICB7IGxhYmVsOiAnTGl0aHVhbmlhJywgdmFsdWU6ICdMVCcgfSxcbiAgICAgIHsgbGFiZWw6ICdMdXhlbWJvdXJnJywgdmFsdWU6ICdMVScgfSxcbiAgICAgIHsgbGFiZWw6ICdMYXR2aWEnLCB2YWx1ZTogJ0xWJyB9LFxuICAgICAgeyBsYWJlbDogJ01hY2F1JywgdmFsdWU6ICdNTycgfSxcbiAgICAgIHsgbGFiZWw6ICdTYWludCBNYXJ0aW4nLCB2YWx1ZTogJ01GJyB9LFxuICAgICAgeyBsYWJlbDogJ01vcm9jY28nLCB2YWx1ZTogJ01BJyB9LFxuICAgICAgeyBsYWJlbDogJ01vbmFjbycsIHZhbHVlOiAnTUMnIH0sXG4gICAgICB7IGxhYmVsOiAnTW9sZG92YScsIHZhbHVlOiAnTUQnIH0sXG4gICAgICB7IGxhYmVsOiAnTWFkYWdhc2NhcicsIHZhbHVlOiAnTUcnIH0sXG4gICAgICB7IGxhYmVsOiAnTWFsZGl2ZXMnLCB2YWx1ZTogJ01WJyB9LFxuICAgICAgeyBsYWJlbDogJ01leGljbycsIHZhbHVlOiAnTVgnIH0sXG4gICAgICB7IGxhYmVsOiAnTWFyc2hhbGwgSXNsYW5kcycsIHZhbHVlOiAnTUgnIH0sXG4gICAgICB7IGxhYmVsOiAnTWFjZWRvbmlhJywgdmFsdWU6ICdNSycgfSxcbiAgICAgIHsgbGFiZWw6ICdNYWxpJywgdmFsdWU6ICdNTCcgfSxcbiAgICAgIHsgbGFiZWw6ICdNYWx0YScsIHZhbHVlOiAnTVQnIH0sXG4gICAgICB7IGxhYmVsOiAnTXlhbm1hcicsIHZhbHVlOiAnTU0nIH0sXG4gICAgICB7IGxhYmVsOiAnTW9udGVuZWdybycsIHZhbHVlOiAnTUUnIH0sXG4gICAgICB7IGxhYmVsOiAnTW9uZ29saWEnLCB2YWx1ZTogJ01OJyB9LFxuICAgICAgeyBsYWJlbDogJ05vcnRoZXJuIE1hcmlhbmEgSXNsYW5kcycsIHZhbHVlOiAnTVAnIH0sXG4gICAgICB7IGxhYmVsOiAnTW96YW1iaXF1ZScsIHZhbHVlOiAnTVonIH0sXG4gICAgICB7IGxhYmVsOiAnTWF1cml0YW5pYScsIHZhbHVlOiAnTVInIH0sXG4gICAgICB7IGxhYmVsOiAnTW9udHNlcnJhdCcsIHZhbHVlOiAnTVMnIH0sXG4gICAgICB7IGxhYmVsOiAnTWFydGluaXF1ZScsIHZhbHVlOiAnTVEnIH0sXG4gICAgICB7IGxhYmVsOiAnTWF1cml0aXVzJywgdmFsdWU6ICdNVScgfSxcbiAgICAgIHsgbGFiZWw6ICdNYWxhd2knLCB2YWx1ZTogJ01XJyB9LFxuICAgICAgeyBsYWJlbDogJ01hbGF5c2lhJywgdmFsdWU6ICdNWScgfSxcbiAgICAgIHsgbGFiZWw6ICdNYXlvdHRlJywgdmFsdWU6ICdZVCcgfSxcbiAgICAgIHsgbGFiZWw6ICdOYW1pYmlhJywgdmFsdWU6ICdOQScgfSxcbiAgICAgIHsgbGFiZWw6ICdOZXcgQ2FsZWRvbmlhJywgdmFsdWU6ICdOQycgfSxcbiAgICAgIHsgbGFiZWw6ICdOaWdlcicsIHZhbHVlOiAnTkUnIH0sXG4gICAgICB7IGxhYmVsOiAnTm9yZm9sayBJc2xhbmQnLCB2YWx1ZTogJ05GJyB9LFxuICAgICAgeyBsYWJlbDogJ05pZ2VyaWEnLCB2YWx1ZTogJ05HJyB9LFxuICAgICAgeyBsYWJlbDogJ05pY2FyYWd1YScsIHZhbHVlOiAnTkknIH0sXG4gICAgICB7IGxhYmVsOiAnTml1ZScsIHZhbHVlOiAnTlUnIH0sXG4gICAgICB7IGxhYmVsOiAnTmV0aGVybGFuZHMnLCB2YWx1ZTogJ05MJyB9LFxuICAgICAgeyBsYWJlbDogJ05vcndheScsIHZhbHVlOiAnTk8nIH0sXG4gICAgICB7IGxhYmVsOiAnTmVwYWwnLCB2YWx1ZTogJ05QJyB9LFxuICAgICAgeyBsYWJlbDogJ05hdXJ1JywgdmFsdWU6ICdOUicgfSxcbiAgICAgIHsgbGFiZWw6ICdOZXcgWmVhbGFuZCcsIHZhbHVlOiAnTlonIH0sXG4gICAgICB7IGxhYmVsOiAnT21hbicsIHZhbHVlOiAnT00nIH0sXG4gICAgICB7IGxhYmVsOiAnUGFraXN0YW4nLCB2YWx1ZTogJ1BLJyB9LFxuICAgICAgeyBsYWJlbDogJ1BhbmFtYScsIHZhbHVlOiAnUEEnIH0sXG4gICAgICB7IGxhYmVsOiAnUGl0Y2Fpcm4gSXNsYW5kcycsIHZhbHVlOiAnUE4nIH0sXG4gICAgICB7IGxhYmVsOiAnUGVydScsIHZhbHVlOiAnUEUnIH0sXG4gICAgICB7IGxhYmVsOiAnUGhpbGlwcGluZXMnLCB2YWx1ZTogJ1BIJyB9LFxuICAgICAgeyBsYWJlbDogJ1BhbGF1JywgdmFsdWU6ICdQVycgfSxcbiAgICAgIHsgbGFiZWw6ICdQYXB1YSBOZXcgR3VpbmVhJywgdmFsdWU6ICdQRycgfSxcbiAgICAgIHsgbGFiZWw6ICdQb2xhbmQnLCB2YWx1ZTogJ1BMJyB9LFxuICAgICAgeyBsYWJlbDogJ1B1ZXJ0byBSaWNvJywgdmFsdWU6ICdQUicgfSxcbiAgICAgIHsgbGFiZWw6ICdOb3J0aCBLb3JlYScsIHZhbHVlOiAnS1AnIH0sXG4gICAgICB7IGxhYmVsOiAnUG9ydHVnYWwnLCB2YWx1ZTogJ1BUJyB9LFxuICAgICAgeyBsYWJlbDogJ1BhcmFndWF5JywgdmFsdWU6ICdQWScgfSxcbiAgICAgIHsgbGFiZWw6ICdQYWxlc3RpbmUnLCB2YWx1ZTogJ1BTJyB9LFxuICAgICAgeyBsYWJlbDogJ0ZyZW5jaCBQb2x5bmVzaWEnLCB2YWx1ZTogJ1BGJyB9LFxuICAgICAgeyBsYWJlbDogJ1FhdGFyJywgdmFsdWU6ICdRQScgfSxcbiAgICAgIHsgbGFiZWw6ICdSw6l1bmlvbicsIHZhbHVlOiAnUkUnIH0sXG4gICAgICB7IGxhYmVsOiAnUm9tYW5pYScsIHZhbHVlOiAnUk8nIH0sXG4gICAgICB7IGxhYmVsOiAnUnVzc2lhJywgdmFsdWU6ICdSVScgfSxcbiAgICAgIHsgbGFiZWw6ICdSd2FuZGEnLCB2YWx1ZTogJ1JXJyB9LFxuICAgICAgeyBsYWJlbDogJ1NhdWRpIEFyYWJpYScsIHZhbHVlOiAnU0EnIH0sXG4gICAgICB7IGxhYmVsOiAnU3VkYW4nLCB2YWx1ZTogJ1NEJyB9LFxuICAgICAgeyBsYWJlbDogJ1NlbmVnYWwnLCB2YWx1ZTogJ1NOJyB9LFxuICAgICAgeyBsYWJlbDogJ1NpbmdhcG9yZScsIHZhbHVlOiAnU0cnIH0sXG4gICAgICB7IGxhYmVsOiAnU291dGggR2VvcmdpYScsIHZhbHVlOiAnR1MnIH0sXG4gICAgICB7IGxhYmVsOiAnU3ZhbGJhcmQgYW5kIEphbiBNYXllbicsIHZhbHVlOiAnU0onIH0sXG4gICAgICB7IGxhYmVsOiAnU29sb21vbiBJc2xhbmRzJywgdmFsdWU6ICdTQicgfSxcbiAgICAgIHsgbGFiZWw6ICdTaWVycmEgTGVvbmUnLCB2YWx1ZTogJ1NMJyB9LFxuICAgICAgeyBsYWJlbDogJ0VsIFNhbHZhZG9yJywgdmFsdWU6ICdTVicgfSxcbiAgICAgIHsgbGFiZWw6ICdTYW4gTWFyaW5vJywgdmFsdWU6ICdTTScgfSxcbiAgICAgIHsgbGFiZWw6ICdTb21hbGlhJywgdmFsdWU6ICdTTycgfSxcbiAgICAgIHsgbGFiZWw6ICdTYWludCBQaWVycmUgYW5kIE1pcXVlbG9uJywgdmFsdWU6ICdQTScgfSxcbiAgICAgIHsgbGFiZWw6ICdTZXJiaWEnLCB2YWx1ZTogJ1JTJyB9LFxuICAgICAgeyBsYWJlbDogJ1NvdXRoIFN1ZGFuJywgdmFsdWU6ICdTUycgfSxcbiAgICAgIHsgbGFiZWw6ICdTw6NvIFRvbcOpIGFuZCBQcsOtbmNpcGUnLCB2YWx1ZTogJ1NUJyB9LFxuICAgICAgeyBsYWJlbDogJ1N1cmluYW1lJywgdmFsdWU6ICdTUicgfSxcbiAgICAgIHsgbGFiZWw6ICdTbG92YWtpYScsIHZhbHVlOiAnU0snIH0sXG4gICAgICB7IGxhYmVsOiAnU2xvdmVuaWEnLCB2YWx1ZTogJ1NJJyB9LFxuICAgICAgeyBsYWJlbDogJ1N3ZWRlbicsIHZhbHVlOiAnU0UnIH0sXG4gICAgICB7IGxhYmVsOiAnU3dhemlsYW5kJywgdmFsdWU6ICdTWicgfSxcbiAgICAgIHsgbGFiZWw6ICdTZXljaGVsbGVzJywgdmFsdWU6ICdTQycgfSxcbiAgICAgIHsgbGFiZWw6ICdTeXJpYScsIHZhbHVlOiAnU1knIH0sXG4gICAgICB7IGxhYmVsOiAnVHVya3MgYW5kIENhaWNvcyBJc2xhbmRzJywgdmFsdWU6ICdUQycgfSxcbiAgICAgIHsgbGFiZWw6ICdDaGFkJywgdmFsdWU6ICdURCcgfSxcbiAgICAgIHsgbGFiZWw6ICdUb2dvJywgdmFsdWU6ICdURycgfSxcbiAgICAgIHsgbGFiZWw6ICdUaGFpbGFuZCcsIHZhbHVlOiAnVEgnIH0sXG4gICAgICB7IGxhYmVsOiAnVGFqaWtpc3RhbicsIHZhbHVlOiAnVEonIH0sXG4gICAgICB7IGxhYmVsOiAnVG9rZWxhdScsIHZhbHVlOiAnVEsnIH0sXG4gICAgICB7IGxhYmVsOiAnVHVya21lbmlzdGFuJywgdmFsdWU6ICdUTScgfSxcbiAgICAgIHsgbGFiZWw6ICdUaW1vci1MZXN0ZScsIHZhbHVlOiAnVEwnIH0sXG4gICAgICB7IGxhYmVsOiAnVG9uZ2EnLCB2YWx1ZTogJ1RPJyB9LFxuICAgICAgeyBsYWJlbDogJ1RyaW5pZGFkIGFuZCBUb2JhZ28nLCB2YWx1ZTogJ1RUJyB9LFxuICAgICAgeyBsYWJlbDogJ1R1bmlzaWEnLCB2YWx1ZTogJ1ROJyB9LFxuICAgICAgeyBsYWJlbDogJ1R1cmtleScsIHZhbHVlOiAnVFInIH0sXG4gICAgICB7IGxhYmVsOiAnVHV2YWx1JywgdmFsdWU6ICdUVicgfSxcbiAgICAgIHsgbGFiZWw6ICdUYWl3YW4nLCB2YWx1ZTogJ1RXJyB9LFxuICAgICAgeyBsYWJlbDogJ1RhbnphbmlhJywgdmFsdWU6ICdUWicgfSxcbiAgICAgIHsgbGFiZWw6ICdVZ2FuZGEnLCB2YWx1ZTogJ1VHJyB9LFxuICAgICAgeyBsYWJlbDogJ1VrcmFpbmUnLCB2YWx1ZTogJ1VBJyB9LFxuICAgICAgeyBsYWJlbDogJ1VuaXRlZCBTdGF0ZXMgTWlub3IgT3V0bHlpbmcgSXNsYW5kcycsIHZhbHVlOiAnVU0nIH0sXG4gICAgICB7IGxhYmVsOiAnVXJ1Z3VheScsIHZhbHVlOiAnVVknIH0sXG4gICAgICB7IGxhYmVsOiAnVW5pdGVkIFN0YXRlcycsIHZhbHVlOiAnVVMnIH0sXG4gICAgICB7IGxhYmVsOiAnVXpiZWtpc3RhbicsIHZhbHVlOiAnVVonIH0sXG4gICAgICB7IGxhYmVsOiAnVmF0aWNhbiBDaXR5JywgdmFsdWU6ICdWQScgfSxcbiAgICAgIHsgbGFiZWw6ICdTYWludCBWaW5jZW50IGFuZCB0aGUgR3JlbmFkaW5lcycsIHZhbHVlOiAnVkMnIH0sXG4gICAgICB7IGxhYmVsOiAnVmVuZXp1ZWxhJywgdmFsdWU6ICdWRScgfSxcbiAgICAgIHsgbGFiZWw6ICdCcml0aXNoIFZpcmdpbiBJc2xhbmRzJywgdmFsdWU6ICdWRycgfSxcbiAgICAgIHsgbGFiZWw6ICdVbml0ZWQgU3RhdGVzIFZpcmdpbiBJc2xhbmRzJywgdmFsdWU6ICdWSScgfSxcbiAgICAgIHsgbGFiZWw6ICdWaWV0bmFtJywgdmFsdWU6ICdWTicgfSxcbiAgICAgIHsgbGFiZWw6ICdWYW51YXR1JywgdmFsdWU6ICdWVScgfSxcbiAgICAgIHsgbGFiZWw6ICdXYWxsaXMgYW5kIEZ1dHVuYScsIHZhbHVlOiAnV0YnIH0sXG4gICAgICB7IGxhYmVsOiAnU2Ftb2EnLCB2YWx1ZTogJ1dTJyB9LFxuICAgICAgeyBsYWJlbDogJ1llbWVuJywgdmFsdWU6ICdZRScgfSxcbiAgICAgIHsgbGFiZWw6ICdTb3V0aCBBZnJpY2EnLCB2YWx1ZTogJ1pBJyB9LFxuICAgICAgeyBsYWJlbDogJ1phbWJpYScsIHZhbHVlOiAnWk0nIH0sXG4gICAgICB7IGxhYmVsOiAnWmltYmFid2UnLCB2YWx1ZTogJ1pXJyB9LFxuICAgIF07XG4gIH1cbiAgY291bnRyeUxpc3QoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIEFGRzogJ0FGJyxcbiAgICAgIEFMQjogJ0FMJyxcbiAgICAgIERaQTogJ0RaJyxcbiAgICAgIEFTTTogJ0FTJyxcbiAgICAgIEFORDogJ0FEJyxcbiAgICAgIEFHTzogJ0FPJyxcbiAgICAgIEFJQTogJ0FJJyxcbiAgICAgIEFURzogJ0FHJyxcbiAgICAgIEFSRzogJ0FSJyxcbiAgICAgIEFSTTogJ0FNJyxcbiAgICAgIEFCVzogJ0FXJyxcbiAgICAgIEFVUzogJ0FVJyxcbiAgICAgIEFVVDogJ0FUJyxcbiAgICAgIEFaRTogJ0FaJyxcbiAgICAgIEJIUzogJ0JTJyxcbiAgICAgIEJIUjogJ0JIJyxcbiAgICAgIEJHRDogJ0JEJyxcbiAgICAgIEJSQjogJ0JCJyxcbiAgICAgIEJMUjogJ0JZJyxcbiAgICAgIEJFTDogJ0JFJyxcbiAgICAgIEJMWjogJ0JaJyxcbiAgICAgIEJFTjogJ0JKJyxcbiAgICAgIEJNVTogJ0JNJyxcbiAgICAgIEJUTjogJ0JUJyxcbiAgICAgIEJPTDogJ0JPJyxcbiAgICAgIEJJSDogJ0JBJyxcbiAgICAgIEJXQTogJ0JXJyxcbiAgICAgIEJSQTogJ0JSJyxcbiAgICAgIFZHQjogJ1ZHJyxcbiAgICAgIEJSTjogJ0JOJyxcbiAgICAgIEJHUjogJ0JHJyxcbiAgICAgIEJGQTogJ0JGJyxcbiAgICAgIEJESTogJ0JJJyxcbiAgICAgIEtITTogJ0tIJyxcbiAgICAgIENNUjogJ0NNJyxcbiAgICAgIENBTjogJ0NBJyxcbiAgICAgIENQVjogJ0NWJyxcbiAgICAgIENBRjogJ0NGJyxcbiAgICAgIFRDRDogJ1REJyxcbiAgICAgIENITDogJ0NMJyxcbiAgICAgIENITjogJ0NOJyxcbiAgICAgIEhLRzogJ0hLJyxcbiAgICAgIE1BQzogJ01PJyxcbiAgICAgIENPTDogJ0NPJyxcbiAgICAgIENPTTogJ0tNJyxcbiAgICAgIENPRzogJ0NHJyxcbiAgICAgIENSSTogJ0NSJyxcbiAgICAgIENJVjogJ0NJJyxcbiAgICAgIEhSVjogJ0hSJyxcbiAgICAgIENVQjogJ0NVJyxcbiAgICAgIENZUDogJ0NZJyxcbiAgICAgIENaRTogJ0NaJyxcbiAgICAgIEROSzogJ0RLJyxcbiAgICAgIERKSTogJ0RKJyxcbiAgICAgIERNQTogJ0RNJyxcbiAgICAgIERPTTogJ0RPJyxcbiAgICAgIEVDVTogJ0VDJyxcbiAgICAgIEVHWTogJ0VHJyxcbiAgICAgIFNMVjogJ1NWJyxcbiAgICAgIEdOUTogJ0dRJyxcbiAgICAgIEVSSTogJ0VSJyxcbiAgICAgIEVTVDogJ0VFJyxcbiAgICAgIEVUSDogJ0VUJyxcbiAgICAgIEZSTzogJ0ZPJyxcbiAgICAgIEZKSTogJ0ZKJyxcbiAgICAgIEZJTjogJ0ZJJyxcbiAgICAgIEZSQTogJ0ZSJyxcbiAgICAgIEdVRjogJ0dGJyxcbiAgICAgIFBZRjogJ1BGJyxcbiAgICAgIEdBQjogJ0dBJyxcbiAgICAgIEdNQjogJ0dNJyxcbiAgICAgIEdFTzogJ0dFJyxcbiAgICAgIERFVTogJ0RFJyxcbiAgICAgIEdIQTogJ0dIJyxcbiAgICAgIEdSQzogJ0dSJyxcbiAgICAgIEdSTDogJ0dMJyxcbiAgICAgIEdSRDogJ0dEJyxcbiAgICAgIEdMUDogJ0dQJyxcbiAgICAgIEdVTTogJ0dVJyxcbiAgICAgIEdUTTogJ0dUJyxcbiAgICAgIEdOQjogJ0dXJyxcbiAgICAgIEhUSTogJ0hUJyxcbiAgICAgIEhORDogJ0hOJyxcbiAgICAgIElTTDogJ0lTJyxcbiAgICAgIElETjogJ0lEJyxcbiAgICAgIElSUTogJ0lRJyxcbiAgICAgIElUQTogJ0lUJyxcbiAgICAgIEpQTjogJ0pQJyxcbiAgICAgIEpPUjogJ0pPJyxcbiAgICAgIEtBWjogJ0taJyxcbiAgICAgIEtFTjogJ0tFJyxcbiAgICAgIEtJUjogJ0tJJyxcbiAgICAgIFBSSzogJ0tQJyxcbiAgICAgIEtPUjogJ0tSJyxcbiAgICAgIEtXVDogJ0tXJyxcbiAgICAgIEtHWjogJ0tHJyxcbiAgICAgIExBTzogJ0xBJyxcbiAgICAgIExWQTogJ0xWJyxcbiAgICAgIExCTjogJ0xCJyxcbiAgICAgIExTTzogJ0xTJyxcbiAgICAgIExCUjogJ0xSJyxcbiAgICAgIExCWTogJ0xZJyxcbiAgICAgIExJRTogJ0xJJyxcbiAgICAgIExUVTogJ0xUJyxcbiAgICAgIExVWDogJ0xVJyxcbiAgICAgIE1ERzogJ01HJyxcbiAgICAgIE1XSTogJ01XJyxcbiAgICAgIE1ZUzogJ01ZJyxcbiAgICAgIE1EVjogJ01WJyxcbiAgICAgIE1MSTogJ01MJyxcbiAgICAgIE1MVDogJ01UJyxcbiAgICAgIE1ITDogJ01IJyxcbiAgICAgIE1UUTogJ01RJyxcbiAgICAgIE1SVDogJ01SJyxcbiAgICAgIE1VUzogJ01VJyxcbiAgICAgIE1FWDogJ01YJyxcbiAgICAgIEZTTTogJ0ZNJyxcbiAgICAgIE1EQTogJ01EJyxcbiAgICAgIE1DTzogJ01DJyxcbiAgICAgIE1ORzogJ01OJyxcbiAgICAgIE1ORTogJ01FJyxcbiAgICAgIE1TUjogJ01TJyxcbiAgICAgIE1BUjogJ01BJyxcbiAgICAgIE1PWjogJ01aJyxcbiAgICAgIE1NUjogJ01NJyxcbiAgICAgIE5BTTogJ05BJyxcbiAgICAgIE5SVTogJ05SJyxcbiAgICAgIE5QTDogJ05QJyxcbiAgICAgIE5MRDogJ05MJyxcbiAgICAgIEFOVDogJ0FOJyxcbiAgICAgIE5DTDogJ05DJyxcbiAgICAgIE5aTDogJ05aJyxcbiAgICAgIE5JQzogJ05JJyxcbiAgICAgIE5FUjogJ05FJyxcbiAgICAgIE5HQTogJ05HJyxcbiAgICAgIE1OUDogJ01QJyxcbiAgICAgIE5PUjogJ05PJyxcbiAgICAgIE9NTjogJ09NJyxcbiAgICAgIFBBSzogJ1BLJyxcbiAgICAgIFBMVzogJ1BXJyxcbiAgICAgIFBTRTogJ1BTJyxcbiAgICAgIFBBTjogJ1BBJyxcbiAgICAgIFBORzogJ1BHJyxcbiAgICAgIFBSWTogJ1BZJyxcbiAgICAgIFBFUjogJ1BFJyxcbiAgICAgIFBITDogJ1BIJyxcbiAgICAgIFBDTjogJ1BOJyxcbiAgICAgIFBPTDogJ1BMJyxcbiAgICAgIFBSVDogJ1BUJyxcbiAgICAgIFBSSTogJ1BSJyxcbiAgICAgIFFBVDogJ1FBJyxcbiAgICAgIFJFVTogJ1JFJyxcbiAgICAgIFJPVTogJ1JPJyxcbiAgICAgIFJVUzogJ1JVJyxcbiAgICAgIFJXQTogJ1JXJyxcbiAgICAgIEtOQTogJ0tOJyxcbiAgICAgIExDQTogJ0xDJyxcbiAgICAgIFZDVDogJ1ZDJyxcbiAgICAgIFdTTTogJ1dTJyxcbiAgICAgIFNNUjogJ1NNJyxcbiAgICAgIFNUUDogJ1NUJyxcbiAgICAgIFNBVTogJ1NBJyxcbiAgICAgIFNFTjogJ1NOJyxcbiAgICAgIFNSQjogJ1JTJyxcbiAgICAgIFNZQzogJ1NDJyxcbiAgICAgIFNMRTogJ1NMJyxcbiAgICAgIFNHUDogJ1NHJyxcbiAgICAgIFNWSzogJ1NLJyxcbiAgICAgIFNWTjogJ1NJJyxcbiAgICAgIFNMQjogJ1NCJyxcbiAgICAgIFNPTTogJ1NPJyxcbiAgICAgIFpBRjogJ1pBJyxcbiAgICAgIEVTUDogJ0VTJyxcbiAgICAgIExLQTogJ0xLJyxcbiAgICAgIFNETjogJ1NEJyxcbiAgICAgIFNVUjogJ1NSJyxcbiAgICAgIFNXWjogJ1NaJyxcbiAgICAgIFNXRTogJ1NFJyxcbiAgICAgIENIRTogJ0NIJyxcbiAgICAgIFNZUjogJ1NZJyxcbiAgICAgIFRKSzogJ1RKJyxcbiAgICAgIFRaQTogJ1RaJyxcbiAgICAgIFRIQTogJ1RIJyxcbiAgICAgIFRMUzogJ1RMJyxcbiAgICAgIFRHTzogJ1RHJyxcbiAgICAgIFRPTjogJ1RPJyxcbiAgICAgIFRUTzogJ1RUJyxcbiAgICAgIFRVTjogJ1ROJyxcbiAgICAgIFRVUjogJ1RSJyxcbiAgICAgIFRLTTogJ1RNJyxcbiAgICAgIFRVVjogJ1RWJyxcbiAgICAgIFVHQTogJ1VHJyxcbiAgICAgIFVLUjogJ1VBJyxcbiAgICAgIEFSRTogJ0FFJyxcbiAgICAgIEdCUjogJ0dCJyxcbiAgICAgIFVTQTogJ1VTJyxcbiAgICAgIFVSWTogJ1VZJyxcbiAgICAgIFVaQjogJ1VaJyxcbiAgICAgIFZVVDogJ1ZVJyxcbiAgICAgIFZFTjogJ1ZFJyxcbiAgICAgIFZOTTogJ1ZOJyxcbiAgICAgIFZJUjogJ1ZJJyxcbiAgICAgIFlFTTogJ1lFJyxcbiAgICAgIFpNQjogJ1pNJyxcbiAgICAgIFpXRTogJ1pXJyxcbiAgICB9O1xuICB9XG5cbiAgZ2V0IGZpZWxkcygpOiBhbnkge1xuICAgIHJldHVybiBbXG4gICAgICB7XG4gICAgICAgIGtleTogJ0JpcnRoIERhdGUnLFxuICAgICAgICBmb3JtOiAnYmlydGhEYXRlJyxcbiAgICAgICAgdHlwZTogJ2RhdGUnLFxuICAgICAgICBtYWluOiBmYWxzZSxcbiAgICAgICAgYmxhc3RLZXk6ICdCaXJ0aERhdGUnLFxuICAgICAgfSxcblxuICAgICAge1xuICAgICAgICBrZXk6ICdHaXZlbiBOYW1lJyxcbiAgICAgICAgZm9ybTogJ2ZpcnN0TmFtZScsXG4gICAgICAgIHVjRmlyc3Q6IHRydWUsXG4gICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICBtYWluOiB0cnVlLFxuICAgICAgICBibGFzdEtleTogJ05hbWUnLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAga2V5OiAnU3VybmFtZScsXG4gICAgICAgIGZvcm06ICdsYXN0TmFtZScsXG4gICAgICAgIHVjRmlyc3Q6IHRydWUsXG4gICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICBtYWluOiB0cnVlLFxuICAgICAgICBibGFzdEtleTogJ1N1cm5hbWUnLFxuICAgICAgfSxcblxuICAgICAge1xuICAgICAgICBrZXk6ICdTZXgnLFxuICAgICAgICBmb3JtOiAnZ2VuZGVyJyxcbiAgICAgICAgdHlwZTogJ2dlbmRlcicsXG4gICAgICAgIG1haW46IGZhbHNlLFxuICAgICAgICBibGFzdEtleTogJ0dlbmRlcicsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBrZXk6ICdEb2N1bWVudCBDbGFzcyBOYW1lJyxcbiAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgIGZvcm06ICdkb2N1bWVudFR5cGUnLFxuICAgICAgICBtYWluOiBmYWxzZSxcbiAgICAgICAgYmxhc3RLZXk6ICdkb2NUeXBlJyxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGtleTogJ0RvY3VtZW50IE51bWJlcicsXG4gICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICBmb3JtOiAnZG9jdW1lbnROdW1iZXInLFxuICAgICAgICBtYWluOiBmYWxzZSxcbiAgICAgICAgYmxhc3RLZXk6ICdEb2N1bWVudE51bWJlcicsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBrZXk6ICdJc3N1aW5nIFN0YXRlIENvZGUnLFxuICAgICAgICB0eXBlOiAnY291bnRyeScsXG4gICAgICAgIGZvcm06ICdpc3N1ZVN0YXRlQ29kZScsXG4gICAgICAgIGJsYXN0S2V5OiAnQ291bnRyeU9mSXNzdWUnLFxuICAgICAgICBtYWluOiBmYWxzZSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGtleTogJ0V4cGlyYXRpb24gRGF0ZScsXG4gICAgICAgIHR5cGU6ICdkYXRlJyxcbiAgICAgICAgZm9ybTogJ2V4cGlyYXRpb25EYXRlJyxcbiAgICAgICAgYmxhc3RLZXk6ICdFeHBpcnlEYXRlJyxcbiAgICAgICAgbWFpbjogZmFsc2UsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBrZXk6ICdJc3N1ZSBEYXRlJyxcbiAgICAgICAgdHlwZTogJ2RhdGUnLFxuICAgICAgICBmb3JtOiAnaXNzdWVEYXRlJyxcbiAgICAgICAgYmxhc3RLZXk6ICdJc3N1ZWREYXRlJyxcbiAgICAgICAgbWFpbjogZmFsc2UsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBrZXk6ICdCaXJ0aCBQbGFjZScsXG4gICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICBmb3JtOiAnYmlydGhQbGFjZScsXG4gICAgICAgIGJsYXN0S2V5OiAnUGxhY2VPZkJpcnRoJyxcbiAgICAgICAgbWFpbjogZmFsc2UsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBrZXk6ICdJc3N1aW5nIEF1dGhvcml0eScsXG4gICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICBmb3JtOiAnaXNzdWluZ1BsYWNlJyxcbiAgICAgICAgYmxhc3RLZXk6ICdJc3N1aW5nQXV0aG9yaXR5JyxcbiAgICAgICAgbWFpbjogZmFsc2UsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBrZXk6ICdOYXRpb25hbGl0eSBDb2RlJyxcbiAgICAgICAgdHlwZTogJ2NvdW50cnknLFxuICAgICAgICBmb3JtOiAnbmF0aW9uYWxpdHknLFxuICAgICAgICBtYWluOiBmYWxzZSxcbiAgICAgICAgYmxhc3RLZXk6ICdOYXRpb25hbGl0eScsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBrZXk6ICdzdHJlZXQxJyxcbiAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgIGZvcm06ICdzdHJlZXQxJyxcbiAgICAgICAgbWFpbjogZmFsc2UsXG4gICAgICAgIGJsYXN0S2V5OiAnQWRkcmVzc1N0cmVldCcsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBrZXk6ICdjaXR5JyxcbiAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgIGZvcm06ICdjaXR5JyxcbiAgICAgICAgbWFpbjogZmFsc2UsXG4gICAgICAgIGJsYXN0S2V5OiAnQWRkcmVzc0NpdHknLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAga2V5OiAnY291bnRyeScsXG4gICAgICAgIHR5cGU6ICdjb3VudHJ5JyxcbiAgICAgICAgZm9ybTogJ2NvdW50cnknLFxuICAgICAgICBtYWluOiBmYWxzZSxcbiAgICAgICAgYmxhc3RLZXk6ICdDb3VudHJ5JyxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGtleTogJ3ppcCcsXG4gICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICBmb3JtOiAnemlwJyxcbiAgICAgICAgbWFpbjogZmFsc2UsXG4gICAgICAgIGJsYXN0S2V5OiAnQWRkcmVzc1ppcCcsXG4gICAgICB9LFxuICAgIF07XG4gIH1cbiAgcGFyc2VCbGFzdChyZXN1bHRzOiBhbnkpIHtcbiAgICBjb25zdCBjb3VudHJpZXM6IGFueSA9IHRoaXMuY291bnRyeUxpc3QoKTtcbiAgICBjb25zdCBnZW5kZXJzOiBhbnkgPSB0aGlzLmdlbmRlckxpc3QoKTtcbiAgICBjb25zdCBkYXRhOiBhbnkgPSB0aGlzLmZpZWxkcztcblxuICAgIGNvbnN0IHZhbGlkYXRlZEFkZHJlc3NGaWVsZHMgPSBbXG4gICAgICAnQWRkcmVzc0NpdHknLFxuICAgICAgJ0FkZHJlc3NaaXAnLFxuICAgICAgJ0FkZHJlc3NDb3VudHknLFxuICAgICAgJ0FkZHJlc3NTdHJlZXQnLFxuICAgIF0uZmlsdGVyKChrZXkpID0+IHJlc3VsdHNba2V5XS5WYWxpZGF0ZWQpO1xuXG4gICAgLy8gaWYgbm8gYWRkcmVzcyBpcyB2YWxpZGF0ZWRcbiAgICBpZiAodmFsaWRhdGVkQWRkcmVzc0ZpZWxkcy5sZW5ndGggPT09IDApIHtcbiAgICAgIGlmIChyZXN1bHRzLkFkZHJlc3MuVmFsaWRhdGVkKSB7XG4gICAgICAgIHJlc3VsdHMuQWRkcmVzc1N0cmVldCA9IHJlc3VsdHMuQWRkcmVzcztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCBvdXQgPSBkYXRhLm1hcCgoaXRtOiBhbnkpID0+IHtcbiAgICAgIGNvbnN0IHJlcyA9IHJlc3VsdHNbaXRtLmJsYXN0S2V5XTtcbiAgICAgIGlmIChyZXMpIHtcbiAgICAgICAgY29uc3QgdmFsdWUgPSByZXMuUmVjb21tZW5kZWRWYWx1ZSB8fCAnJztcblxuICAgICAgICBzd2l0Y2ggKGl0bS50eXBlKSB7XG4gICAgICAgICAgY2FzZSAnc3RyaW5nJzpcbiAgICAgICAgICAgIGl0bS52YWx1ZSA9IHZhbHVlO1xuICAgICAgICAgICAgaWYgKGl0bS51Y0ZpcnN0KSB7XG4gICAgICAgICAgICAgIGNvbnN0IG5hbWUgPSB2YWx1ZS50b0xvd2VyQ2FzZSgpO1xuICAgICAgICAgICAgICBpdG0udmFsdWUgPSBuYW1lLmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpICsgbmFtZS5zbGljZSgxKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIGNhc2UgJ2RhdGUnOlxuICAgICAgICAgICAgaXRtLnZhbHVlID0gdmFsdWUgPyBtb21lbnQodmFsdWUsICdERC5NTS5ZWVlZJykudG9EYXRlKCkgOiBudWxsO1xuICAgICAgICAgICAgLy8gaWYgKHZhbHVlLmluZGV4T2YoJy9EYXRlJykgPj0gMCkge1xuICAgICAgICAgICAgLy8gICBjb25zb2xlLmxvZyh2YWx1ZSk7XG4gICAgICAgICAgICAvLyAgIGNvbnN0IHRpbWVzdGFtcCA9IHZhbHVlLnJlcGxhY2UoL1xcRC9nbSwgJycpO1xuICAgICAgICAgICAgLy8gICAvL2l0bS52YWx1ZSA9IG1vbWVudC51bml4KHRpbWVzdGFtcCAvIDEwMDApLnRvRGF0ZSgpO1xuICAgICAgICAgICAgLy8gICBpdG0udmFsdWUgPSBtb21lbnQoXG4gICAgICAgICAgICAvLyAgICAgdGltZXN0YW1wIC0gbW9tZW50KHRpbWVzdGFtcCwgJ3gnKS51dGNPZmZzZXQoKSAqIDYwICogMTAwMCxcbiAgICAgICAgICAgIC8vICAgICAneCcsXG4gICAgICAgICAgICAvLyAgICkudG9EYXRlKCk7XG4gICAgICAgICAgICAvLyB9XG5cbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIGNhc2UgJ2NvdW50cnknOlxuICAgICAgICAgICAgaXRtLnZhbHVlID0gY291bnRyaWVzW3ZhbHVlXSB8fCBudWxsO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgY2FzZSAnZ2VuZGVyJzpcbiAgICAgICAgICAgIGl0bS52YWx1ZSA9IGdlbmRlcnNbdmFsdWVdIHx8IG51bGw7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHJldHVybiBpdG07XG4gICAgfSk7XG5cbiAgICBjb25zdCBtb2RlbDogYW55ID0ge307XG5cbiAgICBvdXQuZm9yRWFjaCgoZWxlbWVudDogYW55KSA9PiB7XG4gICAgICBjb25zb2xlLmxvZyhlbGVtZW50KTtcbiAgICAgIG1vZGVsW2VsZW1lbnQuZm9ybV0gPSBlbGVtZW50LnZhbHVlO1xuICAgIH0pO1xuXG4gICAgbW9kZWwuZG9jdW1lbnRUeXBlID0gcmVzdWx0cy5NZXRhZGF0YS5Eb2N1bWVudFR5cGU7XG5cbiAgICBjb25zb2xlLmxvZyhtb2RlbCk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgZmllbGRzOiBvdXQsXG4gICAgICBtb2RlbCxcbiAgICB9O1xuICB9XG5cbiAgYmxhc3RQb3N0KGRhdGE6IGFueSkge1xuICAgIC8vIGNvbnN0ICRyZXF1ZXN0ID0gdGhpcy5hcGkuaHR0cC5nZXQoJy9hc3NldHMvanNvbi9ibGFzdHNjYW4uanNvbicpO1xuXG4gICAgY29uc3QgJHJlcXVlc3QgPSB0aGlzLmh0dHAucG9zdCh0aGlzLmNvbmZpZy5leHRyYWN0aW9uUGF0aCwgZGF0YSk7XG5cbiAgICByZXR1cm4gJHJlcXVlc3QucGlwZShcbiAgICAgIG1hcCgobTogYW55KSA9PiB7XG4gICAgICAgIGlmIChtLk1ldGFkYXRhICYmIG0uTWV0YWRhdGEubGVuZ3RoID4gMCkge1xuICAgICAgICAgIGNvbnN0IG1ldGFkYXRhID0gbS5NZXRhZGF0YVswXTtcbiAgICAgICAgICBtLkRhdGEuQ291bnRyeSA9IHtcbiAgICAgICAgICAgIFJlY29tbWVuZGVkVmFsdWU6IG1ldGFkYXRhLkNvdW50cnksXG4gICAgICAgICAgfTtcbiAgICAgICAgICBtLkRhdGEuTWV0YWRhdGEgPSBtZXRhZGF0YTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIGJsb2JUb0RhdGFVcmwoZmlsZTogYW55KTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gT2JzZXJ2YWJsZS5jcmVhdGUoKG9iczogYW55KSA9PiB7XG4gICAgICBjb25zdCByZWFkZXIgPSBuZXcgRmlsZVJlYWRlcigpO1xuICAgICAgcmVhZGVyLm9uZXJyb3IgPSAoZXJyKSA9PiBvYnMuZXJyb3IoZXJyKTtcbiAgICAgIHJlYWRlci5vbmFib3J0ID0gKGVycikgPT4gb2JzLmVycm9yKGVycik7XG4gICAgICByZWFkZXIub25sb2FkID0gKCkgPT4ge1xuICAgICAgICBvYnMubmV4dChyZWFkZXIucmVzdWx0KTtcbiAgICAgIH07XG4gICAgICByZWFkZXIub25sb2FkZW5kID0gKCkgPT4gb2JzLmNvbXBsZXRlKCk7XG4gICAgICByZXR1cm4gcmVhZGVyLnJlYWRBc0RhdGFVUkwoZmlsZSk7XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
|
757
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nhbi5wcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zY2FuZG9jL3NyYy9wcm92aWRlcnMvc2Nhbi5wcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQVUsVUFBVSxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBRTdELE9BQU8sRUFBRSxVQUFVLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxHQUFHLEVBQWEsTUFBTSxnQkFBZ0IsQ0FBQztBQUNoRCxPQUFPLE1BQU0sTUFBTSxRQUFRLENBQUM7QUFDNUIsT0FBTyxFQUFjLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRy9ELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDOzs7QUFNakUsTUFBTSxPQUFPLFlBQVk7SUFNdkIsWUFBb0IsSUFBZ0IsRUFBVSxRQUFrQjtRQUE1QyxTQUFJLEdBQUosSUFBSSxDQUFZO1FBQVUsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUpoRSw2QkFBNkI7UUFFdEIsV0FBTSxHQUFlLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDakUsbUJBQWMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQztJQUN1QixDQUFDO0lBQ3BFLFVBQVU7UUFDUixPQUFPO1lBQ0wsQ0FBQyxFQUFFLE1BQU07WUFDVCxLQUFLLEVBQUUsTUFBTTtZQUNiLENBQUMsRUFBRSxRQUFRO1lBQ1gsS0FBSyxFQUFFLFFBQVE7U0FDaEIsQ0FBQztJQUNKLENBQUM7SUFFRCxJQUFJLGtCQUFrQjtRQUNwQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsa0JBQWtCLENBQUM7SUFDeEMsQ0FBQztJQUNELFFBQVEsQ0FBQyxTQUFvQjtRQUMzQixNQUFNLElBQUksR0FBRztZQUNYLHdCQUF3QixFQUFFLElB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QUFFLEtBQUssRUFBRSxJQUFJLEVBQUU7WUFDakMsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUU7WUFDaEMsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUU7WUFDaEMsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUU7WUFDL0IsRUFBRSxLQUFLLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUU7WUFDcEMsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUU7WUFDL0IsRUFBRSxLQUFLLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUU7WUFDcEMsRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUU7WUFDbEMsRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUU7WUFDbEMsRUFBRSxLQUFLLEVBQUUsdUJBQXVCLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRTtZQUMvQyxFQUFFLEtBQUssRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRTtZQUNyQyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRTtZQUNoQyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRTtZQUM5QixFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRTtZQUNqQyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRTtZQUNqQyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRTtZQUMvQixFQUFFLEtBQUssRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRTtZQUNyQyxFQUFFLEtBQUssRUFBRSxlQUFlLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRTtZQUN2QyxF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R0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1QsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtZQUNULEdBQUcsRUFBRSxJQUFJO1lBQ1Qs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QUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQztJQUVELGFBQWEsQ0FBQyxJQUFTO1FBQ3JCLE9BQU8sVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQVEsRUFBRSxFQUFFO1lBQ3BDLE1BQU0sTUFBTSxHQUFHLElBQUksVUFBVSxFQUFFLENBQUM7WUFDaEMsTUFBTSxDQUFDLE9BQU8sR0FBRyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUN6QyxNQUFNLENBQUMsT0FBTyxHQUFHLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3pDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsR0FBRyxFQUFFO2dCQUNuQixHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUMxQixDQUFDLENBQUM7WUFDRixNQUFNLENBQUMsU0FBUyxHQUFHLEdBQUcsRUFBRSxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUN4QyxPQUFPLE1BQU0sQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDcEMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOzt5R0E3dkJVLFlBQVk7NkdBQVosWUFBWSxjQUZYLE1BQU07MkZBRVAsWUFBWTtrQkFIeEIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUsIEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCBtb21lbnQgZnJvbSAnbW9tZW50JztcbmltcG9ydCB7IEh0dHBDbGllbnQsIEh0dHBIZWFkZXJzIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgU2NhbkNvbmZpZyB9IGZyb20gJy4uL2NvcmUvaW50ZXJmYWNlcy9jb25maWcnO1xuaW1wb3J0IHsgR3Vlc3REYXRhIH0gZnJvbSAnLi4vY29yZS9pbnRlcmZhY2VzL2d1ZXN0LmRhdGEnO1xuaW1wb3J0IHsgU0NBTl9DT05GSUdfVE9LRU4gfSBmcm9tICcuLi9jb3JlL3Rva2Vucy9jb25maWcudG9rZW5zJztcblxuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgU2NhblByb3ZpZGVyIHtcbiAgY291bnRyaWVzRGF0YTogYW55O1xuICAvLyBlbmFibGVWZXJpZmljYXRpb24gPSB0cnVlO1xuXG4gIHB1YmxpYyBjb25maWc6IFNjYW5Db25maWcgPSB0aGlzLmluamVjdG9yLmdldChTQ0FOX0NPTkZJR19UT0tFTik7XG4gIGNhblN0b3JlSW1hZ2VzID0gdGhpcy5jb25maWcuY2FuU3RvcmVJbWFnZXM7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgaHR0cDogSHR0cENsaWVudCwgcHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IpIHt9XG4gIGdlbmRlckxpc3QoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIE06ICdNQUxFJyxcbiAgICAgICdNL00nOiAnTUFMRScsXG4gICAgICBGOiAnRkVNQUxFJyxcbiAgICAgICdGL0YnOiAnRkVNQUxFJyxcbiAgICB9O1xuICB9XG5cbiAgZ2V0IGVuYWJsZVZlcmlmaWNhdGlvbigpIHtcbiAgICByZXR1cm4gdGhpcy5jb25maWcuZW5hYmxlVmVyaWZpY2F0aW9uO1xuICB9XG4gIGFkZEd1ZXN0KGd1ZXN0RGF0YTogR3Vlc3REYXRhKSB7XG4gICAgY29uc3QgZGF0YSA9IHtcbiAgICAgIEFjY2VwdFRlcm1zQW5kQ29uZGl0aW9uczogdHJ1ZSxcbiAgICAgIERhdGFGaWVsZHM6IHtcbiAgICAgICAgR3Vlc3RJbWFnZVR5cGU6ICdiYXNlNjQnLFxuICAgICAgICAuLi5ndWVzdERhdGEsXG4gICAgICB9LFxuICAgICAgU2V0dGluZ3M6IHt9LFxuICAgIH07XG4gICAgY29uc3QgJHJlcXVlc3QgPSB0aGlzLmh0dHAucHV0KHRoaXMuY29uZmlnLmd1ZXN0QWRkUGF0aCwgZGF0YSk7XG4gICAgcmV0dXJuICRyZXF1ZXN0O1xuICB9XG5cbiAgc3RhdGVsZXNzKERvY3VtZW50RmFjZUltYWdlOiBhbnksIExpdmVGYWNlSW1hZ2U6IGFueSkge1xuICAgIGNvbnN0IGRhdGEgPSB7XG4gICAgICBBY2NlcHRUZXJtc0FuZENvbmRpdGlvbnM6IHRydWUsXG4gICAgICBEYXRhRmllbGRzOiB7XG4gICAgICAgIERvY3VtZW50RmFjZUltYWdlVHlwZTogJ2Jhc2U2NCcsXG4gICAgICAgIERvY3VtZW50RmFjZUltYWdlLFxuICAgICAgICBMaXZlRmFjZUltYWdlVHlwZTogJ2Jhc2U2NCcsXG4gICAgICAgIExpdmVGYWNlSW1hZ2UsXG4gICAgICB9LFxuICAgIH07XG4gICAgY29uc3QgJHJlcXVlc3QgPSB0aGlzLmh0dHAucG9zdCh0aGlzLmNvbmZpZy5zdGF0ZUxlc3NQYXRoLCBkYXRhKTtcbiAgICByZXR1cm4gJHJlcXVlc3Q7XG4gIH1cblxuICBzZW5kTG9nKGRhdGE6IGFueSkge1xuICAgIGNvbnN0IHsgVHJhbnNhY3Rpb25JRCB9ID0gZGF0YS5SZXNwb25zZTtcbiAgICBjb25zdCAkcmVxdWVzdCA9IHRoaXMuaHR0cC5wb3N0KHRoaXMuY29uZmlnLmVycm9yTG9nZ2luZ1BhdGgsIGRhdGEsIHtcbiAgICAgIGhlYWRlcnM6IG5ldyBIdHRwSGVhZGVycyh7XG4gICAgICAgIFRyYW5zYWN0aW9uSUQsXG4gICAgICB9KSxcbiAgICB9KTtcbiAgICByZXR1cm4gJHJlcXVlc3Q7XG4gIH1cblxuICBidXJzdChJbWFnZXM6IHN0cmluZ1tdLCBCbHVyVmFsdWVzOmFueVtdKSB7XG4gICAgY29uc3QgZGF0YSA9IHtcbiAgICAgIEFjY2VwdFRlcm1zQW5kQ29uZGl0aW9uczogdHJ1ZSxcbiAgICAgIERhdGFGaWVsZHM6IHtcbiAgICAgICAgSW1hZ2VzLFxuICAgICAgICBCbHVyVmFsdWVzLFxuICAgICAgfSxcbiAgICB9O1xuXG4gICAgY29uc3QgJHJlcXVlc3QgPSB0aGlzLmh0dHAucG9zdCh0aGlzLmNvbmZpZy52YWxpZGF0aW9uUGF0aCwgZGF0YSk7XG4gICAgcmV0dXJuICRyZXF1ZXN0O1xuICB9XG5cbiAgY291bnRyaWVzKCkge1xuICAgIGlmICh0aGlzLmNvdW50cnlOYW1lcykge1xuICAgICAgcmV0dXJuIG9mKHRoaXMuY291bnRyeU5hbWVzKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoJy9hc3NldHMvZGF0YS9jb3VudHJpZXMyLmpzb24nKS5waXBlKFxuICAgICAgbWFwKChkYXRhOiBhbnkpID0+IHtcbiAgICAgICAgdGhpcy5jb3VudHJpZXNEYXRhID0gZGF0YS5kYXRhO1xuICAgICAgICByZXR1cm4gdGhpcy5jb3VudHJpZXNEYXRhO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgZ2V0IGNvdW50cnlOYW1lcygpIHtcbiAgICByZXR1cm4gW1xuICAgICAgeyBsYWJlbDogJ0FydWJhJywgdmFsdWU6ICdBVycgfSxcbiAgICAgIHsgbGFiZWw6ICdBZmdoYW5pc3RhbicsIHZhbHVlOiAnQUYnIH0sXG4gICAgICB7IGxhYmVsOiAnQW5nb2xhJywgdmFsdWU6ICdBTycgfSxcbiAgICAgIHsgbGFiZWw6ICdBbmd1aWxsYScsIHZhbHVlOiAnQUknIH0sXG4gICAgICB7IGxhYmVsOiAnw4VsYW5kIElzbGFuZHMnLCB2YWx1ZTogJ0FYJyB9LFxuICAgICAgeyBsYWJlbDogJ0FsYmFuaWEnLCB2YWx1ZTogJ0FMJyB9LFxuICAgICAgeyBsYWJlbDogJ0FuZG9ycmEnLCB2YWx1ZTogJ0FEJyB9LFxuICAgICAgeyBsYWJlbDogJ1VuaXRlZCBBcmFiIEVtaXJhdGVzJywgdmFsdWU6ICdBRScgfSxcbiAgICAgIHsgbGFiZWw6ICdBcmdlbnRpbmEnLCB2YWx1ZTogJ0FSJyB9LFxuICAgICAgeyBsYWJlbDogJ0FybWVuaWEnLCB2YWx1ZTogJ0FNJyB9LFxuICAgICAgeyBsYWJlbDogJ0FtZXJpY2FuIFNhbW9hJywgdmFsdWU6ICdBUycgfSxcbiAgICAgIHsgbGFiZWw6ICdBbnRhcmN0aWNhJywgdmFsdWU6ICdBUScgfSxcbiAgICAgIHsgbGFiZWw6ICdGcmVuY2ggU291dGhlcm4gYW5kIEFudGFyY3RpYyBMYW5kcycsIHZhbHVlOiAnVEYnIH0sXG4gICAgICB7IGxhYmVsOiAnQW50aWd1YSBhbmQgQmFyYnVkYScsIHZhbHVlOiAnQUcnIH0sXG4gICAgICB7IGxhYmVsOiAnQXVzdHJhbGlhJywgdmFsdWU6ICdBVScgfSxcbiAgICAgIHsgbGFiZWw6ICdBdXN0cmlhJywgdmFsdWU6ICdBVCcgfSxcbiAgICAgIHsgbGFiZWw6ICdBemVyYmFpamFuJywgdmFsdWU6ICdBWicgfSxcbiAgICAgIHsgbGFiZWw6ICdCdXJ1bmRpJywgdmFsdWU6ICdCSScgfSxcbiAgICAgIHsgbGFiZWw6ICdCZWxnaXVtJywgdmFsdWU6ICdCRScgfSxcbiAgICAgIHsgbGFiZWw6ICdCZW5pbicsIHZhbHVlOiAnQkonIH0sXG4gICAgICB7IGxhYmVsOiAnQnVya2luYSBGYXNvJywgdmFsdWU6ICdCRicgfSxcbiAgICAgIHsgbGFiZWw6ICdCYW5nbGFkZXNoJywgdmFsdWU6ICdCRCcgfSxcbiAgICAgIHsgbGFiZWw6ICdCdWxnYXJpYScsIHZhbHVlOiAnQkcnIH0sXG4gICAgICB7IGxhYmVsOiAnQmFocmFpbicsIHZhbHVlOiAnQkgnIH0sXG4gICAgICB7IGxhYmVsOiAnQmFoYW1hcycsIHZhbHVlOiAnQlMnIH0sXG4gICAgICB7IGxhYmVsOiAnQm9zbmlhIGFuZCBIZXJ6ZWdvdmluYScsIHZhbHVlOiAnQkEnIH0sXG4gICAgICB7IGxhYmVsOiAnU2FpbnQgQmFydGjDqWxlbXknLCB2YWx1ZTogJ0JMJyB9LFxuICAgICAgeyBsYWJlbDogJ1NhaW50IEhlbGVuYSwgQXNjZW5zaW9uIGFuZCBUcmlzdGFuIGRhIEN1bmhhJywgdmFsdWU6ICdTSCcgfSxcbiAgICAgIHsgbGFiZWw6ICdCZWxhcnVzJywgdmFsdWU6ICdCWScgfSxcbiAgICAgIHsgbGFiZWw6ICdCZWxpemUnLCB2YWx1ZTogJ0JaJyB9LFxuICAgICAgeyBsYWJlbDogJ0Jlcm11ZGEnLCB2YWx1ZTogJ0JNJyB9LFxuICAgICAgeyBsYWJlbDogJ0JvbGl2aWEnLCB2YWx1ZTogJ0JPJyB9LFxuICAgICAgeyBsYWJlbDogJ0NhcmliYmVhbiBOZXRoZXJsYW5kcycsIHZhbHVlOiAnQlEnIH0sXG4gICAgICB7IGxhYmVsOiAnQnJhemlsJywgdmFsdWU6ICdCUicgfSxcbiAgICAgIHsgbGFiZWw6ICdCYXJiYWRvcycsIHZhbHVlOiAnQkInIH0sXG4gICAgICB7IGxhYmVsOiAnQnJ1bmVpJywgdmFsdWU6ICdCTicgfSxcbiAgICAgIHsgbGFiZWw6ICdCaHV0YW4nLCB2YWx1ZTogJ0JUJyB9LFxuICAgICAgeyBsYWJlbDogJ0JvdXZldCBJc2xhbmQnLCB2YWx1ZTogJ0JWJyB9LFxuICAgICAgeyBsYWJlbDogJ0JvdHN3YW5hJywgdmFsdWU6ICdCVycgfSxcbiAgICAgIHsgbGFiZWw6ICdDZW50cmFsIEFmcmljYW4gUmVwdWJsaWMnLCB2YWx1ZTogJ0NGJyB9LFxuICAgICAgeyBsYWJlbDogJ0NhbmFkYScsIHZhbHVlOiAnQ0EnIH0sXG4gICAgICB7IGxhYmVsOiAnQ29jb3MgKEtlZWxpbmcpIElzbGFuZHMnLCB2YWx1ZTogJ0NDJyB9LFxuICAgICAgeyBsYWJlbDogJ1N3aXR6ZXJsYW5kJywgdmFsdWU6ICdDSCcgfSxcbiAgICAgIHsgbGFiZWw6ICdDaGlsZScsIHZhbHVlOiAnQ0wnIH0sXG4gICAgICB7IGxhYmVsOiAnQ2hpbmEnLCB2YWx1ZTogJ0NOJyB9LFxuICAgICAgeyBsYWJlbDogJ0l2b3J5IENvYXN0JywgdmFsdWU6ICdDSScgfSxcbiAgICAgIHsgbGFiZWw6ICdDYW1lcm9vbicsIHZhbHVlOiAnQ00nIH0sXG4gICAgICB7IGxhYmVsOiAnRFIgQ29uZ28nLCB2YWx1ZTogJ0NEJyB9LFxuICAgICAgeyBsYWJlbDogJ1JlcHVibGljIG9mIHRoZSBDb25nbycsIHZhbHVlOiAnQ0cnIH0sXG4gICAgICB7IGxhYmVsOiAnQ29vayBJc2xhbmRzJywgdmFsdWU6ICdDSycgfSxcbiAgICAgIHsgbGFiZWw6ICdDb2xvbWJpYScsIHZhbHVlOiAnQ08nIH0sXG4gICAgICB7IGxhYmVsOiAnQ29tb3JvcycsIHZhbHVlOiAnS00nIH0sXG4gICAgICB7IGxhYmVsOiAnQ2FwZSBWZXJkZScsIHZhbHVlOiAnQ1YnIH0sXG4gICAgICB7IGxhYmVsOiAnQ29zdGEgUmljYScsIHZhbHVlOiAnQ1InIH0sXG4gICAgICB7IGxhYmVsOiAnQ3ViYScsIHZhbHVlOiAnQ1UnIH0sXG4gICAgICB7IGxhYmVsOiAnQ3VyYcOnYW8nLCB2YWx1ZTogJ0NXJyB9LFxuICAgICAgeyBsYWJlbDogJ0NocmlzdG1hcyBJc2xhbmQnLCB2YWx1ZTogJ0NYJyB9LFxuICAgICAgeyBsYWJlbDogJ0NheW1hbiBJc2xhbmRzJywgdmFsdWU6ICdLWScgfSxcbiAgICAgIHsgbGFiZWw6ICdDeXBydXMnLCB2YWx1ZTogJ0NZJyB9LFxuICAgICAgeyBsYWJlbDogJ0N6ZWNoaWEnLCB2YWx1ZTogJ0NaJyB9LFxuICAgICAgeyBsYWJlbDogJ0dlcm1hbnknLCB2YWx1ZTogJ0RFJyB9LFxuICAgICAgeyBsYWJlbDogJ0RqaWJvdXRpJywgdmFsdWU6ICdESicgfSxcbiAgICAgIHsgbGFiZWw6ICdEb21pbmljYScsIHZhbHVlOiAnRE0nIH0sXG4gICAgICB7IGxhYmVsOiAnRGVubWFyaycsIHZhbHVlOiAnREsnIH0sXG4gICAgICB7IGxhYmVsOiAnRG9taW5pY2FuIFJlcHVibGljJywgdmFsdWU6ICdETycgfSxcbiAgICAgIHsgbGFiZWw6ICdBbGdlcmlhJywgdmFsdWU6ICdEWicgfSxcbiAgICAgIHsgbGFiZWw6ICdFY3VhZG9yJywgdmFsdWU6ICdFQycgfSxcbiAgICAgIHsgbGFiZWw6ICdFZ3lwdCcsIHZhbHVlOiAnRUcnIH0sXG4gICAgICB7IGxhYmVsOiAnRXJpdHJlYScsIHZhbHVlOiAnRVInIH0sXG4gICAgICB7IGxhYmVsOiAnV2VzdGVybiBTYWhhcmEnLCB2YWx1ZTogJ0VIJyB9LFxuICAgICAgeyBsYWJlbDogJ1NwYWluJywgdmFsdWU6ICdFUycgfSxcbiAgICAgIHsgbGFiZWw6ICdFc3RvbmlhJywgdmFsdWU6ICdFRScgfSxcbiAgICAgIHsgbGFiZWw6ICdFdGhpb3BpYScsIHZhbHVlOiAnRVQnIH0sXG4gICAgICB7IGxhYmVsOiAnRmlubGFuZCcsIHZhbHVlOiAnRkknIH0sXG4gICAgICB7IGxhYmVsOiAnRmlqaScsIHZhbHVlOiAnRkonIH0sXG4gICAgICB7IGxhYmVsOiAnRmFsa2xhbmQgSXNsYW5kcycsIHZhbHVlOiAnRksnIH0sXG4gICAgICB7IGxhYmVsOiAnRnJhbmNlJywgdmFsdWU6ICdGUicgfSxcbiAgICAgIHsgbGFiZWw6ICdGYXJvZSBJc2xhbmRzJywgdmFsdWU6ICdGTycgfSxcbiAgICAgIHsgbGFiZWw6ICdNaWNyb25lc2lhJywgdmFsdWU6ICdGTScgfSxcbiAgICAgIHsgbGFiZWw6ICdHYWJvbicsIHZhbHVlOiAnR0EnIH0sXG4gICAgICB7IGxhYmVsOiAnVW5pdGVkIEtpbmdkb20nLCB2YWx1ZTogJ0dCJyB9LFxuICAgICAgeyBsYWJlbDogJ0dlb3JnaWEnLCB2YWx1ZTogJ0dFJyB9LFxuICAgICAgeyBsYWJlbDogJ0d1ZXJuc2V5JywgdmFsdWU6ICdHRycgfSxcbiAgICAgIHsgbGFiZWw6ICdHaGFuYScsIHZhbHVlOiAnR0gnIH0sXG4gICAgICB7IGxhYmVsOiAnR2licmFsdGFyJywgdmFsdWU6ICdHSScgfSxcbiAgICAgIHsgbGFiZWw6ICdHdWluZWEnLCB2YWx1ZTogJ0dOJyB9LFxuICAgICAgeyBsYWJlbDogJ0d1YWRlbG91cGUnLCB2YWx1ZTogJ0dQJyB9LFxuICAgICAgeyBsYWJlbDogJ0dhbWJpYScsIHZhbHVlOiAnR00nIH0sXG4gICAgICB7IGxhYmVsOiAnR3VpbmVhLUJpc3NhdScsIHZhbHVlOiAnR1cnIH0sXG4gICAgICB7IGxhYmVsOiAnRXF1YXRvcmlhbCBHdWluZWEnLCB2YWx1ZTogJ0dRJyB9LFxuICAgICAgeyBsYWJlbDogJ0dyZWVjZScsIHZhbHVlOiAnR1InIH0sXG4gICAgICB7IGxhYmVsOiAnR3JlbmFkYScsIHZhbHVlOiAnR0QnIH0sXG4gICAgICB7IGxhYmVsOiAnR3JlZW5sYW5kJywgdmFsdWU6ICdHTCcgfSxcbiAgICAgIHsgbGFiZWw6ICdHdWF0ZW1hbGEnLCB2YWx1ZTogJ0dUJyB9LFxuICAgICAgeyBsYWJlbDogJ0ZyZW5jaCBHdWlhbmEnLCB2YWx1ZTogJ0dGJyB9LFxuICAgICAgeyBsYWJlbDogJ0d1YW0nLCB2YWx1ZTogJ0dVJyB9LFxuICAgICAgeyBsYWJlbDogJ0d1eWFuYScsIHZhbHVlOiAnR1knIH0sXG4gICAgICB7IGxhYmVsOiAnSG9uZyBLb25nJywgdmFsdWU6ICdISycgfSxcbiAgICAgIHsgbGFiZWw6ICdIZWFyZCBJc2xhbmQgYW5kIE1jRG9uYWxkIElzbGFuZHMnLCB2YWx1ZTogJ0hNJyB9LFxuICAgICAgeyBsYWJlbDogJ0hvbmR1cmFzJywgdmFsdWU6ICdITicgfSxcbiAgICAgIHsgbGFiZWw6ICdDcm9hdGlhJywgdmFsdWU6ICdIUicgfSxcbiAgICAgIHsgbGFiZWw6ICdIYWl0aScsIHZhbHVlOiAnSFQnIH0sXG4gICAgICB7IGxhYmVsOiAnSHVuZ2FyeScsIHZhbHVlOiAnSFUnIH0sXG4gICAgICB7IGxhYmVsOiAnSW5kb25lc2lhJywgdmFsdWU6ICdJRCcgfSxcbiAgICAgIHsgbGFiZWw6ICdJc2xlIG9mIE1hbicsIHZhbHVlOiAnSU0nIH0sXG4gICAgICB7IGxhYmVsOiAnSW5kaWEnLCB2YWx1ZTogJ0lOJyB9LFxuICAgICAgeyBsYWJlbDogJ0JyaXRpc2ggSW5kaWFuIE9jZWFuIFRlcnJpdG9yeScsIHZhbHVlOiAnSU8nIH0sXG4gICAgICB7IGxhYmVsOiAnSXJlbGFuZCcsIHZhbHVlOiAnSUUnIH0sXG4gICAgICB7IGxhYmVsOiAnSXJhbicsIHZhbHVlOiAnSVInIH0sXG4gICAgICB7IGxhYmVsOiAnSXJhcScsIHZhbHVlOiAnSVEnIH0sXG4gICAgICB7IGxhYmVsOiAnSWNlbGFuZCcsIHZhbHVlOiAnSVMnIH0sXG4gICAgICB7IGxhYmVsOiAnSXNyYWVsJywgdmFsdWU6ICdJTCcgfSxcbiAgICAgIHsgbGFiZWw6ICdJdGFseScsIHZhbHVlOiAnSVQnIH0sXG4gICAgICB7IGxhYmVsOiAnSmFtYWljYScsIHZhbHVlOiAnSk0nIH0sXG4gICAgICB7IGxhYmVsOiAnSmVyc2V5JywgdmFsdWU6ICdKRScgfSxcbiAgICAgIHsgbGFiZWw6ICdKb3JkYW4nLCB2YWx1ZTogJ0pPJyB9LFxuICAgICAgeyBsYWJlbDogJ0phcGFuJywgdmFsdWU6ICdKUCcgfSxcbiAgICAgIHsgbGFiZWw6ICdLYXpha2hzdGFuJywgdmFsdWU6ICdLWicgfSxcbiAgICAgIHsgbGFiZWw6ICdLZW55YScsIHZhbHVlOiAnS0UnIH0sXG4gICAgICB7IGxhYmVsOiAnS3lyZ3l6c3RhbicsIHZhbHVlOiAnS0cnIH0sXG4gICAgICB7IGxhYmVsOiAnQ2FtYm9kaWEnLCB2YWx1ZTogJ0tIJyB9LFxuICAgICAgeyBsYWJlbDogJ0tpcmliYXRpJywgdmFsdWU6ICdLSScgfSxcbiAgICAgIHsgbGFiZWw6ICdTYWludCBLaXR0cyBhbmQgTmV2aXMnLCB2YWx1ZTogJ0tOJyB9LFxuICAgICAgeyBsYWJlbDogJ1NvdXRoIEtvcmVhJywgdmFsdWU6ICdLUicgfSxcbiAgICAgIHsgbGFiZWw6ICdLdXdhaXQnLCB2YWx1ZTogJ0tXJyB9LFxuICAgICAgeyBsYWJlbDogJ0xhb3MnLCB2YWx1ZTogJ0xBJyB9LFxuICAgICAgeyBsYWJlbDogJ0xlYmFub24nLCB2YWx1ZTogJ0xCJyB9LFxuICAgICAgeyBsYWJlbDogJ0xpYmVyaWEnLCB2YWx1ZTogJ0xSJyB9LFxuICAgICAgeyBsYWJlbDogJ0xpYnlhJywgdmFsdWU6ICdMWScgfSxcbiAgICAgIHsgbGFiZWw6ICdTYWludCBMdWNpYScsIHZhbHVlOiAnTEMnIH0sXG4gICAgICB7IGxhYmVsOiAnTGllY2h0ZW5zdGVpbicsIHZhbHVlOiAnTEknIH0sXG4gICAgICB7IGxhYmVsOiAnU3JpIExhbmthJywgdmFsdWU6ICdMSycgfSxcbiAgICAgIHsgbGFiZWw6ICdMZXNvdGhvJywgdmFsdWU6ICdMUycgfSxcbiAgICAgIHsgbGFiZWw6ICdMaXRodWFuaWEnLCB2YWx1ZTogJ0xUJyB9LFxuICAgICAgeyBsYWJlbDogJ0x1eGVtYm91cmcnLCB2YWx1ZTogJ0xVJyB9LFxuICAgICAgeyBsYWJlbDogJ0xhdHZpYScsIHZhbHVlOiAnTFYnIH0sXG4gICAgICB7IGxhYmVsOiAnTWFjYXUnLCB2YWx1ZTogJ01PJyB9LFxuICAgICAgeyBsYWJlbDogJ1NhaW50IE1hcnRpbicsIHZhbHVlOiAnTUYnIH0sXG4gICAgICB7IGxhYmVsOiAnTW9yb2NjbycsIHZhbHVlOiAnTUEnIH0sXG4gICAgICB7IGxhYmVsOiAnTW9uYWNvJywgdmFsdWU6ICdNQycgfSxcbiAgICAgIHsgbGFiZWw6ICdNb2xkb3ZhJywgdmFsdWU6ICdNRCcgfSxcbiAgICAgIHsgbGFiZWw6ICdNYWRhZ2FzY2FyJywgdmFsdWU6ICdNRycgfSxcbiAgICAgIHsgbGFiZWw6ICdNYWxkaXZlcycsIHZhbHVlOiAnTVYnIH0sXG4gICAgICB7IGxhYmVsOiAnTWV4aWNvJywgdmFsdWU6ICdNWCcgfSxcbiAgICAgIHsgbGFiZWw6ICdNYXJzaGFsbCBJc2xhbmRzJywgdmFsdWU6ICdNSCcgfSxcbiAgICAgIHsgbGFiZWw6ICdNYWNlZG9uaWEnLCB2YWx1ZTogJ01LJyB9LFxuICAgICAgeyBsYWJlbDogJ01hbGknLCB2YWx1ZTogJ01MJyB9LFxuICAgICAgeyBsYWJlbDogJ01hbHRhJywgdmFsdWU6ICdNVCcgfSxcbiAgICAgIHsgbGFiZWw6ICdNeWFubWFyJywgdmFsdWU6ICdNTScgfSxcbiAgICAgIHsgbGFiZWw6ICdNb250ZW5lZ3JvJywgdmFsdWU6ICdNRScgfSxcbiAgICAgIHsgbGFiZWw6ICdNb25nb2xpYScsIHZhbHVlOiAnTU4nIH0sXG4gICAgICB7IGxhYmVsOiAnTm9ydGhlcm4gTWFyaWFuYSBJc2xhbmRzJywgdmFsdWU6ICdNUCcgfSxcbiAgICAgIHsgbGFiZWw6ICdNb3phbWJpcXVlJywgdmFsdWU6ICdNWicgfSxcbiAgICAgIHsgbGFiZWw6ICdNYXVyaXRhbmlhJywgdmFsdWU6ICdNUicgfSxcbiAgICAgIHsgbGFiZWw6ICdNb250c2VycmF0JywgdmFsdWU6ICdNUycgfSxcbiAgICAgIHsgbGFiZWw6ICdNYXJ0aW5pcXVlJywgdmFsdWU6ICdNUScgfSxcbiAgICAgIHsgbGFiZWw6ICdNYXVyaXRpdXMnLCB2YWx1ZTogJ01VJyB9LFxuICAgICAgeyBsYWJlbDogJ01hbGF3aScsIHZhbHVlOiAnTVcnIH0sXG4gICAgICB7IGxhYmVsOiAnTWFsYXlzaWEnLCB2YWx1ZTogJ01ZJyB9LFxuICAgICAgeyBsYWJlbDogJ01heW90dGUnLCB2YWx1ZTogJ1lUJyB9LFxuICAgICAgeyBsYWJlbDogJ05hbWliaWEnLCB2YWx1ZTogJ05BJyB9LFxuICAgICAgeyBsYWJlbDogJ05ldyBDYWxlZG9uaWEnLCB2YWx1ZTogJ05DJyB9LFxuICAgICAgeyBsYWJlbDogJ05pZ2VyJywgdmFsdWU6ICdORScgfSxcbiAgICAgIHsgbGFiZWw6ICdOb3Jmb2xrIElzbGFuZCcsIHZhbHVlOiAnTkYnIH0sXG4gICAgICB7IGxhYmVsOiAnTmlnZXJpYScsIHZhbHVlOiAnTkcnIH0sXG4gICAgICB7IGxhYmVsOiAnTmljYXJhZ3VhJywgdmFsdWU6ICdOSScgfSxcbiAgICAgIHsgbGFiZWw6ICdOaXVlJywgdmFsdWU6ICdOVScgfSxcbiAgICAgIHsgbGFiZWw6ICdOZXRoZXJsYW5kcycsIHZhbHVlOiAnTkwnIH0sXG4gICAgICB7IGxhYmVsOiAnTm9yd2F5JywgdmFsdWU6ICdOTycgfSxcbiAgICAgIHsgbGFiZWw6ICdOZXBhbCcsIHZhbHVlOiAnTlAnIH0sXG4gICAgICB7IGxhYmVsOiAnTmF1cnUnLCB2YWx1ZTogJ05SJyB9LFxuICAgICAgeyBsYWJlbDogJ05ldyBaZWFsYW5kJywgdmFsdWU6ICdOWicgfSxcbiAgICAgIHsgbGFiZWw6ICdPbWFuJywgdmFsdWU6ICdPTScgfSxcbiAgICAgIHsgbGFiZWw6ICdQYWtpc3RhbicsIHZhbHVlOiAnUEsnIH0sXG4gICAgICB7IGxhYmVsOiAnUGFuYW1hJywgdmFsdWU6ICdQQScgfSxcbiAgICAgIHsgbGFiZWw6ICdQaXRjYWlybiBJc2xhbmRzJywgdmFsdWU6ICdQTicgfSxcbiAgICAgIHsgbGFiZWw6ICdQZXJ1JywgdmFsdWU6ICdQRScgfSxcbiAgICAgIHsgbGFiZWw6ICdQaGlsaXBwaW5lcycsIHZhbHVlOiAnUEgnIH0sXG4gICAgICB7IGxhYmVsOiAnUGFsYXUnLCB2YWx1ZTogJ1BXJyB9LFxuICAgICAgeyBsYWJlbDogJ1BhcHVhIE5ldyBHdWluZWEnLCB2YWx1ZTogJ1BHJyB9LFxuICAgICAgeyBsYWJlbDogJ1BvbGFuZCcsIHZhbHVlOiAnUEwnIH0sXG4gICAgICB7IGxhYmVsOiAnUHVlcnRvIFJpY28nLCB2YWx1ZTogJ1BSJyB9LFxuICAgICAgeyBsYWJlbDogJ05vcnRoIEtvcmVhJywgdmFsdWU6ICdLUCcgfSxcbiAgICAgIHsgbGFiZWw6ICdQb3J0dWdhbCcsIHZhbHVlOiAnUFQnIH0sXG4gICAgICB7IGxhYmVsOiAnUGFyYWd1YXknLCB2YWx1ZTogJ1BZJyB9LFxuICAgICAgeyBsYWJlbDogJ1BhbGVzdGluZScsIHZhbHVlOiAnUFMnIH0sXG4gICAgICB7IGxhYmVsOiAnRnJlbmNoIFBvbHluZXNpYScsIHZhbHVlOiAnUEYnIH0sXG4gICAgICB7IGxhYmVsOiAnUWF0YXInLCB2YWx1ZTogJ1FBJyB9LFxuICAgICAgeyBsYWJlbDogJ1LDqXVuaW9uJywgdmFsdWU6ICdSRScgfSxcbiAgICAgIHsgbGFiZWw6ICdSb21hbmlhJywgdmFsdWU6ICdSTycgfSxcbiAgICAgIHsgbGFiZWw6ICdSdXNzaWEnLCB2YWx1ZTogJ1JVJyB9LFxuICAgICAgeyBsYWJlbDogJ1J3YW5kYScsIHZhbHVlOiAnUlcnIH0sXG4gICAgICB7IGxhYmVsOiAnU2F1ZGkgQXJhYmlhJywgdmFsdWU6ICdTQScgfSxcbiAgICAgIHsgbGFiZWw6ICdTdWRhbicsIHZhbHVlOiAnU0QnIH0sXG4gICAgICB7IGxhYmVsOiAnU2VuZWdhbCcsIHZhbHVlOiAnU04nIH0sXG4gICAgICB7IGxhYmVsOiAnU2luZ2Fwb3JlJywgdmFsdWU6ICdTRycgfSxcbiAgICAgIHsgbGFiZWw6ICdTb3V0aCBHZW9yZ2lhJywgdmFsdWU6ICdHUycgfSxcbiAgICAgIHsgbGFiZWw6ICdTdmFsYmFyZCBhbmQgSmFuIE1heWVuJywgdmFsdWU6ICdTSicgfSxcbiAgICAgIHsgbGFiZWw6ICdTb2xvbW9uIElzbGFuZHMnLCB2YWx1ZTogJ1NCJyB9LFxuICAgICAgeyBsYWJlbDogJ1NpZXJyYSBMZW9uZScsIHZhbHVlOiAnU0wnIH0sXG4gICAgICB7IGxhYmVsOiAnRWwgU2FsdmFkb3InLCB2YWx1ZTogJ1NWJyB9LFxuICAgICAgeyBsYWJlbDogJ1NhbiBNYXJpbm8nLCB2YWx1ZTogJ1NNJyB9LFxuICAgICAgeyBsYWJlbDogJ1NvbWFsaWEnLCB2YWx1ZTogJ1NPJyB9LFxuICAgICAgeyBsYWJlbDogJ1NhaW50IFBpZXJyZSBhbmQgTWlxdWVsb24nLCB2YWx1ZTogJ1BNJyB9LFxuICAgICAgeyBsYWJlbDogJ1NlcmJpYScsIHZhbHVlOiAnUlMnIH0sXG4gICAgICB7IGxhYmVsOiAnU291dGggU3VkYW4nLCB2YWx1ZTogJ1NTJyB9LFxuICAgICAgeyBsYWJlbDogJ1PDo28gVG9tw6kgYW5kIFByw61uY2lwZScsIHZhbHVlOiAnU1QnIH0sXG4gICAgICB7IGxhYmVsOiAnU3VyaW5hbWUnLCB2YWx1ZTogJ1NSJyB9LFxuICAgICAgeyBsYWJlbDogJ1Nsb3Zha2lhJywgdmFsdWU6ICdTSycgfSxcbiAgICAgIHsgbGFiZWw6ICdTbG92ZW5pYScsIHZhbHVlOiAnU0knIH0sXG4gICAgICB7IGxhYmVsOiAnU3dlZGVuJywgdmFsdWU6ICdTRScgfSxcbiAgICAgIHsgbGFiZWw6ICdTd2F6aWxhbmQnLCB2YWx1ZTogJ1NaJyB9LFxuICAgICAgeyBsYWJlbDogJ1NleWNoZWxsZXMnLCB2YWx1ZTogJ1NDJyB9LFxuICAgICAgeyBsYWJlbDogJ1N5cmlhJywgdmFsdWU6ICdTWScgfSxcbiAgICAgIHsgbGFiZWw6ICdUdXJrcyBhbmQgQ2FpY29zIElzbGFuZHMnLCB2YWx1ZTogJ1RDJyB9LFxuICAgICAgeyBsYWJlbDogJ0NoYWQnLCB2YWx1ZTogJ1REJyB9LFxuICAgICAgeyBsYWJlbDogJ1RvZ28nLCB2YWx1ZTogJ1RHJyB9LFxuICAgICAgeyBsYWJlbDogJ1RoYWlsYW5kJywgdmFsdWU6ICdUSCcgfSxcbiAgICAgIHsgbGFiZWw6ICdUYWppa2lzdGFuJywgdmFsdWU6ICdUSicgfSxcbiAgICAgIHsgbGFiZWw6ICdUb2tlbGF1JywgdmFsdWU6ICdUSycgfSxcbiAgICAgIHsgbGFiZWw6ICdUdXJrbWVuaXN0YW4nLCB2YWx1ZTogJ1RNJyB9LFxuICAgICAgeyBsYWJlbDogJ1RpbW9yLUxlc3RlJywgdmFsdWU6ICdUTCcgfSxcbiAgICAgIHsgbGFiZWw6ICdUb25nYScsIHZhbHVlOiAnVE8nIH0sXG4gICAgICB7IGxhYmVsOiAnVHJpbmlkYWQgYW5kIFRvYmFnbycsIHZhbHVlOiAnVFQnIH0sXG4gICAgICB7IGxhYmVsOiAnVHVuaXNpYScsIHZhbHVlOiAnVE4nIH0sXG4gICAgICB7IGxhYmVsOiAnVHVya2V5JywgdmFsdWU6ICdUUicgfSxcbiAgICAgIHsgbGFiZWw6ICdUdXZhbHUnLCB2YWx1ZTogJ1RWJyB9LFxuICAgICAgeyBsYWJlbDogJ1RhaXdhbicsIHZhbHVlOiAnVFcnIH0sXG4gICAgICB7IGxhYmVsOiAnVGFuemFuaWEnLCB2YWx1ZTogJ1RaJyB9LFxuICAgICAgeyBsYWJlbDogJ1VnYW5kYScsIHZhbHVlOiAnVUcnIH0sXG4gICAgICB7IGxhYmVsOiAnVWtyYWluZScsIHZhbHVlOiAnVUEnIH0sXG4gICAgICB7IGxhYmVsOiAnVW5pdGVkIFN0YXRlcyBNaW5vciBPdXRseWluZyBJc2xhbmRzJywgdmFsdWU6ICdVTScgfSxcbiAgICAgIHsgbGFiZWw6ICdVcnVndWF5JywgdmFsdWU6ICdVWScgfSxcbiAgICAgIHsgbGFiZWw6ICdVbml0ZWQgU3RhdGVzJywgdmFsdWU6ICdVUycgfSxcbiAgICAgIHsgbGFiZWw6ICdVemJla2lzdGFuJywgdmFsdWU6ICdVWicgfSxcbiAgICAgIHsgbGFiZWw6ICdWYXRpY2FuIENpdHknLCB2YWx1ZTogJ1ZBJyB9LFxuICAgICAgeyBsYWJlbDogJ1NhaW50IFZpbmNlbnQgYW5kIHRoZSBHcmVuYWRpbmVzJywgdmFsdWU6ICdWQycgfSxcbiAgICAgIHsgbGFiZWw6ICdWZW5lenVlbGEnLCB2YWx1ZTogJ1ZFJyB9LFxuICAgICAgeyBsYWJlbDogJ0JyaXRpc2ggVmlyZ2luIElzbGFuZHMnLCB2YWx1ZTogJ1ZHJyB9LFxuICAgICAgeyBsYWJlbDogJ1VuaXRlZCBTdGF0ZXMgVmlyZ2luIElzbGFuZHMnLCB2YWx1ZTogJ1ZJJyB9LFxuICAgICAgeyBsYWJlbDogJ1ZpZXRuYW0nLCB2YWx1ZTogJ1ZOJyB9LFxuICAgICAgeyBsYWJlbDogJ1ZhbnVhdHUnLCB2YWx1ZTogJ1ZVJyB9LFxuICAgICAgeyBsYWJlbDogJ1dhbGxpcyBhbmQgRnV0dW5hJywgdmFsdWU6ICdXRicgfSxcbiAgICAgIHsgbGFiZWw6ICdTYW1vYScsIHZhbHVlOiAnV1MnIH0sXG4gICAgICB7IGxhYmVsOiAnWWVtZW4nLCB2YWx1ZTogJ1lFJyB9LFxuICAgICAgeyBsYWJlbDogJ1NvdXRoIEFmcmljYScsIHZhbHVlOiAnWkEnIH0sXG4gICAgICB7IGxhYmVsOiAnWmFtYmlhJywgdmFsdWU6ICdaTScgfSxcbiAgICAgIHsgbGFiZWw6ICdaaW1iYWJ3ZScsIHZhbHVlOiAnWlcnIH0sXG4gICAgXTtcbiAgfVxuICBjb3VudHJ5TGlzdCgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgQUZHOiAnQUYnLFxuICAgICAgQUxCOiAnQUwnLFxuICAgICAgRFpBOiAnRFonLFxuICAgICAgQVNNOiAnQVMnLFxuICAgICAgQU5EOiAnQUQnLFxuICAgICAgQUdPOiAnQU8nLFxuICAgICAgQUlBOiAnQUknLFxuICAgICAgQVRHOiAnQUcnLFxuICAgICAgQVJHOiAnQVInLFxuICAgICAgQVJNOiAnQU0nLFxuICAgICAgQUJXOiAnQVcnLFxuICAgICAgQVVTOiAnQVUnLFxuICAgICAgQVVUOiAnQVQnLFxuICAgICAgQVpFOiAnQVonLFxuICAgICAgQkhTOiAnQlMnLFxuICAgICAgQkhSOiAnQkgnLFxuICAgICAgQkdEOiAnQkQnLFxuICAgICAgQlJCOiAnQkInLFxuICAgICAgQkxSOiAnQlknLFxuICAgICAgQkVMOiAnQkUnLFxuICAgICAgQkxaOiAnQlonLFxuICAgICAgQkVOOiAnQkonLFxuICAgICAgQk1VOiAnQk0nLFxuICAgICAgQlROOiAnQlQnLFxuICAgICAgQk9MOiAnQk8nLFxuICAgICAgQklIOiAnQkEnLFxuICAgICAgQldBOiAnQlcnLFxuICAgICAgQlJBOiAnQlInLFxuICAgICAgVkdCOiAnVkcnLFxuICAgICAgQlJOOiAnQk4nLFxuICAgICAgQkdSOiAnQkcnLFxuICAgICAgQkZBOiAnQkYnLFxuICAgICAgQkRJOiAnQkknLFxuICAgICAgS0hNOiAnS0gnLFxuICAgICAgQ01SOiAnQ00nLFxuICAgICAgQ0FOOiAnQ0EnLFxuICAgICAgQ1BWOiAnQ1YnLFxuICAgICAgQ0FGOiAnQ0YnLFxuICAgICAgVENEOiAnVEQnLFxuICAgICAgQ0hMOiAnQ0wnLFxuICAgICAgQ0hOOiAnQ04nLFxuICAgICAgSEtHOiAnSEsnLFxuICAgICAgTUFDOiAnTU8nLFxuICAgICAgQ09MOiAnQ08nLFxuICAgICAgQ09NOiAnS00nLFxuICAgICAgQ09HOiAnQ0cnLFxuICAgICAgQ1JJOiAnQ1InLFxuICAgICAgQ0lWOiAnQ0knLFxuICAgICAgSFJWOiAnSFInLFxuICAgICAgQ1VCOiAnQ1UnLFxuICAgICAgQ1lQOiAnQ1knLFxuICAgICAgQ1pFOiAnQ1onLFxuICAgICAgRE5LOiAnREsnLFxuICAgICAgREpJOiAnREonLFxuICAgICAgRE1BOiAnRE0nLFxuICAgICAgRE9NOiAnRE8nLFxuICAgICAgRUNVOiAnRUMnLFxuICAgICAgRUdZOiAnRUcnLFxuICAgICAgU0xWOiAnU1YnLFxuICAgICAgR05ROiAnR1EnLFxuICAgICAgRVJJOiAnRVInLFxuICAgICAgRVNUOiAnRUUnLFxuICAgICAgRVRIOiAnRVQnLFxuICAgICAgRlJPOiAnRk8nLFxuICAgICAgRkpJOiAnRkonLFxuICAgICAgRklOOiAnRkknLFxuICAgICAgRlJBOiAnRlInLFxuICAgICAgR1VGOiAnR0YnLFxuICAgICAgUFlGOiAnUEYnLFxuICAgICAgR0FCOiAnR0EnLFxuICAgICAgR01COiAnR00nLFxuICAgICAgR0VPOiAnR0UnLFxuICAgICAgREVVOiAnREUnLFxuICAgICAgR0hBOiAnR0gnLFxuICAgICAgR1JDOiAnR1InLFxuICAgICAgR1JMOiAnR0wnLFxuICAgICAgR1JEOiAnR0QnLFxuICAgICAgR0xQOiAnR1AnLFxuICAgICAgR1VNOiAnR1UnLFxuICAgICAgR1RNOiAnR1QnLFxuICAgICAgR05COiAnR1cnLFxuICAgICAgSFRJOiAnSFQnLFxuICAgICAgSE5EOiAnSE4nLFxuICAgICAgSVNMOiAnSVMnLFxuICAgICAgSUROOiAnSUQnLFxuICAgICAgSVJROiAnSVEnLFxuICAgICAgSVRBOiAnSVQnLFxuICAgICAgSlBOOiAnSlAnLFxuICAgICAgSk9SOiAnSk8nLFxuICAgICAgS0FaOiAnS1onLFxuICAgICAgS0VOOiAnS0UnLFxuICAgICAgS0lSOiAnS0knLFxuICAgICAgUFJLOiAnS1AnLFxuICAgICAgS09SOiAnS1InLFxuICAgICAgS1dUOiAnS1cnLFxuICAgICAgS0daOiAnS0cnLFxuICAgICAgTEFPOiAnTEEnLFxuICAgICAgTFZBOiAnTFYnLFxuICAgICAgTEJOOiAnTEInLFxuICAgICAgTFNPOiAnTFMnLFxuICAgICAgTEJSOiAnTFInLFxuICAgICAgTEJZOiAnTFknLFxuICAgICAgTElFOiAnTEknLFxuICAgICAgTFRVOiAnTFQnLFxuICAgICAgTFVYOiAnTFUnLFxuICAgICAgTURHOiAnTUcnLFxuICAgICAgTVdJOiAnTVcnLFxuICAgICAgTVlTOiAnTVknLFxuICAgICAgTURWOiAnTVYnLFxuICAgICAgTUxJOiAnTUwnLFxuICAgICAgTUxUOiAnTVQnLFxuICAgICAgTUhMOiAnTUgnLFxuICAgICAgTVRROiAnTVEnLFxuICAgICAgTVJUOiAnTVInLFxuICAgICAgTVVTOiAnTVUnLFxuICAgICAgTUVYOiAnTVgnLFxuICAgICAgRlNNOiAnRk0nLFxuICAgICAgTURBOiAnTUQnLFxuICAgICAgTUNPOiAnTUMnLFxuICAgICAgTU5HOiAnTU4nLFxuICAgICAgTU5FOiAnTUUnLFxuICAgICAgTVNSOiAnTVMnLFxuICAgICAgTUFSOiAnTUEnLFxuICAgICAgTU9aOiAnTVonLFxuICAgICAgTU1SOiAnTU0nLFxuICAgICAgTkFNOiAnTkEnLFxuICAgICAgTlJVOiAnTlInLFxuICAgICAgTlBMOiAnTlAnLFxuICAgICAgTkxEOiAnTkwnLFxuICAgICAgQU5UOiAnQU4nLFxuICAgICAgTkNMOiAnTkMnLFxuICAgICAgTlpMOiAnTlonLFxuICAgICAgTklDOiAnTkknLFxuICAgICAgTkVSOiAnTkUnLFxuICAgICAgTkdBOiAnTkcnLFxuICAgICAgTU5QOiAnTVAnLFxuICAgICAgTk9SOiAnTk8nLFxuICAgICAgT01OOiAnT00nLFxuICAgICAgUEFLOiAnUEsnLFxuICAgICAgUExXOiAnUFcnLFxuICAgICAgUFNFOiAnUFMnLFxuICAgICAgUEFOOiAnUEEnLFxuICAgICAgUE5HOiAnUEcnLFxuICAgICAgUFJZOiAnUFknLFxuICAgICAgUEVSOiAnUEUnLFxuICAgICAgUEhMOiAnUEgnLFxuICAgICAgUENOOiAnUE4nLFxuICAgICAgUE9MOiAnUEwnLFxuICAgICAgUFJUOiAnUFQnLFxuICAgICAgUFJJOiAnUFInLFxuICAgICAgUUFUOiAnUUEnLFxuICAgICAgUkVVOiAnUkUnLFxuICAgICAgUk9VOiAnUk8nLFxuICAgICAgUlVTOiAnUlUnLFxuICAgICAgUldBOiAnUlcnLFxuICAgICAgS05BOiAnS04nLFxuICAgICAgTENBOiAnTEMnLFxuICAgICAgVkNUOiAnVkMnLFxuICAgICAgV1NNOiAnV1MnLFxuICAgICAgU01SOiAnU00nLFxuICAgICAgU1RQOiAnU1QnLFxuICAgICAgU0FVOiAnU0EnLFxuICAgICAgU0VOOiAnU04nLFxuICAgICAgU1JCOiAnUlMnLFxuICAgICAgU1lDOiAnU0MnLFxuICAgICAgU0xFOiAnU0wnLFxuICAgICAgU0dQOiAnU0cnLFxuICAgICAgU1ZLOiAnU0snLFxuICAgICAgU1ZOOiAnU0knLFxuICAgICAgU0xCOiAnU0InLFxuICAgICAgU09NOiAnU08nLFxuICAgICAgWkFGOiAnWkEnLFxuICAgICAgRVNQOiAnRVMnLFxuICAgICAgTEtBOiAnTEsnLFxuICAgICAgU0ROOiAnU0QnLFxuICAgICAgU1VSOiAnU1InLFxuICAgICAgU1daOiAnU1onLFxuICAgICAgU1dFOiAnU0UnLFxuICAgICAgQ0hFOiAnQ0gnLFxuICAgICAgU1lSOiAnU1knLFxuICAgICAgVEpLOiAnVEonLFxuICAgICAgVFpBOiAnVFonLFxuICAgICAgVEhBOiAnVEgnLFxuICAgICAgVExTOiAnVEwnLFxuICAgICAgVEdPOiAnVEcnLFxuICAgICAgVE9OOiAnVE8nLFxuICAgICAgVFRPOiAnVFQnLFxuICAgICAgVFVOOiAnVE4nLFxuICAgICAgVFVSOiAnVFInLFxuICAgICAgVEtNOiAnVE0nLFxuICAgICAgVFVWOiAnVFYnLFxuICAgICAgVUdBOiAnVUcnLFxuICAgICAgVUtSOiAnVUEnLFxuICAgICAgQVJFOiAnQUUnLFxuICAgICAgR0JSOiAnR0InLFxuICAgICAgVVNBOiAnVVMnLFxuICAgICAgVVJZOiAnVVknLFxuICAgICAgVVpCOiAnVVonLFxuICAgICAgVlVUOiAnVlUnLFxuICAgICAgVkVOOiAnVkUnLFxuICAgICAgVk5NOiAnVk4nLFxuICAgICAgVklSOiAnVkknLFxuICAgICAgWUVNOiAnWUUnLFxuICAgICAgWk1COiAnWk0nLFxuICAgICAgWldFOiAnWlcnLFxuICAgIH07XG4gIH1cblxuICBnZXQgZmllbGRzKCk6IGFueSB7XG4gICAgcmV0dXJuIFtcbiAgICAgIHtcbiAgICAgICAga2V5OiAnQmlydGggRGF0ZScsXG4gICAgICAgIGZvcm06ICdiaXJ0aERhdGUnLFxuICAgICAgICB0eXBlOiAnZGF0ZScsXG4gICAgICAgIG1haW46IGZhbHNlLFxuICAgICAgICBibGFzdEtleTogJ0JpcnRoRGF0ZScsXG4gICAgICB9LFxuXG4gICAgICB7XG4gICAgICAgIGtleTogJ0dpdmVuIE5hbWUnLFxuICAgICAgICBmb3JtOiAnZmlyc3ROYW1lJyxcbiAgICAgICAgdWNGaXJzdDogdHJ1ZSxcbiAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgIG1haW46IHRydWUsXG4gICAgICAgIGJsYXN0S2V5OiAnTmFtZScsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBrZXk6ICdTdXJuYW1lJyxcbiAgICAgICAgZm9ybTogJ2xhc3ROYW1lJyxcbiAgICAgICAgdWNGaXJzdDogdHJ1ZSxcbiAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgIG1haW46IHRydWUsXG4gICAgICAgIGJsYXN0S2V5OiAnU3VybmFtZScsXG4gICAgICB9LFxuXG4gICAgICB7XG4gICAgICAgIGtleTogJ1NleCcsXG4gICAgICAgIGZvcm06ICdnZW5kZXInLFxuICAgICAgICB0eXBlOiAnZ2VuZGVyJyxcbiAgICAgICAgbWFpbjogZmFsc2UsXG4gICAgICAgIGJsYXN0S2V5OiAnR2VuZGVyJyxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGtleTogJ0RvY3VtZW50IENsYXNzIE5hbWUnLFxuICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgZm9ybTogJ2RvY3VtZW50VHlwZScsXG4gICAgICAgIG1haW46IGZhbHNlLFxuICAgICAgICBibGFzdEtleTogJ2RvY1R5cGUnLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAga2V5OiAnRG9jdW1lbnQgTnVtYmVyJyxcbiAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgIGZvcm06ICdkb2N1bWVudE51bWJlcicsXG4gICAgICAgIG1haW46IGZhbHNlLFxuICAgICAgICBibGFzdEtleTogJ0RvY3VtZW50TnVtYmVyJyxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGtleTogJ0lzc3VpbmcgU3RhdGUgQ29kZScsXG4gICAgICAgIHR5cGU6ICdjb3VudHJ5JyxcbiAgICAgICAgZm9ybTogJ2lzc3VlU3RhdGVDb2RlJyxcbiAgICAgICAgYmxhc3RLZXk6ICdDb3VudHJ5T2ZJc3N1ZScsXG4gICAgICAgIG1haW46IGZhbHNlLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAga2V5OiAnRXhwaXJhdGlvbiBEYXRlJyxcbiAgICAgICAgdHlwZTogJ2RhdGUnLFxuICAgICAgICBmb3JtOiAnZXhwaXJhdGlvbkRhdGUnLFxuICAgICAgICBibGFzdEtleTogJ0V4cGlyeURhdGUnLFxuICAgICAgICBtYWluOiBmYWxzZSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGtleTogJ0lzc3VlIERhdGUnLFxuICAgICAgICB0eXBlOiAnZGF0ZScsXG4gICAgICAgIGZvcm06ICdpc3N1ZURhdGUnLFxuICAgICAgICBibGFzdEtleTogJ0lzc3VlZERhdGUnLFxuICAgICAgICBtYWluOiBmYWxzZSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGtleTogJ0JpcnRoIFBsYWNlJyxcbiAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgIGZvcm06ICdiaXJ0aFBsYWNlJyxcbiAgICAgICAgYmxhc3RLZXk6ICdQbGFjZU9mQmlydGgnLFxuICAgICAgICBtYWluOiBmYWxzZSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGtleTogJ0lzc3VpbmcgQXV0aG9yaXR5JyxcbiAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgIGZvcm06ICdpc3N1aW5nUGxhY2UnLFxuICAgICAgICBibGFzdEtleTogJ0lzc3VpbmdBdXRob3JpdHknLFxuICAgICAgICBtYWluOiBmYWxzZSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGtleTogJ05hdGlvbmFsaXR5IENvZGUnLFxuICAgICAgICB0eXBlOiAnY291bnRyeScsXG4gICAgICAgIGZvcm06ICduYXRpb25hbGl0eScsXG4gICAgICAgIG1haW46IGZhbHNlLFxuICAgICAgICBibGFzdEtleTogJ05hdGlvbmFsaXR5JyxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGtleTogJ3N0cmVldDEnLFxuICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgZm9ybTogJ3N0cmVldDEnLFxuICAgICAgICBtYWluOiBmYWxzZSxcbiAgICAgICAgYmxhc3RLZXk6ICdBZGRyZXNzU3RyZWV0JyxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGtleTogJ2NpdHknLFxuICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgZm9ybTogJ2NpdHknLFxuICAgICAgICBtYWluOiBmYWxzZSxcbiAgICAgICAgYmxhc3RLZXk6ICdBZGRyZXNzQ2l0eScsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBrZXk6ICdjb3VudHJ5JyxcbiAgICAgICAgdHlwZTogJ2NvdW50cnknLFxuICAgICAgICBmb3JtOiAnY291bnRyeScsXG4gICAgICAgIG1haW46IGZhbHNlLFxuICAgICAgICBibGFzdEtleTogJ0NvdW50cnknLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAga2V5OiAnemlwJyxcbiAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgIGZvcm06ICd6aXAnLFxuICAgICAgICBtYWluOiBmYWxzZSxcbiAgICAgICAgYmxhc3RLZXk6ICdBZGRyZXNzWmlwJyxcbiAgICAgIH0sXG4gICAgXTtcbiAgfVxuICBwYXJzZUJsYXN0KHJlc3VsdHM6IGFueSkge1xuICAgIGNvbnN0IGNvdW50cmllczogYW55ID0gdGhpcy5jb3VudHJ5TGlzdCgpO1xuICAgIGNvbnN0IGdlbmRlcnM6IGFueSA9IHRoaXMuZ2VuZGVyTGlzdCgpO1xuICAgIGNvbnN0IGRhdGE6IGFueSA9IHRoaXMuZmllbGRzO1xuXG4gICAgY29uc3QgdmFsaWRhdGVkQWRkcmVzc0ZpZWxkcyA9IFtcbiAgICAgICdBZGRyZXNzQ2l0eScsXG4gICAgICAnQWRkcmVzc1ppcCcsXG4gICAgICAnQWRkcmVzc0NvdW50eScsXG4gICAgICAnQWRkcmVzc1N0cmVldCcsXG4gICAgXS5maWx0ZXIoKGtleSkgPT4gcmVzdWx0c1trZXldLlZhbGlkYXRlZCk7XG5cbiAgICAvLyBpZiBubyBhZGRyZXNzIGlzIHZhbGlkYXRlZFxuICAgIGlmICh2YWxpZGF0ZWRBZGRyZXNzRmllbGRzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgaWYgKHJlc3VsdHMuQWRkcmVzcy5WYWxpZGF0ZWQpIHtcbiAgICAgICAgcmVzdWx0cy5BZGRyZXNzU3RyZWV0ID0gcmVzdWx0cy5BZGRyZXNzO1xuICAgICAgfVxuICAgIH1cblxuICAgIGNvbnN0IG91dCA9IGRhdGEubWFwKChpdG06IGFueSkgPT4ge1xuICAgICAgY29uc3QgcmVzID0gcmVzdWx0c1tpdG0uYmxhc3RLZXldO1xuICAgICAgaWYgKHJlcykge1xuICAgICAgICBjb25zdCB2YWx1ZSA9IHJlcy5SZWNvbW1lbmRlZFZhbHVlIHx8ICcnO1xuXG4gICAgICAgIHN3aXRjaCAoaXRtLnR5cGUpIHtcbiAgICAgICAgICBjYXNlICdzdHJpbmcnOlxuICAgICAgICAgICAgaXRtLnZhbHVlID0gdmFsdWU7XG4gICAgICAgICAgICBpZiAoaXRtLnVjRmlyc3QpIHtcbiAgICAgICAgICAgICAgY29uc3QgbmFtZSA9IHZhbHVlLnRvTG93ZXJDYXNlKCk7XG4gICAgICAgICAgICAgIGl0bS52YWx1ZSA9IG5hbWUuY2hhckF0KDApLnRvVXBwZXJDYXNlKCkgKyBuYW1lLnNsaWNlKDEpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgY2FzZSAnZGF0ZSc6XG4gICAgICAgICAgICBpdG0udmFsdWUgPSB2YWx1ZSA/IG1vbWVudCh2YWx1ZSwgJ0RELk1NLllZWVknKS50b0RhdGUoKSA6IG51bGw7XG4gICAgICAgICAgICAvLyBpZiAodmFsdWUuaW5kZXhPZignL0RhdGUnKSA+PSAwKSB7XG4gICAgICAgICAgICAvLyAgIGNvbnNvbGUubG9nKHZhbHVlKTtcbiAgICAgICAgICAgIC8vICAgY29uc3QgdGltZXN0YW1wID0gdmFsdWUucmVwbGFjZSgvXFxEL2dtLCAnJyk7XG4gICAgICAgICAgICAvLyAgIC8vaXRtLnZhbHVlID0gbW9tZW50LnVuaXgodGltZXN0YW1wIC8gMTAwMCkudG9EYXRlKCk7XG4gICAgICAgICAgICAvLyAgIGl0bS52YWx1ZSA9IG1vbWVudChcbiAgICAgICAgICAgIC8vICAgICB0aW1lc3RhbXAgLSBtb21lbnQodGltZXN0YW1wLCAneCcpLnV0Y09mZnNldCgpICogNjAgKiAxMDAwLFxuICAgICAgICAgICAgLy8gICAgICd4JyxcbiAgICAgICAgICAgIC8vICAgKS50b0RhdGUoKTtcbiAgICAgICAgICAgIC8vIH1cblxuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgY2FzZSAnY291bnRyeSc6XG4gICAgICAgICAgICBpdG0udmFsdWUgPSBjb3VudHJpZXNbdmFsdWVdIHx8IG51bGw7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBjYXNlICdnZW5kZXInOlxuICAgICAgICAgICAgaXRtLnZhbHVlID0gZ2VuZGVyc1t2YWx1ZV0gfHwgbnVsbDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgcmV0dXJuIGl0bTtcbiAgICB9KTtcblxuICAgIGNvbnN0IG1vZGVsOiBhbnkgPSB7fTtcblxuICAgIG91dC5mb3JFYWNoKChlbGVtZW50OiBhbnkpID0+IHtcbiAgICAgIGNvbnNvbGUubG9nKGVsZW1lbnQpO1xuICAgICAgbW9kZWxbZWxlbWVudC5mb3JtXSA9IGVsZW1lbnQudmFsdWU7XG4gICAgfSk7XG5cbiAgICBtb2RlbC5kb2N1bWVudFR5cGUgPSByZXN1bHRzLk1ldGFkYXRhLkRvY3VtZW50VHlwZTtcblxuICAgIGNvbnNvbGUubG9nKG1vZGVsKTtcblxuICAgIHJldHVybiB7XG4gICAgICBmaWVsZHM6IG91dCxcbiAgICAgIG1vZGVsLFxuICAgIH07XG4gIH1cblxuICBibGFzdFBvc3QoZGF0YTogYW55KSB7XG4gICAgLy8gY29uc3QgJHJlcXVlc3QgPSB0aGlzLmFwaS5odHRwLmdldCgnL2Fzc2V0cy9qc29uL2JsYXN0c2Nhbi5qc29uJyk7XG5cbiAgICBjb25zdCAkcmVxdWVzdCA9IHRoaXMuaHR0cC5wb3N0KHRoaXMuY29uZmlnLmV4dHJhY3Rpb25QYXRoLCBkYXRhKTtcblxuICAgIHJldHVybiAkcmVxdWVzdC5waXBlKFxuICAgICAgbWFwKChtOiBhbnkpID0+IHtcbiAgICAgICAgaWYgKG0uTWV0YWRhdGEgJiYgbS5NZXRhZGF0YS5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgY29uc3QgbWV0YWRhdGEgPSBtLk1ldGFkYXRhWzBdO1xuICAgICAgICAgIG0uRGF0YS5Db3VudHJ5ID0ge1xuICAgICAgICAgICAgUmVjb21tZW5kZWRWYWx1ZTogbWV0YWRhdGEuQ291bnRyeSxcbiAgICAgICAgICB9O1xuICAgICAgICAgIG0uRGF0YS5NZXRhZGF0YSA9IG1ldGFkYXRhO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBtO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgYmxvYlRvRGF0YVVybChmaWxlOiBhbnkpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xuICAgIHJldHVybiBPYnNlcnZhYmxlLmNyZWF0ZSgob2JzOiBhbnkpID0+IHtcbiAgICAgIGNvbnN0IHJlYWRlciA9IG5ldyBGaWxlUmVhZGVyKCk7XG4gICAgICByZWFkZXIub25lcnJvciA9IChlcnIpID0+IG9icy5lcnJvcihlcnIpO1xuICAgICAgcmVhZGVyLm9uYWJvcnQgPSAoZXJyKSA9PiBvYnMuZXJyb3IoZXJyKTtcbiAgICAgIHJlYWRlci5vbmxvYWQgPSAoKSA9PiB7XG4gICAgICAgIG9icy5uZXh0KHJlYWRlci5yZXN1bHQpO1xuICAgICAgfTtcbiAgICAgIHJlYWRlci5vbmxvYWRlbmQgPSAoKSA9PiBvYnMuY29tcGxldGUoKTtcbiAgICAgIHJldHVybiByZWFkZXIucmVhZEFzRGF0YVVSTChmaWxlKTtcbiAgICB9KTtcbiAgfVxufVxuIl19
|